[ ^^ ]
PSEQ.INI von MT2001
Es gibt 4 Bytes für jede 16K Bank (Pxx)
Byte1: $D301 Zugriffscode,
also Banknummer (PSEQ), sollten mehrere Kombinationen in $d301 auf die gleiche Bank zugreifen, wird die höchste Nummer angegeben.
Byte2: $D600 Zugriffscode,
es gibt RDs die in $d6xx ein zweites Register haben über das sich die RD umschalten lässt, wird im alten MEMDRV unterstützt, im neuen noch nicht.
Byte3: Zugriffs-Statusbits:
76543210
.......1 ($D301.0=1) Bank ist im CPU Zugriff wenn OS eingeschaltet ist
......1. ($D301.0=0) Bank ist im CPU Zugriff wenn OS ausgeschaltet ist
wenn beide Bits 1 sind, lässt sich das OS ohne
Änderung der RAM Bank umschalten!
.....1.. ($D301.1=1) Bank ist im CPU Zugriff wenn BASIC ausgeschaltet ist
....1... ($D301.1=0) Bank ist im CPU Zugriff wenn BASIC eingeschaltet ist
wenn beide Bits 1 sind, lässt sich das BASIC ohne
Änderung der RAM Bank umschalten!
...1.... ($D301.7=1) Bank ist im CPU Zugriff wenn Selftest inaktiv ist
..1..... ($D301.7=0) Bank im KOMPLETT - CPU Zugriff wenn Selftest aktiv
ist, d.h. Selftestumgehung
.1...... ($D301.7=0) Bank im TEILWEISE - CPU Zugriff wenn Selftest aktiv
ist, d.h. ST über Bank in ($5000-57ff) gespiegelt
Byte4: ANTIC-Statusbits : (die genannten Codes ändern sich noch)
$80 ANTIC Test wurde nicht durchgeführt, da eine Änderung des
ANTIC-bits ($D301.5) einen Wechsel der eingeblendeten Bank
bedeutet!
$1x ANTIC Test wurde durchgeführt:
Bit 0: 1 ($D301.5=0) ANTIC greift auf die RD zu wenn ANTIC Zugriff
eingeschaltet
0 ($D301.5=0) ANTIC greift auf den Basisram zu wenn ANTIC Zugriff
eingeschaltet
Bit 1: 1 ($D301.5=1) ANTIC greift auf die RD zu wenn ANTIC Zugriff
ausgeschaltet
0 ($D301.5=1) ANTIC greift auf den Basisram zu wenn ANTIC Zugriff
ausgeschaltet
[ ^^ ]
MPSQ1.DAT von MEMDRV10
Adresse Länge(dez) Inhalt
0000 4 'PSQ1' – Kennstring
0004 4 Total-Speichergrösse in KB (vier ASCII-Ziffern)
0008 1 frei
0009 1 Anzahl der Speicherbänke (Länge der folgenden Liste)
000A [9] $D301 – Zugriffswerte für Pagesequenz
000A+[0009] [9] $D600 – Zugriffswerte für Pagesequenz
- - EOF
[ ^^ ]
Getestete Speichererweiterungen:
Atari 130XE 64 kbyte PB: 2 3 Das Original
Scott Peters 130XE 256 kbyte PB: 2 3 6 7 Nachbau
Scott Peters 130XE 512 kbyte PB: 2 3 5 6 7 Nachbau
Scott Peters 130XE 1024 kbyte PB: 1 2 3 5 6 7 Nachbau
MegaRAM 1 & 2 XL/XE 256 kByte PB: 2 3 6 7 Original
MegaRAM 3 XL/XE 1024 kByte PB: 2 3 6 7 + $D600 Original
Rambo XL 800XL 192 kbyte PB: 2 3 5 6 Original
Newell XL 800XL 1024 kByte PB: 1 2 3 5 6 7 Original
Standard 800XL 128 kByte PB: 2 3 6 voll kompatibel
Atari Magazin 800XL 256 kByte PB: 2 3 5 6 Nachbau
Compy Shop 800XL 256 kByte PB: 2 3 6 7 Nachbau
Compy Shop 800XL 256 kByte PB: 2 3 6 7 Original
TurboFreezer XL 800XL 256 kByte PB: 2 3 6 + 4 & 5 Original
MR1024XL 800XL 1024 kByte PB: 1 2 3 5 6 7 MegaRam1 Umbau
[ ^^ ]
RD0064 .INI 130XE 64 kByte Port-Bits 2 3 Das Original
ID="MDRV2001a"
EXTRAMSIZE=64
EXTPAGECOUNT=4
P00=$E3005F11
P01=$E7005F11
P02=$EB005F11
P03=$EF005F11
[ ^^ ]
RD0256 .INI 130XE 256 kByte Port-Bits 2 3 6 7 Scott Peters
ID="MDRV2001a"
EXTRAMSIZE=256
EXTPAGECOUNT=16
P00=$23002F11
P01=$27002F11
P02=$2B002F11
P03=$2F002F11
P04=$63002F11
P05=$67002F11
P06=$6B002F11
P07=$6F002F11
P08=$A3001F11
P09=$A7001F11
P0A=$AB001F11
P0B=$AF001F11
P0C=$E3001F11
P0D=$E7001F11
P0E=$EB001F11
P0F=$EF001F11
[ ^^ ]
RD0512 .INI 130XE 512 kByte Port-Bits 2 3 5 6 7 Scott Peters
ID="MDRV2001a"
EXTRAMSIZE=512
EXTPAGECOUNT=32
P00=$03002F80
P01=$07002F80
P02=$0B002F80
P03=$0F002F80
P04=$23002F80
P05=$27002F80
P06=$2B002F80
P07=$2F002F80
P08=$43002F80
P09=$47002F80
P0A=$4B002F80
P0B=$4F002F80
P0C=$63002F80
P0D=$67002F80
P0E=$6B002F80
P0F=$6F002F80
P10=$83001F80
P11=$87001F80
P12=$8B001F80
P13=$8F001F80
P14=$A3001F80
P15=$A7001F80
P16=$AB001F80
P17=$AF001F80
P18=$C3001F80
P19=$C7001F80
P1A=$CB001F80
P1B=$CF001F80
P1C=$E3001F80
P1D=$E7001F80
P1E=$EB001F80
P1F=$EF001F80
[ ^^ ]
RD1024 .INI 130XE 1024 kByte Port-Bits 1 2 3 5 6 7 Scott Peters
ID="MDRV2001a"
EXTRAMSIZE=124
EXTPAGECOUNT=64
P00=$01002B80
P01=$03002780
P02=$05002B80
P03=$07002780
P04=$09002B80
P05=$0B002780
P06=$0D002B80
P07=$0F002780
P08=$21002B80
P09=$23002780
P0A=$25002B80
P0B=$27002780
P0C=$29002B80
P0D=$2B002780
P0E=$2D002B80
P0F=$2F002780
P10=$41002B80
P11=$43002780
P12=$45002B80
P13=$47002780
P14=$49002B80
P15=$4B002780
P16=$4D002B80
P17=$4F002780
P18=$61002B80
P19=$63002780
P1A=$65002B80
P1B=$67002780
P1C=$69002B80
P1D=$6B002780
P1E=$6D002B80
P1F=$6F002780
P20=$81001B80
P21=$83001780
P22=$85001B80
P23=$87001780
P24=$89001B80
P25=$8B001780
P26=$8D001B80
P27=$8F001780
P28=$A1001B80
P29=$A3001780
P2A=$A5001B80
P2B=$A7001780
P2C=$A9001B80
P2D=$AB001780
P2E=$AD001B80
P2F=$AF001780
P30=$C1001B80
P31=$C3001780
P32=$C5001B80
P33=$C7001780
P34=$C9001B80
P35=$CB001780
P36=$CD001B80
P37=$CF001780
P38=$E1001B80
P39=$E3001780
P3A=$E5001B80
P3B=$E7001780
P3C=$E9001B80
P3D=$EB001780
P3E=$ED001B80
P3F=$EF001780
[ ^^ ]
MEGA1 .INI 130XE 256 kByte Port-Bits 2 3 6 7 MegaRAM 1 & 2
ID="MDRV2001a"
EXTRAMSIZE=256
EXTPAGECOUNT=16
P00=$23002F13
P01=$27002F13
P02=$2B002F13
P03=$2F002F13
P04=$63002F13
P05=$67002F13
P06=$6B002F13
P07=$6F002F13
P08=$A3001F13
P09=$A7001F13
P0A=$AB001F13
P0B=$AF001F13
P0C=$E3001F13
P0D=$E7001F13
P0E=$EB001F13
P0F=$EF001F13
Die MegaRAM 1 und MegaRAM 2 sind Schaltungstechnisch identisch. Die MegaRAM 2 hat nur ein neues Leiterplattenlayout bekommen.
[ ^^ ]
MEGA3 .INI 130XE 1024 kByte Port-Bits 2 3 6 7 MegaRAM 3
ID="MDRV2001a"
EXTRAMSIZE=256
EXTPAGECOUNT=16
P00=$23002F11
P01=$27002F11
P02=$2B002F11
P03=$2F002F11
P04=$63002F11
P05=$67002F11
P06=$6B002F11
P07=$6F002F11
P08=$A3001F11
P09=$A7001F11
P0A=$AB001F11
P0B=$AF001F11
P0C=$E3001F11
P0D=$E7001F11
P0E=$EB001F11
P0F=$EF001F11
MEGA3 .DAT
1024
64
23 27 2B 2F 63 67 6B 6F A3 A7 AB AF E3 E7 EB EF F3
23 27 2B 2F 63 67 6B 6F A3 A7 AB AF E3 E7 EB EF F7
23 27 2B 2F 63 67 6B 6F A3 A7 AB AF E3 E7 EB EF FB
23 27 2B 2F 63 67 6B 6F A3 A7 AB AF E3 E7 EB EF FF
Die MegaRAM 3 schaltet 4 Bänke zu je 256 kByte über $D6xx ^^ um.
[ ^^ ]
RAMBO192.INI 800XL 192 kByte Port-Bits 2 3 5 6 Rambo XL von ICD
ID="MDRV2001a"
EXTRAMSIZE=240
??? 192
EXTPAGECOUNT=15
??? 12
P00=$83005F80
??? Hauptspeicher
P01=$8B005F80
??? Hauptspeicher
P02=$8F005F80
??? Hauptspeicher
P03=$A3005F80
P04=$A7005F80
P05=$AB005F80
P06=$AF005F80
P07=$C3005F80
P08=$C7005F80
P09=$CB005F80
P0A=$CF005F80
P0B=$E3005F80
P0C=$E7005F80
P0D=$EB005F80
P0E=$EF005F80
RAMBO192.DAT
0192
12
A3 A7 AB AF C3 C7 CB CF E3 E7 EB EF
Bei der Rambo256 werden die 4164 des 800XL durch 41256 ersetzt. Es werden 64K davon als Hauptspeicher und 192K als XRAM benutzt. Da alle 256K über $D301 ansprechbar sind stellen Testprogramme daher 15 Banks mit gesamt 240K fest. Nur eine Bank ( $87 ) wird nicht erkannt, nämlich der Hauptspeicher von $4000 - $7FFF.
[ Ein RD-Treiber der $83 $8B $8F anspricht kann den entsprechenden Hauptspeicher nach $4000-$7FFF einblenden; lustiger Effekt. ]
[ ^^ ]
Newell .INI 800XL 1024 kByte Port-Bits 1 2 3 5 6 7 Original
ID="MDRV2001a"
EXTRAMSIZE=1024
EXTPAGECOUNT=64
P00=$01002B80
P01=$03002780
P02=$05002B80
P03=$07002780
P04=$09002B80
P05=$0B002780
P06=$0D002B80
P07=$0F002780
P08=$21002B80
P09=$23002780
P0A=$25002B80
P0B=$27002780
P0C=$29002B80
P0D=$2B002780
P0E=$2D002B80
P0F=$2F002780
P10=$41002B80
P11=$43002780
P12=$45002B80
P13=$47002780
P14=$49002B80
P15=$4B002780
P16=$4D002B80
P17=$4F002780
P18=$61002B80
P19=$63002780
P1A=$65002B80
P1B=$67002780
P1C=$69002B80
P1D=$6B002780
P1E=$6D002B80
P1F=$6F002780
P20=$81001B80
P21=$83001780
P22=$85001B80
P23=$87001780
P24=$89001B80
P25=$8B001780
P26=$8D001B80
P27=$8F001780
P28=$A1001B80
P29=$A3001780
P2A=$A5001B80
P2B=$A7001780
P2C=$A9001B80
P2D=$AB001780
P2E=$AD001B80
P2F=$AF001780
P30=$C1001B80
P31=$C3001780
P32=$C5001B80
P33=$C7001780
P34=$C9001B80
P35=$CB001780
P36=$CD001B80
P37=$CF001780
P38=$E1001B80
P39=$E3001780
P3A=$E5001B80
P3B=$E7001780
P3C=$E9001B80
P3D=$EB001780
P3E=$ED001B80
P3F=$EF001780
[ ^^ ]
800XL .INI 800XL 128 kByte Port-Bits 2 3 6 voll kompatibel
ID="MDRV2001a"
EXTRAMSIZE=128
EXTPAGECOUNT=8
P00=$A3005F13
P01=$A7005F13
P02=$AB005F13
P03=$AF005F13
P04=$E3005F13
P05=$E7005F13
P06=$EB005F13
P07=$EF005F13
[ ^^ ]
800XL5 .INI 800XL 256 kByte Port-Bits 2 3 5 6 Nachbau
ID="MDRV2001a"
EXTRAMSIZE=256
EXTPAGECOUNT=16
P00=$83005F80
P01=$87005F80
P02=$8B005F80
P03=$8F005F80
P04=$A3005F80
P05=$A7005F80
P06=$AB005F80
P07=$AF005F80
P08=$C3005F80
P09=$C7005F80
P0A=$CB005F80
P0B=$CF005F80
P0C=$E3005F80
P0D=$E7005F80
P0E=$EB005F80
P0F=$EF005F80
[ ^^ ]
800XL7 .INI 800XL 256 kByte Port-Bits 2 3 6 7 Nachbau
ID="MDRV2001a"
EXTRAMSIZE=256
EXTPAGECOUNT=16
P00=$23002F13
P01=$27002F13
P02=$2B002F13
P03=$2F002F13
P04=$63002F13
P05=$67002F13
P06=$6B002F13
P07=$6F002F13
P08=$A3001F13
P09=$A7001F13
P0A=$AB001F13
P0B=$AF001F13
P0C=$E3001F13
P0D=$E7001F13
P0E=$EB001F13
P0F=$EF001F13
[ ^^ ]
CS256XL .INI 800XL 256 kByte Port-Bits 2 3 6 7 Compy-Shop (8 x 41256)
ID="MDRV2001a"
EXTRAMSIZE=256
EXTPAGECOUNT=16
P00=$23002F11
P01=$27002F11
P02=$2B002F11
P03=$2F002F11
P04=$63002F11
P05=$67002F11
P06=$6B002F11
P07=$6F002F11
P08=$A3001F11
P09=$A7001F11
P0A=$AB001F11
P0B=$AF001F11
P0C=$E3001F11
P0D=$E7001F11
P0E=$EB001F11
P0F=$EF001F11
[ ^^ ]
TFRZXL .INI 800XL 256 kByte Port-Bits 2 3 4 5 6 Turbo-Freezer XL
ID="MDRV2001a"
EXTRAMSIZE=128
??? 256
EXTPAGECOUNT=8
??? 16
P00=$A3005F80
P01=$A7005F80
P02=$AB005F80
P03=$AF005F80
P04=$E3005F13
P05=$E7005F13
P06=$EB005F13
P07=$EF005F13
TFRZXL .DAT
0256
10
E3 E7 EB EF 93 97 9B 9F A3 A7 AB AF B3 B7 BB BF
Der Turbo-Freezer XL von Engl mit 256 kByte XRAM wird am Parallel-Bus Interface des XL gesteckt und benutzt eine etwas eigenartige Steuerung. Ausser den PB 2 3 5 6 wird auch PB 4 für den XRAM-Zugriff benutzt. D.h. es wird auch auf den XRAM zugegriffen wenn PB 4 auf H ist (Festgestellt u.a. mit XRAM 0.17 von Satantronic).
Diese Steuerung ist nur durch das eigene Betriebssystem des Turbo-Freezer XL möglich.
Aus dem Handbuch des Turbo-Freezer XL:
Die RAM-Erweiterung ist nicht mit einem von der CPU unabhängigen ANTIC-Zugriff ausgestattet, kann aber durch einsetzen einer Leitung von der CPU Pin 35 (/HALT) nach Pin 33 des PBI (unbelegt) nachgerüstet werden.
Für die Bankumschaltung über PortB gibt es zwei Zugriffsmodi, die von D6 ausgewählt werden. Ist D6=1, dann funktioniert die Bankumschaltung wie beim Atari 130XE (Wenn die HALT-Leitung fehlt, wird der ANTIC wie die CPU behandelt), es können vier Banks zu je 16K ausgewählt werden, die sich in den DRAMs der Gruppe 0 befinden. Ist D6=0, dann ist die Bank unabhängig von den anderen Bits sowohl für die CPU als auch für den ANTIC eingeschaltet, D4 und D5 dienen dann zur Auswahl der Gruppe.
PortB ($D301) D7 = Selbsttest (0=ein)
D6 = Modus (1 = XE, 0 = Gruppen)
D5 = XE: ANTIC-Bankzugriff (0 = ein), Gruppen: Gruppennr. H
D4 = XE: CPU-Bankzugriff (0 = ein), Gruppen: Gruppennr. L
D3 = Banknummer H
D2 = Banknummer L
D1 = BASIC ROM (0 = ein)
D0 = OS ROM (0 = aus)
[ ^^ ]
MR1024XL.INI 800XL 1024 kByte Port-Bits 1 2 3 5 6 7 MegaRam1 Umbau
ID="MDRV2001a"
EXTRAMSIZE=1024
EXTPAGECOUNT=64
P00=$01002B80
P01=$03002780
P02=$05002B80
P03=$07002780
P04=$09002B80
P05=$0B002780
P06=$0D002B80
P07=$0F002780
P08=$21002B80
P09=$23002780
P0A=$25002B80
P0B=$27002780
P0C=$29002B80
P0D=$2B002780
P0E=$2D002B80
P0F=$2F002780
P10=$41002B80
P11=$43002780
P12=$45002B80
P13=$47002780
P14=$49002B80
P15=$4B002780
P16=$4D002B80
P17=$4F002780
P18=$61002B80
P19=$63002780
P1A=$65002B80
P1B=$67002780
P1C=$69002B80
P1D=$6B002780
P1E=$6D002B80
P1F=$6F002780
P20=$81001B80
P21=$83001780
P22=$85001B80
P23=$87001780
P24=$89001B80
P25=$8B001780
P26=$8D001B80
P27=$8F001780
P28=$A1001B80
P29=$A3001780
P2A=$A5001B80
P2B=$A7001780
P2C=$A9001B80
P2D=$AB001780
P2E=$AD001B80
P2F=$AF001780
P30=$C1001B80
P31=$C3001780
P32=$C5001B80
P33=$C7001780
P34=$C9001B80
P35=$CB001780
P36=$CD001B80
P37=$CF001780
P38=$E1001B80
P39=$E3001780
P3A=$E5001B80
P3B=$E7001780
P3C=$E9001B80
P3D=$EB001780
P3E=$ED001B80
P3F=$EF001780
[ ^^ ]
[ Seitenanfang ]