motherboard extras can now be configured
This commit is contained in:
1 parent
34f984b8f0
commit
aec7fe9721
7 files changed
+57
-8
No files matched your search
@@ -23,6 +23,10 @@ Since Open ROMs is highly modular, it should be possible to add other platforms
|
|||||||
* 8KB ROM area `$A000`-`$BFFF`
|
* 8KB ROM area `$A000`-`$BFFF`
|
||||||
* 8KB ROM area `$E000`-`$FFFF`
|
* 8KB ROM area `$E000`-`$FFFF`
|
||||||
|
|
||||||
|
### `CONFIG_MB_MEGA_65`, `CONFIG_MB_ULTIMATE_64`
|
||||||
|
|
||||||
|
Select if the ROM is going to be used exclusively on the specific motherboard. It prevents from enabling options not having sense, skips initialization of C128-only registers, etc.
|
||||||
|
|
||||||
### `CONFIG_BRAND_GENERIC`
|
### `CONFIG_BRAND_GENERIC`
|
||||||
|
|
||||||
If you don't know which variant to choose - select this one.
|
If you don't know which variant to choose - select this one.
|
||||||
|
|||||||
@@ -14,6 +14,9 @@
|
|||||||
|
|
||||||
#define CONFIG_PLATFORM_COMMODORE_64
|
#define CONFIG_PLATFORM_COMMODORE_64
|
||||||
|
|
||||||
|
// #define CONFIG_MB_MEGA_65
|
||||||
|
// #define CONFIG_MB_ULTIMATE_64
|
||||||
|
|
||||||
#define CONFIG_BRAND_GENERIC
|
#define CONFIG_BRAND_GENERIC
|
||||||
// #define CONFIG_BRAND_TESTING
|
// #define CONFIG_BRAND_TESTING
|
||||||
// #define CONFIG_BRAND_MEGA_65
|
// #define CONFIG_BRAND_MEGA_65
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
// Idea:
|
// Idea:
|
||||||
// - sane defaults for the Mega 65 FPGA computer
|
// - 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,
|
// - unless VICE gains Commodore 65 (or at least Flash8 cartridge) emulation support,
|
||||||
// do not enable CPU-specific optimizations; ROMs would be hard to test
|
// do not enable CPU-specific optimizations; ROMs would be hard to test
|
||||||
|
|
||||||
@@ -15,6 +16,9 @@
|
|||||||
|
|
||||||
#define CONFIG_PLATFORM_COMMODORE_64
|
#define CONFIG_PLATFORM_COMMODORE_64
|
||||||
|
|
||||||
|
#define CONFIG_MB_MEGA_65
|
||||||
|
// #define CONFIG_MB_ULTIMATE_64
|
||||||
|
|
||||||
// #define CONFIG_BRAND_GENERIC
|
// #define CONFIG_BRAND_GENERIC
|
||||||
// #define CONFIG_BRAND_TESTING
|
// #define CONFIG_BRAND_TESTING
|
||||||
#define CONFIG_BRAND_MEGA_65
|
#define CONFIG_BRAND_MEGA_65
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
// Idea:
|
// Idea:
|
||||||
// - enable compatibility-risky features
|
// - enable compatibility-risky features
|
||||||
// - enable code not normally used yto make sure it still compiles
|
// - enable code not normally used - to make sure they still compile
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -15,6 +15,9 @@
|
|||||||
|
|
||||||
#define CONFIG_PLATFORM_COMMODORE_64
|
#define CONFIG_PLATFORM_COMMODORE_64
|
||||||
|
|
||||||
|
// #define CONFIG_MB_MEGA_65
|
||||||
|
// #define CONFIG_MB_ULTIMATE_64
|
||||||
|
|
||||||
// #define CONFIG_BRAND_GENERIC
|
// #define CONFIG_BRAND_GENERIC
|
||||||
#define CONFIG_BRAND_TESTING
|
#define CONFIG_BRAND_TESTING
|
||||||
// #define CONFIG_BRAND_MEGA_65
|
// #define CONFIG_BRAND_MEGA_65
|
||||||
|
|||||||
@@ -14,6 +14,9 @@
|
|||||||
|
|
||||||
#define CONFIG_PLATFORM_COMMODORE_64
|
#define CONFIG_PLATFORM_COMMODORE_64
|
||||||
|
|
||||||
|
// #define CONFIG_MB_MEGA_65
|
||||||
|
#define CONFIG_MB_ULTIMATE_64
|
||||||
|
|
||||||
// #define CONFIG_BRAND_GENERIC
|
// #define CONFIG_BRAND_GENERIC
|
||||||
// #define CONFIG_BRAND_TESTING
|
// #define CONFIG_BRAND_TESTING
|
||||||
// #define CONFIG_BRAND_MEGA_65
|
// #define CONFIG_BRAND_MEGA_65
|
||||||
|
|||||||
@@ -19,7 +19,31 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Check that platform and brand configuration is correct
|
// Check that motherboard extras configuration is correct
|
||||||
|
|
||||||
|
{
|
||||||
|
.var selected = 0;
|
||||||
|
|
||||||
|
#if CONFIG_MB_MEGA_65
|
||||||
|
.eval selected++
|
||||||
|
#endif
|
||||||
|
#if CONFIG_MB_ULTIMATE_64
|
||||||
|
.eval selected++
|
||||||
|
#endif
|
||||||
|
|
||||||
|
.if (selected > 1) .error "Please select at most one CONFIG_MB_* option"
|
||||||
|
|
||||||
|
#if !CONFIG_PLATFORM_COMMODORE_64 && CONFIG_BRAND_MEGA_65 &&
|
||||||
|
.error "CONFIG_BRAND_MEGA_65 can only be used with CONFIG_PLATFORM_COMMODORE_64"
|
||||||
|
#endif
|
||||||
|
#if !CONFIG_PLATFORM_COMMODORE_64 && CONFIG_BRAND_ULTIMATE_64 &&
|
||||||
|
.error "CONFIG_BRAND_ULTIMATE_64 can only be used with CONFIG_PLATFORM_COMMODORE_64"
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Check that brand configuration is correct
|
||||||
|
|
||||||
{
|
{
|
||||||
.var selected = 0;
|
.var selected = 0;
|
||||||
@@ -39,11 +63,11 @@
|
|||||||
|
|
||||||
.if (selected != 1) .error "Please select exactly one CONFIG_BRAND_* option"
|
.if (selected != 1) .error "Please select exactly one CONFIG_BRAND_* option"
|
||||||
|
|
||||||
#if !CONFIG_PLATFORM_COMMODORE_64 && CONFIG_BRAND_MEGA_65 &&
|
#if CONFIG_MB_MEGA_65 && !(CONFIG_BRAND_MEGA_65 || CONFIG_BRAND_TESTING)
|
||||||
.error "CONFIG_BRAND_MEGA_65 can only be used with CONFIG_PLATFORM_COMMODORE_64"
|
.error "Please select brand either matching the CONFIG_MB_*, or a testing one"
|
||||||
#endif
|
#endif
|
||||||
#if !CONFIG_PLATFORM_COMMODORE_64 && CONFIG_BRAND_ULTIMATE_64 &&
|
#if CONFIG_MB_ULTIMATE_64 && !(CONFIG_BRAND_ULTIMATE_64 || CONFIG_BRAND_TESTING)
|
||||||
.error "CONFIG_BRAND_ULTIMATE_64 can only be used with CONFIG_PLATFORM_COMMODORE_64"
|
.error "Please select brand either matching the CONFIG_MB_*, or a testing one"
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -121,8 +145,12 @@
|
|||||||
// Check if keyboard options are correct
|
// Check if keyboard options are correct
|
||||||
|
|
||||||
{
|
{
|
||||||
#if CONFIG_LEGACY_SCNKEY && CONFIG_KEYBOARD_C128
|
#if CONFIG_LEGACY_SCNKEY && (CONFIG_KEYBOARD_C128 || CONFIG_KEYBOARD_C128_CAPS_LOCK)
|
||||||
.error "CONFIG_LEGACY_SCNKEY and CONFIG_KEYBOARD_C128 are mutually exclusive"
|
.error "CONFIG_LEGACY_SCNKEY and CONFIG_KEYBOARD_C128* are mutually exclusive"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if (CONFIG_MB_MEGA_65 || CONFIG_MB_ULTIMATE_64) && (CONFIG_KEYBOARD_C128 || CONFIG_KEYBOARD_C128_CAPS_LOCK)
|
||||||
|
.error "Selected CONFIG_MB_* is not compatible with CONFIG_KEYBOARD_C128*"
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,8 @@ setup_vicii:
|
|||||||
dex
|
dex
|
||||||
bpl !-
|
bpl !-
|
||||||
|
|
||||||
|
#if !CONFIG_MB_MEGA_65 && !CONFIG_MB_ULTIMATE_64
|
||||||
|
|
||||||
// Disable C128 extra keys - just to be sure they won't interfere with anything
|
// Disable C128 extra keys - just to be sure they won't interfere with anything
|
||||||
|
|
||||||
stx VIC_XSCAN
|
stx VIC_XSCAN
|
||||||
@@ -26,6 +28,8 @@ setup_vicii:
|
|||||||
|
|
||||||
stx VIC_CLKRATE
|
stx VIC_CLKRATE
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
// Set up default IO values
|
// Set up default IO values
|
||||||
// - [CM64] page 129 - VIC_SCROLY
|
// - [CM64] page 129 - VIC_SCROLY
|
||||||
// - [CM64] pages 140-144 - VIC_SCROLX
|
// - [CM64] pages 140-144 - VIC_SCROLX
|
||||||
|
|||||||
Reference in new issue
Block a user