documentation update, small Ultimate 64 code tweaks

This commit is contained in:
FeralChild64 committed 2020-10-07 16:02:07 +02:00
1 parent 9a1f9c7209
commit b965e035f9
5 files changed
+33 -14

No files matched your search

+1 -1
View File
@@ -139,7 +139,7 @@ Needs about 430 bytes in KERNAL segment. If unsure - enable.
### `IEC_JIFFYDOS_BLANK`
Causes screen blanking during JiffyDOS file loading to increase performance.
Causes screen blanking during JiffyDOS file loading to increase performance. On Ultimate 64 motherboard, if possible, screen blanking is substituted by disabling badlines.
## Tape deck
+1 -2
View File
@@ -20,7 +20,6 @@ cmd_slow:
cmd_slow_fast_common:
sta U64_TURBOBIT ; only bit 0 matters
sta U64_TURBOCTL
rts
@@ -29,7 +28,7 @@ cmd_fast:
lda #$0F ; for U64_TURBOCTL - badlines, 48MHz
sta SCPU_SPEED_TURBO ; any value will do
bne cmd_slow_fast_common ; bramnch always
bne cmd_slow_fast_common ; branch always
} else ifdef CONFIG_PLATFORM_COMMODORE_64 {
+3 -5
View File
@@ -29,6 +29,8 @@ jiffydos_load:
!ifdef CONFIG_MB_U64 {
; XXX implement for non-blank mode, use jiffydos_prepare_no_preserve_bits
; Check if turbo register is available
lda U64_TURBOCTL
cmp #$FF
@@ -52,10 +54,7 @@ jiffydos_load:
jsr screen_off
@2:
; Preserve 3 lowest bits of CIA2_PRA XXX deduplicate this
lda CIA2_PRA
and #%00000111
sta C3PO
jsr jiffydos_preserve_bits
} else {
@@ -66,7 +65,6 @@ jiffydos_load:
@2:
}
; A trick to shorten EAL update time
ldy #$FF
+5 -6
View File
@@ -12,12 +12,11 @@
jiffydos_prepare:
; We need to preserve 3 lowest bits of CIA2_PRA, they contain important
; data - fortunately, the bits are never changed by external devices
; Use C3PO for this, as afterwards we have to set there 0 nevertheless
lda CIA2_PRA
and #%00000111
sta C3PO
jsr jiffydos_preserve_bits
; FALLTROUGH
jiffydos_prepare_no_preserve_bits:
; Hide sprites; JiffyDOS timing regime is very strict, before transmitting
; anything we need to make sure nothing will steal the cycles
@@ -0,0 +1,23 @@
;; #LAYOUT# STD * #TAKE
;; #LAYOUT# * KERNAL_0 #TAKE
;; #LAYOUT# * * #IGNORE
;
; JiffyDOS transfer preparation routine
;
!ifdef CONFIG_IEC_JIFFYDOS {
jiffydos_preserve_bits:
; We need to preserve 3 lowest bits of CIA2_PRA, they contain important
; data - fortunately, the bits are never changed by external devices
; Use C3PO for this, as afterwards we have to set there 0 nevertheless
lda CIA2_PRA
and #%00000111
sta C3PO
rts
}