.slist .xlist ; I/O PORTS ; FPYBCA = 0E0H ;FLOPPY STATUS PORT FPYBWR = 0E1H ;FLOPPY DATA PORT DSPBCA = 0E2H ;DISPLAY BASE & CURRENT ADDRESS DSPBWR = 0E3H ;DISPLAY BASE & WORD COUNT STDBCA = 0E4H ;STD BUS BASE & CURRENT ADDRESS STDBWR = 0E5H ;STD BUS BASE & WORD COUNT SIOBCA = 0E6H ;SIO BASE & CURRENT ADDRESS SIOBWR = 0E7H ;SIO BASE & WORD COUNT DMACSR = 0E8H ;DMA COMMAND/STATUS REGISTER DMAWRR = 0E9H ;DMA WRITE REQUEST REGISTER DMAWSM = 0EAH ;DMA WRITE SINGLE MASK BIT DMAWMR = 0EBH ;DMA WRITE MODE REGISTER DMACBP = 0ECH ;DMA CLEAR BYTE PNTR FLIP-FLOP DMATMP = 0EDH ;DMA TEMP REG & MASTER CLEAR SDSPY = 0EEH ;DISPLAY COMMAND/STATUS DMAWAM = 0EFH ;DMA WRITE ALL MASK REG BITS DCOMM = 0F0H ;COMM PORT DATA SCOMM = 0F1H ;COMM PORT STATUS DPRTR = 0F2H ;PRINTER PORT DATA SPRTR = 0F3H ;PRINTER PORT STATUS BAUDC = 0F4H ;BAUD TIMER FOR COMM PORT BAUDP = 0F5H ;BAUD TIMER FOR PRINTER PORT DSPINT = 0F6H ;DISPLAY INTERRUPT (60HZ) FPYINT = 0F7H ;FLOPPY INTERRUPT TIMER DPIOA = 0F8H ;PIO PORT A DATA ;A0-7 = LATCH DATA OUT ; L0 = MOTOR ON ; L1 = GRAPHICS ENABLE ; L2 = EPROM ENABLE ; L3 7 DISPLAY BRTNS. ; A0-7 = 8910 DATA I/O ; A0-3 = 5832 D0-3 I/O ; A4-7 = 5832 A0-3 OUT ; A0-3 = 5101 D0-3 I/O ; A4-7 = 5101 A0-3 OUT DPIOB = 0FAH ;PIO PORT B DATA ; B0-1 = 5101 A4-5 ; B2-4 = OPERATION SELECT ; 0 = 8910 ADDR LOAD ; 1 = 8910 DATA LOAD ; 2 = 5832 WRITE ; 3 = 5832 READ ; 4 = 5101 WRITE ; 5 = 5101 READ ; 6 = LATCH LOAD ; 7 = NO-OP ; B5 = /'138 OPERATION STROBE ; B6 = /KEYBOARD DATA IN ; B7 = /KEYBOARD CLOCK OUT SPIOA = 0F9H ;PIO PORT A COMMAND SPIOB = 0FBH ;PIO PORT B COMMAND SFLPY = 0FCH ;FLOPPY COMMAND/STATUS DFLPY = 0FDH ;FLOPPY DATA DDSPY = 0FEH ;DISPLAY DATA DMAP = 0FFH ;RAM VIRTUAL MAP DATA ; ;Z80 - 8086 Screen memory and I/O ports ; .base = 80h ;43210 wbytel = .base+ 10000b ;PIO -> low data, wbyteh = .base+ 00100b ;PIO -> hi data, rword = .base+ 01000b ;AD0-15 -> PIO, pioad = .base+ 01100b ;PIO A side data, pioas = .base+ 01101b ;PIO A side status, piobd = .base+ 01110b ;PIO B side data, piobs = .base+ 01111b ;PIO B side status, run86 = .base+ 11100b ;release 8086 wait, statport= 0b8h rda = 1 ;0 == true, tbe = 2 ;0 == true, inport = 0b9h outport = 0b9h .rlist