mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-26 13:49:18 +00:00
233 lines
3.2 KiB
Plaintext
233 lines
3.2 KiB
Plaintext
NEW
|
||
PREFIX
|
||
AUTO 4,1
|
||
*--------------------------------------
|
||
DRV.TERM.CLRSCR ldx #23
|
||
sta SET80STORE
|
||
|
||
.1 jsr DRV.TERM.SETUP.L1X
|
||
|
||
lda #" "
|
||
|
||
bit bActive
|
||
bpl .4
|
||
|
||
sta SETPAGE2
|
||
|
||
jsr .7
|
||
|
||
sta CLRPAGE2
|
||
|
||
jsr .7
|
||
|
||
.4 sta SETWRITEAUX
|
||
|
||
ldy #79
|
||
|
||
.5 sta (ZPBufBaseL1),y
|
||
dey
|
||
bpl .5
|
||
|
||
sta CLRWRITEAUX
|
||
|
||
dex
|
||
bpl .1
|
||
|
||
rts
|
||
|
||
.7 ldy #39
|
||
|
||
.8 sta (ZPScrBaseL1),y
|
||
dey
|
||
bpl .8
|
||
rts
|
||
*--------------------------------------
|
||
DRV.TERM.LINE0CPY
|
||
ldx #0
|
||
.HS 2C BIT ABS
|
||
DRV.TERM.SCRCPY ldx #23
|
||
|
||
sta SET80STORE
|
||
|
||
.1 ldy #S.FD.DEV.BUFPTR
|
||
lda (pFD),y
|
||
clc
|
||
adc BUF.BASEL,x
|
||
sta .80+1
|
||
|
||
iny
|
||
lda (pFD),y
|
||
adc BUF.BASEH,x
|
||
sta .80+2
|
||
|
||
jsr DRV.TERM.SETUP.L1X.SCR
|
||
|
||
phx
|
||
|
||
sta SETREADAUX
|
||
|
||
ldx #78
|
||
sta SETPAGE2
|
||
|
||
ldy #39
|
||
|
||
jsr .8
|
||
|
||
ldx #79
|
||
sta CLRPAGE2
|
||
|
||
ldy #39
|
||
|
||
jsr .8
|
||
|
||
sta CLRREADAUX
|
||
|
||
plx
|
||
dex
|
||
|
||
bpl .1
|
||
rts
|
||
|
||
.8 ldy #39
|
||
|
||
.80 lda $ffff,x SELF MODIFIED
|
||
cmp #$40
|
||
bcc .81
|
||
cmp #$5F
|
||
bcs .81
|
||
and #$3F
|
||
|
||
.81 sta (ZPScrBaseL1),y
|
||
dex
|
||
dex
|
||
dey
|
||
bpl .80
|
||
rts
|
||
*--------------------------------------
|
||
DRV.TERM.COPY.XtoL1
|
||
ldy #S.FD.DEV.BUFPTR
|
||
lda (pFD),y
|
||
clc
|
||
adc BUF.BASEL,x
|
||
sta ZPBufBaseL2
|
||
|
||
iny
|
||
lda (pFD),y
|
||
adc BUF.BASEH,x
|
||
sta ZPBufBaseL2+1
|
||
|
||
ldy #79
|
||
|
||
sta SETWRITEAUX
|
||
sta SETREADAUX
|
||
|
||
.1 lda (ZPBufBaseL2),y
|
||
sta (ZPBufBaseL1),y
|
||
dey
|
||
bpl .1
|
||
|
||
sta CLRWRITEAUX
|
||
sta CLRREADAUX
|
||
|
||
bit bActive
|
||
bpl .8
|
||
|
||
lda SCR.BASEL,x
|
||
sta ZPScrBaseL2
|
||
lda SCR.BASEH,x
|
||
sta ZPScrBaseL2+1
|
||
|
||
sta SET80STORE
|
||
sta SETPAGE2
|
||
|
||
jsr .6
|
||
|
||
sta CLRPAGE2
|
||
|
||
.6 ldy #39
|
||
|
||
.7 lda (ZPScrBaseL2),y
|
||
sta (ZPScrBaseL1),y
|
||
dey
|
||
bpl .7
|
||
|
||
.8 rts
|
||
*--------------------------------------
|
||
SetCharAtCurPos.SCR
|
||
pha
|
||
ldy #S.DCB.TTY.CV
|
||
lda (ZPDCBPtr),y
|
||
tax
|
||
dey
|
||
lda (ZPDCBPtr),y
|
||
tay CH
|
||
|
||
jsr DRV.TERM.SETUP.L1X.SCR
|
||
|
||
pla
|
||
bra SetCharAtY.SCR
|
||
|
||
SetCharAtCurPos pha
|
||
ldy #S.DCB.TTY.CV
|
||
lda (ZPDCBPtr),y
|
||
tax
|
||
dey
|
||
lda (ZPDCBPtr),y
|
||
tay
|
||
pla
|
||
*--------------------------------------
|
||
SetCharAtYX pha
|
||
phy
|
||
jsr DRV.TERM.SETUP.L1X
|
||
ply
|
||
|
||
pla
|
||
sta SETWRITEAUX
|
||
sta (ZPBufBaseL1),y
|
||
sta CLRWRITEAUX
|
||
|
||
bit bActive
|
||
bpl SetCharAtYX.8
|
||
|
||
SetCharAtY.SCR cmp #$40
|
||
bcc .1
|
||
cmp #$5F
|
||
bcs .1
|
||
and #$3F
|
||
|
||
.1 pha
|
||
|
||
tya
|
||
lsr
|
||
tay
|
||
|
||
pla
|
||
sta SET80STORE
|
||
bcs .2
|
||
sta SETPAGE2
|
||
.2 sta (ZPScrBaseL1),y
|
||
sta CLRPAGE2
|
||
|
||
SetCharAtYX.8 rts
|
||
*--------------------------------------
|
||
GetCharAtCurPos ldy #S.DCB.TTY.CV
|
||
lda (ZPDCBPtr),y
|
||
tax
|
||
|
||
jsr DRV.TERM.SETUP.L1X
|
||
|
||
ldy #S.DCB.TTY.CH
|
||
lda (ZPDCBPtr),y
|
||
tay
|
||
|
||
sta SETREADAUX
|
||
lda (ZPBufBaseL1),y
|
||
sta CLRREADAUX
|
||
|
||
rts
|
||
*--------------------------------------
|
||
MAN
|
||
SAVE USR/SRC/SYS/KERNEL.S.TERMLC
|
||
LOAD USR/SRC/SYS/KERNEL.S
|
||
ASM
|