2022-12-07 07:02:29 +00:00
|
|
|
|
NEW
|
|
|
|
|
AUTO 3,1
|
|
|
|
|
*--------------------------------------
|
2023-01-06 22:07:00 +00:00
|
|
|
|
SCOPE.New >INCW.G CC.ScopeID
|
|
|
|
|
|
|
|
|
|
lda ScopePtr
|
|
|
|
|
clc
|
|
|
|
|
adc #SCOPE
|
2022-12-07 07:02:29 +00:00
|
|
|
|
bcs .9
|
|
|
|
|
|
2023-01-06 22:07:00 +00:00
|
|
|
|
sta ScopePtr
|
2022-12-07 07:02:29 +00:00
|
|
|
|
|
2023-01-06 22:07:00 +00:00
|
|
|
|
ldy #CC.ScopeID+3
|
2022-12-07 07:02:29 +00:00
|
|
|
|
|
2023-01-06 22:07:00 +00:00
|
|
|
|
.1 lda (pData),y
|
|
|
|
|
pha
|
|
|
|
|
dey
|
|
|
|
|
bpl .1
|
2022-12-07 07:02:29 +00:00
|
|
|
|
|
2023-01-06 14:02:35 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-12-07 07:02:29 +00:00
|
|
|
|
dec bLocalScope
|
2022-12-23 16:50:50 +00:00
|
|
|
|
|
2023-01-06 14:02:35 +00:00
|
|
|
|
lda #'F'
|
|
|
|
|
jsr SYM.LookupLabelA
|
|
|
|
|
bcs .99
|
|
|
|
|
|
|
|
|
|
txa
|
|
|
|
|
|
|
|
|
|
jsr CODE.AddLocal
|
|
|
|
|
bcs .99
|
|
|
|
|
|
2022-12-13 06:55:13 +00:00
|
|
|
|
.DO _DBG_SCOPE=1
|
|
|
|
|
>PUSHW L.MSG.DEBUG.SCIN
|
|
|
|
|
jsr SCOPE.Push
|
2022-12-30 16:29:57 +00:00
|
|
|
|
|
2023-01-06 14:02:35 +00:00
|
|
|
|
lda ScopePtr
|
2023-01-06 22:07:00 +00:00
|
|
|
|
lsr
|
2022-12-30 16:29:57 +00:00
|
|
|
|
lsr
|
|
|
|
|
>PUSHA
|
|
|
|
|
|
2023-01-06 14:02:35 +00:00
|
|
|
|
>PUSHB.G CC.LocalPtr
|
2023-01-06 22:07:00 +00:00
|
|
|
|
>PUSHB.G CC.FrameSize
|
2022-12-30 16:29:57 +00:00
|
|
|
|
>PUSHBI 5
|
2022-12-13 06:55:13 +00:00
|
|
|
|
>SYSCALL PrintF
|
2023-01-06 14:02:35 +00:00
|
|
|
|
>DEBUG
|
2022-12-13 06:55:13 +00:00
|
|
|
|
.FIN
|
|
|
|
|
|
2022-12-07 07:02:29 +00:00
|
|
|
|
clc
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
.9 lda #E.OOH
|
|
|
|
|
sec
|
2023-01-06 14:02:35 +00:00
|
|
|
|
.99
|
|
|
|
|
SCOPE.New.RTS rts
|
2022-12-07 07:02:29 +00:00
|
|
|
|
*--------------------------------------
|
2023-01-06 14:02:35 +00:00
|
|
|
|
SCOPE.Close lda #'F' define FRAME SIZE
|
|
|
|
|
jsr SYM.NewLabelA
|
|
|
|
|
bcs SCOPE.New.RTS
|
|
|
|
|
|
2023-01-06 22:07:00 +00:00
|
|
|
|
>LDA.G CC.FrameSize
|
2023-01-06 14:02:35 +00:00
|
|
|
|
jsr CODE.RemLocal
|
|
|
|
|
bcs SCOPE.New.RTS
|
|
|
|
|
|
|
|
|
|
.DO _DBG_SCOPE=1
|
2023-01-06 22:07:00 +00:00
|
|
|
|
>PUSHW L.MSG.DEBUG.SCOUT
|
|
|
|
|
jsr SCOPE.Push
|
|
|
|
|
lda ScopePtr
|
|
|
|
|
lsr
|
|
|
|
|
lsr
|
|
|
|
|
>PUSHA
|
|
|
|
|
|
|
|
|
|
>PUSHB.G CC.LocalPtr
|
|
|
|
|
>PUSHB.G CC.FrameSize
|
|
|
|
|
>PUSHBI 5
|
|
|
|
|
>SYSCALL PrintF
|
2022-12-13 06:55:13 +00:00
|
|
|
|
.FIN
|
|
|
|
|
|
2023-01-06 22:07:00 +00:00
|
|
|
|
lda ScopePtr
|
2022-12-07 07:02:29 +00:00
|
|
|
|
beq *
|
|
|
|
|
|
2023-01-06 22:07:00 +00:00
|
|
|
|
sec
|
|
|
|
|
sbc #SCOPE
|
|
|
|
|
sta ScopePtr
|
2022-12-07 07:02:29 +00:00
|
|
|
|
|
|
|
|
|
inc bLocalScope
|
|
|
|
|
|
2022-12-13 06:55:13 +00:00
|
|
|
|
.DO _DBG_SCOPE=1
|
2023-01-06 22:07:00 +00:00
|
|
|
|
>PUSHW L.MSG.DEBUG.SC
|
|
|
|
|
jsr SCOPE.Push
|
|
|
|
|
|
|
|
|
|
lda ScopePtr
|
|
|
|
|
lsr
|
|
|
|
|
lsr
|
|
|
|
|
>PUSHA
|
|
|
|
|
|
|
|
|
|
>PUSHB.G CC.LocalPtr
|
|
|
|
|
>PUSHB.G CC.FrameSize
|
|
|
|
|
>PUSHBI 5
|
|
|
|
|
>SYSCALL PrintF
|
2023-01-06 14:02:35 +00:00
|
|
|
|
>DEBUG
|
2022-12-13 06:55:13 +00:00
|
|
|
|
.FIN
|
|
|
|
|
|
|
|
|
|
clc
|
|
|
|
|
|
|
|
|
|
.99 rts
|
2022-12-07 07:02:29 +00:00
|
|
|
|
*--------------------------------------
|
2023-01-06 14:02:35 +00:00
|
|
|
|
SCOPE.Push ldy ScopePtr
|
2022-12-07 07:02:29 +00:00
|
|
|
|
|
2023-01-06 22:07:00 +00:00
|
|
|
|
SCOPE.PushY iny #SCOPE.ID+1
|
|
|
|
|
lda (ScopeStk),y
|
2022-12-07 07:02:29 +00:00
|
|
|
|
>PUSHA
|
2023-01-06 22:07:00 +00:00
|
|
|
|
dey #SCOPE.ID
|
|
|
|
|
lda (ScopeStk),y
|
2022-12-07 07:02:29 +00:00
|
|
|
|
>PUSHA
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
MAN
|
|
|
|
|
SAVE usr/src/bin/cc.s.scope
|
|
|
|
|
LOAD usr/src/bin/cc.s
|
|
|
|
|
ASM
|