diff --git a/.Floppies/A2OSX.BLANK.woz b/.Floppies/A2OSX.BLANK.woz index 5d15a61d..7ddc044c 100644 Binary files a/.Floppies/A2OSX.BLANK.woz and b/.Floppies/A2OSX.BLANK.woz differ diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 834bdcd9..d8d4666a 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 29f009a4..9fe6decc 100644 Binary files a/.Floppies/A2OSX.TEST.po and b/.Floppies/A2OSX.TEST.po differ diff --git a/BIN/FORMAT.S.txt b/BIN/FORMAT.S.txt index 3907e805..75af2c1a 100644 --- a/BIN/FORMAT.S.txt +++ b/BIN/FORMAT.S.txt @@ -355,10 +355,7 @@ CS.RUN.LL.DISKII .9 rts -.8 lda #160 - sta CurQTrack - - ldx #0 +.8 ldx #0 jsr CS.RUN.SeekToX jsr CS.RUN.MotorOff diff --git a/LIB/LIBBLKDEV.S.txt b/LIB/LIBBLKDEV.S.txt index cc6c0f0b..f04f29b7 100644 --- a/LIB/LIBBLKDEV.S.txt +++ b/LIB/LIBBLKDEV.S.txt @@ -348,16 +348,16 @@ D2MoveHead >PULLB MoveTo jsr XRW.PhaseOn - lda #28 + lda #$30 plp beq .4 - lsr only 1/4 +* lsr only 1/4 .4 jsr XRW.Wait100msA Trash X jsr XRW.AllPhaseOff - lda #28 + lda #$70 jsr XRW.Wait100msA Trash X bra .1 diff --git a/ProDOS.FX/ProDOS.S.LDR.txt b/ProDOS.FX/ProDOS.S.LDR.txt index fb594340..c2cd6821 100644 --- a/ProDOS.FX/ProDOS.S.LDR.txt +++ b/ProDOS.FX/ProDOS.S.LDR.txt @@ -18,7 +18,7 @@ H2000 jmp prostart jmp atalkset jmp p16start *-------------------------------------- -LDR.MSG.0 .AT "PRODOS FX:" +LDR.MSG.0 .AT "PRODOS FX 0.94:" LDR.MSG.UNSUPP .AT "UNSUPPORTED HARDWARE" LDR.MSG.IIe .AT "//e" LDR.MSG.IIc .AT "//c" diff --git a/ProDOS.FX/ProDOS.S.XRW.txt b/ProDOS.FX/ProDOS.S.XRW.txt index 00b6b6bb..28e5efb9 100644 --- a/ProDOS.FX/ProDOS.S.XRW.txt +++ b/ProDOS.FX/ProDOS.S.XRW.txt @@ -836,10 +836,10 @@ nbuf2 .BS $56 nibl buffer for read/write of low 2-bits of each byte. * montimel,h are incremented by the # of 100us quantums required by seek for motor on time overlap. * variables used: XRW.CurrentTrack, A2L, montimel, montimeh *-------------------------------------- -XRW.Seek pha save target track - - ldx XRW.UnitIndex +XRW.Seek ldx XRW.UnitIndex + pha save target track + jsr XRW.Trk2Qtrk sta XRW.TargetQTrack @@ -879,23 +879,21 @@ XRW.Seek pha save target track jsr XRW.PhaseOn - lda #28 + lda #$30 plp beq .4 - lsr only 1/4 +* lsr only 1/4 .4 jsr XRW.Wait100msA Trash X jsr XRW.AllPhaseOff - - lda #28 + lda #$70 jsr XRW.Wait100msA Trash X - bra .1 .8 rts - +*-------------------------------------- XRW.PhaseOn pha jsr .7 pla @@ -910,7 +908,7 @@ XRW.PhaseOn pha tax lda IO.D2.Ph0On,x turn on one phase .8 rts - +*-------------------------------------- XRW.AllPhaseOff ldx A2L lda #4 diff --git a/SYS/KERNEL.S.STRV.txt b/SYS/KERNEL.S.STRV.txt index 0082ad9a..672c416b 100644 --- a/SYS/KERNEL.S.STRV.txt +++ b/SYS/KERNEL.S.STRV.txt @@ -40,31 +40,6 @@ K.StrVAdd >PULLW TXTPTR str >PULLA jmp K.SYSCALL.JMPX *-------------------------------------- -STRV.NStrPtr1 ldy #$ff - -.1 iny - - lda (ZPPtr1) - beq .2 - - inc ZPPtr1 - bne .1 - inc ZPPtr1+1 - bra .1 - -.2 tya - beq .9 - - inc ZPPtr1 - bne .8 - inc ZPPtr1+1 skip \0 - -.8 clc - rts - -.9 sec Y,A = 0 - rts -*-------------------------------------- STRV.Ptr1Ptr2cpy ldx #0 ldy #0 diff --git a/SYS/KERNEL.S.STRVX.txt b/SYS/KERNEL.S.STRVX.txt index f1107760..a293faf9 100644 --- a/SYS/KERNEL.S.STRVX.txt +++ b/SYS/KERNEL.S.STRVX.txt @@ -11,7 +11,7 @@ STRVX.StrVShift phy .1 inx beq .2 - jsr STRV.NStrPtr1 + jsr STRVX.NStrPtr1 bcc .1 rts @@ -19,7 +19,7 @@ STRVX.StrVShift phy .2 >LDYA ZPPtr1 >STYA ZPPtr2 - jsr STRV.NStrPtr1 + jsr STRVX.NStrPtr1 jsr STRV.Ptr1Ptr2cpy clc @@ -35,7 +35,7 @@ STRVX.StrVGet phy .1 inx beq .2 - jsr STRV.NStrPtr1 + jsr STRVX.NStrPtr1 bcc .1 rts @@ -79,7 +79,7 @@ STRVX.StrVAdd jsr K.GetMemPtr sta ZPPtr2 stz ZPPtr2+1 -.1 jsr STRV.NStrPtr1 +.1 jsr STRVX.NStrPtr1 bcs .2 jsr SHARED.AddYp1ToPtr2 @@ -124,6 +124,31 @@ STRVX.StrVAdd jsr K.GetMemPtr clc rts *-------------------------------------- +STRVX.NStrPtr1 ldy #$ff + +.1 iny + + lda (ZPPtr1) + beq .2 + + inc ZPPtr1 + bne .1 + inc ZPPtr1+1 + bra .1 + +.2 tya + beq .9 + + inc ZPPtr1 + bne .8 + inc ZPPtr1+1 skip \0 + +.8 clc + rts + +.9 sec Y,A = 0 + rts +*-------------------------------------- MAN SAVE USR/SRC/SYS/KERNEL.S.STRVX LOAD USR/SRC/SYS/KERNEL.S