memory models 46K and 50K work now, the 50K is now default, updated binaries

This commit is contained in:
FeralChild64 committed 2020-06-24 22:14:58 +02:00
1 parent 21f2f52571
commit da539256ab
15 files changed
+23 -11

No files matched your search

+3 -1
View File
@@ -105,12 +105,14 @@ Memory model the original machine uses - memory available for BASIC ends at `$9F
### `CONFIG_MEMORY_MODEL_46K` and `CONFIG_MEMORY_MODEL_50K`
Planned for the future - not available yet.
These models additionaly use RAM under BASIC, and the 50K additionally takes over `$C000`-`$CFFF` range. They should still be highly compatible (no additional RAM for helper routines is needed), and the performance penalty should be much lower than 60K model.
### `CONFIG_MEMORY_MODEL_60K`
Uses RAM under BASIC, I/O and KERNAL, takes over `$C000`-`$CFFF` area requires special helper routines installed in `$2A7`-`$2FF` area (normally unused and free for the user). Gives the most free memory for BASIC programs, but it's the slowest (for example, forces disabling optimized LOAD loop for JiffyDOS) and the least compatible model.
It is currently not compatible with Mega65 extended ROMs.
Comparing to standard memory model, it needs about 180 bytes in BASIC segment and 80 bytes in KERNAL segment - at the moment of doing the test, these values are expected to change often.
## IEC devices
+3 -3
View File
@@ -22,7 +22,7 @@ Here are the features of the Open ROMs not found in the original ROMs from the 8
* command with just the file name tries to use the last device if it's number seems sane; otherwise uses 8
* command without parameters tries to load first file from drive chosen as above
* uses RAM under ROM and I/O: 61438 bytes free
* uses RAM under ROM and I/O: 51199 bytes free (up to `$CFFF`) by default, but 61438 is also possible
* cold/warm start silences multiple SID chips
* warm start due to BRK prints out the instruction address
@@ -41,8 +41,8 @@ The following ROM features are currently missing:
* most BASIC commands
* BASIC variables
* BASIC expression parsing
* floating point routines
* BASIC expression handling
* most floating point routines
* RS-232 support
* NMI handling is incomplete
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
+3 -3
View File
@@ -39,9 +39,9 @@
// Memory model
#define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_46K // please keep disabled for now
// #define CONFIG_MEMORY_MODEL_50K // please keep disabled for now
// #define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_46K
#define CONFIG_MEMORY_MODEL_50K
// #define CONFIG_MEMORY_MODEL_60K
+2
View File
@@ -39,6 +39,8 @@
// Memory model
#define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_46K
// #define CONFIG_MEMORY_MODEL_50K
// #define CONFIG_MEMORY_MODEL_60K
+3 -1
View File
@@ -36,7 +36,9 @@
// Memory model
#define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_46K
#define CONFIG_MEMORY_MODEL_50K
// #define CONFIG_MEMORY_MODEL_60K
+3 -1
View File
@@ -36,7 +36,9 @@
// Memory model
#define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_46K
#define CONFIG_MEMORY_MODEL_50K
// #define CONFIG_MEMORY_MODEL_60K
+2
View File
@@ -37,6 +37,8 @@
// Memory model
// #define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_46K
// #define CONFIG_MEMORY_MODEL_50K
#define CONFIG_MEMORY_MODEL_60K
+3 -1
View File
@@ -36,7 +36,9 @@
// Memory model
#define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_38K
// #define CONFIG_MEMORY_MODEL_46K
#define CONFIG_MEMORY_MODEL_50K
// #define CONFIG_MEMORY_MODEL_60K
+1 -1
View File
@@ -43,7 +43,7 @@ peek_under_roms_via_OLDTXT:
// Retrieve value from under ROMs
lda (TXTPTR), y
lda (OLDTXT), y
#if HAS_OPCODES_65C02
bra peek_under_roms_finalize