Impressum
home sonstiges und allgemeines - gasperrt! PC und drumrum AVR Mikrocontroller - gesperrt! Atari ST und drumrum Links Shop - gesperrt!
->Atari ST-> reSTeycle->Decodi Decoda
Zurück Adressdecodierung
Der original Atari ST wurde mit 192KB Rom, welches sich auf sechs ROMs mit je 32KB aufteilte. Außerdem konnte per Steck-Modul noch einmal 128KB Rom eingesteckt werden. Auch hier waren 32KB-Chips vorgesehen. Das macht insgesamt 10 ROMs, da aber der ST 16-bittig ausgelegt ist, werden immer 2 ROMs als eine Bank angesprochen, insgesamt also 5 Bänke. Der GLUE stellt hierfür 5 ROM-Select-Leitungen bereit.

Spätestens beim Mega ST war das gesamte ROM in zwei 128KB-ROMs untergebracht. Um diese IC's zu selectieren wurden die drei ROM-Select-Leitungen des GLUE mit einem LS11 (Oder mit 3 Eingängen) zu einem Select- Signal zusammengefaßt. Später mit dem TOS 2.06 war der für das ROM vorgesehene Speicherbereich von 192 KB nicht mehr ausreichend und das TOS 2.06 wurde in den Speicherbereich ab $E00000 verlegt.

Beim ReSTeycle wollte ich sowohl das TOS 2.06, als auch das alte TOS betreiben können. Dazu werden zwei FLASH-ROMs (im System beschreibbar) mit je 4 Mbit, also zusammen 8 Mbit = 1 MByte, verbaut. Die unteren 512 KB werden als TOS 2.06 im Adressbereich $E00000-$E7FFFF eingeblendet. Aus den oberen 512 KB werden 192 KB im Breich $FC0000-$FEFFFF als TOS 1.x eingeblendet. Die darunter liegenden 128 KB können optional in den Cartridge-Bereich eingeblendet werden. Die obersten 64 KB und die 128 KB zwischen TOS 2.06 und Cartridge können nicht adressiert werden.

Im Falcon liegen die Adressen des IDE-Port ab der Adresse $F00000. Da im PC die I/O-Adressen bis $1FF für Systemkomponenten reserviert sind und nicht für Karten verwendet werden sollen, lag es nahe, die BUS-I/O-Adressen gleich hinter die IDE-Ports zu legen, so daß, ganz PC-like, für alles die 10 niedrigsten Adressbits von $F00000-$F003FF ausgewertet werden.

Der Adressdecoder muß also für die Bereiche des TOS 2.06 und des alten TOS sowie, abhängig von /CartEN auch für den Adressbereich des Cartridge, den Chip-Select für die FLASH-ROMs und den /CS für ISA-Memory und für ISA-I/O erzeugen. Der /RomCS muß außerdem per /DTACK bestätigt werden.

Da ein GAL nicht ausgereicht hätte um alle Adressen für die ISA-Devices zu decodieren, werden diese ohne Berücksichtigung von /AS erzeugt. Die Geräte müssen sich also selbst um die genaue Decodierung ihrer Adressen und die /DTACKs kümmern.

Top <<zurück-weiter>>