head align tool minor improvements

This commit is contained in:
FeralChild64 committed 2020-06-04 20:53:02 +02:00
1 parent 2277942bb9
commit 405789cdfe
12 files changed
+35 -30

No files matched your search

+2 -2
View File
@@ -283,9 +283,9 @@ Feature needs about 330 bytes in BASIC segment. If unsure - enable.
### `CONFIG_TAPE_WEDGE`
If enabled, a simple DOS wedge is available from the direct mode for turbo tape loading - supports `←L` only
If enabled, a simple DOS wedge is available from the direct mode for tape loading - supports `←L` only.
Feature needs about 5 bytes in BASIC segment. If unsure - enable.
Feature needs few bytes in BASIC segment. If unsure - enable.
### `CONFIG_BCD_SAFE_INTERRUPTS`
+1 -1
View File
@@ -124,7 +124,7 @@
#define CONFIG_PANIC_SCREEN
#define CONFIG_DOS_WEDGE
#define CONFIG_TAPE_WEDGE
#define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
#define CONFIG_TAPE_HEAD_ALIGN
#define CONFIG_BCD_SAFE_INTERRUPTS
+1 -1
View File
@@ -117,7 +117,7 @@
// #define CONFIG_PANIC_SCREEN
// #define CONFIG_DOS_WEDGE
// #define CONFIG_TAPE_WEDGE
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
// #define CONFIG_TAPE_HEAD_ALIGN
#define CONFIG_BCD_SAFE_INTERRUPTS
+1 -1
View File
@@ -115,7 +115,7 @@
#define CONFIG_PANIC_SCREEN
#define CONFIG_DOS_WEDGE
#define CONFIG_TAPE_WEDGE
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
// #define CONFIG_TAPE_HEAD_ALIGN
#define CONFIG_BCD_SAFE_INTERRUPTS
+1 -1
View File
@@ -115,7 +115,7 @@
#define CONFIG_PANIC_SCREEN
#define CONFIG_DOS_WEDGE
#define CONFIG_TAPE_WEDGE
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
// #define CONFIG_TAPE_HEAD_ALIGN
#define CONFIG_BCD_SAFE_INTERRUPTS
+1 -1
View File
@@ -115,7 +115,7 @@
#define CONFIG_PANIC_SCREEN
#define CONFIG_DOS_WEDGE
#define CONFIG_TAPE_WEDGE
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
// #define CONFIG_TAPE_HEAD_ALIGN
#define CONFIG_BCD_SAFE_INTERRUPTS
+1 -1
View File
@@ -115,7 +115,7 @@
#define CONFIG_PANIC_SCREEN
#define CONFIG_DOS_WEDGE
#define CONFIG_TAPE_WEDGE
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
// #define CONFIG_TAPE_HEAD_ALIGN
#define CONFIG_BCD_SAFE_INTERRUPTS
+2 -2
View File
@@ -295,8 +295,8 @@
// Check that features are configured correctly
{
#if CONFIG_TAPE_WEDGE && !CONFIG_TAPE_TURBO
.error "CONFIG_TAPE_WEDGE requires CONFIG_TAPE_TURBO"
#if CONFIG_TAPE_WEDGE && !CONFIG_TAPE_TURBO && !CONFIG_TAPE_NORMAL
.error "CONFIG_TAPE_WEDGE requires CONFIG_TAPE_TURBO or CONFIG_TAPE_NORMAL"
#endif
#if !CONFIG_TAPE_WEDGE && CONFIG_TAPE_HEAD_ALIGN
.error "CONFIG_TAPE_HEAD_ALIGN requires CONFIG_TAPE_WEDGE"
+5
View File
@@ -38,7 +38,12 @@ wedge_arrow_L:
sta FNLEN
ldy #$01
#if CONFIG_TAPE_TURBO
ldx #$07 // turbo tape device
#else
tdx #$01 // normal tape device
#endif
jsr JSETFLS
ldy TXTTAB+1
+1 -2
View File
@@ -13,8 +13,7 @@
// XXX for Mega65 it can be done more easily, by just disabling the badlines
// XXX consider "PRESS PLAY ON TAPE" before start, with option to stop
// XXX make tape wedge (and this tool) available also without tape turbo support
// XXX create separate configuration for tape users
// XXX document CONFIG_TAPE_HEAD_ALIGN option
// XXX block NMIs
// XXX fix Mega65 build compilation issues
+2 -10
View File
@@ -40,15 +40,7 @@ tape_head_align_apply_gfx:
and #%00000010
beq !+
lda #%00010000
ora __ha_chart + 7 + 8 * 1
sta __ha_chart + 7 + 8 * 1
lda #%00001000
ora __ha_chart + 7 + 8 * 30
sta __ha_chart + 7 + 8 * 30
// For normal
// For 'normal'
lda #%00000001
ora __ha_chart + 7 + 8 * 6
@@ -58,7 +50,7 @@ tape_head_align_apply_gfx:
ora __ha_chart + 7 + 8 * 13
sta __ha_chart + 7 + 8 * 13
// For turbo
// For 'turbo'
lda #%00010000
ora __ha_chart + 7 + 8 * 21
+17 -8
View File
@@ -111,23 +111,32 @@ tape_head_align_print_char:
tape_head_align_help_text:
.word $2000 + (40 * 8) * 0 + 8 * 2
.text "ADJUST HEAD FOR MINIMUM SIGNAL NOISE"
// Each string consists of:
// - destination (start byte) address
// - text in screencodes
/ - $FF to mark end
.word $2000 + (40 * 8) * 0 + 8 * 1
.text "COMPUTER HAS TO TELL THE SIGNALS APART"
.byte $FF
.word $2000 + (40 * 8) * 4 + 8 * 2
.word $2000 + (40 * 8) * 3 + 8 * 6
.text "ALIGN HEAD FOR MINIMUM NOISE"
.byte $FF
.word $2000 + (40 * 8) * 6 + 8 * 2
.text "IF THE DECK HAS A PITCH (TAPE SPEED)"
.byte $FF
.word $2000 + (40 * 8) * 5 + 8 * 1
.text "CONTROL - USE IT TO PLACE DOTTED LINES"
.word $2000 + (40 * 8) * 7 + 8 * 1
.text "CONTROL, TWEAK IT SO THAT DOTTED LINES"
.byte $FF
.word $2000 + (40 * 8) * 6 + 8 * 3
.text "EXACTLY HALF A WAY BETWEEN SIGNALS"
.word $2000 + (40 * 8) * 8 + 8 * 5
.text "ARE HALF A WAY BETWEEN SIGNALS"
.byte $FF
.byte $FF
.byte $FF // end of strings
#endif