Antonia 4 MB
From Atariki
Rozszerzenie opracowane przez Simiusa w 2015 roku. Zawiera procesor 65C816, 4 MB pamięci RAM oraz 512k pamięci flash-ROM. Jest to rozwinięcie prototypowego rozszerzenia SIMMius 4 MB o podobnym działaniu, ale odmiennej konstrukcji.
Rozszerzenie ma postać płytki o rozmiarach ok. 3x6 cm, wstawia się ją w miejsce po wyjętym z płyty CPU.
Spis treści |
Pamięć RAM
Znajdujące się na płytce 4 MB pamięci można skonfigurować jako zwykłe rozszerzenie pamięci (kontrolowane rejestrem PORTB) o wielkości do 1 MB lub jako rozszerzenie typu Axlon o wielkości do 4 MB. Dodatkowo można włączyć od 2 do 4 MB pamięci liniowej. Razem daje to 16 możliwych konfiguracji pamięci.
Przydział pamięci robiony jest tak, żeby całość zawsze mieściła się w dostępnej kostce 4 MB, a zatem np. przydzielenie 1 MB do pamięci bankowanej powoduje odpowiednie zmniejszenie się dostępnego obszaru pamięci liniowej.
Do wyboru są następujące układy:
- 64k RAM: brak pamięci bankowanej, możliwość włączenia 4 MB pamięci liniowej
- 128k RAM (zgodne ze 130XE): 64k pamięci bankowanej, możliwość włączenia 3 MB pamięci liniowej
- 192k RAM (zgodne z 192XT): 128k pamięci bankowanej, możliwość włączenia 3 MB pamięci liniowej
- 256k RAM (zgodne z TOMS 260XE): 192k pamięci bankowanej, możliwość włączenia 3 MB pamięci liniowej
- 320k RAM (zgodne z Rambo XL): 256k pamięci bankowanej, możliwość włączenia 3 MB pamięci liniowej
- 576k RAM (zgodne z Compy Shop), 512k pamięci bankowanej, możliwość włączenia 3 MB pamięci liniowej
- 1088k RAM (zgodne z Rambo XL): 1024k pamięci bankowanej, możliwość włączenia 3 MB pamięci liniowej
- Axlon 2 MB: 2032k (127 banków) pamięci bankowanej, 2 MB pamięci liniowej
- Axlon 4 MB: 4016k (251 banków) pamięci bankowanej, brak pamięci liniowej.
Wybór rozmiaru rozszerzenia Axlon uzależniony jest od tego, czy włączono pamięć liniową: jeśli jest włączona, obszar 4 MB zostanie rozdzielony po równo pomiędzy pamięc bankowaną i liniową - a jeśli nie, wtedy całość pamięci zostanie przeznaczona na pamięć bankowaną.
Pamięć ROM
W rozszerzeniu użyto pamięci 29F040 o pojemności 512k. Jest ona podzielona na dwie połowy: górne 256k o stałej zawartości oraz dolne 256k, gdzie zawartość może być zmieniana przez użytkownika. Wyboru połówek dokonuje się przełącznikiem. Część stała zawiera standardowy XL OS oraz Atari BASIC i służy do uratowania sytuacji, w razie gdyby programowanie dolnej połówki się nie powiodło.
Dolna połówka zawiera miejsce na 8 systemów operacyjnych i 8 BASIC-ów, co razem daje 192k - pozostałe 64k są niewykorzystane.
Rejestr sterujący
Rejestr sterujący znajduje się pod adresem $d1f7. Znaczenie bitów:
Bity | Funkcja |
7 | Ustawienie powoduje czasowe zniesienie blokady zapisu (patrz niżej). |
6-4 | Wybór ROM-u. |
3 | Sterowanie pamięcią liniową: 1 - włączona. |
2-0 | Wybór konfiguracji RAM-u bankowanego:
|
Rejestr jest chroniony przed przypadkowymi zapisami: do zmiany jego zawartości trzeba użyć procedury, która w praktyce eliminuje prawdopodobieństwo, że przypadkowy "strzał" w ten adres spowoduje przekonfigurowanie rozszerzenia. Potrzebne są tu dwie kolejne operacje zapisu: pierwsza ustawia bit 7, co czasowo znosi blokadę rejestru. Nowa wartość rejestru - ze skasowanym bitem 7 - musi zostać zapisana w przeciągu następnych czterech cykli zegara 1,77 MHz. Po tym okresie blokada zapisu zostaje przywrócona.
Ustawienie nowej konfiguracji nie następuje natychmiast: przetwarzanie nowej wartości zajmuje sprzętowi około 3,6 ms (ok. 56 linii skaningowych). Przed upływem tego czasu rejestr nie będzie reagował na zapisy.
Ciekawostki
Nazwę zaproponował Simius: Antonia to imię jego wnuczki.