2017-09-07 13:52:27 +00:00
|
|
|
;-------------------------------
|
|
|
|
; IDRDOS
|
|
|
|
; identify RDOS 16-sector bootloader
|
|
|
|
;
|
|
|
|
; in: $0800..$08FF contains T00,S00
|
|
|
|
; first page of track buffer also contains T00,S00
|
|
|
|
; out: C clear if RDOS 16-sector bootloader found
|
|
|
|
; C set otherwise
|
|
|
|
; all registers clobbered
|
|
|
|
; all other flags clobbered
|
|
|
|
;-------------------------------
|
|
|
|
!zone {
|
|
|
|
IDRDOS
|
|
|
|
lda #$00
|
2019-04-16 05:39:12 +00:00
|
|
|
tax
|
2017-09-07 13:52:27 +00:00
|
|
|
ldy #$0E
|
|
|
|
jsr compare ; if T00,S00,$00 ==
|
|
|
|
!byte $01
|
|
|
|
!byte $A9,$60 ; LDA #$60
|
|
|
|
!byte $8D,$01,$08; STA $0801
|
|
|
|
!byte $A2,$00 ; LDX #$00
|
|
|
|
!byte $A0,$1F ; LDY #$1F
|
|
|
|
!byte $B9,$00,$08; LDA $0800,Y
|
|
|
|
!byte $49 ; EOR
|
2019-05-07 01:24:29 +00:00
|
|
|
rts ; passport-test-suite/Roadwar 2000.woz [C=0] matches
|
2017-09-07 13:52:27 +00:00
|
|
|
}
|