Main Channel: I help create a diagnostic ROM for the TRS-80 Model III to help me fix it! (Patreon)
Content
Hello my patrons! As you may have seen, I once again got stumped by a broken TRS-80 Model III motherboard I had. It laughed at me by showing a screenfull of garbage.
Well, in today's video I get the machine completely working. To help get the root of the problem, I decided what would help me (and likely countless other people in my shoes) would be to make a diagnostic ROM for the TRS-80 Model III! More on that in a second, but the ROM helped me zero in on the issues with the board. Yes issues, there were more than one.
I think the video is pretty good, so watch and let me know what you think. I felt very triumphant when I had it running.
As for the new ROM, I reached out to Frank IZ8DWF and Dave Giller KI3V and we discussed the concept, and what we now have is a pretty great diagnostic ROM for the machine! It mainly just tests the VRAM and DRAM, but what is great about it is the ROM doesn't use some lame page based bit-pattern RAM test, as 99% of RAM tests do, but this is using bank based march testing. That means it will catch very subtle page based errors in the DRAM. On top of that, we use a neat feature on the Z80 to use the VRAM for the stack! That means the diagnostic ROM can fully run with zero DRAM installed (or working) in the motherboard! It also does some nice things like audio prompting so you can know what's happening via beeps from the cassette port. Helpful if you just want to know if the system is trying to run.
Local viewer and friend David Giller did most of the programming work as my assembly skills are garbage. He only had a TRS-80 emulator to work with, so I did all the testing and QA on real hardware (once this motherboard was fixed) -- forcing the board into various fault states so we could make sure the ROM behaved correctly. It was a fun experience and we are glad to release it to the community! This ROM works on the Model 1 and Model 3, since they are the same architecturally.
We're already working on porting it to the Model 2, as I need to get back to working on that machine. It, of course, could be adapted to work on any Z80 machine as long as the way it works is understood. (Bank switching and writing to the screen primarily)
The Github repo for the Diagnostic ROM is already up:
https://github.com/misterblack1/trs80-diagnosticrom
Direct video link: https://youtu.be/Hh8dRgtu1Jk