Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-06-23 17:39:18 +02:00
parent 6c3cea75ae
commit 4f94890429
5 changed files with 35 additions and 75 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -41,12 +41,7 @@ L59A6 lda XRW.LastUnitUsed
lda XRW.montimeh
bne L59A6
L59BD ldx A2L
lda IO.D2.Ph0Off,x make sure all motor phases are off
lda IO.D2.Ph1Off,x
lda IO.D2.Ph2Off,x
lda IO.D2.Ph3Off,x
L59BD jsr XRW.AllPhasesOff make sure all motor phases are off
lda IO.D2.ReadMode,x turn off write enable X = slot $S0
nop
@ -177,9 +172,6 @@ L539D jsr XRW.ReadAddr read next address field.
L53A4 dec XRW.RetryCnt one less chance.
bne L539D branch to retry.
* lda #"!"
* sta $720
XRW.Recalibrate lda #MLI.E.IO anticipate a bad drive error.
dec XRW.RecalibrateCnt
bmi hndlerr
@ -757,95 +749,63 @@ XRW.Seek pha save target track
pla
sta XRW.D2Trk-1,x will be current track at the end
ldy #0
.1 lda XRW.CurrentQTrack
pha
.1 lda XRW.TargetQTrack
sec
sbc XRW.CurrentQTrack
jsr XRW.QPhaseOn
jsr XRW.WaitSeekTime
pla
cmp XRW.TargetQTrack
beq .8
bcc .2
pha
bcs .2
* Current < Target, must move in
cmp #2
bcc .5 one QT remaining
lda XRW.CurrentQTrack
inc
inc
bra .3
.HS B0 BCS
* Current > Target, must move out
.2 cmp #$FF
bcs .6 one QT remaining
lda XRW.CurrentQTrack
dec
.3 and #$FE
.2 dec
sta XRW.CurrentQTrack
and #6
ora A2L
tax
tya
beq .4
lda IO.D2.Ph0Off,y
jsr XRW.WaitSeekTime
.4 lda IO.D2.Ph0On,x
txa
tay
pla
jsr XRW.QPhaseOff
jsr XRW.WaitSeekTime
bra .1
* Last QTrack
.5 tya
inc
inc
bra .7
.6 tya
* >DEBUG
* sec
adc #5
.7 and #$f6
.8 jsr XRW.Wait25600usec
*--------------------------------------
XRW.AllPhasesOff
ldx A2L
lda IO.D2.Ph0Off,x
lda IO.D2.Ph1Off,x
lda IO.D2.Ph2Off,x
lda IO.D2.Ph3Off,x
rts
*--------------------------------------
XRW.QPhaseOff clc
.HS B0 BCS
XRW.QPhaseOn sec
and #6
adc A2L
tax
jsr XRW.WaitSeekTime
lda IO.D2.Ph0On,x
jsr XRW.WaitSeekTime
inc
inc
and #$F7
tay
jsr XRW.Wait25600usec
lda IO.D2.Ph0Off,y
lda IO.D2.Ph0Off,x
rts
.8 tya
beq .9
jsr XRW.Wait25600usec
lda IO.D2.Ph0Off,y
.9 rts
rts
*--------------------------------------
XRW.Trk2Qtrk asl x2
sta .1+1