diff --git a/.Floppies/A2OSX.BOOTHD.woz b/.Floppies/A2OSX.BOOTHD.woz index fdabdb24..c7b633d4 100644 Binary files a/.Floppies/A2OSX.BOOTHD.woz and b/.Floppies/A2OSX.BOOTHD.woz differ diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index b1b2d4ee..c9164772 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/.Floppies/A2OSX.TEST.po b/.Floppies/A2OSX.TEST.po index 554df8a7..3a5df09c 100644 Binary files a/.Floppies/A2OSX.TEST.po and b/.Floppies/A2OSX.TEST.po differ diff --git a/BIN/IPCONFIG.S.DHCP.txt b/BIN/IPCONFIG.S.DHCP.txt index ddc11db2..8dd7cc62 100644 --- a/BIN/IPCONFIG.S.DHCP.txt +++ b/BIN/IPCONFIG.S.DHCP.txt @@ -170,9 +170,6 @@ DHCP.RUN.SKT.RECV cmp #E.NODATA bne .9 - lda #'@' - >SYSCALL putchar - lda TimeOut bne .1 diff --git a/INC/IO.D2.I.txt b/INC/IO.D2.I.txt index d41c9877..00f22d03 100644 --- a/INC/IO.D2.I.txt +++ b/INC/IO.D2.I.txt @@ -1,11 +1,11 @@ NEW AUTO 3,1 *-------------------------------------- -IO.D2.SeekTimeR .EQ 160 LIBBLKDEV Recalibration +IO.D2.SeekTimeR .EQ 140 LIBBLKDEV Recalibration IO.D2.SeekTimeF .EQ 140 LIBBLKDEV Track Formatter IO.D2.SeekTimeB .EQ 140 LIBBLKDEV Boot Block -IO.D2.SeekTimeP .EQ 50 ProDOS.FX initial -IO.D2.SeekTimeI .EQ 20 ProDOS.FX increment -> until > 128 +IO.D2.SeekTimeP .EQ 30 ProDOS.FX initial +IO.D2.SeekTimeI .EQ 10 ProDOS.FX increment -> until > 128 *-------------------------------------- IO.D2.Ph0Off .EQ $C080 IO.D2.Ph0On .EQ $C081 diff --git a/ProDOS.FX/ProDOS.S.XRW.txt b/ProDOS.FX/ProDOS.S.XRW.txt index 5cc4fc15..f9bd0a6d 100644 --- a/ProDOS.FX/ProDOS.S.XRW.txt +++ b/ProDOS.FX/ProDOS.S.XRW.txt @@ -1,7 +1,7 @@ NEW AUTO 3,1 *-------------------------------------- -XRWDBG .EQ 0 +XRWDBG .EQ 1 *-------------------------------------- XRW.START cld $D8 to flag language card bank 1 (main) @@ -169,9 +169,11 @@ XRW.E.OK lda #0 bit IO.D2.DrvOff,x turn off rts *-------------------------------------- -regrwts ldy #1 - sty XRW.RecalibrateCnt +regrwts lda #1 + sta XRW.RecalibrateCnt + sta XRW.BadSeek + lda A4L get command # lsr set carry = 1 for read, 0 for write. @@ -179,9 +181,6 @@ regrwts ldy #1 jsr XRW.PreNibble - lda #$fe - sta XRW.BadSeek - .1 ldy #64 sty XRW.RetryCnt @@ -199,49 +198,49 @@ regrwts ldy #1 jsr XRW.DEBUG .FIN - ldy XRW.UnitIndex + ldx XRW.UnitIndex lda #41 - sta XRW.D2Trk-1,y + sta XRW.D2Trk-1,x lda #0 - sta XRW.D2VolNum-1,y + sta XRW.D2VolNum-1,x - jsr XRW.Seek + jsr XRW.Seek Seek from Track 41 -> 0 bra .1 .4 cmp XRW.ReqTrack - beq .5 + beq .6 - inc XRW.BadSeek - bmi .41 + dec XRW.BadSeek + bpl .5 ldx XRW.UnitIndex lda XRW.D2SeekTime-1,x - bmi .41 + bmi .5 clc adc #IO.D2.SeekTimeI sta XRW.D2SeekTime-1,x -.41 lda XRW.ReqTrack +.5 lda XRW.ReqTrack jsr XRW.Seek bra .3 -.5 lda XRW.AddrField.S is this the right sector ? +.6 lda XRW.AddrField.S is this the right sector ? cmp XRW.ReqSector bne .3 no, try another sector. lda A4L read or write ? lsr the carry will tell. - bcc L53F4 branch if write + bcc .7 branch if write jsr XRW.Read bcs .3 if bad read .9 rts -L53F4 jmp XRW.Write +.7 jmp XRW.Write *-------------------------------------- * determine if motor is stopped * @@ -409,9 +408,6 @@ L596F ldy #$FF index to last byte of data to write. XRW.Write lda nbuf2 sta pcl -*.1 bit IO.D2.RData,x make sure past $EB -* bpl .1 - bit IO.D2.ReadProt,x PREWRITE MODE bit IO.D2.ReadMode,x @@ -588,8 +584,7 @@ XRW.Wait100usecA inc XRW.montimeh (6) -.3 sec (2) - sbc #1 (2) +.3 dec (2) bne .1 (3) plx (4) @@ -933,29 +928,26 @@ XRW.ReadAddr ldy #$FC tay if final checksum non-zero, bne .99 then error. - ldy XRW.UnitIndex - - clc Anticipate success... - .9 lda IO.D2.RData,x bpl .9 eor #$DE bne .99 +*.10 lda IO.D2.RData,x +* bpl .10 + +* eor #$AA +* bne .99 + + ldy XRW.UnitIndex lda XRW.AddrField.V ....save time doing it now sta XRW.D2VolNum-1,y - -.10 lda IO.D2.RData,x - bpl .10 - - eor #$AA - bne .99 - + lda XRW.AddrField.T Successful Read, update Drive table sta XRW.D2Trk-1,y and exit with A = Trk -* clc normal read ok + clc normal read ok rts .99 sec @@ -993,7 +985,7 @@ XRW.DEBUG31 jsr XRW.DEBUG.PRINT rts XRW.DEBUG.PRINT -* sta CLRPAGE2 + sta CLRPAGE2 pha lsr lsr