several IEC routines now properly preserve X/Y registers
This commit is contained in:
1 parent
eb8eefff82
commit
f26431b502
14 files changed
+98
-85
No files matched your search
+3
-6
@@ -4,11 +4,11 @@
|
||||
;;
|
||||
;; - [RG64] C64 Programmer's Reference Guide - page 303
|
||||
;; - [CM64] Compute's Mapping the Commodore 64 - page 224
|
||||
;; - https://www.pagetable.com/?p=1031, , https://github.com/mist64/cbmbus_doc
|
||||
;;
|
||||
;; CPU registers that has to be preserved (see [RG64]): .X, .Y
|
||||
;;
|
||||
|
||||
;; XXX currently does not preserve registers, to be fixed!
|
||||
|
||||
unlsn:
|
||||
|
||||
@@ -17,15 +17,12 @@ unlsn:
|
||||
;; First check whether we have something to be sent in the buffer
|
||||
lda C3PO
|
||||
beq +
|
||||
lda BSOUR
|
||||
sec ; send it with EOI
|
||||
jsr iec_tx_byte ; XXX what about the status of this operation?
|
||||
;; Mark the buffer as invalid
|
||||
lda #$00
|
||||
sta C3PO
|
||||
*
|
||||
;; Buffer empty send the command
|
||||
;; Buffer empty, send the command
|
||||
lda #$3F
|
||||
sta BSOUR
|
||||
jmp iec_tx_command
|
||||
|
||||
|
||||
Reference in new issue
Block a user