Difference between revisions of "Amiga memory map"
(→Memory map) |
(→Memory map) |
||
(25 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
==Standard amount of memory in the Amiga== | ==Standard amount of memory in the Amiga== | ||
− | + | {| class="wikitable" | |
− | + | |- | |
− | + | ! Model | |
− | + | ! Chip RAM | |
− | + | ! Fast RAM | |
− | + | ! Kickstart ROM | |
− | + | |- | |
− | + | | Amiga 1000 | |
+ | | 256KB | ||
+ | | None | ||
+ | | 256KB | ||
+ | |- | ||
+ | | Amiga 500 | ||
+ | | 512KB | ||
+ | | None | ||
+ | | 256KB | ||
+ | |- | ||
+ | | Amiga 500+ | ||
+ | | 1MB | ||
+ | | None | ||
+ | | 512KB | ||
+ | |- | ||
+ | | Amiga 2000 | ||
+ | | 512KB, later 1MB | ||
+ | | None | ||
+ | | 256KB | ||
+ | |- | ||
+ | | Amiga 3000 | ||
+ | | 1-2MB | ||
+ | | 1MB | ||
+ | | 512KB | ||
+ | |- | ||
+ | | Amiga 600 | ||
+ | | 1MB | ||
+ | | None | ||
+ | | 512KB | ||
+ | |- | ||
+ | | Amiga 1200 | ||
+ | | 2MB | ||
+ | | None | ||
+ | | 512KB | ||
+ | |- | ||
+ | | Amiga 4000 | ||
+ | | 2MB | ||
+ | | 2-4MB | ||
+ | | 512KB | ||
+ | |} | ||
==Memory map== | ==Memory map== | ||
+ | Note: Models that are based on the same map are not listed, e.g. CDTV is based on A500 architecture, and the A1500 & A2500 are variations on the A2000. Where differences exist they are specified in brackets. | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! rowspan="2" | Address Range | ! rowspan="2" | Address Range | ||
! rowspan="2" | Size | ! rowspan="2" | Size | ||
+ | ! rowspan="2" | Category | ||
! colspan = "7" | Function | ! colspan = "7" | Function | ||
|- | |- | ||
Line 26: | Line 67: | ||
| 000000-03FFFF | | 000000-03FFFF | ||
| 256KB | | 256KB | ||
+ | | rowspan="4" | Chip RAM | ||
| colspan = "7" | First 256KB of chip RAM | | colspan = "7" | First 256KB of chip RAM | ||
|- | |- | ||
Line 36: | Line 78: | ||
| 512KB | | 512KB | ||
| Reserved | | Reserved | ||
− | | colspan=" | + | | 512KB chip RAM expansion card (A500 trapdoor) |
+ | | colspan="5" | Second 512KB of chip RAM (to 1MB) | ||
|- | |- | ||
| 100000-1FFFFF | | 100000-1FFFFF | ||
| 1MB | | 1MB | ||
| colspan="2" | Reserved | | colspan="2" | Reserved | ||
− | | colspan = " | + | | colspan="2" | 1MB chip RAM expansion card |
+ | | colspan = "3" | Second 1MB of chip RAM (to 2MB) | ||
|- | |- | ||
| 200000-5FFFFF | | 200000-5FFFFF | ||
| 4MB | | 4MB | ||
+ | | rowspan="2" | Zorro-II space | ||
| colspan="7" | First 4 MB Auto-config space / Fast RAM | | colspan="7" | First 4 MB Auto-config space / Fast RAM | ||
|- | |- | ||
Line 55: | Line 100: | ||
| A00000-A7FFFF | | A00000-A7FFFF | ||
| 512KB | | 512KB | ||
+ | | rowspan="3" | Reserved | ||
| colspan="3" | Reserved | | colspan="3" | Reserved | ||
− | | colspan="2" | PCMCIA control registers | + | | colspan="2" | PCMCIA control & I/O registers |
| colspan="2" | Reserved | | colspan="2" | Reserved | ||
|- | |- | ||
− | | A80000-BEFFFF | + | | A80000-B7FFFF |
− | | | + | | 1024KB |
+ | | colspan="3" | Reserved | ||
+ | | Additional system ROM space | ||
+ | | Additional system ROM space (FMV ROM on CD32) | ||
+ | | colspan="2" | Reserved | ||
+ | |- | ||
+ | | B80000-BEFFFF | ||
+ | | 448KB | ||
| colspan="7" | Reserved | | colspan="7" | Reserved | ||
|- | |- | ||
− | | | + | | BF0000-BFFFFF |
− | | | + | | 64KB |
− | | colspan="7" | 8520 | + | | [[CIA Memory Map|CIAs]] |
+ | | colspan="7" | [[CIA Memory Map|8520 CIAs and timers]] | ||
|- | |- | ||
− | | | + | | C00000-C7FFFF |
− | | | + | | 512KB |
− | | colspan=" | + | | rowspan="3" | Slow-fast RAM |
+ | | rowspan="3" | Reserved | ||
+ | | colspan="2" | Pseudo-fast RAM | ||
+ | | colspan="3" rowspan="2" | Reserved | ||
+ | | rowspan="2" | Chip register shadow | ||
|- | |- | ||
− | | | + | | C80000-CFFFFF |
+ | | 512KB | ||
+ | | colspan="2" rowspan="2" | Reserved for pseudo-fast RAM | ||
+ | |- | ||
+ | | D00000-D7FFFF | ||
| 512KB | | 512KB | ||
+ | | colspan="4" | Reserved | ||
+ | |- | ||
+ | | D80000-D8FFFF | ||
+ | | 64KB | ||
+ | | rowspan="3" | Reserved | ||
+ | | Reserved | ||
+ | | Reserved (Real time clock on early A2000s) | ||
| Reserved | | Reserved | ||
− | | | + | | Reserved (Selected by SPARE_CS) |
− | | colspan=" | + | | [[Clock Port]] (Selected by SPARE_CS) |
+ | | colspan="2" | Reserved | ||
|- | |- | ||
− | | | + | | D90000-D9FFFF |
− | | | + | | 64KB |
− | | colspan=" | + | | colspan="3" | Reserved |
+ | | colspan="2" | Reserved (Selected by NET_CS) | ||
+ | | colspan="2" | Reserved | ||
|- | |- | ||
− | | | + | | DA0000-DBFFFF |
− | | | + | | 128KB |
− | | colspan=" | + | | colspan="3" | Reserved |
+ | | colspan="2" | [[Gayle IDE Controller|IDE controller]] | ||
+ | | colspan="2" | Reserved | ||
|- | |- | ||
| DC0000-DCFFFF | | DC0000-DCFFFF | ||
| 64KB | | 64KB | ||
− | | colspan="7" | Real time clock | + | | Real Time Clock |
+ | | colspan="7" | Real time clock (RTC) | ||
|- | |- | ||
| DD0000-DD0FFF | | DD0000-DD0FFF | ||
| 4KB | | 4KB | ||
− | | colspan="5" | Reserved | + | | rowspan="8" | Reserved |
− | | rowspan=" | + | | colspan="5" rowspan="3" | Reserved |
+ | | rowspan="3" | SCSI controller | ||
| SCSI controller | | SCSI controller | ||
|- | |- | ||
| DD1000-DD3FFF | | DD1000-DD3FFF | ||
| 12KB | | 12KB | ||
− | |||
| IDE controller | | IDE controller | ||
|- | |- | ||
− | | DD4000- | + | | DD4000-DDFFFF |
− | | | + | | 48KB |
− | |||
| Reserved | | Reserved | ||
|- | |- | ||
− | | | + | | DE0000-DFEFFF |
− | | | + | | 124KB |
− | | colspan="7" | Custom chip registers | + | | colspan="7" | [[Mainboard Resources|Mainboard resources]] |
+ | |- | ||
+ | | DFF000-DFFFFF | ||
+ | | 4KB | ||
+ | | colspan="7" | [[Custom Chip Registers|Custom chip registers]] | ||
|- | |- | ||
| E00000-E7FFFF | | E00000-E7FFFF | ||
| 512KB | | 512KB | ||
| colspan="3" | Reserved | | colspan="3" | Reserved | ||
− | | colspan="2" | | + | | colspan="2" | Reserved for first 512KB of 1MB system ROM |
| colspan="2" | Reserved | | colspan="2" | Reserved | ||
|- | |- | ||
Line 125: | Line 203: | ||
| F00000-F7FFFF | | F00000-F7FFFF | ||
| 512KB | | 512KB | ||
+ | | Extended ROM | ||
| Reserved | | Reserved | ||
| Extended ROM (CDTV) | | Extended ROM (CDTV) | ||
Line 133: | Line 212: | ||
| F80000-FBFFFF | | F80000-FBFFFF | ||
| 256KB | | 256KB | ||
+ | | rowspan="2" | Kickstart ROM | ||
| colspan="2" | Reserved | | colspan="2" | Reserved | ||
− | | colspan="5" | | + | | colspan="5" rowspan="2" | System ROM |
|- | |- | ||
| FC0000-FFFFFF | | FC0000-FFFFFF | ||
| 256KB | | 256KB | ||
| colspan="2" | System ROM | | colspan="2" | System ROM | ||
− | |||
|- | |- | ||
− | ! colspan=" | + | ! colspan="10" | 32-bit Addresses |
|- | |- | ||
| 01000000 - 03FFFFFF | | 01000000 - 03FFFFFF | ||
| 48MB | | 48MB | ||
− | | colspan="5" rowspan=" | + | | Reserved |
+ | | colspan="5" rowspan="8"| N/A | ||
| colspan="2" | Reserved | | colspan="2" | Reserved | ||
|- | |- | ||
| 04000000-06FFFFFF | | 04000000-06FFFFFF | ||
| 48MB | | 48MB | ||
− | | colspan="2" | Reserved | + | | rowspan="3" | Fast RAM |
+ | | colspan="2" | Reserved for motherboard RAM expansion | ||
|- | |- | ||
| 07000000-07FFFFFF | | 07000000-07FFFFFF | ||
Line 162: | Line 243: | ||
| 10000000-7FFFFFFF | | 10000000-7FFFFFFF | ||
| 1792MB | | 1792MB | ||
+ | | Zorro-III space | ||
| colspan="2" | Zorro-III expansion space | | colspan="2" | Zorro-III expansion space | ||
|- | |- | ||
| 80000000-FEFFFFFF | | 80000000-FEFFFFFF | ||
| 2032MB | | 2032MB | ||
+ | | rowspan="3" | Reserved | ||
| colspan="2" | Reserved | | colspan="2" | Reserved | ||
|- | |- | ||
− | | FF000000- | + | | FF000000-FF00FFFF |
− | | | + | | 64KB |
| colspan="2" | Zorro-III config space | | colspan="2" | Zorro-III config space | ||
+ | |- | ||
+ | | FF010000-FFFFFFFF | ||
+ | | 16320KB | ||
+ | | colspan="2" | Reserved | ||
|} | |} | ||
− | Note that various modifications and third party hardware can change the details of this map. | + | Note that various modifications and third party hardware can change the details of this map, particularly those expansions that add additional addressing capabilities, e.g. 32-bit accelerators in A1200s, 2MB chip RAM modifications in A500s etc. |
<pre> | <pre> | ||
Line 182: | Line 269: | ||
==Sources for this info== | ==Sources for this info== | ||
− | * Amiga Hardware Reference Manual ( | + | * Amiga Hardware Reference Manual (various editions) |
− | * M68000 Programmer's Reference Manual (1984,fourth edition) | + | * M68000 Programmer's Reference Manual (1984, fourth edition) |
* amiga-hardware.com (for standard amount of memory) | * amiga-hardware.com (for standard amount of memory) | ||
+ | * Gayle, Gary specifications | ||
+ | * A1200 functional specification |
Latest revision as of 17:53, 10 June 2021
Standard amount of memory in the Amiga
Model | Chip RAM | Fast RAM | Kickstart ROM |
---|---|---|---|
Amiga 1000 | 256KB | None | 256KB |
Amiga 500 | 512KB | None | 256KB |
Amiga 500+ | 1MB | None | 512KB |
Amiga 2000 | 512KB, later 1MB | None | 256KB |
Amiga 3000 | 1-2MB | 1MB | 512KB |
Amiga 600 | 1MB | None | 512KB |
Amiga 1200 | 2MB | None | 512KB |
Amiga 4000 | 2MB | 2-4MB | 512KB |
Memory map
Note: Models that are based on the same map are not listed, e.g. CDTV is based on A500 architecture, and the A1500 & A2500 are variations on the A2000. Where differences exist they are specified in brackets.
Address Range | Size | Category | Function | ||||||
---|---|---|---|---|---|---|---|---|---|
A1000 | A500 / 2000 | A500+ | A600 | A1200 | A3000 | A4000 | |||
000000-03FFFF | 256KB | Chip RAM | First 256KB of chip RAM | ||||||
040000-07FFFF | 256KB | 256KB chip RAM expansion card | Second 256KB of chip RAM (to 512KB) | ||||||
080000-0FFFFF | 512KB | Reserved | 512KB chip RAM expansion card (A500 trapdoor) | Second 512KB of chip RAM (to 1MB) | |||||
100000-1FFFFF | 1MB | Reserved | 1MB chip RAM expansion card | Second 1MB of chip RAM (to 2MB) | |||||
200000-5FFFFF | 4MB | Zorro-II space | First 4 MB Auto-config space / Fast RAM | ||||||
600000-9FFFFF | 4MB | Second 4 MB Auto-config space / Fast RAM | PCMCIA memory card / Fast RAM | Second 4 MB Auto-config space / Fast RAM | |||||
A00000-A7FFFF | 512KB | Reserved | Reserved | PCMCIA control & I/O registers | Reserved | ||||
A80000-B7FFFF | 1024KB | Reserved | Additional system ROM space | Additional system ROM space (FMV ROM on CD32) | Reserved | ||||
B80000-BEFFFF | 448KB | Reserved | |||||||
BF0000-BFFFFF | 64KB | CIAs | 8520 CIAs and timers | ||||||
C00000-C7FFFF | 512KB | Slow-fast RAM | Reserved | Pseudo-fast RAM | Reserved | Chip register shadow | |||
C80000-CFFFFF | 512KB | Reserved for pseudo-fast RAM | |||||||
D00000-D7FFFF | 512KB | Reserved | |||||||
D80000-D8FFFF | 64KB | Reserved | Reserved | Reserved (Real time clock on early A2000s) | Reserved | Reserved (Selected by SPARE_CS) | Clock Port (Selected by SPARE_CS) | Reserved | |
D90000-D9FFFF | 64KB | Reserved | Reserved (Selected by NET_CS) | Reserved | |||||
DA0000-DBFFFF | 128KB | Reserved | IDE controller | Reserved | |||||
DC0000-DCFFFF | 64KB | Real Time Clock | Real time clock (RTC) | ||||||
DD0000-DD0FFF | 4KB | Reserved | Reserved | SCSI controller | SCSI controller | ||||
DD1000-DD3FFF | 12KB | IDE controller | |||||||
DD4000-DDFFFF | 48KB | Reserved | |||||||
DE0000-DFEFFF | 124KB | Mainboard resources | |||||||
DFF000-DFFFFF | 4KB | Custom chip registers | |||||||
E00000-E7FFFF | 512KB | Reserved | Reserved for first 512KB of 1MB system ROM | Reserved | |||||
E80000-E8FFFF | 64KB | Auto-config space. Boards appear here before the system relocates them to their final address. | |||||||
E90000-EFFFFF | 448KB | Secondary auto-config space (usually 64K I/O boards) | |||||||
F00000-F7FFFF | 512KB | Extended ROM | Reserved | Extended ROM (CDTV) | Reserved | Flash ROM / Extended ROM (CD32) | Diagnostic ROM | ||
F80000-FBFFFF | 256KB | Kickstart ROM | Reserved | System ROM | |||||
FC0000-FFFFFF | 256KB | System ROM | |||||||
32-bit Addresses | |||||||||
01000000 - 03FFFFFF | 48MB | Reserved | N/A | Reserved | |||||
04000000-06FFFFFF | 48MB | Fast RAM | Reserved for motherboard RAM expansion | ||||||
07000000-07FFFFFF | 16MB | Motherboard RAM | |||||||
08000000-0FFFFFFF | 128MB | CPU slot expansion | |||||||
10000000-7FFFFFFF | 1792MB | Zorro-III space | Zorro-III expansion space | ||||||
80000000-FEFFFFFF | 2032MB | Reserved | Reserved | ||||||
FF000000-FF00FFFF | 64KB | Zorro-III config space | |||||||
FF010000-FFFFFFFF | 16320KB | Reserved |
Note that various modifications and third party hardware can change the details of this map, particularly those expansions that add additional addressing capabilities, e.g. 32-bit accelerators in A1200s, 2MB chip RAM modifications in A500s etc.
Some special addresses: * 000000-000100 - MC680x0 Exception Vector Assignment table (if VBR=0) * 000004 - Exec base (pointer to exec.library jumptable)
Sources for this info
- Amiga Hardware Reference Manual (various editions)
- M68000 Programmer's Reference Manual (1984, fourth edition)
- amiga-hardware.com (for standard amount of memory)
- Gayle, Gary specifications
- A1200 functional specification