Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Anyone have a nice quarter track reading routine?

0 views
Skip to first unread message

EricN

unread,
Nov 28, 2009, 12:09:13 AM11/28/09
to
Hi Everyone,

I'm making some modifications to ADT to have it read by quarter tracks
(did half tracking awhile back). I know how the stepper motor phases
are supposed to work for quarter track increments, but writing a
general routine around this is proving to be painful and I'm
especially concerned about the timing requirements. Does anyone out
there already have a nice quarter track seeking routine that I can
use? The SEEKABS routine at $B9A0 only works at the half track level
and doesn't look to be easily converted to quarter tracking.

All the routine needs to do is take the existing track number (in this
case we have 140 quarter tracks for a DOS 3.3 disk) and move the drive
arm one quarter track up.

Many thanks,
Eric

Toinet

unread,
Nov 28, 2009, 10:23:44 AM11/28/09
to

*
* B706: MOVE ARM
*

LB87D LDY #$00
BEQ LB883
LB881 LDY #$01
LB883 STY LB2BD
LDY dpPHASE
CPY #$FF
BNE LB893
PHA
LDA #$00
JSR LB893
PLA
LB893 STA LBB62
CMP dpPHASE
BEQ LB8F3
AND #$FE
STA LBB63
LDY #$01
STY LBB64
LDA dpPHASE
AND #$FE
JSR LB90F
LB8AB LDA dpPHASE
CMP LBB63
BEQ LB8C5
BCS LB8BB
INC dpPHASE
INC dpPHASE
JMP LB8BF

LB8BB DEC dpPHASE
DEC dpPHASE
LB8BF JSR LB911
JMP LB8AB

LB8C5 LDA LBB62
CMP dpPHASE
BEQ LB8E2
STA dpPHASE
AND #$07
ORA dpSLOT
TAY
CLC
ADC #$02
AND #$F7
TAX
LDA $C080,Y
LDA $C080,X
JSR L0C03
LB8E2 JSR L0C06
LDX dpSLOT
LDA $C080,X
LDA $C082,X
LDA $C084,X
LDA $C086,X

LB8F3 JSR L0C0C
LDY dpPHASE
LDA fgNBDRIVES
BEQ LB908 ; 1 drive only
LDA LB28F
CMP #$CF ; O
BEQ LB90B
STY phaseDUP
RTS
LB908 STY phaseDUP
LB90B STY phaseORI
RTS

LB90F STA dpPHASE
LB911 LDA dpPHASE
AND #$06
ORA dpSLOT
TAX
INX
LDY LBB64
STA LBB64
LDA $C080,Y
LDA $C080,X
JSR L0C03
RTS

... part of the EDD move arm routine ...

You have mail,
antoine

0 new messages