Mapa pamięci
From Atariki
(Różnice między wersjami)
Wersja z dnia 12:42, 15 mar 2010 KMK (Dyskusja | wkład) (→Schemat pamięci Atari 400/800 i XL/XE) ← Previous diff |
Wersja z dnia 12:53, 15 mar 2010 KMK (Dyskusja | wkład) (→Schemat pamięci Atari 400/800 i XL/XE) Next diff → |
||
Linia 22: | Linia 22: | ||
<tr><td>$0580-$05FF</td><td>Bufor wyjściowy pakietu matematycznego</td> </tr> | <tr><td>$0580-$05FF</td><td>Bufor wyjściowy pakietu matematycznego</td> </tr> | ||
<tr><td>$0600-$06FF</td><td>[[6 strona|Strona szósta]], zarezerwowana dla programów użytkownika</td> </tr> | <tr><td>$0600-$06FF</td><td>[[6 strona|Strona szósta]], zarezerwowana dla programów użytkownika</td> </tr> | ||
- | <tr><td>$0700-$1FFF</td><td>DOS ($1FFF to jest maximum)</td> </tr> | + | <tr><td>$0700-$1FFF</td><td>[[DOS]] ($1FFF to jest maximum)</td> </tr> |
- | <tr><td>$2000-$3FFF</td><td>Wolna pamięć. Minimum pamięci RAM to 10k w Atari 800XL/65XE/130XE (system 1.02/1.03) oraz 16k w 1450XLD (system 2.03). Jeśli pamięci jest mniej, system nie startuje.</td> </tr> | + | <tr><td>$2000-$3FFF</td><td>Wolna pamięć. Minimum pamięci RAM to 10k w Atari [[800XL]]/[[65XE]]/[[130XE]] (system 1.02/1.03) oraz 16k w [[1450XLD]] (system 2.03). Jeśli pamięci jest mniej, system nie startuje.</td> </tr> |
<tr><td>$4000-$7FFF</td><td>Wolna pamięć, w komputerach z rozszerzeniem RAM obszar przełączalnych banków pamięci</td><td>Dodatkowo pod $5000-$57FF może zostać włączony SELF TEST (tylko w serii XL/XE). Fizycznie jest on częścią OS ROM "przysłoniętą" rejestrami I/O w obszarze $D000-$D7FF.</td></tr> | <tr><td>$4000-$7FFF</td><td>Wolna pamięć, w komputerach z rozszerzeniem RAM obszar przełączalnych banków pamięci</td><td>Dodatkowo pod $5000-$57FF może zostać włączony SELF TEST (tylko w serii XL/XE). Fizycznie jest on częścią OS ROM "przysłoniętą" rejestrami I/O w obszarze $D000-$D7FF.</td></tr> | ||
<tr><td>$8000-$9FFF</td><td rowspan = 2>Wolna pamięć</td><td>Obszar [[cartridge]] A | <tr><td>$8000-$9FFF</td><td rowspan = 2>Wolna pamięć</td><td>Obszar [[cartridge]] A | ||
Linia 41: | Linia 41: | ||
<tr><td>$CC00-$CFFF</td> <td>Międzynarodowy zestaw znaków (tylko XL/XE), zob. [[ATASCII]]</td></tr> | <tr><td>$CC00-$CFFF</td> <td>Międzynarodowy zestaw znaków (tylko XL/XE), zob. [[ATASCII]]</td></tr> | ||
- | <tr><td>$D000-$D0FF</td><td rowspan = 7> | + | <tr><td>$D000-$D0FF</td><td rowspan = 8> |
* Brak w 400/800 | * Brak w 400/800 | ||
* Niedostępne 2 KB RAM w XL/XE</td> | * Niedostępne 2 KB RAM w XL/XE</td> | ||
- | <td rowspan = 7> | + | <td rowspan = 8> |
* Brak w 400/800 | * Brak w 400/800 | ||
* Niedostępne 2 KB OS ROM (SELF TEST) w XL/XE</td> | * Niedostępne 2 KB OS ROM (SELF TEST) w XL/XE</td> | ||
Linia 57: | Linia 57: | ||
* [[rejestry modułu SpartaDOS X]] | * [[rejestry modułu SpartaDOS X]] | ||
</td></tr> | </td></tr> | ||
- | <tr><td>$D600-$D7FF</td><td>[[Rejestry PBI]] (tylko w serii XL/XE) | + | <tr><td>$D600-$D6FF</td><td>Obszar przeznaczony dla PBI (tylko w serii XL/XE) |
* rejestr [[ROM Changer|ROM Changera]]</td></tr> | * rejestr [[ROM Changer|ROM Changera]]</td></tr> | ||
+ | <tr><td>$D700-$D7FF</td><td>Obszar przeznaczony dla PBI (tylko w serii XL/XE)</td></tr> | ||
<tr><td>$D800-$DFFF</td><td> | <tr><td>$D800-$DFFF</td><td> | ||
Wolna pamięć "pod ROM-em" (tylko w serii XL/XE). W czasie wymiany danych z [[nowe urządzenia|nowym urządzeniem]] zastępowana przez [[ROM PBI]].</td><td> | Wolna pamięć "pod ROM-em" (tylko w serii XL/XE). W czasie wymiany danych z [[nowe urządzenia|nowym urządzeniem]] zastępowana przez [[ROM PBI]].</td><td> |
Wersja z dnia 12:53, 15 mar 2010
"Mapa pamięci" to wyszczególnione i opisane obszary pamięci komputera, czyli do czego służy, co robi konkretna komórka, rejestr lub obszar pamięci. Najwięcej na ten temat napisał Wojciech Zientara w książkach wydawanych przez SOETO w latach 1988-1991. Wszystkie książki i ważniejsze publikacje prasowe zostały zgromadzone na stronie Archiwum TA:
Schemat pamięci Atari 400/800 i XL/XE
Adres | RAM | ROM | Porty I/O |
$0000-$00FF | Strona zerowa | Brak | Brak |
$0100-$01FF | Stos 6502 | ||
$0200-$02FF | Strona druga, wektory przerwań i inne zmienne OS | ||
$0300-$03FF | Strona trzecia, bloki DCB i IOCB, HATABS, wewnętrzne zmienne SIO, bufor drukarki | ||
$0400-$047F | Bufor magnetofonu (128 bajtów); QMEG: zmienne | ||
$0480-$057F | Obszar nie używany przez OS, zarezerwowany | ||
$0580-$05FF | Bufor wyjściowy pakietu matematycznego | ||
$0600-$06FF | Strona szósta, zarezerwowana dla programów użytkownika | ||
$0700-$1FFF | DOS ($1FFF to jest maximum) | ||
$2000-$3FFF | Wolna pamięć. Minimum pamięci RAM to 10k w Atari 800XL/65XE/130XE (system 1.02/1.03) oraz 16k w 1450XLD (system 2.03). Jeśli pamięci jest mniej, system nie startuje. | ||
$4000-$7FFF | Wolna pamięć, w komputerach z rozszerzeniem RAM obszar przełączalnych banków pamięci | Dodatkowo pod $5000-$57FF może zostać włączony SELF TEST (tylko w serii XL/XE). Fizycznie jest on częścią OS ROM "przysłoniętą" rejestrami I/O w obszarze $D000-$D7FF. | |
$8000-$9FFF | Wolna pamięć | Obszar cartridge A
| |
$A000-$BFFF | Obszar cartridge B | ||
$C000-$CBFF | Wolna pamięć "pod ROM-em" (tylko w serii XL/XE).
W komputerach serii 400/800 jest to obszar pusty, nie ma tu ani RAM-u ani ROM-u. |
Sygnatura ROM (tylko XL/XE) | Brak |
$CC00-$CFFF | Międzynarodowy zestaw znaków (tylko XL/XE), zob. ATASCII | ||
$D000-$D0FF |
|
|
Rejestry GTIA |
$D100-$D1FF | Rejestry PBI (tylko w serii XL/XE) | ||
$D200-$D2FF | Rejestry POKEY-a | ||
$D300-$D3FF | Rejestry PIA | ||
$D400-$D4FF | Rejestry ANTIC-a | ||
$D500-$D5FF | Rejestry cartridge'y | ||
$D600-$D6FF | Obszar przeznaczony dla PBI (tylko w serii XL/XE)
| ||
$D700-$D7FF | Obszar przeznaczony dla PBI (tylko w serii XL/XE) | ||
$D800-$DFFF | Wolna pamięć "pod ROM-em" (tylko w serii XL/XE). W czasie wymiany danych z nowym urządzeniem zastępowana przez ROM PBI. |
| Brak |
$E000-$E3FF | Wolna pamięć "pod ROM-em" (tylko w serii XL/XE) | Standardowy zestaw znaków | |
$E400-$FFFF | Drugi blok OS ROM: |