Jump to content

Hi-Res Bally Arcade/Astrocade Correspondence

Recommended Posts

I have added correspondence from 1985 and 1986 between Michael Matte, Don Gladden (who edited volume 6 of the Arcadian) and Bob Fabris. Michael wrote the documentation on how to upgrade the Bally Arcade to hi-res mode. His letters primarily deal with this matter, but he also drops some wonderful tid-bits, such as that he made a BalCheck II for his hi-res unit. He also upgraded the Machine Language Manager cartridge so that it could take advantage of hi-res mode.


Michael's Astrocade High-Resolution Upgrade documentation is available here:




I have added the correspondence to this upgrade area. I've also revamped the entire area. I added details about what is in the documentation "packages" that Michael wrote (I'll explain that in more detail in another post that I'll make soon).


Some of the letters were typed and some were handwritten by the authors. I have used a combination of retyping, OCR and voice-to-text (using Dragon) to make the letters into text files (and searchable pdfs, in the case of the typed letters). Rather than linking to the letters, I'm going going to include them in-full here:


1) Letter to Don Gladden from Michael Matte (June 7 and 8, 1985)


June 7, 1985


Dear Don:

I personally would like to have the option of programming on a high resolution screen. I have interfaced Texas Instrument's TMS9918A video display processor with my Astrocade computer, the chip having a high resolution mode, but I would prefer to program on a high resolution screen mapped by Bally's custom address and data chips because Bally's high resolution map (320 x 204 pixels) is easier to work with. Recently I have attempted to get my Astrocade computer to operate in the high resolution mode. I was aware that Datamax Inc. manufactured the Datamax UV-1 computer (16K ROM, 16K Screen RAM, and 32K User RAM) which utilized Bally's 3 custom address, data and I/O chips. In July of 1984, per my request, Datamax sent me copies, for a price, of electronic schematics and PC board layouts, but to my surprise, the copies were for their upgraded UV-1R (32K ROM, 256 Multipage Screen RAM, and 32K User RAM) computer.

With the aid of these schematics I came up with a scheme allowing my Astrocade computer to operate in the low or high resolution mode. Unfortunately, there's a "bug" in my scheme. I can display the high resolution map, write to it or read from it, and perform all the magic functions on it, but I get these glitches on the screen, occasionally, which appear and disappear. I used 0.1uf bypass capacitors judiciously for the four 16k banks of Screen RAM (I used type MK4116N-4 chips) and all other chips. I think the problem is somewhere in the timing.

Datamax's CPU board layout, where the Bally custom address and data chips are located, doesn't quite agree with its CPU board schematic, i.e., some resistors and capacitors appear on the CPU board layout but NOT on the CPU schematic. Datamax's scheme for the microcycler is almost identical to Bally/Astrocade's microcycler. Datamax added a chip to their microcycler which doesn't look like it's wired correctly (a drafting error?) and I haven't been able to figure out the reason for that additional chip due to lack of appropriate information on the Bally custom address and data chips. True, the Dave Nutting Associates manual provides information on the 3 custom chips, but offers no help as to how one would wire the required four 4K banks of screen RAM (and microcycler?) to get the high resolution map. What I would like to do is get my hands on copies of Datamax's UV-1 computer back in 1981 when it was a simpler system having only 16K ROM, 16K Screen RAM, and 32K User RAM.

I said all of this hoping the Arcadian might be able to help me out. How many other Bally/Astrocade computer users would be interested in expanding their system to provide an optional Bally high resolution map? Could you possibly print the following ad in the Arcadian? [i couldn't find the ad that Michael refers to to in the Fabris Collection, unless Michael is referring to the entire second part of his letter, dated the next day.]


June 8, 1985

Dear Don:

I would like to provide for each new issue of the Arcadian an article on machine language programming for the Bally/ Astrocade computer. Hopefully the article would generate interest in some users to explore this powerful language. Perhaps programs with complex graphics might be created as a result of this interest.

With regard to submitting my articles to you, I have no idea as to how the Arcadian produces some of its articles with such small print. The only printer I have is an electrical typewriter. I could submit my articles to you using a double column on a 7" x 9.5" space giving you room for a border line, the Arcadian logo and so on. Would I be allowed to fill 3 pages (sides)? I have a lot of information to share, information that I haven't seen in the Arcadian (Vol. 4-6). Please give me some input regarding article submittals.

I realize you don't know what my background in machine language programming is. My articles will stress examples. Let my examples establish my credibility. I can show how to create fast non-blinking graphics.

This paragraph is for the Arcadian's information (for whatever its worth) that we users might pool our resources and continue support of the Bally/Astrocade computer. I haven't submitted any written material to the Arcadian previously because I have been working on projects for use with my Astrocade computer, projects such as:

1. A substitution for the Bally/Astrocade AC power transformer

2. Adding (or replacing RF modulator with) a composite video output and audio output for improved picture and sound

3. Interfacing Texas Instrument's TMS9918A video display processor

4. Adding 32K dynamic RAM addressed 8000-FFFFH and

5. Adding switchable 12K static RAM addressed 5000-7FFFH along with a video-cade copier connector.

I plan to build an eprom programmer that can be used with the Bally/Astrocade computer so that 2K, 4K and 8K EPROMS can be "burned", I also plan to develop a troubleshooting procedure and troubleshooting/check program for a Bally/Astrocade motherboard and hopefully any memory add-on. Incidentally, substitutions or equivalent replacements for any electrical/electronic component in the Bally/Astrocade computer will continue to be easily available, with the exception of the 3 custom chips and perhaps the +10V voltage regulator LM342P-10 (component #VR2). Most probably, the 3 custom chips will eventually be unavailable. The +10V voltage regulator is not used often and may eventually be unavailable. Jameco Electronics (415-592-8097), for example, is clearing out their stock of the IM342P-10 (it is listed in their flyer #127). For those who have committed themselves to the use of their Bally/Astrocade computer (I know I have), my advice is to take advantage of ABC Hobbycraft's sale on Astrocade units for $34.95 and motherboards for $5.00 so you have some back up parts while they are still cheap and available.

Michael C. Matte

2) Letter to Bob Fabris By Michael Matte (December 21, 1985)

Dear Robert:

Thanks for responding to my 8 June and 7 June letters sent to Don Gladden, whom I have not received a response from.

I have a lot of information that I would like to share with the ARCADIAN. However, I question some of the information that I have as to whether or not you can publish it due to possible infringements on copyrights or perhaps patents. What I will do is send my own creations (tutorials, upgrades, whatever) to Don Gladden and to you I will send any questionable material indicating the source(s) of info for you to do with as you desire. It is my desire that support of the Astrocade home computer will continue.

Right now I have doubts that the ARCADIAN will continue publishing issues. Upon receipt of the next issue (Dec. ’85?), I will send an article to Don detailing a power transformer substitution for the Astrocade computer. After receipt of each future issue of the ARCADIAN, I will send to Don a tutorial on programming the Astrocade computer in machine language. I have already written several tutorials on this subject just waiting to be submitted to the ARCADIAN. Further material on other subjects will be sent to Don or yourself, of course at my discretion.

You asked me if I was aware of the Balchek program. Did you know that there exists a Balchek II? Yes, there is! Balchek II is an improved version of Balchek enabling its user to also check a RAM add-on. I have gone through the disassembled listing of Balcheck, have made some changes and deleted some of the useless routines to allow room to check a RAM add-on. Yes, Balchek II does exist, although not quite finished yet. I have a copy of it on tape. Wish you could see it.

There is something else I wish you could see. That is, the Astrocade home computer running with a high resolution map (320x204 pixels). What a difference! I have resolved the high resolution glitch problem described in my June '85 letter I sent to Don. I am currently writing an 8K byte software package to be eventually burned on an EPROM. The package will contain an improved 2K byte high resolution version of Bit Fiddler’s MLM, 2K bytes for 33 high resolution subroutines (similar to the onboard subroutines) and 4K bytes devoted to extended high resolution graphic subroutines. My Astrocade computer can now operate with a low or high resolution map. Unfortunately, modifications were required on the motherboard to get the on-board custom address and data chips to operate in the high resolution mode. I can't see any way of getting the on-board custom chips to operate in high resolution without making some modifications to the motherboard. You mentioned John Perkin's efforts.

What did he do? Perhaps a second set of custom chips and associated circuitry could be utilized as an add-on, but where would one get the custom chips from? Or perhaps the circuitry could be provided as an add-on and then the 3 on-board chips removed from their sockets and placed in their respective add-on sockets? It would be nice to come up with a simple means of providing any Astrocade user, how few there may be, the option of high resolution graphics, but it doesn't look like that's going to happen. Any comments?

Michael C. Matte

3) Letter to Michael Matte by Bob Fabris (December 26, 1985) - Draft

12/26 [1985]

Dear Michael [Matte],

Your most interesting letter just arrived and I thought I'd best get back right away. Primarily because there is no point in sending anything to Don Gladden. He's not involved with Arcadian production any longer.

We'll certainly keep the Arcadian going for two more issues (I trust you received the December issue by now). Whether to go after issues 3 and 4 depends on reader response and material to print. It does seem like we have a somewhat dedicated kernel of Arcadian enthusiasts.

Balcheck II? Now that's a big surprise! Is Dick Belton aware of your efforts? I'm sure he would find it very interesting.

And a high-rise machine too! Motherboard changes are acceptable-- I recall John's board had lots of piggyback memory attached-- I'll try to get in touch with him-- I think he is still with? We have some motherboards here and some spare chips as well. Actually, the units themselves are getting so cheap that one can build up the extra parts relatively cheaply.

[bob Fabris]
4) Hi-Res Package Cover Letter (to Bob Fabris) by Michael Matte (July 3, 1986)

July 3, 1986

Dear Robert:

Enclosed are five, what I have labeled as, "packages" for use as you desire.

I've thought about the possibility of production or sales for package 1 upgrade. It would be great to play with games utilizing high-resolution graphics. However, I see many complications. I would be willing to make the necessary modifications to any motherboard and perhaps wire the power supply, but I have really little desire to wire wrap anymore RAM boards or audio/video boards. Who would have the skills to layout and manufacturer a PC RAM board PC audio/video board? Since much of the video RAM and composite video electronics was taken from the Datamax UV-1R computer, wouldn't permission be required from Datamax to market the RAM board and audio/video board?

