mirror of https://github.com/a2-4am/passport.git
147 lines
2.8 KiB
Plaintext
Executable File
147 lines
2.8 KiB
Plaintext
Executable File
;-------------------------------
|
|
; #PRODOSMECC
|
|
; patch MECC-specific bits on
|
|
; ProDOS-based MECC disks
|
|
; [thanks LoGo]
|
|
;-------------------------------
|
|
_prodosmecc
|
|
lda gIsProDOS
|
|
beq +
|
|
jmp prodosmecc_exit
|
|
+
|
|
ldy #$0E
|
|
jsr SearchTrack
|
|
!byte $50,$54,$58,$5C,$60,$64,$68,00
|
|
!byte $20,$10,$30,$97,$AA,$EB
|
|
bcs +
|
|
sta gDisplayBytes
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
ldy #$01
|
|
jsr compare
|
|
!byte $DE
|
|
bcc +
|
|
ldy #$01
|
|
jsr modify
|
|
!byte $DE
|
|
+
|
|
ldy #$15
|
|
jsr SearchTrack
|
|
!byte $AD,$C4,$D1,$CD,$C8,$D4,08,$2C
|
|
!byte $81,$C0,$28,$D0,06,$C9,$DE,$F0
|
|
!byte 02,$18,$24,$38,$60
|
|
bcs +
|
|
sta gDisplayBytes
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
ldy #$01
|
|
jsr compare
|
|
!byte $38
|
|
bcs +
|
|
ldy #$01
|
|
jsr modify
|
|
!byte $18
|
|
+
|
|
ldy #$18
|
|
jsr SearchTrack
|
|
|
|
; variation seen in e.g. A-232 Spelling Press
|
|
|
|
!byte $AD,$C4,$D1,$CD,$C8,$D4,08,$2C
|
|
!byte $81,$C0,$28,$D0,09,$8D,$97,$97
|
|
!byte $C9,$DE,$F0,02,$18,$24,$38,$60
|
|
bcs +
|
|
sta gDisplayBytes
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
ldy #$01
|
|
jsr compare
|
|
!byte $38
|
|
bcs +
|
|
ldy #$01
|
|
jsr modify
|
|
!byte $18
|
|
+
|
|
ldy #$0C
|
|
jsr SearchTrack
|
|
!byte $30,$A2,$20,00,$BF,$80,$97,$97,$B0,$98,$38,$60
|
|
bcs +
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
inx
|
|
ldy #$01
|
|
jsr compare
|
|
!byte $38
|
|
bcs +
|
|
ldy #$01
|
|
jsr modify
|
|
!byte $18
|
|
+
|
|
ldy #$0B
|
|
jsr SearchTrack
|
|
!byte $30,$91,$38,$60,00,$20,00,03,00,03,00
|
|
bcs prodosmecc_exit
|
|
inx
|
|
inx
|
|
ldy #$01
|
|
jsr compare
|
|
!byte $38
|
|
bcs prodosmecc_exit
|
|
ldy #$01
|
|
jsr modify
|
|
!byte $18
|
|
prodosmecc_exit
|