In this episode we learn how to declare variables in assembly language. Also we learn how to access data from pointers stored in registers. We learn a couple of jump instructions and how to loop. We use this knowledge to compute all prime numbers below 1000 and print them to the screen. As usual this is based on the book “Programming Boot Sector Games” by Oscar Toledo.
Last time we restored Ocarina of Time to its former glory, this time it’s Majora’s Mask. This N64 cartridge was hit by last year’s flood, which besides hurting lots of people also claimed the less important artifacts, such as retro game collections. Here we have one example of a cartridge that was salvaged by the owner, before he sold it to me, untested. Let’s see if we can clean it up and get it going!
In this episode we learn how to use the DIV opcode for dividing integer numbers, how to print integer numbers to the screen, as well as how to use a debugger to understand what our program does. In all coding tasks looking for errors and understanding what the program actually does is a key aspect. So a debugger (here we use the Turbo Debugger by Borland) is a very useful tool that every developer should know how to use.
So you always wanted a Roland MT-32. Even as a kid you saw it in ads, and in the setup programs of games. But it was way to expensive. And today you still will pay upwards of 250 EUR for a working device, which is more than 30 years old. So why not emulate it? There is now a Waveblaster compatible module that will fit on many retro sound cards and which is able to emulate the MT-32 as well as SoundFont based GM and GS compatible synthesizers.
The SEGA GameGear that we revived in the last video gets a new shell! The old one was beaten up pretty roughly. And new shells in all kinds of colours are still made to this day. At the same time I will be replacing the electrolytic caps with small SMD ones. I disliked how the electrolytics were all over the place, making the shell hard to close. However something went wrong in the end, due to my own negligence…
I have had this SEGA GameGear lying around for a couple of years. I got it very cheap, because it was sold as broken, for parts. It came with a few games and the TV Tuner. Upon trying it out I noticed the power comes on, but all else seems dead. The GameGear is prone to have very bad capacitors, so that is the first order of the day: recapping! This and a modern LCD replacement are what we are going to tackle in this episode!
This is part three of our x86 assembly series. In this episode we learn how to do simple single character keyboard input. We use this to code a little game “Guess the number”.
The Commodore DM602 is a small 10″ monochrome CRT, which pairs nicely with the VIC20 or C64. It has a built in speaker and a nice, very bright and sharp picture tube. This particular screen has a tiny problem, namely the video input socket broke off the PCB, so we will have to repair that. Also we will compare using different video cables on the C64, composite and YC (Luma/Chroma). This has some interesting visual side effects on the CRT.
For this year’s Christmas Episode of Let’s Code MS DOS we are revisiting Power BASIC and will be coding a very seasonal snowflake. It will be based on the Koch curve, especially implemented using an L-system. This is a rather easy system to describe fractal structures. It is not as hard as it might seem and you will be able to adjust the curve to display different things.
The Commodore 16, or C16 for short, is one of the few machines that Commodore designed and produced in the mid 1980s based on the TED chip. They were supposed to be cheap, entry level home and business computers mainly geared towards text display. But they also had some graphics and sound capabilities. They sadly fell short of their goal, mainly due to the fact that founder Jack Tramiel left Commodore and new management didn’t really know what to do with the TED machines. The C16 is a brother to the more sci-fi looking C116, but comes in a classic C64 style breadbin. We will have a look inside, upgrade it to a more usable 64KiB of RAM, and play some games and demos on it!