Amiga 1000


September 12, 2022

I'll start this post out with some shots of the box that the A1000 originally came in. I'd say that the box has held up pretty well considering that it is will be 4 decades old in a few more years.












I started out by unplugging the power supply form the main board and testing the voltages at each pin. Once I was satisfied that it was working properly I plugged it back into the motherboard. I then took a look at all of the electrolytic caps and they seemed to be in good shape. So it was time to plug it into its original 1080 monitor and fire it up. When the power was applied I saw a slight flicker on the monitor but it never went through the gray shades or white screen. I also noticed that the boot up jingle did not play. The power light came on dim and then eventually went to full brightness. There was a single flash of the caps lock LED on the keyboard. The floppy disc drive also started spinning after a few seconds but no stepping of the head. The kickstart screen did not appear.

I looked over the system for a while and also reseated all of the socketed chips to no avail. I also looked up screen color codes during the boot up and what they indicated. The problem was that I wasn't really seeing a color change on the monitor just a bit of a flicker as the power switch was applied. So now it was time to break out the scope and see if there is any activity on the CPU pins. I checked the clock line and low behold there was no 7 MHz clock! I looked over at the cage where the clock signal is sourced and there was no clock oscillator present!

I headed out to my spare parts box and finally located the 14.63... MHz clock that was supposed to be there. I soldered in a DIP socket and then loaded the clock into it. I'm not sure why I had removed this but it may have been related to the Lucas accelerator board. Now that it was back in place I fired the machine up and was greeted by the Kickstart screen!!!



The next step was to insert a kickstart 1.3 disc and try to boot the system. Unfortunately when I put the disc into the floppy drive nothing happened. The disc was spinning but the head was not stepping. So back out to look for a spare floppy drive that might work. I found one and hooked it up to the motherboard and the kickstart seemed to be loading in. Unfortunately when it was finished stepping through the tracks it didn't produce a workbench but instead flashed a gray screen and then went to solid white. I tried a soft boot but the same thing happened again. I'm starting to wonder if there is something wrong with the WCS board that the kickstart is loaded into although it must have passed the pre-boot test.



A view of the upper deck WCS board of the A1000 and a 256K expansion in the front slot. Note the silver 14.63 MHz clock that has been restored to its position in the clock cage at the upper middle of the shot.

I have ordered a diag ROM to perform some further testing of the system. I have a blank kickstart board that I can put it in to test with. I also need to pick up a 1.3 ROM to possibly bypass the WCS if that turns out to be a problem and isn't easily repaired. I am hopefully though since I was at least able to get to kickstart and hear some audio and test some basic video and floppy disc access.


September 21, 2022

The DiagRom flash board that I order came in today so I built up the A1000 kickstart board that I had on hand. This board requires some modifications to the Amiga WCS board to work properly. PAL U6J was desoldered from the WCS and socketed so that pin 17 could be easily isolated from the board. A 4.7k resistor is also required across pins 1 and 20 of U4K. A jumper is also required from pin 13 of U6L over to the new kickstart board. All of these mods were made with removable jumpers on the Amiga WCS board so that it can be easily changed back to the original configuration. The final requirement is to remove the boot ROMs U5N and U5P.


This is the assembled kickstart board for the A1000 with the DiagRom (actually a flash board) inserted. The 68000 from the Amiga will need to be loaded at position U2 and the jumper wire from the Amiga WCS board will attach at the single jumper position below the ROM.


It looks like DiagRom has already paid for itself by detecting some memory issues in the low part of chip RAM. The error appears to be in bit 5 (bit 6 DiagRom convention) and runs from 0x4000 to 0x41FF. I think that it is actually bit 13 since this is a 16-bit processor with big endian memory access.  The other complication will be trying to determine which 64K bank of chips this is in since it isn't readily apparent from the Cardinal schematic set. I did find a source of some MB81464 DRAM chips that I can get from Florida for a reasonable price so I ordered 4 of them to have a couple of spares.


Using the memory editor function of Diagrom I was able to determine that bit 13 in the 0x4000 to 0x41FF range seems to be mirroring bit 12. If I write the pattern 0x22 to it it reads back as 0x02. However if I write the pattern 0x33 it reads back as 0x33.



September 24, 2022


