Name LED_CONTROL ; PartNo 00 ; Date 9/8/2022 ; Revision 01 ; Designer Engineer ; Company Terry Smedley ; Assembly None ; Location ; Device g16v8a; /* *************** INPUT PINS *********************/ /* UNBUFFERED RAW BUS SIGNALS */ PIN 1 = M1 ; /* */ PIN 2 = !A1 ; /* */ PIN 3 = !A2 ; /* */ PIN 4 = !A3 ; /* */ PIN 5 = !A4 ; /* */ PIN 6 = !A5 ; /* */ PIN 7 = !A6 ; /* */ PIN 8 = !A7 ; /* */ PIN 9 = IORD ; /* */ PIN 11 = IOWR ; /* */ /* *************** OUTPUT PINS *********************/ PIN 19 = !LED0 ; /* */ PIN 18 = !LED1 ; /* */ PIN 17 = !LED2 ; /* */ PIN 16 = !LED3 ; /* */ PIN 15 = !LED4 ; /* */ PIN 14 = !LED5 ; /* */ PIN 13 = !LED6 ; /* */ PIN 12 = !LED7 ; /* */ /* ********* INTERMEDIATE VALUES *********/ /* DECODE RAW PORT ADDRESS RANGES */ 170Q = !A7 & A6 & A5 & A4 & A3 & !A2; /* DISK CONTROLLER @ 170Q-173Q */ 174Q = !A7 & A6 & A5 & A4 & A3 & A2 & !A1; /* DISK CONTROLLER @ 174Q-175Q */ 200Q = A7 & !A6 & !A5 & !A4 & !A3 & !A2; /* APU @ 200Q-203Q */ 260Q = A7 & !A6 & A5 & A4 & !A3 & !A2; /* VDIP1 @ 260Q-263Q */ 270Q = A7 & !A6 & A5 & A4 & A3 & !A2 & !A1; /* HA-8-3 VDP @ 270Q-271Q */ 272Q = A7 & !A6 & A5 & A4 & A3 & !A2 & A1; /* HA-8-3 PSG @ 272Q-273Q */ 274Q = A7 & !A6 & A5 & A4 & A3 & A2 & !A1; /* DISK CONTROLLER @ 274Q-275Q */ 320Q = A7 & A6 & !A5 & A4 & !A3 & !A2 & !A1; /* 8250 SERIAL PORT OR Z89-11 PARALLEL PORT @ 320Q-321Q */ 330Q = A7 & A6 & !A5 & A4 & A3 & !A2 & !A1; /* 8250 SERIAL PORT OR VDIP1 @ 330Q-331Q */ 340Q = A7 & A6 & A5 & !A4 & !A3 & !A2 & !A1; /* 8250 SERIAL PORT @ 340Q-341Q */ 350Q = A7 & A6 & A5 & !A4 & A3 & !A2 & !A1; /* 8250 SERIAL PORT @ 350Q-351Q */ 364Q = A7 & A6 & A5 & A4 & !A3 & A2 & !A1; /* HA-8-3 APU @ 364Q-365Q */ 366Q = A7 & A6 & A5 & A4 & !A3 & A2 & A1; /* HA-8-3 ADC @ 366Q-367Q */ 040Q = !A7 & !A6 & A5 & !A4 & !A3 & !A2 & !A1; /* SS1 ADC @ 040Q-041Q */ 064Q = !A7 & !A6 & A5 & A4 & !A3 & A2 & !A1; /* SS1 APU @ 064Q-065Q */ 014Q = !A7 & !A6 & !A5 & !A4 & A3 & A2; /* 8255 @ 014Q-017Q */ 020Q = !A7 & !A6 & !A5 & A4 & !A3 & !A2; /* 8255 @ 020Q-023Q */ 024Q = !A7 & !A6 & !A5 & A4 & !A3 & A2; /* SS1 DACS @ 024Q, 026Q */ 030Q = !A7 & !A6 & !A5 & A4 & A3 & !A2; /* 8255/PCA9665 @ 030Q-033Q */ 034Q = !A7 & !A6 & !A5 & A4 & A3 & A2; /* 8255 @ 034Q-037Q */ 054Q = !A7 & !A6 & A5 & !A4 & A3 & A2; /* 8255 @ 054Q-057Q */ /* DECODE I/O CONTROL SIGNALS */ IORW = IOWR # IORD; /* READ/WRITE */ IOACT = IORW & !M1; /* MASK WITH !M1 FOR CLEAN I/O */ IORDA = IORD & !M1; /* READ ONLY */ IOWRA = IOWR & !M1; /* WRITE ONLY */ /* ASSIGN DEVICE NAMES TO PORT ACTIVITY */ H37 = 170Q & IOACT; /* H37 DISK CONTROLLER R/W */ H17 = 174Q & IOACT; /* H17 DISK CONTROLLER R/W */ H67 = 274Q & IOACT; /* H67 DISK CONTROLLER R/W */ APUX = 200Q & IOACT; /* AM9511 STANDALONE R/W */ USB1 = 260Q & IOACT; /* OLD USB VDIP1 R/W */ VDP = 270Q & IOWRA; /* TMS99X8 VDP WRITE */ PSG = 272Q & IOWRA; /* AY-3-8910 PSG WRITE */ PAR1 = 320Q & IOWRA; /* SS1 PARALLEL PORT WRITE */ SER1 = 320Q & IOACT; /* H8-4 SERIAL PORT R/W */ SER2 = 330Q & IOACT; /* H8-4 SERIAL PORT R/W */ USB2 = 330Q & IOACT; /* NEW USB VDIP1 R/W */ SER3 = 340Q & IOACT; /* H8-4 OR DUART SERIAL PORT R/W */ CON = 350Q & IOWRA; /* H8-4 OR DUART SERIAL PORT WRITE */ HAAPU = 364Q & IOACT; /* HA-8-3 APU R/W */ HAADC = 366Q & IOACT; /* HA-8-3 ADC R/W */ SSADC = 040Q & IOACT; /* SS1 ADC R/W */ SSAPU = 064Q & IOACT; /* SS1 APU R/W */ SSDAC = 024Q & IOACT; /* SS1 DACS R/W */ I2CBB = 034Q & IOACT; /* I2C BITBANG R/W */ I2CPCA = 030Q & IOACT; /* I2C PCA9665 R/W */ PPIO1 = 014Q & IOACT; /* PPIO 1 R/W */ PPIO2 = 020Q & IOACT; /* PPIO 2 R/W */ PPIO3 = 054Q & IOACT; /* PPIO 3 R/W */ /* COMBINE DEVICES TO LOGICAL ACTIVITY GROUPINGS */ SER = SER3 # CON; /* SERIAL = SER3 (340Q) + CONSOLE (350Q) */ USB = USB1 # USB2; /* USB = USB1 (260Q) + USB2 (330Q) */ APU = SSAPU # HAAPU # APUX; /* APU = SS1 (064Q) + HA83 (364Q) + AM9511 (200Q) */ ADC = SSADC # HAADC; /* ADC = SS1 (040Q) + HA83 (366Q) */ HA83 = VDP # PSG # HAAPU # HAADC; /* ANY I/O ON HA83 */ SS1 = SSAPU # SSADC # SSDAC; /* ANY I/O ON SS1 */ I2C = I2CBB # I2CPCA; /* I2C = BITBANG (034Q) + PCA9665 (030Q) */ PPIO = PPIO1 # PPIO2 # PPIO3; /* 8255 PPIO ACTIVITY */ /* FINALLY! ASSIGN DEVICES/GROUPS TO LEDS */ /* LED0-3 ARE FOUR LEDS ON NEW CASE (TOP TO BOTTOM) */ LED0 = USB # PPIO; /* USB ACTIVITY AND PPIO */ LED1 = SER # PAR1 # I2C; /* I/O DEVICES - PRINTER, CONSOLE, I2C */ LED2 = HA83; /* ANY HA-8-3, POLLING MAKES THIS CONTINUOUS */ LED3 = SS1; /* ANY HA-8-2, POLLING MAKES THIS CONTINUOUS */ /* LED4 IS "FIFTH LED" ON HEATH OR COLLADO FRONT PANELS */ LED4 = H17 # H37 # H67; /* ANY DISK ACCESS */ /* LED5-7 ARE NOT IMPLEMENTED IN HARDWARE AT THIS TIME */ LED5 = H17; /* JUST H17 */ LED6 = APU; /* APU (HA-8-2, HA-8-3, STANDALONE APU) */ LED7 = VDP # SSDAC; /* I/O DEVICES - VDP (HA-8-3), DAC (HA-8-2) */