Baldur’s Gate III Comes To The TRS-80 Model 100

To say that Tandy’s TRS-80 Model 100 was an influential piece of computer hardware would be something of an understatement. While there’s some debate over which computer can historically be called the “first laptop”, the Model 100 was early enough that it helped influence our modern idea of portable computing. It was also one of the most successful of these early portables, due in part to how easy it was to write your own software for it using the built-in BASIC interpreter.

But as handy and capable as that integrated development environment might have been, it never produced anything as impressive as this Baldur’s Gate III “demake” created by [Alex Bowen]. Written in assembly, the game’s engine implements a subset of the Dungeons & Dragons Systems Reference Document (SRD), and is flexible enough that you could use it to produce your own ASCII art role-playing game that can run on either a Model 100 emulator like Virtual-T or on the real hardware.

Continue reading Baldur’s Gate III Comes To The TRS-80 Model 100″

Doubling The CPU Speed Of The TRS-80 Model 100 With A Mod Board

The TRS-80 Model 100 was released in 1983, featuring an 80C85 CPU that can run at 5 MHz, but only runs at a hair under 2.5 MHz, due to 1:2 divider on the input clock. Why cut the speed in half? It has a lot to do with the focus of the M100 on being a portable device with low power usage. Since the CPU can run at 5 MHz and modding these old systems is a thing, we got a ready-made solution for the TRS-80 M100, as demonstrated by [Ken] in a recent video using one of his ‘daily driver’ M100s.

This uses the board design from the [Bitchin100] website, along with the M100 ROM image, as one does not simply increase the CPU clock on these old CPUs. The issue is namely that along with the CPU clock, connected components on the CPU bus now have to also run at those speeds, and deal with much faster access speed requirements. This is why beyond the mod board that piggybacks on top of the MPU package, it’s also necessary to replace the system ROM chip (600 ns) with a much faster one, like the Atmel AT27C256R (45 ns), which of course requires another carrier board to deal with incompatible pinouts.

Continue reading “Doubling The CPU Speed Of The TRS-80 Model 100 With A Mod Board”

TRS-80 Model 100 Inspires Cool Cyberdeck Build, 40 Years Down The Line

The TRS-80 Model 100 was a strange beast. When it debuted in 1983, it resembled nothing that was available at the time, and filled a gap between desktop computers and the mostly-not-invented-yet laptop segment of the market. Collectors covet these machines, but they’re getting harder to find four decades later. So, if you want one, you just might have to roll your own.

Honestly, it doesn’t appear [Roberto Alsina]’s purpose here we to recreate the Model 100 per se, but rather to take inspiration from its oddball form factor and experiment with the latest components. The design elements from the original that [Roberto]’s creation most strongly echo are the screen with the extreme landscape aspect ratio and the somewhat compressed keyboard. The latter is based on the cheapest mechanical 65% keyboard available, while the former is a 1920×480 LCD display intended for automotive applications. The display seems like it put up a fight, between its need for a custom HDMI cable to connect it to the Radxa Zero SBC under the hood as well as the custom kernel needed to support it.

Along with a USB hub for IO and some 18650s for power, everything went into a 3D printed case with considerably sleeker lines than the Model 100. It’s worth pointing out that [Roberto] didn’t have much experience with design or 3D printing when he kicked off this project. We love to see people stretching their skills like that, and we think the results are great in this case. We’ve seen a lot of Model 100 retrofits and brain transplants, but this may be the first time we’ve seen a build quite like this.

Sketch of a Tandy TRS-80 Model 100 with Arduino Mega 2560

TRS-80 Model 100 Gets Arduino Heart Transplant

When [Stephen Cass] found himself with a broken Tandy TRS-80 Model 100 portable computer, the simplest solution was to buy another broken one and make one working computer from two non-working computers. However, this left him with a dilemma — what to do with the (now even more) broken one left over?

