Cleanups and version bump.

This commit is contained in:
Aaron Giles 2008-10-02 05:34:21 +00:00
parent cf63e2baa8
commit 5123b07115
28 changed files with 271 additions and 271 deletions

View File

@ -8,10 +8,10 @@
// NOTES For register setting:
// FM.3-4 : When A2 or B2 is read, the register contents occupy the low-order portion
// (bits 7-0) of the word; the high-order portion (bits 16-8) is sign-extended. When A2 or B2
// is written, the register receives the low-order portion of the word; the high-order portion is not used
// : ...much more!
// : ...shifter/limiter/overflow notes too.
// (bits 7-0) of the word; the high-order portion (bits 16-8) is sign-extended. When A2 or B2
// is written, the register receives the low-order portion of the word; the high-order portion is not used
// : ...much more!
// : ...shifter/limiter/overflow notes too.
//
//

View File

@ -211,7 +211,7 @@ static void pcu_reset(void)
IPR = 0x0000;
// FM.5-4
// I_bits_set(0x03); This is what the manual says, but i'm dubious! Polygonet's HI interrupt wouldn't happen with the I bits set.
// I_bits_set(0x03); This is what the manual says, but i'm dubious! Polygonet's HI interrupt wouldn't happen with the I bits set.
I_bits_set(0x00);
S_bits_set(0);
L_bit_set(0);

View File

@ -142,7 +142,7 @@ static WRITE8_HANDLER( unknown_port_w )
{
// Writes to $00/$02/$00
// Values:
// $04/$09/$0F
// $04/$09/$0F
// $04/$0E/$0F
// $04/ /$0F
}

View File

