Dodatkowe bloki ramdysku są podzielone na kawałki po 16K które można przełączać z obszarem RAMu zaczynającym się od szesnastkowo &4000.
Służy do tego komenda OUT &7F00,nr_bloku W rozszerzeniu 64K do CPC464 te bloki mają numery od 196 do 199, a standardowy blok to 192.
Choć niektórzy je tak przerabiali by te bloki miały nr takie same jak ramdysk w CPC6128 czyli od 204 do 207, bo dzięki temu więcej softu dla tego modelu działała też na 464.
Jak sprawdzić czy ten RAM mamy? - Przełączyć na inny nr bloku niż standardowy, wpisać tam dowolny POKE, przełączyć na blok standardowy i wpisać pod ten sam adres inną wartość niż wpisaliśmy w dodatkowym bloku, teraz znowu przełączyć na testowany blok i odczytać co tam mamy. Jeśli PEEK pokaże to co wpisaliśmy w dodatkowym, to znaczy że go widzi, a jeśli to co w standardowym to znaczy że go nie widzi i w rzeczywistości mimo przełączania bloków nadal mamy pod tym adresem standardowy obszar pamięci. Czyli tak:
OUT &7f00,196:POKE &4000,196:OUT &7f00,192:POKE &4000,192:OUT &7f00,196:PRINT PEEK(&4000)
I jak wyświetli 196 to się cieszymy a jak 192 to znaczy że nie mamy z czego.

Dodałem mój tester RAMu w DSK. Obczaja rozszerzenia do 512K. Teoretycznie zmienna t zmieniona z 31 na 255 powinna badać nawet 4MB, ale w testach na niektórych emulatorach głupieje i bywa że każde dodatkowe 16K liczy jako 128K. Nie jestem pewien czy coś poknociłem w programie czy to te emulatory w rzeczywistości dodają tyle ile wykazuje mój program. Trzeba by to sprawdzić na prawdziwym.
