adamantyr, on Fri May 27, 2011 4:30 PM, said:
Also, as far as more memory goes, I don't need a LOT more to finish the game, just a bit more. It looks like the SAVE utility takes up about 3k, which means I have about 9k of space left, if I use the 8k RAM in the cartridge for all my buffer spaces. (Anyone know a memory image creator that doesn't need the entire object file resident, so you could fill the entire 32k?)
Classic99 - the "memory save" facility was added for exactly this problem, and can create E/A#5 files. It can even throw in a block of VDP RAM at the end, taking it one step further than SAVE can do.
It's a part of the debugger window. Load your program normally, setting a breakpoint at the beginning of it. When it breakpoints, select Make->Save Memory as Program. Select E/A#5 from the dropdown, and fill in the options as needed! If you defined SFIRST, SLAST and SLOAD (you do not have to!), use the 'Read Defs' button to try and pull them in automatically. Otherwise, select the ranges you want to save, set the start address, and click 'Build'.
c99SaveMem.jpg 32.39K
2 downloads
Of the available options, E/A#5 can also use these:
-Include E/A utilities - will load the Editor/Assembler utilities (VMBW, etc) to load RAM in case you need those (this way games will run even without the E/A cart installed). This also makes sure the appropriate range in Low RAM is enabled to be saved.
-Load Character set - saves the VDP RAM containing the current character set as well. Note that even those the file is saved as a PROGRAM image normally, that the E/A loaders can't load it, since it doesn't go to CPU RAM. But it's a simple PROGRAM LOAD call to load it from your program.