mirror of
https://github.com/bobbimanners/emailler.git
synced 2025-02-20 10:29:01 +00:00
Some minor changes.
In order to manage upcoming changes relevant to all machine types it's important that the files are easy to diff. This change improves the similarity between a2<...>.s and atr<...>.s.
This commit is contained in:
parent
981e3bb5f7
commit
26e57930a0
@ -80,7 +80,7 @@ get_key:
|
||||
rts
|
||||
|
||||
; inputs: none
|
||||
; outputs: sec (CF=1) if key pressed, clear otherwise
|
||||
; outputs: sec if key pressed, clear otherwise
|
||||
; A contains ASCII value of key just pressed
|
||||
get_key_if_available:
|
||||
lda BRKKEY
|
||||
@ -150,16 +150,16 @@ getkey_k:
|
||||
pha
|
||||
rts
|
||||
|
||||
get_key_ip65:
|
||||
; process inbound ip packets while waiting for a keypress
|
||||
get_key_ip65:
|
||||
jsr ip65_process
|
||||
jsr get_key_if_available
|
||||
bcc get_key_ip65
|
||||
rts
|
||||
|
||||
;check whether the abort key is being pressed
|
||||
;inputs: none
|
||||
;outputs: CF=1 if abort key pressed, clear otherwise
|
||||
; check whether the abort key is being pressed
|
||||
; inputs: none
|
||||
; outputs: sec if abort key pressed, clear otherwise
|
||||
check_for_abort_key:
|
||||
lda abort_key ; is "abort" enabled?
|
||||
beq nokey ; no
|
||||
|
@ -205,7 +205,7 @@ Special tya ; restore char
|
||||
; --- CR ---
|
||||
cmp #$0d ; CR?
|
||||
bne D1
|
||||
CRhnd jsr clPending
|
||||
DoCR jsr clPending
|
||||
ldx ROWCRS ; get row
|
||||
ldy #$00 ; set col=0
|
||||
jsr CPlot ; set crsr
|
||||
@ -256,9 +256,9 @@ D5 cmp #$09 ; TAB?
|
||||
and #$f8 ; (col DIV 8) * 8
|
||||
clc ; col + 8
|
||||
adc #$08
|
||||
cmp #Cols
|
||||
cmp #Cols ; col=40?
|
||||
bne D5a ; no -> skip
|
||||
lda #$4f ; yes -> col=79
|
||||
lda #Cols-1 ; yes -> col=39
|
||||
D5a tay ; col to y
|
||||
ldx ROWCRS ; line to x
|
||||
jsr CPlot ; set crsr
|
||||
@ -356,7 +356,7 @@ E6b dex ; one line up
|
||||
; --- E --- next line
|
||||
E7 cmp #$45 ; E ?
|
||||
bne E8
|
||||
jsr CRhnd
|
||||
jsr DoCR
|
||||
jsr LF
|
||||
jmp Eend
|
||||
; --- 7 --- save crsr
|
||||
@ -479,11 +479,11 @@ LE3 cmp #$43 ; C ?
|
||||
LE3c lda COLCRS ; get crsr col
|
||||
clc
|
||||
adc EPar ; col = col + right
|
||||
cmp #$4f ; outside screen?
|
||||
cmp #Cols-1 ; outside screen?
|
||||
bcs LE3d ; yes -> branch
|
||||
tay
|
||||
jmp LE3a
|
||||
LE3d ldy #$4f ; y=col=left margin
|
||||
LE3d ldy #Cols-1 ; y=col=left margin
|
||||
LE3a ldx ROWCRS ; x is row
|
||||
jsr CPlot ; set crsr
|
||||
jmp LEend
|
||||
@ -605,7 +605,7 @@ LE8b dey ; line 1 -> line 0
|
||||
bne LE8c ; 0 means 1
|
||||
iny
|
||||
LE8c dey ; col 1 -> col 0
|
||||
cpy #Cols
|
||||
cpy #Cols ; >= 40?..
|
||||
bcs LE8d ; ..error!
|
||||
ldx xVector ; restore row to X
|
||||
jsr CPlot ; set crsr
|
||||
@ -645,7 +645,7 @@ LE9c dex ; previous line
|
||||
; -- 2 -- del screen
|
||||
LE9e cmp #$02 ; unknown?
|
||||
bne LE9f ; then ingnore
|
||||
ldx #Rows-1 ; start at last line
|
||||
ldx #Rows-1 ; start at ln 23
|
||||
LE9d txa
|
||||
pha ; save X
|
||||
jsr ErLn ; erase line
|
||||
@ -664,14 +664,14 @@ LE10 cmp #$72 ; r ?
|
||||
bne LE10e ; no -> error
|
||||
ldy EPar ; get top
|
||||
dey ; line 1 -> line 0
|
||||
cpy #Rows
|
||||
cpy #Rows ; >=24?..
|
||||
bcs LE10e ; ..error!
|
||||
sty xVector ; save top
|
||||
; -- prepare bottom --
|
||||
jsr GetNum
|
||||
ldy EPar ; get bottom
|
||||
dey ; line 1 -> line 0
|
||||
cpy #Rows
|
||||
cpy #Rows ; >=24?..
|
||||
bcs LE10e ; ..error!
|
||||
sty zVector ; save bottom
|
||||
; -- validate lines --
|
||||
@ -889,19 +889,16 @@ aDDigE rts
|
||||
|
||||
ProcOut
|
||||
lda kta,y ; keyboard to ASCII
|
||||
cmp #$fd
|
||||
cmp #$ff
|
||||
beq POrts ; ignore key
|
||||
cmp #$fe
|
||||
beq CmdKey ; command key
|
||||
cmp #$ff
|
||||
beq StrKey ; send a string
|
||||
jsr putRS
|
||||
POrts rts
|
||||
|
||||
; -------------------------------------
|
||||
; outgoing string
|
||||
; outgoing command key
|
||||
;
|
||||
; params: key in y
|
||||
; -------------------------------------
|
||||
|
||||
ScrsrU .byt $1b, $4f, $41, $00 ; esc O A
|
||||
@ -909,77 +906,74 @@ ScrsrD .byt $1b, $4f, $42, $00 ; esc O B
|
||||
ScrsrR .byt $1b, $4f, $43, $00 ; esc O C
|
||||
ScrsrL .byt $1b, $4f, $44, $00 ; esc O D
|
||||
|
||||
StrKey tya ; restore character
|
||||
CmdKey tya ; restore character
|
||||
|
||||
; --- crsr L ---
|
||||
cmp #ATLRW
|
||||
bne K0
|
||||
bne C0
|
||||
|
||||
; crsr L
|
||||
crsrL ldx #<ScrsrL
|
||||
ldy #>ScrsrL
|
||||
jsr SendStr
|
||||
rts
|
||||
|
||||
; --- crsr D ---
|
||||
K0 cmp #ATDRW
|
||||
bne K1
|
||||
C0 cmp #ATDRW
|
||||
bne C1
|
||||
|
||||
; crsr down is pressed
|
||||
crsrD ldx #<ScrsrD
|
||||
ldy #>ScrsrD
|
||||
jsr SendStr
|
||||
rts
|
||||
|
||||
; --- crsr U ---
|
||||
K1 cmp #ATURW
|
||||
bne K2
|
||||
C1 cmp #ATURW
|
||||
bne C2
|
||||
|
||||
; crsr up is pressed
|
||||
crsrU ldx #<ScrsrU
|
||||
ldy #>ScrsrU
|
||||
jsr SendStr
|
||||
rts
|
||||
|
||||
; --- crsr R ---
|
||||
K2 cmp #ATRRW
|
||||
bne Cbad ; unknown key
|
||||
C2 cmp #ATRRW
|
||||
bne C3
|
||||
|
||||
; crsr R
|
||||
crsrR ldx #<ScrsrR
|
||||
ldy #>ScrsrR
|
||||
jsr SendStr
|
||||
rts
|
||||
|
||||
; -------------------------------------
|
||||
; outgoing command key
|
||||
;
|
||||
; -------------------------------------
|
||||
|
||||
CmdKey tya ; restore character
|
||||
|
||||
; --- Option h H ---
|
||||
; print help
|
||||
cmp #$fc ; special value for HELP key
|
||||
C3 cmp #$fc ; special value for HELP key
|
||||
beq Help
|
||||
cmp #$68 ; h
|
||||
beq C1
|
||||
cmp #$48 ; H
|
||||
bne C2
|
||||
C1 lda CONSOL
|
||||
cmp #$68 ; h
|
||||
beq C31
|
||||
cmp #$48 ; H
|
||||
bne C4
|
||||
C31 lda CONSOL
|
||||
and #4
|
||||
beq Help ; "Option" pressed
|
||||
beq Help ; "Option" pressed
|
||||
tya
|
||||
jsr putRS ; send h or H
|
||||
jsr putRS ; send h or H
|
||||
rts
|
||||
|
||||
; --- Option q Q ---
|
||||
; quit CaTer
|
||||
C2 cmp #$71 ; q
|
||||
beq C21
|
||||
cmp #$51 ; Q
|
||||
bne Cbad
|
||||
C21 lda CONSOL
|
||||
C4 cmp #$71 ; q
|
||||
beq C41
|
||||
cmp #$51 ; Q
|
||||
bne C5
|
||||
C41 lda CONSOL
|
||||
and #4
|
||||
beq Cquit ; "Option" pressed
|
||||
beq Cquit ; "Option" pressed
|
||||
tya
|
||||
jsr putRS ; send q or Q
|
||||
jsr putRS ; send q or Q
|
||||
rts
|
||||
|
||||
; quit CaTer
|
||||
@ -987,7 +981,7 @@ Cquit jsr telnet_close
|
||||
rts
|
||||
|
||||
; --- unknown character ---
|
||||
Cbad rts
|
||||
C5 rts
|
||||
|
||||
; -------------------------------------
|
||||
; Help - print help screen
|
||||
@ -995,7 +989,7 @@ Cbad rts
|
||||
; calledom outgoing data loop
|
||||
; returns with rts
|
||||
; -------------------------------------
|
||||
Help jsr CRhnd ; next screen line
|
||||
Help jsr DoCR ; next screen line
|
||||
jsr LF
|
||||
ldx #<HelpStr1
|
||||
ldy #>HelpStr1
|
||||
@ -1183,7 +1177,7 @@ PC2 ldy COLCRS ; get crsr col
|
||||
sta (ADRESS),y ; char to screen
|
||||
|
||||
; -- move on crsr --
|
||||
cpy #Cols-1 ; col = last one?
|
||||
cpy #Cols-1 ; col = 39?
|
||||
bne PC8 ; no -> skip
|
||||
lda #$ff ; yes -> set..
|
||||
sta lbPending ; ..pending
|
||||
@ -1210,7 +1204,7 @@ NewLn pha ; save char
|
||||
ldx ROWCRS ; get crsr row
|
||||
cpx SRE ; end of scroll reg?
|
||||
beq NL1 ; yes -> branche
|
||||
cpx #Rows-1 ; last line
|
||||
cpx #Rows-1 ; line 23?
|
||||
beq NLend ; yes -> crsr stays
|
||||
; --- normal wrap ---
|
||||
inx ; increase line
|
||||
@ -1386,7 +1380,7 @@ DS2 lda (xVector),y ; copy char
|
||||
; -------------------------------------
|
||||
CPrnStrNL
|
||||
jsr CPrnStr
|
||||
jsr CRhnd
|
||||
jsr DoCR
|
||||
jsr LF
|
||||
rts
|
||||
|
||||
@ -1488,8 +1482,8 @@ EBL1 sta (xVector),y
|
||||
; return: screen line ptr in xVector
|
||||
; -------------------------------------
|
||||
|
||||
SLV lda SAVMSC
|
||||
clc
|
||||
SLV clc
|
||||
lda SAVMSC
|
||||
adc LineOffsLo,x
|
||||
sta xVector
|
||||
lda SAVMSC+1
|
||||
@ -1533,7 +1527,7 @@ InitVar lda #$00
|
||||
sta Rvs
|
||||
|
||||
lda #Rows-1 ; last line
|
||||
sta SRE ; = Rows-1
|
||||
sta SRE ; = 23
|
||||
|
||||
rts
|
||||
|
||||
@ -1648,11 +1642,9 @@ ltsc;_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _a _b _c _d _e _f
|
||||
; input for sending over the serial
|
||||
; line.
|
||||
;
|
||||
; ascii = $ff means send string
|
||||
; ascii = $ff means ignore key
|
||||
; ascii = $fe means do something
|
||||
; complicated (command key)
|
||||
; ascii = $fd means ignore key
|
||||
; ascii = $fc means HELP key
|
||||
; -------------------------------------
|
||||
|
||||
kta ;_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _a _b _c _d _e _f
|
||||
@ -1662,7 +1654,7 @@ kta ;_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _a _b _c _d _e _f
|
||||
.byt $00,$01,$02,$03,$04,$05,$06,$07,$08,$09,$0A,$B,$0c,$0d,$0e,$0f ; 0_
|
||||
; {↑} {↓} {←} {→}
|
||||
; ^P ^Q ^R ^S ^T ^U ^V ^W ^X ^Y ^Z ^[ ^\ ^] ^^ ^_
|
||||
.byt $10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$1a,$1b,$ff,$ff,$ff,$ff ; 1_
|
||||
.byt $10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$1a,$1b,$fe,$fe,$fe,$fe ; 1_
|
||||
|
||||
; --- special chars ------------------------------------------------
|
||||
; ' ' ! " # $ % & ' ( ) * + , - . /
|
||||
@ -1688,29 +1680,29 @@ kta ;_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _a _b _c _d _e _f
|
||||
; --- accidentally switched to inverse -----------------------------
|
||||
; {←} {↓} {↑}
|
||||
; ^A ^B ^C ^D ^E ^F ^G ^H ^I ^J ^K ^L ^M ^N ^O
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd ; 8_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff ; 8_
|
||||
; {→} ~
|
||||
; ^P ^Q ^R ^S ^T ^U ^V ^W ^X ^Y ^Z ^[ ^\ ^] ^^ ^_
|
||||
; {RETURN}
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$0d,$7f,$fd,$7e,$1f ; 9_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$0d,$7f,$ff,$7e,$1f ; 9_
|
||||
|
||||
; --- special chars ------------------------------------------------
|
||||
; ' ' ! " # $ % & ' ( ) * + , - . /
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd ; a_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff ; a_
|
||||
; 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd ; b_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff ; b_
|
||||
|
||||
; --- capital letters ----------------------------------------------
|
||||
; @ A B C D E F G H I J K L M N O
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd ; c_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff ; c_
|
||||
; P Q R S T U V W X Y Z [ \ ] ^ _
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd ; d_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff ; d_
|
||||
|
||||
; --- lower case letters -------------------------------------------
|
||||
; ` a b c d e f g h i j k l m n o
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd ; e_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff ; e_
|
||||
; p q r s t u v w x y z { | } ~ DEL
|
||||
.byt $fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fe,$fd,$7f,$fd ; f_
|
||||
.byt $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$fe,$ff,$7f,$ff ; f_
|
||||
|
||||
|
||||
; -----------------------------------------------
|
||||
|
Loading…
x
Reference in New Issue
Block a user