Not OpenFirmware. Also fixed a spelling mistake and removed some extra spaces.
3.5 KiB
VIRTUAL MEMORY MAP
Address | Area |
---|---|
0x5FFFE000 | InfoRecord |
0x5FFFEFF0 | NKSystemInfo |
0x68000000 | Motorola 68K Emulator (0x100000 bytes) |
0x68060000 | Emulator Code |
0x68080000 | Opcode Dispatch Table |
0x68FFE000 | KernelData |
0x68FFF000 | EmulatorData |
0xFF800000 | Open Firmware |
0xFFF0C000 | HardwarePriv |
PHYSICAL MEMORY MAP
NuBus Power Macs
(Sourced Heavily from: http://mess.redump.net/mess/driver_info/mac_technical_notes)
Starting Address | Ending Address | Area |
---|---|---|
0x00000000 | 0x3FFFFFFF | Main Memory |
0x40000000 | 0x4FFFFFFF | ROM Mirrors |
0x50000000 | 0x5FFFFFFF | IO Devices |
0x5FFFFFFC | "cpuid", really a Machine ID | |
0x60000000 | 0xEFFFFFFF | NuBus "super slot" space |
0xF1000000 | 0xFFBFFFFF | NuBus "standard slot" space |
0xFFC00000 | 0xFFFFFFFF | ROM |
IO Bus
Address | Area |
---|---|
0x50F00000 | IO Base Address |
0x50F04000 | SCC |
0x50F14000 | Sound Chip (AWACS) |
0x50F24000 | CLUT Control |
0x50F28000 | Video Control |
0x50F2A000 | Interrupt Control |
PCI Power Macs
Main Memory
-
0x00000000 - 0x7FFFFFFF Mac OS
-
0x00400000 - Open Firmware
PCI/Device Memory Area 0x80000000 - 0xFF000000
-
0x81000000 - Video Display Device (normally)
-
0xF3000000 - Mac OS I/O Device area
-
0xF3008000 - 0xF3008FFF - DMA Channels
-
0xF3008000 - SCSI DMA
-
0xF3008100 - Floppy DMA
-
0xF3008200 - Ethernet transmit DMA
-
0xF3008300 - Ethernet receive DMA
-
0xF3008400 - SCC channel A transmit DMA
-
0xF3008500 - SCC channel A receive DMA
-
0xF3008600 - SCC channel B transmit DMA
-
0xF3008700 - SCC channel B receive DMA
-
0xF3008800 - Audio out DMA
-
0xF3008900 - Audio in DMA
-
0xF3009000 - ATI Mach 64 video card
-
0xF3010000 - SCSI device registers (0x100 bytes)
-
0xF3011000 - MACE (serial) device registers (0x100 bytes)
-
0xF3012000 - SCC compatibility port (?) (0x100 bytes)
-
0xF3013000 - SCC MacRISC port (Serial for 0x20, then Modem for 0x20, with remaining 0xC0 unknown)
-
0xF3014000 - AWAC (Audio) chip device registers
-
0xF3015000 - SWIM3 (floppy controller) device registers
-
0xF3016000 - pseudo VIA1 device registers
-
0xF3017000 - pseudo VIA2 device registers
-
0xF3020000 - Heathrow ATA
-
0xF8000000 - Hammerhead memory controller registers (0x1000000 bytes)
-
0xFE010000 - 53C875 Hard Drive Controller
-
0xFE000000 - Grackle Low/Base
-
0xFEC00000 - Grackle CONFIG_ADDR (0x4 bytes, all redirected to 0xXXXXXCF8)
-
0xFEE00000 - Grackle CONFIG_DATA (0x4 bytes, all redirected to 0xXXXXXCFF)
ROM / Misc Area (0xFF000000 - 0xFFFFFFFF)
-
0xFF000000 - ?
- 0xFF000004 - "cpuid", really a machine ID
-
0xFFC00000 - 0xFFFFFFFF Mac OS ROM Area
-
0xFFC00000 - 0xFFEFFFFF - 68k Code Area
(below addresses apply to Old World ROMs)
-
0xFFF00100 - Reset Area (where the ROM begins executing)
-
0xFFF10000 - Nanokernel Code
-
0xFFF20000 - HW Init
-