fixes.
This commit is contained in:
parent
dfdf608018
commit
6abf2574e3
|
@ -0,0 +1,24 @@
|
|||
|
||||
|
||||
debug mac
|
||||
brl ]eom
|
||||
dw $7771
|
||||
str ']1'
|
||||
]eom
|
||||
<<<
|
||||
|
||||
*debuglab mac
|
||||
*]1
|
||||
* brl ]eom
|
||||
* dw $7771
|
||||
* str ']1'
|
||||
*]eom
|
||||
* <<<
|
||||
|
||||
*debugent mac
|
||||
*]1 ent
|
||||
* brl ]eom
|
||||
* dw $7771
|
||||
* str ']1'
|
||||
*]eom
|
||||
* <<<
|
|
@ -6,6 +6,7 @@
|
|||
|
||||
mx %11
|
||||
use vt.equ
|
||||
use debug
|
||||
|
||||
ext dispatch
|
||||
|
||||
|
@ -24,6 +25,7 @@ kmOption equ %0100_0000
|
|||
kmCommand equ %1000_0000
|
||||
|
||||
keypress ent
|
||||
debug keypress
|
||||
lda KBD
|
||||
bmi :key
|
||||
rts
|
||||
|
@ -50,6 +52,7 @@ keypress ent
|
|||
|
||||
asl
|
||||
tax
|
||||
lsr ; restore
|
||||
jmp (special,x)
|
||||
|
||||
:ctrl
|
||||
|
@ -290,9 +293,9 @@ arrow
|
|||
lda #ESC
|
||||
jsr dispatch
|
||||
|
||||
tsb DECANM
|
||||
bmi :vt52
|
||||
tsb DECCKM
|
||||
bit DECANM
|
||||
bpl :vt52
|
||||
bit DECCKM
|
||||
bmi :cursor
|
||||
|
||||
lda #'['
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
ovr all
|
||||
* binary linker
|
||||
lkv 0
|
||||
org $6000
|
||||
org $2000
|
||||
|
||||
* asm boot.S
|
||||
* asm vt100.ctrl.S
|
||||
|
@ -33,4 +33,5 @@
|
|||
lnk vt100.modem.L
|
||||
lnk vt100.key.L
|
||||
|
||||
sav vt100.bin
|
||||
typ $ff
|
||||
sav vt100.sys
|
||||
|
|
16
vt100.main.S
16
vt100.main.S
|
@ -6,6 +6,7 @@
|
|||
|
||||
mx %11
|
||||
use vt.equ
|
||||
use debug
|
||||
|
||||
ext scroll_down
|
||||
ext recalc_cursor,recalc_cursor_x,recalc_cursor_y
|
||||
|
@ -19,7 +20,7 @@ TXTSET equ $c051
|
|||
VGCINT equ $c023
|
||||
SCANINT equ $c032
|
||||
|
||||
main
|
||||
main debug main
|
||||
|
||||
clc
|
||||
xce
|
||||
|
@ -76,6 +77,11 @@ init
|
|||
|
||||
lda #23
|
||||
sta DECBM
|
||||
lda #$80
|
||||
sta LOCAL
|
||||
|
||||
lda #st_vt52
|
||||
sta state
|
||||
|
||||
jsr erase_screen
|
||||
jsr init_modem
|
||||
|
@ -174,8 +180,8 @@ ctrl_1b ; escape -
|
|||
* vt100 - aborts current escape sequence and starts a new one.
|
||||
* vt52 - esc esc aborts and starts new
|
||||
* vt50 - esc esc aborts
|
||||
lda DECANM
|
||||
bne :vt52
|
||||
bit DECANM
|
||||
bpl :vt52
|
||||
lda #st_vt100_esc
|
||||
sta state
|
||||
rts
|
||||
|
@ -190,8 +196,8 @@ ctrl_1a
|
|||
* vt100 - abort current escape sequence
|
||||
* and display error character.
|
||||
* TODO - display error character (mouse text)
|
||||
lda DECANM
|
||||
bne :vt52
|
||||
bit DECANM
|
||||
bpl :vt52
|
||||
lda #st_vt100
|
||||
sta state
|
||||
rts
|
||||
|
|
|
@ -16,7 +16,7 @@ SCCADATA equ $c03b
|
|||
|
||||
|
||||
init_modem ent
|
||||
sep #$30
|
||||
* sep #$30
|
||||
* reset channel B (modem port)
|
||||
ldx #9
|
||||
lda #%01010001
|
||||
|
|
|
@ -258,6 +258,7 @@ fill_screen ent
|
|||
* fill the entire screen with the a register.
|
||||
* text screen is out of order, so this doesn't use much code but
|
||||
* it's not linear either.
|
||||
* +64 bytes of screen hole data.
|
||||
mx %11
|
||||
|
||||
sta >$000400
|
||||
|
@ -268,13 +269,13 @@ fill_screen ent
|
|||
|
||||
ldx #$0400
|
||||
ldy #$0401
|
||||
lda #40*24-2
|
||||
mvn $01,$01
|
||||
lda #40*24+64-2
|
||||
mvn $010000,$010000
|
||||
|
||||
ldx #$0400
|
||||
ldy #$0401
|
||||
lda #40*24-2
|
||||
mvn $00,$00
|
||||
lda #40*24+64-2
|
||||
mvn $000000,$000000
|
||||
|
||||
* not needed since $0,$0 last
|
||||
* phk
|
||||
|
@ -318,13 +319,13 @@ scroll_up ent
|
|||
lda #40
|
||||
ldx #]1
|
||||
ldy #]2
|
||||
mvn $1,$1
|
||||
mvn $010000,$010000
|
||||
|
||||
lda #$40
|
||||
lda #40
|
||||
ldx #]1
|
||||
ldy #]2
|
||||
mvn $0,$0
|
||||
mvn $000000,$000000
|
||||
|
||||
dec r0
|
||||
bne *+5
|
||||
|
@ -412,13 +413,13 @@ scroll_down ent
|
|||
lda #40
|
||||
ldx #]1
|
||||
ldy #]2
|
||||
mvn $1,$1
|
||||
mvn $010000,$010000
|
||||
|
||||
lda #$40
|
||||
lda #40
|
||||
ldx #]1
|
||||
ldy #]2
|
||||
mvn $0,$0
|
||||
mvn $000000,$000000
|
||||
|
||||
dec r0
|
||||
bne *+5
|
||||
|
|
|
@ -110,11 +110,11 @@ esc_A ; cursor up.
|
|||
|
||||
esc_B ; cursor down
|
||||
lda y
|
||||
cmp #79
|
||||
cmp #23
|
||||
beq :rts
|
||||
cmp DECBM
|
||||
beq :rts
|
||||
iny y
|
||||
inc y
|
||||
jmp recalc_cursor_y
|
||||
|
||||
:rts rts
|
||||
|
@ -225,6 +225,8 @@ vt52_dca ent
|
|||
sta y
|
||||
:update
|
||||
stz :tmp
|
||||
lda #st_vt52
|
||||
sta state
|
||||
jmp recalc_cursor
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue