mirror of
https://github.com/a2-4am/passport.git
synced 2025-01-05 06:29:36 +00:00
backscroll log
This commit is contained in:
parent
79e30dda0e
commit
481e61cd0b
1
Makefile
1
Makefile
@ -58,6 +58,7 @@ asm:
|
|||||||
grep "OpenFile=" build/vars.log | cut -d":" -f3 | cut -d"(" -f1 >> build/vars.a
|
grep "OpenFile=" build/vars.log | cut -d":" -f3 | cut -d"(" -f1 >> build/vars.a
|
||||||
grep "ReadFile=" build/vars.log | cut -d":" -f3 | cut -d"(" -f1 >> build/vars.a
|
grep "ReadFile=" build/vars.log | cut -d":" -f3 | cut -d"(" -f1 >> build/vars.a
|
||||||
grep "CloseFile=" build/vars.log | cut -d":" -f3 | cut -d"(" -f1 >> build/vars.a
|
grep "CloseFile=" build/vars.log | cut -d":" -f3 | cut -d"(" -f1 >> build/vars.a
|
||||||
|
grep "CheckCache=" build/vars.log | cut -d":" -f3 | cut -d"(" -f1 >> build/vars.a
|
||||||
$(EXOMIZER) -b build/passport.tmp -o build/passport.pak
|
$(EXOMIZER) -b build/passport.tmp -o build/passport.pak
|
||||||
cd src && $(ACME) -DFORWARD_DECRUNCHING=0 wrapper.a
|
cd src && $(ACME) -DFORWARD_DECRUNCHING=0 wrapper.a
|
||||||
cp res/work.po "$(BUILDDISK)".po
|
cp res/work.po "$(BUILDDISK)".po
|
||||||
|
@ -170,8 +170,11 @@ Reaction
|
|||||||
sta gSector
|
sta gSector
|
||||||
sta gPatchCount
|
sta gPatchCount
|
||||||
sta jCallRWTS+1
|
sta jCallRWTS+1
|
||||||
|
sta CacheDst+1
|
||||||
lda #$08
|
lda #$08
|
||||||
sta gAddress+1
|
sta gAddress+1
|
||||||
|
lda #$D4
|
||||||
|
sta CacheDst+2
|
||||||
jsr ShowInitialProgressScreen
|
jsr ShowInitialProgressScreen
|
||||||
|
|
||||||
lda gMode
|
lda gMode
|
||||||
@ -226,6 +229,7 @@ TheEnd
|
|||||||
beq HandleRedo
|
beq HandleRedo
|
||||||
cmp #k_redo_with_ignore
|
cmp #k_redo_with_ignore
|
||||||
beq HandleRedoWithIgnore
|
beq HandleRedoWithIgnore
|
||||||
|
jsr CheckLogKeys
|
||||||
jmp MainMenu
|
jmp MainMenu
|
||||||
|
|
||||||
HandleRedoWithIgnore
|
HandleRedoWithIgnore
|
||||||
@ -462,4 +466,5 @@ LastMover
|
|||||||
!warn "DiskIIArray=",DiskIIArray
|
!warn "DiskIIArray=",DiskIIArray
|
||||||
!warn "HardDiskArray=",HardDiskArray
|
!warn "HardDiskArray=",HardDiskArray
|
||||||
!warn "ThisSlot=",ThisSlot
|
!warn "ThisSlot=",ThisSlot
|
||||||
|
!warn "CheckCache=",CheckCache
|
||||||
}
|
}
|
||||||
|
195
src/print.a
195
src/print.a
@ -183,3 +183,198 @@ ClearScreen
|
|||||||
bne @begin
|
bne @begin
|
||||||
@home
|
@home
|
||||||
jmp HOME
|
jmp HOME
|
||||||
|
|
||||||
|
;-------------------------------
|
||||||
|
; CheckCache
|
||||||
|
; Intercept text about to be scrolled off the screen
|
||||||
|
; Cache it in spare LC space for viewing later
|
||||||
|
;-------------------------------
|
||||||
|
CheckCache
|
||||||
|
ldx $25
|
||||||
|
cpx #$17
|
||||||
|
bne .nocache
|
||||||
|
ldx $24
|
||||||
|
cpx #$27
|
||||||
|
beq .docache
|
||||||
|
cmp #$8D
|
||||||
|
bne .nocache
|
||||||
|
.docache
|
||||||
|
pha
|
||||||
|
cmp #$8D
|
||||||
|
beq .skipcr
|
||||||
|
sta $7F7
|
||||||
|
.skipcr
|
||||||
|
bit $C081
|
||||||
|
bit $C081
|
||||||
|
ldx #$27
|
||||||
|
cachesrc
|
||||||
|
lda $700, x
|
||||||
|
CacheDst
|
||||||
|
sta $D400, x
|
||||||
|
dex
|
||||||
|
bpl cachesrc
|
||||||
|
lda CacheDst+1
|
||||||
|
adc #$27
|
||||||
|
sta CacheDst+1
|
||||||
|
bcc .skiphi
|
||||||
|
inc CacheDst+2
|
||||||
|
.skiphi
|
||||||
|
pla
|
||||||
|
|
||||||
|
.nocache
|
||||||
|
jmp $FDF0
|
||||||
|
|
||||||
|
;-------------------------------
|
||||||
|
; CheckLogKeys
|
||||||
|
; Enable scrolling of log, if more than once screen worth
|
||||||
|
; Left/Right (all)
|
||||||
|
; Up/Down (not II or II+)
|
||||||
|
;-------------------------------
|
||||||
|
|
||||||
|
CheckLogKeys
|
||||||
|
ldx CacheDst+1
|
||||||
|
ldy CacheDst+2
|
||||||
|
cpy #$D4
|
||||||
|
bne .yeslog
|
||||||
|
cpx #0
|
||||||
|
beq .nolog
|
||||||
|
|
||||||
|
.yeslog
|
||||||
|
stx .startline1+1
|
||||||
|
sty .startline1+2
|
||||||
|
stx .startline2+1
|
||||||
|
sty .startline2+2
|
||||||
|
pha
|
||||||
|
jsr .substart
|
||||||
|
pla
|
||||||
|
bmi .skipkey
|
||||||
|
|
||||||
|
.checkkey
|
||||||
|
jsr WaitForKey
|
||||||
|
.skipkey
|
||||||
|
cmp #k_left
|
||||||
|
beq .checkup
|
||||||
|
cmp #k_up
|
||||||
|
beq .checkup
|
||||||
|
cmp #k_right
|
||||||
|
beq .checkdown
|
||||||
|
cmp #k_down
|
||||||
|
beq .checkdown
|
||||||
|
.nolog
|
||||||
|
rts
|
||||||
|
|
||||||
|
.checkup
|
||||||
|
lda .startline1+2
|
||||||
|
cmp #$D4
|
||||||
|
bne .scrollup
|
||||||
|
lda .startline1+1
|
||||||
|
beq .checkkey
|
||||||
|
|
||||||
|
.scrollup
|
||||||
|
jsr .substart
|
||||||
|
bit $C081
|
||||||
|
bit $C081
|
||||||
|
ldx #$27
|
||||||
|
.copyend1
|
||||||
|
lda $7D0,x
|
||||||
|
.endline1
|
||||||
|
sta $D428,x
|
||||||
|
dex
|
||||||
|
bpl .copyend1
|
||||||
|
|
||||||
|
ldx #22
|
||||||
|
.scrollscreen
|
||||||
|
txa
|
||||||
|
jsr $FBC1 ;BASCALC
|
||||||
|
lda $28
|
||||||
|
sta $2A
|
||||||
|
lda $29
|
||||||
|
sta $2B
|
||||||
|
inx
|
||||||
|
txa
|
||||||
|
jsr $FBC1 ;BASCALC
|
||||||
|
ldy #$27
|
||||||
|
.copyline
|
||||||
|
lda ($2A),y
|
||||||
|
sta ($28),y
|
||||||
|
dey
|
||||||
|
bpl .copyline
|
||||||
|
dex
|
||||||
|
dex
|
||||||
|
cpx #5
|
||||||
|
bne .scrollscreen
|
||||||
|
bit $C083
|
||||||
|
ldx #$27
|
||||||
|
.copystart1
|
||||||
|
.startline1
|
||||||
|
lda $D400,x
|
||||||
|
sta $700,x
|
||||||
|
dex
|
||||||
|
bpl .copystart1
|
||||||
|
bit $C081
|
||||||
|
jmp .checkkey
|
||||||
|
|
||||||
|
.checkdown
|
||||||
|
lda .endline1+2
|
||||||
|
cmp CacheDst+2
|
||||||
|
bne .scrolldown
|
||||||
|
lda .endline1+1
|
||||||
|
cmp CacheDst+1
|
||||||
|
beq .checkkey
|
||||||
|
|
||||||
|
.scrolldown
|
||||||
|
bit $C081
|
||||||
|
bit $C081
|
||||||
|
ldx #$27
|
||||||
|
.copystart2
|
||||||
|
lda $700,x
|
||||||
|
.startline2
|
||||||
|
sta $D400,x
|
||||||
|
dex
|
||||||
|
bpl .copystart2
|
||||||
|
lda #$8D
|
||||||
|
jsr $FDF0
|
||||||
|
bit $C083
|
||||||
|
bit $C083
|
||||||
|
ldx #$27
|
||||||
|
.copyend2
|
||||||
|
.endline2
|
||||||
|
lda $D428,x
|
||||||
|
sta $7D0,x
|
||||||
|
dex
|
||||||
|
bpl .copyend2
|
||||||
|
bit $C081
|
||||||
|
jsr .addstart
|
||||||
|
jmp .checkkey
|
||||||
|
|
||||||
|
.substart
|
||||||
|
sec
|
||||||
|
lda .startline1+1
|
||||||
|
sta .endline1+1
|
||||||
|
sta .endline2+1
|
||||||
|
sbc #$28
|
||||||
|
sta .startline1+1
|
||||||
|
sta .startline2+1
|
||||||
|
lda .startline1+2
|
||||||
|
sta .endline1+2
|
||||||
|
sta .endline2+2
|
||||||
|
sbc #0
|
||||||
|
sta .startline1+2
|
||||||
|
sta .startline2+2
|
||||||
|
rts
|
||||||
|
|
||||||
|
.addstart
|
||||||
|
clc
|
||||||
|
lda .endline1+1
|
||||||
|
sta .startline1+1
|
||||||
|
sta .startline2+1
|
||||||
|
adc #$28
|
||||||
|
sta .endline1+1
|
||||||
|
sta .endline2+1
|
||||||
|
lda .endline1+2
|
||||||
|
sta .startline1+2
|
||||||
|
sta .startline2+2
|
||||||
|
adc #0
|
||||||
|
sta .endline1+2
|
||||||
|
sta .endline2+2
|
||||||
|
rts
|
||||||
|
@ -10,6 +10,10 @@ k_slot = "S"
|
|||||||
k_quit = "Q"
|
k_quit = "Q"
|
||||||
k_redo = "2" ;for some side 'B'
|
k_redo = "2" ;for some side 'B'
|
||||||
k_redo_with_ignore = $92; <Ctrl-R>
|
k_redo_with_ignore = $92; <Ctrl-R>
|
||||||
|
k_left = $88
|
||||||
|
k_right = $95
|
||||||
|
k_up = $8B
|
||||||
|
k_down = $8A
|
||||||
; <Esc> will also quit
|
; <Esc> will also quit
|
||||||
|
|
||||||
!source "strings/enid.a"
|
!source "strings/enid.a"
|
||||||
|
@ -49,6 +49,10 @@ OneTimeSetup
|
|||||||
jsr ScanForRAMAndHardDisks; scan for things that look like RAM disks or hard disks
|
jsr ScanForRAMAndHardDisks; scan for things that look like RAM disks or hard disks
|
||||||
jsr LoadPrefs ; load preferences (if available)
|
jsr LoadPrefs ; load preferences (if available)
|
||||||
jsr ThisSlot
|
jsr ThisSlot
|
||||||
|
lda #<CheckCache
|
||||||
|
sta $36
|
||||||
|
lda #>CheckCache
|
||||||
|
sta $37
|
||||||
lda $FE
|
lda $FE
|
||||||
sta $03F2
|
sta $03F2
|
||||||
lda $FF
|
lda $FF
|
||||||
|
@ -50,6 +50,7 @@ for /f "tokens=4,* delims=:(" %%q in ('find "mliparam=" ..\build\out.txt') do ec
|
|||||||
for /f "tokens=4,* delims=:(" %%q in ('find "OpenFile=" ..\build\out.txt') do echo %%q >> ..\build\vars.a
|
for /f "tokens=4,* delims=:(" %%q in ('find "OpenFile=" ..\build\out.txt') do echo %%q >> ..\build\vars.a
|
||||||
for /f "tokens=4,* delims=:(" %%q in ('find "ReadFile=" ..\build\out.txt') do echo %%q >> ..\build\vars.a
|
for /f "tokens=4,* delims=:(" %%q in ('find "ReadFile=" ..\build\out.txt') do echo %%q >> ..\build\vars.a
|
||||||
for /f "tokens=4,* delims=:(" %%q in ('find "CloseFile=" ..\build\out.txt') do echo %%q >> ..\build\vars.a
|
for /f "tokens=4,* delims=:(" %%q in ('find "CloseFile=" ..\build\out.txt') do echo %%q >> ..\build\vars.a
|
||||||
|
for /f "tokens=4,* delims=:(" %%q in ('find "CheckCache=" ..\build\out.txt') do echo %%q > ..\build\vars.a
|
||||||
cd ..\build
|
cd ..\build
|
||||||
%EXOMIZER% raw -q -P23 -T4 -b passport.tmp -o passport.pak
|
%EXOMIZER% raw -q -P23 -T4 -b passport.tmp -o passport.pak
|
||||||
cd ..\src
|
cd ..\src
|
||||||
|
Loading…
Reference in New Issue
Block a user