Written by Herb Johnson and Dwight Elvey, last edit Feb 10 2008. My thanks to Dwight Elvey for his programs and his work to re-engineer, restore and program Dr. John Torode's & Digital Systems Inc.'s FDC-1 controller. The description of Dr. Torode's floppy controller is on this linked page.
The following are microcode instructions from the DS microcontroller. These were named by Dwight Elvey using the signals named on sheet #1 of the DS FDC-1. A descripion of the microcode instruction set is on this linked page. I've slightly edited the file Dwight sent me as below.- Herb Johnson
Format Code 00 47 JN(READY) wait ready 01 00 02 09 JN(WR) wait WR 03 00 04 F2 SETCNTC sync data 05 F7 SETWG 06 F4 CLRBRDY 07 C4 CLRDAT 08 C1 DCRDAT =FF 09 06 JN(BRDY) cycle byte 0A 09 0B F4 CLRBRDY 0C 0E J(INDX) wait for index 0D 09 0E 06 JN(BRDY) cycle byte 0F 0E 10 F4 CLRBRDY 11 4E JN(INDX) index past 12 0E 13 80 LDCNT 14 13 19 more =FF 15 04 JN(CNT) 16 15 17 C4 CLRDAT =00 18 46 J(BRDY) wait cycle 19 18 1A 80 LDCNT 1B 02 1C 04 JN(CNT) 3 more =00 1D 1C 1E FD DMARD get FC index AM 1F 4A J(MAC) 20 1F 21 0A JN(MAC) fetched 22 21 23 C7 INRDMAD set address 24 F5 SERCLK0 special clock mark 25 C0 SET1X 26 46 J(BRDY) 27 26 28 F7 SETWG 29 C4 CLRDAT 2A C1 DCRDAT 2B 80 LDCNT 2C 0C 2D 46 J(BRDY) 2E 9F 2F 04 JN(CNT) 30 2F 31 46 J(BRDY) 32 31 33 C4 CLRDAT 34 06 JN(BRDY) 35 34 36 F4 CLRBRDY 37 80 LDCNT 38 02 39 04 JN(CNT) 3A 39 3B FD RMARD 3C 4A J(MAC) 3D 3C 3E 0A JN(MAC) 3F 3E 40 C7 INRDMAD 41 F5 SETCLK0 42 46 J(BRDY) 43 42 44 F7 SETWG 45 F0 CLRCRC 46 80 LDCNT 47 03 48 FD DMARD 49 4A J(MAC) 4A 49 4B 0A JN(MAC) 4C 4B 4D C7 INRDMAD 4E 46 J(BRDY) 4F 9F 50 06 JN(BRDY) 51 50 52 F4 CLRBRDY 53 04 JN(CNT) 54 48 55 C4 CLRDAT 56 C1 DCRDAT 57 06 JN(BRDY) 58 57 59 F1 WRCRC 5A 46 J(BRDY) 5B 5A 5C 06 JN(BRDY) 5D 5C 5E F0 CLRCRC 5F 46 J(BRDY) 60 5F 61 80 LDCNT 62 04 63 04 JN(CNT) 64 63 65 C4 CLRDAT 66 46 J(BRDY) 67 66 68 80 LDCNT 69 02 6A 04 JN(CNT) 6B 6A 6C FD DMARD 6D 4A J(MAC) 6E 6D 6F 0A JN(MAC) 70 6F 71 C7 INRDMAD 72 F5 SETCLK0 73 46 JN(READY) 74 73 75 F7 SETWG 76 F0 CLRCRC 77 80 LDCNT 78 7F 79 FD DMARD 7A 4A J(MAC) 7B 7A 7C 0A JN(MAC) 7D 7C 7E C7 INRDMAD 7F 46 J(BRDY) 80 9F 81 06 JN(BRDY 82 81 83 F4 CLRBRDY 84 04 JN(CNT) 85 79 86 C4 CLRDAT 87 C1 DCRDAT 88 06 JN(BRDY) 89 88 8A F1 WRCRC 8B 46 J(BRDY) 8C 8B 8D 06 JN(BRDY) 8E 8D 8F F0 CLRCRC 90 F4 CLRBRDY 91 FD DMARD 92 4A J(MAC) 93 92 94 0A JN(MAC) 95 94 96 C7 INRDMAD 97 01 JN(EQ) 98 29 99 4E JN(INDX) 9A 99 9B F6 CLRWG 9C FC SETIOF 9D 40 JMP 9E 00 9F FA SETDCE A0 F9 SETTER A1 40 JMP A2 9B A3 00 A4 00 A5 00 ;and zeros down to so on to FF
Contact information:
Copyright © 2008 Herb Johnson from documents (C) Dwight Elvey