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″

A C64 SID Replacement With Built-in Games

Developer [frntc] has recently come up with a smaller and less expensive way to not only replace the SID chip in your Commodore 64 but to also make it a stereo SID! To top it off, it can also hold up to 16 games and launch them from a custom menu. The SIDKick Pico is a simple board with a Raspberry Pi Pico mounted on top. It uses a SID emulation engine based on reSID to emulate both major versions of the SID chip — both the 6581 and the 8580. Unlike many other SID replacements, the SIDKick Pico also supports mouse and paddle inputs, meaning it replaces all functionality of the original SID!

Sound can be generated in three different ways: either using PWM to create a mono audio signal that is routed out via the normal C64/C128 connectors, an external PCM5102A DAC board, or using a different PCB design that has pads for an on-board DAC and TL072 op-amp. While many Commodore purists dislike using replacement chips, the reality is that all extant SID chips were made roughly 40 years ago, and as more and more of them fail, options like the SIDKick Pico are an excellent way to keep the sound of the SID alive.

If you want to hear the SIDKick Pico in action, you can check out the samples on the linked GitHub page, or check out the video below by YouTuber Wolfgang Kierdorf of the RETRO is the New Black channel. To get your hands on a SIDKick Pico, you can follow the instructions on the GitHub page for ordering either bare PCBs or pre-assembled PCBs from either PCBWay or your board manufacturer of choice.

Continue reading “A C64 SID Replacement With Built-in Games”

Making Intel Mad, Retrocomputing Edition

Intel has had a deathgrip on the PC world since the standardization around the software and hardware available on IBM boxes in the 90s. And if you think you’re free of them because you have an AMD chip, that’s just Intel’s instruction set with a different badge on the silicon. At least AMD licenses it, though — in the 80s there was another game in town that didn’t exactly ask for permission before implementing, and improving upon, the Intel chips available at the time.

The NEC V20 CPU was a chip that was a drop-in replacement for the Intel 8088 and made some performance improvements to it as well. Even though the 186 and 286 were available at the time of its release, this was an era before planned obsolescence as a business model was king so there were plenty of 8088 systems still working and relevant that could take advantage of this upgrade. In fact, the V20 was able to implement some of the improved instructions from these more modern chips. And this wasn’t an expensive upgrade either, with kits starting around $16 at the time which is about $50 today, adjusting for inflation.

This deep dive into the V20 isn’t limited to a history lesson and technological discussion, though. There’s also a project based on Arduino which makes use of the 8088 with some upgrades to support the NEC V20 and a test suite for a V20 emulator as well.

If you had an original IBM with one of these chips, though, things weren’t all smooth sailing for this straightforward upgrade at the time. A years-long legal battle ensued over the contents of the V20 microcode and whether or not it constituted copyright infringement. Intel was able to drag the process out long enough that by the time the lawsuit settled, the chips were relatively obsolete, leaving the NEC V20 to sit firmly in retrocomputing (and legal) history.

The MXM card with the 3dfx chip in the center, black silkscreen, mounted on the MXM to PCIe adapter, green silkscreen

An MXM Take On The 3dfx Voodoo

[sdz] of Vogons forum brings us an unexpected device for the 21st century – a 3dfx Voodoo 4 card in MXM format, equipped with 64MB of RAM. This isn’t just a showpiece – this card actually, properly works when installed into our hacker’s Dell Precision M4800, and [sdz] tells us more on how the card came to be.

Structure diagram of the cardEquipped with a VSA-100 GPU, this card has a whole lot of support components for adapting old interfaces to modern ones. There’s a PCIe-PCI bridge IC, an FPGA, HDMI muxes, and a Realtek scaler for video conversion. Handling all the MXM interfaces would’ve been downright impossible, so the card also holds an LVDS header for the M4800’s panel. Plus, for testing all of it, [sdz] has developed a PCIe to MXM adapter board with minimal circuitry needed to have the card work – this is a seriously involved hack and it’s executed remarkably well.

The forum post shows a whole lot of the journey, from receiving the PCBs to code and FPGA gateware bringup, as well as videos of VGA and HDMI operation. In the end, our hacker shows us a fully working setup, the 3dfx card inserted into M4800 and driving its display, as well as overclocking experiments; the author has promised to open-source the card files in due time, too. It’s seriously nice to see DIY MXM cards in the wild, and if you ever wanted to build one, we’ve got an article tells you everything you could want to know about the MXM standard.

We thank [Misel] for sharing this with us!

Continue reading “An MXM Take On The 3dfx Voodoo”

The IBM PC: Brainchild Of A Misfit

