more IEC work - the turnaround seems to work now
This commit is contained in:
1 parent
22e1e201af
commit
a1d3c74a0d
5 files changed
+18
-4
No files matched your search
File renamed without changes.
@@ -0,0 +1,8 @@
|
||||
|
||||
iec_release_atn:
|
||||
|
||||
lda CI2PRA
|
||||
and #$FF - BIT_CI2PRA_ATN_OUT ; release
|
||||
sta CI2PRA
|
||||
rts
|
||||
|
||||
@@ -57,9 +57,12 @@ iec_tx_command:
|
||||
jsr iec_set_idle
|
||||
jmp kernalerror_DEVICE_NOT_FOUND
|
||||
*
|
||||
;; All done - before exiting wait a moment and restore bus to idle state
|
||||
jsr iec_wait20us
|
||||
jsr iec_set_idle
|
||||
;; All done
|
||||
|
||||
;; XXX All the documentation says we should release ATN at this point, but when I do so
|
||||
;; the turnaround mechanism does not work. Why???
|
||||
;; jsr iec_wait20us
|
||||
;; jsr iec_set_idle
|
||||
|
||||
clc
|
||||
rts
|
||||
@@ -43,7 +43,7 @@ iec_tx_common_bit_is_sent:
|
||||
;; Pull CLK for 20us again, before sending the next bit
|
||||
;; or performing any other action
|
||||
jsr iec_pull_clk_release_data
|
||||
jsr iec_wait20us
|
||||
jsr iec_wait20us ; XXX this might be an overkill, there is a lot of code besides this wait here - few NOPs might be enough
|
||||
|
||||
;; More bits to send?
|
||||
dex
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
|
||||
iec_tx_eoi:
|
||||
|
||||
;; Releasing ATN needed due to current iec_tx_command implementation
|
||||
jsr iec_release_atn
|
||||
|
||||
;; Wait at least 256 usec
|
||||
jsr iec_wait100us
|
||||
jsr iec_wait100us
|
||||
|
||||
Reference in new issue
Block a user