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`
|
### `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`
|
### `CONFIG_BCD_SAFE_INTERRUPTS`
|
||||||
|
|
||||||
|
|||||||
@@ -124,7 +124,7 @@
|
|||||||
#define CONFIG_PANIC_SCREEN
|
#define CONFIG_PANIC_SCREEN
|
||||||
#define CONFIG_DOS_WEDGE
|
#define CONFIG_DOS_WEDGE
|
||||||
#define CONFIG_TAPE_WEDGE
|
#define CONFIG_TAPE_WEDGE
|
||||||
#define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
|
#define CONFIG_TAPE_HEAD_ALIGN
|
||||||
#define CONFIG_BCD_SAFE_INTERRUPTS
|
#define CONFIG_BCD_SAFE_INTERRUPTS
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -117,7 +117,7 @@
|
|||||||
// #define CONFIG_PANIC_SCREEN
|
// #define CONFIG_PANIC_SCREEN
|
||||||
// #define CONFIG_DOS_WEDGE
|
// #define CONFIG_DOS_WEDGE
|
||||||
// #define CONFIG_TAPE_WEDGE
|
// #define CONFIG_TAPE_WEDGE
|
||||||
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
|
// #define CONFIG_TAPE_HEAD_ALIGN
|
||||||
#define CONFIG_BCD_SAFE_INTERRUPTS
|
#define CONFIG_BCD_SAFE_INTERRUPTS
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -115,7 +115,7 @@
|
|||||||
#define CONFIG_PANIC_SCREEN
|
#define CONFIG_PANIC_SCREEN
|
||||||
#define CONFIG_DOS_WEDGE
|
#define CONFIG_DOS_WEDGE
|
||||||
#define CONFIG_TAPE_WEDGE
|
#define CONFIG_TAPE_WEDGE
|
||||||
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
|
// #define CONFIG_TAPE_HEAD_ALIGN
|
||||||
#define CONFIG_BCD_SAFE_INTERRUPTS
|
#define CONFIG_BCD_SAFE_INTERRUPTS
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -115,7 +115,7 @@
|
|||||||
#define CONFIG_PANIC_SCREEN
|
#define CONFIG_PANIC_SCREEN
|
||||||
#define CONFIG_DOS_WEDGE
|
#define CONFIG_DOS_WEDGE
|
||||||
#define CONFIG_TAPE_WEDGE
|
#define CONFIG_TAPE_WEDGE
|
||||||
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
|
// #define CONFIG_TAPE_HEAD_ALIGN
|
||||||
#define CONFIG_BCD_SAFE_INTERRUPTS
|
#define CONFIG_BCD_SAFE_INTERRUPTS
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -115,7 +115,7 @@
|
|||||||
#define CONFIG_PANIC_SCREEN
|
#define CONFIG_PANIC_SCREEN
|
||||||
#define CONFIG_DOS_WEDGE
|
#define CONFIG_DOS_WEDGE
|
||||||
#define CONFIG_TAPE_WEDGE
|
#define CONFIG_TAPE_WEDGE
|
||||||
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
|
// #define CONFIG_TAPE_HEAD_ALIGN
|
||||||
#define CONFIG_BCD_SAFE_INTERRUPTS
|
#define CONFIG_BCD_SAFE_INTERRUPTS
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -115,7 +115,7 @@
|
|||||||
#define CONFIG_PANIC_SCREEN
|
#define CONFIG_PANIC_SCREEN
|
||||||
#define CONFIG_DOS_WEDGE
|
#define CONFIG_DOS_WEDGE
|
||||||
#define CONFIG_TAPE_WEDGE
|
#define CONFIG_TAPE_WEDGE
|
||||||
// #define CONFIG_TAPE_HEAD_ALIGN // XXX work in progress
|
// #define CONFIG_TAPE_HEAD_ALIGN
|
||||||
#define CONFIG_BCD_SAFE_INTERRUPTS
|
#define CONFIG_BCD_SAFE_INTERRUPTS
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -295,8 +295,8 @@
|
|||||||
|
|
||||||
// Check that features are configured correctly
|
// Check that features are configured correctly
|
||||||
{
|
{
|
||||||
#if CONFIG_TAPE_WEDGE && !CONFIG_TAPE_TURBO
|
#if CONFIG_TAPE_WEDGE && !CONFIG_TAPE_TURBO && !CONFIG_TAPE_NORMAL
|
||||||
.error "CONFIG_TAPE_WEDGE requires CONFIG_TAPE_TURBO"
|
.error "CONFIG_TAPE_WEDGE requires CONFIG_TAPE_TURBO or CONFIG_TAPE_NORMAL"
|
||||||
#endif
|
#endif
|
||||||
#if !CONFIG_TAPE_WEDGE && CONFIG_TAPE_HEAD_ALIGN
|
#if !CONFIG_TAPE_WEDGE && CONFIG_TAPE_HEAD_ALIGN
|
||||||
.error "CONFIG_TAPE_HEAD_ALIGN requires CONFIG_TAPE_WEDGE"
|
.error "CONFIG_TAPE_HEAD_ALIGN requires CONFIG_TAPE_WEDGE"
|
||||||
|
|||||||
@@ -38,7 +38,12 @@ wedge_arrow_L:
|
|||||||
sta FNLEN
|
sta FNLEN
|
||||||
|
|
||||||
ldy #$01
|
ldy #$01
|
||||||
|
#if CONFIG_TAPE_TURBO
|
||||||
ldx #$07 // turbo tape device
|
ldx #$07 // turbo tape device
|
||||||
|
#else
|
||||||
|
tdx #$01 // normal tape device
|
||||||
|
#endif
|
||||||
|
|
||||||
jsr JSETFLS
|
jsr JSETFLS
|
||||||
|
|
||||||
ldy TXTTAB+1
|
ldy TXTTAB+1
|
||||||
|
|||||||
@@ -13,8 +13,7 @@
|
|||||||
// XXX for Mega65 it can be done more easily, by just disabling the badlines
|
// 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 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 document CONFIG_TAPE_HEAD_ALIGN option
|
||||||
// XXX create separate configuration for tape users
|
|
||||||
// XXX block NMIs
|
// XXX block NMIs
|
||||||
// XXX fix Mega65 build compilation issues
|
// XXX fix Mega65 build compilation issues
|
||||||
|
|
||||||
|
|||||||
@@ -40,15 +40,7 @@ tape_head_align_apply_gfx:
|
|||||||
and #%00000010
|
and #%00000010
|
||||||
beq !+
|
beq !+
|
||||||
|
|
||||||
lda #%00010000
|
// For 'normal'
|
||||||
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
|
|
||||||
|
|
||||||
lda #%00000001
|
lda #%00000001
|
||||||
ora __ha_chart + 7 + 8 * 6
|
ora __ha_chart + 7 + 8 * 6
|
||||||
@@ -58,7 +50,7 @@ tape_head_align_apply_gfx:
|
|||||||
ora __ha_chart + 7 + 8 * 13
|
ora __ha_chart + 7 + 8 * 13
|
||||||
sta __ha_chart + 7 + 8 * 13
|
sta __ha_chart + 7 + 8 * 13
|
||||||
|
|
||||||
// For turbo
|
// For 'turbo'
|
||||||
|
|
||||||
lda #%00010000
|
lda #%00010000
|
||||||
ora __ha_chart + 7 + 8 * 21
|
ora __ha_chart + 7 + 8 * 21
|
||||||
|
|||||||
@@ -111,23 +111,32 @@ tape_head_align_print_char:
|
|||||||
|
|
||||||
tape_head_align_help_text:
|
tape_head_align_help_text:
|
||||||
|
|
||||||
.word $2000 + (40 * 8) * 0 + 8 * 2
|
// Each string consists of:
|
||||||
.text "ADJUST HEAD FOR MINIMUM SIGNAL NOISE"
|
// - 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
|
.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)"
|
.text "IF THE DECK HAS A PITCH (TAPE SPEED)"
|
||||||
.byte $FF
|
.byte $FF
|
||||||
|
|
||||||
.word $2000 + (40 * 8) * 5 + 8 * 1
|
.word $2000 + (40 * 8) * 7 + 8 * 1
|
||||||
.text "CONTROL - USE IT TO PLACE DOTTED LINES"
|
.text "CONTROL, TWEAK IT SO THAT DOTTED LINES"
|
||||||
.byte $FF
|
.byte $FF
|
||||||
|
|
||||||
.word $2000 + (40 * 8) * 6 + 8 * 3
|
.word $2000 + (40 * 8) * 8 + 8 * 5
|
||||||
.text "EXACTLY HALF A WAY BETWEEN SIGNALS"
|
.text "ARE HALF A WAY BETWEEN SIGNALS"
|
||||||
.byte $FF
|
.byte $FF
|
||||||
|
|
||||||
.byte $FF
|
.byte $FF // end of strings
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
Reference in new issue
Block a user