We’ve read a number of histories of the IBM PC and lived through that time, too. But we enjoyed [Gareth Edwards’] perspective in a post entitled The Misfit who Built the IBM PC. The titular character is Don Estridge, a decidedly atypical IBM employee who was instrumental in creating the personal computer market as we know it.

It’s not that IBM invented the personal computer — far from it. But the birth of the PC brought personal computers to the mainstream, especially in offices, and — much to IBM’s chagrin — opened up the market for people to make add-on cards for printers, videos, and other accessories.

IBM was a computer juggernaut in the late 1970s. Its divisions were the size of other companies, and some have compared it to a collection of mafia families. The company was heavily invested in big computers, and management was convinced that personal computing was, at most, an avenue to video games and most likely a fad.

Known as a conservative company, the PC project drew from a number of corporate misfits who had been technically successful but often punished for coloring outside the lines. They developed a prototype. The post quotes one of the people involved as saying, “The system would do two things. It would draw an absolutely beautiful picture of a nude lady, and it would show a picture of a rocket ship blasting off the screen. We decided to show the Management Committee the rocket ship.” Wise choice.

That’s just the kind of tidbit in this post, and if you have any interest in computer history of the 1980s, you’ll definitely want to check it out. Estridge died in 1985, so he didn’t get to see much of the result of the market he opened up. Of course, there were many other players who appear in this story. The PC has many parents, as you might expect.

We’ve done our own recounting of this story. However, we tend to obsess more over the internals.

Comparing X86 And 68000 In An FPGA

[Michael Kohn] started programming on the Motorola 68000 architecture and then, for work reasons, moved over to the Intel x86 and was not exactly pleased by the latter chip’s perceived shortcomings. In the ’80s, the 68000 was a very popular chip, powering everything from personal computers to arcade machines, and looking at its architecture and ease of programming, you can see why this was.

Fast-forward a few years, and [Michael] decided to implement both cores in an FPGA to compare real applications, you know, for science. As an extra bonus, he also compares the performance of a minimal RISC-V implementation on the same hardware, taken from an earlier RISC-V project (which you should also check out !)

Utilizing their ‘Java Grinder’ application (also pretty awesome, especially the retro console support), a simple Mandelbrot fractal generator was used as a non-trivial workload to produce binaries for each architecture, and the result was timed. Unsurprisingly, for CISC architectures, the 68000 and x86 code sizes were practically identical and significantly smaller than the equivalent RISC-V. Still, looking at the execution times, the 68000 beat the x86 hands down, with the newer RISC-V speeding along to take pole position. [Michael] admits that these implementations are minimal, with no pipelining, so they could be sped up a little.

Also, it’s not a totally fair race. As you’ll note from the RISC-V implementation, there was a custom RISC-V instruction implemented to perform the Mandelbrot generator’s iterator. This computes the complex operation Z = Z2 + C, which, as fellow fractal nerds will know, is where a Mandelbrot generator spends nearly all the compute time. We suspect that’s the real reason RISC-V came out on top.

If actual hardware is more your cup of tea, you could build a minimal 68k system pretty easily, provided you can find the chips. The current ubiquitous x86 architecture, as odd as it started out, is here to stay for the foreseeable future, so you’d just better get comfortable with it!

Continue reading “Comparing X86 And 68000 In An FPGA”

Using Kick Assembler And VS Code To Write C64 Assembler

YouTuber [My Developer Thoughts], a self-confessed middle-aged Software Developer, clearly has a real soft spot for the 6502-based 8-bit era machines such as the Commodore 64 and the VIC-20, for which he has created several video tutorials while travelling through retro-computing. This latest instalment concerns bringing up the toolchain for using the Kick Assembler with VS Code to target the C64, initially via the VICE emulator.

The video offers a comprehensive tutorial on setting up the toolchain on Windows from scratch with minimal knowledge. While some may consider this level of guidance unnecessary, it is extremely helpful for those who wish to get started with a few examples quickly and don’t have the time to go through multiple manuals and Wikis. In that regard, the video does an excellent job.

VS Code is a great tool with a large user base, so it’s not surprising that there’s a plugin for using the Kick Assembler directly from the IDE. You can also easily launch the application onto the emulator with just a push of a button, allowing you to focus on learning and working on your application. Once it runs under emulation, there’s a learning curve for running it on native hardware, but there are plenty of tutorials available for that. While you could code directly on the C64 itself, it’s much more pleasant to use modern tools, revision control, and all the conveniences and not have to endure the challenges.

Once you’ve mastered assembly, it may be time to move on to C or even C++. The Oscar64 compiler is a good choice for that. Next, you may want to show off your new skills on the retro demo scene. Here’s a neat C64 demo with a twist. There is no C64.

Continue reading “Using Kick Assembler And VS Code To Write C64 Assembler”