@ -344,12 +344,12 @@ INPUT_PORTS_END
/******************************************************************************
The current Neo-Geo MVS system set (SFIX/SM1/000-LO) used is from a NEO-MVH MV1FS board.
Other boards (MV1xx / MV2x / MV4 /MV6) other system sets?
The current Neo-Geo MVS system set (SFIX/SM1/000-LO) used is from a NEO-MVH MV1FS board.
Other boards (MV1xx / MV2x / MV4 /MV6) other system sets?
Zoom ROM (LO) 128K TC531000CP 1x 128Kx8 Zoom look-up table ROM
Fix ROM (SFIX) 128K 27C1000 1x 128Kx8 Text layer graphics ROM
Sound ROM (SM1) 128K 27C1000/23C1000 1x 128Kx8 Z80 program ROM
Zoom ROM (LO) 128K TC531000CP 1x 128Kx8 Zoom look-up table ROM
Fix ROM (SFIX) 128K 27C1000 1x 128Kx8 Text layer graphics ROM
Sound ROM (SM1) 128K 27C1000/23C1000 1x 128Kx8 Z80 program ROM
******************************************************************************/
@ -460,157 +460,157 @@ INPUT_PORTS_END
/***************************************************************************
Neo-Geo game pcb infos:
=======================
Neo-Geo game pcb infos:
=======================
The Neo-Geo games for AES (home) and MVS (arcade) systems are cartridge based.
The Neo-Geo games for AES (home) and MVS (arcade) systems are cartridge based.
Each cartridge consists of two pcb's: CHA and PROG.
Each cartridge consists of two pcb's: CHA and PROG.
CHA pcb contains gfx data ('C' - rom), text layer data ('S' - rom) and sound driver ('M' - rom).
PROG pcb contains sample data ('V' - rom) and program code ('P' - rom).
CHA pcb contains gfx data ('C' - rom), text layer data ('S' - rom) and sound driver ('M' - rom).
PROG pcb contains sample data ('V' - rom) and program code ('P' - rom).
On most pcb's various custom/protection chips can also be found:
On most pcb's various custom/protection chips can also be found:
CHA:
. NEO-273
. NEO-CMC
. NEO-ZMC
. NEO-ZMC2
. PRO-CT0
. SNK-9201
CHA:
. NEO-273
. NEO-CMC
. NEO-ZMC
. NEO-ZMC2
. PRO-CT0
. SNK-9201
PROG:
. 0103 (QFP144)
. ALTERA (EPM7128SQC100-15)
. NEO-COMA
. NEO-PCM2 (SNK 1999)
. NEO-PCM2 (PLAYMORE 2002)
. NEO-PVC
. NEO-SMA
. PCM
. PRO-CT0
. SNK-9201
PROG:
. 0103 (QFP144)
. ALTERA (EPM7128SQC100-15)
. NEO-COMA
. NEO-PCM2 (SNK 1999)
. NEO-PCM2 (PLAYMORE 2002)
. NEO-PVC
. NEO-SMA
. PCM
. PRO-CT0
. SNK-9201
Known pcb's:
============
Known pcb's:
============
MVS CHA:
-- SNK --
. NEO-MVS CHA-32
. NEO-MVS CHA-8M
. NEO-MVS CHA42G
. NEO-MVS CHA42G-1
. NEO-MVS CHA 42G-2
. NEO-MVS CHA 42G-3
. NEO-MVS CHA42G-3B
. NEO-MVS CHA256
. NEO-MVS CHA256B
. NEO-MVS PSTM CHA136
. NEO-MVS CHA512Y
. NEO-MVS CHAFIO (1999.6.14)
. MVS CHAFIO REV1.0 (KOF-2001)
. NEO-MVS CHAFIO (SNK 2002) - MADE IN KOREA
-- SNKPLAYMORE --
. NEO-MVS CHAFIO (2003.7.24)
MVS CHA:
-- SNK --
. NEO-MVS CHA-32
. NEO-MVS CHA-8M
. NEO-MVS CHA42G
. NEO-MVS CHA42G-1
. NEO-MVS CHA 42G-2
. NEO-MVS CHA 42G-3
. NEO-MVS CHA42G-3B
. NEO-MVS CHA256
. NEO-MVS CHA256B
. NEO-MVS PSTM CHA136
. NEO-MVS CHA512Y
. NEO-MVS CHAFIO (1999.6.14)
. MVS CHAFIO REV1.0 (KOF-2001)
. NEO-MVS CHAFIO (SNK 2002) - MADE IN KOREA
-- SNKPLAYMORE --
. NEO-MVS CHAFIO (2003.7.24)
MVS PROG:
-- SNK --
. NEO-MVS PROG-HERO
. NEO-MVS PROG-EP
. NEO-MVS PROG8M42
. NEO-MVS PROG16
. NEO-MVS PROG42G
. NEO-MVS PROG42G-1
. NEO-MVS PROG-G2
. NEO-MVS PROG 4096
. NEO-MVS PROG 4096 B
. NEO-MVS PROGGSC
. NEO-MVS PROGSM
. NEO-MVS PROGSS3
. NEO-MVS PROGTOP
. NEO-MVS PROGSF1 (1998.6.17)
. NEO-MVS PROGEOP (1999.2.2)
. NEO-MVS PROGLBA (1999.4.12) - LBA-SUB (2000.2.24)
. NEO-MVS PROGBK1
. NEO-MVS PROGBK2 (2000.3.21)
. MVS PROGBK2 REV1.0 (KOF-2001)
. NEO-MVS PROGBK2 (SNK 2002) - MADE IN KOREA
-- SNKPLAYMORE --
. NEO-MVS PROGBK2R (2003.8.26) - NEO-HYCS (2003.9.29)
. NEO-MVS PROGBK3R (2003.9.2) - NEO-HYCS (2003.9.29)
. NEO-MVS PROGBK3S (2003.10.1)
. NEO-MVS PROGBK2S (2003.10.xx)
MVS PROG:
-- SNK --
. NEO-MVS PROG-HERO
. NEO-MVS PROG-EP
. NEO-MVS PROG8M42
. NEO-MVS PROG16
. NEO-MVS PROG42G
. NEO-MVS PROG42G-1
. NEO-MVS PROG-G2
. NEO-MVS PROG 4096
. NEO-MVS PROG 4096 B
. NEO-MVS PROGGSC
. NEO-MVS PROGSM
. NEO-MVS PROGSS3
. NEO-MVS PROGTOP
. NEO-MVS PROGSF1 (1998.6.17)
. NEO-MVS PROGEOP (1999.2.2)
. NEO-MVS PROGLBA (1999.4.12) - LBA-SUB (2000.2.24)
. NEO-MVS PROGBK1
. NEO-MVS PROGBK2 (2000.3.21)
. MVS PROGBK2 REV1.0 (KOF-2001)
. NEO-MVS PROGBK2 (SNK 2002) - MADE IN KOREA
-- SNKPLAYMORE --
. NEO-MVS PROGBK2R (2003.8.26) - NEO-HYCS (2003.9.29)
. NEO-MVS PROGBK3R (2003.9.2) - NEO-HYCS (2003.9.29)
. NEO-MVS PROGBK3S (2003.10.1)
. NEO-MVS PROGBK2S (2003.10.xx)
AES CHA:
-- SNK --
. NEO-AEG CHA-32
. NEO-AEG CHA-8M
. NEO-AEG CHA42G
. NEO-AEG CHA42G-1
. NEO-AEG CHA42G-2B
. NEO-AEG CHA42G-3
. NEO-AEG CHA42G-4
. NEO-AEG CHA256
. NEO-AEG CHA256[B]
. NEO-AEG CHA256RY
. NEO-AEG CHA512Y
. NEO-AEG CHAFIO (1999.8.10)
-- SNKPLAYMORE --
. NEO-AEG CHAFIO (2003.7.24)
AES CHA:
-- SNK --
. NEO-AEG CHA-32
. NEO-AEG CHA-8M
. NEO-AEG CHA42G
. NEO-AEG CHA42G-1
. NEO-AEG CHA42G-2B
. NEO-AEG CHA42G-3
. NEO-AEG CHA42G-4
. NEO-AEG CHA256
. NEO-AEG CHA256[B]
. NEO-AEG CHA256RY
. NEO-AEG CHA512Y
. NEO-AEG CHAFIO (1999.8.10)
-- SNKPLAYMORE --
. NEO-AEG CHAFIO (2003.7.24)
AES PROG:
-- SNK --
. NEO-AEG PROG-NAM
. NEO-AEG PROG-HERO
. NEO-AEG PROG-4A
. NEO-AEG PROG-4B
. NEO-AEG PROG 8M42
. NEO-AEG PROG B
. NEO-AEG PROG16
. NEO-AEG PROG42G
. NEO-AEG PROG42G-COM
. NEO-AEG PROG42G-1
. NEO-AEG PROG-G2
. NEO-AEG PROG4096 B
. NEO-AEG PROGGS
. NEO-AEG PROGTOP2
. NEO-AEG PROGLBA (1999.7.6)
. NEO-AEG PROGRK
. NEO-AEG PROGRKB
. NEO-AEG PROGBK1Y
. NEO-AEG PROGBK1F
-- PLAYMORE --
. NEO-AEG PROGBK2 (2002.4.1)
-- SNKPLAYMORE --
. NEO-AEG PROGBK3R (2003.8.29) - NEO-HYCS (2003.9.29)
. NEO-AEG PROGBK2S (2003.10.16)
AES PROG:
-- SNK --
. NEO-AEG PROG-NAM
. NEO-AEG PROG-HERO
. NEO-AEG PROG-4A
. NEO-AEG PROG-4B
. NEO-AEG PROG 8M42
. NEO-AEG PROG B
. NEO-AEG PROG16
. NEO-AEG PROG42G
. NEO-AEG PROG42G-COM
. NEO-AEG PROG42G-1
. NEO-AEG PROG-G2
. NEO-AEG PROG4096 B
. NEO-AEG PROGGS
. NEO-AEG PROGTOP2
. NEO-AEG PROGLBA (1999.7.6)
. NEO-AEG PROGRK
. NEO-AEG PROGRKB
. NEO-AEG PROGBK1Y
. NEO-AEG PROGBK1F
-- PLAYMORE --
. NEO-AEG PROGBK2 (2002.4.1)
-- SNKPLAYMORE --
. NEO-AEG PROGBK3R (2003.8.29) - NEO-HYCS (2003.9.29)
. NEO-AEG PROGBK2S (2003.10.16)
Cartridge colours:
==================
Cartridge colours:
==================
MVS cartridges were produced in different colours.
MVS cartridges were produced in different colours.
Known cartridge colours:
. Black
. Blue
. Green
. Grey
. Red
. Transparent
. Transparent Blue
. Transparent Green
. White
. Yellow
Known cartridge colours:
. Black
. Blue
. Green
. Grey
. Red
. Transparent
. Transparent Blue
. Transparent Green
. White
. Yellow
The above listed only covers SNK / PLAYMORE / SNKPLAYMORE pcb's. There also exists a
wide range of 'bootleg' pcb's.
The above listed only covers SNK / PLAYMORE / SNKPLAYMORE pcb's. There also exists a
wide range of 'bootleg' pcb's.
Neo-Geo game pcb infos by Johnboy
Neo-Geo game pcb infos by Johnboy
****************************************************************************/
@ -6360,19 +6360,19 @@ ROM_END
/* Jamma PCB sets */
/******************************************************************************
The following Jamma PCB boards are known:
The following Jamma PCB boards are known:
SNK vs. CAPCOM SVC CHAOS (svcpcb)
NEO-MVH MVO 2003.6.5
SNK vs. CAPCOM SVC CHAOS (svcpcb)
NEO-MVH MVO 2003.6.5
SNK vs. CAPCOM SVC CHAOS (svcpcba)
NEO-MVH MVOB 2003.7.9
SNK vs. CAPCOM SVC CHAOS (svcpcba)
NEO-MVH MVOB 2003.7.9
Metal Slug 5
NEO-MVH MVOBR 2003.8.4
Metal Slug 5
NEO-MVH MVOBR 2003.8.4
The King of Fighters 2003
NEO-MVH MVOC 2003.11.3
The King of Fighters 2003
NEO-MVH MVOC 2003.11.3
******************************************************************************/

