A Memória

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.
Spectrum Világ 7. rész