Mapa pamięci
From Atariki
(Różnice między wersjami)
Wersja z dnia 13:30, 13 mar 2010 Mikey (Dyskusja | wkład) ← Previous diff |
Wersja z dnia 15:51, 14 mar 2010 KMK (Dyskusja | wkład) (i/o w oddzielnej kolumnie) Next diff → |
||
Linia 12: | Linia 12: | ||
<table border = 1 cellpadding = 5> | <table border = 1 cellpadding = 5> | ||
- | <tr><td><b>Adres</b></td><td><b>RAM</b></td><td><b>ROM</b></td></tr> | + | <tr><td><b>Adres</b></td><td><b>RAM</b></td><td><b>ROM</b></td><td><b>Porty I/O</b></td></tr> |
- | <tr><td colspan = 3></td></tr> | + | <tr><td colspan = 4></td></tr> |
- | <tr><td>$0000-$00FF</td><td>[[Strona zerowa]]</td><td rowspan = 10>Brak</td></tr> | + | <tr><td>$0000-$00FF</td><td>[[Strona zerowa]]</td><td rowspan = 10>Brak</td><td rowspan = 13>Brak</td></tr> |
<tr><td>$0100-$01FF</td><td>Stos [[6502]]</td></tr> | <tr><td>$0100-$01FF</td><td>Stos [[6502]]</td></tr> | ||
<tr><td>$0200-$02FF</td><td>Strona druga, wektory przerwań i inne zmienne [[OS]]</td> </tr> | <tr><td>$0200-$02FF</td><td>Strona druga, wektory przerwań i inne zmienne [[OS]]</td> </tr> | ||
Linia 32: | Linia 32: | ||
</td></tr> | </td></tr> | ||
- | <tr><td colspan = 3></td></tr> | + | <tr><td colspan = 4></td></tr> |
<tr><td>$C000-$CBFF</td><td rowspan=2>Wolna pamięć "pod ROM-em" (tylko w serii [[XL]]/[[XE]]). | <tr><td>$C000-$CBFF</td><td rowspan=2>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. | W komputerach serii [[400/800]] jest to obszar pusty, nie ma tu ani RAM-u ani ROM-u. | ||
</td> | </td> | ||
- | <td>[[Sygnatura ROM]] (tylko XL/XE)</td></tr> | + | <td>[[Sygnatura ROM]] (tylko XL/XE)</td><td rowspan = 2>Brak</td></tr> |
<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>Brak, [[rejestry GTIA]]</td><td rowspan = 7>Brak</td></tr> | + | <tr><td>$D000-$D0FF</td><td rowspan = 7>Brak</td><td rowspan = 7>Brak</td><td>[[Rejestry GTIA]]</td></tr> |
- | <tr><td>$D100-$D1FF</td><td>Brak, [[rejestry PBI]] (tylko w serii XL/XE)</td></tr> | + | <tr><td>$D100-$D1FF</td><td>[[Rejestry PBI]] (tylko w serii XL/XE)</td></tr> |
- | <tr><td>$D200-$D2FF</td><td>Brak, [[rejestry POKEY-a]]</td></tr> | + | <tr><td>$D200-$D2FF</td><td>[[Rejestry POKEY-a]]</td></tr> |
- | <tr><td>$D300-$D3FF</td><td>Brak, [[rejestry PIA]]</td></tr> | + | <tr><td>$D300-$D3FF</td><td>[[Rejestry PIA]]</td></tr> |
- | <tr><td>$D400-$D4FF</td><td>Brak, [[rejestry ANTIC-a]]</td></tr> | + | <tr><td>$D400-$D4FF</td><td>[[Rejestry ANTIC-a]]</td></tr> |
- | <tr><td>$D500-$D5FF</td><td>Brak, [[rejestry zewnętrznych modułów ROM]] | + | <tr><td>$D500-$D5FF</td><td>[[Rejestry zewnętrznych modułów ROM]] |
* [[rejestry modułu Action]] | * [[rejestry modułu Action]] | ||
* [[rejestry modułu R-Time 8]] | * [[rejestry modułu R-Time 8]] | ||
* [[rejestry modułu SpartaDOS X]] | * [[rejestry modułu SpartaDOS X]] | ||
</td></tr> | </td></tr> | ||
- | <tr><td>$D600-$D7FF</td><td>Brak, [[rejestry PBI]] (tylko w serii XL/XE) | + | <tr><td>$D600-$D7FF</td><td>[[Rejestry PBI]] (tylko w serii XL/XE) |
* rejestr [[ROM Changer|ROM Changera]]</td></tr> | * rejestr [[ROM Changer|ROM Changera]]</td></tr> | ||
<tr><td>$D800-$DFFF</td><td> | <tr><td>$D800-$DFFF</td><td> | ||
Linia 57: | Linia 57: | ||
* [[pakiet matematyczny]] | * [[pakiet matematyczny]] | ||
* obszar [[ROM PBI]] (tylko w serii XL/XE), uaktywniany w czasie wymiany danych z [[nowe urządzenia|nowym urządzeniem]]. | * obszar [[ROM PBI]] (tylko w serii XL/XE), uaktywniany w czasie wymiany danych z [[nowe urządzenia|nowym urządzeniem]]. | ||
- | </td></tr> | + | </td><td rowspan = 3>Brak</td></tr> |
<tr><td>$E000-$E3FF</td><td rowspan = 2>Wolna pamięć "pod ROM-em" (tylko w serii XL/XE)</td><td>Standardowy zestaw znaków</td></tr> | <tr><td>$E000-$E3FF</td><td rowspan = 2>Wolna pamięć "pod ROM-em" (tylko w serii XL/XE)</td><td>Standardowy zestaw znaków</td></tr> | ||
<tr><td>$E400-$FFFF</td> <td>Drugi blok OS ROM:<br> | <tr><td>$E400-$FFFF</td> <td>Drugi blok OS ROM:<br> |
Wersja z dnia 15:51, 14 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 | Brak | Brak | 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 zewnętrznych modułów ROM | ||
$D600-$D7FF | Rejestry 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: |