mirror of
https://github.com/a2-4am/anti-m.git
synced 2024-06-02 00:41:34 +00:00
support Sensible Speller (#30)
This commit is contained in:
parent
6008129f5e
commit
009434aca3
|
@ -207,10 +207,13 @@ Tracer13
|
||||||
bcc BeginTheBoot13
|
bcc BeginTheBoot13
|
||||||
jsr IDBoot13
|
jsr IDBoot13
|
||||||
bcc BeginTheBoot13
|
bcc BeginTheBoot13
|
||||||
|
jsr IDSensible
|
||||||
|
bcc BeginTheBoot13
|
||||||
; [execution falls through here]
|
; [execution falls through here]
|
||||||
; [and runs anyway]
|
; [and runs anyway]
|
||||||
|
|
||||||
BeginTheBoot13
|
BeginTheBoot13
|
||||||
|
ldx #$B3 ;Sensible Software fix
|
||||||
ldy $0300
|
ldy $0300
|
||||||
jmp $0301
|
jmp $0301
|
||||||
|
|
||||||
|
@ -255,7 +258,7 @@ StringTable
|
||||||
!word @mainmenu
|
!word @mainmenu
|
||||||
|
|
||||||
@header
|
@header
|
||||||
!text "Anti-M v1.7 by 4am 2020-08-11"
|
!text "Anti-M v1.8pre by 4am 2020-10-15"
|
||||||
!text "________________________________________",$8D
|
!text "________________________________________",$8D
|
||||||
!text $8D,$8D,$8D,$8D,$8D,$8D,$8D,$8D,$00
|
!text $8D,$8D,$8D,$8D,$8D,$8D,$8D,$8D,$00
|
||||||
@mainmenu
|
@mainmenu
|
||||||
|
@ -273,3 +276,4 @@ StringTable
|
||||||
!src "src/idprogame.a"
|
!src "src/idprogame.a"
|
||||||
!src "src/idpersonal.a"
|
!src "src/idpersonal.a"
|
||||||
!src "src/idalphabeta.a"
|
!src "src/idalphabeta.a"
|
||||||
|
!src "src/idsensible.a"
|
||||||
|
|
|
@ -10,6 +10,11 @@ IDBoot
|
||||||
ldy #$5C
|
ldy #$5C
|
||||||
sty @patch+1
|
sty @patch+1
|
||||||
bcc +
|
bcc +
|
||||||
|
|
||||||
|
; we found D5 AA 96 T00S00 D5 AA ..
|
||||||
|
; check for weird Sensible Software 13-sector disk with D5 AA 96 sectors
|
||||||
|
cmp #$B5
|
||||||
|
beq ++
|
||||||
lda #$90
|
lda #$90
|
||||||
sta $867B
|
sta $867B
|
||||||
|
|
||||||
|
@ -29,7 +34,7 @@ IDBoot
|
||||||
bne @patch
|
bne @patch
|
||||||
|
|
||||||
; and loop anyway in case it's a hybrid disk and we missed the D5 AA 96
|
; and loop anyway in case it's a hybrid disk and we missed the D5 AA 96
|
||||||
dec @retries
|
++ dec @retries
|
||||||
bne @patch
|
bne @patch
|
||||||
|
|
||||||
; found nothing but D5 AA B5, proceed as 13-sector
|
; found nothing but D5 AA B5, proceed as 13-sector
|
||||||
|
|
42
src/idsensible.a
Normal file
42
src/idsensible.a
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
; Sensible Software tracer
|
||||||
|
; written by qkumba
|
||||||
|
;
|
||||||
|
; tested on
|
||||||
|
; - Sensible Speller
|
||||||
|
;
|
||||||
|
IDSensible
|
||||||
|
lda #3
|
||||||
|
ldx #1
|
||||||
|
ldy #6
|
||||||
|
jsr CompareMemory
|
||||||
|
!byte $29,$00 ;AND #$00
|
||||||
|
!byte $85,$3A ;STA $3A
|
||||||
|
!byte $9A ;TXS
|
||||||
|
!byte $08 ;PHP
|
||||||
|
bcs @exit
|
||||||
|
|
||||||
|
; patch encoded code to regain control after it loads sectors into $400+
|
||||||
|
lda #(<@pcallback) xor $99
|
||||||
|
sta $03A3
|
||||||
|
lda #(>@pcallback) xor $99
|
||||||
|
sta $03A4
|
||||||
|
|
||||||
|
@exit
|
||||||
|
rts
|
||||||
|
|
||||||
|
@pcallback
|
||||||
|
!word @callback
|
||||||
|
|
||||||
|
@callback
|
||||||
|
|
||||||
|
; disable ROM checksum-failure branching
|
||||||
|
lda $6CE
|
||||||
|
cmp #$4C
|
||||||
|
bne +
|
||||||
|
lda #$60
|
||||||
|
sta $6CE
|
||||||
|
|
||||||
|
; and nibble check which fails occasionally
|
||||||
|
lda #$2C
|
||||||
|
sta $79B
|
||||||
|
+ jmp ($0026)
|
Loading…
Reference in New Issue
Block a user