Atarimax MaxFlash

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 21:40, 2 lut 2021
Jhusak (Dyskusja | wkład)
(edycja)
← Previous diff
Wersja z dnia 21:44, 2 lut 2021
Jhusak (Dyskusja | wkład)
(rozszerzenie o emulatory.)
Next diff →
Linia 9: Linia 9:
Bankowanie kartridża 1MB: wpis pod adres $d500-$d57f wybiera bank (boot bank to bank 0, w starszych wersjach 0x7f), wpis pod $d580 (i tylko tu) wyłącza kartridż. Zapis pod pozostałe adresy na stronie 0xD5 nie daje żadnego skutku. Banki umieszczone 2 pamięciach flash 29f040 są fizycznie adresowane po kolei, tzn bank nr 0 znajduje się pod adresem 0x000000 i każdy kolejny pod kolejnym adresem jako wielokrotność 0x2000. Bankowanie kartridża 1MB: wpis pod adres $d500-$d57f wybiera bank (boot bank to bank 0, w starszych wersjach 0x7f), wpis pod $d580 (i tylko tu) wyłącza kartridż. Zapis pod pozostałe adresy na stronie 0xD5 nie daje żadnego skutku. Banki umieszczone 2 pamięciach flash 29f040 są fizycznie adresowane po kolei, tzn bank nr 0 znajduje się pod adresem 0x000000 i każdy kolejny pod kolejnym adresem jako wielokrotność 0x2000.
 +
 +Oba kartridże są emulowane przez wiele emulatorów, np. [[Atari800]] (tylko odczyt), czy [[Altirra]] (odczyt i zapis).

Wersja z dnia 21:44, 2 lut 2021

Pod tą nazwą określane są 2 kartridże: MaxFlash1Mb (128 kilobajtów) i MaxFlash8Mb (1 megabajt). Oznaczenie może być mylące.

Kartridże te używają z reguły pamięci flash 29f010 (8 sektorów po 16kB) i 29f040 (8 sektorów po 64kB). Włożenie innego rodzaju pamięci nie niesie zagrożenia, lecz tracimy (możemy stracić) kompatybilność - flashery (programy zapisujące dane na kartridż) nie będą takiego kartridża rozpoznawać.

Bankowanie tych dwóch rodzajów kartridży ma różną logikę i nie są w 100% kompatybilne; jednak pisząc 2 rozkazy: STA $d510,STA $d580 można wyłączyć oba niezależnie, który jest użyty. Włączanie banków 0-15 odbywa się w ten sam sposób w obu kartridżach.

Bankowanie kartridża 128kB - wpis pod adres $d500-$d50f wybiera bank (boot bank to bank 0), wpis pod $d510 (i tylko tu) wyłącza kartridż. Zapis pod pozostałe adresy na stronie 0xD5 nie daje żadnego skutku. Ciekawostką jest, że we flashu 29f010 w kartridżu banki 8KB są ułożone w odwrotnej kolejności, czyli fizycznie bank nr 0 jest w pamięci flash pod adresem 0x1e000, a bank nr 15 jest pod adresem 0x00000.

Bankowanie kartridża 1MB: wpis pod adres $d500-$d57f wybiera bank (boot bank to bank 0, w starszych wersjach 0x7f), wpis pod $d580 (i tylko tu) wyłącza kartridż. Zapis pod pozostałe adresy na stronie 0xD5 nie daje żadnego skutku. Banki umieszczone 2 pamięciach flash 29f040 są fizycznie adresowane po kolei, tzn bank nr 0 znajduje się pod adresem 0x000000 i każdy kolejny pod kolejnym adresem jako wielokrotność 0x2000.

Oba kartridże są emulowane przez wiele emulatorów, np. Atari800 (tylko odczyt), czy Altirra (odczyt i zapis).

Personal tools