02.07.2013 Views

RK06/RK07 Disk Drive User's Manual - Trailing-Edge

RK06/RK07 Disk Drive User's Manual - Trailing-Edge

RK06/RK07 Disk Drive User's Manual - Trailing-Edge

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>RK06</strong>: TSTB<br />

BNE<br />

MOV<br />

MOV<br />

MOV<br />

MOV<br />

MOV<br />

MOV<br />

MOV<br />

1$: TSTB<br />

BPL<br />

MOV<br />

COM<br />

BIT<br />

BNE<br />

BIT<br />

BNE<br />

MOV<br />

CMP<br />

BEQ<br />

CMP<br />

BEQ<br />

CMP<br />

BNE<br />

MOV<br />

2$: INCB<br />

3$: ADD<br />

INCB<br />

MOV<br />

4$: RTS<br />

;INTERRUPT SERVICE ROUTINE<br />

INTR: MOV<br />

TSTB<br />

BEQ<br />

BIT<br />

BNE<br />

RTI<br />

RK6ACT ;Is the <strong>RK06</strong> currently active?<br />

<strong>RK06</strong> ; Wait for it to become inactive<br />

#RKCS2,R2 ;Point to CS2 register<br />

#SCLR,($2) ;Issue a Subsystem Clear<br />

UNIT,(R2) ;Select the desired unit<br />

DSKADR,-(R2) ;Load RKDA<br />

BUSADR,-(R2) ;Load RKBA<br />

WCNT,-(R2) ;Load RKWC<br />

#PACACK,-(R2) ;Issue Pack ACK function<br />

(R2) ; Wait 15 J.l,S for the serial message<br />

1$ ,<br />

RKDS(R2),R 1 ;Get <strong>Drive</strong> Status register<br />

R 1 ;Complement bits<br />

#SVAL!DRDY!VV!DRA,Rl ;Can drive accept further commands?<br />

4$ ;IfNE no<br />

#UNS,RKER(R2) ;Is this a Seek function?<br />

4$ ;IfNE yes<br />

CYLADR,RKDC(R2) ;Load cylinder address<br />

#113,FUNCTN ;Is this a recalibrate function?<br />

2$ ;IfEQ yes<br />

#117,FUNCTN ;Is this a Seek function?<br />

2$ ;IfEQ yes<br />

#115,FUNCTN ;Is this an Offset function?<br />

3$ ;IfNE no<br />

OFFSET,RKOF(R2) ;Load offset value<br />

POSPRO ;Indicate positioning command<br />

#2,(SP) ;Show a good return<br />

RK6ACT ;Set <strong>RK06</strong> active flag<br />

FUNCTN,(R2) ;Load RKCS 1<br />

PC ;Return to users program<br />

#RKCSI,R2<br />

POSPRO<br />

5$<br />

#CERR !DI,(R2)<br />

5$<br />

7-40<br />

;Point to CS 1 register<br />

;Positioning in progress?<br />

;IfEQ no<br />

;Positioning complete or error?<br />

;IfNE yes<br />

;Wait for positioning to complete

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!