head align tool minor improvements
This commit is contained in:
1 parent
2277942bb9
commit
405789cdfe
12 files changed
+35
-30
No files matched your search
@@ -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`
|
||||
|
||||
|
||||
@@ -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
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
Reference in new issue
Block a user