The Tandy 1000 and IBM PC Jr utilized the cheap Texas Instriuments SN76489 programmable sound generator. While it never caught on as a sound standard outside of these machines, many DOS games from the 1980s still supported this chip. What if you wanted to listen to video game music using the original chip, no emulation, but you had only a serial or USB port? Well, now there is a solution for you!
Floppy Disk Punch
Back in the 1980s floppy disks were expensive. And many early floppy disk drives were only single sided, which means they only had one read/write head and would only use one disk side. Both Commodore and Apple-II users quickly figured out that you could flip the disk around, if you punched a hole into the other side of the disk. This is a quick explanation on why this helped to double your disk capacity and some other differences between Commodore and IBM disk drives.
Let’s Code MS DOS 0x36: Sprites & Occlusion
In the last video we learned how to make 2D sprites with transparency and scaling. This time around we also make our Guybrush automatically scale with the background, limit his ability to move into nonsensical parts of the scene, and most important: Walk in front and behind objects.
Source Code: https://codeberg.org/root42/VSPRITES/src/branch/feature/mask-and-scaling
Let’s Code MS DOS 0x35: Sprites & Scaling
Adventure games like Monkey Island utilized sprites that could be moved and scaled arbitrarily on the screen. How does this work on a machine that doesn’t have support hardware sprites? We will work our way from simple sprites with no transparency, to ones that are clipped, have transparency and can be scaled down arbitrarily.
Let’s Code MS DOS 0x44: VGA Blending
The VGA card can display up to 256 colors on the screen at the same time, using an indexed 8 bit color mode. This is not much, but it allows us to fade two 16 color images into each other. This looks pretty nifty!
The OneROM Versatile ROM Emulator
The old home computers like the C64, PET and VIC20 use a lot of 24 pin ROM chips. Many of those are failing and are often replaced with EPROMs and adapter boards. Those are sometimes hard to acquire, especially for older machines such as the PET. But even more common EPROMs require a dedicated UV eraser, programmer like the Minipro, which all adds up. The OneROM is a versatile replacement for EPROMs based on the RP2350 MCU. It allows for easy reprogramming, multiple ROM images and can replace up to three ROM chips in a single system. Oh, and it’s open source!
Let’s Code MS DOS: 0x33 PowerBasic 3D Starfield
Every year around Christmas we return to the roots. To PowerBasic instead of Turbo C! As Christmas is already over, we do something that is also befitting New Year’s Eve: a classic 3D starfield! With some EGA/VGA palette tricks, to make the stars appear smoother!
Commodore 4040 Disk Drive Repair
We have another Commodore IEEE-488 dual disk drive. It is the predecessor of the 8050 and it is almost compatible with the 1541, the C64’s disk drive. This specimen doesn’t work, its drives look quite mangled. So let’s fix it! But it is never that easy…
Let’s Code MS DOS: 0x32 VGA Split Screen
A couple of games back in the 1990s utilised the VGA split screen functionality to enable things that were otherwise only possible on more capable machines, like the Amiga. The VGA split screen allowed games such as Jazz Jackrabbit or Pinball Fantasies to display a static status bar at the bottom of the screen, while the rest of the screen was smoothly scrolling in two or more directions. In this video I will show how this is possible, and which VGA registers to program with the appropriate values.
Commodore SFD 1001 Repair
Another dead floppy drive has landed on my desk. I was told that “the motor isn’t working”. That can have different causes, but let’s find out what the actual problem is. I never worked on one of these drives before, but they are related to the CBM 8050, a drive that I like very much.