68k memory map: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
mNo edit summary
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{| style="border-spacing: 10px;"
|style="vertical-align: top;"|
==In [[:Category:Cartridge systems|Cartridge systems]]==
==In [[:Category:Cartridge systems|Cartridge systems]]==


Line 9: Line 6:
| '''Size'''
| '''Size'''
| '''[[68k ASM defines|DEF]] Name'''
| '''[[68k ASM defines|DEF]] Name'''
| '''Delay'''
| '''[[Wait cycle]]s'''
| '''Description'''
| '''Description'''
|-
|-
Line 16: Line 13:
| 1MiB
| 1MiB
|  
|  
| 1 (5 clks)
| 0 or 1 (4/5 clks) depending on {{Sig|ROMWAIT|ROMWAIT}}.
| [[68k_vector_table|Vector table]], First fixed bank of the [[68k]] program ROM ([[P ROM]])
| [[68k_vector_table|Vector table]], first fixed bank of the {{Chipname|68k}} program ROM ({{Chipname|P ROM}})
|-
|-
| $100000
| $100000
Line 28: Line 25:
| $10F300
| $10F300
| $10FFFF
| $10FFFF
| [[BIOSes|BIOS]]-reserved RAM
| [[System ROM]]-reserved RAM
|-
| $110000
| $1FFFFF
|
|
| 0 (4 clks)
| Work RAM mirror
|-
|-
| $200000
| $200000
Line 34: Line 38:
| 1MiB
| 1MiB
|
|
| 0 (4 clks)
| 0 to 3 (4/7 clks) depending on {{Sig|PWAIT|PWAIT}}.
| Second bank of the 68k program ROM (also used for bankswitching and special chips)
| Second bank of the 68k program ROM (also used for bankswitching and access to special chips)
|-
|-
| $300000
| $300000
| $39FFFF
|
|
| 0 (4 clks)
| Input ports (See [[Memory mapped registers]])
|-
| $3A0000
| $3BFFFF
|
|
|
| Ouput ports (See Memory mapped registers)
|-
| $3C0000
| $3FFFFF
| $3FFFFF
|
|
|  
|  
| 0 (4 clks)
| 0 (4 clks)
| [[GPU]] ports (See Memory mapped registers)
| I/O. See [[Memory mapped registers]].
|-
|-
| $400000
| $400000
Line 64: Line 54:
| 0 (4 clks)
| 0 (4 clks)
| Banked [[palette RAM]]
| Banked [[palette RAM]]
|-
| $402000
| $7FFFFF
|
|
| 0 (4 clks)
| Palette RAM mirror
|-
|-
| $800000
| $800000
Line 75: Line 72:
| $C1FFFF
| $C1FFFF
| 128KiB
| 128KiB
| BIOSROM
| SYSTEMROM
| 0 (4 clks)
| [[System ROM]]
|-
| $C20000
| $CFFFFF
|
|
| 0 (4 clks)
| 0 (4 clks)
| System ROM ([[BIOSes|BIOS]])
| System ROM mirror
|-
|-
| $D00000
| $D00000
Line 85: Line 89:
| 0 (4 clks)
| 0 (4 clks)
| [[Backup RAM]] (MVS only)
| [[Backup RAM]] (MVS only)
|-
| $D10000
| $DFFFFF
|
|
| 0 (4 clks)
| Backup RAM mirror
|}
|}
|style="vertical-align: top;"|


==In [[:Category:CD systems|CD systems]]==
==In [[:Category:CD systems|CD systems]]==
Line 100: Line 109:
| $000000
| $000000
| $0FFFFF
| $0FFFFF
| 2MiB
| 1MiB
|  
|  
| Vector table, 68k program ([[PRG file]]s), 68k RAM
| Vector table, 68k program ([[PRG file]]s)
|-
|-
| $100000
| $100000
Line 112: Line 121:
| $10F300
| $10F300
| $10FFFF
| $10FFFF
| [[BIOSes|BIOS]]-reserved RAM
| [[System ROM]]-reserved RAM
|-
|-
| $110000
| $110000
Line 118: Line 127:
|  
|  
|
|
| 68k program ?
| Buffers, 68k program
|-
|-
| $300000
| $300000
Line 155: Line 164:
| 512KiB
| 512KiB
| BIOSROM
| BIOSROM
| System ROM ([[BIOSes|BIOS]])
| [[System ROM]]
|-
|-
| $D00000
| $D00000
Line 174: Line 183:
|
|
| CD and DMA specific I/O registers
| CD and DMA specific I/O registers
|}
|}
|}


== For [[Neo Print]] boards ==
== For [[Neo Print]] boards ==
Infos from [[http://mamedev.org/source/src/mame/drivers/neoprint.c.html MAME's source]].
Infos from [[https://github.com/mamedev/mame/blob/master/src/mame/drivers/neoprint.cpp MAME's source]].


{| class="regdef"
{| class="regdef"

Latest revision as of 09:42, 8 October 2023

In Cartridge systems

Start End Size DEF Name Wait cycles Description
$000000 $0FFFFF 1MiB 0 or 1 (4/5 clks) depending on ROMWAIT. Vector table, first fixed bank of the 68k program ROM (P ROM)
$100000 $10F2FF 64KiB WORKRAM 0 (4 clks) User RAM
$10F300 $10FFFF System ROM-reserved RAM
$110000 $1FFFFF 0 (4 clks) Work RAM mirror
$200000 $2FFFFF 1MiB 0 to 3 (4/7 clks) depending on PWAIT. Second bank of the 68k program ROM (also used for bankswitching and access to special chips)
$300000 $3FFFFF 0 (4 clks) I/O. See Memory mapped registers.
$400000 $401FFF 8KiB PALETTES 0 (4 clks) Banked palette RAM
$402000 $7FFFFF 0 (4 clks) Palette RAM mirror
$800000 $BFFFFF 8 MiB max MEMCARD 2 (6 clks) Memory card
$C00000 $C1FFFF 128KiB SYSTEMROM 0 (4 clks) System ROM
$C20000 $CFFFFF 0 (4 clks) System ROM mirror
$D00000 $D0FFFF 64KiB 0 (4 clks) Backup RAM (MVS only)
$D10000 $DFFFFF 0 (4 clks) Backup RAM mirror

In CD systems

Start End Size DEF Name Description
$000000 $0FFFFF 1MiB Vector table, 68k program (PRG files)
$100000 $10F2FF 64KiB
Shared with the 68k code DRAM.
WORKRAM User RAM
$10F300 $10FFFF System ROM-reserved RAM
$110000 $1FFFFF Buffers, 68k program
$300000 $39FFFF Input ports (See Memory mapped registers)
$3A0000 $3BFFFF Ouput ports (See Memory mapped registers)
$3C0000 $3FFFFF GPU ports (See Memory mapped registers)
$400000 $401FFF 8KiB PALETTES Banked palette RAM
$800000 $803FFF 8 KiB MEMCARD Virtual memory card (onboard battery-backed RAM)

(8bit, even bytes are always $FF)

$C00000 $C7FFFF 512KiB BIOSROM System ROM
$D00000 $DFFFFF ?
$E00000 $EFFFFF 1MiB UPLOAD Upload zone
$FF0000 $FF01FF ? CD and DMA specific I/O registers

For Neo Print boards

Infos from [MAME's source].

Start End Size DEF Name Description
$000000 $07FFFF 512KiB 68k program (P ROM).
$100000 $17FFFF Banked 68k program or I/O (writes done here).
$200000 $20FFFF 64KiB 68k RAM
$300000 $30FFFF 64KiB Backup RAM
$400000 $43FFFF VRAM ?
$500000 $51FFFF 128KiB Palette RAM
$600000 $600001 Z80 I/O
$600002 $600003 RTC I/O
$600004 $60000D I/O registers
$700000 $70001B GPU registers
70001E 70001F Watchdog