command-L toggles local/online mode.

This commit is contained in:
Kelvin Sherlock 2022-01-30 22:29:33 -05:00
parent dcbafc2999
commit 2c432b3fc1
2 changed files with 43 additions and 3 deletions

View File

@ -112,6 +112,10 @@ command ; or option
beq :bs beq :bs
cmp #$0d cmp #$0d
beq :lf beq :lf
cmp #'l'
beq :local
cmp #'L'
beq :local
cmp #:MIN cmp #:MIN
blt :rts blt :rts
@ -126,14 +130,27 @@ command ; or option
:rts rts :rts rts
:MIN equ 49
:MAX equ 52
:bs lda #$08 :bs lda #$08
jmp dispatch ; jmp dispatch ;
:lf lda #$0a :lf lda #$0a
jmp dispatch jmp dispatch
ext enable_modem,disable_modem
:local
bit LOCAL
bmi :online
lda #$80
sta LOCAL
jmp disable_modem
:online
stz LOCAL
jmp enable_modem
:MIN equ 49
:MAX equ 52
:table :table
dw pf1 ; 1 dw pf1 ; 1

View File

@ -31,6 +31,7 @@ SerFlag equ $e10104 ;
* see IIgs TN #18 - Do-It-Yourself SCC Access * see IIgs TN #18 - Do-It-Yourself SCC Access
init_modem ent init_modem ent
enable_modem ent
* sep #$30 * sep #$30
php php
@ -89,6 +90,28 @@ init_modem ent
db 9,%00_0_0_1_0_1_0 ; master interrupts enabled. db 9,%00_0_0_1_0_1_0 ; master interrupts enabled.
db -1,-1 db -1,-1
disable_modem ent
* local mode
mx %11
php
sei
lda SCCBREG ; sync access
lda #9
sta SCCBREG
lda #%01_0_1_0_0_0_1 ; reset channel B.
sta SCCBREG
stz read_q_head
stz read_q_tail
stz write_q_head
stz write_q_tail
plp
rts
write_modem_sync ent write_modem_sync ent
mx %11 mx %11
* a: byte to send * a: byte to send