Merge pull request #18 from peterferrie/master

support Bard's Tale II and BudgeCo PCS
This commit is contained in:
4am 2017-03-05 16:54:25 -05:00 committed by GitHub
commit d4a3f06db2
2 changed files with 41 additions and 7 deletions

View File

@ -60,11 +60,13 @@ _Inspect1a
clc
adc #$06
sta b4bbcompare+1
sec
sbc #$02
sta .x3+1
sta .x4+1
sta callrwts+2
tax
dex
stx .x5+1
dex
stx .x3+1
stx .x4+1
stx callrwts+2
jsr ProtectedDOS ; check for a specific (encrypted)
; bootloader called "Protected DOS"
bcs .notprotdos
@ -96,7 +98,7 @@ _Inspect1a
ldy #$02
jsr CompareMemory
!byte $20,00
bcc +
bcc .x5
;
; Check for RWTS variant that has extra code before
; JSR $B800 e.g. Verb Viper (DLM), Advanced Analogies (Hartley)
@ -106,7 +108,19 @@ _Inspect1a
ldy #$02
jsr CompareMemory
!byte $20,00
bcc +
bcc .x5
jmp UseUniversal ; give up tracing; this RWTS is unsupported
;
; Check for RWTS variant that uses non-standard address for slot
; LDX $1FE8 e.g. Pinball Construction Set (1983)
; we don't like that one
;
.x5 lda #$FF ; check for "LDX $1FE8" at $BE43
ldx #$43
ldy #$03
jsr CompareMemory
!byte $AE,$E8,$1F
bcs +
jmp UseUniversal ; give up tracing; this RWTS is unsupported
+ jmp ADStyle ; use this RWTS to read the disk

View File

@ -266,6 +266,26 @@ _ea
jsr modify
!byte $E0 ;lda from known-zero instead
+ ldy #23
jsr SearchTrack
!byte $03,$4C ;LDI #$00
!byte $07,$E1,$DE ;STA $07e2
!byte $04,$CC,$DC ;JSRA $05cf
!byte $04,$CC,$DC ;JSRA $05cf
!byte $04,$CC,$DC ;JSRA $05cf
!byte $04,$CC,$DC ;JSRA $05cf
!byte $05,$EB,$19 ;LDA $c0e8
!byte $05,$E1,$DE ;LDA $07e2
bcs +
pha
txa
adc #21
tax
pla
ldy #1
jsr modify
!byte $E0 ;lda from known-zero instead
+ ldy #16
jsr SearchTrack
!byte $49,$4E ;EOR #$4E