1
0
mirror of https://github.com/PDP-10/its.git synced 2026-02-13 19:44:00 +00:00

Add $^N to RUG.

$^N sets a temporary breakpoint at the next instruction and proceeds.
When the breakpoint is hit, it's removed.  The standard breakpoint
table is used.
This commit is contained in:
Lars Brinkhoff
2019-10-14 09:38:34 +02:00
parent 1a68cec328
commit 4a2032b1b9

View File

@@ -971,7 +971,10 @@ PP=.-2
JMP PR1
;B HANDLER - SET AND REMOVE BREAKPOINTS
O.BKPT: MOV #-1,A
O.BKPT: JSR PC,BKPT
JMP O.DCD ;RETURN
BKPT: MOV #-1,A
TST D
BEQ O.ERR1 ;FOR NOW THAT COMMAND IS MEANINGLESS
ASR F ;GET ONE BIT TO CARRY
@@ -992,7 +995,7 @@ O.SET1: MOV F,-(E) ;SET BREAKPOINT
BEQ O.DCDB
MOVB #'I,O.BPM+1-O.ADR1(E) ;SET MAP TO I SPACE
.ENDC
O.DCDB: JMP O.DCD ;RETURN
O.DCDB: RTS PC
;$$B HANDLER DELETE BKPT AT 1500 BY 1500$$B, $$B REMOVES ALL
DELT: CLR D
@@ -1017,6 +1020,17 @@ DELDON: RTS PC
DELTB: JSR PC,DELT1
BR O.DCDB
O.ERR1: JMP O.ERR
; SINGLE STEP USING TEMPORARY BREAKPOINT
O.NEXT: MOV UPC,F
ADD LENGTH,F ;COMPUTE ADDRESS
TST (F)+ ; FOR NEXT INSTRUCTION
MOV F,NEXT
MOV #1,D
JSR PC,BKPT ;SET TEMPORARY BREAKPOINT AT F
CLR D
JMP O.PROC ;PROCEED
NEXT: 0 ;SAVED ADDRESS
; SEARCHES - $MSK HAS THE MASK
; $MSK+2 HAS THE FWA
@@ -1372,10 +1386,22 @@ O.B2:
MOV F,UPC ;WANT DECREMENTED PC
MOVB E,O.P ;ALLOW PROCEED
CMP F,NEXT
BEQ O.B6 ;TEMPORARY $^N BREAKPOINT
DEC O.CT(E)
BLE O.B5
JMP PR0
O.B6: MOV #1,D ;REMOVE TEMPORARY BREAKPOINT
JSR PC,DELT1
JSR PC,CRLF
JSR 5,TYPE
.ASCIZ /SN;/
.EVEN
MOV NEXT,A
CLR NEXT
BR O.B3
O.B5: MOV #1,O.CT(E) ;RESET COUNT TO 1
MOVB E,A
ADD #140,A
@@ -1386,10 +1412,10 @@ O.B5: MOV #1,O.CT(E) ;RESET COUNT TO 1
BPTNM==.+1
.ASCIZ /B ;/
.EVEN
MOV #1,BYTWRD ;SET WORD MODE
MOVB O.P,E
MOV O.ADR1(E),A ;GET ADDRESS OF BREAK
O.B3: MOV A,CURADR
O.B3: MOV #1,BYTWRD ;SET WORD MODE
MOV A,CURADR
JSR PC,GETWRD
MOV CURADR,A ;ARG FOR SYMBOL IN A
JSR 5,SYMBOL ;LOOK UP SYMBOL, TYPE IT AND ANY OFFSET
@@ -4060,6 +4086,7 @@ O.LGDR:
O.EFF ; E SEARCH EFFECTIVE ADDRESS
O.BKPT ; B BREAKPOINTS
O.PROC ; P PROCEED
O.NEXT ; $^N NEXT
SETCMD
SETSMD
SETIMD
@@ -4129,6 +4156,7 @@ ALT: .BYTE 'G ; G
.BYTE 'E ; E
.BYTE 'B ; B
.BYTE 'P ; P
.BYTE 16 ; ^N
.BYTE 'C
.BYTE 'S
.BYTE 'I