The DRAM chips arrived today so it was time to try and figure out which chip needs to be changed. Using a scope with 16 digital channels the DRAM *CAS signal that is activated when DiagRom writes to location 0x4000 was identified. A trigger pattern on the scope checked for all address lines in the range of A13 to A20 low except for A14. D5 (actually D13) had to be high along with a low on the *WR line. Note that *UDS also needed to be low for this trigger. The Amiga has 4 CAS lines and I was only monitoring 2 at a time with the scope so it took two attempts. In this trace we see that *CAS 2 is active and is the signal from U1H pin 15. This CAS signal is routed to DRAM chips U2B and U2C. Data line D13 is on U2B so that will be the chip that gets replaced.


The DRAM chip U2B was removed and a socket added in its place. One of the new MB81464-12 DRAM chips was plugged into the socket. Note that the Amiga was built with -15 (150ns) parts and these replacement parts are faster -12 (120ns) but will work just fine. This screen shot shows that the memory test has now made it up to 255kB which is well beyond the prior problem range of 0x4000 to 0x41FF. Chipram is now good once again!

Note the odd dots in the display and the fact that the right portion of the display is completely blank. I discovered that tapping on one end of the Denise chip would reduce or increase the flicker so I decided to touch up the solder on all of the custom chip sockets. That however did not resolve the problem. After further investigation I noted that if I slightly lifted one end of Denise out of the socket all of the display issues went away so some cleaning of the socket may be in order.

With the DRAM and display issues out of the way I decided to try and re-enable the WCS kickstart board and attempt to load kickstart from disk. That seemed to go OK with the drive spinning and the head advancing through the tracks. However it never gets to the point of requesting the Workbench disk. The screen briefly flashes to gray after the disk activity stops and then changes to a lighter gray. Nothing else happens after that point. I'm wondering if there is a DRAM issue on the WCS board (DiagRom doesn't test that memory) or there is some problem with loading in Kickstart. Further investigation to come but at least I am knocking out some of the issues.
 


September 28, 2022

Tonight I decided to spend some time trying to figure out where the boot process is hanging. Since there is a disassembled listing of Kickstart 1.2 on the web I'll start with that disk and my 16-channel digital capture scope to debug the issue. A couple of different gray colors were observed on the screen so I knew that it was partial running kickstart. The scope was set up to trigger on address FC0258 which is the medium gray color switch. The scope confirmed that kickstart was running to at least that point.

Several other points were observed on the scope:
The next point that was tried was FC0500 which scan for RomTags but that address never triggered on the scope. The last observed address on the scope was FC04C2 which is right after the supervisor bit is turned off. From there the CPU started executing at FC0C52 which is the start of the Level 1 autovector interrupt routine. Further checking on the scope suggested that the CPU was continually being interrupted with a level 1 interrupt. That would explain why the Workbench prompt was never presented. CPU is too busy handling interrupts! Level 1 handles serial transmit, disk block finished and software interrupts that shouldn't be occurring at this point. Further investigation is necessary.


September 29, 2022

After researching the interrupt signals of the custom Paula chip and also the 68000 it was time for further probing with the scope. I attached probes to pins 13-18 on Paula which cover IPL0 - IPL2, Int2, Int3 and Int6. After booting up the machine into kickstart there was no activity on any of these lines. A level 1 interrupt shouldn't be occurring since IPL0 - IPL2  were all inactive. So the next step was to probe the interrupt lines at the CPU and also the various  control signals to trigger the scope on an interrupt. What was found is that IPL0 was not in the same state as what Paula was providing and indeed the CPU was seeing a Level 1 interrupt being signaled.

So I powered down the machine and ran a continuity test between Paula IPL0 and the CPU IPL0 pin. Sure enough there was no continuity between the two pins. I decided to touch up the solder on all of the CPU pins since some of the pins looked as though they had very little solder at all. That however did not resolve the lack of continuity. It seems that the pin of the CPU is not making good contact with that socket pin. To resolve the issue that leg of the CPU was bent slightly to put some pressure on the socket contact and that provided continuity back to the Paula signal. I think that the socket was worn out by my use of the Francis accelerator board and should be replaced in the future.

The motherboard was put back into the machine and the power turned on. The machine booted up and requested the kickstart disk. After loading kickstart there was a request for Workbench! Success at last! I was able to open up a clock window and also a note pad. Workbench was now running and seemed to be stable. To celebrate the achievement it was now time to pop in the Marble Madness disk!


My first real computer running Marble Madness 36 years later. I spent lots of time playing games and doing homework on this machine. I was happy to get it up and running again!

The next steps will be to try and get the original floppy disc drive working so that the machine can be reassembled. I'll probably take a look at replacing the CPU socket so that the CPU doesn't get stuck in an infinite interrupt loop again. I haven't decided whether to try out the Francis accelerator board or the SCSI addon. I might keep this machine stock and use the A1200 for my accelerator needs.