URL
https://opencores.org/ocsvn/System09/System09/trunk
Subversion Repositories System09
[/] [System09/] [rev_86/] [src/] [Flex9/] [f9-monio.asm] - Rev 112
Compare with Previous | Blame | View Log
*
** TERMINAL AND PRINTER DRIVERS
** SYS09BUG - Spartan 3 Starter Board
*
** FLEX DRIVER MEMORY MAP:
** C700 - C83F PRINTER SPOOLER
** CCC0 - CCF7 PRINTER DRIVERS
** D370 - D3FF CONSOLE DRIVERS
** DE00 - DFAF DISK DRIVERS
*
*
** INTERRUPT VECTORS
*
IRQVEC EQU MONRAM+$08
SWIVEC EQU MONRAM+$02 SWI3 VECTOR
*
** PRINTER DRIVERS
*
ORG $CCC0
PINIT JMP DUMRTS INITIATE PRINTER
ORG $CCD8
PCHK JMP DUMRTS CHECK IF PRINTER READY
ORG $CCE4
POUT JMP DUMRTS OUTPUT CHR. TO PRINTER
ORG $CCF8
ZCCF8 FCB $01,$00,$00,$00
ZCCFC FCB $00,$00,$00,$00
*
** CONSOLE DRIVER PATCHES:
*
ORG $D370
IHND EQU * INTERRUPT HANDLER
TMON EQU * TIMER ON
TMOFF EQU * TIMER OFF
TMINT EQU * TIMER INITIALIZATION
DUMRTS EQU *
RTS
*
** SBUG MONITOR I/O CALLS
*
TERINZ JMP DUMRTS INITIATE ACIA
INCHNE JMP [MONROM+$04] INPUT WITHOUT ECHO
MONITR JMP [MONROM+$00]
INCHEK JMP [MONROM+$08] CHECK FOR TERMINAL ENTRY
OUTEEE JMP [MONROM+$0A] OUPUT CHARACTER
INEEE JMP [MONROM+$06] INPUT WITH ECHO
*
** AUTO BLOCK FDBS
*
ORG $D3E5
ZD3E5 FDB INCHNE INPUT - NO ECHO
IHNDVC FDB IHND IRQ INTERRUPT HANDLER
SWIVVC FDB SWIVEC SWI3 VECTOR LOCATION
IRQVVC FDB IRQVEC IRQ VECTOR LOCATION
TOFVEC FDB TMOFF TIMER OFF ROUTINE
TONVEC FDB TMON TIMER ON ROUTINE
TINVEC FDB TMINT TIMER INITIALIZE ROUTINE
MONVEC FDB MONITR MONITOR RETURN ADDRESS
TERVEC FDB TERINZ TERMINAL INITIATION
STAVEC FDB INCHEK CHECK TERMINAL STATUS
OUTVEC FDB OUTEEE TERMINAL CHAR OUTPUT
INVEC FDB INEEE TERMINAL INPUT CHARACTER
ZD3FD JMP ZCA00
END