Login
Back to forumReply to this topicGo to last reply

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?

Posted By

Luca
on 2014-01-29
04:28:34
 Re: Special (reserved) memory

Ultimate Map has all the answers happy

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

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
08:21:37
 Re: Special (reserved) memory

Thanks. happy

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

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

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.



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2024. Support Plus/4 World on Patreon