Cleaned up IRQ handling, added support for DL11 overrun errors, and fixed buffered message output (although a better solution is needed longer term)

This commit is contained in:
Jeff Parsons 2016-11-26 11:38:03 -08:00 committed by Jeff Parsons
commit 47a65f043f
13 changed files with 651 additions and 591 deletions

View file

@ -3,13 +3,17 @@
; REBASE HIGHER LINK/BOT:140000
; WANT PERFORMANCE COUNTER - CLOCK TICKS TO DO SOMETHING?
PSW = 177776
DL11XCSR = 177564
DL11VEC = 64
KW11LKS = 177546
KW11VEC = 100
DL11RCSR = 177560
DL11RBUF = 177562
DL11XCSR = 177564
DL11XBUF = 177566
DL11VEC = 64
PSW = 177776
.ASECT
.=140000
START: RESET
@ -46,7 +50,7 @@ CLKAST:
ONECHR:
TSTB @#DL11XCSR
BPL ONECHR
MOVB R0,@#177566
MOVB R0,@#DL11XBUF
RTS PC
PRTPTR: .WORD 0
@ -63,10 +67,10 @@ PRINT:
PRTAST:
TSTB @PRTPTR
BEQ 2$
MOVB @PRTPTR,@#177566
MOVB @PRTPTR,@#DL11XBUF
INC PRTPTR
RTI
2$: CLRB @#177564
2$: CLRB @#DL11XCSR
RTI
BUFFER: .WORD 0 ; INPUT BUFFER POINTER
@ -77,12 +81,12 @@ INPUT:
CLR LENGTH
MOV #INPAST,@#60
MOV #200,@#62
BISB #100,@#177560
BISB #100,@#DL11RCSR
RTS PC
INPAST:
MOV R0,-(SP)
MOVB @#177562,R0
MOVB @#DL11RBUF,R0
CMPB R0,#15
BEQ 7$ ; CARRIAGE RETURN
CMPB R0,#127.
@ -132,7 +136,7 @@ CMD:
MOV R4,-(SP)
MOV #EOL,R0
JSR PC,PRINT
1$: BITB #100,@#177564
1$: BITB #100,@#DL11XCSR
BNE 1$
CLR R4
MOV #CMDLST,R3 ; CMD LIST