-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
skip IO area when loading PRG files #188
base: master
Are you sure you want to change the base?
Conversation
This allows to load big PRG files, which then will be loaded into the banked RAM area, if it reaches the end of the BASIC RAM area. This allows easier program distribution without many small files. Example app: http://www.frank-buss.de/x16/mode7-full.prg Both load functions are changed: -prg and when using LOAD from BASIC. The native LOAD function with IEC will follow in the ROM repository, when I found a way to test it.
Frank, Just food for thought: told you, just food for thought ;) |
Does the current ROM use the banked RAM? If not, I don't see a problem. Even if it uses it at some time, this doesn't matter much, if you can still load one PRG after reset for games etc. If the banked RAM is used, then the current implementation which can load directly to the banked RAM (without lower RAM) would be needed to change, too. But I think we shouldn't make it too difficult, it is not like a multitask, multiuser system :-) |
True, but I kept thinking we can load some extensions, libraries (graphic), simon's basic, stuff like that. And it would be good if they are able to share the mem without a fight :) |
When verifying data in VRAM, the bank wrap check was executed unconditionally, which caused verify errors if it reached address $c000. New implementation: when loading large PRG files from 0801, it skips now the IO area from $9f00 to $9fff, and loads the rest of the program in banked RAM. Same implementation as already implemented in C with LOAD_HYPERCALLS enabled, and with the "-prg" argument of the emulator, see here: commanderx16/x16-emulator#188
@mist64 So what about this PR? I'm writing a bigger demo at the moment with Barry, would be nice to know if I have to split it in 2 files, or if I could use just one file :-) Works with the native LOAD as well with this PR. Or it will work, when someday the SD-card implementation works, and the IEC implementation is finished, but at least while testing my implementation, I fixed another critical bug in the LOAD function. |
…ve it onscreen (commanderx16#188) * If the emulator starts with the left/top of the window off screen, move it onscreen * update check here as well
This allows to load big PRG files, which then will be loaded
into the banked RAM area, if it reaches the end of the BASIC RAM
area. This allows easier program distribution without many small
files. Example app:
http://www.frank-buss.de/x16/mode7-full.prg
Both load functions are changed: -prg and when using LOAD from BASIC.
The native LOAD function with IEC will follow in the ROM repository,
when I found a way to test it.