Viewing Issue Advanced Details Jump to Notes ] coco12.cpp
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
05823 Core Minor Always Jan 3, 2015, 23:01 Aug 29, 2016, 09:39
Tester Robert Gault View Status Public Platform MESS (Official Binary)
Assigned To npwoods Resolution Fixed OS Windows XP
Status [?] Resolved   Driver coco12.cpp
Version 0.157 Fixed in Version 0.177 Build Normal
Summary MESS-specific 05823: coco cocoe coco2 coco2b: -ramsize does nothing for emulation although it does change the .ini file
Description MESS has had the option of selecting different RAM sizes for each of the Coco emulations. This can be done with a command line parameter -ramsize or via a ui configuration menu. It can also be set by an entry in an ini file such as coco.ini . I'm not sure when this stopped working but it did in 0.134b and 0.136b.

Please note that this feature still works for coco3 and coco3h emulation but not for coco, cocoe, coco2, and coco2b. However, the range of memory for a coco3 or coco3h is 128K-8Meg while that for the coco-coco2b is 4K-64K. That should suggest why one group works and the other fails.

For the coco and coco2 series, the effect of this feature can be shown via BASIC using the MEM function.
Steps To Reproduce Using mess 0.134b
mess coco -ramsize 4096
When emulation starts, enter the command
PRINT MEM
 2343
The free memory will be shown as above.
Using mess 0.157
mess coco -ramsize 4096
PRINT MEM
 31015
That last value shows that -ramsize was ignored.
Additional Information
Flags
Regression Version 0.148
Affected Sets / Systems coco cocoe coco2 coco2b
Attached Files
 


-  Notes
User avatar
No.11353
Osso
(Developer)
Jan 4, 2015, 08:23
This regressed between 0.147 and 0.148. Looking at the possible causes, this commit seems the most probable: http://git.redump.net/mame/commit/src/mess?id=d3570cf17645ec5aec710cc377c4b6379434eb3d
User avatar
No.12293
Osso
(Developer)
Dec 30, 2015, 11:35
The problem seems to be at line 179 of mame/machine/6883sam.h: m_space_0000 has a hardcoded _addrend of 0x7FFF, which doesn't get changed by the emulation according to the chosen -ramsize value.