What common means should be used to program the Astrocade high-resolution graphics: ZGRASS and/or a machine/assembly language monitor or BASIC? I can't see how I could market any Hi-Res MLM [Machine Language Manager cartridge] if it utilizes portions of Bit Fiddlers' MLM, an Astrocade BASIC PC board, Astrocade BASIC routines for the audio interface (>=8000H constraint deleted) and routines almost identical to the Astrocade onboard subroutines? DataMax utilized, at one time, 16K bytes ROM (including ZGRASS) for their UV-1 computer. Perhaps this could be utilized into the upgrade. However, the DataMax UV-1 computer required the use of a computer terminal.

What common means of saving data should be used? Would an external keyboard be required? Obviously, to get the most out of the high-resolution graphics, a common means of programming in that mode is required. A group effort is indeed required to get the job done and maybe some input from potential users. So tell me, is there a next step? I need help on this one. Who has the desire to invest in such a project? Would there be enough interest to make the project feasible?

Recently, I read a Viper sales brochure claiming that their 8K/24K switch allowed any cartridges in the cassette slot to be copied out to Viper RAM. This puzzled me. Do you have any idea how this copy feature was accomplished? I can see how the Z80 could read data from a cartridge and by electronic trickery, the same data would be written to RAM. But this would require the user to utilize every aspect of the cartridge, so every byte of the cartridge would be read by the Z80. The 8K/24K switch in packages 1, 4 and 5 only allows the user to develop software addressed 2000-3FFFH with the intent that the software would eventually be realized in cartridge form. That is, machine code can be entered/loaded into 6000-7FFFH and then switched to the respective locations in 2000-3FFFH.

Please explain your reference to Dick Belton, i.e. is he troubleshooting RAM add-ons? What's his address?

As usual, please mail the enclosed postcard, so I know you received the enclosed material.

Michael C. Matte

P.S. In case you're wondering, I spent much time developing the upgrade and Hi-Res MLM for my own use. I also had the hope that more experienced people might take the upgrade and somehow market it and that I might act as an advisor or maybe even a partner.


The hi-res Astrocade upgrade is very intriguing to me, and I figured who wouldn't want to read more about it from these letters. Does this get anyone interested in upgrading their systems?



  • Like 1
Link to comment
Share on other sites

I have added details about the documentation that Michael Matte wrote about each part of his five "packages" in today's revamp of the Astrocade High-Resolution Upgrade area on BallyAlley.com. Michael's documentation is handwritten, so I re-typed and used Dragon voice-to-text to create the descriptions, which (in most cases) are just slightly edited quotes of Michael's own descriptions of his "packages."

Hi-Res Package 1 - Astrocade System Upgrade

"Package 1" of the Astrocade System Upgrade (low or high resolution graphics, user RAM, composite color video output and audio output) contains fifteen pages of schematics and layouts. Here is what is included in Astrocade Hi-Res Package 1:
  1. Contents
  2. Modified Motherboard Schematic
  3. Modified Motherboard Layout
  4. Power Supply Schematic/Regulator Board Layout
  5. Ram Board 50-Pin Contact Expand Interface Schematic
  6. Ram Board User Ram Decoder Schematic
  7. Ram Board User Ram Schematic
  8. Ram Board Video Ram Interface Schematics (Two)
  9. Ram Board Video Ram Schematic
  10. Ram Board Layout
  11. Ram Board Optional 16K Rom Decoder Schematic
  12. Ram Board Spares
  13. Audio/Video Board Schematic
  14. Audio/Video Board Layout
Drawing Comments
  1. RAM Board Video RAM Schematic - Type 4116 dynamic RAM is used in lieu of type 4027, since it is generally cheaper and easier to obtain.
  2. Ram Board Layout - Close To Actual Size
  3. Ram Board Optional 16K Rom Decoder Schematic - Scheme Is Untested
  4. Audio/Video Board Layout - Type LM377 audio amplifier chip is probably discontinued. Other audio amplifiers can be substituted. Radio Shack, for example, has several audio amplifier chips.
  5. Audio/Video Board Layout - Close To Actual Size

Hi-Res Package 2 - Low/High Resolution Modification Procedure

Nineteen pages describing what and how to modify the Astrocade motherboard, plus how to wire the RAM board, which contains video and user RAM.

It is assumed the user of this procedure has a copy of the Bally Service Manual PA-1. Beginning experimenters in digital electronics should not attempt this upgrade. Several unused gate inputs are shown wired to +5V via a 10K current limiting resistor allowing TTL chips to be occasionally substituted in lieu of LS TTL chips. If only LS TTL chips will be utilized, then wire the unused inputs directly to +5V (no resistor). Numbers following procedure statements indicate reference should be made to the note numbers, which are listed following the procedure.

Two low resolution demos and a high resolution demo, for testing purposes, are available on cassette tape. Mail the request for the demos along with $7.00, to cover the cost of the tape, postage and packaging.

Hi-Res Package 3 - Copies of some Datamax UV-R1 Schematics

These schematics were used to come up with the Astrocade system upgrade package 1. Comparison of the schematics will show the similarities of the Astrocade upgrade with the Datamax UV-1R. For a complete set of Datamax UV-1R schematics and layouts (excluding power supply) contact DataMax Inc. I paid $30 for one set of prints (21 drawings). The notes on the attached Datamax schematics were added by myself, way back when I was for studying the schematics.

Hi-Res Package 4 - 44K Byte Dynamic RAM Add-On

This one-page instruction sheet uses three schematics in "Package 1 Astrocade System Upgrade" to make some deletions for this upgrade.

Add-on requires only +5V power supply. Refer to power supply schematic in Package 1. This add-on is recommended only for use with separate composite video and audio outputs between monitor/TV.

Hi-Res Package 5 - 12K Byte Static RAM Add-On

Static RAM does not require any refreshing or special timing circuitry. Data will remain intact as long as +5V is supplied to the board and the write protect switch is on. This feature allows the board to be disconnected from one computer and connected to a second computer or allow cartridge swapping without running loops. In either case, the data in Static RAM will remain intact (unchanged).

The Balcheck II display is optional and is used by Balcheck II software (not available at this time) to aid in troubleshooting the motherboard or static RAM. The videocade connector allows a videocade to be copied to tape. A videocade PC board, removed from its cartridge, is inserted in the videocade connector. Astrocade BASIC (or Bally BASIC) is then used to copy the contents of 6000-7FFFH to tape.

Incidentally, this add-on can be used with the Package 1 upgrade (connected to 50-pin expand header). This add-on requires only a +5V power supply.


Wouldn't it be great if someone could use this information that Michael Matte create to actually made a hi-res Astrocade?



  • Like 2
Link to comment
Share on other sites

  • 1 year later...

Since I posted this hi-res correspondence, I have been in contact with Michael Matte. He has been working on some projects with his Astrocade that he upgraded from the Bally's standard low-resolution (160x102) to High-Resolution (320x204). Last week, he took a screenshot of a hi-res demo that he wrote to test the unit. He describes the picture in detail. I'll post his comments below this inline picture:




Here are Michael's slightly-edited comments on the picture:

"I was running my hi-res demo and thought I'd take a crack at a screen shot. I think I just lucked out with this shot. It was a hand held shot. Thought I'd send it to you right away since I think it turned out pretty good. Note the wagon on the right side moves much faster than the moving critter on the left side of the fish tank.

"Out of curiosity, I took 2 shots of the Astrocade insides. These 2 shots didn't turn out very good. Plan later to rig a tripod set up, an attempt to keep my camera still for close ups.

"Haven't really done much on my hi-res Astrocade tour project except for mounting an air-flow vent. Oh, I forgot to tell you I plan to buy a higher quality camera, perhaps the Canon Rebel series this December."

After I asked Michael if it was okay if I shared the picture with the group, he responded:

"Sure. Post away. As a reminder, the wagon on the right moves up and down, the 7 fish move at random and the critter left of the tank bounces around. Fifteen static graphics are written in 15 magic combinations. The elapsed time counter below the tank displays even in hours. The counter to the right counts up every time the wagon hits an upper or lower limit. The critter also has a limits counter below it. The wagon moves much faster than the critter who is in no hurry to go anywhere.

"This demo was written back in the 80's to test the high-res screen map on my modified Bally/Astrocade. The lucky handheld screen shot was taken on a 20" Toshiba TV. The video display is composite not RF modulated. You've seen these graphics before but not in high-res. This is the first time anyone has seen a screen shot on my high-res Astrocade. I am honored to present this posting to you."

Thanks, Michael, for sharing this unique picture!

Pretty cool, right?!?


  • Like 1
Link to comment
Share on other sites

On August 29th, Michael wrote me another email about his hi-res Astrocade. With his permission, I'm posting most of that email here:

"Thanks for posting the photo. It's nice to see someone acknowledging my work. Look forward to the reaction when I submit my pictorial tour [of the interior of my hi-res Astrocade]. If I can't get some good close-ups with the camera I have now, I'll just send some preliminary photos that turned out OK and submit the tour when I get a better camera. I'll also include screen shots of hi-res MLM and the low-res menu/games running on a hi-res map. It looks like I'm beginning to reap the fruit of my labor thanks to you. It definitely was a challenge and has required a lot of time, effort and frustration, but to me it was worth it. When that day comes and I see The Incredible Wizard running in hi-res, I will surely boast, rejoice and eat of the fruit.

"[The] Hi-res MLM [Machine Language Manager cartridge] is now on EEPROM. I'm amazed the program saved on tape back in the 80's is still intact. I loaded the tape into user RAM at 6000H and copied it to an EEPROM at 8000H and in about 80 seconds hi-res MLM resides on an EEPROM for the first time. It now sits in my switchable 28 pin compatible socket at 6000H. With a flip of a min-toggle, it resides at 2000H. I played around with it the other day. I forgot how cool this upgrade is. With the audio feedback every time you press a key plus my remote keypad, I was writing bytes into user RAM at 8000H really fast. You don't even need to watch the screen to confirm the correct byte was written. Really nice! This one feature will save a lot of time compared to low-res MLM. Hi-res MLM is not quite finished though. It needs some final touches before I can release it to the Bally Alley. Also, it needs full documentation which does not exist as of today.

"Again, thanks for motivating and helping me."

Link to comment
Share on other sites

On Sunday, September 3, 2017, Michael Matte sent me an email with the subject line "Hi-Res Astrocade Tour." The email also contained four pictures. He gave me permission to post one of the pictures and most of the email. Here is what Michael wrote:

