Let’s Code MS DOS 0x2E: VGA Redefinable Charsets

The EGA and VGA cards support custom or redefinable character sets. Those can be used to add characters from languages not covered by the original ROMs on the card, but can also be used to aid in drawing shapes in text mode. We will use this feature to port our VGA plasma effect from graphics to text mode.

Let’s Code MS DOS 0x2C: Noisy 3D Animation

Earlier this year I saw a demo effect using a random noise background and simple wireframe 3D using XOR line drawing to create an interesting visual effect. Building on the 3D Cube program we did a while ago we can reimplement this effect. The magic happens when you pause the animation — or this video. Then the object magically disappears…

What if the Amiga sounded better?

Back in 1985 when the Amiga came out the Paula sound chip was not totally groundbreaking, but better than most of its competitors. It supported four channel stereo PCM playback. This could be used with sampled instruments to get a relatively natural sound. However there were many limitations, many of which due to the software not utilising the Paula to its fullest. Two years later, when the A500 came out, Roland released the MT-32. A consumer grade synthesizer module that was used relatively widely in the MS DOS gaming world, spearheaded by Sierra On-Line. It is a little known fact that you can use the MT-32 also on the Amiga with Sierra adventures such as King’s Quest, Space Quest or Larry. Does the Amiga sound better with the MT-32?

Let’s Code MS DOS 0x2A: Background Adlib Music

We already learned how to program the Adlib sound card to produce percussion and melodic instruments. Now we tackle the problem of getting real music out of it. By utilizing the Reality Adlib Tracker’s playback routine we learn how to program the Programmable Interrupt Timer (PIT) in the PC to get a steady playback of background music.

Commodore PET: 40K RAM with SoftROM

The Commodore PET was one of the first true PCs. The entry model PET 2001 in 1977 came with 8K of RAM. My own PET 3016 from 1979 came with 16K, which I upgraded a while ago to 32K of RAM. This lets us run a lot of software, even interactive fiction games, for example Planetfall and Zork by Infocom. However we can do better! Using the SoftROM expansion we can add an additional 8K of SRAM to our system, that can be used by the Infocom interpreter, or any other software that knows about it and is changed accordingly.