Previous Messages |
Posted By
SVS on 2014-01-30 12:20:47
| Re: Special (reserved) memory
Inside Ultimate Map, go to RAM tab. All locations with leftmost column *green* colored can be safety used (possible warnings are anyway specified).
Dark green = available but affected by a reset; Light green = available and maintaining value after a reset.
|
|
Posted By
gerliczer on 2014-01-29 10:23:41
| Re: Special (reserved) memory
Right as Csabo said, $FF40-$FFFB is available. If you know what you are doing $FFFC-$FFFF can also be used, but be careful with the RESET and INTERRUPT vector. AFAIR the $FF20-$FF3D area can also be used. And of course what KiCHY said, too.
|
|
Posted By
KiCHY on 2014-01-29 09:46:49
| Re: Special (reserved) memory
There are also some zeropage addresses whose you should keep intact (or restore when page in the ROM), especially when you use the built-in I/O routines. Too bad my "online" memory cheats me sometimes, one of these zp addresses is $A2. $AE is also useful for further I/O. I used this value in UWOL to decide to load game from tape or disk drive 8, 9, etc.
|
|
Posted By
Sandor on 2014-01-29 08:21:37
| Re: Special (reserved) memory
Thanks.
|
|
Posted By
Csabo on 2014-01-29 07:59:56
| Re: Special (reserved) memory
You listed everything: $00/$01 for I/O, $0100-$01FF for stack and above $FD00 for TED stuff.
The lower part of the stack can be freely used (how much depends on your code), and $FF40-$FFFx is also free memory.
|
|
Posted By
Sandor on 2014-01-29 06:39:12
| Re: Special (reserved) memory
I have actually downloaded that yesterday because I've seen it in another thread, but honestly it confused me quite a bit. The problem on the xls file is that I can't decipher which memory addresses are taken by hardware and which are software only. I don't really need to call any of the KERNAL or ROM routines, because at the point where the whole memory is taken I've finished all the loading part and I've took over all the interrupts as well. So all I am worried about is if there are some addresses that will cause harm (for example start writing to disk, etc) when written to or if there is any location that will get overwritten by the hardware while my program is running - apart from $0000-$0001, $0100-$01ff and $fd00-$ffff.
|
|
Posted By
Luca on 2014-01-29 04:28:34
| Re: Special (reserved) memory
Ultimate Map has all the answers
|
|
Posted By
Sandor on 2014-01-29 04:19:28
| Special (reserved) memory
Hello,
I know that you can't use memory space from $fd00-$ffff and addresses $00 and $01 on zeropage. Are there any other addresses that you can't use as RAM (from assembler) when you have ROM disabled?
note: I have 8k memory that can be used as temporary buffer during load but that is taken afterwards. I can use that memory to load the code that will be on addresses $0200-$1fff after the load is completed. (That memory is later used for screen display).
Also are there any bytes in the $fd00-$ffff range that you can use?
|
|