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