After testing the other chips on the card, I discovered that the 7400 chip wasn't fully functional. After that was replaced, my setup worked as it should.
Borrowed some Monitor 80 EPROMs from a friend to compare against mine in an attempt to figure out what was different. It seemed that something was different in the last two EPROMs (at address 020000-021377) as when I used his EPROM card, it worked. However when I compared the ROM contents to mine, they were identical! So there must be something wrong with my ROM card.
After testing the other chips on the card, I discovered that the 7400 chip wasn't fully functional. After that was replaced, my setup worked as it should.
0 Comments
There is one last mystery to solve with my computer. Fortunately, it has nothing to do with the reproduction boards. It is a problem that appears in both the original and reproduction Mod-80 systems. For some reason, Monitor 80 (the 8080 version of the software) cannot correctly read data from EPROMs in the ZIF socket. When it is asked to do so, it just repeats the same data value over and over for all address locations. Since it cannot read data correctly, it will not be successful writing either as the software verifies the data before moving on to the next address. Thus burning was not tested.
When configured as a Mod 8, the there are no issues. This only happens when the system is configured as a Mod 80. The only difference between the two configurations is the following.
I have three different Mod 80-1 boards, one is a reproduction board, and two are original boards made by two different people at different times. All three exhibit the same behavior, so I doubt the problem has to do with the CPU board. If it were, there would have been some sort of bug fix published, or something in the notes I have, I suspect. Next I checked the Jumper Board. I thought maybe I missed a jumper that affects only this function. However, when the board was double checked with the bus diagram from the Moducomp Mod-8 Supplement no errors were found. As Mr, Sherlock Holmes is fond of saying, "when you have eliminated the impossible, whatever remains, however improbable, must be the truth". This left the two Mod 8-4 boards, or more specifically, the Monitor 80 code I was using, Monitor 8 and Monitor 80 address the ZIF socket slightly differently. In Monitor 8, the EPROM in the ZIF socket appears at addresses 200000 to 200377. Since 200000-200377 could be a real addresses in an 8080 system, Monitor 80, uses addresses P000 to P377 to refer to the EPROM in the ZIF socket. My copy of Monitor 80 was burned using the copy of the code in the Moducomp Mod 80 Supplement. I have checked the ROM contents several times to ensure that they are correct, and found nothing wrong, but this is not an easy task to get right. I suspect there must be a bug in it somewhere. I can't think of any other reason. Can you? I am hoping to get a copy of a original set of ROMs from a friend to compare, and see if that corrects the problem. Stay tuned. At this point, everything tested OK with my completed reproduction version of the Mod8-8 board, except I was unable to burn any EPROMs with it. What appeared to be happening was the 48 V programming voltage was not making it's way past the transistor Q5 (designated T5 in the MF8008 manual). At first I thought I might have been a missing trace, or I had incorrectly installed diode or something like that. Then I recalled that the version of the transistor I used was not in the same packaging as normal, and that maybe the pinouts were different too. Q5 (MJE1103), normally comes in an unusual TO-225 case. The version I bought on the internet (called a MJE1103T) came in a standard TO-220 case. If one views the transistor face-on (with the heatsink behind it), on the TO-225 version, the pins are (from L to R), E,C & B. I could not actually find a datasheet for the MJE1103T, but for most TO-220's the pins are (from L to R) B,C &E. Sure enough, as soon as I reversed this transistor, the proper programming voltage was making its way through, and I was able to burn a 1702A chip successfully. This essentially verified that indeed, the TO-220 version has the pins in reverse order from the TO-225 version.
While reversing this transistor works, it looks kind of ugly, so I will end up ordering the proper MJE1103's. I would recommend avoiding the MJE1103T unless you cannot obtain a MJE1103 for some reason. With that, I can finally declare that the Mod8-8 board fully tested and functional with a few minor modifications. When I do the next run, I will, of course, have those corrected.
Version 0.5 of the Build Instructions for the MIL Mod8/80 Reproduction Kit is now available from this website. It covers some newly discovered issues with the Mod8-8 backplane board as well as added appendices on troubleshooting and how to use a current loop converter to talk to the Mod 8/80 via a PC instead of using a 110 baud teletype. Finished assembling the Mod80-1 Reproduction board. I was awaiting four 20K multi-turn trimmers for this board before I could set it up and test it. After setting them up to match my existing Mod80-1 board settings, the new board worked perfectly. I am very happy with the progress thus far.
As noted much earlier in my blog, I picked up the Mod 80 at a ham-fest well over a dozen years ago. The package consisted of several circuit boards and some documentation. Unfortunately, I did not have a complete set of boards to get it going. However I did have the schematics and board layout drawings from the manuals. What started off as an effort to reproduce a few missing boards for myself, ended up designing all the boards needed to make either a Mod 8 or Mod 80 computer. In this video, I will go through each of the boards and show how they are used to make the computer. I also do a comparison (where I can) with some original boards that I borrowed from Gabriel Nemeth. Today, I decided to attempt to burn a 1702A EPROM using the Mod-8. As you can see from the video below, it went pretty smoothly. To burn data on an EPROM, you enter the command PRG. Monitor-8 responds with the '*' prompt and awaits the user to enter the start and end addresses of where the data is stored that you want to burn on the EPROM. After entering the final address, Monitor-8 responds with the '%' prompt. Possible responses are 'A', if using a 1702A chip, or 'N' if using an older "normal" 1702 chip (which I have never seen). Typing an "A" will give a program pulse duty cycle of 20%, and typing an 'N' gives approximately 2% duty cycle. After entering either 'A' or 'N', the computer will immediately beginning programming the chip. When I first tried this, I thought something went wrong, as the teletype started making some chattering noises. Apparently this is normal and serves as a sort of audible indication of the programming as the chattering matches the blinking of the programming LED on the back plane. The Mod-8 burns an EPROM as follows. Instead of burning the entire chip and then verifying it, it will burn each byte individually and verify the contents are ok before moving on to the next byte. If the burn was not successful, it will re-burn the byte and verify it again. It will continue to do this until the burn takes. Healthy EPROMs take slightly less than a minute to burn, whereas poorer chips may take several minutes to burn, as the number of re-burns will be higher. Interestingly enough, these chips are only mildly warm to the touch when they are finished, much different than what I noticed with my 1702A EPROM burner for the PC. Not only can you write data to the EPROM in the ZIF, but you can read it as well. Monitor-8 uses memory locations 200000-200377 to access the EPROM data. You can also use 300000-300377 as well. Notice these ranges are well outside the 16 kB address space normally accessible to the 8008. If using Monitor-80, the above address locations could represent real memory locations in RAM (or ROM), so to read EPROM memory, you use P000-P377 instead. While trying to play around in Monitor-80, I started getting some strange characters returned every once in awhile. For example, when typing a 3, a P would be echoed back to the TTY from the Mod-80. When doing a DPO (DisPlay Octal), some numbers would have letters in them. Clearly something wasn't right.
The first thing I did was try another CPU board, but that didn't work either. I ended up replacing all the boards with the Mod-8 set, and even that had trouble. Sometimes the Reset button would produce nothing. At other times, garbage characters would be printed on the TTY instead of the familiar "--------" prompt. After pulling my hair out trying to figure out what was happening, I noticed that if I wiggled the boards a bit, it sometimes fixed the problem. In the end I ended up re-heating all the solder joints to the edge connectors on the back-plane. That seemed to have fixed the problem in most cases. However, my Mod 80 board refused to work. I tested all the ICs in my TL866II and it turned out that one of my 74123 chips didn't pass. I had seen this before on some other boards. Out of all the old TTL chips I had used, these are the only ones that seemed to come up with errors when tested. I am not sure why those seem to have a higher failure rate than other TTL chips, but the majority of them failed. I had some modern 74HC123 chips floating around, but they didn't seem to work in this application, so I have ordered a batch of new 74LS123 chips. Hopefully they will work. I was able to pull a spare "good" 74123 to at least prove that this was the problem, but I need to put that one back at some point.. Below is a video of how programs (in this case, "Hangman") is loaded from paper tape on the MIL Mod-8 Computer.
|
AuthorCharles Baetsen holds a Bachelor and a Master's degree in Engineering Physics from McMaster University in Hamilton, Canada. Archives
February 2024
Categories
All
|