Viking QTO SCSI controller for QBUS This board is a Viking QTO SCSI controller board for the QBUS. The board has an onboard Z80 CPU, a Am33C93 SCSI interface circuit two Integrated Device Technology FIFO chips, a DUAL UART and various interface chips and memories. The board come in several variants for either disks or tapes or a combination of both. Essentially these are all the same board using the same firmware but the difference is the contents of the removable PAL (has been replaced with a GAL16V8 on this board). I did try to find the company that once upon a time made the card but it was quite dysfunctional at this time. There web page stated just it not operating anymore. However I managed to get a mail to some person close to the company but unfortunately they could not help out. Viking QT0 SCSI board QBUS The manual lists the various models and lists jumper settings used. But the the method on how to reconfigure the board into something else is not mentioned. I managed to trace the connections from the socketed PAL to other components and got to the conclusion that the PAL is simply an address decoder with to output enable signals. Either enable disk or tape. As it happened after posting about my troubles with the card in a vintage computer mailing list I received a mail with the full contents of the replacement chip. This are the equations used ==== P16V8C Programmed Logic ==== CsrIsTape = !( A13 & !A12 & !A11 & !A10 & !A09 & A08 & !A07 & A06 & !A05 & !A04 & !A03 & A02 & Jumper3 & Jumper4 # A13 & !A12 & !A11 & !A10 & !A09 & A08 & !A07 & !A06 & !A05 & !A04 & !A03 & A02 & !Jumper3 & Jumper4 # A13 & !A12 & !A11 & !A10 & !A09 & A08 & !A07 & !A06 & A05 & !A04 & !A03 & A02 & Jumper3 & !Jumper4 # A13 & A12 & A11 & !A10 & !A09 & A08 & !A07 & A06 & !A05 & # !A04 & !A03 & !A02 & !Jumper3 & !Jumper4 ); CsrIsTape.OE = (1); CsrIsDisk = !( A13 & !A12 & !A11 & !A10 & !A09 & !A08 & A07 & A06 & A05 & A04 & A03 & A02 & Jumper1 & Jumper2 # A13 & !A12 & !A11 & !A10 & !A09 & !A08 & A07 & A06 & !A05 & # A04 & A03 & A02 & !Jumper1 & Jumper2 # A13 & !A12 & !A11 & !A10 & !A09 & !A08 & A07 & A06 & A05 & # !A04 & A03 & A02 & Jumper1 & !Jumper2 # A13 & A12 & !A11 & A10 & !A09 & !A08 & !A07 & A06 & A05 & # !A04 & A03 & !A02 & !Jumper1 & !Jumper2 ); CsrIsDisk.OE = (1); . ==== P16V8C Chip Diagram ==== P16V8C +---------\ /---------+ | \ / | ----- | Jumper2 | 1 20 | Vcc | | Jumper3 | 2 19 | !CsrIsDisk | | Jumper4 | 3 18 | !Jumper1 | | A13 | 4 17 | !A02 | | A12 | 5 16 | !A03 | | A11 | 6 15 | !A04 | | A10 | 7 14 | !A05 | | A09 | 8 13 | !A06 | | A08 | 9 12 | !CsrIsTape | | GND | 10 11 | A07 | | | | | | `---------------------------' Here is the JED-file to use to program the GAL. Now unfortunately this is not enough to make it a disk controller instead of tape controller (which was I wanted). On board there is a small EEPROM that store some kind of secret information that the firmware uses to configure the board. My first trial to disassemble the binary code of the firmware failed to solve the problem, but again the help from people on the net rescued me from getting yet more gray hairs. This board has a a firmware utility that let it to be configured using a serial port which connects to two unused pins of the 50 pin SCSI connector. All this is well described in the manual. What is not described is to change the configuration of the board from disk to tape or vice versa. To be able to do that one has to enter a secret three character code at the firmware utility prompt: Z $ or zed carriage-return dollar Then you shall be greeted by a "A=" prompt where you can enter different codes. for QDT/UDT (disk and tape) A=4080 B=1181 Model=QDT/UDT s/n=xxxx for QTO/UTO (tape only) A=0 B=1181 Model=QTO/UTO S/N=xxxx for QDO/UDO (disk only) A=4080 B=0 Model=QDO/UDO S/N=xxxx for QDD/UDD (diskA diskB) A=4080 B=4080 Model=QDD/UDD S/N=xxxx for QDA/UDA (disk only with bootstrap) A=4080 B=82 Model=QDA/UDA S/N=xxxx This worked fine for me and but I only tested to reconfigure it as a QDT. My firmware is a version 4.0. But there are also a 4.4 firmware as well. I haven't tested that one though.