2019-11-20 16:37:09 +00:00
|
|
|
|
NEW
|
|
|
|
|
AUTO 3,1
|
|
|
|
|
.LIST OFF
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.Open >STYA ZPPTR2
|
|
|
|
|
lda (ZPPTR2)
|
|
|
|
|
tay
|
|
|
|
|
lda #0
|
|
|
|
|
>SYSCALL getmem
|
|
|
|
|
bcs .99
|
|
|
|
|
|
|
|
|
|
>STYA ZPPTR1
|
|
|
|
|
txa
|
|
|
|
|
>STA.G hDLG
|
|
|
|
|
|
|
|
|
|
ldy #0
|
|
|
|
|
|
|
|
|
|
.1 lda (ZPPTR2),y
|
|
|
|
|
sta (ZPPTR1),y
|
|
|
|
|
iny
|
|
|
|
|
tya
|
|
|
|
|
cmp (ZPPTR2)
|
|
|
|
|
bne .1
|
|
|
|
|
|
|
|
|
|
jsr DLG.SetOrigin
|
|
|
|
|
|
|
|
|
|
sty TmpByte
|
|
|
|
|
|
|
|
|
|
jsr SCRN.GotoXY
|
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Title
|
|
|
|
|
jsr DLG.DrawInvBar
|
|
|
|
|
.99 bcs .9
|
|
|
|
|
|
|
|
|
|
jsr SCRN.LineBufInitNorm
|
|
|
|
|
|
|
|
|
|
jsr DLG.VBarToLineBuf
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.W
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
dec
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
lda #C.SPACE
|
|
|
|
|
.3 jsr SCRN.ToLineBuf
|
|
|
|
|
dex
|
|
|
|
|
bne .3
|
|
|
|
|
|
|
|
|
|
jsr DLG.VBarToLineBuf
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.H
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
dec
|
|
|
|
|
dec
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
.4 phx
|
|
|
|
|
inc TmpByte
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.X
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tax
|
|
|
|
|
ldy TmpByte
|
|
|
|
|
jsr SCRN.GotoXY
|
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
jsr SCRN.LineBufOut
|
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
plx
|
|
|
|
|
dex
|
|
|
|
|
bne .4
|
|
|
|
|
|
|
|
|
|
inc TmpByte
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.X
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
ldy TmpByte
|
|
|
|
|
jsr SCRN.GotoXY
|
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Status
|
|
|
|
|
jsr DLG.DrawInvBar
|
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Ctrls
|
2019-11-25 07:05:07 +00:00
|
|
|
|
|
2019-11-20 16:37:09 +00:00
|
|
|
|
.5 lda (ZPPTR1),y
|
|
|
|
|
beq .8
|
2019-11-25 07:05:07 +00:00
|
|
|
|
|
|
|
|
|
phy
|
|
|
|
|
tya
|
|
|
|
|
jsr DLG.CTRL.Draw
|
|
|
|
|
ply
|
2019-11-20 16:37:09 +00:00
|
|
|
|
bcs .9
|
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
iny
|
2019-11-20 16:37:09 +00:00
|
|
|
|
bra .5
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
.8 ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
jsr DLG.CTRL.Focus
|
|
|
|
|
|
|
|
|
|
clc
|
2019-11-20 16:37:09 +00:00
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2019-11-21 15:59:09 +00:00
|
|
|
|
DLG.Run >SYSCALL getchar
|
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
cmp #3
|
|
|
|
|
beq .8
|
|
|
|
|
|
|
|
|
|
cmp #C.CR
|
|
|
|
|
beq .8
|
|
|
|
|
|
|
|
|
|
cmp #C.TAB
|
2019-11-28 16:50:08 +00:00
|
|
|
|
beq DLG.NextFocus
|
|
|
|
|
pha
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y get actual focused Ctrl
|
|
|
|
|
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
pla
|
|
|
|
|
jsr DLG.CTRL.CharIn
|
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
|
2019-11-28 16:50:08 +00:00
|
|
|
|
bra DLG.Run
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
rts
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
|
|
|
|
.8 clc
|
2019-11-28 16:50:08 +00:00
|
|
|
|
.9 rts
|
2019-11-21 15:59:09 +00:00
|
|
|
|
*--------------------------------------
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.NextFocus ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y get actual focused Ctrl
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
pha save it...
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
.1 inx next one
|
|
|
|
|
|
|
|
|
|
.2 txa
|
|
|
|
|
tay
|
|
|
|
|
lda (ZPPTR1),y Get Ctrl
|
|
|
|
|
bne .3 end of list, get first
|
|
|
|
|
|
|
|
|
|
ldx #S.DLG.Ctrls
|
|
|
|
|
bra .2
|
|
|
|
|
|
|
|
|
|
.3 tay
|
|
|
|
|
lda (ZPPTR1),y Get Ctrl Type
|
|
|
|
|
beq .1 LBL
|
|
|
|
|
|
|
|
|
|
txa
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
sta (ZPPTR1),y
|
|
|
|
|
|
|
|
|
|
pla get old focused
|
|
|
|
|
|
|
|
|
|
phx save new focused
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.Focus
|
2019-11-25 07:05:07 +00:00
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
pla
|
2019-11-28 16:50:08 +00:00
|
|
|
|
jsr DLG.CTRL.Focus
|
|
|
|
|
jmp DLG.Run
|
2019-11-21 15:59:09 +00:00
|
|
|
|
*--------------------------------------
|
2019-11-28 16:50:08 +00:00
|
|
|
|
DLG.Close ldy #S.DLG.Y
|
2019-11-21 15:59:09 +00:00
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
|
2019-11-22 16:02:59 +00:00
|
|
|
|
sta TmpByte
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
2019-11-22 16:02:59 +00:00
|
|
|
|
.1 >LDA.G ScreenY
|
2019-11-21 15:59:09 +00:00
|
|
|
|
clc
|
2019-11-22 14:05:37 +00:00
|
|
|
|
ldy #S.DLG.Y
|
|
|
|
|
adc (ZPPTR1),y
|
|
|
|
|
sta TmpIndex
|
|
|
|
|
|
|
|
|
|
>LDA.G ScreenY+1
|
|
|
|
|
adc #0
|
|
|
|
|
sta TmpIndex+1
|
2019-11-28 16:50:08 +00:00
|
|
|
|
|
|
|
|
|
ldy #S.DLG.H
|
|
|
|
|
lda (ZPPTR1),y
|
2019-11-22 14:05:37 +00:00
|
|
|
|
|
2019-11-28 16:50:08 +00:00
|
|
|
|
jmp SCRN.UpdateMain.1
|
2019-11-21 15:59:09 +00:00
|
|
|
|
*--------------------------------------
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Draw sta TmpByte A=CtrlID
|
|
|
|
|
tay
|
|
|
|
|
lda (ZPPTR1),y Ctrl Definition
|
|
|
|
|
tay
|
|
|
|
|
lda (ZPPTR1),y Ctrl Type
|
|
|
|
|
tax
|
|
|
|
|
jmp (J.DLG.CTRL.Draw,x)
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.CTRL.Draw.LBL
|
|
|
|
|
jsr SCRN.LineBufInitNorm
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoOrg
|
2019-11-20 16:37:09 +00:00
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
ldy TmpByte CtrlID
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
2019-11-21 07:01:46 +00:00
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
2019-11-20 16:37:09 +00:00
|
|
|
|
|
|
|
|
|
.1 lda (ZPPTR1),y
|
|
|
|
|
beq .8
|
|
|
|
|
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
iny
|
|
|
|
|
bra .1
|
|
|
|
|
|
|
|
|
|
.8 jmp SCRN.LineBufOut
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Draw.TB
|
|
|
|
|
jsr SCRN.LineBufInitNorm
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoOrg
|
2019-11-20 16:37:09 +00:00
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
ldy TmpByte
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
2019-11-21 07:01:46 +00:00
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
2019-11-21 07:01:46 +00:00
|
|
|
|
iny
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
2019-11-21 07:01:46 +00:00
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
2019-11-20 16:37:09 +00:00
|
|
|
|
lda (pData),y
|
|
|
|
|
|
|
|
|
|
>SYSCALL getmemptr
|
|
|
|
|
>STYA ZPPTR2
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
lda #C.SPACE
|
|
|
|
|
jsr SCRN.ToLineBuf
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
2019-11-20 16:37:09 +00:00
|
|
|
|
ldy #0
|
|
|
|
|
|
2019-11-21 07:01:46 +00:00
|
|
|
|
.1 lda (ZPPTR2),y
|
2019-11-21 15:59:09 +00:00
|
|
|
|
beq .2
|
2019-11-20 16:37:09 +00:00
|
|
|
|
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
iny
|
|
|
|
|
bra .1
|
|
|
|
|
|
2019-11-21 15:59:09 +00:00
|
|
|
|
.2 tya
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
ldy TmpByte
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
|
2019-11-28 16:50:08 +00:00
|
|
|
|
txa
|
|
|
|
|
sta (ZPPTR1),y CURPOS
|
2019-11-21 15:59:09 +00:00
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
.3 txa
|
2019-11-25 07:05:07 +00:00
|
|
|
|
eor (ZPPTR1),y MAXCHAR
|
2019-11-21 15:59:09 +00:00
|
|
|
|
beq .8
|
|
|
|
|
|
|
|
|
|
lda #C.SPACE
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
inx
|
|
|
|
|
bra .3
|
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
.8 lda #C.SPACE
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr SCRN.ToLineBuf
|
2019-11-21 15:59:09 +00:00
|
|
|
|
|
|
|
|
|
jmp SCRN.LineBufOut
|
2019-11-20 16:37:09 +00:00
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Draw.OL
|
|
|
|
|
jsr SCRN.LineBufInitNorm
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoOrg
|
2019-11-21 15:59:09 +00:00
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
ldy TmpByte
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
|
2019-11-28 16:50:08 +00:00
|
|
|
|
iny
|
2019-11-21 15:59:09 +00:00
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y value
|
|
|
|
|
sta TmpCount
|
|
|
|
|
|
|
|
|
|
iny
|
2019-11-27 16:47:13 +00:00
|
|
|
|
|
2019-11-21 15:59:09 +00:00
|
|
|
|
.1 lda #"("
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
lda #"o"
|
|
|
|
|
cpx TmpCount
|
|
|
|
|
beq .2
|
|
|
|
|
lda #C.SPACE
|
|
|
|
|
|
|
|
|
|
.2 jsr SCRN.ToLineBuf
|
|
|
|
|
lda #")"
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
lda #C.SPACE
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
|
|
|
|
|
.3 lda (ZPPTR1),y
|
|
|
|
|
beq .4
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
iny
|
|
|
|
|
bra .3
|
|
|
|
|
|
|
|
|
|
.4 lda #C.SPACE
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
|
2019-11-22 14:05:37 +00:00
|
|
|
|
.8 jmp SCRN.LineBufOut
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Draw.BUT
|
2019-11-22 14:05:37 +00:00
|
|
|
|
jsr SCRN.LineBufInitInv
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoOrg
|
2019-11-22 14:05:37 +00:00
|
|
|
|
bcs .9
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
ldy TmpByte CtrlID
|
2019-11-22 14:05:37 +00:00
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
iny
|
2019-11-25 07:05:07 +00:00
|
|
|
|
|
|
|
|
|
lda #C.SPACE
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr SCRN.ToLineBuf
|
2019-11-22 14:05:37 +00:00
|
|
|
|
|
|
|
|
|
.1 lda (ZPPTR1),y
|
|
|
|
|
beq .8
|
|
|
|
|
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
iny
|
|
|
|
|
bra .1
|
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
.8 lda #C.SPACE
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr SCRN.ToLineBuf
|
2019-11-25 07:05:07 +00:00
|
|
|
|
|
|
|
|
|
jmp SCRN.LineBufOut
|
2019-11-21 15:59:09 +00:00
|
|
|
|
.9 rts
|
2019-11-20 16:37:09 +00:00
|
|
|
|
*--------------------------------------
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Focus sta TmpByte A=CtrlID
|
2019-11-28 16:50:08 +00:00
|
|
|
|
|
|
|
|
|
jsr SCRN.LineBufInitNorm
|
|
|
|
|
|
|
|
|
|
ldy TmpByte
|
2019-11-25 07:05:07 +00:00
|
|
|
|
lda (ZPPTR1),y Ctrl Definition
|
|
|
|
|
tay
|
|
|
|
|
lda (ZPPTR1),y Ctrl Type
|
|
|
|
|
tax
|
|
|
|
|
jmp (J.DLG.CTRL.Focus,x)
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.CTRL.Focus.LBL
|
2019-11-27 16:47:13 +00:00
|
|
|
|
clc
|
|
|
|
|
rts
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Focus.TB
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoOrg
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
eor TmpByte
|
|
|
|
|
bne .1
|
|
|
|
|
sec
|
|
|
|
|
|
|
|
|
|
.1 lda #C.SPACE
|
|
|
|
|
bcc .2
|
|
|
|
|
lda #'['
|
2019-11-28 16:50:08 +00:00
|
|
|
|
.2 jsr SCRN.ToLineBuf
|
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoEnd
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
eor TmpByte
|
|
|
|
|
bne .3
|
|
|
|
|
sec
|
|
|
|
|
|
|
|
|
|
.3 lda #C.SPACE
|
|
|
|
|
bcc .4
|
|
|
|
|
lda #']'
|
2019-11-28 16:50:08 +00:00
|
|
|
|
.4 jsr SCRN.ToLineBuf
|
|
|
|
|
|
|
|
|
|
jsr SCRN.LineBufOut
|
2019-11-27 16:47:13 +00:00
|
|
|
|
|
|
|
|
|
ldy TmpByte CtrlID
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny skip Ctrl Type
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
clc
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.X
|
|
|
|
|
adc (ZPPTR1),y
|
|
|
|
|
pha
|
|
|
|
|
|
|
|
|
|
ldy TmpByte CtrlID
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
pla
|
|
|
|
|
|
|
|
|
|
sec +1
|
|
|
|
|
adc (ZPPTR1),y
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
ldy TmpByte CtrlID
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny skip Ctrl Type
|
|
|
|
|
iny skip X
|
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
clc
|
|
|
|
|
ldy #S.DLG.Y
|
|
|
|
|
adc (ZPPTR1),y
|
|
|
|
|
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
jmp SCRN.GotoXY
|
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Focus.OL
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoOrg
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
eor TmpByte
|
|
|
|
|
bne .1
|
|
|
|
|
sec
|
|
|
|
|
|
|
|
|
|
.1 lda #'('
|
|
|
|
|
bcc .2
|
|
|
|
|
lda #'['
|
2019-11-28 16:50:08 +00:00
|
|
|
|
.2 jsr SCRN.ToLineBuf
|
2019-11-27 16:47:13 +00:00
|
|
|
|
|
|
|
|
|
jsr DLG.CTRL.GotoEnd
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
eor TmpByte
|
|
|
|
|
bne .3
|
|
|
|
|
sec
|
|
|
|
|
|
|
|
|
|
.3 lda #')'
|
|
|
|
|
bcc .4
|
|
|
|
|
lda #']'
|
2019-11-28 16:50:08 +00:00
|
|
|
|
.4 jsr SCRN.ToLineBuf
|
|
|
|
|
|
|
|
|
|
jmp SCRN.LineBufOut
|
2019-11-27 16:47:13 +00:00
|
|
|
|
|
2019-11-25 07:05:07 +00:00
|
|
|
|
DLG.CTRL.Focus.BUT
|
2019-11-27 16:47:13 +00:00
|
|
|
|
jsr DLG.CTRL.GotoOrg
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
eor TmpByte
|
|
|
|
|
bne .1
|
|
|
|
|
sec
|
|
|
|
|
|
|
|
|
|
.1 lda #C.SPACE
|
|
|
|
|
bcc .2
|
|
|
|
|
lda #'['
|
2019-11-28 16:50:08 +00:00
|
|
|
|
.2 jsr SCRN.ToLineBuf
|
2019-11-27 16:47:13 +00:00
|
|
|
|
|
|
|
|
|
jsr DLG.CTRL.GotoEnd
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Focus
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
eor TmpByte
|
|
|
|
|
bne .3
|
|
|
|
|
sec
|
|
|
|
|
|
|
|
|
|
.3 lda #C.SPACE
|
|
|
|
|
bcc .4
|
|
|
|
|
lda #']'
|
2019-11-28 16:50:08 +00:00
|
|
|
|
.4 jsr SCRN.ToLineBuf
|
2019-11-27 16:47:13 +00:00
|
|
|
|
|
2019-11-28 16:50:08 +00:00
|
|
|
|
jmp SCRN.LineBufOut
|
2019-11-25 07:05:07 +00:00
|
|
|
|
*--------------------------------------
|
2019-11-27 16:47:13 +00:00
|
|
|
|
DLG.CTRL.GotoOrg
|
|
|
|
|
clc
|
|
|
|
|
.HS B0 BCS
|
|
|
|
|
DLG.CTRL.GotoEnd
|
|
|
|
|
sec
|
|
|
|
|
php
|
|
|
|
|
|
2019-11-20 16:37:09 +00:00
|
|
|
|
ldy TmpByte CtrlID
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny skip Ctrl Type
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
clc
|
2019-11-27 16:47:13 +00:00
|
|
|
|
|
2019-11-20 16:37:09 +00:00
|
|
|
|
ldy #S.DLG.X
|
|
|
|
|
adc (ZPPTR1),y
|
2019-11-27 16:47:13 +00:00
|
|
|
|
plp
|
|
|
|
|
bcc .1
|
2019-11-28 16:50:08 +00:00
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
>PUSHA
|
|
|
|
|
jsr DLG.CTRL.GetWitdh
|
2019-11-28 16:50:08 +00:00
|
|
|
|
clc
|
|
|
|
|
adc (pStack)
|
|
|
|
|
inc pStack
|
2019-11-20 16:37:09 +00:00
|
|
|
|
|
2019-11-27 16:47:13 +00:00
|
|
|
|
.1 tax
|
|
|
|
|
|
|
|
|
|
ldy TmpByte CtrlID
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
iny skip Ctrl Type
|
|
|
|
|
iny skip X
|
2019-11-20 16:37:09 +00:00
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
clc
|
|
|
|
|
ldy #S.DLG.Y
|
|
|
|
|
adc (ZPPTR1),y
|
|
|
|
|
|
|
|
|
|
tay
|
|
|
|
|
|
2019-11-28 16:50:08 +00:00
|
|
|
|
DLG.CTRL.GotoXY
|
|
|
|
|
txa
|
|
|
|
|
inc
|
|
|
|
|
>PUSHA
|
|
|
|
|
tya
|
|
|
|
|
inc
|
|
|
|
|
inc
|
|
|
|
|
>PUSHA
|
|
|
|
|
>PUSHBI 2
|
|
|
|
|
>PUSHW L.MSG.GOTOXY
|
|
|
|
|
>LDYA LineBufPtr
|
|
|
|
|
>SYSCALL sprintf
|
|
|
|
|
|
|
|
|
|
.2 lda (LineBufPtr)
|
|
|
|
|
beq .8
|
|
|
|
|
inc LineBufPtr
|
|
|
|
|
bne .2
|
|
|
|
|
inc LineBufPtr+1
|
|
|
|
|
bra .2
|
|
|
|
|
|
|
|
|
|
.8 rts
|
2019-11-25 07:05:07 +00:00
|
|
|
|
*--------------------------------------
|
2019-11-20 16:37:09 +00:00
|
|
|
|
DLG.SetOrigin ldy #S.DLG.X
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
bne .1
|
|
|
|
|
|
|
|
|
|
>LDA.G ScreenW
|
|
|
|
|
ldy #S.DLG.W
|
|
|
|
|
sec
|
|
|
|
|
sbc (ZPPTR1),y
|
|
|
|
|
|
|
|
|
|
lsr
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.X
|
|
|
|
|
sta (ZPPTR1),y
|
|
|
|
|
|
|
|
|
|
.1 tax
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.Y
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
bne .2
|
|
|
|
|
|
|
|
|
|
>LDA.G ViewPortHm1
|
|
|
|
|
ldy #S.DLG.H
|
|
|
|
|
sec
|
|
|
|
|
sbc (ZPPTR1),y
|
|
|
|
|
|
|
|
|
|
lsr
|
|
|
|
|
ldy #S.DLG.Y
|
|
|
|
|
sta (ZPPTR1),y
|
|
|
|
|
|
|
|
|
|
.2 tay
|
|
|
|
|
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2019-11-27 16:47:13 +00:00
|
|
|
|
DLG.CTRL.GetWitdh
|
|
|
|
|
ldy TmpByte CtrlID
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
jmp (J.DLG.CTRL.GetWitdh,x)
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.CTRL.GetWitdh.LBL
|
|
|
|
|
clc
|
|
|
|
|
rts
|
|
|
|
|
DLG.CTRL.GetWitdh.TB
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
DLG.CTRL.GetWitdh.OL
|
|
|
|
|
lda #2
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
ldx #0
|
|
|
|
|
|
|
|
|
|
.1 inx
|
|
|
|
|
iny
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
bne .1
|
|
|
|
|
|
|
|
|
|
txa
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
DLG.CTRL.GetWitdh.BUT
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
ldx #0
|
|
|
|
|
|
|
|
|
|
.1 inx
|
|
|
|
|
iny
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
bne .1
|
|
|
|
|
|
|
|
|
|
txa
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2019-11-28 16:50:08 +00:00
|
|
|
|
DLG.CTRL.CharIn sty TmpByte A=CtrlID
|
|
|
|
|
pha
|
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y Ctrl Definition
|
|
|
|
|
tay
|
|
|
|
|
lda (ZPPTR1),y Ctrl Type
|
|
|
|
|
tax
|
|
|
|
|
pla
|
|
|
|
|
jmp (J.DLG.CTRL.CharIn,x)
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.CTRL.CharIn.LBL
|
|
|
|
|
sec
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.CTRL.CharIn.TB
|
|
|
|
|
cmp #C.DEL
|
|
|
|
|
beq .5
|
|
|
|
|
|
|
|
|
|
pha
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
lda (ZPPTR1),y CURPOS
|
|
|
|
|
iny
|
|
|
|
|
cmp (ZPPTR1),y MAXCHAR
|
|
|
|
|
beq .7
|
|
|
|
|
|
|
|
|
|
pha
|
|
|
|
|
|
|
|
|
|
inc
|
|
|
|
|
dey
|
|
|
|
|
sta (ZPPTR1),y CURPOS
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y hMem
|
|
|
|
|
tay
|
|
|
|
|
lda (pData),y
|
|
|
|
|
>SYSCALL getmemptr
|
|
|
|
|
>STYA ZPPTR2
|
|
|
|
|
|
|
|
|
|
ply
|
|
|
|
|
|
|
|
|
|
pla
|
|
|
|
|
pha
|
|
|
|
|
|
|
|
|
|
sta (ZPPTR2),y
|
|
|
|
|
iny
|
|
|
|
|
lda #0
|
|
|
|
|
sta (ZPPTR2),y
|
|
|
|
|
|
|
|
|
|
pla
|
|
|
|
|
>SYSCALL putchar
|
|
|
|
|
clc
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
.5 iny
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
lda (ZPPTR1),y CURPOS
|
|
|
|
|
beq .8
|
|
|
|
|
|
|
|
|
|
dec
|
|
|
|
|
sta (ZPPTR1),y
|
|
|
|
|
pha
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
iny
|
|
|
|
|
|
|
|
|
|
lda (ZPPTR1),y hMem
|
|
|
|
|
tay
|
|
|
|
|
lda (pData),y
|
|
|
|
|
>SYSCALL getmemptr
|
|
|
|
|
>STYA ZPPTR2
|
|
|
|
|
|
|
|
|
|
ply
|
|
|
|
|
lda #0
|
|
|
|
|
sta (ZPPTR2),y
|
|
|
|
|
|
|
|
|
|
lda #C.DEL
|
|
|
|
|
>SYSCALL putchar
|
|
|
|
|
clc
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
.7 pla
|
|
|
|
|
|
|
|
|
|
.8 clc
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.CTRL.CharIn.OL
|
|
|
|
|
cmp #C.SPACE
|
|
|
|
|
bne .8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.8 clc
|
|
|
|
|
rts
|
|
|
|
|
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.CTRL.CharIn.BUT
|
|
|
|
|
clc
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2019-11-20 16:37:09 +00:00
|
|
|
|
DLG.DrawInvBar phy
|
|
|
|
|
jsr SCRN.LineBufInitInv
|
|
|
|
|
|
|
|
|
|
ldy #S.DLG.W
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tax
|
|
|
|
|
|
|
|
|
|
ply
|
|
|
|
|
lda (ZPPTR1),y
|
|
|
|
|
tay
|
|
|
|
|
|
|
|
|
|
.1 lda (ZPPTR1),y
|
|
|
|
|
beq .11
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
dex
|
|
|
|
|
iny
|
|
|
|
|
bra .1
|
|
|
|
|
|
|
|
|
|
.11 lda #C.SPACE
|
|
|
|
|
|
|
|
|
|
.2 jsr SCRN.ToLineBuf
|
|
|
|
|
dex
|
|
|
|
|
bne .2
|
|
|
|
|
|
|
|
|
|
ldy #0
|
|
|
|
|
.3 lda SEQ.NORM,y
|
|
|
|
|
beq .4
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
iny
|
|
|
|
|
bra .3
|
|
|
|
|
|
|
|
|
|
.4 jsr DLG.VBarToLineBuf
|
|
|
|
|
|
|
|
|
|
jmp SCRN.LineBufOut
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
DLG.VBarToLineBuf
|
|
|
|
|
lda #C.SO
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
lda #'x'
|
|
|
|
|
jsr SCRN.ToLineBuf
|
|
|
|
|
lda #C.SI
|
2019-11-21 07:01:46 +00:00
|
|
|
|
jmp SCRN.ToLineBuf
|
2019-11-20 16:37:09 +00:00
|
|
|
|
*--------------------------------------
|
|
|
|
|
MAN
|
|
|
|
|
SAVE USR/SRC/BIN/EDIT.S.DLG
|
|
|
|
|
LOAD USR/SRC/BIN/EDIT.S
|
|
|
|
|
ASM
|