161-in-1 Series 1: Difference between revisions
(Created page with "Relatively recent multicart with a software menu. =Programming= Infos by Razoola. Games have their v-blank interrupt code...") |
m (→Boards) |
||
(20 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Relatively recent [[multicarts|multicart]] with a software menu. | Relatively recent [[multicarts|multicart]] with a software menu. | ||
At least 2 versions of this cart exists. | |||
=Version 1= | |||
===Boards=== | |||
=Boards= | |||
[[File:55lv100s.png|thumb|55LV100S draft pinout]] | [[File:55lv100s.png|thumb|55LV100S draft pinout]] | ||
Line 23: | Line 16: | ||
* 1 for M | * 1 for M | ||
==PROG board== | ===PROG board=== | ||
*UP1: EPM3256 CPLD for [[P ROM]] and mcu control. Full 68k address and data bus connected. Address bus for the P ROMs comes only from the CPLD. Connected to RESET, PORTWE, PORTOE, ROMOE, AS, RW. JTAG port is JP1. | *UP1: EPM3256 CPLD for [[P ROM]] and mcu control. Full 68k address and data bus connected. Address bus for the P ROMs comes only from the CPLD. Connected to RESET, PORTWE, PORTOE, ROMOE, AS, RW. JTAG port is JP1. | ||
Line 31: | Line 24: | ||
*U3: Microcontroller (sanded-off PIC ?). 5V-powered, 8bit input bus (3.3V pullups in SIL array) and 8bit output bus to UP1. Not present on earlier multicarts of the same origin with less games. Programming port is J8. | *U3: Microcontroller (sanded-off PIC ?). 5V-powered, 8bit input bus (3.3V pullups in SIL array) and 8bit output bus to UP1. Not present on earlier multicarts of the same origin with less games. Programming port is J8. | ||
==CHA board== | ===CHA board=== | ||
Another EPM3256 CPLD for the [[C ROM|C]], [[S ROM|S]] and [[M1 ROM|M]] ROMs. A smaller CPLD is used to replace {{Chipname|NEO-ZMC}}. | Another EPM3256 CPLD for the [[C ROM|C]], [[S ROM|S]] and [[M1 ROM|M]] ROMs. A smaller CPLD is used to replace {{Chipname|NEO-ZMC}}. | ||
Uses a daughterboard with 14 flash chips. Lots of unused footprints for additional chips. | Uses a daughterboard with 14 flash chips. Lots of unused footprints for additional chips. | ||
=Version 2= | |||
This version still uses salvaged memory chips from Excite pachislots, with strange adapter legs. | |||
[[File:MVS 161-in-1-memory.jpg|thumb|left|MVS 161-in-1 version 2 - memory chip]] | |||
<br clear="all" /> | |||
===Boards=== | |||
<gallery> | |||
File:MVS-161-in-1-v2.jpg|thumb|MVS 161-in-1 version 2 | |||
File:MVS-161-in-1-v2-PROG-top.jpg|thumb|MVS 161-in-1 version 2 - PROG top | |||
File:MVS-161-in-1-v2-PROG-bottom.jpg|thumb|MVS 161-in-1 version 2 - PROG bottom | |||
File:MVS-161-in-1-v2-CHA-top.jpg|thumb|MVS 161-in-1 version 2 - CHA top | |||
File:MVS-161-in-1-v2-CHA-bottom.jpg|thumb|MVS 161-in-1 version 2 - CHA bottom | |||
</gallery> | |||
===Version 2 design flaw / stability fix=== | |||
Version 2 has a design flaw compared to version 1 which causes instability espicially on the MV-4F where it will not really work at all. Comparing version 1 to version 2 PCB's it was noticed version 1 PROG boards (solder side) has pins PDWAIT1 and PDTACK bridged, this bridge is missing on version 2 PCBs. | |||
Adding the bridge between these pins allows version 2 to work correctly on the MV-4F and probably makes it more stable on other MVS hardware also. See pictures below. | |||
<gallery> | |||
File:161in1-rev1.jpg|thumb|MVS 161-in-1 version 1 - PROG bottom | |||
File:161in1-rev2.jpg|thumb|MVS 161-in-1 version 2 - PROG bottom | |||
File:161in1-rev2fix.jpg|thumb|MVS 161-in-1 version 2 - PROG bottom fixed | |||
</gallery> | |||
=Version 3= | |||
This version still uses salvaged memory chips from Excite pachislots and board very close to the version 2. | |||
Comparison with previous versions: | |||
* There is a bridge between PDWAIT1 and PDTACK, it was missing in version 2. | |||
* A lot of capacitor were added | |||
===Boards=== | |||
<gallery> | |||
File:161in1-v3-prog-top.jpg|thumb|MVS 161-in-1 version 3 - PROG top | |||
File:161in1-v3-prog-bottom.jpg|thumb|MVS 161-in-1 version 3 - PROG bottom | |||
File:161in1-v3-cha-top.jpg|thumb|MVS 161-in-1 version 3 - CHA top | |||
File:161in1-v3-cha-bottom.jpg|thumb|MVS 161-in-1 version 3 - CHA bottom | |||
</gallery> | |||
Source: https://www.neogeo-system.com/t7269p50-tuto-modification-mvs-cartouche-161in1-v2#273842 | |||
=Version 4= | |||
This version still uses salvaged memory chips from Excite pachislots, with strange adapter legs. Holes have been made in main boards so the memory chips can be resoldered. | |||
Comparison with previous versions: | |||
* There is a bridge between PDWAIT1 and PDTACK, it was missing in version 2. | |||
* Capacitor slots are all populated | |||
* Micro-controller is not sanded. The model is STC11F08XE-35I-LQFP44. | |||
<br clear="all" /> | |||
===Boards=== | |||
<gallery> | |||
File:161in1-v4-prog-top.jpg|thumb|MVS 161-in-1 version 4 - PROG top | |||
File:161in1-v4-prog-bottom.jpg|thumb|MVS 161-in-1 version 4 - PROG bottom | |||
File:161in1-v4-cha-top.jpg|thumb|MVS 161-in-1 version 4 - CHA top | |||
File:161in1-v4-cha-bottom.jpg|thumb|MVS 161-in-1 version 4 - CHA bottom | |||
File:161in1-v4-bridge.jpg|thumb|MVS 161-in-1 version 4 bridge | |||
</gallery> | |||
=Programming (Version 1 / Version 2)= | |||
Infos by [[User:Razoola|Razoola]]. | |||
Games have their [[68k interrupts|v-blank]] interrupt code patched to allow going back to the game list menu by holding 1UP start down for 5 seconds. This button check however is quite flawed given it tests the entire byte of REG_STATUS_B and not bit 0 only. The result of this oversight by the coders means the game list menu will not reappear if running on AES hardware (via converter), if a memory card is present, or either 1UP select, 2UP start or 2UP select is also pressed. | |||
Address [[68k memory map|0x2FFFE0]] (word) is used to communicate with the mcu for storage and retrieval of the game's [[software DIPs]] settings and the menu's current position. | |||
Game selection is done through a set of 5 registers; 0x2FFFF0, 0x2FFFF2, 0x2FFFF4, 0x2FFFF6 and 0x2FFF00 (in that order). Each game is identified by a single word value (hex format) which is its position in the game list, KOF99 is 0x0015 for example. What is currently known about these registers is as follows; | |||
[[68k memory map|0x2FFFF0]] | |||
*0x0F0F is always written by the UI but testing seems to show any value will have the same effect. | |||
*Prep MCU to receive game change info (must be written first). | |||
[[68k memory map|0x2FFFF2]] | |||
*Number of game to be selected always written by the UI. | |||
*purpose unknown | |||
[[68k memory map|0x2FFFF4]] | |||
*Number of game to be selected always written by the UI. | |||
*purpose unknown | |||
[[68k memory map|0x2FFFF6]] | |||
*Number of game to be selected always written by the UI. | |||
*Purpose unknown but a value must be written! | |||
[[68k memory map|0x2FFF00]] | |||
*Number of game to be selected always written by the UI. | |||
*Swaps ROM regions to new game (must be written). | |||
Some notes about game swapping. | |||
*To get back into the 161-in-1 game list the game number is set to 0x0000. | |||
*Looking at Art of Fighting 2, register 0x2FFFF4 is not used when jumping back to the game list (unsure if this is true for all games). | |||
*ROM regions (P,S,F,M and V) switch to the game based on the value written to 0x2FFF00 regardless of the values written to either 0x2FFFF2, 0x2FFFF4 or 0x2FFFF6. | |||
*A game can be chosen by writing to registers 0x2FFFF0, 0x2FFFF6 and 0x2FFF00 only. Unknown if all games would function correctly however (lots of play testing required). | |||
*No way is currently known to instruct the cart to configure a single ROM region to a different game than whats held in the other regions. Based on what is known already this is probably not possible unless there are registers unused by the UI coding that can be used to instruct the MCU to do it. | |||
=Known Game Issues (Version 1 / Version 2)= | |||
*<b>Aero Fighters 2</b> - Will not play correctly unless in Japanese region (button check code inserted into ROM over game data). | |||
*<b>Magical Drop II</b> - Hiscore table is broken when drawn to screen (the start button trigger timer var stored at 0x10FF20, a region used by the game and MESS_OUT). This issue may affect other games also. | |||
*<b>Magical Drop III</b> - Hiscore table is broken when drawn to screen (the start button trigger timer var stored at 0x10FF20, a region used by the game and MESS_OUT). This issue may affect other games also. | |||
*<b>Blue's Journey</b> - Game will not have sound until system soft reset (probably due to corrupted Z80 ROM image). | |||
*<b>Puzzle Bobble 2</b> - Can causes crash when selected from the game list. Looks dependant on MVS type (happens on my MV-1FS but not MV-1FT). The game works correctly once a soft reset is done after the crash. | |||
*<b>Alpha Mission II</b> - Game name displayed in the testmode softdip settings screen is byte flipped (stored incorrectly in the carts game name tables). | |||
*<b>Metal Slug 3</b> - Has NGH of 0x299 (mslug6 hack). When in USA region the 'parental advisory warning' screen is corrupted. When set to Japanese language (softDIP) the Japanese how to play font is corrupted. | |||
*<b>Garou MOTW</b> - Will crash when preforming Kim's B+C top attack, this due to 161-in-1 using the prototype version of the game. | |||
There are probably other game issues also. | |||
=Series 1 Game List (Version 1 / Version 2)= | |||
{| | |||
| | |||
{|class="wikitable sortable" | |||
!Number!!Number (hex)!!Game Title | |||
|- | |||
|001||0x0001||SNK VS CAPCOM + | |||
|- | |||
|002||0x0002||SNK VS CAPCOM RMX | |||
|- | |||
|003||0x0003||SVC SUPER PLUS | |||
|- | |||
|004||0x0004||KING OF FIGHTERS 94 | |||
|- | |||
|005||0x0005||KING OF FIGHTERS 94 + | |||
|- | |||
|006||0x0006||KING OF FIGHTERS 95 | |||
|- | |||
|007||0x0007||KING OF FIGHTERS 95 + | |||
|- | |||
|008||0x0008||KING OF FIGHTERS 96 | |||
|- | |||
|009||0x0009||KING OF FIGHTERS 96 + | |||
|- | |||
|010||0x000A||KING OF FIGHTERS 96 EVO | |||
|- | |||
|011||0x000B||KING OF FIGHTERS 97 | |||
|- | |||
|012||0x000C||KING OF FIGHTERS 97 2003 | |||
|- | |||
|013||0x000D||KING OF FIGHTERS 97 REMIX | |||
|- | |||
|014||0x000E||KING OF FIGHTERS 97 PLUS | |||
|- | |||
|015||0x000F||KING OF GLADIATOR | |||
|- | |||
|016||0x0010||KING OF GLADIATOR PLUS | |||
|- | |||
|017||0x0011||KING OF FIGHTERS 98 | |||
|- | |||
|018||0x0012||KING OF FIGHTERS 98 + | |||
|- | |||
|019||0x0013||KING OF FIGHTERS 98 ULTIMATE | |||
|- | |||
|020||0x0014||KING OF FIGHTERS 98 OROCHI | |||
|- | |||
|021||0x0015||KING OF FIGHTERS 99 | |||
|- | |||
|022||0x0016||KING OF FIGHTERS 99 + | |||
|- | |||
|023||0x0017||KING OF FIGHTERS 99 CN | |||
|- | |||
|024||0x0018||KING OF FIGHTERS 2001 | |||
|- | |||
|025||0x0019||KING OF FIGHTERS 2001 PLUS | |||
|- | |||
|026||0x001A||C.T.H.D | |||
|- | |||
|027||0x001B||C.T.H.D SUPER PLUS | |||
|- | |||
|028||0x001C||KING OF FIGHTERS 2002 | |||
|- | |||
|029||0x001D||KING OF FIGHTERS 2002 MAGIC | |||
|- | |||
|030||0x001E||KING OF FIGHTERS 2002 MAGIC 2 | |||
|- | |||
|031||0x001F||KING OF FIGHTERS 2002 CN | |||
|- | |||
|032||0x0020||KING OF FIGHTERS 2002 OROCHI | |||
|- | |||
|033||0x0021||KING OF FIGHTERS 2002 LUAN | |||
|- | |||
|034||0x0022||KING OF FIGHTERS 2002 SUPER | |||
|- | |||
|035||0x0023||KING OF FIGHTERS 2002 SUPER 2 | |||
|- | |||
|036||0x0024||KING OF FIGHTERS 2003 | |||
|- | |||
|037||0x0025||KING OF FIGHTERS 2004 SE PLUS | |||
|- | |||
|038||0x0026||KING OF FIGHTERS 2004 SE | |||
|- | |||
|039||0x0027||KING OF FIGHTERS 2004 SMP | |||
|- | |||
|040||0x0028||KING OF FIGHTERS 10TH | |||
|- | |||
|041||0x0029||KING OF FIGHTERS 05 UNIQUE | |||
|- | |||
|042||0x002A||KING OF FIGHTERS 05 UNIQUE 2 | |||
|- | |||
|043||0x002B||KING OF FIGHTERS 10TH EXTRA + | |||
|- | |||
|044||0x002C||RAGE OF DRAGONS | |||
|- | |||
|045||0x002D||RAGE OF DRAGONS + | |||
|- | |||
|046||0x002E||STRIKERS 1945 + | |||
|- | |||
|047||0x002F||STRIKERS 1945 + + | |||
|- | |||
|048||0x0030||AERO FIGHTERS 2 | |||
|- | |||
|049||0x0031||AERO FIGHTERS 3 | |||
|- | |||
|050||0x0032||METAL SLUG | |||
|- | |||
|051||0x0033||METAL SLUG + | |||
|- | |||
|052||0x0034||METAL SLUG 2 | |||
|- | |||
|053||0x0035||METAL SLUG 2 + | |||
|- | |||
|054||0x0036||METAL SLUG 3 | |||
|- | |||
|055||0x0037||METAL SLUG 3 + | |||
|- | |||
|056||0x0038||METAL SLUG 4 | |||
|- | |||
|057||0x0039||METAL SLUG 4 + | |||
|- | |||
|058||0x003A||METAL SLUG X | |||
|- | |||
|059||0x003B||METAL SLUG X + | |||
|- | |||
|060||0x003C||METAL SLUG 6 | |||
|- | |||
|061||0x003D||METAL SLUG 6 + | |||
|- | |||
|062||0x003E||SUPER SIDEKICKS 2 | |||
|- | |||
|063||0x003F||SUPER SIDEKICKS 3 | |||
|- | |||
|064||0x0040||ULTIMATE 11 | |||
|- | |||
|065||0x0041||NEO-GEO CUP 98 | |||
|- | |||
|066||0x0042||PLEASURE GOAL | |||
|- | |||
|067||0x0043||SAMURAI SHODOWN | |||
|- | |||
|068||0x0044||SAMURAI SHODOWN + | |||
|- | |||
|069||0x0045||SAMURAI SHODOWN 2 | |||
|- | |||
|070||0x0046||SAMURAI SHODOWN 2+ | |||
|- | |||
|071||0x0047||SAMURAI SHODOWN 3 | |||
|- | |||
|072||0x0048||SAMURAI SHODOWN 3+ | |||
|- | |||
|073||0x0049||FIGHTERS SWORDS | |||
|- | |||
|074||0x004A||SAMURAI SHODOWN 4 | |||
|- | |||
|075||0x004B||SAMURAI SHODOWN 4+ | |||
|- | |||
|076||0x004C||SAMURAI V SPECIAL | |||
|- | |||
|077||0x004D||MATRIMELEE | |||
|- | |||
|078||0x004E||MATRIMELEE + | |||
|- | |||
|079||0x004F||SENGOKU | |||
|- | |||
|080||0x0050||SENGOKU 3 | |||
|- | |||
|081||0x0051||SENGOKU 3 + | |||
|- | |||
|082||0x0052||LAST BLADE | |||
|- | |||
|083||0x0053||LAST BLADE + | |||
|- | |||
|084||0x0054||THE LAST SOLDIER | |||
|- | |||
|085||0x0055||LAST BLADE 2 | |||
|- | |||
|086||0x0056||LAST BLADE 2 + | |||
|- | |||
|087||0x0057||LAST BLADE 2 EASY | |||
|- | |||
|088||0x0058||MARK OF THE WOLVES | |||
|- | |||
|089||0x0059||MARK OF WOLVES + | |||
|- | |||
|090||0x005A||DOUBLE DRAGON | |||
|- | |||
|091||0x005B||DOUBLE DRAGON + | |||
|- | |||
|092||0x005C||NIGHTMARE | |||
|- | |||
|093||0x005D||NIGHTMARE SP | |||
|- | |||
|094||0x005E||SPIN MASTER | |||
|- | |||
|095||0x005F||SPIN MASTER + | |||
|- | |||
|096||0x0060||FAR EAST OF EDEN | |||
|- | |||
|097||0x0061||LEGEND SUCCESS JOE | |||
|- | |||
|098||0x0062||ART OF FIGHTING 2 | |||
|- | |||
|099||0x0063||ART OF FIGHTING 2+ | |||
|- | |||
|100||0x0064||KARNOV'S REVENGE | |||
|- | |||
|101||0x0065||KARNOV’S REVENGE + | |||
|- | |||
|102||0x0066||LANSQUENET 2004 | |||
|- | |||
|103||0x0067||SHOCK TROOPERS 2ND | |||
|- | |||
|104||0x0068||PUZZLE BOBBLE | |||
|- | |||
|105||0x0069||PUZZLE BOBBLE 2 | |||
|- | |||
|106||0x006A||PANIC BOMBER | |||
|- | |||
|107||0x006B||STREET HOOP | |||
|- | |||
|108||0x006C||NEO BOMBERMAN | |||
|- | |||
|109||0x006D||ZUPAPA | |||
|- | |||
|110||0x006E||BLAZING STAR | |||
|- | |||
|111||0x006F||NINJA COMMANDO | |||
|- | |||
|112||0x0070||OVER TOP | |||
|- | |||
|113||0x0071||PULSTAR | |||
|- | |||
|114||0x0072||TOP HUNTER | |||
|- | |||
|115||0x0073||GANRYU | |||
|- | |||
|116||0x0074||EIGHT MAN | |||
|- | |||
|117||0x0075||MUTATION NATION | |||
|- | |||
|118||0x0076||BASEBALL STARS 2 | |||
|- | |||
|119||0x0077||ALPHA MISSION 2 | |||
|- | |||
|120||0x0078||PRE ISLE 2 | |||
|- | |||
|121||0x0079||THRASH RALLY | |||
|- | |||
|122||0x007A||ANDRO DUNOS | |||
|- | |||
|123||0x007B||CAPTAIN TOMADAY | |||
|- | |||
|124||0x007C||ZED BLADE | |||
|- | |||
|125||0x007D||BANG BEAD | |||
|- | |||
|126||0x007E||NEO DRIFT OUT | |||
|- | |||
|127||0x007F||NEO TURF MASTERS | |||
|- | |||
|128||0x0080||3 COUNT BOUT | |||
|- | |||
|129||0x0081||BURNING FIGHT | |||
|- | |||
|130||0x0082||LAST RESORT | |||
|- | |||
|131||0x0083||NEO MR. DO! | |||
|- | |||
|132||0x0084||ROBO ARMY | |||
|- | |||
|133||0x0085||PUZZLE DE PON | |||
|- | |||
|134||0x0086||MAGICAL DROP 2 | |||
|- | |||
|135||0x0087||FATAL FURY 1 | |||
|- | |||
|136||0x0088||MASTER OF SYOUGI | |||
|- | |||
|137||0x0089||VIEWPOINT | |||
|- | |||
|138||0x008A||WORLD HEROES 2 | |||
|- | |||
|139||0x008B||SOCCER BRAWL | |||
|- | |||
|140||0x008C||BREAKERS | |||
|- | |||
|141||0x008D||BREAKERS REVENGE | |||
|- | |||
|142||0x008E||BATTLE FLIP SHOT | |||
|- | |||
|143||0x008F||2020 SUPER BASEBALL | |||
|- | |||
|144||0x0090||WORLD HEROES | |||
|- | |||
|145||0x0091||MONEY PUZZLE EXCH | |||
|- | |||
|146||0x0092||KING OF MONSTERS | |||
|- | |||
|147||0x0093||FOOTBALL FRENZY | |||
|- | |||
|148||0x0094||BLUE‘S JOURNEY | |||
|- | |||
|149||0x0095||CROSSED SWORDS | |||
|- | |||
|150||0x0096||STAKES WINNER | |||
|- | |||
|151||0x0097||STAKES WINNER 2 | |||
|- | |||
|152||0x0098||PUZZLE DE PON! R! | |||
|- | |||
|153||0x0099||KING OF FIGHTERS 2003 CHANGE | |||
|- | |||
|154||0x009A||SUPER DODGE BALL | |||
|- | |||
|155||0x009B||MAGICAL DROP III | |||
|- | |||
|156||0x009C||SAVAGE REIGN | |||
|- | |||
|157||0x009D||KIZUNA ENCOUNTER | |||
|- | |||
|158||0x009E||KING OF FIGHTERS 2002 ICE-BLUE | |||
|- | |||
|159||0x009F||KING OF FIGHTERS 97 PJ | |||
|- | |||
|160||0x00A0||KING OF FIGHTERS 97 YL | |||
|- | |||
|161||0x00A1||KING OF FIGHTERS 97 CR | |||
|} | |||
[[Category:Cartridge systems]] | [[Category:Cartridge systems]] | ||
[[Category:Games]] | [[Category:Games]] |
Latest revision as of 13:15, 12 September 2020
Relatively recent multicart with a software menu. At least 2 versions of this cart exists.
Version 1
Boards
Uses a bunch of uncommon Fujitsu SSOP70 55LV100S 128MB flash chips, which some say were salvaged from other arcade machines.
- 3 for P (384MB)
- 5 for V (640MB)
- 16 for C (2GB)
- 1 for S
- 1 for M
PROG board
- UP1: EPM3256 CPLD for P ROM and mcu control. Full 68k address and data bus connected. Address bus for the P ROMs comes only from the CPLD. Connected to RESET, PORTWE, PORTOE, ROMOE, AS, RW. JTAG port is JP1.
- U3: Microcontroller (sanded-off PIC ?). 5V-powered, 8bit input bus (3.3V pullups in SIL array) and 8bit output bus to UP1. Not present on earlier multicarts of the same origin with less games. Programming port is J8.
CHA board
Another EPM3256 CPLD for the C, S and M ROMs. A smaller CPLD is used to replace NEO-ZMC.
Uses a daughterboard with 14 flash chips. Lots of unused footprints for additional chips.
Version 2
This version still uses salvaged memory chips from Excite pachislots, with strange adapter legs.
Boards
-
MVS 161-in-1 version 2
-
MVS 161-in-1 version 2 - PROG top
-
MVS 161-in-1 version 2 - PROG bottom
-
MVS 161-in-1 version 2 - CHA top
-
MVS 161-in-1 version 2 - CHA bottom
Version 2 design flaw / stability fix
Version 2 has a design flaw compared to version 1 which causes instability espicially on the MV-4F where it will not really work at all. Comparing version 1 to version 2 PCB's it was noticed version 1 PROG boards (solder side) has pins PDWAIT1 and PDTACK bridged, this bridge is missing on version 2 PCBs.
Adding the bridge between these pins allows version 2 to work correctly on the MV-4F and probably makes it more stable on other MVS hardware also. See pictures below.
-
MVS 161-in-1 version 1 - PROG bottom
-
MVS 161-in-1 version 2 - PROG bottom
-
MVS 161-in-1 version 2 - PROG bottom fixed
Version 3
This version still uses salvaged memory chips from Excite pachislots and board very close to the version 2.
Comparison with previous versions:
- There is a bridge between PDWAIT1 and PDTACK, it was missing in version 2.
- A lot of capacitor were added
Boards
-
MVS 161-in-1 version 3 - PROG top
-
MVS 161-in-1 version 3 - PROG bottom
-
MVS 161-in-1 version 3 - CHA top
-
MVS 161-in-1 version 3 - CHA bottom
Source: https://www.neogeo-system.com/t7269p50-tuto-modification-mvs-cartouche-161in1-v2#273842
Version 4
This version still uses salvaged memory chips from Excite pachislots, with strange adapter legs. Holes have been made in main boards so the memory chips can be resoldered.
Comparison with previous versions:
- There is a bridge between PDWAIT1 and PDTACK, it was missing in version 2.
- Capacitor slots are all populated
- Micro-controller is not sanded. The model is STC11F08XE-35I-LQFP44.
Boards
-
MVS 161-in-1 version 4 - PROG top
-
MVS 161-in-1 version 4 - PROG bottom
-
MVS 161-in-1 version 4 - CHA top
-
MVS 161-in-1 version 4 - CHA bottom
-
MVS 161-in-1 version 4 bridge
Programming (Version 1 / Version 2)
Infos by Razoola.
Games have their v-blank interrupt code patched to allow going back to the game list menu by holding 1UP start down for 5 seconds. This button check however is quite flawed given it tests the entire byte of REG_STATUS_B and not bit 0 only. The result of this oversight by the coders means the game list menu will not reappear if running on AES hardware (via converter), if a memory card is present, or either 1UP select, 2UP start or 2UP select is also pressed.
Address 0x2FFFE0 (word) is used to communicate with the mcu for storage and retrieval of the game's software DIPs settings and the menu's current position.
Game selection is done through a set of 5 registers; 0x2FFFF0, 0x2FFFF2, 0x2FFFF4, 0x2FFFF6 and 0x2FFF00 (in that order). Each game is identified by a single word value (hex format) which is its position in the game list, KOF99 is 0x0015 for example. What is currently known about these registers is as follows;
- 0x0F0F is always written by the UI but testing seems to show any value will have the same effect.
- Prep MCU to receive game change info (must be written first).
- Number of game to be selected always written by the UI.
- purpose unknown
- Number of game to be selected always written by the UI.
- purpose unknown
- Number of game to be selected always written by the UI.
- Purpose unknown but a value must be written!
- Number of game to be selected always written by the UI.
- Swaps ROM regions to new game (must be written).
Some notes about game swapping.
- To get back into the 161-in-1 game list the game number is set to 0x0000.
- Looking at Art of Fighting 2, register 0x2FFFF4 is not used when jumping back to the game list (unsure if this is true for all games).
- ROM regions (P,S,F,M and V) switch to the game based on the value written to 0x2FFF00 regardless of the values written to either 0x2FFFF2, 0x2FFFF4 or 0x2FFFF6.
- A game can be chosen by writing to registers 0x2FFFF0, 0x2FFFF6 and 0x2FFF00 only. Unknown if all games would function correctly however (lots of play testing required).
- No way is currently known to instruct the cart to configure a single ROM region to a different game than whats held in the other regions. Based on what is known already this is probably not possible unless there are registers unused by the UI coding that can be used to instruct the MCU to do it.
Known Game Issues (Version 1 / Version 2)
- Aero Fighters 2 - Will not play correctly unless in Japanese region (button check code inserted into ROM over game data).
- Magical Drop II - Hiscore table is broken when drawn to screen (the start button trigger timer var stored at 0x10FF20, a region used by the game and MESS_OUT). This issue may affect other games also.
- Magical Drop III - Hiscore table is broken when drawn to screen (the start button trigger timer var stored at 0x10FF20, a region used by the game and MESS_OUT). This issue may affect other games also.
- Blue's Journey - Game will not have sound until system soft reset (probably due to corrupted Z80 ROM image).
- Puzzle Bobble 2 - Can causes crash when selected from the game list. Looks dependant on MVS type (happens on my MV-1FS but not MV-1FT). The game works correctly once a soft reset is done after the crash.
- Alpha Mission II - Game name displayed in the testmode softdip settings screen is byte flipped (stored incorrectly in the carts game name tables).
- Metal Slug 3 - Has NGH of 0x299 (mslug6 hack). When in USA region the 'parental advisory warning' screen is corrupted. When set to Japanese language (softDIP) the Japanese how to play font is corrupted.
- Garou MOTW - Will crash when preforming Kim's B+C top attack, this due to 161-in-1 using the prototype version of the game.
There are probably other game issues also.
Series 1 Game List (Version 1 / Version 2)
|