"My tour [of the inside of my Hi-Res Astrocade upgrade] project is on hold. I made the changes, mentioned in a previous email, to my hi-res Astrocade. I took some photos today and the close shots are unsatisfactory to me. For some reason when you close in on a shot, the left side of the photo is out of focus. My camera may not be designed for real close-ups. So, I'm going to wait until I get that better camera [that I mentioned to you previously].

"Of the 14 shots I took only one turned out good in my opinion. Attached to this email is that photo plus 3 not so good screen shots I included because I know you are curious."


Here is the picture of Michael's Astrocade setup. It may look like Michael has the rare Viper 1 RAM expansion unit, but he doesn't. That Viper 1 box is "just" an empty case that he got in the 1980s. He built his RAM expansion inside of it. As you can see, he created his own full-stroke keyboard for his unit, and he has an external 24-key keypad too.




That's a pretty nice setup, right?


Michael's email continues:


"If you want me to send you a few of the hi-res Astrocade interior shots out of curiosity I will but please don't post them. I should be able to get sharp focus close-ups with a higher quality camera I would think.

"I bought a tripod a Best Buy, Sunpak's Ultra 7000TM, 70 inch, 2 in 1 tripod. It doubles as a monopod. Nice tripod at $60.

"Touched up the gold trim with Krylon's 18 KT gold leaf pen available at the Hobby Lobby. Look's like it's being discontinued at Michael's. It indeed is a good match for the Astrocade gold trim, but I don't think it stands up to finger prints when applied to the lettering on the reset button. Perhaps the lettering needs several coats.

"Bought some contact cleaner at True Value hardware and sprayed my dirty 'pot.' Motion is now really smooth. Thanks for the tip.

"I eventually plan to submit an addendum to my hi-res packages 1 and 2 you have archived. Not that anyone might ever attempt such an upgrade like this besides myself, but you never know. I have some additional info that really should be attached to the hi-res upgrade on the Bally Alley."

I'm looked forward to when Michael is able to take pictures of his screen that are to his satisfaction. The few pictures that he sent to me are quite intriguing.


  • Like 3
Link to comment
Share on other sites

  • 3 weeks later...

On September 12, 2017 Michael Matte gave me another update on his hi-res Astrocade project. He gave me permission to post what he wrote to AtariAge and the BallyAlley Yahoo group. Here are his Hi-Res ideas from the beginning of September:


Subject: Re: Next Project

Just wanted to let you know what I'll be working on next. I've decided to devote my time to my new hi-res static RAM scheme. I need to know ASAP, because I'm really excited about the possibility, whether or not this scheme will work. I also don't want to put this project off too long for fear some of the components might become unavailable in the near future. I'm just going to breadboard one 4K bank in low-res to test my idea. If it works, I'll gradually expand the breadboard one 4K bank at a time running in low-res. When the 4th bank is running in low-res, I'll add the additional chips for a hi-res test. Even if this idea works, I will not build a 2nd hi-res Astrocade until The Incredible Wizard is converted to hi-res, but I will order extra components.

This project shouldn't take too long. I already have a 2nd modified motherboard that was finished back in the 80's and was tested in 2011. This particular motherboard utilizes a 28 pin wire wrap IC socket not a 24 pin socket like my 1st hi-res Astrocade motherboard. That means all the necessary hi-res signals are wired to this 28 pin socket. No 50 pin expansion connection is required. I feel this is a better idea. I will test (substitute) this 2nd modified motherboard using my hi-res Astrocade. My +5V power supply for this project is already tested. I have a 2nd very small audio/composite video driver that will be mounted on top of my back up RF modulator and then tested. The quick breadboard hookup shouldn't take to long and like I said I'm just wiring one static screen RAM chip. If I can't get this one chip to run in low-res then I'm done, the project is over. But, I have a feeling it will run if the timing is right. I'm also assuming a static RAM chip can handle video data transfers. I'm guessing it can.

If this new scheme works, it will greatly simplify the required hi-res RAM set up and who knows, its simplicity might tempt some technically minded individual to build a hi-res Astrocade once hi-res MLM and some hi-res demos/games are archived on the Bally Alley. The chip count for this new hi-res static screen RAM scheme is now 9 chips (on paper) as opposed to 32 chips with the original design.




When I asked Michael if I could post his email to me, he responded with:

I'm surprised you want to post my email with an idea that might not work. But, feel free to post it. I do have a good feeling about this project. I will be jumping with joy should I power up that 1st 4K bank and see the low-res menu appear on my TV. That would be so cool. Last night, it occurred to me that the optional multi-page interface that I have in mind also has a provision to extend screen RAM an additional 128K bytes. Wow! So, this project scheme would allow a future expansion option totaling 256K bytes for graphics multi-paging and/or user RAM. As I mentioned, I'll let you know even if my scheme doesn't work.


It's fun following Michael's progress!


Link to comment
Share on other sites

  • 1 month later...

I have added Hi-Res Textured 10 Color Test Pattern by Michael Matte/MCM Design. He wrote this in 2017. This is handwritten Z80 machine language source code. You can download it here:


I'd love to see someone take this program and get it running under the MAME emulator. Is anyone up to this challenge?

I typed some of Michael's notes from his source code:

"This program is an upgraded hi-res version of Bit Fiddler's Standard Color Generator listed in the Machine Language Manager's User Manual on page 7-4. This output a very cool graphic pattern on a 20" RF TV using composite video output. The routine is self-supporting and uses no outside CALLs.

"Have fun mixing up colors and hi-res texture. You can change the surrounding border. You can also change the vertical bar color/textures in the pixel set. You can display solid colors or textures colors. Note that even though 8 colors were specified, the texturing effect in routine yields 2 additional colors. So, the routine displays ten colors total.

"Wish you could see this hi-res test pattern on my 20" Toshiba using my hi-res Astrocade with composite video signal output. it is so cool. Here's hoping you can share this experience on the MAME emulator."

It's so cool that Michael not only made a hi-res Astrocade, but he writes programs for it! Again, it would great to see this program in action under MAME emulation.


Link to comment
Share on other sites

  • 3 months later...

Here are three updates with Michael's hi-res Astrocade project. I've edited Michael's emails to me a little bit for length, but nothing important has been omitted.


Sent: Friday, December 1, 2017

Still working on my hi-res static RAM project. Having problems with this project. Now, I am bread boarding one bank of dynamic RAM, as an interface test, in an attempt to help isolate the problem. I think what I probably might need to resolve the issue is a 2 channel oscilloscope so I can visually see what's going with the RAM signal lines, if that is visually possible. But, I don't really want to spend several hundred dollars for a scope. So, for now, I'm just going to keep experimenting until I run out of ideas. My idea should work. I did get one chip of static RAM to run, but not perfectly. Something is not quite right and I haven't found the problem yet. I'm not one to give up. However, if I'm forced to drop my hi-res static RAM project, I'm going to experiment with a 4 page hi-res RAM scheme using 4116 DRAM. I'm well stocked with the 4116 chip and figure 4 page video capability is plenty for games involving entering different scenes, mazes, rooms, etc. The Datamax UV-1R schematic that I have shows you how to multi-page with 4116 or larger DRAM. Since I have the chips, breadboards and my second "modified for hi-res" motherboard, I might as well experiment with this 4 page 4116 DRAM scheme. I've also took a look at the schematic for Seawolf II, versions B and C. The screen RAM interfacing for these two versions do differ from the Datamax UV-1R version. Examining these 3 versions provides insight into the best way to hi-res interface with the Bally/Astrocade whether one desires multi-paging or not with screen RAM. By the way, it is my opinion that four banks of screen RAM are absolutely necessary for hi-res interfacing with the custom address and data chips because in the hi-res mode 4 bytes at a time are scanned for the video display and serially transmitted to the custom data chip via its two inputs serial 0 and 1. The Bally Alley posting "A Description of the Bally Professional Arcade Video Hardware and Associated Coin-Operated Hardware" goes into depth for low and hi-res application.


Sent: Wednesday, December 20, 2017

I made some progress on my current project. I bread boarded on two 2X6 inch strips a near copy of the Bally/Astrocade motherboard RAM timing interface and connected it to my static RAM scheme. That's the simplest low-res set up. This set up was tested and ran perfectly. There were no weird glitches moving about as previously mentioned. Now, I will slowly add components, a more complex set up, until I get the appropriate timing interface, required for the hi-res 4 Screen RAM banks, working perfectly, without actually wiring all 4 banks. Once the timing interface is working perfectly with one bank, it's just a matter of adding the other 3 banks, then the hi-res serial video scan chips to get the hi-res map working. The hard part is to get that timing interface working right. The timing interface will be similar to the Datamax UV-1, which uses CAS0 thru CAS3 to select each bank, which is what I need. Seawolf II, for example, utilized RAS0 thru RAS3 to select each bank, which I can't use because it's the CAS signal line that really is used to enable (chip select) each static RAM chip.



Sent: Wednesday, December 20, 2017


Attached is a photo of my 2nd modified hi-res motherboard connected to a breadboard which enables the motherboard to run on just one screen static RAM chip. Perhaps the first time a Bally/Astrocade motherboard has done so. Attached is also a top view of my 2nd modified for hi-res motherboard.






I tested this set up with several videocade cartridges and it runs perfectly. The top 3 chips labeled U14, U22 and U21 are a near copy of the timing interface between the custom address/data chips and screen RAM. The U12 logic gate was changed to a 3 input nand gate (used in my U14 chip) and U23 (DM81LS95) is not necessary for static RAM. Bottom left is a 32K byte static RAM chip. With additional chips, you could actually set up this chip as an 8 multi-pager (32K bytes of screen RAM). The bottom center chip 74LS32 is used to combine the RAS/CAS signals for the static RAM chip select. This chip may not be necessary after I expand my static RAM scheme for four hi-res banks, similar to the Datamax UV-1. The two bottom right chips 7475 or 74LS75 latch the row address to the static RAM address inputs A0 thru A5. The address bus MA0 thru MA5 is also directly wired to the static RAM inputs A6 thru A11. I will eventually substitute one 74F373 for these two chips. If all goes well, my hi-res static RAM project will reduce the hi-res screen RAM chip count from 32 chips to 10 possibly 9 chips with the potential for a multi-page expansion option (8 hi-res pages, 128K bytes or even 16 pages, 256K bytes). I used 2.2K pull-up resistors just like the Bally/Astrocade motherboard. Four banks are required in hi-res because the custom data chip scans and inputs serially from screen RAM for the video display when in the hi-res mode.

