mirror of
https://github.com/livingcomputermuseum/UniBone.git
synced 2026-05-04 23:16:32 +00:00
35 lines
834 B
Plaintext
35 lines
834 B
Plaintext
|
|
.title ma_rk - RK11/RK05 test driver
|
|
; RK11 DMA is generated by reading cylinder 0, head 0, sector 0
|
|
|
|
rkvect = 220 ; vector of RK11 controller
|
|
rkbase = 777400 ; base addr of RK11 controller
|
|
rklabl = 'K ; label char
|
|
|
|
; --- ISRs, increment Interrupt FLags
|
|
rkiflg: .word 1 ; Interrupt flags
|
|
|
|
rkbuff: .blkw 400+1 ; data buffer: 1 sector = 256 words
|
|
|
|
rkecnt: .word 1 ; event counter
|
|
|
|
rkisr:
|
|
inc rkiflg ; set ISR flag
|
|
rti
|
|
|
|
; --- Initialize device after RESET
|
|
rkinit:
|
|
clr rkecnt
|
|
return
|
|
|
|
; --- Restart new DMA transmission
|
|
rkgo:
|
|
; read first sector into rkbuff
|
|
clr @#rkbase+12 ; DA disk address = 0: unit 0, cyl/hd/sec=0
|
|
mov #rkbuff,@#rkbase+10 ; BA bus address of DMA
|
|
mov #-400,@#rkbase+6 ; WC word count = 256 words
|
|
mov #100+4+1,@#rkbase+4 ; Command INT ENABLE + "READ" + GO
|
|
inc rkecnt ; register as event
|
|
return
|
|
|