mirror of
https://github.com/holub/mame
synced 2025-04-19 23:12:11 +03:00
Merge pull request #8478 from 0kmg/nes-mapper313
bus/nes: Added support for MMC3 reset-based 4-in-1 multicarts.
This commit is contained in:
commit
18bde3e614
311
hash/nes.xml
311
hash/nes.xml
@ -51669,7 +51669,75 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx
|
||||
</software>
|
||||
|
||||
|
||||
<!-- J.Y. Company -->
|
||||
<!-- J.Y. Company (sorted by serial code) -->
|
||||
|
||||
<!-- Different game set than earlier JY-001 -->
|
||||
<software name="mc_4jy1">
|
||||
<description>1994 Super HiK 4 in 1 (JY-001)</description>
|
||||
<year>1994</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1994 super hik 4-in-1 (jy-001 rev1).prg" size="524288" crc="dbdfef5e" sha1="289a97175056bc5bff5c5c09635a450bda7058ad" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1994 super hik 4-in-1 (jy-001 rev1).chr" size="524288" crc="07f696d6" sha1="1b54c0cb154de77d3b351032887fe694cdfb51e3" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy1a">
|
||||
<description>1993 Heroe Series 4 in 1 (JY-001)</description>
|
||||
<year>1993</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1993 heroe series 4-in-1 (jy-001).prg" size="524288" crc="8e40296d" sha1="5d0b50d195f11a656f6d46c369bb3f60000ed085" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1993 heroe series 4-in-1 (jy-001).chr" size="524288" crc="1d88439b" sha1="6e7bbdbc468f36ab2e95361a5ae95de605dee1d7" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy2">
|
||||
<description>1994 Super HiK 4 in 1 (JY-002)</description>
|
||||
<year>1994</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1994 super hik 4-in-1 (jy-002).prg" size="524288" crc="fbc1ee6b" sha1="7c82449372191ac3b6cfa4cc72e53b860c9f635b" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1994 super hik 4-in-1 (jy-002).chr" size="524288" crc="86ce512c" sha1="9ecbfe926d9f74680c6dba1464f2e7388dc17de2" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy3">
|
||||
<description>1994 Super HiK 4 in 1 (JY-003)</description>
|
||||
<year>1994</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1994 super hik 4-in-1 (jy-003).prg" size="524288" crc="f6822fe5" sha1="81dcace66ae60a4fe4035bb8b2e7901a8b33170f" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1994 super hik 4-in-1 (jy-003).chr" size="524288" crc="cb00a07d" sha1="af2a4f72e0923ed2897efd0ca96fb79a0f242abd" status="baddump" />
|
||||
</dataarea>
|
||||
<!-- 8k WRAM on cartridge -->
|
||||
<dataarea name="wram" size="8192">
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_3jy7">
|
||||
<description>1994 Super HiK 3 in 1 (JY-007)</description>
|
||||
@ -51686,6 +51754,26 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy8">
|
||||
<description>1995 Super HiK 4 in 1 (JY-008)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-008).prg" size="524288" crc="74a6176e" sha1="920e7a9a42b903b98c80166bc3dbf0aa50367709" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-008).chr" size="524288" crc="9127a998" sha1="1c607d8dab49b01e0b945f1ec4aa2af2f5f706d4" status="baddump" />
|
||||
</dataarea>
|
||||
<!-- 8k WRAM on cartridge, battery backed up -->
|
||||
<dataarea name="bwram" size="8192">
|
||||
<rom value="0x00" size="8192" offset="0" loadflag="fill" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy9">
|
||||
<description>1994 Ball 4 in 1 Series (JY-009)</description>
|
||||
<year>1994</year>
|
||||
@ -51701,6 +51789,22 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy13">
|
||||
<description>Mario Series 4 in 1 (JY-013)</description>
|
||||
<year>199?</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="mario series 4-in-1 (jy-013).prg" size="524288" crc="4558acd5" sha1="86d99d13e813f19c792fac8802c15888739179d2" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="mario series 4-in-1 (jy-013).chr" size="524288" crc="c89f1e34" sha1="33debec38feca775d185c0cff578bcbdbe7c677b" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy18">
|
||||
<description>1996 Super HiK 4 in 1 (JY-018)</description>
|
||||
<year>1996</year>
|
||||
@ -51746,6 +51850,160 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy23">
|
||||
<description>1995 Super HiK 4 in 1 (JY-023)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-023).prg" size="524288" crc="cadebc3e" sha1="92024688aaa583c673801bc585c4d693458f4d78" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-023).chr" size="524288" crc="dcdab70a" sha1="6374b768f0ca35f7b69708df573e69a327871247" status="baddump" />
|
||||
</dataarea>
|
||||
<!-- 8k WRAM on cartridge -->
|
||||
<dataarea name="wram" size="8192">
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy24">
|
||||
<description>1997 Super HiK 4 in 1 (JY-024)</description>
|
||||
<year>1997</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1997 super hik 4-in-1 (jy-024 rev1).prg" size="524288" crc="cef38f6c" sha1="5aebb9e0bb157d3eaa53204607610c22e8bc2548" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1997 super hik 4-in-1 (jy-024 rev1).chr" size="524288" crc="4961a797" sha1="fe1e710c2d22c5480951e11f2326d2814521b358" status="baddump" />
|
||||
</dataarea>
|
||||
<!-- 8k WRAM on cartridge -->
|
||||
<dataarea name="wram" size="8192">
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy24a" cloneof="mc_4jy24">
|
||||
<description>1995 Super HiK 4 in 1 (JY-024)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-024).prg" size="524288" crc="cef38f6c" sha1="5aebb9e0bb157d3eaa53204607610c22e8bc2548" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-024).chr" size="524288" crc="62327fda" sha1="91716488bb6a9626234df2f7359f86bc6b5c8cfd" status="baddump" />
|
||||
</dataarea>
|
||||
<!-- 8k WRAM on cartridge -->
|
||||
<dataarea name="wram" size="8192">
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy38">
|
||||
<description>1995 Super HiK 4 in 1 (JY-038)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-038).prg" size="524288" crc="bd705234" sha1="499393d8bd79b3de5a2ada099fc9477a573cc6ef" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-038).chr" size="524288" crc="60f4b6b1" sha1="9bf65398797b3d02ef1c329ef44f5d1d404d1b9f" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy39">
|
||||
<description>1995 Super HiK 4 in 1 (JY-039)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom2" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-039).prg" size="524288" crc="a32b698b" sha1="f12d34c330d0577aa560507d15c3083a885138fa" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="1048576">
|
||||
<rom name="1995 super hik 4-in-1 (jy-039).chr" size="1048576" crc="dc8b5fbc" sha1="0cbefbc986b9ec9f231294004d2be32a3c75115f" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy40">
|
||||
<description>1995 Super HiK 4 in 1 (JY-040)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom2" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-040).prg" size="524288" crc="677c6862" sha1="1f212b29ac4c7fa52eed6dbe4ef2ce62ed7e3bda" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="1048576">
|
||||
<rom name="1995 super hik 4-in-1 (jy-040).chr" size="1048576" crc="dc6704ce" sha1="0aa69fb1cd5d9bdd8b4d6c8626dea7fd0fd869e1" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy43">
|
||||
<description>1995 Super HiK 4 in 1 (JY-043)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom1" />
|
||||
<dataarea name="prg" size="1048576">
|
||||
<rom name="1995 super hik 4-in-1 (jy-043).prg" size="1048576" crc="a5d89dc1" sha1="cf238422714e35e86e6e2fa5dd3fc0a64230db6e" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-043).chr" size="524288" crc="5325e3ca" sha1="1521ab5918bc13a3989fc7e08cf76c2ce04a21ce" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Different game set than earlier JY-047 -->
|
||||
<software name="mc_4jy47">
|
||||
<description>1997 Super HiK 4 in 1 (JY-047)</description>
|
||||
<year>1997</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1997 super hik 4-in-1 (jy-047).prg" size="524288" crc="7a82a25c" sha1="f05a95eecd16073e82d5ec8e05c6cdf262025735" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1997 super hik 4-in-1 (jy-047).chr" size="524288" crc="4a6cb431" sha1="fcaa7266696e275b729690c67f8dc1d33fccd6c8" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy47a">
|
||||
<description>1995 Super HiK 4 in 1 (JY-047)</description>
|
||||
<year>1995</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-047 rev0).prg" size="524288" crc="113688e2" sha1="600e52f8a93cf3aa0bbb09e56bf570ad09d10184" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1995 super hik 4-in-1 (jy-047 rev0).chr" size="524288" crc="cb1a40b5" sha1="9dd3e05ec59efe91dfc465150d8420965714539a" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_8jy50">
|
||||
<description>1995 Super 8 in 1 (JY-050)</description>
|
||||
<year>1995</year>
|
||||
@ -51761,6 +52019,57 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy57">
|
||||
<description>1996 Super HiK 4 in 1 (JY-057)</description>
|
||||
<year>1996</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom2" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1996 super hik 4-in-1 (jy-057).prg" size="524288" crc="142184be" sha1="eec27f45ded5a7111e7b2d5ac8e0d33b0f6449cc" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="1048576">
|
||||
<rom name="1996 super hik 4-in-1 (jy-057).chr" size="1048576" crc="9bf7f019" sha1="f5ed8782a1b1c7f33cb61fad174bd0a483748c12" status="baddump" />
|
||||
</dataarea>
|
||||
<!-- 8k WRAM on cartridge -->
|
||||
<dataarea name="wram" size="8192">
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy58">
|
||||
<description>1996 Super HiK 4 in 1 (JY-058)</description>
|
||||
<year>1996</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom2" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1996 super hik 4-in-1 (jy-058).prg" size="524288" crc="019a5cf7" sha1="ace2c8eada92bda13ca9bd3e3dc336648ebb28c7" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="1048576">
|
||||
<rom name="1996 super hik 4-in-1 (jy-058).chr" size="1048576" crc="328168e5" sha1="9e457fbc8a784333be1dc88b68ceb2c6e832a0a2" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_4jy72">
|
||||
<description>1996 Super HiK 4 in 1 (JY-072)</description>
|
||||
<year>1996</year>
|
||||
<publisher>J.Y. Company</publisher>
|
||||
<info name="usage" value="Press reset to switch games."/>
|
||||
<part name="cart" interface="nes_cart">
|
||||
<feature name="slot" value="resettxrom0" />
|
||||
<dataarea name="prg" size="524288">
|
||||
<rom name="1996 super hik 4-in-1 (jy-072).prg" size="524288" crc="8b1f7c74" sha1="0987c7b4aaf4419605e71a65405c9fe7a1e98a04" status="baddump" />
|
||||
</dataarea>
|
||||
<dataarea name="chr" size="524288">
|
||||
<rom name="1996 super hik 4-in-1 (jy-072).chr" size="524288" crc="6369e559" sha1="ae52438a20d3d4da9cd999846b206c2f8f3799b7" status="baddump" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="mc_8jy85">
|
||||
<description>Super 8 in 1 Gold Card Series (JY-085)</description>
|
||||
<year>1995</year>
|
||||
|
@ -54,6 +54,9 @@ DEFINE_DEVICE_TYPE(NES_FCGJ8IN1, nes_fcgj8in1_device, "nes_fcgj8in1",
|
||||
DEFINE_DEVICE_TYPE(NES_FK23C, nes_fk23c_device, "nes_fk23c", "NES Cart FK23C PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_FK23CA, nes_fk23ca_device, "nes_fk23ca", "NES Cart FK23CA PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_NT639, nes_nt639_device, "nes_nt639", "NES Cart NT-639 PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_RESETTXROM0, nes_resettxrom0_device, "nes_resettxrom0", "NES Cart BMC RESET-TXROM 128K/128K PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_RESETTXROM1, nes_resettxrom1_device, "nes_resettxrom1", "NES Cart BMC RESET-TXROM 256K/128K PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_RESETTXROM2, nes_resettxrom2_device, "nes_resettxrom2", "NES Cart BMC RESET-TXROM 128K/256K PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_S24IN1SC03, nes_s24in1sc03_device, "nes_s24in1c03", "NES Cart Super 24 in 1 SC-03 PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_BMC_8IN1, nes_bmc_8in1_device, "nes_bmc_8in1", "NES Cart BMC GRM070 8 in 1 PCB")
|
||||
DEFINE_DEVICE_TYPE(NES_BMC_15IN1, nes_bmc_15in1_device, "nes_bmc_15in1", "NES Cart BMC 15 in 1 PCB")
|
||||
@ -224,6 +227,26 @@ nes_nt639_device::nes_nt639_device(const machine_config &mconfig, const char *ta
|
||||
{
|
||||
}
|
||||
|
||||
nes_resettxrom0_device::nes_resettxrom0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prg_shift, int chr_shift)
|
||||
: nes_txrom_device(mconfig, type, tag, owner, clock), m_count(-1), m_prg_shift(prg_shift), m_chr_shift(chr_shift)
|
||||
{
|
||||
}
|
||||
|
||||
nes_resettxrom0_device::nes_resettxrom0_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
|
||||
: nes_resettxrom0_device(mconfig, NES_RESETTXROM0, tag, owner, clock, 4, 7)
|
||||
{
|
||||
}
|
||||
|
||||
nes_resettxrom1_device::nes_resettxrom1_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
|
||||
: nes_resettxrom0_device(mconfig, NES_RESETTXROM1, tag, owner, clock, 5, 7)
|
||||
{
|
||||
}
|
||||
|
||||
nes_resettxrom2_device::nes_resettxrom2_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
|
||||
: nes_resettxrom0_device(mconfig, NES_RESETTXROM2, tag, owner, clock, 4, 8)
|
||||
{
|
||||
}
|
||||
|
||||
nes_s24in1sc03_device::nes_s24in1sc03_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
: nes_txrom_device(mconfig, NES_S24IN1SC03, tag, owner, clock)
|
||||
{
|
||||
@ -553,6 +576,25 @@ void nes_nt639_device::pcb_reset()
|
||||
mmc3_common_initialize(0x0f, 0xff, 0);
|
||||
}
|
||||
|
||||
// These reset-based PCBs are emulated here with no additional handlers
|
||||
void nes_resettxrom0_device::device_start()
|
||||
{
|
||||
mmc3_start();
|
||||
save_item(NAME(m_count));
|
||||
}
|
||||
|
||||
void nes_resettxrom0_device::pcb_reset()
|
||||
{
|
||||
m_chr_source = m_vrom_chunks ? CHRROM : CHRRAM;
|
||||
mmc3_common_initialize((1 << m_prg_shift) - 1, (1 << m_chr_shift) - 1, 0);
|
||||
|
||||
m_count = (m_count + 1) & 3;
|
||||
m_prg_base = m_count << m_prg_shift;
|
||||
m_chr_base = m_count << m_chr_shift;
|
||||
set_prg(m_prg_base, m_prg_mask);
|
||||
set_chr(m_chr_source, m_chr_base, m_chr_mask);
|
||||
}
|
||||
|
||||
void nes_s24in1sc03_device::device_start()
|
||||
{
|
||||
mmc3_start();
|
||||
|
@ -518,6 +518,49 @@ public:
|
||||
};
|
||||
|
||||
|
||||
// ======================> nes_resettxrom0_device
|
||||
|
||||
class nes_resettxrom0_device : public nes_txrom_device
|
||||
{
|
||||
public:
|
||||
// construction/destruction
|
||||
nes_resettxrom0_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
|
||||
|
||||
virtual void pcb_reset() override;
|
||||
|
||||
protected:
|
||||
// construction/destruction
|
||||
nes_resettxrom0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prg_shift, int chr_shift);
|
||||
|
||||
// device-level overrides
|
||||
virtual void device_start() override;
|
||||
|
||||
private:
|
||||
int m_count;
|
||||
int m_prg_shift, m_chr_shift;
|
||||
};
|
||||
|
||||
|
||||
// ======================> nes_resettxrom1_device
|
||||
|
||||
class nes_resettxrom1_device : public nes_resettxrom0_device
|
||||
{
|
||||
public:
|
||||
// construction/destruction
|
||||
nes_resettxrom1_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
|
||||
};
|
||||
|
||||
|
||||
// ======================> nes_resettxrom2_device
|
||||
|
||||
class nes_resettxrom2_device : public nes_resettxrom0_device
|
||||
{
|
||||
public:
|
||||
// construction/destruction
|
||||
nes_resettxrom2_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
|
||||
};
|
||||
|
||||
|
||||
// ======================> nes_s24in1sc03_device
|
||||
|
||||
class nes_s24in1sc03_device : public nes_txrom_device
|
||||
@ -881,6 +924,9 @@ DECLARE_DEVICE_TYPE(NES_FCGJ8IN1, nes_fcgj8in1_device)
|
||||
DECLARE_DEVICE_TYPE(NES_FK23C, nes_fk23c_device)
|
||||
DECLARE_DEVICE_TYPE(NES_FK23CA, nes_fk23ca_device)
|
||||
DECLARE_DEVICE_TYPE(NES_NT639, nes_nt639_device)
|
||||
DECLARE_DEVICE_TYPE(NES_RESETTXROM0, nes_resettxrom0_device)
|
||||
DECLARE_DEVICE_TYPE(NES_RESETTXROM1, nes_resettxrom1_device)
|
||||
DECLARE_DEVICE_TYPE(NES_RESETTXROM2, nes_resettxrom2_device)
|
||||
DECLARE_DEVICE_TYPE(NES_S24IN1SC03, nes_s24in1sc03_device)
|
||||
DECLARE_DEVICE_TYPE(NES_BMC_8IN1, nes_bmc_8in1_device)
|
||||
DECLARE_DEVICE_TYPE(NES_BMC_15IN1, nes_bmc_15in1_device)
|
||||
|
@ -423,6 +423,9 @@ void nes_cart(device_slot_interface &device)
|
||||
device.option_add_internal("fk23c", NES_FK23C);
|
||||
device.option_add_internal("fk23ca", NES_FK23CA);
|
||||
device.option_add_internal("nt639", NES_NT639);
|
||||
device.option_add_internal("resettxrom0", NES_RESETTXROM0);
|
||||
device.option_add_internal("resettxrom1", NES_RESETTXROM1);
|
||||
device.option_add_internal("resettxrom2", NES_RESETTXROM2);
|
||||
device.option_add_internal("s24in1c03", NES_S24IN1SC03);
|
||||
device.option_add_internal("bmc_8in1", NES_BMC_8IN1);
|
||||
device.option_add_internal("bmc_15in1", NES_BMC_15IN1);
|
||||
|
@ -348,7 +348,7 @@ static const nes_mmc mmc_list[] =
|
||||
// 310 variant of mapper 125?
|
||||
// 311 Unused (previously assigned in error to a bad SMB2 pirate dump)
|
||||
{ 312, KAISER_KS7013B }, // Highway Star FDS conversion
|
||||
// { 313, BMC_RESETTXROM }, various multicarts, not in nes.xml?
|
||||
{ 313, BMC_RESETTXROM0 },
|
||||
{ 314, BMC_64IN1NR },
|
||||
// 315 820732C and 830134C multicarts, not in nes.xml?
|
||||
// 316 Unused
|
||||
@ -901,6 +901,15 @@ void nes_cart_slot_device::call_load_ines()
|
||||
m_pcb_id = RCM_GS2013;
|
||||
break;
|
||||
|
||||
case BMC_RESETTXROM0:
|
||||
if (submapper == 1)
|
||||
m_pcb_id = BMC_RESETTXROM1;
|
||||
else if (submapper == 2)
|
||||
m_pcb_id = BMC_RESETTXROM2;
|
||||
else if (submapper > 2)
|
||||
logerror("Unimplemented NES 2.0 submapper: %d\n", submapper);
|
||||
break;
|
||||
|
||||
case HES_BOARD:
|
||||
if (crc_hack)
|
||||
m_cart->set_pcb_ctrl_mirror(true); // Mapper 113 is used for 2 diff boards
|
||||
@ -1224,6 +1233,13 @@ const char * nes_cart_slot_device::get_default_card_ines(get_default_card_softwa
|
||||
if (ROM[4] >= 20)
|
||||
pcb_id = RCM_GS2013;
|
||||
break;
|
||||
|
||||
case BMC_RESETTXROM0: // Mapper 313 is used for 3 diff boards
|
||||
if (submapper == 1)
|
||||
pcb_id = BMC_RESETTXROM1;
|
||||
if (submapper == 2)
|
||||
pcb_id = BMC_RESETTXROM2;
|
||||
break;
|
||||
}
|
||||
|
||||
return nes_get_slot(pcb_id);
|
||||
|
@ -300,6 +300,9 @@ static const nes_pcb pcb_list[] =
|
||||
{ "fk23c", BMC_FK23C },
|
||||
{ "fk23ca", BMC_FK23CA },
|
||||
{ "nt639", BMC_NT639 },
|
||||
{ "resettxrom0", BMC_RESETTXROM0 },
|
||||
{ "resettxrom1", BMC_RESETTXROM1 },
|
||||
{ "resettxrom2", BMC_RESETTXROM2 },
|
||||
{ "s24in1c03", BMC_S24IN1SC03 },
|
||||
{ "bmc_8in1", BMC_8IN1 },
|
||||
{ "bmc_15in1", BMC_15IN1 },
|
||||
|
@ -103,6 +103,7 @@ enum
|
||||
BMC_411120C, BMC_GOLD150, BMC_GOLD260, BMC_SUPER22,
|
||||
BMC_12IN1, BMC_4IN1RESET, BMC_42IN1RESET, BMC_LITTLECOM160, BMC_CTC09,
|
||||
BMC_K1029, BMC_K3006, BMC_K3036, BMC_K3046, BMC_SA005A, BMC_TJ03,
|
||||
BMC_RESETTXROM0, BMC_RESETTXROM1, BMC_RESETTXROM2,
|
||||
// Unlicensed
|
||||
UNL_8237, UNL_CC21, UNL_AX5705, UNL_KN42, UNL_KOF97,
|
||||
UNL_N625092, UNL_SC127, UNL_SMB2J, UNL_T230, UNL_MMALEE,
|
||||
|
Loading…
Reference in New Issue
Block a user