MCM Design


I love those photos, as they make this hi-res Astrocade project seem more real! Way to go, Michael!


  • Like 2
Link to comment
Share on other sites

Here is another update on the hi-res project from Michael:

Date: Sunday, February 4, 2018 10:02 PM
Subject: Project Update

I've decided to postpone my hi-res static RAM project until I get my logic analyzer. I've been having problems getting the 2nd static RAM bank (chip) operating. Static RAM is different from DRAM in that it has a shared data read/write bus. I've been "following suit" using four 74LS253 chips for the data read bus just like the normal hi-res DRAM data read bus and I added a tri-state 74F244 chip for the data write bus. One 74F244 chip would be required for each static RAM bank . I've tried several variations of this scheme to see if I could resolve the problem, with no luck. The down side of using quick connect breadboard strips is that the chips are spread out more and the wire lengths longer. Could there be a problem with wire line degradation, I don't know? I can't remember, when I developed my hi-res Astrocade back in the 80's, if I had problems bread boarding all 4 hi-res RAM banks. I've already spent a lot of time on this project. All these failures have forced me to re-think my hi-res static RAM scheme and I'm happy to say I've come up with a new idea. This idea, I believe, has a better chance for success, plus, it is simpler than what I've been trying to breadboard. I'm dropping the 74LS253 and 74F244 scheme and replacing it with the bi-directional 74LS245, one for each static RAM chip. Each 74LS245 chip will be selected (decoded) similar to the 74LS253 using the Z80 A0 and A1 address lines, but, an inverter chip (74LS04) plus an "OR" chip (74LS32) will be required for the decoding. The DATEN line will select the direction of data transmission for the Z80 hi-res read or write. This new revised scheme looks really promising and it is so simple.

