
A
Z-80 mikroprocesszor egyidőben 65536 cím megkülönböztetését tudja elvégezni
(0000-FFFFh). A hagyományos 48K Spectrum esetében az alsó 16K a ROM, míg a
felette elhelyezkedő 48K memória a RAM.
A 128K Spectrum esetében a memóriatérkép hasonló, annyi különbséggel, hogy
un. árnyék memóriaterületeket is találunk, amelyek megfelelő rutinok alkalmazásával
lapozhatók. A 128K Spectrumban 2 ROM lap és összesen 10 RAM lap található,
s minden egyes lap mérete 16K. Ebből adódóan összesen 131072 RAM és 32768
ROM byte-unk áll rendelkezésre, azaz összmemóriánk 163840 byte (160K). Mindettől
függetlenül egyidőben akkor is csak 16K ROM és 48K RAM áll rendelkezésünkre.
A RAM 2 és a RAM 5 szelet mindig állandó, az itt található területre nem tudunk
felüllapozni (4000h-C000h).
A RAM szempontjából érdekes terület a felső 16K (C000h-FFFFh), melyen belül
újabb két típust különíthetünk el.
A RAM 4-7 a RAM 5-höz hasonlóan olyan memóriakörbe tartozik, amely részt vesz
a video-kép kezelésében is, ezért kritikus idővel futó rutinok és ciklusok
(pl. zene vagy töltő/mentő rutinok) itt nem futtathatók. Erre kiválóan alkalmasa
RAM 0-3 terület, ahol ilyen gondba nem ütközünk.
Az egyes szeletek kijelölése a 32765 (7FFDh) I/0 portop keresztül címezve
oldható meg, a jobb oldali adatbitek jelölése a következő:
D0-D2 : RAM kiválasztás
D3 : képernyő kiválasztás
D4 : ROM kiválasztás
D5 : 48K üzemmód kapcsoló
A D2-D0 3 bites adat (0-7) választja ki a megfelelő RAM szeletet (C000h-FFFFh).
BASIC programok írásakor a RAM 0 hagyományos tároló, míg a RAM 7-ben tárolódnak
el a megfelelő változó pufferek. A D3 a képernyő-kapcsoló, 0 esetén a RAM
5 elejére, míg 1 esetén a RAM 7 elejére áll a képernyő-memória i11. rendszerváltozók.
Ez utóbbi esetben a teljes 48K szabadon felhasználható (4000h-FFFFh), természetesen
csak gépi kódból folyamatos adatok ill. rutinok tárolására.
A D4 a ROM kapcsoló. 0 esetén ROM 0, a szerkesztő ROM, míg 1 esetén ROM 1,
a BASIC ROM lesz kiválasztva.
A D5 aktív állapota a rendszert a 48K üzemmódba irányítja át, megjegyeznénk,
hogy innen már csak a RESET segítségével léphetünk vissza ismét a 128K módba.