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: // NOTES For register setting:
// FM.3-4 : When A2 or B2 is read, the register contents occupy the low-order portion // 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 // (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 // is written, the register receives the low-order portion of the word; the high-order portion is not used
// : ...much more! // : ...much more!
// : ...shifter/limiter/overflow notes too. // : ...shifter/limiter/overflow notes too.
// //
// //

View File

@ -211,7 +211,7 @@ static void pcu_reset(void)
IPR = 0x0000; IPR = 0x0000;
// FM.5-4 // 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); I_bits_set(0x00);
S_bits_set(0); S_bits_set(0);
L_bit_set(0); L_bit_set(0);

View File

@ -142,7 +142,7 @@ static WRITE8_HANDLER( unknown_port_w )
{ {
// Writes to $00/$02/$00 // Writes to $00/$02/$00
// Values: // Values:
// $04/$09/$0F // $04/$09/$0F
// $04/$0E/$0F // $04/$0E/$0F
// $04/ /$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. 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? Other boards (MV1xx / MV2x / MV4 /MV6) other system sets?
Zoom ROM (LO) 128K TC531000CP 1x 128Kx8 Zoom look-up table ROM Zoom ROM (LO) 128K TC531000CP 1x 128Kx8 Zoom look-up table ROM
Fix ROM (SFIX) 128K 27C1000 1x 128Kx8 Text layer graphics ROM Fix ROM (SFIX) 128K 27C1000 1x 128Kx8 Text layer graphics ROM
Sound ROM (SM1) 128K 27C1000/23C1000 1x 128Kx8 Z80 program 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). 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). 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: CHA:
. NEO-273 . NEO-273
. NEO-CMC . NEO-CMC
. NEO-ZMC . NEO-ZMC
. NEO-ZMC2 . NEO-ZMC2
. PRO-CT0 . PRO-CT0
. SNK-9201 . SNK-9201
PROG: PROG:
. 0103 (QFP144) . 0103 (QFP144)
. ALTERA (EPM7128SQC100-15) . ALTERA (EPM7128SQC100-15)
. NEO-COMA . NEO-COMA
. NEO-PCM2 (SNK 1999) . NEO-PCM2 (SNK 1999)
. NEO-PCM2 (PLAYMORE 2002) . NEO-PCM2 (PLAYMORE 2002)
. NEO-PVC . NEO-PVC
. NEO-SMA . NEO-SMA
. PCM . PCM
. PRO-CT0 . PRO-CT0
. SNK-9201 . SNK-9201
Known pcb's: Known pcb's:
============ ============
MVS CHA: MVS CHA:
-- SNK -- -- SNK --
. NEO-MVS CHA-32 . NEO-MVS CHA-32
. NEO-MVS CHA-8M . NEO-MVS CHA-8M
. NEO-MVS CHA42G . NEO-MVS CHA42G
. NEO-MVS CHA42G-1 . NEO-MVS CHA42G-1
. NEO-MVS CHA 42G-2 . NEO-MVS CHA 42G-2
. NEO-MVS CHA 42G-3 . NEO-MVS CHA 42G-3
. NEO-MVS CHA42G-3B . NEO-MVS CHA42G-3B
. NEO-MVS CHA256 . NEO-MVS CHA256
. NEO-MVS CHA256B . NEO-MVS CHA256B
. NEO-MVS PSTM CHA136 . NEO-MVS PSTM CHA136
. NEO-MVS CHA512Y . NEO-MVS CHA512Y
. NEO-MVS CHAFIO (1999.6.14) . NEO-MVS CHAFIO (1999.6.14)
. MVS CHAFIO REV1.0 (KOF-2001) . MVS CHAFIO REV1.0 (KOF-2001)
. NEO-MVS CHAFIO (SNK 2002) - MADE IN KOREA . NEO-MVS CHAFIO (SNK 2002) - MADE IN KOREA
-- SNKPLAYMORE -- -- SNKPLAYMORE --
. NEO-MVS CHAFIO (2003.7.24) . NEO-MVS CHAFIO (2003.7.24)
MVS PROG: MVS PROG:
-- SNK -- -- SNK --
. NEO-MVS PROG-HERO . NEO-MVS PROG-HERO
. NEO-MVS PROG-EP . NEO-MVS PROG-EP
. NEO-MVS PROG8M42 . NEO-MVS PROG8M42
. NEO-MVS PROG16 . NEO-MVS PROG16
. NEO-MVS PROG42G . NEO-MVS PROG42G
. NEO-MVS PROG42G-1 . NEO-MVS PROG42G-1
. NEO-MVS PROG-G2 . NEO-MVS PROG-G2
. NEO-MVS PROG 4096 . NEO-MVS PROG 4096
. NEO-MVS PROG 4096 B . NEO-MVS PROG 4096 B
. NEO-MVS PROGGSC . NEO-MVS PROGGSC
. NEO-MVS PROGSM . NEO-MVS PROGSM
. NEO-MVS PROGSS3 . NEO-MVS PROGSS3
. NEO-MVS PROGTOP . NEO-MVS PROGTOP
. NEO-MVS PROGSF1 (1998.6.17) . NEO-MVS PROGSF1 (1998.6.17)
. NEO-MVS PROGEOP (1999.2.2) . NEO-MVS PROGEOP (1999.2.2)
. NEO-MVS PROGLBA (1999.4.12) - LBA-SUB (2000.2.24) . NEO-MVS PROGLBA (1999.4.12) - LBA-SUB (2000.2.24)
. NEO-MVS PROGBK1 . NEO-MVS PROGBK1
. NEO-MVS PROGBK2 (2000.3.21) . NEO-MVS PROGBK2 (2000.3.21)
. MVS PROGBK2 REV1.0 (KOF-2001) . MVS PROGBK2 REV1.0 (KOF-2001)
. NEO-MVS PROGBK2 (SNK 2002) - MADE IN KOREA . NEO-MVS PROGBK2 (SNK 2002) - MADE IN KOREA
-- SNKPLAYMORE -- -- SNKPLAYMORE --
. NEO-MVS PROGBK2R (2003.8.26) - NEO-HYCS (2003.9.29) . NEO-MVS PROGBK2R (2003.8.26) - NEO-HYCS (2003.9.29)
. NEO-MVS PROGBK3R (2003.9.2) - NEO-HYCS (2003.9.29) . NEO-MVS PROGBK3R (2003.9.2) - NEO-HYCS (2003.9.29)
. NEO-MVS PROGBK3S (2003.10.1) . NEO-MVS PROGBK3S (2003.10.1)
. NEO-MVS PROGBK2S (2003.10.xx) . NEO-MVS PROGBK2S (2003.10.xx)
AES CHA: AES CHA:
-- SNK -- -- SNK --
. NEO-AEG CHA-32 . NEO-AEG CHA-32
. NEO-AEG CHA-8M . NEO-AEG CHA-8M
. NEO-AEG CHA42G . NEO-AEG CHA42G
. NEO-AEG CHA42G-1 . NEO-AEG CHA42G-1
. NEO-AEG CHA42G-2B . NEO-AEG CHA42G-2B
. NEO-AEG CHA42G-3 . NEO-AEG CHA42G-3
. NEO-AEG CHA42G-4 . NEO-AEG CHA42G-4
. NEO-AEG CHA256 . NEO-AEG CHA256
. NEO-AEG CHA256[B] . NEO-AEG CHA256[B]
. NEO-AEG CHA256RY . NEO-AEG CHA256RY
. NEO-AEG CHA512Y . NEO-AEG CHA512Y
. NEO-AEG CHAFIO (1999.8.10) . NEO-AEG CHAFIO (1999.8.10)
-- SNKPLAYMORE -- -- SNKPLAYMORE --
. NEO-AEG CHAFIO (2003.7.24) . NEO-AEG CHAFIO (2003.7.24)
AES PROG: AES PROG:
-- SNK -- -- SNK --
. NEO-AEG PROG-NAM . NEO-AEG PROG-NAM
. NEO-AEG PROG-HERO . NEO-AEG PROG-HERO
. NEO-AEG PROG-4A . NEO-AEG PROG-4A
. NEO-AEG PROG-4B . NEO-AEG PROG-4B
. NEO-AEG PROG 8M42 . NEO-AEG PROG 8M42
. NEO-AEG PROG B . NEO-AEG PROG B
. NEO-AEG PROG16 . NEO-AEG PROG16
. NEO-AEG PROG42G . NEO-AEG PROG42G
. NEO-AEG PROG42G-COM . NEO-AEG PROG42G-COM
. NEO-AEG PROG42G-1 . NEO-AEG PROG42G-1
. NEO-AEG PROG-G2 . NEO-AEG PROG-G2
. NEO-AEG PROG4096 B . NEO-AEG PROG4096 B
. NEO-AEG PROGGS . NEO-AEG PROGGS
. NEO-AEG PROGTOP2 . NEO-AEG PROGTOP2
. NEO-AEG PROGLBA (1999.7.6) . NEO-AEG PROGLBA (1999.7.6)
. NEO-AEG PROGRK . NEO-AEG PROGRK
. NEO-AEG PROGRKB . NEO-AEG PROGRKB
. NEO-AEG PROGBK1Y . NEO-AEG PROGBK1Y
. NEO-AEG PROGBK1F . NEO-AEG PROGBK1F
-- PLAYMORE -- -- PLAYMORE --
. NEO-AEG PROGBK2 (2002.4.1) . NEO-AEG PROGBK2 (2002.4.1)
-- SNKPLAYMORE -- -- SNKPLAYMORE --
. NEO-AEG PROGBK3R (2003.8.29) - NEO-HYCS (2003.9.29) . NEO-AEG PROGBK3R (2003.8.29) - NEO-HYCS (2003.9.29)
. NEO-AEG PROGBK2S (2003.10.16) . 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: Known cartridge colours:
. Black . Black
. Blue . Blue
. Green . Green
. Grey . Grey
. Red . Red
. Transparent . Transparent
. Transparent Blue . Transparent Blue
. Transparent Green . Transparent Green
. White . White
. Yellow . Yellow
The above listed only covers SNK / PLAYMORE / SNKPLAYMORE pcb's. There also exists a The above listed only covers SNK / PLAYMORE / SNKPLAYMORE pcb's. There also exists a
wide range of 'bootleg' pcb's. 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 */ /* Jamma PCB sets */
/****************************************************************************** /******************************************************************************
The following Jamma PCB boards are known: The following Jamma PCB boards are known:
SNK vs. CAPCOM SVC CHAOS (svcpcb) SNK vs. CAPCOM SVC CHAOS (svcpcb)
NEO-MVH MVO 2003.6.5 NEO-MVH MVO 2003.6.5
SNK vs. CAPCOM SVC CHAOS (svcpcba) SNK vs. CAPCOM SVC CHAOS (svcpcba)
NEO-MVH MVOB 2003.7.9 NEO-MVH MVOB 2003.7.9
Metal Slug 5 Metal Slug 5
NEO-MVH MVOBR 2003.8.4 NEO-MVH MVOBR 2003.8.4
The King of Fighters 2003 The King of Fighters 2003
NEO-MVH MVOC 2003.11.3 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 | | | | | | | | address | | | | | | | |
0xffff ------------------------------------------------------------------------------| 0xffff ------------------------------------------------------------------------------|
ROM | ROM / | ROM | ROM | ROM / | | 0x00 | 0x40 | ROM | ROM / | ROM | ROM | ROM / | | 0x00 | 0x40 |
| DSP | | | SRAM? | | to | to | | DSP | | | SRAM? | | to | to |
0x8000 ----------------------------------------------------------| | 0x3f | 0x7f | 0x8000 ----------------------------------------------------------| | 0x3f | 0x7f |
Reserv | | | | W | | | Reserv | | | | W | | |
| | | S | R | m | m | | | | S | R | m | m |
0x6000 ----------------------------| | DSP / | R | A | i | i | 0x6000 ----------------------------| | DSP / | R | A | i | i |
I/O | Reserv | | A | M | r | r | I/O | Reserv | | A | M | r | r |
0x2000 ----------------------------| | Reserv | M | | r | r | 0x2000 ----------------------------| | Reserv | M | | r | r |
Low RAM (from 0x7e) | | | | | o | o | Low RAM (from 0x7e) | | | | | o | o |
| | | | | r | r | | | | | | r | r |
0x0000 ------------------------------------------------------------------------------- 0x0000 -------------------------------------------------------------------------------
MODE_22 is the same, but banks 0x40 to 0x7e at address 0x000 to 0x7fff contain ROM (of 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 | | | | | | | address | | | | | | |
0xffff --------------------------------------------------------------------| 0xffff --------------------------------------------------------------------|
mirror | 0xc0 | | mirror | | mirror | 0xc0 | | mirror | |
upper half ROM | to | | up half | | upper half ROM | to | | up half | |
from 0xc0 to 0xff | 0xff | | ROM | | from 0xc0 to 0xff | 0xff | | ROM | |
0x8000 --------------------------------------| | |---------| | 0x8000 --------------------------------------| | |---------| |
DSP / | Reserv | SRAM | | W | | | DSP / | Reserv | SRAM | | W | | |
Reserv | | | m | R | 0x00 | R | Reserv | | | m | R | 0x00 | R |
0x6000 --------------------------------------| i | A | to | O | 0x6000 --------------------------------------| i | A | to | O |
I/O | r | M | 0x3f | M | I/O | r | M | 0x3f | M |
0x2000 --------------------------------------| r | | mirror | | 0x2000 --------------------------------------| r | | mirror | |
Low RAM (from 0x7e) | o | | | | Low RAM (from 0x7e) | o | | | |
| r | | | | | r | | | |
0x0000 --------------------------------------------------------------------- 0x0000 ---------------------------------------------------------------------
@ -1147,17 +1147,17 @@ the available banks at 0xc0 to 0xff.
banks 0x00 0x20 0x3e 0x40 0x7e 0x80 0xb0 0xc0 0xff banks 0x00 0x20 0x3e 0x40 0x7e 0x80 0xb0 0xc0 0xff
address | | | | | | | | address | | | | | | | |
0xffff ----------------------------------------------------------------------------| 0xffff ----------------------------------------------------------------------------|
mirror | Last | | | ROM | | mirror | Last | | | ROM | |
upper half ROM | 0.5Mbits | | | mirror | | upper half ROM | 0.5Mbits | | | mirror | |
from 0x40 to 0x7e | ROM | ROM | | up half | ROM | from 0x40 to 0x7e | ROM | ROM | | up half | ROM |
0x8000 -----------------------------------| | |------------------| | 0x8000 -----------------------------------| | |------------------| |
DSP / | Reserv | next | W | Reserv | SRAM | first | DSP / | Reserv | next | W | Reserv | SRAM | first |
Reserv | | | R | | | | Reserv | | | R | | | |
0x6000 -----------------------------------| 31 | A |------------------| 32 | 0x6000 -----------------------------------| 31 | A |------------------| 32 |
I/O | Mbits | M | 0x00 | Mbits | I/O | Mbits | M | 0x00 | Mbits |
0x2000 -----------------------------------| | | to | | 0x2000 -----------------------------------| | | to | |
Low RAM (from 0x7e) | | | 0x3f | | Low RAM (from 0x7e) | | | 0x3f | |
| | | mirror | | | | | mirror | |
0x0000 ----------------------------------------------------------------------------- 0x0000 -----------------------------------------------------------------------------
@ -1483,7 +1483,7 @@ WRITE8_HANDLER( snes_w_bank7 )
/************************************* /*************************************
Driver Init Driver Init
*************************************/ *************************************/
@ -1644,20 +1644,20 @@ DRIVER_INIT( snes )
read_blocks = 0; read_blocks = 0;
/* Loading all the data blocks from cart, we only partially cover banks 0x00 to 0x7f. Therefore, we /* 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 * have to mirror the blocks until we reach the end. E.g. for a 11Mbits image (44 blocks), we proceed
* as follows: * as follows:
* 11 Mbits = 8 Mbits (blocks 1->32) + 2 Mbits (blocks 33->40) + 1 Mbit (blocks 41->44). * 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: * 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) * 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). * + 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). * 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 * 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) * 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 /* 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) while (read_blocks < 128 && read_blocks < total_blocks)
{ {
/* Loading data */ /* Loading data */
@ -1709,9 +1709,9 @@ DRIVER_INIT( snes_hirom )
/* See above for details about the way we fill banks 0x00 to 0x7f */ /* 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 /* 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 * (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. * 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) while (read_blocks < 64 && read_blocks < total_blocks)
{ {
/* Loading data */ /* 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__")";