mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-27 02:31:00 +00:00
158 lines
2.1 KiB
ArmAsm
158 lines
2.1 KiB
ArmAsm
; write track0 sector 10
|
|
|
|
WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us
|
|
|
|
test_write:
|
|
|
|
lda #$ec
|
|
sta slotpatch1+1
|
|
|
|
jsr popwr_init
|
|
|
|
|
|
|
|
; fill in $d00 with pattern
|
|
|
|
ldx #0
|
|
loop:
|
|
txa
|
|
sta $d00,X
|
|
inx
|
|
bne loop
|
|
|
|
; turn on motor
|
|
jsr turn_on_motor
|
|
|
|
; seek to track 0
|
|
|
|
lda #0
|
|
asl
|
|
sta phase+1
|
|
|
|
jsr seek
|
|
|
|
; write to sector 0
|
|
|
|
lda #10
|
|
sta requested_sector+1
|
|
|
|
jsr sector_write
|
|
|
|
|
|
|
|
|
|
forever:
|
|
jmp forever
|
|
|
|
|
|
seekret:
|
|
rts
|
|
|
|
seek:
|
|
.if 0
|
|
ldx #0
|
|
stx step+1
|
|
copy_cur:
|
|
curtrk:
|
|
lda #0
|
|
sta tmpval+1
|
|
sec
|
|
.endif
|
|
phase:
|
|
sbc #$d1
|
|
beq seekret
|
|
.if 0
|
|
; if seek backwards
|
|
bcs sback
|
|
|
|
eor #$ff
|
|
inc curtrk+1
|
|
|
|
bcc ssback
|
|
sback:
|
|
adc #$fe
|
|
dec curtrk+1
|
|
ssback:
|
|
cmp step+1
|
|
bcc loop10
|
|
step:
|
|
lda #$d1
|
|
loop10:
|
|
cmp #8
|
|
bcs loop11
|
|
tay
|
|
sec
|
|
loop11:
|
|
lda curtrk+1
|
|
ldx step1, Y
|
|
bne loop12
|
|
loopmmm:
|
|
clc
|
|
lda tmpval+1
|
|
ldx step2, Y
|
|
loop12:
|
|
stx sector+1
|
|
and #3
|
|
rol
|
|
tax
|
|
slotpatch8:
|
|
sta $c0d1, X
|
|
loopmm:
|
|
ldx #$13
|
|
loopm:
|
|
dex
|
|
bne loopm
|
|
dec sector+1
|
|
bne loopmm
|
|
lsr
|
|
bcs loopmmm
|
|
inc step+1
|
|
bne copy_cur
|
|
|
|
step1: .byte 1, $30, $28, $24, $20, $1e, $1d, $1c
|
|
step2: .byte $70, $2c, $26, $22, $1f, $1e, $1d, $1c
|
|
.endif
|
|
rts
|
|
|
|
|
|
|
|
|
|
|
|
|
|
readd5aa:
|
|
L16:
|
|
jsr readnib
|
|
L17:
|
|
cmp #$d5
|
|
bne L16
|
|
jsr readnib
|
|
cmp #$aa
|
|
bne L17
|
|
tay ; we need Y=#$AA later
|
|
readnib:
|
|
slotpatch1: ; smc
|
|
lda $c0d1 ; gets set to C08C (Q6L) read
|
|
bpl readnib
|
|
rts
|
|
|
|
|
|
;====================
|
|
; enable drive motor
|
|
;====================
|
|
turn_on_motor:
|
|
slotpatch9:
|
|
lda $c0e9 ; fixme, patch
|
|
|
|
; wait 1s
|
|
|
|
ldx #6
|
|
wait_1s:
|
|
lda #255
|
|
jsr WAIT
|
|
dex
|
|
bne wait_1s
|
|
|
|
rts
|
|
|
|
.include "qkumba_popwr.s"
|