I've got a DEC 3000 model 300 and a couple of DEC 3000 model 600 alphas which failed some time ago and the recent Alphaservers thread has rekindled my interest in getting them working again.
A couple of years ago, there was another thread "AlphaStation 200 NVRAM Problem" where the Alpha SROM mini console and various items of useful documentation were mentioned. I have now made up an adapter (cable and MAX232 line driver / receiver) as described in that thread to allow me to to talk to the the SROM mini console in my alphas and I am please to find they are all responsive at this level. I also found: "DEC 3000 300/400/500/600/700/800/900 AXP Models System Programmer's Manual Order Number: EK-D3SYS-PM. B01" (d3syspmb.pdf) which describes some of the internals of the machines in question. The mini console commands available on the model 300 are very limited compared to those in the documentation which targets a much later machine. However, it does have mt (memory test) which is not present on the model 600 for some reason. Results from this suggests that all 6 SIMMs present are bad in pretty much all locations. This seems a bit unlikely to me. Perhaps there is a failure in logic which causes the memory not to be accessed at all? Unfortunately, the manual does not seem to give any leads on how to diagnose this further. The em (examine memory) and dm (deposit memory) commands only accept 32 bit addresses meaning they cannot to be used to access input/output areas which require at least 33 bit addresses. However, a little experimentation led me to the existance of ei and di commands which can do this on the DEC 3000 machines and I found I can use di to update the diagnostic LEDs on the machines. The DEC 3000 600 machines both (usually) count down to F0 on their diagnostic LEDs and hang without producting any output on the main console. They do however produce output on the mini console - for example: DEC 3000 - M600 SROM 6.1 Powerup Sequence ff.fd.fb.fa.f9.f8.f7.f6.f5.f4.f3.f2.f1.f0. sysROM 00000033.000006f1 ioROM 00000033.00000162 MCRstat 11111111.808011c0 bnkSize 00000300.00000c01 memSize 000000c0.000000c0 However, they do not provide the SROM> prompt or accept mini console commands unless a I engineer another fault condition such as by pulling out one of the memory risers. I wonder if there is a jumper to enable mini console commands to be accepted without doing this? Looking around the system board, I see a pair of jumper pins labelled J9 hidden under the I/O board which looks like it could do this. Unfortunately, while there is legend on the PCB indicating the function of all other jumpers, there is none for J9 and it is not mentioned in the manual either. On the I/O board, there is one three pin jumper labelled simply "Off" and "On" and it is jumpered to the "On" side. It is close to the SCSI connector so I suspect it is more likely to be something to do with termination or termpwr than the mini console. One of the model 600s sometimes generates a machine check, like this: DEC 3000 - M600 SROM 6.1 Powerup Sequence ff.fd.fb.fa.f9.20. MCHK exc_addr 00000000.00001484 biu_stat 00000000.000022d8 dc_stat 00000000.00000007 fill_adr 00000001.f0080050 fill_syn 00000000.00000000 DataExp aaaaaaaa.aaaaaaaa DataRec aaaaaaaa.aaaaaaaa MCRstat 11111111.808011c0 bnkSize 00000300.00000c01 memSize 000000c0.000000c0 SROM> While this can be useful because it gets me to the SROM> prompt, I can't find anything in the manual which helps me diagnose what might be causing this. The meaning of the contents of biu_stat might be a useful start. The 600 machines have a socketed 27C512 EPROM. I assume this must be the SROM (although I can't see what is serial about it) as the machines fail to update the diagnostic LEDs or write to the mini console if it is removed. I dumped the two EPROMs and compared them and they are identical. However, I can't see any ASCII strings in them. Perhaps the bits are not used in the standard order? The manual suggests that there are 8 different 8KB SROM images present and those other than the "standard" one may be used for testing and diagnostics by setting jumpers. Unfortunatly, there is no further information about these images. The manual hints that the System ROM (SYSROM) (actually an FEPROM) is located at 1 E000 0000 to 1 E003 FFFF, however, looking at the beginning of this area with ei suggests it is in fact the IOROM (also an FEPROM). Hunting around some more, it seems that setting bit 9 of the System Support Register at 1 E004 0100 brings in the SYSROM instead (although the manual suggests bit 7 is also involved which seems unlikely as this bit is one of the diagnostic LEDs). The format of the headers in the SYSROM and IOROM do not exactly match the format given in the manual but they are "close". I wonder if this might be my problem or if the manual is incorrect. If anyone else has a 3000 600, could they take a peek at their SYSROM and maybe we could compare notes? It may be possible to map the SYSROM from a running operating system but as none of my 3000 machines run right now, I am not in a position to try this myself. Regards, Peter Coghlan.