Jump to content

Fixed My Astrocade Motherboard


Recommended Posts

Michael Matte, who is working on his Asrocade hi-res upgrade, recently purchased a dead Astrocade system and some cartridges on Ebay. He did manage to fix the console. Over the course of several emails, he described the process to me. With his permission, I've taken three emails, edited them a bit (mostly just the order) and am posting his process here. Hopefully some people might find this useful.




Fixing My Astrocade Motherboard
By Michael Matte
September 20-26, 2017

[Part I]

I've been testing my audio/composite video scheme using a motherboard I purchased from E-bay. This motherboard had evidence the custom data chip was running too hot. Now this motherboard has failed. Balcheck is indicating the Z80 and ROM are operating, but all 8 video data lines are in error. Yuck! I checked all the clocks and the power supply voltages to all the chips which are ok. I suspect the custom data chip, but it is outputting the 2 correct clocks. This data chip and custom address chip can be tested on another of my working motherboards. But, there a bunch of other chips that could also make Balcheck display the same error if one of those chips were bad. Don't want to use a "hit and miss" approach, ie, de-solder a chip and then test. I ordered a logic probe to help me troubleshoot this failure. I'm going to use this failure to see if I can develop and document, for future use, a logical and hopefully a quick approach to this kind of failure utilizing Balcheck, a frequency counter, logic probe and volt-ohmmeter. I have an idea that may help facilitate the use of a logic probe on the motherboard when both the Z80 and ROM chips are operating. Depending on how long it takes to fix this motherboard, I'm planning on documenting my "troubleshoot procedure" and may attach it to my Balcheck submittal to the Bally Alley. If it's just a bad custom data chip, then I will be done and will be back on my static RAM project.

For me, this troubleshooting approach is long overdue and has higher priority over my static RAM project. I've been pretty lucky with other failures with quick fixes. This particular failure may take a while to resolve. I'm not crazy about having to de-solder a bunch of chips and installing low-profile IC sockets. This is not an easy task when conductor paths are on the top and bottom of the motherboard. You have to make sure the IC socket is completely connected using an ohmmeter. I prefer to de-solder once and then install an IC socket. Even with a 15W soldering iron you risk damaging conductor paths and then have to fix any damage. I'll let you know when I'm back on my static RAM project.

[Part II]

I bought this Astrocade on Ebay for the extra custom chips, motherboard parts, power transformer, RF modulator, console and game cartridges. I paid $76 for all that, a pretty good deal in my mind. This extra console would be for my possible 2nd hi-res Astrocade and the game cartridges for hi-res game conversions. The eventual Ebay motherboard failure turns out to be a blessing. In my preparation for troubleshooting this motherboard and an idea I had, I accidently created a new troubleshooting tool for a blank screen scenario when you turn on your Astrocade. This new tool alone has narrow-downed the possible bad chip count. I believe I know which 2 chips are possibly bad. I think I can test 2 outputs with my oscilloscope which I will try today. The custom data chip is working. Yippy! I'm expecting to receive the logic probe that I ordered tomorrow.

This new tool that I created, which I am calling the "Set Screen" tool along with Balcheck are two very useful tools for troubleshooting a motherboard producing a blank TV screen. The good news is, I can add "Set Screen" to Balcheck II. I have hand written a lengthy rough draft "posting" intended for anyone with experience in troubleshooting a Bally/Astrocade motherboard. The posting discusses the blank screen scenario and details my "Set Screen" tool. I will key it in and send it to you after I finish troubleshooting this Ebay motherboard.

