Merge pull request #62 from peterferrie/master

a bit quieter, fix write support
This commit is contained in:
4am 2018-09-27 19:55:30 -04:00 committed by GitHub
commit 794c7eb13b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 56 additions and 22 deletions

View File

@ -800,6 +800,7 @@ _applyToAll
!source "patchers/davidsonforth.a" ; gIsDavidson only !source "patchers/davidsonforth.a" ; gIsDavidson only
!source "patchers/davidsonasm.a" ; gIsDavidson only !source "patchers/davidsonasm.a" ; gIsDavidson only
!source "patchers/ssi.a" ; gIsRDOS13 only !source "patchers/ssi.a" ; gIsRDOS13 only
!source "patchers/rdosfmt.a" ; gIsRDOS13 only
lda gPatchCount lda gPatchCount
beq .nopatches beq .nopatches

View File

@ -30,38 +30,33 @@
!byte $48 ;PHA !byte $48 ;PHA
!byte $68 ;PLA !byte $68 ;PLA
lda #$0A lda #$56
ldx #$16 sta (BASEPAGE * $100) + $9A3
ldy #1 sta (BASEPAGE * $100) + $A16
jsr modify
!byte $56
lda #$0A lda #$23
ldx #$2B sta (BASEPAGE * $100) + $A2B
ldy #2 sta (BASEPAGE * $100) + $A3C
jsr modify sta (BASEPAGE * $100) + $A4C
!byte $23,$B8
lda #$0A lda #$B8
ldx #$3C sta (BASEPAGE * $100) + $A2C
ldy #2 sta (BASEPAGE * $100) + $A3D
jsr modify sta (BASEPAGE * $100) + $A4D
!byte $23,$B8
lda #$0A ;enable 16-sector address prologue as needed
ldx #$4C
ldy #2
jsr modify
!byte $23,$B8
;enable 16-sector address prologue
lda #$0A lda #$0A
ldx #$75 ldx #$75
ldy #2 ldy #2
jsr compare
!byte $C9,$D5 ;CMP #$D5
bcc +
ldy #2
jsr modify jsr modify
!byte $C9,$D5 ;CMP #$D5 !byte $C9,$D5 ;CMP #$D5
+
lda #$0A lda #$0A
ldx #$8B ldx #$8B
ldy #1 ldy #1

38
src/patchers/rdosfmt.a Normal file
View File

@ -0,0 +1,38 @@
;-------------------------------
; #RDOS format interception
; support disk tools that format 13-sectors
;
; module by qkumba
;-------------------------------
!zone {
bit gMode ; nothing to do here in verify-only mode
bpl .exit
lda gIsRDOS13
bne .exit
ldy #$0F
jsr SearchTrack
!byte $A9,$D4 ; LDA #$D4
!byte $20,$CC,$09; JSR $09CC
!byte $A9,$AA ; LDA #$AA
!byte $20,$CD,$09; JSR $09CD
!byte $A9,$B7 ; LDA #$B7
!byte $20,$CD,$09; JSR $09CD
bcs .exit
inx
ldy #1
jsr modify
!byte $D5
pha
txa
clc
adc #9
tax
pla
ldy #1
jsr modify
!byte $96
.exit
}