Right now I'm working on a failed motherboard. A few weeks ago I purchased a nonworking Astrocade from EBay. I've purchased a few Astrocades from EBay primarily for the 3 custom chips. On this Astrocade, the console, plastic cover and 2 hand controls are nearly brand new. The motherboard is immaculate. The downside is the motherboard has a shorted component somewhere. Ouch! I have reason to believe the short is in the power supply (I'm hoping) and not down line. I was not paying attention and the black power transformer primary winding overheated and died. I'm bringing back my fused power XFMR substitution (The Arcadian, 1986, p. 92-93 and 91). I wired a crude, but working, XFMR substitute for this failed motherboard. Needless to say, the primary winding fuse blows when I turn on the motherboard. I have ideas on how to isolate the short even if it is down line and also check the +12v, +10V and +5V supplies for a short. The -5V supply was working up until I zapped the black power XFMR. I also found out Jameco has 2 power transformers that may be well suited for a XFMR substitution.

Part no. 2231152, has two secondary windings, 6.3vac@1.0A with parallel output, $8.95
102593, has two secondary windings, 12vac@0.5A with individual outputs, $3.95
69404, fast acting fuse, 250mA, can be wired on primary side using a fuse holder.

This will be yet another future project, to build and test these two Jameco XFMRS. I will also mount along side the XFMR substitute, a very small 120vac socket with a 250mA fuse, to plug in and hopefully help protect a Bally black XFMR from overheating. I will also attach a 2X6" quick connect breadboard strip so major motherboard power supply components can be de-soldered and easily wired/tested using the XFMR substitute, which will not be enclosed. My black Bally XFMR in my hi-res Astrocade is plugged into one of those tiny fused 120vac sockets. I think I bought a few of those sockets in the 80's from Jameco. Didn't see them in Jameco's new 2018 catalog. Too bad.



This is the logic analyzer that Michael ordered:


If you're interested in this hardware, it can be ordered here:




I love hearing about Michael's Astrocade hardware updates! Also, I like that he had made himself an alternative power supply for his broken Astrocade. That's great news.



Link to comment
Share on other sites

  • 6 months later...

On August 9, 2018, Michael Matte (pronounced Matt-tea) sent me additional information about his Astrocade high-resolution hardware. In his email about the update he said:

"Attached are a doc, some photos of my hi-res Astrocade and a photo of my BalcheckHR board. I'm still learning how to use my new camera well enough to take photos I feel are satisfactory. It took me 4 shooting sessions to get the majority of the attached photos. Hope you like them."


Here are the ten pictures from his update. More details follow the pictures, but I had to reformat Michael's original document; I hope that it looks okay. As a reminder, although it looks as though Matte is using a Viper 1 RAM upgrade, that was just an empty case that he used as his enclosure for his hi-res unit.






















Here are Michael's updates:




Astrocade Hign-Resolution Update
By MCM Design
August 2018


[The above] photos [are] of MCM Design's low/high-res Astrocade. Below is a listing of this Astrocade's hardware specs and plans for hi-res software.


Hardware Specifications


Operates in low (160x102 pixels) or high (320x204 pixels) resolution, software selectable.


Screen RAM - low resolution, 4K bytes addressed 4000-4FFFH. High resolution, 16K bytes addressed 4000-7FFFH.


User RAM - 32K bytes addressed 8000-FFFFH, write protectable. Socket compatible with 32K byte EEPROM. 8k bytes addressed 6000-7FFFH, write protectable. Switchable to 2000-3FFFH. Socket compatible with 32K byte EEPROM, 8Kx4 multi-cart selectable via 2 dip switches.


ROM - standard 8K byte low-res ROM addressed 0000-1FFFH. 8K byte hi-res ROM interface addressed 0000-1FFFH. Manually selectable via dip switch to allow system to run in hi-res only with low-res ROM disabled.


Z80 DART interface.


Full size matrix keyboard interface.


Wired connector for remote 24 button keypad.


50-pin expansion header for connection to BalcheckHR or other user PC or wirewrap boards.


Standard LM1889 circuitry, less RF circuitry, for unmodulated composite video signal. Same composite video driver used in Datamax UV-1R computer for connection to TV/monitor with composite video input jack.


LM377 audio amplifier with volume control will drive 8 ohm passive speaker. Includes output jack for connection to TV/monitor audio input jack or amplified speaker system.


Interior fused 120vac receptacle for Bally power transformer.


Rear mounted 120vac receptacle for use with audio cassette recorder.


Forced air flow over top of motherboard and out Astrocade console openings via fan mounted in Viper cabinet and hole in bottom left of console.


Final motherboard modification planned?


Modified 2000-3FFFH cassette connector interface (PC board modified only) to provide option to manually select, via 2 mini-toggle switches mounted on the right side of the console, and run 32K byte game cartridges addressed 8000-FFFFH or standard 8K byte cartridges addressed 2000-3FFFH.


Hi-Res Software Development Planned


BalcheckHR - Includes commercial Balchek plus optional routines/demos to further test standard or modified for hi-res motherboards. Development status - expected completion, Nov 2018.


Hi-Res ROM - conversion of low-res UPI/on-board subroutines for use on high-res screen map. Will include 4K bytes of extended (EUPI) graphic routines. Development status - low-res to high-res conversion near completion, but, not fully tested. Need to add power up/menu display, GETNUM and GETPAR routines.


Hi-Res Machine Language Manager (MLM) - upgraded version of Bit Fiddler's MLM. Development status - Written and tested. May add extended graphics subroutines.


SEAWOLF Hi-Res - 8K bytes with SEAWOLF conversion to high-res plus high-res demos.


THE INCREDIBLE WIZARD Hi-Res - 32K byte conversion to high-res with custom game introduction.




It's great to see that Michael continues to work on his high-resolution Astrocade project!



Link to comment
Share on other sites

  • 2 weeks later...

Michael sent me a description of each of the above pictures. I've added his descriptions of his high-res Astrocade to the pictures posted on BallyAlley.com, here:




For the record, here are Michael's descriptions to me (note, I'm not posting the pictures here again; I'm only noting which picture is being described):


Picture Descriptions for MCM Design's Hi-Res Astrocade

Pic0 (original)
MCM Design's low/hi-res Astrocade is mounted on top of a Viper1 cabinet. The Astrocade has an interface for a full-size matrix keyboard and a connector for a custom 24 button keypad.

Front view shows 24 pin WW socket mounted on modified motherboard for ribbon cable connection to the low/hi-res screen RAM interface inside the Viper cabinet.

Top view of custom audio/video board providing 2 audio outputs and composite video output. Remote keypad connector is also visible on the left.

View of Astrocade and ROM/RAM board assembly, hinged to back of Viper cabinet, when swung up and back.

Front view of ROM/RAM board showing 24 pin ribbon cable on top and 50 pin ribbon cable on the bottom.

Closer front view showing four 4KB screen RAM banks on the right, 2 static user RAM chips, one 8KB hi-res ROM chip and all the necessary interfacing chips.

Viper cabinet interior showing exposed Astrocade pwr xfmr, ROM/RAM board pwr xfmr, +5V,+12V,-5VDC power supply board and forced air cooling fan for Astrocade motherboard.

Top view of modified motherboard with audio/video board and remote keypad connector.

Closer view of motherboard showing 6 blue custom chip address lines MA0-MA5 from top of motherboard to 24pin ribbon cable socket. Low-res RAM chips are removed.

Bottom view of motherboard showing 17 necessary connections from motherboard to RC socket. See Tour Description doc for details.

Top view of new upcoming BalCheckHR board shows 5 TTL (or compatible) chips with multicarted 32KB EEPROM. Solder contacts for remote power supply are underside.

Michael's descriptions for his high-res Astrocade helped me to better understand this system.



Link to comment
Share on other sites

As already posted here, Michael has written brief descriptions for each picture of his high-res Astrocade. These descriptions are next to the picture's of his modified console. Michael has written a "tour" that provides detailed information on MCM Design's low/hi-res Astrocade for anyone desiring to take the challenge and build such an Astrocade. The details may help provide ideas for creation of someone's own version of a hi-res Astrocade. Michael's tour is included here.




Version 1.0, August 23, 2018

The intent of this lengthy tour is to provide detailed info on MCM Design's low/hi-res Astrocade for anyone desiring to take the challenge and build such an Astrocade. The details may help provide ideas for creation of someone's own version of a hi-res Astrocade.

Refer to photos in "Pictures/Hardware Pictures/Hi-Res Astrocade (Matte)" section at BallyAlley.com while touring this Astrocade. The URL is here:


PIC0 (Original)

This Astrocade is mounted on top of a Viper1 cabinet, which houses the majority of the added circuitry allowing the Astrocade to operate in either low or high screen resolution. The low or hi-res modes are software selectable with an optional mode using an internal DIP switch, to operate strictly in hi-res.

An interface allows a full size matrix keyboard to be plugged into the back of the Viper cabinet using a ribbon cable connector.

The Astrocade's 24 button keypad wiring to the motherboard has been extended (hardwired) to a 14 pin wire wrap socket mounted on the bottom left side of the Astrocade's console, so that a custom modified remote 24 button keypad can be plugged into this Astrocade using a ribbon cable connector. This keypad, being at table height, is a lot easier on the hand when entering multiple bytes of data using Bit Fiddler's low or MCM Design's high-res MLM (Machine Language Monitor).

The top half of the Astrocade's console was spray painted with semi-gloss black, an attempt to match the color of the Viper cabinet.

This Astrocade has gone through a transition since the mid 1980's with changes here and there. In particular, the user RAM was changed from dynamic to static RAM because of its simplicity and smaller board area requirement. The user RAM documented on the Bally Alley for this Astrocade is now obsolete. An addendum to the documentation updating this Astrocade's current electronic schematics should really be posted.

Cutouts were made in the sides of the Viper cabinet and covered with 3 1/4" square vent covers to facilitate an internal forced air cooling fan for the Astrocade motherboard.


The front view of the Astrocade/Viper cabinet reveals a 24pin wire wrap socket mounted on the bottom of the modified Astrocade motherboard to connect 23 necessary motherboard lines to the screen RAM interface in the Viper cabinet using a 24pin DIP ribbon cable connector.

The webbed Viper eye is a power on LED indicator.


With the Astrocade console top removed, the custom audio/video board becomes visible. This WW board has a quick-connect to the motherboard. The LM1889 circuitry outputs a composite video signal. There is no RF circuitry. A 2 transistor configuration, identical to the Datamax UV-1R, is used as a driver for a TV/monitor. The LM377 audio amplifier outputs two channels. One channel will drive an 8 ohm passive speaker. The other channel is set up for connection to the audio input of a TV/monitor (or amplified speaker system).

The bottom left side of the Astrocade console has the following mounted on it, left to right:
1. 14pin WW socket to plug in the remote 24 button keypad.
2. RCA phono type audio output jack for use with a TV/monitor.
3. Mini volume control for use with 5 below.
4. RCA phono type composite video output jack for use with a TV/monitor.
5. Audio 1/4" headphone jack to drive a passive 8 ohm speaker.

No Photo

The rear of the Viper cabinet has the following mounted on it, from left to right:

1. Two 25 pin Centronics connectors wired to the internal Z80 DART interface.
2. 120vac fuse holder.
3. Lighted 120vac power on/off switch.
4. 2000/6000H mini-toggle switch for user RAM 6000-7FFFH.
5. User RAM "write protect" mini-toggle switch for user RAM 6000-FFFFH.
6. Mini 120vac receptacle for use with an audio cassette recorder.
7. Two hinges, so the Viper ROM/RAM board assembly can be swunge up and back to facilitate troubleshooting.


To access the interior of the Viper cabinet, both Viper side panels must be removed. A 14.5 x 1/2" plastic piece must be slid out of the cabinet top.
This will allow the hinged Astrocade and ROM/RAM board assembly to swing up and back gaining easy access to the Viper interior.

There is a fan mounted and pointed at the bottom left of the Astrocade console attempting to force air over the motherboard and out the limited console vents/ openings. The motherboard has no metal shielding present to restrict air flow.
This Astrocade has no RF circuitry, so the metal shielding can be removed with no negative effect on the TV/monitor display. The custom data chip, with its custom black heat sink, runs cooler than normal. The voltage regulator heat sinks run cooler anyway because 11 chips on the modified motherboard are no longer present.

There is a purchased +5v,+12V,-5VDC power supply board to power the ROM/RAM board.

The required -5VDC for the 4 banks of dynamic screen RAM can be tapped from the motherboard if desired. The -5V current draw for the 16KB screen RAM is very low.

To the back right, inside the Viper cabinet, is the interface for the full size matrix keyboard, which is not being used presently.


Two ribbon cables are plugged into the ROM/RAM board. The bottom cable comes from the Astrocade motherboard 50pin expansion. The top cable comes from a 24pin socket mounted on the bottom of the motherboard. The PX, system I and 7M clocks plus Z80 address lines A0 and A1, for the screen RAM interface, come from the 50-pin expansion. A better choice may be to utilize a 28pin ribbon cable connection from the motherboard to the ROM/RAM board instead of splitting all 28 lines necessary to operate screen RAM. In this case, you wouldn't even need the
50pin expansion cable to run screen RAM.

To the upper right are the four 4KB banks of dynamic RAM required to operate in hi-res. Only one bank is necessary for low-res.

To the left are four 74LS253 chips to select the appropriate bank for a Z80 hi-res read in which case one of the four banks is selected using the Z80 address lines A0 and A1. A low-res Z80 read will select only 1 specific bank.

To the left of those four chips are four 74LS166 chips used to receive all 32 RAM data out bits for the hi-res video scan, which are then transmitted to the custom data chip serial 0 and serial 1 inputs.

The chips to the left of the 74LS166 chips are used as timing control signals, buffers, selectors and other duties for low or hi-res modes. Some of the chips at the bottom left are also used for the screen RAM interface.

The trimmer pot to the left is used to adjust the RAS line. Once set for low and hi-res modes, this trimmer should really be replaced with a resistor, if possible. Aging trimmers tend to create problems.

The screen RAM interface used is similar to the Datamax UV-1R scheme. Only one RAS line is wired to all four RAM banks with the four lines CAS0, CAS1, CAS2 and CAS3 acting like bank selects.

To the bottom right is the Z80 DART circuitry which is not being used presently.

To the left of the DART and its interface are three 28pin sockets.

The right socket is Z80 addressed for 32KB at 8000-FFFFH. Up to a 32KB static RAM chip or compatible EEPROM can be used in this socket.

The center 28pin socket is Z80 addressed for 8KB at 6000-7FFFH and is switchable to 2000-3FFFH using a mini-toggle switch mounted at the rear of the Viper cabinet. Up to a 32KB static RAM chip or compatible EEPROM can be used in this socket. This socket is "multi-carted" for four 8KB banks using 2 DIP switches located near this socket. When the Astrocade is running in the hi-res mode, this socket will be disabled, unless it is switched to 2000-3FFFH.

A mini-toggle switch mounted at the rear of the Viper cabinet will "write protect" both the center and right 28pin user RAM sockets.

The left 28pin socket will be used for an 8KB hi-res ROM (EEPROM) addressed
0000-1FFFH and loaded with a hi-res conversion of the low-res UPI/on-board subroutines, additional fonts plus about 4KB containing an extended UPI (EUPI) with custom graphic subroutines. This hi-res ROM, when selected with one DIP switch, will allow the Astrocade to run strictly in the hi-res mode. Manually making this selection will also disable the low-res ROM on the Astrocade motherboard.

To the left of the three 28pin sockets are the necessary hi-res ROM and user RAM interfacing chips. Some of these chips are used for screen RAM duties.

There is a second 50pin ribbon cable expansion header for use with BalcheckHR or other remote PC/WW boards.

To the upper left on the ROM/RAM board are quick-connect power supply connectors and hard wire solder contacts.

The rectangular metal cutout on the left is where the horizontally mounted cooling fan in the Viper cabinet directs forced air into the Astrocade console in an attempt to dissipate generated heat inside the console and out its limited air vents/openings.

The ROM/RAM board was wire wrapped in the mid 1980's. All of the 0.1uf decoupling disk capacitors plus additional tantalum capacitors wired to the +5V,+12V and -5V power supply connections were soldered to the bottom tips of the wire wrap socket posts. The board, although not a professional PC board, works very well. Possibly, the main advantage of a wire wrap board in that time, besides lower cost, was its capacity to mount and wire more chips on a board compared to a same sized PC board. This WW board has 77 chip sockets mounted on it.

The top of the Viper cabinet and ROM/RAM board was designed so the 4 philip screws, that fasten the Astrocade console top and bottom together, could be removed without dissasembling or disconnecting anything within the Viper cabinet. This feature provides a fairly easy way to gain some access to the top of the Astrocade motherboard or utilize the DIP switches for software development.


The Astrocade power transformer was removed from its plastic housing to help it run cooler and perhaps extend its life. A 120vac mini receptacle was placed inside the plastic housing, then mounted inside the Viper cabinet. A heat sink, probably not really needed, was placed on top of the XFMR. A white fuse holder, barely visible behind the Archer power XFMR, was wired to the Astrocade XFMR to help protect it from a current fault.

The +5V,+12V,-5V power supply was purchased at Radio Shack a long time ago.
Today, a triple power supply like this might be hard to find. Look for a +5v,+12v dual power supply or two singles, which are physically small today.
Then, tap -5V and a ground wire from the Astrocade motherboard.

The horizontally mounted 120vac forced air cooling fan was elevated and directed at the cutout hole in the Viper cabinet top and Astrocade console bottom.


The 8 dynamic RAM chips and chip U23 were removed from the Astrocade motherboard because they would conflict with the screen RAM on the ROM/RAM board. Their removal also lowers the load placed on the motherboard power supplies. Chips U21 and U22 can be optionally removed because they are not needed. All of the associated decoupling capacitors for these chips and the RAM pull-up resistors were also removed.

The +12V regulator is also not needed and may be removed in the future.
Presently, there is a 1200 ohm resistor soldered from +12V to ground at a screen RAM chip solder pattern. This resistor quickly discharges the regulator's output capacitor when the power is turned off.

The custom data chip has a custom black heat sink on top of it.

The 27 ohm, 1W resistor R1 was moved to the left so the 24pin WW socket could be mounted on the bottom of the motherboard.

The -5v power supply line, if desired, can be tapped off the motherboard for use with the four 4KB banks of screen RAM. Current draw is only a few mA.

A ground wire was also added to the motherboard, for connection to the ROM/RAM board, as an addition to the 2 ground lines using the 50pin expansion.


A closer view of the low-res screen RAM area reveals the 6 blue wrapping wires connecting the custom address lines MA0-MA5 from the motherboard to the 24pin ribbon cable socket.

This photo shows a better view of the -5V tap wire and the +12V discharge resistor.


This photo shows one end of the relocated 27 ohm, 1W resistor R1 wired to the +10V regulator VR2 input using a pair of twisted wrapping wires.

A total 0f 17 wrapping wires were connected from the bottom of the motherboard to the 24pin ribbon cable socket. From left to right, they are:
1. Serial 0, Serial 1, blue
2. DATEN, white
3. MDO-MD7, yellow
4. RAS0-RAS3, red
5. Inverted 7M clock, yellow
6. Inverted System I, white

The Serial 0 and Serial 1 input pins 11 and 12 on the custom data chip must be disconnected (cut with a sharp hobby knife) from each other and also disconnected from ground.

To see MCM Design's motherboard modification procedure:
Go to BallyAlley.com.
Then, go to the Documentation/Hi-Res Astrocade Upgrade section.
Scroll down and select the Hi-Res Package 2.
Select "Low/High Resolution Modification Procedure" and read steps 1 thru 15.


Here is a direct link to "Hi-Res Package 2:"




Reference also "Modified Motherboard Schematic" and its accompanying layout in the Hi-Res Package 1.

The MCM Design address listed in Package 2 is no longer applicable.

End of tour.
MCM Design, Aug 2018

Link to comment
Share on other sites

  • 2 weeks later...

Michael sent me another update yesterday. Here's what he said this time:


From: MCM
Sent: Wednesday, September 5, 2018
To: BallyAlley
Subject: BalcheckHR update

Introducing the CHECKMATE DEMO, a recent addition to my BalcheckHR 8KB package. Here are my comments on this new demo.

  1. Nonstop, nonrepetitive, fast action with 100 rounds.
  2. No "pizza break" pause.
  3. New vibrant colors.
  4. Distinct background flash during a collision, better than the original.
  5. "Game Over" changed to "Demo Over".
  6. This is a demo only, with no joystick control.
  7. Relocated to 3BCB-3FFFH with program start at 3ED0H.
  8. Executable via C3 D0 3E at 2000H or menu linked list.
  9. Useable to test a motherboard for graphic action perfection.
  10. A pleasant audio/video experience from a Bally/Astrocade.

Because I had the room on my BalcheckHR EEPROM, I decided to do a rewrite on CHECKMATE for use as an additional test demo. I made a big push with this idea and finished the rewrite in about 1 week. I used your 3159 ROM print out that you mailed me some time ago, which had many comments, to help me breakdown this game for my rewrite. This game's program is straight forward and has no weird routines like, for example, SEAWOLF's screen interupt routine, which is hard to figure out. CHECKMATE's original programming is very smart and innovative. Since the moving graphic patterns are only 1x4 bytes in area, no vector block/routine is required. No magic RAM pixel shifting is used either, just magic "OR" and screen blank writes for motion and arrow rotation.

I find this CHECKMATE DEMO even cooler than my 10 fish CRASH TEST DEMO. I will most likely convert this new demo to hi-res and add it to my 8KB hi-res project which includes my SEAWOLF conversion. This 8KB package will be used as a tester for my hi-res ROM, which contains a hi-res conversion of the low-res UPI and on-board subroutines.

I still have just less than 1000 bytes left in my BalcheckHR EEPROM for my remaining 3 demos, 2 of which will be in hi-res.
As mentioned previously, when I'm finished with my BalcheckHR programming, I will email you my intro presenting BalcheckHR's features along with screenshots. This project is winding down. Yippy!



Link to comment
Share on other sites

  • 2 weeks later...

BalcheckHR Update (Hi-Res Astrocade)(Sept 16 2018)

On Sunday, September 16, 2018, Michael Matte sent me another hi-res Astrocade update. Michael has not yet given me the hand-written source code for this demo that he talks about here, but that will be coming sometime soon-ish (weeks or months, I'm not sure). Here is what Michael said:


Introducing a new hi-res demo called "The Pixel Stringer". This over 600 byte program is a hi-res addition to BalcheckHR. The intent of this demo is to show piece, with computer generated patterns, many of the tiny pixels in 3 colors on a hi-res screen map. The demo has multiple variations built into the program all to enhance a "modified for hi-res Bally/Astrocade" video graphics experience. Each "show" lasts 16 seconds long. It is very difficult to determine if any "show" is actually a repeat of a previous show.

I started with an idea and after experimenting with the demo during its debugging process, came up with some more ideas to make the demo more entertaining. When watching the finished program, I can't help myself and react with a big "wow!". Adam, you've got to see this demo. I'm hoping a MAME emulation of it can capture what I can see on my 20" Toshiba TV. My hi-res Astrocade outputs a composite video signal using a video driver copied from a Datamax UV-1R electronic schematic, providing a sharp, clean picture.

What is this "Pixel Stringer" demo? Remember the "Critter" program which bounces a critter around the screen. Instead of a critter, this new demo writes just one byte. Pixels 0, 1 and 2 in this byte are set to the background color 00 and the left most pixel 3 is the only viewable pixel. There is no blanking of this byte write. Instead, a string of pixels using the XOR magic function is written beginning somewhere along the x axis or the y axis. The end of the pixel string just keeps growing and growing. When the string bounces off the edge of the screen RAM area, it changes color. The result is a nonstop growing string bouncing around and constantly changing into 3 different colors with multiple pattern variations. In many shows, the speed of the string growth is very fast. I'm talking machine language fast. The following changes are made to every show displaying what seems to be an endless variation in screen patterns:

1. border color around screen RAM
2. first viewable pixel write begins anywhere along the x or y axis
3. delta X low
4. delta Y low
5. write speed
6. new pixel colors (colors 01, 10 and 11)

I had to add some extra hi-res routines, to accomadate the hi-res screen map. These specific routines were not available in my original hi-res test demo, which is also a part of BalcheckHR, so the byte count for this new demo is 600+ bytes. I have about 370 bytes still available for my remaining unwritten short demos. The BalcheckHR 8K byte program package is nearing its completion. I will then test the BalcheckHR board with multiple motherboards I possess and finally write the user's manual doc.

To whomever is able to view this new hi-res demo, enjoy!




I look forward to seeing this hi-res demo myself!


Link to comment
Share on other sites

  • 1 month later...

BalcheckHR Update (Hi-Res Astrocade)(Nov. 2, 2018)

On Friday, November 2, 2018, Michael Matte sent me another hi-res Astrocade update.


The BalcheckHR board runs great on my low/hi-res Astrocade, which outputs a composite video signal. The TV display is very sharp and clean. An old Radio Shack variable DC power supply was used to power the BalcheckHR board. I ran this set up for hours on this Astrocade and was very pleased with the results.

However, when the BalcheckHR board was plugged into a motherboard utilizing the standard Aztec rf modulator and the BalcheckHR board was powered by a remote DC power supply, then this set up produced a very undesirable amount of rf interference on the TV screen. I tried a second nearly new +5VDC power supply which also produced a lot of rf interference on the TV screen.

When I used a 9V battery to power the BalcheckHR board, the set up produced a negligible amount of rf interference, which is acceptable to me because the board will be used mainly for troubleshooting.

When the BalcheckHR board was powered by the +5V light pen connector, there was also a negligible amount of interference. This particular +5V connection would be acceptable for short test runs like the standard commercial Balchek tests, which take less than 19 seconds to run the 4 passes. I would not, at this time, recommend this connection for the long run time "Crash Test" routines, because the +5V regulator and black power transformer would likely run hotter than normal, perhaps increasing the risk of failure. An air fan would help dissipate the generated heat, but there could still be a possible risk of "long time overload". I may be overly concerned. Note that the Bally 300 baud audio tape interface utilized 9 chips and I am wondering if its user's instructions warned the user of leaving the interface plugged into the light pen connector too long.

At this point I have no idea why a remote DC power supply connected to my BalcheckHR board produces so much rf interference. It is beyond my understanding how to shield this interference, if shielding is possible in this application.

Because of this interference issue, I am making a change to my BalcheckHR project. The EEPROM containing the BalcheckHR programming will now be installed in a game cartridge. The recommended DC power source for the BalcheckHR board will be a 9V battery , which will provide power only to the dual 7-segment display and its interface. Relocating the EEPROM from the display board to a cartridge will reduce the power load and allow the 9V battery to run longer without replacing it. Many of the optional tests/demos don't even need the dual display. Should the user decide to use the standard commercial Balchek tests in the NONSTOP mode as a "Crash Test", because the test displays a hour/minutes clock which will report the run time when a standard test error is found, then the user can hook up a remote DC power supply to the display board. Any rf interference generated by this power supply set up, for this particular test, would be obscured and irrelevant.




Michael's progress is incremental and steady. I love it!


Link to comment
Share on other sites

BalcheckHR Update (Hi-Res Astrocade)(Nov. 4, 2018)

Sunday, November 4, 2018, Michael Matte sent me another hi-res Astrocade update.


Good news. Because I have noticed in the past that the TV/game switch and the 300 to 75 ohm adapter plugged into my TV have been causing problems with the Bally TV display, I decided to experiment and remove the switch and the adapter and see what would happen. So, I cut off the end of the 75 ohm cable that connects to the switch and spliced on a 75 ohm cable with a connector that will plug right into the TV VHF jack. To my surprise, all of that terrible interference that I was seeing when running my BalcheckHR board was no longer present. I have no idea why that is. I've been powering my BalcheckHR board now with one of those low cost Jameco +5V supplies. Occasionally, I see some transparent waves moving about the screen now and then, which I think are present because of the 5V supply plus Balcheck board set up. Ken Lill emailed me some tips on adding some components that can filter out voltage spikes, which can cause rf interference. So, I'll do some experimenting with Ken's filtering tips and see if that cleans up the TV display some more.

I've also installed one of my 28 pin BalcheckHR EEPROMs in a game cartridge. I was hoping I could fit in a low profile IC socket. Unfortunately, the pin hole width on the game cartridge pc board is a little to wide to accommodate a socket. I had to scrape away the ground plane by pins 2 and 27 and drill two holes there. I also added a jumper wire, an attempt to keep that ground plane around that end of the chip intact. I'm not sure, but that ground plane might be present to help shield rf interference.



I responded to Michael with the following:


I use an RF Coax F Plug adapter on all of my classic systems. This is a good one:


I haven't used a TV/game switch in decades. As you have discovered, it makes a huge difference.

I think that the ground plane on the Bally cartridges is there so that you can switch-out cartridges with the system still on. The Astrocade is the only classic game system that I know of that allows the user to swap a cart, press reset and continue playing the system. This worked out great years later when people adapted this system to fit new needs, such as switching-out the Bally BASIC for "AstroBASIC" and yet still keep the RAM intact. Some BASICarts allow you to "load" the BASIC program from tape, and then swap-in the "AstroBASIC" cart. It's a great trick.

Ken's full of useful tips. I hope his ideas help you iron-out any RF interference that you have on your system.

Also, it would be cool if you took some quick pictures of your latest hardware. As the saying goes, "a picture is worth a thousand words."


Michael responded to me on the same day:


Thanks for the tip about the coax plug. This plug may even provide a cleaner TV display than my "poor man's" fix. I'll try it.

I just finished checking out your AtariAge postings listing related to my hi-res projects. You've spent a lot of time in this endeavor. I appreciate very much your efforts in documenting my work. Your work is awesome. Thanks.

Regarding hardware pics, I'm not sure what you are referring to. Are you referring to my new motherboard diagnostic hardware tool which is only at this time 50% breadboarded. The breadboard is about 6x7 inches in size and will likely remain as a breadboard. This tool is simply a remote ROM (EEPROM) with decoder addressed 0000-1FFFH, a remote Z80 with reset button, one 7-segment display with a latch/decoder and also a 2 pos dip switch. It plugs into the motherboard via the 50 pin expansion. By flipping a dip switch on the breadboard, you can disable (essentially disconnect) the motherboard ROM and/or Z80 CPU from the motherboard address and data lines. This is assuming the 2 chips are working just enough to be disabled. The disable lines for the motherboard ROM and Z80 lines are wired out the 50 pin expansion. This tool can be used with a blank screen scenario when Balchek (or BalcheckHR) will not even execute, but the power supplies and Z80 clock are present and operating normally. With this scenario, you can very quickly determine if the motherboard ROM chip and its decoder or the Z80 are operating. The remote EEPROM on the breadboard will contain a simple power up program to fill the screen RAM with graphics similar to SetScreen, then "halt" the Z80 plus also provide an option to use the remote Z80 to power up the simple screen fill routine and use one 7-segment display on the breadboard to count up in hex to confirm the remote Z80 is actually running. Note the motherboard Z80 clock is also wired to the 50 pin expansion. Now, you probably could determine if the motherboard Z80 is functioning or not using a logic analyzer. But, with this new hardware tool, it would be so much easier and faster. Just plug it in, flip the appropriate dip switch, power on the board and press the reset button. I may be "jumping the gun shot" but I'm pretty confident that one can disable the motherboard Z80 and run the motherboard using a remote Z80. I haven't tested my idea yet, but plan to.




Michael just keeps chugging away at his Astrocade projects. One day there needs to be another "Astro Bash" gathering of Astrocade enthusiasts like there was in the mid-1980s with members of the Michigan Astro BUGs user group.


Link to comment
Share on other sites

On November 6, 2018, Michael Matte updated me again with news of his project.


From: MCM
Sent: Tuesday, November 6, 2018 9:39 PM
Subject: BalcheckHR Project Delayed Again

Adam, this is crazy. I was going to check that EEPROM that I installed in a game cartridge to see if the hi-res routines would run ok. But, now my hi-res Astrocade is powering on with a blank screen. It's the same scenario as that other motherboard. BalcheckHR will not even initialize, which is telling me the Z80 is not even getting to the initialization. The power supply and the Z80 clock seem to be ok. As I see it, the problem has to be the Z80, ROM chip or ROM decoder. So, I'm going to be experimenting again with my new hardware diagnostic tool. I have to make a few minor changes on the breadboard so I can use it on one of my working motherboards to actually program an EEPROM, using Bit Fiddler's MLM, with the necessary test routine. Then wire up the one 7-segment display as a "test confirmation". I might also have to wire up that remote Z80 on the breadboard. What a mess! I may have to step away from my BalcheckHR project for a while because I'm getting frustrated with all these delays. I'm fooling around with this new hardware diagnostic tool idea because I figure it will take less time to do that then learn how to use and read my logic analyzer. I especially don't want to use the "hit or miss" approach and just start replacing components. Don't want to de-solder the 40 pin Z80 and attempt to successfully install a 40 pin socket unless it is absolutely necessary. Yuck! I'll let you know when my hi-res Astrocade is up and running. It might take me a while. I may step away from that chore for a while too. Wish me luck.




I replied with:


Another broken Astrocade-- and your hi-res unit at that! Dealing with this old technology can be quite trying at times. I wonder how people who work on old carts deal with stuff like this? They must get frustrated too. At least with computers we don't have to re-manufacture parts that are no long made. At least, not yet we don't!

I can "hear" the frustration in your "voice," so step back, go outside, and do whatever makes you happy. When you're in the mood again in days, weeks or months (?) then good luck fixing your system.



From: MCM
Sent: Tuesday, November 6, 2018 10:03 PM
Subject: Re: BalcheckHR Update

I know it seems like a crazy idea. Use a remote EEPROM to test if the on-board ROM is bad. Use a remote Z80 to test if the on-board Z80 is bad. You can also test 5 of the 7 gates used for the ROM decoder. Then use a logic probe on the other 2 gates. Easy stuff. But, once the tool is constructed, it would be an easy plug-in and turn on test. Not that this tool will work on every bad ROM or Z80. The bad ROM or Z80 would have to work enough to disable it, so it would go "tri-state" acting like it is disconnected from the motherboard address and data buses. But, if the tool works as intended, it would beat spending time setting up and reading a logic analyzer. Don't you think?





Yes, the remote CPU does sound crazy, but in the long wrong it may save time.

I've never learned to use a data analyzer, except in theory. Well, that's not quite true. In one of my digital electronics classes I built a project that took the two inputs from an oscilloscope and made it into eight inputs. I forget the details, but with each "added" input, the signals that you could measure with precision grew worse. Still, the results were good enough to sketch out some signals from some simple circuits.

One day I'll hook up the data analyzer that I bought a few months back on Ken Lill's recommendation... or maybe I never will; we'll see.



That's it for updates now.


Link to comment
Share on other sites

Michael updated me again on November 12, 2018:


I have my remote EEPROM and remote Z80 running my hi-res Astrocade now. I also have a TV display now. BalcheckHR is also running and showing a video RAM error on all 8 video data lines. Looks like the motherboard Z80 or possibly chip U5 is not operating properly. But, there is another problem related to the 8 bit video data bus. Will run more tests. My new hardware diagnostic tool idea actually works. A crazy idea, but it helped me isolate a problem area without de-soldering any chips. I also ran this tool on one of my working motherboards and it worked perfectly as designed. I used this same breadboard as a user static RAM add-on and then as an EEPROM programmer. I used Bit Fiddler's MLM to a program a simple 150 byte test routine for the hardware diagnostic tool. I'm hoping U5 is bad and not the Z80. Don't really want to de-solder the Z80 and install a 40 pin socket. I'm going to step away from this attempt to fix my Astrocade for a few days. Time to take a break. Will keep you updated when I have some more news.




Great update, as you can't fix a problem without knowing what is causing it.



Link to comment
Share on other sites

  • 4 weeks later...

Michael updated me again on December 9, 2018:


BalcheckHR Update
December 9, 2018
By Michael Matte

Finally! The testing phase of this project is finished. I had another delay. The EEPROM on the BalcheckHR board was not decoding perfectly. This problem seemed to be prevalent in the two fish and new Checkmate demos. It was beyond my understanding what was causing this problem. I had successfully, in the past, used the static RAM and EEPROM chip enable (CE, active low) pin as the chip select and then would wire the output enable (OE, active low) pin to the CE pin or ground. This method worked for my Balcheck scheme on my quick connect breadboard. But, for some reason, the problem was occuring on my BalcheckHR wire wrap board. I spent a very long time, using a "hit or miss" approach, trying to isolate the problem. I'm not one to give up easily. As long as I had ideas, I kept working on this problem. Finally, the time came when I ran out of ideas. I was ready to give up. Then later, I came up with an idea. I used the OE pin as the chip select and grounded the CE pin. To my surprise, the idea worked.

The BalcheckHR board runs perfectly now. This fix allows me to implement 2 new diagnostic tools on the BalcheckHR EEPROM to help diagnose what I call a "Zone B failure". I have broken down the motherboard into 4 zones as follows:

Zone A The power supply including power supply lines to all chips.

Zone B All circuitry and chips/chip pins wired to the Z80 memory address and data buses.

The Z80 CPU clock input at pin 6.
The ROM decoders.

Zone C The remaining circuitry and chips related to the operation of the microcycler and video RAM data buses plus the

RAM memory address bus.
The system clocks generation necessary for operation of these buses.

Zone D The custom I/O chip and all circuitry wired to it, except the two system clock inputs, which are coming from zone C.

When the Balcheck tests won't even execute, ie, the 7-segment dual display will not even initialize to - - (dash dash) at power on, there is a Zone A or B failure.

A 74LS42 chip and DPDT mini-toggle switch have been added to the BalcheckHR board to select execution of the BalcheckHR programming or two new Zone B diagnostic tools. The board utilizes a 32KB multi-carted EEPROM using a 2 position DIP switch to select one of four 8KB banks of ROM. Two banks are programmed with BalcheckHR. The other two banks are programmed with:

1. A revised copy of the 8KB on-board ROM. The revision includes:

A. New menu colors.
B. © BALLY MFG 1978 replaced with MCM DESIGN 2018.
C. Revised checksum byte at 0033H.

2. A Z80 Check routine which includes:

A. TV screen parameters set up (output) similar to SetScreen.
B. Sentinel C3 check at @2000H with a jump to 2000H, if the sentinel is present.
C. Execution of a write only routine (no Z80 stack in RAM required) that counts up the 7-segment dual display from 00-FFH.

At this time, I will not explain what these 2 new Zone B diagnostic tools can or can not do. Their purpose will be explained in the BalcheckHR user manual.

By selecting the appropriate EEPROM multi-cart dual DIP switch positions and flipping the mini-toggle switch, the user can execute the BalcheckHR programming, the remote revised on-board ROM addressed 0000-1FFFH or the Z80 Check routine also addressed 0000-FFFFH.

All that's left to do on this BalcheckHR project is write the user manual. Some of the documentation will be hand written. This project is finally coming to an end. I'm glad I was persistant in resolving all the various issues. I'm very pleased with the outcome of this project.




This is such a great project to see unfold.


Link to comment
Share on other sites

  • 1 month later...

Michael updated me again on January 13, 2019:


BalcheckHR Update
January 13, 2019
By Michael Matte

Hi Adam. Wanted to let you know I finally finished writing and texting in my BalcheckHR user manual. I still need to proof read it checking for typos, accuracy and clarity as the final revision. I decided against submitting each doc to you for your review because there is just too much info to review. Besides, it's kind of difficult to review docs for accuracy and clarity when you don't have the hardware and software in front of you to check out the docs.

I probably went a bit overboard with the user manual. I do have a tendency to go on and on. As it stands, the manual has 16 docs and 1 file. The file, mostly drawings related to the BalcheckHR board and Bally/Astrocade motherboard, would require up to 21 scans, subject to your approval. The manual could be nearly 100 pages.

The manual's emphasis is the use of Balcheck and SetScreen3. It takes a little time to figure out how to use SetScreen3, but it's really cool. In many cases, it will give you a screen display on a motherboard with a blank screen failure. I added an example to the SetScreen3 doc using one of my motherboards, removing a socketed RAM chip and described the troubleshooting steps taken, pretending I didn't know the chip was missing, to diagnose the blank screen failure. The emphasis in the example was on using SetScreen3.

I have spent a lot of time on this project, but it has exceeded my expectations. I think you guys are going to like the upgraded Balcheck and SetScreen3 diagnostic tools. They should make troubleshooting a failed motherboard producing a blank screen a lot easier.




I'll be scanning any documents that Michael sends to me. I'll add them to BallyAlley as time allows for updates.


Link to comment
Share on other sites

  • 3 weeks later...

Michael sent me a working BalCheckHR unit two days ago. It looks like this:





I made a complete post about this on my new-this-week BallyAlley Blog:




This is my start into digging into this hardware. I look forward to working with this some more over the next few weeks and I'll continue to post about this to the blog.



  • Like 1
Link to comment
Share on other sites

  • 1 month later...

Michael updated me again on March 12, 2019:


BalcheckHR Update
March 12, 2019
By Michael Matte

Just wanted to let you know I got my Kingst LA running on my hi-res Astrocade. I hooked up 7 channels, ran the test and saved the data just to see if I could do this. What a cool device! Thanks so much Ken for telling me about this device and how to purchase it.

I thought I had finished wire wrapping my hi-res static RAM board. I got all 4 chips of static RAM to run independently in low-res. I have encountered a problem running the board in hi-res. I am so close to successfully running hi-res with static RAM. I am getting a hi-res TV display, but it is not running right at this time. There's a timing problem somewhere. Because the static RAM has a shared data in/out bus, I have replaced the standard hi-res 74LS244 and 74LS253 configuration with four 74LS245 and some decoder chips. There is a bug somewhere that I haven't anticipated. That's where the Kingst LA comes in. I can now compare the signal lines of my working hi-res Astrocade with my hi-res static RAM board to see what's going on with this board. I am also using an EEPROM at 2000H with a version of the original SetScreen, which halts the Z80. There are no memory writes to or reads from hi-res screen RAM, which should simplify trouble shooting the bug. The custom data chip just scans the 4 RAM chips and the pixel bits are feed into the custom data chip's 2 serial inputs using four 74LS166 chips. The TV just displays scrambled pixels. I'll know visually when this display is working perfectly.

BalcheckHR has a few unused bytes, so I changed a few bytes on a copy of it in an EEPROM, so the entire chip will run in hi-res. That's why I like EEPROM's so much. It's so easy to change a few bytes. It is interesting to watch the low-res routines/demos run on a hi-res screen map. They run on the top quarter of the hi-res screen and because the way the map is laid out, the graphics are split in half on the left and right areas of the screen.

Thanks again,


I'm glad to see that Michael has a new tool in his toolbelt to help him find problems.


Link to comment
Share on other sites

Michael updated me again on March 14, 2019:


BalcheckHR Update
March 14, 2019
By Michael Matte

I just made a major step toward finding the bug in my hi-res static RAM wire wrap board. I found out, a visual confirmation, that the hi-res video display circuitry, which feeds the video bits into the custom data hi-res serial 0 and serial 1 inputs, is working perfectly. An idea just popped into my head, that I could simulate a hi-res TV display by using my hi-res variation of the original SetScreen, which just sets up the initial screen parameters and halts the Z80 CPU, and "hard wire" a hi-res TV display showing vertical color stripes. I removed my four 74LS245 and four static RAM chips from their sockets. I simply used some tinned bus wire and solder to ground the static RAM socket data pins that I wanted to represent a logic 0 video data bit. An ungrounded (floating) data socket pin would be taken as a logic 1 video data bit. So, by grounding the desired RAM socket data pins, I can define what vertical color stripes will be displayed on the TV. You can only do this in the hi-res mode. Isn't that something. I saw a hi-res TV display on an Astrocade that had no screen RAM chips on it. Adam, I know this is hard to believe, but that's what happened. In hi-res, the screen RAM video data bits are wired to four 74LS166 chips, which are used to feed the video bit values to the custom data chip serially.

This idea is a significant find for me, because it greatly reduces the area where the bug exists. I'm pretty sure my WW board needs a rewire somewhere. Because I'm using static RAM, I've probably missed something. I'm not seeing the bug yet. Also, because of this idea, I can just use one static RAM chip and focus on getting only one bank working in hi-res. Then add the remaining banks one at a time. My logic analyzer will also be a great help. Hopefully, I'll find that bug soon.



A display on an Astrocade with no RAM? Michael is creating a monster! ;-)


Link to comment
Share on other sites

Michael updated me again on March 18, 2019:


I wrote a hi-res "screen fill" write only routine, a variation from SetScreen2. This routine runs nearly perfect on my single hi-res static RAM chip + 3 simulated RAM chips set up, mentioned in my last email.

I still have not resolved the mistiming issue mentioned previously. The set up runs perfectly in low-res and nearly perfect (write only) in hi-res. This is an indication that the scheme to run all 4 static RAM chips in hi-res is feasible. I can use my logic analyzer to compare the low-res waveforms with the hi-res waveforms.

As I see it, when the custom address/data chips run in the hi-res mode, there is a slight variation in the timing compared to the low-res mode. The static RAM characteristics may be such that the chip is not running perfectly at this time, because of this slight variation.

I was not expecting this issue to occur when I chose to use the wirewrap board technique. I was also hesitant to use the standard quick connect breadboard technique, which forces you to use longer lengths of wire. I wasn't sure if running longer wires would degrade the waveforms. Because it is a chore to make changes on my wirewrap board to experiment and tweek the timing, I am implementing 2 ideas I have to build a quick connect breadboard set up, that will keep the wiring very short, similar to my wirewrap board. This way, I can makes changes easier and faster. This new set up will be used to get one static RAM chip to run perfectly in hi-res. Twenty-four video data bit input lines in the four 74LS166 chip video display circuitry will be grounded or left floating to simulate the other 3 hi-res static RAM chips and will display specific constant vertical colors on the TV screen. This idea was mentioned in my last email.

The way that the first hi-res bank is mapped out is as follows:

The first bank is mapped at every 4 bytes on the TV screen starting with address 4000H. The RAM bytes mapped are at 4000, 4004, 4008, 400C, 4010H and so on, scanned left to right, top to bottom on the screen. So, there are 20 single byte (4 pixel) wide vertical columns mapped to the first hi-res bank. I am using one static RAM chip in place of a bank of 8 dynamic RAM chips. With this one static RAM chip set up described above, I can easily determine visually, whether or not, this RAM chip is working perfectly.

Hopefully, I will be able to find the bug in this set up using my new quick connect breadboard. As long as I have test ideas, I will continue working on this project. If I run out of ideas not resolving the issue, then I will be finished with the project. This may take a while. I will no longer be able to spend as much time on this project as I have been doing the last several weeks. I will give you an update when I have something positive to report.



Even when he slows down due to issues with this project, Michael keeps trying different ways to reach a solution.


Link to comment
Share on other sites

Michael updated me again on March 20, 2019. A word of explanation here before you read his update. I commented to him that I thought using the breadboard method to build his RAM board might not be a good idea due to issues that might arise from the contact points on the breadboard. He alleviated my fears while I also pointed out to him that the custom chips that were designed for the original Amiga were, like his current RAM board, wire-wrapped constructions.

Here are Michael's comments:


The system clock for the Amiga was several times higher than the Astrocade which is 1.78Mhz. The Astrocade custom data chip utilizes 7M and the hi-res video display serial feed also utilizes 7M. I think higher clocks can pose more issues that need to be considered. The screen RAM board for my hi-res Astrocade is completely wire wrapped and uses a variation of the Datamax UV-1R timing circuitry. It has a trimmer pot to adjust the RAS (active low) line to run in both low and hi-res. Because I am using static RAM, this Datamax scheme variation runs in low-res perfectly, but not so, yet, in-hi-res. I am hoping that all I need to do is tweek the timing somewhere to run hi-res perfectly. That is the mystery at this time. I don't know where to tweek it, to get the scheme to run perfectly. I have a logic analyzer to help me see what's going on, but I may end up tweeking by the trial and error method.

This is why I thought I would try the breadboard approach for my tweeking attempts, which is faster, easier and has the room for tweeking. I am not expecting additional problems to creep in because of the breadboard contacts because I have used the breadboard approach successfully a bunch of times with various projects wired to the Astrocade motherboard. My breadboard layout is set up and ready to be wired. The components are in place on the breadboard. The compact breadboard is only 9 inches long by 7 inches wide, which is actually smaller than my wire wrapped hi-res RAM board. There is also room on this board to add and wire the other 3 static RAM chips and multi-page circuitry if I should luck out and advance to that level and choose to continue in that direction.

My plan is to spend no more than say an hour a day to wire up my scheme and then try tweeking it. If days go by and you hear nothing from me about this project, it is because I have not made any progress on the timing issue and have nothing to report. I may also let the project sit for a few days to consider the next step. I usually come up with ideas this way.We'll see what happens. This project, if successful, would be a break through in Astrocade hi-res hardware. Wish me luck.



Good luck getting your Static RAM up and running, Michael!


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...