summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Brian Troha <briantro@users.noreply.github.com>2008-01-23 03:06:06 +0000
committer Brian Troha <briantro@users.noreply.github.com>2008-01-23 03:06:06 +0000
commitd9f2974694b19e18693aa7fb0aa194247daee1dc (patch)
treefe2a6e11973fec01637c3006851196bd7134db52
parent79dcd62c8a512292abab3be6ef5d3c6dae61131d (diff)
added all the known BIOS dumps we have. Corrected one BIOS name
added info about region bytes & version numbers. reordered the BIOS list a little, IE: Export USA Japan
-rw-r--r--src/mame/drivers/naomi.c83
1 files changed, 70 insertions, 13 deletions
diff --git a/src/mame/drivers/naomi.c b/src/mame/drivers/naomi.c
index 182254da1a9..06e27441c10 100644
--- a/src/mame/drivers/naomi.c
+++ b/src/mame/drivers/naomi.c
@@ -698,29 +698,86 @@ MACHINE_DRIVER_END
#define ROM_LOAD16_WORD_SWAP_BIOS(bios,name,offset,length,hash) \
ROMX_LOAD(name, offset, length, hash, ROM_GROUPWORD | ROM_BIOS(bios+1)) /* Note '+1' */
+/* BIOS info:
+Revisions A through C can handle game carts only
+Revisions D and later can also handle GD-Rom board
+Revisions F and later can also handle GD-Rom board and or the network GD-Rom board
+
+F355 has it's own BIOS (3 screen version) and different JVS I/O Board
+
+Info from roms starting at 0x1ffd60
+
+EPR-21576g - NAOMI BOOT ROM 2001 09/10 1.70 (Japan)
+EPR-21577e - NAOMI BOOT ROM 2000 08/25 1.50 (USA)
+EPR-21578e - NAOMI BOOT ROM 2000 08/25 1.50 (Export)
+EPR-21578d - NAOMI BOOT ROM 1999 06/04 1.40 (Export)
+EPR-21578a - NAOMI BOOT ROM 1999 02/15 1.20 (Export)
+EPR-21579 - No known dump (Korea)
+EPR-21580 - No known dump (Australia)
+EPR-22851 - NAOMI BOOT ROM 1999 08/30 1.35 (Multisystem 3 screen)
+
+EPR-21577e & EPR-2178e differ by 7 bytes:
+
+0x53e20 is the region byte (only one region byte)
+0x1ffffa-0x1fffff is the BIOS checksum
+
+
+Region byte encoding is as follows:
+
+0x00 = Japan
+0x01 = USA
+0x02 = Export
+???? = Korea
+???? = Australia
+
+Scan ROM for the text string "LOADING TEST MODE NOW" back up four (4) bytes for the region byte.
+ NOTE: this doesn't work for the multi screen boot rom
+
+*/
#define NAOMI_BIOS \
- ROM_SYSTEM_BIOS( 0, "bios0", "epr-21577" ) \
- ROM_LOAD16_WORD_SWAP_BIOS( 0, "epr-21577.bin", 0x000000, 0x200000, CRC(cf36e97b) SHA1(b085305982e7572e58b03a9d35f17ae319c3bbc6) ) \
- ROM_SYSTEM_BIOS( 1, "bios1", "epr-21576d" ) \
- ROM_LOAD16_WORD_SWAP_BIOS( 1, "epr-21576d.bin", 0x000000, 0x200000, CRC(dfd5f42a) SHA1(614a0db4743a5e5a206190d6786ade24325afbfd) ) /*also found as epr21578d */ \
- ROM_SYSTEM_BIOS( 2, "bios2", "epr-21578" ) \
- ROM_LOAD16_WORD_SWAP_BIOS( 2, "epr-21578.bin", 0x000000, 0x200000, CRC(087f09a3) SHA1(0418eb2cf9766f0b1b874a4e92528779e22c0a4a) ) \
- ROM_SYSTEM_BIOS( 3, "bios3", "epr-21576g" ) \
- ROM_LOAD16_WORD_SWAP_BIOS( 3, "epr-21576g.bin", 0x000000, 0x200000, CRC(d2a1c6bf) SHA1(6d27d71aec4dfba98f66316ae74a1426d567698a) ) /* might be naomi2 */ \
+ ROM_SYSTEM_BIOS( 0, "bios0", "epr-21578e" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 0, "epr-21578e.bin", 0x000000, 0x200000, CRC(087f09a3) SHA1(0418eb2cf9766f0b1b874a4e92528779e22c0a4a) ) \
+ ROM_SYSTEM_BIOS( 1, "bios1", "epr-21578d" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 1, "epr-21578d.bin", 0x000000, 0x200000, CRC(dfd5f42a) SHA1(614a0db4743a5e5a206190d6786ade24325afbfd) ) \
+ ROM_SYSTEM_BIOS( 2, "bios2", "epr-21578a" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 2, "epr-21578a.bin", 0x000000, 0x200000, CRC(6c9aad83) SHA1(555918de76d8dbee2a97d8a95297ef694b3e803f) ) \
+ ROM_SYSTEM_BIOS( 3, "bios3", "epr-21577e" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 3, "epr-21577e.bin", 0x000000, 0x200000, CRC(cf36e97b) SHA1(b085305982e7572e58b03a9d35f17ae319c3bbc6) ) \
+ ROM_SYSTEM_BIOS( 4, "bios4", "epr-21576g" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 4, "epr-21576g.bin", 0x000000, 0x200000, CRC(d2a1c6bf) SHA1(6d27d71aec4dfba98f66316ae74a1426d567698a) ) \
+ ROM_SYSTEM_BIOS( 5, "bios5", "epr-22851" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 5, "epr-22851.bin", 0x000000, 0x200000, CRC(62483677) SHA1(3e3bcacf5f972c376b569f45307ee7fd0b5031b7) ) \
+
+
+/* NAOMI2 BIOS:
+EPR-23609 - NAOMI BOOT ROM 2001 01/19 1.50
+EPR-2360xB - NAOMI BOOT ROM 2001 09/10 1.70
+EPR-23605B, EPR-23607B & EPR-23608B all differ by 6 bytes:
+
+0x0553a0 is the first region byte
+0x1ecf40 is a second region byte (value is the same as the first region byte )
+0x1fffc-1ffff is the BIOS rom checksum (might be 0x1ffffa-0x1fffff)
+
+EPR-23609 - Japan (region = 0x00)
+EPR-23605b - Japan (region = 0x00)
+EPR-23607b - USA (region = 0x01)
+EPR-23608b - Export (region = 0x02)
+
+*/
#define NAOMI2_BIOS \
- ROM_SYSTEM_BIOS( 0, "bios0", "epr-23605b" ) \
- ROM_LOAD16_WORD_SWAP_BIOS( 0, "epr-23605b.bin", 0x000000, 0x200000, CRC(3a3242d4) SHA1(aaca4df51ef91d926f8191d372f3dfe1d20d9484) ) \
+ ROM_SYSTEM_BIOS( 0, "bios0", "epr-23608b" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 0, "epr-23608b.bin", 0x000000, 0x200000, CRC(a554b1e3) SHA1(343b727a3619d1c75a9b6d4cc156a9050447f155) ) \
ROM_SYSTEM_BIOS( 1, "bios1", "epr-23607b" ) \
ROM_LOAD16_WORD_SWAP_BIOS( 1, "epr-23607b.bin", 0x000000, 0x200000, CRC(f308c5e9) SHA1(5470ab1cee6afecbd8ca8cf40f8fbe4ec2cb1471) ) \
- ROM_SYSTEM_BIOS( 2, "bios2", "epr-23608b" ) \
- ROM_LOAD16_WORD_SWAP_BIOS( 2, "epr-23608b.bin", 0x000000, 0x200000, CRC(a554b1e3) SHA1(343b727a3619d1c75a9b6d4cc156a9050447f155) ) \
+ ROM_SYSTEM_BIOS( 2, "bios2", "epr-23605b" ) \
+ ROM_LOAD16_WORD_SWAP_BIOS( 2, "epr-23605b.bin", 0x000000, 0x200000, CRC(3a3242d4) SHA1(aaca4df51ef91d926f8191d372f3dfe1d20d9484) ) \
ROM_SYSTEM_BIOS( 3, "bios3", "epr-23609" ) \
- ROM_LOAD16_WORD_SWAP_BIOS( 3, "epr-23609.bin", 0x000000, 0x200000, CRC(5731e446) SHA1(787b0844fc408cf124c12405c095c59948709ea6) ) /* might be naomi1 */ \
+ ROM_LOAD16_WORD_SWAP_BIOS( 3, "epr-23609.bin", 0x000000, 0x200000, CRC(5731e446) SHA1(787b0844fc408cf124c12405c095c59948709ea6) ) \
/* this is one flashrom, however the second half looks like it's used for game settings, may differ between dumps, and may not be needed / could be blanked */
#define AW_BIOS \