LCD layout is unusual by modern standard, but optimized for fast updates

Naturally, he did what a lot of us would do and used modern hardware to interface with the original parts that still work. In this case it meant replacing the motherboard with an Arduino Mega 2560.

Luckily, the Model 100 has a substantial fanbase and there’s a lot of helpful information available online, including the detailed service manual, that helped [Stephen] to understand how to drive the unusual display.  The LCD has a resolution of 240×64 pixels, which are broken down into eight zones of 50×32 pixels, and two zones of 40×42 pixels.  Each zone is then further divided into four banks, eight pixels tall, so that each column of eight pixels corresponds to a single byte.

Every one of the ten zones is controlled by an individual HD44102 driver IC, connected to a 30-bit wide bus for selecting the correct chip, bank and column.

With the Arduino handling the data, the old LCD still needed a -5 V supply for contrast and an RC filter to smooth out the PWM signal [Stephen] is using to adjust the viewing angle.

With the new interface, [Stephen] is able to access all of the pixels on the original display, and to use modern graphics libraries such as displayio. With the display issue solved, he intends to use a separate Teensy 4.1 to connect with the keyboard matrix and provide a VT100 terminal interface.

Schematic of the HD44102 driver circuit

Upcycling old, broken hardware can be a lot of fun and is always educational.  Understanding why certain design decisions were made at a time when the engineering trade-offs were different can lead to insights that are directly relevant to modern designs when resources get tight. In this case, the quirky LCD drivers were a response to making the display of text as efficient as possible, so as not to overburden the processor.

The TRS-80 computers are ripe for hacking, with their “built-for-service” designs, and we’ve featured a few in the past.  Some have replaced the motherboard with something newer, like [Stephen], whereas others have also replaced the display, or connected them to the cellphone network.

Have you found new ways to get old hardware working? Tell us in the comments below or send us a message on the Hackaday tips line.

Thanks to [nb0x0308] for the tip!

Larry Berg And The Purple Open Passion Project

It all started with an 88-ton Arburg RP300 injection molding machine in the basement, and a bit of inattention. Larry Berg wanted a couple custom plastic plugs for his Garmin GPS, so he milled out a mold and ran a few. But he got distracted, and came back an hour later to find that his machine had made 400. Instead of throwing them away, he mailed them away for free, but then he found that people started throwing money at him to make more. People all over the world.

This is how the Purple Open Project turned into an global network of GPS geeks, selling molded alternatives to the oddball Garmin plugs for pledges to pay an unspecified amount, and ended up producing over 350,000 plugs over 16 years before he passed away in 2012. This is the story of a hacker’s hacker, who wanted to be able to connect his GPS to his computer and use it the way he wanted, and accidentally created an international business.

Continue reading “Larry Berg And The Purple Open Passion Project”

Loading Programs Onto A TRS-80 Model 100

We’d guess that you don’t have a TRS-80 Model 100 computer sitting around. But we’ve heard that the decades-old hardware is built like a tank so if you search around you can probably get your hands on a working unit. The Model 100 boasted some nice features, one of which was a 300 baud modem allowing you to transfer data onto the device. [MS3FGX] wanted to give it a try but had to do some work to get the Model 100 to communicate with modern hardware.

This could have been a much more involved process, but since the Model 100’s modem uses common communications standards it’s really just a matter of hooking it up and choosing the right COM port settings on a computer. In this example a Linux box is used with the program Minicom. It is configured to communicate at 300 baud 8N1 (8 data bits, no parity bit, and one stop bit).

With software in place you’ll need to make your own cable. [MS3FGX] does this using a DB-25 connector for the Model 100 side, and a DB-9 connector for the serial port on the Linux box. He’s got a pin-out for the cable on the second page of his guide. It sounds like it should be no problem to use a USB-serial converter if you don’t have a serial port.

Once everything is in place you’ll be able to transfer BASIC programs from your computer to the Model 100.