SetScreen is just a 36 byte ML routine that resides at 2000H. All it does is set the screen colors and two other screen parameters, then forces the Z80 CPU to Halt. When the CPU halts, there's no write or read of RAM memory. The CPU attempts to refresh RAM and the custom data chip attempts to scan RAM for the video display. The CPU is forced into a known state and stays there. This just makes it a little easier to isolate a problem area. SetScreen takes over when the normal power up routine fails to initialize the TV screen parameters (screen goes blank) because of a related RAM failure. SetScreen will display at least 2 colors on the TV screen if the Z80 CPU, the ROM chip, the Microcyler data bus and the custom data chip are all operating properly. You have to program an EPROM/EEPROM and place it at address 2000H. My upcoming posting to you details SetScreen's purpose and limitation. I'm revising my already revised rough draft of SetScreen which is becoming lengthy. I'm doing some more investigating today related to the powering on of the motherboard.

[Part III]

My new SetScreen tool narrowed the problem area down to the custom address chip or the interface between the custom address/data chips and screen RAM.

Because of what SetScreen was displaying on the TV screen, I suspected U23, the data read octal buffer, as the bad chip. I didn't have my logic probe, that I ordered, yet. So, I tried my 40 year old crude oscilloscope which is apparently only good up to 100,000 Hz. To my surprise, the scope showed enough on its CRT to tell me a signal line was operating, sort of like a logic probe with a pulsing LED. The CRT display was blurry, but informative. I checked the A0 thru A5 address lines, RAS and CAS lines which were operating. Then I checked U23's inputs which were present, but its outputs very little or nothing at all. Plus U23's outputs seem to follow what I was seeing on the TV screen which was colored pixels all fading out and in intermittently. SetScreen is really cool.

So, I de-soldered the U23 chip and replaced it with a low profile machine tooled IC socket, which is not an easy task. You have to be careful when installing a socket so that it makes contact with the top motherboard solder pads. I had to check the socket contacts several times with an ohmmeter. During de-soldering, even with only a 15W soldering iron, I damaged one top soldering pad but still managed to make it contact the IC socket.

I had just one DM81LS95 chip in my spares inventory. I pushed it in the socket, connected the motherboard to the TV and pushed on the power switch. Immediately, the Astrocade menu appeared. I ran Checkmate several times to test the motherboard which now runs great. Previously, I thought I might have a bad custom data chip because of what I saw at the bottom of the motherboard by the custom chip pins and a heat stain on the bottom console when I first received the EBay Astrocade that I purchased. What a relief to find this custom data chip running great.

I can't express in words how valuable Balcheck and Setscreen are in troubleshooting a failed motherboard, especially one that produces a blank TV screen. They're like a one-two punch. Unfortunately, a chip that is not readily available went bad. But, I have an idea for a IC adapter that can be built and then plugged into an IC socket on the motherboard. This idea should work allowing one to run a 74LS244 chip via the adapter in a U23 IC socket and also a 74LS245 chip in a U10 IC socket. U10, DP8304 is also a 20 pin chip that is not readily available. I may build and test the two adapters after my static screen RAM project is finished.

