1.4 Memory
ROM: 0000-7FFF
RAM: 0000-FFFF
ROM can be switched off to release all addressable space for RAM
RAM can be switched off externally (RAM signal on system bus)
ROM is flash-type so its content can be changed from software. Rewriting must be enabled on system bus.
RAM is divided to four segments:
segment 0: 0000-3FFF
segment 1: 4000-7FFF
segment 2: 8000-BFFF
segment 3: C000-FFFF
Any memory page can be bound to any segment (even duplicated). RAM is virtually divided to 2 banks, 16 pages each, 512kB in total.
Two memory banks can be switched-over, but only if ROM is active. Switching banks from RAM may cause system crash as next instruction will be read from second bank. No way to mix pages from different banks, one bank only can be active at a time.
Always keep attention where Stack is placed. Switching or mirroring pages and banks may cause the stack will be lost or rewritten.
Examples of memory configurations:
ROM is on
each segment to different page
page mirroring
page duplicating
second bank
not allowed
not allowed