Use names for more ROM routines and for "reset".
This commit is contained in:
parent
52d1065714
commit
f4947cda68
|
@ -45,18 +45,21 @@ button2 = $c063
|
||||||
;
|
;
|
||||||
; ROM routines
|
; ROM routines
|
||||||
;
|
;
|
||||||
|
prblnk = $f948 ; print 3 blanks
|
||||||
f8rom_init = $fb2f
|
f8rom_init = $fb2f
|
||||||
pwrdup = $fb6f
|
pwrdup = $fb6f ; aka SETPWRC
|
||||||
machine = $fbb3
|
machine = $fbb3
|
||||||
bascalc = $fbc1
|
bascalc = $fbc1
|
||||||
|
bell1 = $fbdd
|
||||||
home = $fc58
|
home = $fc58
|
||||||
wait = $fca8
|
wait = $fca8
|
||||||
crout = $fd8e
|
crout = $fd8e
|
||||||
prbyte = $fdda
|
prbyte = $fdda
|
||||||
cout = $fded
|
cout = $fded
|
||||||
|
idroutine = $fe1f ; GS or not GS
|
||||||
move = $fe2c
|
move = $fe2c
|
||||||
inverse = $fe80
|
inverse = $fe80 ; SETINV
|
||||||
normal = $fe84
|
normal = $fe84 ; SETNORM
|
||||||
setkbd = $fe89
|
setkbd = $fe89
|
||||||
setvid = $fe93
|
setvid = $fe93
|
||||||
outport = $fe95
|
outport = $fe95
|
||||||
|
|
|
@ -27,6 +27,7 @@
|
||||||
sta level
|
sta level
|
||||||
.endmacro
|
.endmacro
|
||||||
|
|
||||||
|
; [TODO] use .p816 instead of invoking this macro
|
||||||
.macro XCE
|
.macro XCE
|
||||||
.byte $fb
|
.byte $fb
|
||||||
.endmacro
|
.endmacro
|
||||||
|
|
|
@ -11,8 +11,8 @@ print_time:
|
||||||
jsr validate_year_number
|
jsr validate_year_number
|
||||||
|
|
||||||
sec
|
sec
|
||||||
jsr $fe1f ;an RTS in not-IIgs
|
jsr idroutine ;an RTS in not-IIgs
|
||||||
bcs :+ ;not IIgs
|
bcs :+ ;not IIgs
|
||||||
lda cfgclock ;Use IIgs clock?
|
lda cfgclock ;Use IIgs clock?
|
||||||
bne doGSclk
|
bne doGSclk
|
||||||
: lda date+1
|
: lda date+1
|
||||||
|
|
|
@ -1,3 +1,6 @@
|
||||||
|
|
||||||
|
rdkey = $fd0c
|
||||||
|
|
||||||
;****************************************
|
;****************************************
|
||||||
;
|
;
|
||||||
; shell/runcmd -- SYS/BIN/S16 file runner
|
; shell/runcmd -- SYS/BIN/S16 file runner
|
||||||
|
@ -7,7 +10,7 @@
|
||||||
run_s16:
|
run_s16:
|
||||||
jsr notspool
|
jsr notspool
|
||||||
sec
|
sec
|
||||||
jsr $fe1f ;IIgs?
|
jsr idroutine ;IIgs?
|
||||||
bcs typerr
|
bcs typerr
|
||||||
lda #>bridge_name
|
lda #>bridge_name
|
||||||
ldy #<bridge_name
|
ldy #<bridge_name
|
||||||
|
@ -101,8 +104,8 @@ copy280:
|
||||||
no_return:
|
no_return:
|
||||||
jsr copy_loader
|
jsr copy_loader
|
||||||
jsr off80
|
jsr off80
|
||||||
jsr $fe89
|
jsr setkbd
|
||||||
jsr $fe93
|
jsr setvid
|
||||||
start_normal
|
start_normal
|
||||||
jsr home
|
jsr home
|
||||||
lda #>cmdpath
|
lda #>cmdpath
|
||||||
|
@ -110,8 +113,8 @@ no_return:
|
||||||
jsr print_path
|
jsr print_path
|
||||||
message_cstr_cr "..."
|
message_cstr_cr "..."
|
||||||
jsr hook_speech
|
jsr hook_speech
|
||||||
lda $3f3
|
lda reset+1
|
||||||
sta $3f4 ; cause Reset to reboot
|
sta reset+2 ; cause Reset to reboot
|
||||||
|
|
||||||
lda #$ff ; disconnect NMI
|
lda #$ff ; disconnect NMI
|
||||||
ldy #$59
|
ldy #$59
|
||||||
|
@ -301,13 +304,13 @@ myqcode:
|
||||||
cld
|
cld
|
||||||
lda $c082
|
lda $c082
|
||||||
sta $c00c
|
sta $c00c
|
||||||
jsr $fe89
|
jsr setkbd
|
||||||
jsr $fe93
|
jsr setvid
|
||||||
start_normal
|
start_normal
|
||||||
jsr f8rom_init
|
jsr f8rom_init
|
||||||
jsr home
|
jsr home
|
||||||
lda $3f3
|
lda reset+1
|
||||||
sta $3f4
|
sta reset+2
|
||||||
; init brkv
|
; init brkv
|
||||||
lda #$fa
|
lda #$fa
|
||||||
sta $3f1
|
sta $3f1
|
||||||
|
@ -357,7 +360,7 @@ qtprobx:
|
||||||
jsr qtone
|
jsr qtone
|
||||||
lda #$e
|
lda #$e
|
||||||
jsr qtone
|
jsr qtone
|
||||||
jsr $fd0c
|
jsr rdkey
|
||||||
jsr home
|
jsr home
|
||||||
jmp rtn_again-myqcode+$1000
|
jmp rtn_again-myqcode+$1000
|
||||||
|
|
||||||
|
@ -444,9 +447,9 @@ lderr1: lda lderrmsg-loader+$1800,x
|
||||||
bpl lderr1
|
bpl lderr1
|
||||||
pla
|
pla
|
||||||
jsr prbyte
|
jsr prbyte
|
||||||
lda $3f3
|
lda reset+1
|
||||||
sta $3f4
|
sta reset+2
|
||||||
jsr $fd0c
|
jsr rdkey
|
||||||
CALLOS mli_bye, ldbye-loader+$1800
|
CALLOS mli_bye, ldbye-loader+$1800
|
||||||
jmp ($fffc)
|
jmp ($fffc)
|
||||||
ldbye: .byte 4,0,0,0,0,0,0
|
ldbye: .byte 4,0,0,0,0,0,0
|
||||||
|
|
|
@ -97,7 +97,7 @@ two_e: ror two_e_flag
|
||||||
no80xc: txa
|
no80xc: txa
|
||||||
pha
|
pha
|
||||||
sec
|
sec
|
||||||
jsr $fe1f ;Contains RTS in not-IIgs
|
jsr idroutine ;Contains RTS in not-IIgs
|
||||||
pla
|
pla
|
||||||
bcs no_IIgs
|
bcs no_IIgs
|
||||||
ora #%00001000 ;IIgs
|
ora #%00001000 ;IIgs
|
||||||
|
|
|
@ -67,7 +67,7 @@ find_mydir:
|
||||||
|
|
||||||
lda $281
|
lda $281
|
||||||
ora #%10000000
|
ora #%10000000
|
||||||
cmp #$80+'/'
|
cmp #_'/'
|
||||||
bne fdir_partial
|
bne fdir_partial
|
||||||
lda #0
|
lda #0
|
||||||
sta mypath
|
sta mypath
|
||||||
|
@ -96,7 +96,7 @@ strip_mp:
|
||||||
beq :+
|
beq :+
|
||||||
lda mypath,x
|
lda mypath,x
|
||||||
ora #%10000000
|
ora #%10000000
|
||||||
cmp #$80+'/'
|
cmp #_'/'
|
||||||
bne strip_mp
|
bne strip_mp
|
||||||
: stx mypath
|
: stx mypath
|
||||||
stx mydir_len
|
stx mydir_len
|
||||||
|
@ -174,7 +174,7 @@ pe_fnd: inc p
|
||||||
jmp crout
|
jmp crout
|
||||||
|
|
||||||
pe_notfnd:
|
pe_notfnd:
|
||||||
lda #$80+'$'
|
lda #_'$'
|
||||||
jsr cout
|
jsr cout
|
||||||
lda errcode
|
lda errcode
|
||||||
jsr prbyte
|
jsr prbyte
|
||||||
|
@ -189,14 +189,14 @@ bell:
|
||||||
lda cfgbell
|
lda cfgbell
|
||||||
bne sysbell
|
bne sysbell
|
||||||
ldy #32
|
ldy #32
|
||||||
bell1: lda #2
|
: lda #2
|
||||||
jsr wait
|
jsr wait
|
||||||
sta spkr
|
sta spkr
|
||||||
lda #$24
|
lda #$24
|
||||||
jsr wait
|
jsr wait
|
||||||
sta spkr
|
sta spkr
|
||||||
dey
|
dey
|
||||||
bne bell1
|
bne :-
|
||||||
rts
|
rts
|
||||||
|
|
||||||
fix_stack:
|
fix_stack:
|
||||||
|
|
|
@ -1846,8 +1846,8 @@ go_quit:
|
||||||
sta $3fd
|
sta $3fd
|
||||||
sty $3fc
|
sty $3fc
|
||||||
|
|
||||||
lda $3f3
|
lda reset+1
|
||||||
sta $3f4
|
sta reset+2
|
||||||
; quitting to S16?
|
; quitting to S16?
|
||||||
bit s16_flag
|
bit s16_flag
|
||||||
bmi quit_s16
|
bmi quit_s16
|
||||||
|
@ -1883,7 +1883,7 @@ go_boot:
|
||||||
; If IIgs, do what the ProDOS-16 PQUIT thinger does
|
; If IIgs, do what the ProDOS-16 PQUIT thinger does
|
||||||
; on 'Reboot system'
|
; on 'Reboot system'
|
||||||
sec
|
sec
|
||||||
jsr $fe1f ;CLC on IIgs
|
jsr idroutine ;CLC on IIgs
|
||||||
bcs rb_NotGS
|
bcs rb_NotGS
|
||||||
sei
|
sei
|
||||||
lda #0
|
lda #0
|
||||||
|
@ -5910,8 +5910,8 @@ off80:
|
||||||
.if IsDavex2
|
.if IsDavex2
|
||||||
jsr mess
|
jsr mess
|
||||||
.byte _'U'-ctrl,_'T'-ctrl,_'A',_'1',0 ; for an old 80-column card on Apple II+?
|
.byte _'U'-ctrl,_'T'-ctrl,_'A',_'1',0 ; for an old 80-column card on Apple II+?
|
||||||
jsr $fe89
|
jsr setkbd
|
||||||
jsr $fe93
|
jsr setvid
|
||||||
jsr hook_speech
|
jsr hook_speech
|
||||||
.else ; isDavex3
|
.else ; isDavex3
|
||||||
jsr on40
|
jsr on40
|
||||||
|
|
|
@ -33,11 +33,13 @@
|
||||||
.segment "CODE_2000"
|
.segment "CODE_2000"
|
||||||
|
|
||||||
orgadr = $2000
|
orgadr = $2000
|
||||||
; sys
|
|
||||||
; org orgadr
|
; org orgadr
|
||||||
.include "Common/2/Apple.Globals2.asm"
|
.include "Common/2/Apple.Globals2.asm"
|
||||||
.include "Common/2/Mli.globals2.asm"
|
.include "Common/2/Mli.globals2.asm"
|
||||||
;
|
|
||||||
|
rdkey = $fd0c
|
||||||
|
|
||||||
|
.define _(char) char | $80
|
||||||
|
|
||||||
;*********************************************
|
;*********************************************
|
||||||
filebuff = $bb00
|
filebuff = $bb00
|
||||||
|
@ -54,27 +56,27 @@ thePath: .byte 0,0,0,0,0,0,0,0,0,0 ;10 zeroes
|
||||||
.byte 0,0,0,0,0,0,0,0,0,0 ;10 zeroes
|
.byte 0,0,0,0,0,0,0,0,0,0 ;10 zeroes
|
||||||
.byte 0,0,0,0,0,0,0,0,0,0 ;10 zeroes
|
.byte 0,0,0,0,0,0,0,0,0,0 ;10 zeroes
|
||||||
image2 = *
|
image2 = *
|
||||||
lda $3f3
|
lda reset+1
|
||||||
sta $3f4
|
sta reset+2 ; make reset reboot
|
||||||
jsr $fe84
|
jsr normal
|
||||||
jsr $fb2f
|
jsr f8rom_init
|
||||||
jsr $fe89
|
jsr setkbd
|
||||||
jsr $fe93
|
jsr setvid
|
||||||
jsr $fc58
|
jsr home
|
||||||
lda $c000
|
lda $c000
|
||||||
cmp #$b8
|
cmp #_'8'
|
||||||
beq yes80
|
beq yes80
|
||||||
cmp #$b3 ;"3"?
|
cmp #_'3'
|
||||||
bne no80colmn
|
bne no80colmn
|
||||||
yes80: lda #$c3
|
yes80: lda #$c3
|
||||||
ldy #0
|
ldy #0
|
||||||
sta $37
|
sta $37
|
||||||
sty $36
|
sty $36
|
||||||
sta $c010 ;clear kbd
|
sta kbdstrb ;clear kbd
|
||||||
jsr $fd8e ;crout
|
jsr crout
|
||||||
no80colmn = *
|
no80colmn = *
|
||||||
lda $3f3
|
lda reset+1
|
||||||
sta $3f4
|
sta reset+2
|
||||||
lda #0
|
lda #0
|
||||||
sta level
|
sta level
|
||||||
ldx #0
|
ldx #0
|
||||||
|
@ -88,12 +90,12 @@ copyme: lda $2000,x
|
||||||
bne copyme
|
bne copyme
|
||||||
jmp continue+diff1
|
jmp continue+diff1
|
||||||
i_error: pha
|
i_error: pha
|
||||||
jsr $fc58
|
jsr home
|
||||||
pla
|
pla
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr $fbdd
|
jsr bell1
|
||||||
jsr $fbdd
|
jsr bell1
|
||||||
jsr $fd0c
|
jsr rdkey
|
||||||
OutaHere = *
|
OutaHere = *
|
||||||
jsr mli
|
jsr mli
|
||||||
.byte mli_bye
|
.byte mli_bye
|
||||||
|
|
|
@ -45,7 +45,6 @@
|
||||||
|
|
||||||
orgadr = $9800
|
orgadr = $9800
|
||||||
; org orgadr
|
; org orgadr
|
||||||
;prbyte = $fdda
|
|
||||||
;
|
;
|
||||||
myversion = $09
|
myversion = $09
|
||||||
minversion = $11
|
minversion = $11
|
||||||
|
|
|
@ -115,37 +115,29 @@ systemtype:
|
||||||
asc "System: "
|
asc "System: "
|
||||||
.byte 0
|
.byte 0
|
||||||
sec
|
sec
|
||||||
jsr $fe1f
|
jsr idroutine
|
||||||
bcc st_gs
|
bcc st_gs
|
||||||
jmp IdentNotGS
|
jmp IdentNotGS
|
||||||
;
|
;
|
||||||
st_gs: jsr xmess
|
st_gs: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Apple IIgs, ROM version $"
|
asc "Apple IIgs, ROM version $"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
clc
|
clc
|
||||||
|
; [TODO] Use .p816
|
||||||
.byte b_xce,b_rep,$30
|
.byte b_xce,b_rep,$30
|
||||||
jsr $fe1f
|
jsr idroutine
|
||||||
.byte b_phy
|
.byte b_phy
|
||||||
sec
|
sec
|
||||||
.byte b_xce
|
.byte b_xce
|
||||||
pla
|
pla
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc " (Machine ID=$"
|
asc " (Machine ID=$"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
pla
|
pla
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ")"
|
asc ")"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
jsr my_crout
|
jsr my_crout
|
||||||
clc
|
clc
|
||||||
|
@ -163,10 +155,7 @@ st_gs: jsr xmess
|
||||||
sec
|
sec
|
||||||
.byte b_xce
|
.byte b_xce
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Total RAM = "
|
asc "Total RAM = "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
ldx #10
|
ldx #10
|
||||||
div1K: lsr totalmem+3
|
div1K: lsr totalmem+3
|
||||||
|
@ -213,29 +202,20 @@ not_2p3:
|
||||||
cmp #$ea
|
cmp #$ea
|
||||||
bne Not2e1
|
bne Not2e1
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Apple IIe (unenhanced)"
|
asc "Apple IIe (unenhanced)"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
Not2e1: cmp #$e0
|
Not2e1: cmp #$e0
|
||||||
bne not2e2
|
bne not2e2
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Apple IIe (enhanced)"
|
asc "Apple IIe (enhanced)"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
not2e2:
|
not2e2:
|
||||||
cmp #$e1
|
cmp #$e1
|
||||||
bne notDbgr
|
bne notDbgr
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Apple IIe (special ROMs)"
|
asc "Apple IIe (special ROMs)"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
notDbgr:
|
notDbgr:
|
||||||
|
@ -246,10 +226,7 @@ notDbgr:
|
||||||
cmp #5
|
cmp #5
|
||||||
beq IIcPlus
|
beq IIcPlus
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Apple IIc, version "
|
asc "Apple IIc, version "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda $fbbf
|
lda $fbbf
|
||||||
cmp #$ff
|
cmp #$ff
|
||||||
|
@ -262,45 +239,28 @@ notDbgr:
|
||||||
beq TwoC4
|
beq TwoC4
|
||||||
unkn0: jmp unknown
|
unkn0: jmp unknown
|
||||||
IIcPlus: jsr xmess
|
IIcPlus: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Apple IIc Plus"
|
asc "Apple IIc Plus"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
TwoC1: jsr xmess
|
TwoC1: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "1"
|
asc "1"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
TwoC2: jsr xmess
|
TwoC2: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "2: 3.5"
|
asc "2: 3.5"
|
||||||
|
|
||||||
.byte $a2
|
.byte $a2
|
||||||
|
|
||||||
|
|
||||||
asc " disk ROM"
|
asc " disk ROM"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
TwoC3: jsr xmess
|
TwoC3: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "3: Memory Expandable"
|
asc "3: Memory Expandable"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
TwoC4: jsr xmess
|
TwoC4: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "4: Revised Mem. Expandable"
|
asc "4: Revised Mem. Expandable"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
|
|
||||||
;****************************************************
|
;****************************************************
|
||||||
scanslots:
|
scanslots:
|
||||||
lda #1
|
lda #1
|
||||||
|
@ -313,19 +273,13 @@ ss1: jsr scan1
|
||||||
rts
|
rts
|
||||||
;
|
;
|
||||||
scan1: jsr xmess
|
scan1: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Slot "
|
asc "Slot "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda slot
|
lda slot
|
||||||
ora #'0'+$80
|
ora #_'0'
|
||||||
jsr cout
|
jsr cout
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ": "
|
asc ": "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda slot
|
lda slot
|
||||||
ora #$c0
|
ora #$c0
|
||||||
|
@ -334,9 +288,8 @@ scan1: jsr xmess
|
||||||
sta rom
|
sta rom
|
||||||
jsr PrSlotDesc
|
jsr PrSlotDesc
|
||||||
jsr my_crout
|
jsr my_crout
|
||||||
jsr MaybeATLK
|
jmp MaybeATLK
|
||||||
rts
|
|
||||||
;
|
|
||||||
ATLKsig: asc "ATLK"
|
ATLKsig: asc "ATLK"
|
||||||
.byte 0
|
.byte 0
|
||||||
MaybeATLK:
|
MaybeATLK:
|
||||||
|
@ -348,10 +301,7 @@ at_chk: lda (rom),y
|
||||||
cpy #$FE
|
cpy #$FE
|
||||||
bcc at_chk
|
bcc at_chk
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc " AppleTalk card; version="
|
asc " AppleTalk card; version="
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
ldy #$fe
|
ldy #$fe
|
||||||
lda (rom),y
|
lda (rom),y
|
||||||
|
@ -377,15 +327,12 @@ prnib: and #$0F
|
||||||
adc #6
|
adc #6
|
||||||
prn_dig: adc #$B0
|
prn_dig: adc #$B0
|
||||||
jmp cout
|
jmp cout
|
||||||
;
|
|
||||||
SlotEmpty: jsr xmess
|
SlotEmpty: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "empty"
|
asc "empty"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
;
|
|
||||||
notPasc0: jmp notPasc
|
notPasc0: jmp notPasc
|
||||||
PrSlotDesc:
|
PrSlotDesc:
|
||||||
ldy slot
|
ldy slot
|
||||||
|
@ -408,19 +355,13 @@ PrSlotDesc:
|
||||||
lda (rom),y
|
lda (rom),y
|
||||||
pha
|
pha
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Pascal ID = $"
|
asc "Pascal ID = $"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
pla
|
pla
|
||||||
pha
|
pha
|
||||||
jsr prbyte
|
jsr prbyte
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ": "
|
asc ": "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
pla
|
pla
|
||||||
lsr a
|
lsr a
|
||||||
|
@ -439,31 +380,19 @@ PascTbl:
|
||||||
.addr ps8-1,ps9-1,ps10-1,ps0-1,ps0-1,ps0-1,ps0-1,ps0-1
|
.addr ps8-1,ps9-1,ps10-1,ps0-1,ps0-1,ps0-1,ps0-1,ps0-1
|
||||||
;
|
;
|
||||||
ps0: jsr xmess
|
ps0: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "???"
|
asc "???"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
ps1: jsr xmess
|
ps1: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "printer"
|
asc "printer"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
ps2: jsr xmess
|
ps2: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "joystick/mouse"
|
asc "joystick/mouse"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
ps3: jsr xmess
|
ps3: jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "serial or parallel card"
|
asc "serial or parallel card"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
ps4: jsr xmess
|
ps4: jsr xmess
|
||||||
|
@ -614,16 +543,13 @@ desNotSP: inc slot
|
||||||
;
|
;
|
||||||
Descr1SP:
|
Descr1SP:
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "SmartPort controller found in slot "
|
asc "SmartPort controller found in slot "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda slot
|
lda slot
|
||||||
ora #'0'+$80
|
ora #_'0'
|
||||||
jsr cout
|
jsr cout
|
||||||
jsr xmess
|
jsr xmess
|
||||||
.byte $80+'.',cr,0
|
.byte _'.',cr,0
|
||||||
; find the entry point
|
; find the entry point
|
||||||
ldy #$ff
|
ldy #$ff
|
||||||
lda (rom),y
|
lda (rom),y
|
||||||
|
@ -647,10 +573,7 @@ SpStatus:
|
||||||
jsr CallSP
|
jsr CallSP
|
||||||
bcs staterr
|
bcs staterr
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Number of devices: "
|
asc "Number of devices: "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda #0
|
lda #0
|
||||||
ldy NumDevs
|
ldy NumDevs
|
||||||
|
@ -680,10 +603,7 @@ es_done: rts
|
||||||
;
|
;
|
||||||
StatOneUnit:
|
StatOneUnit:
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "Unit #"
|
asc "Unit #"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda Unit
|
lda Unit
|
||||||
sta UnitNum
|
sta UnitNum
|
||||||
|
@ -691,10 +611,7 @@ StatOneUnit:
|
||||||
lda #0
|
lda #0
|
||||||
jsr xprdec_2
|
jsr xprdec_2
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ": "
|
asc ": "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
ldx #sptSTATUS
|
ldx #sptSTATUS
|
||||||
lda #>Stat1parms
|
lda #>Stat1parms
|
||||||
|
@ -709,10 +626,7 @@ statok:
|
||||||
jsr my_crout
|
jsr my_crout
|
||||||
;
|
;
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc " Blocks: "
|
asc " Blocks: "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda NumBlocks+2
|
lda NumBlocks+2
|
||||||
ldx NumBlocks+1
|
ldx NumBlocks+1
|
||||||
|
@ -724,10 +638,7 @@ statok:
|
||||||
jsr my_crout
|
jsr my_crout
|
||||||
;
|
;
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc " Device name: "
|
asc " Device name: "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
ldx #0
|
ldx #0
|
||||||
ldy NameLen
|
ldy NameLen
|
||||||
|
@ -741,48 +652,32 @@ prname1: lda NameLen+1,x
|
||||||
;
|
;
|
||||||
jsr PrintType
|
jsr PrintType
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ", subtype=$"
|
asc ", subtype=$"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda DevSubtype
|
lda DevSubtype
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ", version=$"
|
asc ", version=$"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda UnitVersion+1
|
lda UnitVersion+1
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda UnitVersion
|
lda UnitVersion
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr my_crout
|
jmp my_crout
|
||||||
rts
|
|
||||||
;
|
;
|
||||||
PrintType:
|
PrintType:
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc " Type = "
|
asc " Type = "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda #0
|
lda #0
|
||||||
ldy DevType
|
ldy DevType
|
||||||
jsr xprdec_2
|
jsr xprdec_2
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc " ("
|
asc " ("
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
jsr prtype2
|
jsr prtype2
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ")"
|
asc ")"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
@ -803,27 +698,18 @@ PrintStatByte:
|
||||||
sta scratch
|
sta scratch
|
||||||
jsr sb7
|
jsr sb7
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc ", "
|
asc ", "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
asl scratch
|
asl scratch
|
||||||
asl scratch
|
asl scratch
|
||||||
jsr ChkNot
|
jsr ChkNot
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "online, "
|
asc "online, "
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
asl scratch
|
asl scratch
|
||||||
jsr ChkNot
|
jsr ChkNot
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
asc "write protected"
|
asc "write protected"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
;
|
;
|
||||||
|
|
|
@ -175,12 +175,12 @@ DoTheOffset = *
|
||||||
jsr cout
|
jsr cout
|
||||||
lda offset+2
|
lda offset+2
|
||||||
;beq dto_1
|
;beq dto_1
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
dto_1: lda offset+1
|
dto_1: lda offset+1
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda offset
|
lda offset
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda #':'+$80
|
lda #_':'
|
||||||
jsr cout
|
jsr cout
|
||||||
lda #Space
|
lda #Space
|
||||||
jsr cout
|
jsr cout
|
||||||
|
@ -218,7 +218,7 @@ DoTheHex = *
|
||||||
MoreHex: cpx count
|
MoreHex: cpx count
|
||||||
bcs Blanks
|
bcs Blanks
|
||||||
lda data,x
|
lda data,x
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda #Space
|
lda #Space
|
||||||
jsr cout
|
jsr cout
|
||||||
inx
|
inx
|
||||||
|
|
|
@ -249,9 +249,9 @@ detail: lda #'d'+$80
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda catbuff+$20
|
lda catbuff+$20
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda catbuff+$1f
|
lda catbuff+$1f
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
|
|
||||||
|
@ -308,7 +308,7 @@ plainpath:
|
||||||
ldy #<catbuff
|
ldy #<catbuff
|
||||||
jmp xprint_path
|
jmp xprint_path
|
||||||
|
|
||||||
abort0: sta $c010
|
abort0: sta kbdstrb
|
||||||
abort: lda #der_abort
|
abort: lda #der_abort
|
||||||
jmp xProDOS_err
|
jmp xProDOS_err
|
||||||
|
|
||||||
|
|
|
@ -72,7 +72,7 @@ badslot:
|
||||||
;*********************************************
|
;*********************************************
|
||||||
start: sty slotnum
|
start: sty slotnum
|
||||||
sec
|
sec
|
||||||
jsr $fe1f
|
jsr idroutine
|
||||||
bcc is_gs
|
bcc is_gs
|
||||||
jsr xmess
|
jsr xmess
|
||||||
.byte cr
|
.byte cr
|
||||||
|
@ -206,9 +206,9 @@ nh_error:
|
||||||
asc "*** error allocating memory: $"
|
asc "*** error allocating memory: $"
|
||||||
.byte 0
|
.byte 0
|
||||||
lda error2+1
|
lda error2+1
|
||||||
jsr $fdda ;PRBYTE
|
jsr prbyte
|
||||||
lda error2
|
lda error2
|
||||||
jsr $fdda ;PRBYTE
|
jsr prbyte
|
||||||
jsr crout
|
jsr crout
|
||||||
jmp my_xerr
|
jmp my_xerr
|
||||||
|
|
||||||
|
@ -248,22 +248,22 @@ PrintBuffInfo:
|
||||||
asc ", address=$"
|
asc ", address=$"
|
||||||
.byte 0
|
.byte 0
|
||||||
lda buffadr+3
|
lda buffadr+3
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda buffadr+2
|
lda buffadr+2
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda buffadr+1
|
lda buffadr+1
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda buffadr
|
lda buffadr
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jmp crout
|
jmp crout
|
||||||
error: jsr xmess
|
error: jsr xmess
|
||||||
.byte cr
|
.byte cr
|
||||||
asc "*** extended call returned error $"
|
asc "*** extended call returned error $"
|
||||||
.byte 0
|
.byte 0
|
||||||
lda result+1
|
lda result+1
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda result
|
lda result
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr crout
|
jsr crout
|
||||||
jmp my_xerr
|
jmp my_xerr
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@ OrgAdr = $9000 ;change as necessary (end below $B000)
|
||||||
BigBuffer = $A000
|
BigBuffer = $A000
|
||||||
|
|
||||||
MyVersion = $05
|
MyVersion = $05
|
||||||
MinVersion = $11
|
MinVersion = $14
|
||||||
;*********************************************
|
;*********************************************
|
||||||
rts
|
rts
|
||||||
.byte $ee,$ee
|
.byte $ee,$ee
|
||||||
|
@ -45,14 +45,14 @@ MinVersion = $11
|
||||||
.addr start
|
.addr start
|
||||||
.byte 0,0,0,0
|
.byte 0,0,0,0
|
||||||
; parameters here
|
; parameters here
|
||||||
.byte $80+'l',t_nil
|
.byte 'l',t_nil
|
||||||
.byte $80+'i',t_nil
|
.byte 'i',t_nil
|
||||||
.byte $80+'z',t_string
|
.byte 'z',t_string
|
||||||
.byte $80+'p',t_nil
|
.byte 'p',t_nil
|
||||||
.byte $80+'k',t_string
|
.byte 'k',t_string
|
||||||
.byte $80+'s',t_nil
|
.byte 's',t_nil
|
||||||
.byte $80+'n',t_string
|
.byte 'n',t_string
|
||||||
.byte $80+'r',t_yesno
|
.byte 'r',t_yesno
|
||||||
.byte 0,0
|
.byte 0,0
|
||||||
descr: pstr "AppleTalk experimental"
|
descr: pstr "AppleTalk experimental"
|
||||||
|
|
||||||
|
@ -337,9 +337,8 @@ DoPrinter:
|
||||||
jsr xprint_path
|
jsr xprint_path
|
||||||
jsr crout
|
jsr crout
|
||||||
lda dirFlag
|
lda dirFlag
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr crout
|
jmp crout
|
||||||
rts
|
|
||||||
|
|
||||||
PrinterP:
|
PrinterP:
|
||||||
.byte 0
|
.byte 0
|
||||||
|
@ -355,7 +354,7 @@ DoLookup:
|
||||||
lda #'='
|
lda #'='
|
||||||
sta pagebuff+1
|
sta pagebuff+1
|
||||||
|
|
||||||
lda #'k'+$80
|
lda #'k'
|
||||||
jsr xgetparm_ch
|
jsr xgetparm_ch
|
||||||
bcc use_Kind
|
bcc use_Kind
|
||||||
lda #>Wildcard
|
lda #>Wildcard
|
||||||
|
@ -370,7 +369,7 @@ copyKind:
|
||||||
dey
|
dey
|
||||||
bpl copyKind
|
bpl copyKind
|
||||||
|
|
||||||
lda #'z'+$80
|
lda #'z'
|
||||||
jsr xgetparm_ch
|
jsr xgetparm_ch
|
||||||
bcs UseMyZone
|
bcs UseMyZone
|
||||||
sta str+1
|
sta str+1
|
||||||
|
@ -397,9 +396,7 @@ copyZ: lda (str),y
|
||||||
.addr LookupP
|
.addr LookupP
|
||||||
|
|
||||||
jsr xmess
|
jsr xmess
|
||||||
|
|
||||||
asc "Number of matches: $"
|
asc "Number of matches: $"
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
lda lkupCount
|
lda lkupCount
|
||||||
jsr prbyte
|
jsr prbyte
|
||||||
|
|
|
@ -24,11 +24,10 @@
|
||||||
OrgAdr = $A000 ;change as necessary (end below $B000)
|
OrgAdr = $A000 ;change as necessary (end below $B000)
|
||||||
; org OrgAdr
|
; org OrgAdr
|
||||||
|
|
||||||
PrByte = $fdda
|
|
||||||
Space = $A0
|
Space = $A0
|
||||||
;
|
;
|
||||||
MyVersion = $10
|
MyVersion = $11
|
||||||
MinVersion = $11
|
MinVersion = $14
|
||||||
;*********************************************
|
;*********************************************
|
||||||
rts
|
rts
|
||||||
.byte $ee,$ee
|
.byte $ee,$ee
|
||||||
|
@ -40,9 +39,9 @@ MinVersion = $11
|
||||||
.byte 0,0,0,0
|
.byte 0,0,0,0
|
||||||
; parameters here
|
; parameters here
|
||||||
.byte 0,t_wildpath
|
.byte 0,t_wildpath
|
||||||
.byte $80+'l',t_int1 ;minimum length
|
.byte 'l',t_int1 ;minimum length
|
||||||
.byte $80+'o',t_nil ;offsets
|
.byte 'o',t_nil ;offsets
|
||||||
.byte $80+'m',t_nil ;allow mixed bit 7
|
.byte 'm',t_nil ;allow mixed bit 7
|
||||||
.byte 0,0
|
.byte 0,0
|
||||||
descr: pstr "find printable strings in files"
|
descr: pstr "find printable strings in files"
|
||||||
|
|
||||||
|
@ -69,7 +68,7 @@ start: nop ;don't let shell print wildcards
|
||||||
ldy open_path
|
ldy open_path
|
||||||
jsr xprint_path
|
jsr xprint_path
|
||||||
jsr xmess
|
jsr xmess
|
||||||
.byte $80+':',cr,0
|
.byte _':',cr,0
|
||||||
;
|
;
|
||||||
; Open the source file
|
; Open the source file
|
||||||
;
|
;
|
||||||
|
@ -272,12 +271,12 @@ DoTheOffset = *
|
||||||
lda #'$'+$80
|
lda #'$'+$80
|
||||||
jsr cout
|
jsr cout
|
||||||
lda offset+2
|
lda offset+2
|
||||||
jsr PrByte
|
jsr prbyte
|
||||||
lda offset+1
|
lda offset+1
|
||||||
jsr PrByte
|
jsr prbyte
|
||||||
lda offset
|
lda offset
|
||||||
jsr PrByte
|
jsr prbyte
|
||||||
lda #':'+$80
|
lda #_':'
|
||||||
jsr cout
|
jsr cout
|
||||||
lda #Space
|
lda #Space
|
||||||
jsr cout
|
jsr cout
|
||||||
|
|
|
@ -52,6 +52,7 @@
|
||||||
.include "Common/2/Mli.globals2.asm"
|
.include "Common/2/Mli.globals2.asm"
|
||||||
.include "Common/Macros.asm"
|
.include "Common/Macros.asm"
|
||||||
|
|
||||||
|
rdkey = $fd0c
|
||||||
|
|
||||||
.segment "CODE_A000"
|
.segment "CODE_A000"
|
||||||
|
|
||||||
|
@ -404,12 +405,12 @@ copyme: lda $2000,x
|
||||||
bne copyme
|
bne copyme
|
||||||
jmp continue ; +diff1
|
jmp continue ; +diff1
|
||||||
i_error: pha
|
i_error: pha
|
||||||
jsr $fc58
|
jsr home
|
||||||
pla
|
pla
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
jsr $fbdd
|
jsr bell1
|
||||||
jsr $fbdd
|
jsr bell1
|
||||||
jsr $fd0c
|
jsr rdkey
|
||||||
jsr mli
|
jsr mli
|
||||||
.byte mli_bye
|
.byte mli_bye
|
||||||
.addr bye_parms ; +diff1
|
.addr bye_parms ; +diff1
|
||||||
|
|
|
@ -449,9 +449,9 @@ wait_ac2: jsr inchar
|
||||||
debugByte:
|
debugByte:
|
||||||
bit Debug
|
bit Debug
|
||||||
bpl dbbx
|
bpl dbbx
|
||||||
jsr $fdda
|
jsr prbyte
|
||||||
lda #$a0
|
lda #_' '
|
||||||
jsr $fded
|
jsr cout
|
||||||
dbbx: rts
|
dbbx: rts
|
||||||
;
|
;
|
||||||
print_status:
|
print_status:
|
||||||
|
@ -463,10 +463,7 @@ print_status:
|
||||||
rts
|
rts
|
||||||
stat1: jsr xmess
|
stat1: jsr xmess
|
||||||
.byte cr
|
.byte cr
|
||||||
|
|
||||||
|
|
||||||
asc_hi "S=1"
|
asc_hi "S=1"
|
||||||
|
|
||||||
.byte cr,0
|
.byte cr,0
|
||||||
rts
|
rts
|
||||||
;
|
;
|
||||||
|
|
Loading…
Reference in New Issue