small build system and config files reorganization

This commit is contained in:
FeralChild64 committed 2019-12-20 17:29:06 +01:00
1 parent 8f30156ec5
commit 9392728750
20 files changed
+224 -41

No files matched your search

+133
View File
@@ -0,0 +1,133 @@
.const CONFIG_ID = $00 // should be 1 byte, different for each config file!
.encoding "petscii_upper"
//
// Please read CONFIG.md before modifying this file!
//
// Idea:
// - configuration for custom builds and for development
// - file contains options to enable unfinished functionalities
// Hardware platform and brand
#define CONFIG_PLATFORM_COMMODORE_64
// #define CONFIG_MB_MEGA_65
// #define CONFIG_MB_ULTIMATE_64
#define CONFIG_BRAND_CUSTOM_BUILD
// #define CONFIG_BRAND_GENERIC
// #define CONFIG_BRAND_TESTING
// #define CONFIG_BRAND_MEGA_65
// #define CONFIG_BRAND_ULTIMATE_64
.const CONFIG_CUSTOM_BRAND = @"CUSTOM BUILD"
// Processor instruction set
#define CONFIG_CPU_MOS_6502
// #define CONFIG_CPU_WDC_65C02
// #define CONFIG_CPU_CSG_65CE02
// #define CONFIG_CPU_WDC_65816
// Memory model
#define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_60K
// I/O devices
#define CONFIG_IEC
#define CONFIG_IEC_BLANK_SCREEN
// #define CONFIG_IEC_DOLPHINDOS // please keep disabled for now
#define CONFIG_IEC_JIFFYDOS
#define CONFIG_TAPE_NORMAL // not finished yet!
#define CONFIG_TAPE_TURBO
// #define CONFIG_RS232_UP2400 // please keep disabled for now
// #define CONFIG_RS232_UP9600 // please keep disabled for now
// Multiple SID support
// #define CONFIG_SID_2ND
.const CONFIG_SID_2ND_ADDRESS = $D420
// #define CONFIG_SID_3RD
.const CONFIG_SID_3RD_ADDRESS = $D440
// #define CONFIG_SID_D4XX
// #define CONFIG_SID_D5XX
// Keyboard settings
// #define CONFIG_LEGACY_SCNKEY
// #define CONFIG_KEYBOARD_C128
// #define CONFIG_KEYBOARD_C128_CAPS_LOCK
// #define CONFIG_KEYBOARD_C65 // untested
// #define CONFIG_KEYBOARD_C65_CAPS_LOCK // untested
// #define CONFIG_KEY_REPEAT_DEFAULT
// #define CONFIG_KEY_REPEAT_ALWAYS
#define CONFIG_KEY_FAST_SCAN
#define CONFIG_JOY1_CURSOR
#define CONFIG_JOY2_CURSOR
#define CONFIG_PROGRAMMABLE_KEYS
.const CONFIG_KEYCMD_RUN = @"\$5FL"
.const CONFIG_KEYCMD_F1 = @"@"
.const CONFIG_KEYCMD_F2 = @""
.const CONFIG_KEYCMD_F3 = @"RUN:"
.const CONFIG_KEYCMD_F4 = @""
.const CONFIG_KEYCMD_F5 = @"LOAD"
.const CONFIG_KEYCMD_F6 = @""
.const CONFIG_KEYCMD_F7 = @"@$"
.const CONFIG_KEYCMD_F8 = @""
.const CONFIG_KEYCMD_HELP = @"LIST"
.const CONFIG_KEYCMD_F9 = @""
.const CONFIG_KEYCMD_F10 = @""
.const CONFIG_KEYCMD_F11 = @""
.const CONFIG_KEYCMD_F12 = @""
.const CONFIG_KEYCMD_F13 = @""
.const CONFIG_KEYCMD_F14 = @""
// Screen editor
#define CONFIG_EDIT_STOPQUOTE
#define CONFIG_EDIT_TABULATORS
// Software features
#define CONFIG_PANIC_SCREEN
#define CONFIG_DOS_WEDGE
#define CONFIG_TAPE_WEDGE
#define CONFIG_BCD_SAFE_INTERRUPTS
// Eye candy
// #define CONFIG_COLORS_BRAND
// #define CONFIG_BANNER_SIMPLE
#define CONFIG_BANNER_FANCY
// #define CONFIG_BANNER_BRAND
#define CONFIG_SHOW_FEATURES
#define CONFIG_SHOW_PAL_NTSC
// Debug options
// #define CONFIG_DBG_STUBS_BRK
// #define CONFIG_DBG_PRINTF
+1 -6
View File
@@ -1,5 +1,5 @@
.const CONFIG_ID = $00 // should be 1 byte, different for each config file!
.const CONFIG_ID = $01 // should be 1 byte, different for each config file!
.encoding "petscii_upper"
//
@@ -42,15 +42,10 @@
#define CONFIG_IEC
#define CONFIG_IEC_BLANK_SCREEN
// #define CONFIG_IEC_DOLPHINDOS // please keep disabled for now
#define CONFIG_IEC_JIFFYDOS
#define CONFIG_TAPE_NORMAL // not finished yet!
#define CONFIG_TAPE_TURBO
// #define CONFIG_RS232_UP2400 // please keep disabled for now
// #define CONFIG_RS232_UP9600 // please keep disabled for now
// Multiple SID support
+3 -10
View File
@@ -1,5 +1,5 @@
.const CONFIG_ID = $01 // should be 1 byte, different for each config file!
.const CONFIG_ID = $02 // should be 1 byte, different for each config file!
.encoding "petscii_upper"
//
@@ -9,8 +9,6 @@
// Idea:
// - sane defaults for the Mega 65 FPGA computer
// - do not enable features which are a significant compatibility risk
// - unless VICE gains Commodore 65 (or at least Flash8 cartridge) emulation support,
// do not enable CPU-specific optimizations; ROMs would be hard to test
// Hardware platform and brand
@@ -28,9 +26,9 @@
// Processor instruction set
#define CONFIG_CPU_MOS_6502
// #define CONFIG_CPU_MOS_6502
// #define CONFIG_CPU_WDC_65C02
// #define CONFIG_CPU_CSG_65CE02
#define CONFIG_CPU_CSG_65CE02
// #define CONFIG_CPU_WDC_65816
@@ -44,15 +42,10 @@
#define CONFIG_IEC
#define CONFIG_IEC_BLANK_SCREEN
// #define CONFIG_IEC_DOLPHINDOS // please keep disabled for now
#define CONFIG_IEC_JIFFYDOS
// #define CONFIG_TAPE_NORMAL // please keep disabled for now
// #define CONFIG_TAPE_TURBO
// #define CONFIG_RS232_UP2400 // please keep disabled for now
// #define CONFIG_RS232_UP9600 // please keep disabled for now
// Multiple SID support
+1 -5
View File
@@ -1,5 +1,5 @@
.const CONFIG_ID = $02 // should be 1 byte, different for each config file!
.const CONFIG_ID = $03 // should be 1 byte, different for each config file!
.encoding "petscii_upper"
//
@@ -42,14 +42,10 @@
#define CONFIG_IEC
#define CONFIG_IEC_BLANK_SCREEN
// #define CONFIG_IEC_DOLPHINDOS // please keep disabled for now
#define CONFIG_IEC_JIFFYDOS
// #define CONFIG_TAPE_NORMAL // please keep disabled for now
#define CONFIG_TAPE_TURBO
// #define CONFIG_RS232_UP2400 // please keep disabled for now
// #define CONFIG_RS232_UP9600 // please keep disabled for now
// Multiple SID support
+7 -4
View File
@@ -47,6 +47,9 @@
{
.var selected = 0;
#if CONFIG_BRAND_CUSTOM_BUILD
.eval selected++
#endif
#if CONFIG_BRAND_GENERIC
.eval selected++
#endif
@@ -62,11 +65,11 @@
.if (selected != 1) .error "Please select exactly one CONFIG_BRAND_* option"
#if CONFIG_MB_MEGA_65 && !(CONFIG_BRAND_MEGA_65 || CONFIG_BRAND_TESTING)
.error "Please select brand either matching the CONFIG_MB_*, or a testing one"
#if CONFIG_MB_MEGA_65 && !(CONFIG_BRAND_MEGA_65 || CONFIG_BRAND_TESTING || CONFIG_BRAND_CUSTOM_BUILD)
.error "Please select brand either matching the CONFIG_MB_*, or a testing/custom one"
#endif
#if CONFIG_MB_ULTIMATE_64 && !(CONFIG_BRAND_ULTIMATE_64 || CONFIG_BRAND_TESTING)
.error "Please select brand either matching the CONFIG_MB_*, or a testing one"
#if CONFIG_MB_ULTIMATE_64 && !(CONFIG_BRAND_ULTIMATE_64 || CONFIG_BRAND_TESTING || CONFIG_BRAND_CUSTOM_BUILD)
.error "Please select brand either matching the CONFIG_MB_*, or a testing/custom one"
#endif
}
+24
View File
@@ -10,6 +10,8 @@ initmsg_real:
ldy #>startup_banner
jsr STROUT
#if !CONFIG_BRAND_CUSTOM_BUILD
ldx #$01
ldy #$04
jsr plot_set
@@ -18,13 +20,23 @@ initmsg_real:
ldy #>rom_revision_basic_string
jsr STROUT
#endif // no CONFIG_BRAND_CUSTOM_BUILD
#if !CONFIG_BRAND_CUSTOM_BUILD
ldx #$03
#else
ldx #$02
#endif
ldy #$04
jsr plot_set
jsr initmsg_bytes_free
#if !CONFIG_BRAND_CUSTOM_BUILD
ldx #$06
#else
ldx #$05
#endif
ldy #$00
#if CONFIG_SHOW_PAL_NTSC && CONFIG_SHOW_FEATURES
jsr plot_set
@@ -54,6 +66,8 @@ initmsg_real:
ldy #>startup_banner
jsr STROUT
#if !CONFIG_BRAND_CUSTOM_BUILD
ldx #$01
ldy #$0A
jsr plot_set
@@ -66,13 +80,23 @@ initmsg_real:
ldy #>rom_revision_basic_string
jsr STROUT
#endif // no CONFIG_BRAND_CUSTOM_BUILD
#if !CONFIG_BRAND_CUSTOM_BUILD
ldx #$03
#else
ldx #$02
#endif
ldy #$0A
jsr plot_set
jsr initmsg_bytes_free
#if !CONFIG_BRAND_CUSTOM_BUILD
ldx #$06
#else
ldx #$05
#endif
ldy #$00
#if CONFIG_SHOW_PAL_NTSC && CONFIG_SHOW_FEATURES
jsr plot_set
+8 -1
View File
@@ -8,7 +8,10 @@
.macro BANNER_TEXT() {
#if CONFIG_BRAND_GENERIC
#if CONFIG_BRAND_CUSTOM_BUILD
.text "OPEN ROMS "
.text CONFIG_CUSTOM_BRAND
#elif CONFIG_BRAND_GENERIC
.text "OPEN ROMS GENERIC BUILD"
#elif CONFIG_BRAND_TESTING
.text "OPEN ROMS TESTING BUILD"
@@ -61,11 +64,15 @@ rainbow_logo:
.byte SET_COLOR_0, $00
}
#if !CONFIG_BRAND_CUSTOM_BUILD
pre_revision_string:
.text "RELEASE "
.byte $00
#endif // no CONFIG_BRAND_CUSTOM_BUILD
#elif CONFIG_BANNER_BRAND && CONFIG_BRAND_MEGA_65
// Fancy Mega65 banner - from Retrofan
@@ -21,7 +21,12 @@ rom_revision_basic_string:
// $BF55
#if !CONFIG_BRAND_CUSTOM_BUILD
.text "(DEVEL SNAPSHOT)" // actual ROM revision string; up to 16 characters
#else
.text "(CUSTOM BUILD)"
#endif
.byte $00 // marks the end of string
__rom_revision_basic_end:
@@ -35,7 +35,12 @@ rom_revision_kernal_string:
// $E4BC
#if !CONFIG_BRAND_CUSTOM_BUILD
.text "(DEVEL SNAPSHOT)" // actual ROM revision string; up to 16 characters
#else
.text "(CUSTOM BUILD)"
#endif
.byte $00 // marks the end of string
__rom_revision_kernal_end: