System ROM: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
mNo edit summary
m (That wasn't the right word...)
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
BIOSes (officially called "SYSTEM ROM") are ROMs containing various generic functions and the startup program for NeoGeo systems. They are present in all hardware types.
[[File:biosmenus.png|thumb|(Enlarge) Configuration and book keeping menus in the SP-2 MVS system ROM.]]


The official BIOSes have their nationality set by the byte at address $C00401 (0=Japan, 1=US, 2=Euro). The Type is set by the byte at $C00400 (0=AES, 1=MVS).
The system ROM (often called BIOS) is a ROM containing code for the [[boot process|68k startup program]], some [[system ROM tables|lookup tables]], and various generic functions which can or must be used by games. They are present in all NeoGeo hardware types in various versions. The [[CD systems|NeoGeo CD]] system ROMs also contains graphics, sound, and {{Chipname|Z80}} code.


[[File:biosmenus.png|thumb|(Enlarge) Configuration and book keeping menus in the SP-2 MVS BIOS]]
Original system ROMs have their nationality set by the byte at address '''$000401''' (0=Japan, 1=US, 2=Euro), and their type set by the byte at '''$000400''' (0=AES, $80=MVS).


== AES BIOS ==
Through-hole ROMs can be replaced by 27C1024 or TC571024D EPROMs.


[[File:aes_biosep0.jpg|right|thumb|Toshiba EP0 BIOS ROM found on an AES board]]
=Hashes=
Size: 128KiB. Called "NEO-EP0".


== MVS BIOS ==
Copied from [[https://github.com/mamedev/mame/blob/master/src/mame/drivers/neogeo.cpp#L1830 MAME's source]].


[[File:mvs_sp-s2.jpg|right|thumb|Toshiba SP-S2 BIOS ROM on a 1FZS MVS slot.]]
{| class="regdef"
[[File:mvs_sp1v2.jpg|right|thumb]]
|'''Ref.'''
Size: 128KiB. Called "SP-S2". Different names according to nationality.
|'''Version'''
|'''CRC32'''
|'''SHA-1'''
|-
|SP-S
|Europe MVS (V1)
|C7F2FA45
|09576FF20B4D6B365E78E6A5698EA450262697CD
|-
|SP-S2
|Europe MVS (V2)
|9036D879
|4F5ED7105B7128794654CE82B51723E16E389543
|-
|SP-E
|US MVS (V1)
|2723A5B5
|5DBFF7531CF04886CDE3EF022FB5CA687573DCB8
|-
|SP-U2
|US MVS (V2?)
|E72943DE
|5C6BBA07D2EC8AC95776AA3511109F5E1E2E92EB
|-
|V2
|US MVS (4-slot V2)
|62F021F4
|62D372269E1B3161C64AE21123655A0A22FFD1BB
|-
|ASIA-S3
|Asia MVS (V3)
|91B64BE3
|720A3E20D26818632AEDF2C2FD16C54F213543E1
|-
|VS-BIOS
|Japan MVS (V3)
|F0E8F27D
|ECF01EDA815909F1FACEC62ABF3594EAA8D11075
|-
|SP-J2
|Japan MVS (V2)
|ACEDE59C
|B6F97ACD282FD7E94D9426078A90F059B5E9DD91
|-
|SP1
|Japan MVS (V1)
|9FB0ABE4
|18A987CE2229DF79A8CF6A84F968F0E42CE4E59D
|-
|SP-45
|Asia MVS (V4.5)
|03CC9F6A
|CDF1F49E3FF2BAC528C21ED28449CF35B7957DC1
|-
|JAPAN-J3
|Japan MVS (V3)
|DFF6D41F
|E92910E20092577A4523A6B39D578A71D4DE7085
|-
|SP-1V1
|Hotel unit (V1.3)
|162F0EBE
|FE1C6DD3DFCF97D960065B1BB46C1E11CB7BF271
|-
|NEO-EPO
|Export AES
|D27A71F1
|1B3B22092F30C4D1B2C15F04D1670EB1E9FBEA07
|-
|NEO-PO
|Japan AES
|16D0C132
|4E4A440CAE46F3889D20234AEBD7F8D5F522E22C
|-
|DEBUG
|Dev. Sys.
|698EBB7D
|081C49AA8CC7DAD5939833DC1B18338321EA0A07
|}


Holds functions for coins, [[UPD4990|calendar]] and player starts.
=Use=


== CD/CDZ BIOS ==
The system ROM is always mapped at [[68k memory map|$C00000]].
[[File:cd2_bios.jpg|right|thumb|SP1 BIOS ROM on a CDM3-2 board.]]


[[File:brd_spj.jpg|thumb|SPJ Japanese BIOS on a [[ROM-Only boards|ROM-only arcade board]]. Picture courtesy of [[http://www.mvs-scans.com MVS-Scans]].]]
See:
* [[:Category:BIOS_calls|System ROM calls]]
* [[Hardware test]]
* [[System ROM tables]]
 
=Home system=
 
Size: 128KiB. Named NEO-P0 (Japan) or NEO-EP0 (Export).
 
=MVS=
 
Size: 128KiB. Often named "SP" for System Program. Many different versions.
 
<gallery>
File:mvs_sp-s2.jpg|thumb|SP-S2 in PROM/MaskROM
File:mvs_sp1v2.jpg|thumb|SP1 in EPROM
File:brd_spj.jpg|thumb|SPJ Japanese system ROM on a [[ROM-Only boards|ROM-only arcade board]].
</gallery>
 
=CD/CDZ=
 
[[File:cdzbiosgfx.png|thumb|Graphic visualisation of the CDZ system ROM, highlighting the different data blocks.]]
 
On CD systems, the system ROM contains {{Chipname|Z80}} and {{Chipname|68k}} programs, [[ADPCM]] sound, and graphics which are loaded to the corresponding [[DRAM|DRAMs]] at startup. There are '''no''' [[SFIX ROM|SFIX]] or {{Chipname|SM1}} ROMs in CD systems (but still a {{Chipname|LO}} ROM).


Size: 512KiB.
Size: 512KiB.


Chip that contains [[Z80]] and [[68k]] programs, PCM sound, and graphics which are copied to the corresponding [[DRAM|DRAMs]] at boot time. The BIOS on CD systems also contains graphics and sounds. There is ''no'' [[SFIX]] or [[SM1]] ROMs on cart systems.
* FRONT-SP1 (Front loaders)
* TOP-SP1 (Early top loaders using {{Chipname|LC8953}})
* TOP-SP1-2 (Late top loaders using {{Chipname|LC98000}})
* TOP-SPD ([[CDZ]])
 
<gallery>
File:cd2_bios.jpg|thumb|TOP-SP1 system ROM on a {{PCB|NEO-CDM3-2 board}}.
File:top-sp1-2.jpg|thumb|TOP-SP1-2 on a {{PCB|NEO-CDM4-2 board}}. Pic by TortueGe.
File:top-sp1-3.jpg|thumb|TOP-SP1-3. Pic by l_oliveira.
</gallery>
 
==Hidden credits==
The CD1 and CD2 system ROMs contain credits organized to be displayed on the fix layer (how can this be seen ?):
 
[[File:ngcd_credits.png]]
 
* [[Noriyuki Higashi]] is "Mr.Noric".
* [[Toshiya Yahara]] is cited as the inventor of the NeoGeo Pocket power supply in an [[SNK Patents|SNK patent]].
* Jo(h)n Guso is credited as a programmer in several games.
 
==Sound drivers==
 
The [[CD hardware versions|CD1 and CD2]] system ROMs (FRONT-SP1 and TOP-SP1/SP2) include the [[Sound drivers list|"Ver 3.0 by Mr.Noric.1993/11/10 14:00"]] Z80 [[sound driver]].


The [[CD hardware versions|CD1 and CD2]] BIOSes (FRONT-SP1 and TOP-SP1) include the [[Sound drivers list|"Ver 3.0 by Mr.Noric.1993/11/10 14:00"]] Z80 [[sound driver]].
The [[CDZ]] version includes the "Ver 3.0 by MAKOTO.04/03/10 to SK" driver.


The [[CDZ]] BIOS includes the "Ver 3.0 by MAKOTO.04/03/10 to SK" driver.
<br clear=all>


The NeoGeo CD (not CDZ) BIOS contains credits, organized to be displayed on the fix layer (how can this be seen on screen ?):
=UniBIOS=


<pre>
Hacked MVS system ROM with various added functionalities such as cheats, [[debug DIPs]] settings, region and system switch, CRC checking, a jukebox, [[68k exception handling|error handling]]. See [[Universe BIOS]].
CREDITS
SOFTWARE NORIYUKI HIGASHI
HARDWARE MOTOO YOKOYAMA TOSHIYA YAHARA
GRAPHICS OTIAI
SPECIAL  JON  GUSO
THANKS  CURRY SHIMIZU
SNK ALL STAFF
</pre>


[[Noriyuki Higashi]] = Mr.Noric
=Neopen BIOS=


Graphic visualisation of a CDZ BIOS dump, with separated data blocks:<br>
Opensource AES/MVS system ROM in development. See [[Neopen BIOS]].
[[File:cdzbiosgfx.png]]


[[Category:Base system]]
[[Category:Base system]]

Latest revision as of 06:17, 9 January 2019

(Enlarge) Configuration and book keeping menus in the SP-2 MVS system ROM.

The system ROM (often called BIOS) is a ROM containing code for the 68k startup program, some lookup tables, and various generic functions which can or must be used by games. They are present in all NeoGeo hardware types in various versions. The NeoGeo CD system ROMs also contains graphics, sound, and Z80 code.

Original system ROMs have their nationality set by the byte at address $000401 (0=Japan, 1=US, 2=Euro), and their type set by the byte at $000400 (0=AES, $80=MVS).

Through-hole ROMs can be replaced by 27C1024 or TC571024D EPROMs.

Hashes

Copied from [MAME's source].

Ref. Version CRC32 SHA-1
SP-S Europe MVS (V1) C7F2FA45 09576FF20B4D6B365E78E6A5698EA450262697CD
SP-S2 Europe MVS (V2) 9036D879 4F5ED7105B7128794654CE82B51723E16E389543
SP-E US MVS (V1) 2723A5B5 5DBFF7531CF04886CDE3EF022FB5CA687573DCB8
SP-U2 US MVS (V2?) E72943DE 5C6BBA07D2EC8AC95776AA3511109F5E1E2E92EB
V2 US MVS (4-slot V2) 62F021F4 62D372269E1B3161C64AE21123655A0A22FFD1BB
ASIA-S3 Asia MVS (V3) 91B64BE3 720A3E20D26818632AEDF2C2FD16C54F213543E1
VS-BIOS Japan MVS (V3) F0E8F27D ECF01EDA815909F1FACEC62ABF3594EAA8D11075
SP-J2 Japan MVS (V2) ACEDE59C B6F97ACD282FD7E94D9426078A90F059B5E9DD91
SP1 Japan MVS (V1) 9FB0ABE4 18A987CE2229DF79A8CF6A84F968F0E42CE4E59D
SP-45 Asia MVS (V4.5) 03CC9F6A CDF1F49E3FF2BAC528C21ED28449CF35B7957DC1
JAPAN-J3 Japan MVS (V3) DFF6D41F E92910E20092577A4523A6B39D578A71D4DE7085
SP-1V1 Hotel unit (V1.3) 162F0EBE FE1C6DD3DFCF97D960065B1BB46C1E11CB7BF271
NEO-EPO Export AES D27A71F1 1B3B22092F30C4D1B2C15F04D1670EB1E9FBEA07
NEO-PO Japan AES 16D0C132 4E4A440CAE46F3889D20234AEBD7F8D5F522E22C
DEBUG Dev. Sys. 698EBB7D 081C49AA8CC7DAD5939833DC1B18338321EA0A07

Use

The system ROM is always mapped at $C00000.

See:

Home system

Size: 128KiB. Named NEO-P0 (Japan) or NEO-EP0 (Export).

MVS

Size: 128KiB. Often named "SP" for System Program. Many different versions.

CD/CDZ

File:Cdzbiosgfx.png
Graphic visualisation of the CDZ system ROM, highlighting the different data blocks.

On CD systems, the system ROM contains Z80 and 68k programs, ADPCM sound, and graphics which are loaded to the corresponding DRAMs at startup. There are no SFIX or SM1 ROMs in CD systems (but still a LO ROM).

Size: 512KiB.

  • FRONT-SP1 (Front loaders)
  • TOP-SP1 (Early top loaders using LC8953)
  • TOP-SP1-2 (Late top loaders using LC98000)
  • TOP-SPD (CDZ)

Hidden credits

The CD1 and CD2 system ROMs contain credits organized to be displayed on the fix layer (how can this be seen ?):

Sound drivers

The CD1 and CD2 system ROMs (FRONT-SP1 and TOP-SP1/SP2) include the "Ver 3.0 by Mr.Noric.1993/11/10 14:00" Z80 sound driver.

The CDZ version includes the "Ver 3.0 by MAKOTO.04/03/10 to SK" driver.


UniBIOS

Hacked MVS system ROM with various added functionalities such as cheats, debug DIPs settings, region and system switch, CRC checking, a jukebox, error handling. See Universe BIOS.

Neopen BIOS

Opensource AES/MVS system ROM in development. See Neopen BIOS.