View File

@ -60,7 +60,7 @@ static struct
/*************************************
Timers
Timers
*************************************/
@ -278,7 +278,7 @@ static TIMER_CALLBACK( snes_hblank_tick )
/*************************************
Input Handlers
Input Handlers
*************************************/
@ -1090,7 +1090,7 @@ WRITE8_HANDLER( snes_w_io )
/*************************************
Memory Handlers
Memory Handlers
*************************************/
@ -1105,15 +1105,15 @@ MODE_20
address | | | | | | | |
0xffff ------------------------------------------------------------------------------|
ROM | ROM / | ROM | ROM | ROM / | | 0x00 | 0x40 |
| DSP | | | SRAM? | | to | to |
| DSP | | | SRAM? | | to | to |
0x8000 ----------------------------------------------------------| | 0x3f | 0x7f |
Reserv | | | | W | | |
| | | S | R | m | m |
| | | S | R | m | m |
0x6000 ----------------------------| | DSP / | R | A | i | i |
I/O | Reserv | | A | M | r | r |
0x2000 ----------------------------| | Reserv | M | | r | r |
Low RAM (from 0x7e) | | | | | o | o |
| | | | | r | r |
Low RAM (from 0x7e) | | | | | o | o |
| | | | | r | r |
0x0000 -------------------------------------------------------------------------------
MODE_22 is the same, but banks 0x40 to 0x7e at address 0x000 to 0x7fff contain ROM (of
@ -1128,16 +1128,16 @@ MODE_21
address | | | | | | |
0xffff --------------------------------------------------------------------|
mirror | 0xc0 | | mirror | |
upper half ROM | to | | up half | |
from 0xc0 to 0xff | 0xff | | ROM | |
upper half ROM | to | | up half | |
from 0xc0 to 0xff | 0xff | | ROM | |
0x8000 --------------------------------------| | |---------| |
DSP / | Reserv | SRAM | | W | | |
Reserv | | | m | R | 0x00 | R |
Reserv | | | m | R | 0x00 | R |
0x6000 --------------------------------------| i | A | to | O |
I/O | r | M | 0x3f | M |
I/O | r | M | 0x3f | M |
0x2000 --------------------------------------| r | | mirror | |
Low RAM (from 0x7e) | o | | | |
| r | | | |
Low RAM (from 0x7e) | o | | | |
| r | | | |
0x0000 ---------------------------------------------------------------------
@ -1147,17 +1147,17 @@ the available banks at 0xc0 to 0xff.
banks 0x00 0x20 0x3e 0x40 0x7e 0x80 0xb0 0xc0 0xff
address | | | | | | | |
0xffff ----------------------------------------------------------------------------|
mirror | Last | | | ROM | |
upper half ROM | 0.5Mbits | | | mirror | |
from 0x40 to 0x7e | ROM | ROM | | up half | ROM |
mirror | Last | | | ROM | |
upper half ROM | 0.5Mbits | | | mirror | |
from 0x40 to 0x7e | ROM | ROM | | up half | ROM |
0x8000 -----------------------------------| | |------------------| |
DSP / | Reserv | next | W | Reserv | SRAM | first |
Reserv | | | R | | | |
Reserv | | | R | | | |
0x6000 -----------------------------------| 31 | A |------------------| 32 |
I/O | Mbits | M | 0x00 | Mbits |
I/O | Mbits | M | 0x00 | Mbits |
0x2000 -----------------------------------| | | to | |
Low RAM (from 0x7e) | | | 0x3f | |
| | | mirror | |
Low RAM (from 0x7e) | | | 0x3f | |
| | | mirror | |
0x0000 -----------------------------------------------------------------------------
@ -1483,7 +1483,7 @@ WRITE8_HANDLER( snes_w_bank7 )
/*************************************
Driver Init
Driver Init
*************************************/
@ -1644,20 +1644,20 @@ DRIVER_INIT( snes )
read_blocks = 0;
/* Loading all the data blocks from cart, we only partially cover banks 0x00 to 0x7f. Therefore, we
* have to mirror the blocks until we reach the end. E.g. for a 11Mbits image (44 blocks), we proceed
* as follows:
* 11 Mbits = 8 Mbits (blocks 1->32) + 2 Mbits (blocks 33->40) + 1 Mbit (blocks 41->44).
* Hence, we fill memory up to 16 Mbits (banks 0x00 to 0x3f) mirroring the final part:
* 8 Mbits (blocks 1->32) + 2 Mbits (blocks 33->40) + 1 Mbit (blocks 41->44) + 1 Mbit (blocks 41->44)
* + 2 Mbits (blocks 33->40) + 1 Mbit (blocks 41->44) + 1 Mbit (blocks 41->44).
* And we repeat the same blocks in the second half of the banks (banks 0x40 to 0x7f).
* This is likely what happens in the real SNES as well, because the unit cannot be aware of the exact
* size of data in the cart (procedure confirmed by byuu)
*/
* have to mirror the blocks until we reach the end. E.g. for a 11Mbits image (44 blocks), we proceed
* as follows:
* 11 Mbits = 8 Mbits (blocks 1->32) + 2 Mbits (blocks 33->40) + 1 Mbit (blocks 41->44).
* Hence, we fill memory up to 16 Mbits (banks 0x00 to 0x3f) mirroring the final part:
* 8 Mbits (blocks 1->32) + 2 Mbits (blocks 33->40) + 1 Mbit (blocks 41->44) + 1 Mbit (blocks 41->44)
* + 2 Mbits (blocks 33->40) + 1 Mbit (blocks 41->44) + 1 Mbit (blocks 41->44).
* And we repeat the same blocks in the second half of the banks (banks 0x40 to 0x7f).
* This is likely what happens in the real SNES as well, because the unit cannot be aware of the exact
* size of data in the cart (procedure confirmed by byuu)
*/
/* LoROM carts load data in banks 0x00 to 0x7f at address 0x8000 (actually up to 0x7d, because 0x7e and
* 0x7f are overwritten by WRAM). Each block is also mirrored in banks 0x80 to 0xff (up to 0xff for real)
*/
* 0x7f are overwritten by WRAM). Each block is also mirrored in banks 0x80 to 0xff (up to 0xff for real)
*/
while (read_blocks < 128 && read_blocks < total_blocks)
{
/* Loading data */
@ -1709,9 +1709,9 @@ DRIVER_INIT( snes_hirom )
/* See above for details about the way we fill banks 0x00 to 0x7f */
/* HiROM carts load data in banks 0xc0 to 0xff. Each bank is fully mirrored in banks 0x40 to 0x7f
* (actually up to 0x7d, because 0x7e and 0x7f are overwritten by WRAM). The top half (address
* range 0x8000 - 0xffff) of each bank is also mirrored in banks 0x00 to 0x3f and 0x80 to 0xbf.
*/
* (actually up to 0x7d, because 0x7e and 0x7f are overwritten by WRAM). The top half (address
* range 0x8000 - 0xffff) of each bank is also mirrored in banks 0x00 to 0x3f and 0x80 to 0xbf.
*/
while (read_blocks < 64 && read_blocks < total_blocks)
{
/* Loading data */
@ -1750,7 +1750,7 @@ DRIVER_INIT( snes_hirom )
/*************************************
HDMA
HDMA
*************************************/

View File

@ -9,4 +9,4 @@
***************************************************************************/
const char build_version[] = "0.127u5 ("__DATE__")";
const char build_version[] = "0.127u6 ("__DATE__")";