[End of Michael's description of his Astrocade fix.]

  • Like 2
Link to comment
Share on other sites

  • 4 weeks later...

Here is another Astrocade fix update from October 21-22, 2017, written by Michael Matte:


SetScreen2 [a utility for helping to diagnose issues with an Astrocade] is now written and tested. The 8 page SetScreen2 Doc is handwritten [and contains] drawings and many details within the SetScreen2 code listing.

A couple of weeks ago, I purchased from EBay another nonworking Astrocade (no hand controls) for about $50. A pretty good deal for me, I think. It is in really good condition and even has the RF shielding. The motherboard produced a blank TV screen at power on.

This was another opportunity to put Balcheck II and SetScreen2 to the test. I connected Balcheck II which would not operate. I checked the power supplies and had to replace the dead -5V voltage regulator type 7905C. I connected Balcheck II again, which was now operating, and it told me I had a RAM error code 04 indicating the bit 2 video data line was in error. Without going into detail, I popped in my SetScreen2 cassette cartridge and ran its Pixel 1 write routine which tests video data bits 2 and 3. Sure enough, I could see on the TV screen some kind of problem writing that pixel. I also ran the other 3 pixel write routine for pixels 0, 2 and 3, which showed no problems. Balcheck II and SetScreen2 narrowed down and confirmed the possible bad chips count to two, U23 or RAM chip U26. I just replaced U26 (did not add IC socket) because of its easy access and the fact that the motherboard was in such good condition. I powered on the motherboard and the menu appeared. The motherboard runs great. It was a surprisingly fast fix thanks to Balcheck II and SetScreen2. [...]

SetScreen2 is only 248 bytes but it could expand as the need arises. Might come up with more ideas to help troubleshoot the motherboard. I came up with a way to be able to run SetScreen2 as part of Balcheck II. Then, interested troubleshooters could download Balcheck II and get SetScreen2 with it, two tools in one package. I'm probably going to finish up Balcheck II after my hi-res static RAM project is finished. Right now, Balcheck II is a little over 4K bytes, but I'll probably add something else to make it an 8K package. [...]

I'm back again working on my hi-res static RAM project. As previously mentioned, I set up my "go between" audio driver chip for a volume adjustment using a sine wave generator and oscilloscope. You would probably get a kick out of my generator. It is so old it operates using tubes. What is that, 50's technology? I forget when the transistor was invented. Anyway, I found a way to lower the output volume level. Have to check the level with my EBay motherboard again. Hope I don't zap it a 2nd time. The 8pin LM386 chip I'm using has an option for a bass boost. I might experiment with that if needed. Wish me luck.


Michael is going to mail me the documentation and assembly code listing for SetScreen2 in the next couple of weeks. When he does, then I'll add it to the BallyAlley website.


  • Like 1
Link to comment
Share on other sites

Thats fantastic! Will someone be burning an eprom of the program for others to try?


Michael sent me the handwritten source code and instructions for SetScreen 2 yesterday via USPS. I'll probably get it this week, but I won't have a chance to scan it until next week. If it's not too much trouble, I may type in the source code and assemble it myself using the Zmac Z-80 assembler, but I'm not sure. If I do that, then certainly the ROM image will be available on the BallyAlley website. I won't be burning any EPROMs of it though. Maybe someone else can provide that service.


It's important to keep in mind that SetScreen is meant to be used with the BalCheck interface. SetScreen doesn't require the BalCheck hardware (or software) to run, but SetScreen is meant to be used in conjunction with it-- think of them both as two separate tools that help each other out when diagnosing a hardware problem.


If you're interested in SetScreen, then you can read about the first version of it (from only September 2017) in an article with source code called Troubleshooting the Bally/Astrocade Motherboard Power-Up with SetScreen, A New Tool. You can read the article here:




I'd love to see someone recreate the BalCheck interface: that is a much-needed piece of hardware for the Astrocade. Of course, it's not a simple task to use BalCheck or SetScreen; you've got to be quite technically savvy to use them properly. Let me rephrase that statement. It's not hard to use BalCheck or SetScreen, but you've got to be technically skilled in order to make use of them to replace parts of your Bally Arcade/Astrocade.



Link to comment
Share on other sites

I added a new document to BallyAlley.com called SetScreen 2 - An Upgraded Bally Arcade/Astrocade Troubleshooting Utility by MCM Design/Michael Matte. Michael just finished document and program in October of 2017.

SetScreen 2 is an improved version of the original SetScreen, a machine language routine. Setscreen 2 is a visual troubleshooting tool that can be used to help diagnose a failed Astrocade motherboard producing a blank TV screen at power-up. SetScreen 2 now has added routines to help a troubleshooter further investigate what is or is not going on with a motherboard graphics-wise and to provide more information to diagnose and isolate a problem area. A read routine is also included for a user who can connect a homemade dual 7-segment display.

You can download SetScreen 2 - An Upgraded Bally Arcade/Astrocade Troubleshooting Utility here:


Additional details are provided in Troubleshooting the Bally/Astrocade Motherboard Power-Up with SetScreen, A New Tool, in this link:


It would be great to see someone assemble the Z80 SetScreen 2 assembly source code into a ROM image so that people could burn this utility to EPROM.


  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...