Previous 199869 Revisions Next

r23301 Thursday 30th May, 2013 at 15:17:43 UTC by smf
Converted the Konami System 573 Security Cassettes to use slots. The current setting is no longer saved, so the default cassette is "game". Some games have additional I/O connected via the security cassette, which is now hooked up when the cassette is loaded instead of patched directly into the memory map. If the game has a separate "install" cassette then you need to select this and hard reset (shift+F3 or select reset from the slot menu) before it will let you install from the CD. [smf]
[src/mame/drivers]ksys573.c
[src/mame/machine]k573cass.c k573cass.h zs01.c zs01.h

trunk/src/mame/drivers/ksys573.c
r23300r23301
1212  setting screen.  Press DOWN to select "SAVE AND EXIT" then press player 1 START
1313  to continue.
1414
15  Note 3: If you are asked to insert a different cartridge then use the fake dip
16  switch to change it.
15  Note 3: Some games require an installation cassette when installing from CD.
16  Go to the slot devices menu in the tab menu and change the cassette from "game"
17  to "install" and select reset. After installing you need to change the cassette
18  back to "game" and select reset.
1719
1820  Note 4: Some games require you to press f2 to skip the rtc cleared note.
1921
r23300r23301
490492#include "machine/mb89371.h"
491493#include "machine/mpeg573.h"
492494#include "machine/upd4701.h"
493#include "machine/x76f041.h"
494#include "machine/x76f100.h"
495#include "machine/zs01.h"
496495#include "sound/spu.h"
497496#include "sound/cdda.h"
498497#include "cdrom.h"
r23300r23301
540539      m_analog3(*this, "analog3"),
541540      m_pads(*this, "PADS"),
542541      m_psxirq(*this, ":maincpu:irq"),
543      m_mpeg573(*this, "mpeg573"),
544542      m_cr589(*this, ":cdrom"),
545543      m_maincpu(*this, "maincpu"),
546544      m_ram(*this, "maincpu:ram"),
547545      m_out1(*this, "OUT1"),
548      m_cart(*this, "CART"),
546      m_out2(*this, "OUT2"),
549547      m_cd(*this, "CD"),
550548      m_upd4701(*this, "upd4701"),
551549      m_upd4701_y(*this, "uPD4701_y"),
r23300r23301
554552      m_gunx(*this, "GUNX"),
555553      m_sensor(*this, "SENSOR"),
556554      m_encoder(*this, "ENCODER"),
557      m_game_id(*this, "game_id"),
558      m_install_id(*this, "install_id"),
559      m_game_eeprom(*this, "game_eeprom"),
560      m_install_eeprom(*this, "install_eeprom"),
561555      m_gunmania_id(*this, "gunmania_id")
562556   {
563557   }
r23300r23301
565559   DECLARE_CUSTOM_INPUT_MEMBER(gn845pwbb_read);
566560   DECLARE_CUSTOM_INPUT_MEMBER(gunmania_tank_shutter_sensor);
567561   DECLARE_CUSTOM_INPUT_MEMBER(gunmania_cable_holder_sensor);
568   DECLARE_READ_LINE_MEMBER(read_line_ds2401 );
569   DECLARE_READ_LINE_MEMBER(read_line_secflash);
570562   DECLARE_READ_LINE_MEMBER(read_line_pcard1_detect);
571563   DECLARE_READ_LINE_MEMBER(read_line_pcard2_detect);
572564   DECLARE_READ16_MEMBER(control_r);
r23300r23301
603595   DECLARE_WRITE_LINE_MEMBER(mamboagg_lamps_b3);
604596   DECLARE_WRITE_LINE_MEMBER(mamboagg_lamps_b4);
605597   DECLARE_WRITE_LINE_MEMBER(mamboagg_lamps_b5);
598   DECLARE_WRITE_LINE_MEMBER(salarymc_lamp_rst);
599   DECLARE_WRITE_LINE_MEMBER(salarymc_lamp_d);
600   DECLARE_WRITE_LINE_MEMBER(salarymc_lamp_clk);
601   DECLARE_WRITE_LINE_MEMBER(hyperbbc_lamp_red);
602   DECLARE_WRITE_LINE_MEMBER(hyperbbc_lamp_green);
603   DECLARE_WRITE_LINE_MEMBER(hyperbbc_lamp_blue);
604   DECLARE_WRITE_LINE_MEMBER(hyperbbc_lamp_start);
605   DECLARE_WRITE_LINE_MEMBER(hyperbbc_lamp_strobe1);
606   DECLARE_WRITE_LINE_MEMBER(hyperbbc_lamp_strobe2);
607   DECLARE_WRITE_LINE_MEMBER(hyperbbc_lamp_strobe3);
606608   TIMER_CALLBACK_MEMBER(atapi_xfer_end);
607   DECLARE_WRITE8_MEMBER(gn845pwbb_output_callback_1);
609   DECLARE_WRITE8_MEMBER(ddr_output_callback);
608610   DECLARE_WRITE8_MEMBER(ddrsolo_output_callback);
609   DECLARE_WRITE8_MEMBER(drmn_output_callback_1);
611   DECLARE_WRITE8_MEMBER(drmn_output_callback);
610612   DECLARE_WRITE8_MEMBER(dmx_output_callback);
611613   DECLARE_WRITE8_MEMBER(mamboagg_output_callback);
614   DECLARE_WRITE8_MEMBER(punchmania_output_callback);
615
612616   void cdrom_dma_read( UINT32 *ram, UINT32 n_address, INT32 n_size );
613617   void cdrom_dma_write( UINT32 *ram, UINT32 n_address, INT32 n_size );
614618   void sys573_vblank(screen_device &screen, bool vblank_state);
r23300r23301
628632   void flash_init();
629633   void update_mode();
630634   void gx700pwbf_output( int offset, UINT8 data );
631   void gx700pwfbf_init( void (ksys573_state::*output_callback_func)( int offset, int data ) );
635   void gx700pwfbf_init( void (ksys573_state::*output_callback_func)( address_space &space, ATTR_UNUSED offs_t offset, ATTR_UNUSED UINT8 data, ATTR_UNUSED UINT8 mem_mask ) );
632636   void gn845pwbb_do_w( int offset, int data );
633637   void gn845pwbb_clk_w( int offset, int data );
634   void gn845pwbb_output_callback( int offset, int data );
635   void drmn_output_callback( int offset, int data );
636   void salarymc_lamp_callback( int data );
637   void hyperbbc_lamp_callback( int data );
638   void punchmania_output_callback( int offset, int data );
639638
640639   required_device<psxirq_device> m_psxirq;
641   optional_device<mpeg573_device> m_mpeg573;
642640
643641   int m_flash_bank;
644642   fujitsu_29f016a_device *m_flash_device[5][16];
645   int m_security_cart_number;
646643
647644   UINT32 m_control;
648645
r23300r23301
657654   int m_atapi_xfermod;
658655
659656   UINT16 m_n_security_control;
660   void (ksys573_state::*m_security_callback)( int data );
661657
662658   UINT8 m_gx700pwbf_output_data[ 4 ];
663   void (ksys573_state::*m_gx700pwfbf_output_callback)( int offset, int data );
659   void (ksys573_state::*m_gx700pwfbf_output_callback)( address_space &space, ATTR_UNUSED offs_t offset, ATTR_UNUSED UINT8 data, ATTR_UNUSED UINT8 mem_mask );
664660
665661   UINT32 m_stage_mask;
666662   struct
r23300r23301
682678
683679   int m_salarymc_lamp_bits;
684680   int m_salarymc_lamp_shift;
681   int m_salarymc_lamp_d;
685682   int m_salarymc_lamp_clk;
686683
684   int m_hyperbbc_lamp_red;
685   int m_hyperbbc_lamp_green;
686   int m_hyperbbc_lamp_blue;
687   int m_hyperbbc_lamp_start;
687688   int m_hyperbbc_lamp_strobe1;
688689   int m_hyperbbc_lamp_strobe2;
690   int m_hyperbbc_lamp_strobe3;
689691
690692   UINT32 *m_p_n_psxram;
691693
r23300r23301
699701   required_device<psxcpu_device> m_maincpu;
700702   required_device<ram_device> m_ram;
701703   required_ioport m_out1;
702   required_ioport m_cart;
704   required_ioport m_out2;
703705   required_ioport m_cd;
704706   optional_device<upd4701_device> m_upd4701;
705707   optional_ioport m_upd4701_y;
r23300r23301
708710   optional_ioport m_gunx;
709711   optional_ioport m_sensor;
710712   optional_ioport m_encoder;
711   optional_device<ds2401_device> m_game_id;
712   optional_device<ds2401_device> m_install_id;
713   optional_device<device_secure_serial_flash> m_game_eeprom;
714   optional_device<device_secure_serial_flash> m_install_eeprom;
715713   optional_device<ds2401_device> m_gunmania_id;
716714};
717715
r23300r23301
764762   AM_RANGE( 0x1f640000, 0x1f6400ff) AM_READWRITE16(gunmania_r, gunmania_w, 0xffffffff)
765763ADDRESS_MAP_END
766764
767READ_LINE_MEMBER(ksys573_state::read_line_ds2401 )
768{
769   ds2401_device *ds2401 = m_security_cart_number ? m_game_id : m_install_id;
770   if( ds2401 )
771   {
772      return ds2401->read();
773   }
774
775   return 0;
776}
777
778READ_LINE_MEMBER(ksys573_state::read_line_secflash)
779{
780   device_secure_serial_flash *secflash = m_security_cart_number ? m_game_eeprom : m_install_eeprom;
781
782   if( secflash )
783   {
784      return secflash->sda_r();
785   }
786
787   return 0;
788}
789
790765READ_LINE_MEMBER(ksys573_state::read_line_pcard1_detect)
791766{
792767   return m_flash_device[1][0] != NULL;
r23300r23301
814789
815790   m_flash_bank = -1;
816791
817   // zs01 only, others are reached through security_w
818   device_secure_serial_flash *secflash = m_security_cart_number ? m_game_eeprom : m_install_eeprom;
819   if( dynamic_cast<zs01_device *>(secflash) )
820      secflash->sda_w( !( ( m_control >> 6 ) & 1 ) ); /* 0x40 */
792   m_out2->write( data, mem_mask );
821793
822794   if( m_flash_device[0][0] != NULL && ( m_control & ~0x43 ) == 0x00 )
823795   {
r23300r23301
13261298
13271299   verboselog(2, "security_w( %08x, %08x, %08x )\n", offset, mem_mask, data );
13281300
1329   device_secure_serial_flash *secflash = m_security_cart_number ? m_game_eeprom : m_install_eeprom;
1330
1331   if( secflash )
1332   {
1333      if( !dynamic_cast<zs01_device *>(secflash) )
1334         secflash->sda_w(( data >> 0 ) & 1);
1335      secflash->scl_w(( data >> 1 ) & 1);
1336      secflash->cs_w(( data >> 2 ) & 1);
1337      secflash->rst_w(( data >> 3 ) & 1);
1338   }
1339
1340   ds2401_device *ds2401 = m_security_cart_number ? m_game_id : m_install_id;
1341   if(ds2401)
1342   {
1343      ds2401->write(!( ( data >> 4 ) & 1 ));
1344   }
1345
1346   if( m_security_callback != NULL )
1347   {
1348      (this->*m_security_callback)( data & 0xff );
1349   }
1350
13511301   m_out1->write( data, mem_mask );
13521302}
13531303
r23300r23301
14211371      for (int index = 0; index < 16; index++)
14221372         m_flash_device[card][index] = machine().device<fujitsu_29f016a_device>(tempstr.format("pccard%d.%d", card, index));
14231373
1374   m_flash_bank = -1;
1375   m_control = 0;
1376
14241377   save_item( NAME(m_flash_bank) );
14251378   save_item( NAME(m_control) );
14261379}
14271380
14281381void ksys573_state::update_mode()
14291382{
1430   int cart = m_cart->read();
14311383   int cd = m_cd->read();
14321384   cdrom_file *new_cdrom;
14331385
1434   if( m_game_eeprom != NULL )
1435   {
1436      m_security_cart_number = cart;
1437   }
1438   else
1439   {
1440      m_security_cart_number = 0;
1441   }
1442
14431386   if( m_available_cdroms[ 1 ] != NULL )
14441387   {
14451388      new_cdrom = m_available_cdroms[ cd ];
r23300r23301
16451588         int newbit = ( data >> shift[ i ] ) & 1;
16461589         if( oldbit != newbit )
16471590         {
1648            (this->*m_gx700pwfbf_output_callback)( ( offset * 8 ) + i, newbit );
1591            (this->*m_gx700pwfbf_output_callback)( m_maincpu->space(AS_PROGRAM), ( offset * 8 ) + i, newbit, 0xff );
16491592         }
16501593      }
16511594   }
r23300r23301
16801623   }
16811624}
16821625
1683void ksys573_state::gx700pwfbf_init( void (ksys573_state::*output_callback_func)( int offset, int data ) )
1626void ksys573_state::gx700pwfbf_init( void (ksys573_state::*output_callback_func)( address_space &space, ATTR_UNUSED offs_t offset, ATTR_UNUSED UINT8 data, ATTR_UNUSED UINT8 mem_mask ) )
16841627{
16851628   memset( m_gx700pwbf_output_data, 0, sizeof( m_gx700pwbf_output_data ) );
16861629
r23300r23301
17681711   return m_stage->read() & m_stage_mask;
17691712}
17701713
1771WRITE8_MEMBER(ksys573_state::gn845pwbb_output_callback_1)
1714WRITE8_MEMBER(ksys573_state::ddr_output_callback)
17721715{
1773   gn845pwbb_output_callback(offset, data);
1774}
1775
1776void ksys573_state::gn845pwbb_output_callback( int offset, int data )
1777{
17781716   switch( offset )
17791717   {
17801718   case 0:
r23300r23301
18631801DRIVER_INIT_MEMBER(ksys573_state,ddr)
18641802{
18651803   m_stage_mask = 0xffffffff;
1866   gx700pwfbf_init( &ksys573_state::gn845pwbb_output_callback );
1804   gx700pwfbf_init( &ksys573_state::ddr_output_callback );
18671805
18681806   save_item( NAME(m_stage_mask) );
18691807}
r23300r23301
19471885
19481886/* drummania */
19491887
1950WRITE8_MEMBER(ksys573_state::drmn_output_callback_1)
1888WRITE8_MEMBER(ksys573_state::drmn_output_callback)
19511889{
1952   drmn_output_callback(offset, data);
1953}
1954
1955void ksys573_state::drmn_output_callback( int offset, int data )
1956{
19571890   switch( offset )
19581891   {
19591892   case 0: // drmn2+
r23300r23301
21732106
21742107/* salary man champ */
21752108
2176void ksys573_state::salarymc_lamp_callback( int data )
2109WRITE_LINE_MEMBER( ksys573_state::salarymc_lamp_rst )
21772110{
2178   int d = ( data >> 7 ) & 1;
2179   int rst = ( data >> 6 ) & 1;
2180   int clk = ( data >> 5 ) & 1;
2181
2182   if( rst )
2111   if( state )
21832112   {
21842113      m_salarymc_lamp_bits = 0;
21852114      m_salarymc_lamp_shift = 0;
21862115   }
2116}
21872117
2188   if( m_salarymc_lamp_clk != clk )
2118WRITE_LINE_MEMBER( ksys573_state::salarymc_lamp_d )
2119{
2120   m_salarymc_lamp_d = state;
2121}
2122
2123WRITE_LINE_MEMBER( ksys573_state::salarymc_lamp_clk )
2124{
2125   if( state && !m_salarymc_lamp_clk )
21892126   {
2190      m_salarymc_lamp_clk = clk;
2127      m_salarymc_lamp_bits++;
21912128
2192      if( m_salarymc_lamp_clk )
2129      m_salarymc_lamp_shift <<= 1;
2130      m_salarymc_lamp_shift |= m_salarymc_lamp_d;
2131
2132      if( m_salarymc_lamp_bits == 16 )
21932133      {
2194         m_salarymc_lamp_shift <<= 1;
2195
2196         m_salarymc_lamp_shift |= d;
2197
2198         m_salarymc_lamp_bits++;
2199         if( m_salarymc_lamp_bits == 16 )
2134         if( ( m_salarymc_lamp_shift & ~0xe38 ) != 0 )
22002135         {
2201            if( ( m_salarymc_lamp_shift & ~0xe38 ) != 0 )
2202            {
2203               verboselog( 0, "unknown bits in salarymc_lamp_shift %08x\n", m_salarymc_lamp_shift & ~0xe38 );
2204            }
2136            verboselog( 0, "unknown bits in salarymc_lamp_shift %08x\n", m_salarymc_lamp_shift & ~0xe38 );
2137         }
22052138
2206            output_set_value( "player 1 red", ( m_salarymc_lamp_shift >> 11 ) & 1 );
2207            output_set_value( "player 1 green", ( m_salarymc_lamp_shift >> 10 ) & 1 );
2208            output_set_value( "player 1 blue", ( m_salarymc_lamp_shift >> 9 ) & 1 );
2139         output_set_value( "player 1 red", ( m_salarymc_lamp_shift >> 11 ) & 1 );
2140         output_set_value( "player 1 green", ( m_salarymc_lamp_shift >> 10 ) & 1 );
2141         output_set_value( "player 1 blue", ( m_salarymc_lamp_shift >> 9 ) & 1 );
22092142
2210            output_set_value( "player 2 red", ( m_salarymc_lamp_shift >> 5 ) & 1 );
2211            output_set_value( "player 2 green", ( m_salarymc_lamp_shift >> 4 ) & 1 );
2212            output_set_value( "player 2 blue", ( m_salarymc_lamp_shift >> 3 ) & 1 );
2143         output_set_value( "player 2 red", ( m_salarymc_lamp_shift >> 5 ) & 1 );
2144         output_set_value( "player 2 green", ( m_salarymc_lamp_shift >> 4 ) & 1 );
2145         output_set_value( "player 2 blue", ( m_salarymc_lamp_shift >> 3 ) & 1 );
22132146
2214            m_salarymc_lamp_bits = 0;
2215            m_salarymc_lamp_shift = 0;
2216         }
2147         m_salarymc_lamp_bits = 0;
2148         m_salarymc_lamp_shift = 0;
22172149      }
22182150   }
2151
2152   m_salarymc_lamp_clk = state;
22192153}
22202154
2155static MACHINE_CONFIG_FRAGMENT( salarymc_cassette_install )
2156   MCFG_DEVICE_MODIFY(DEVICE_SELF)
2157   MCFG_KONAMI573_CASSETTE_Y_D5_HANDLER(DEVWRITELINE(":", ksys573_state, salarymc_lamp_clk))
2158   MCFG_KONAMI573_CASSETTE_Y_D6_HANDLER(DEVWRITELINE(":", ksys573_state, salarymc_lamp_rst))
2159   MCFG_KONAMI573_CASSETTE_Y_D7_HANDLER(DEVWRITELINE(":", ksys573_state, salarymc_lamp_d))
2160MACHINE_CONFIG_END
2161
22212162DRIVER_INIT_MEMBER(ksys573_state,salarymc)
22222163{
2223   m_security_callback = &ksys573_state::salarymc_lamp_callback;
2164   m_salarymc_lamp_bits = 0;
2165   m_salarymc_lamp_shift = 0;
2166   m_salarymc_lamp_d = 0;
2167   m_salarymc_lamp_clk = 0;
22242168
22252169   save_item( NAME(m_salarymc_lamp_bits) );
22262170   save_item( NAME(m_salarymc_lamp_shift) );
2171   save_item( NAME(m_salarymc_lamp_d) );
22272172   save_item( NAME(m_salarymc_lamp_clk) );
22282173}
22292174
22302175/* Hyper Bishi Bashi Champ */
22312176
2232void ksys573_state::hyperbbc_lamp_callback( int data )
2177WRITE_LINE_MEMBER( ksys573_state::hyperbbc_lamp_red )
22332178{
2234   int red = ( data >> 6 ) & 1;
2235   int blue = ( data >> 5 ) & 1;
2236   int green = ( data >> 4 ) & 1;
2237   int strobe1 = ( data >> 3 ) & 1;
2238   int strobe2 = ( data >> 0 ) & 1;
2179   m_hyperbbc_lamp_red = state;
2180}
22392181
2240   if( strobe1 && !m_hyperbbc_lamp_strobe1 )
2182WRITE_LINE_MEMBER( ksys573_state::hyperbbc_lamp_green )
2183{
2184   m_hyperbbc_lamp_green = state;
2185}
2186
2187WRITE_LINE_MEMBER( ksys573_state::hyperbbc_lamp_blue )
2188{
2189   m_hyperbbc_lamp_blue = state;
2190}
2191
2192WRITE_LINE_MEMBER( ksys573_state::hyperbbc_lamp_start )
2193{
2194   m_hyperbbc_lamp_start = state;
2195}
2196
2197WRITE_LINE_MEMBER( ksys573_state::hyperbbc_lamp_strobe1 )
2198{
2199   if( state && !m_hyperbbc_lamp_strobe1 )
22412200   {
2242      output_set_value( "player 1 red", red );
2243      output_set_value( "player 1 green", green );
2244      output_set_value( "player 1 blue", blue );
2201      output_set_value( "player 1 red", m_hyperbbc_lamp_red );
2202      output_set_value( "player 1 green", m_hyperbbc_lamp_green );
2203      output_set_value( "player 1 blue", m_hyperbbc_lamp_blue );
2204      output_set_value( "player 1 start", m_hyperbbc_lamp_start );
22452205   }
22462206
2247   m_hyperbbc_lamp_strobe1 = strobe1;
2207   m_hyperbbc_lamp_strobe1 = state;
2208}
22482209
2249   if( strobe2 && !m_hyperbbc_lamp_strobe2 )
2210WRITE_LINE_MEMBER( ksys573_state::hyperbbc_lamp_strobe2 )
2211{
2212   if( state && !m_hyperbbc_lamp_strobe2 )
22502213   {
2251      output_set_value( "player 2 red", red );
2252      output_set_value( "player 2 green", green );
2253      output_set_value( "player 2 blue", blue );
2214      output_set_value( "player 2 red", m_hyperbbc_lamp_red );
2215      output_set_value( "player 2 green", m_hyperbbc_lamp_green );
2216      output_set_value( "player 2 blue", m_hyperbbc_lamp_blue );
2217      output_set_value( "player 2 start", m_hyperbbc_lamp_start );
22542218   }
22552219
2256   m_hyperbbc_lamp_strobe2 = strobe2;
2220   m_hyperbbc_lamp_strobe2 = state;
22572221}
22582222
2223WRITE_LINE_MEMBER( ksys573_state::hyperbbc_lamp_strobe3 )
2224{
2225   if( state && !m_hyperbbc_lamp_strobe3 )
2226   {
2227      output_set_value( "player 3 red", m_hyperbbc_lamp_red );
2228      output_set_value( "player 3 green", m_hyperbbc_lamp_green );
2229      output_set_value( "player 3 blue", m_hyperbbc_lamp_blue );
2230      output_set_value( "player 3 start", m_hyperbbc_lamp_start );
2231   }
2232
2233   m_hyperbbc_lamp_strobe3 = state;
2234}
2235
2236static MACHINE_CONFIG_FRAGMENT( hyperbbc_cassette_install )
2237   MCFG_DEVICE_MODIFY(DEVICE_SELF)
2238   MCFG_KONAMI573_CASSETTE_Y_D0_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_strobe3)) // line shared with x76f100 sda
2239   MCFG_KONAMI573_CASSETTE_Y_D1_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_strobe2)) // line shared with x76f100 scl
2240   MCFG_KONAMI573_CASSETTE_Y_D3_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_strobe1)) // line shared with x76f100 rst
2241   MCFG_KONAMI573_CASSETTE_Y_D4_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_green))
2242   MCFG_KONAMI573_CASSETTE_Y_D5_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_blue))
2243   MCFG_KONAMI573_CASSETTE_Y_D6_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_red))
2244   MCFG_KONAMI573_CASSETTE_Y_D7_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_start))
2245MACHINE_CONFIG_END
2246
2247static MACHINE_CONFIG_FRAGMENT( hypbbc2p_cassette_install )
2248   MCFG_DEVICE_MODIFY(DEVICE_SELF)
2249   MCFG_KONAMI573_CASSETTE_Y_D0_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_strobe2)) // line shared with x76f100 sda
2250   MCFG_KONAMI573_CASSETTE_Y_D3_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_strobe1)) // line shared with x76f100 rst
2251   MCFG_KONAMI573_CASSETTE_Y_D4_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_green))
2252   MCFG_KONAMI573_CASSETTE_Y_D5_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_blue))
2253   MCFG_KONAMI573_CASSETTE_Y_D6_HANDLER(DEVWRITELINE(":", ksys573_state, hyperbbc_lamp_red))
2254MACHINE_CONFIG_END
2255
22592256DRIVER_INIT_MEMBER(ksys573_state,hyperbbc)
22602257{
2261   m_security_callback = &ksys573_state::hyperbbc_lamp_callback;
2258   m_hyperbbc_lamp_red = 0;
2259   m_hyperbbc_lamp_green = 0;
2260   m_hyperbbc_lamp_blue = 0;
2261   m_hyperbbc_lamp_start = 0;
2262   m_hyperbbc_lamp_strobe1 = 0;
2263   m_hyperbbc_lamp_strobe2 = 0;
2264   m_hyperbbc_lamp_strobe3 = 0;
22622265
2266   save_item( NAME(m_hyperbbc_lamp_red) );
2267   save_item( NAME(m_hyperbbc_lamp_green) );
2268   save_item( NAME(m_hyperbbc_lamp_blue) );
2269   save_item( NAME(m_hyperbbc_lamp_start) );
22632270   save_item( NAME(m_hyperbbc_lamp_strobe1) );
22642271   save_item( NAME(m_hyperbbc_lamp_strobe2) );
2272   save_item( NAME(m_hyperbbc_lamp_strobe3) );
22652273}
22662274
22672275/* Mambo A Go Go */
r23300r23301
23492357   return 5;
23502358}
23512359
2360
2361static MACHINE_CONFIG_FRAGMENT( punchmania_cassette_install )
2362   MCFG_DEVICE_MODIFY("adc0838")
2363   MCFG_ADC083X_INPUT_CALLBACK(punchmania_inputs_callback)
2364MACHINE_CONFIG_END
2365
2366
23522367int pad_light[ 6 ];
23532368
2354void ksys573_state::punchmania_output_callback( int offset, int data )
2369WRITE8_MEMBER( ksys573_state::punchmania_output_callback)
23552370{
23562371   double *pad_position = m_pad_position;
23572372   char pad[ 7 ];
r23300r23301
23592374   switch( offset )
23602375   {
23612376   case 8:
2362      output_set_value( "select_left_right", !data );
2377      output_set_value( "select left right", !data );
23632378      break;
23642379   case 9:
23652380      pad_light[ 2 ] = !data;
2366      output_set_value( "left_bottom_lamp", !data );
2381      output_set_value( "left bottom lamp", !data );
23672382      break;
23682383   case 10:
23692384      pad_light[ 1 ] = !data;
2370      output_set_value( "left_middle_lamp", !data );
2385      output_set_value( "left middle lamp", !data );
23712386      break;
23722387   case 11:
2373      output_set_value( "start_lamp", !data );
2388      output_set_value( "start lamp", !data );
23742389      break;
23752390   case 12:
23762391      pad_light[ 0 ] = !data;
2377      output_set_value( "left_top_lamp", !data );
2392      output_set_value( "left top lamp", !data );
23782393      break;
23792394   case 13:
23802395      pad_light[ 4 ] = !data;
2381      output_set_value( "right_middle_lamp", !data );
2396      output_set_value( "right middle lamp", !data );
23822397      break;
23832398   case 14:
23842399      pad_light[ 3 ] = !data;
2385      output_set_value( "right_top_lamp", !data );
2400      output_set_value( "right top lamp", !data );
23862401      break;
23872402   case 15:
23882403      pad_light[ 5 ] = !data;
2389      output_set_value( "right_bottom_lamp", !data );
2404      output_set_value( "right bottom lamp", !data );
23902405      break;
23912406   case 16:
23922407      if( data )
r23300r23301
26362651   return 0;
26372652}
26382653
2654SLOT_INTERFACE_START(slot_empty)
2655SLOT_INTERFACE_END
26392656
26402657static MACHINE_CONFIG_START( konami573, ksys573_state )
26412658   /* basic machine hardware */
r23300r23301
26482665   MCFG_PSX_DMA_CHANNEL_READ( "maincpu", 5, psx_dma_read_delegate( FUNC( ksys573_state::cdrom_dma_read ), (ksys573_state *) owner ) )
26492666   MCFG_PSX_DMA_CHANNEL_WRITE( "maincpu", 5, psx_dma_write_delegate( FUNC( ksys573_state::cdrom_dma_write ), (ksys573_state *) owner ) )
26502667
2651   MCFG_MACHINE_RESET_OVERRIDE(ksys573_state, konami573 )
2668   MCFG_MACHINE_RESET_OVERRIDE(ksys573_state, konami573)
26522669
26532670   MCFG_DEVICE_ADD("mb89371", MB89371, 0)
26542671   MCFG_DEVICE_ADD("cdrom", CR589, 0)
26552672
2673   MCFG_DEVICE_ADD("maincpu:sio1:cassette", KONAMI573_CASSETTE_SLOT_SERIAL, 0)
2674
2675   MCFG_DEVICE_ADD("cassette", KONAMI573_CASSETTE_SLOT, 0)
2676   MCFG_DEVICE_SLOT_INTERFACE(slot_empty, NULL, false)
2677
26562678   // onboard flash
26572679   MCFG_FUJITSU_29F016A_ADD("onboard.0")
26582680   MCFG_FUJITSU_29F016A_ADD("onboard.1")
r23300r23301
27882810//
27892811// Up to two carts can be used
27902812
2813SLOT_INTERFACE_START(slot_cassx)
2814   SLOT_INTERFACE("game", KONAMI573_CASSETTE_X)
2815SLOT_INTERFACE_END
2816
27912817static MACHINE_CONFIG_FRAGMENT( cassx )
2792   MCFG_DEVICE_ADD("maincpu:sio1:k573cass", KONAMI573CASSETTE, 0)
2793   MCFG_X76F041_ADD( "install_eeprom" )
2818   MCFG_DEVICE_MODIFY("cassette")
2819   MCFG_DEVICE_SLOT_INTERFACE(slot_cassx, "game", false)
27942820MACHINE_CONFIG_END
27952821
2822SLOT_INTERFACE_START(slot_cassxi)
2823   SLOT_INTERFACE("game", KONAMI573_CASSETTE_XI)
2824SLOT_INTERFACE_END
2825
27962826static MACHINE_CONFIG_FRAGMENT( cassxi )
2797   MCFG_DEVICE_ADD("maincpu:sio1:k573cass", KONAMI573CASSETTE, 0)
2798   MCFG_X76F041_ADD( "install_eeprom" )
2799   MCFG_DS2401_ADD(  "install_id" )
2827   MCFG_DEVICE_MODIFY("cassette")
2828   MCFG_DEVICE_SLOT_INTERFACE(slot_cassxi, "game", false)
28002829MACHINE_CONFIG_END
28012830
2831SLOT_INTERFACE_START(slot_cassy)
2832   SLOT_INTERFACE("game", KONAMI573_CASSETTE_Y)
2833SLOT_INTERFACE_END
2834
28022835static MACHINE_CONFIG_FRAGMENT( cassy )
2803   MCFG_DEVICE_ADD("maincpu:sio1:k573cass", KONAMI573CASSETTE, 0)
2804   MCFG_X76F100_ADD( "install_eeprom" )
2836   MCFG_DEVICE_MODIFY("cassette")
2837   MCFG_DEVICE_SLOT_INTERFACE(slot_cassy, "game", false)
28052838MACHINE_CONFIG_END
28062839
2840SLOT_INTERFACE_START(slot_cassyi)
2841   SLOT_INTERFACE("game", KONAMI573_CASSETTE_YI)
2842SLOT_INTERFACE_END
2843
28072844static MACHINE_CONFIG_FRAGMENT( cassyi )
2808   MCFG_DEVICE_ADD("maincpu:sio1:k573cass", KONAMI573CASSETTE, 0)
2809   MCFG_X76F100_ADD( "install_eeprom" )
2810   MCFG_DS2401_ADD(  "install_id" )
2845   MCFG_DEVICE_MODIFY("cassette")
2846   MCFG_DEVICE_SLOT_INTERFACE(slot_cassyi, "game", false)
28112847MACHINE_CONFIG_END
28122848
2849SLOT_INTERFACE_START(slot_cassyyi)
2850   SLOT_INTERFACE("game", KONAMI573_CASSETTE_YI)
2851   SLOT_INTERFACE("install", KONAMI573_CASSETTE_YI)
2852SLOT_INTERFACE_END
2853
28132854static MACHINE_CONFIG_FRAGMENT( cassyyi )
2814   MCFG_DEVICE_ADD("maincpu:sio1:k573cass", KONAMI573CASSETTE, 0)
2815   MCFG_X76F100_ADD( "install_eeprom" )
2816   MCFG_DS2401_ADD(  "install_id" )
2817   MCFG_X76F100_ADD( "game_eeprom" )
2818   MCFG_DS2401_ADD(  "game_id" )
2855   MCFG_DEVICE_MODIFY("cassette")
2856   MCFG_DEVICE_SLOT_INTERFACE(slot_cassyyi, "game", false)
28192857MACHINE_CONFIG_END
28202858
2859SLOT_INTERFACE_START(slot_casszi)
2860   SLOT_INTERFACE("game", KONAMI573_CASSETTE_ZI)
2861SLOT_INTERFACE_END
2862
28212863static MACHINE_CONFIG_FRAGMENT( casszi )
2822   MCFG_DEVICE_ADD("maincpu:sio1:k573cass", KONAMI573CASSETTE, 0)
2823   MCFG_ZS01_ADD(    "install_eeprom", "install_id" )
2824   MCFG_DS2401_ADD(  "install_id" )
2864   MCFG_DEVICE_MODIFY("cassette")
2865   MCFG_DEVICE_SLOT_INTERFACE(slot_casszi, "game", false)
28252866MACHINE_CONFIG_END
28262867
2868SLOT_INTERFACE_START(slot_cassxzi)
2869   SLOT_INTERFACE("game", KONAMI573_CASSETTE_ZI)
2870   SLOT_INTERFACE("install", KONAMI573_CASSETTE_XI)
2871SLOT_INTERFACE_END
2872
28272873static MACHINE_CONFIG_FRAGMENT( cassxzi )
2828   MCFG_DEVICE_ADD("maincpu:sio1:k573cass", KONAMI573CASSETTE, 0)
2829   MCFG_X76F041_ADD( "install_eeprom" )
2830   MCFG_DS2401_ADD(  "install_id" )
2831   MCFG_ZS01_ADD(    "game_eeprom", "game_id" )
2832   MCFG_DS2401_ADD(  "game_id" )
2874   MCFG_DEVICE_MODIFY("cassette")
2875   MCFG_DEVICE_SLOT_INTERFACE(slot_cassxzi, "game", false)
28332876MACHINE_CONFIG_END
28342877
28352878// Dance Dance Revolution
r23300r23301
28452888
28462889static MACHINE_CONFIG_DERIVED( ddr3m, k573d )
28472890   MCFG_DEVICE_MODIFY( "mpeg573" )
2848   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, gn845pwbb_output_callback_1))
2891   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, ddr_output_callback))
28492892
28502893   MCFG_FRAGMENT_ADD(pccard2)
28512894   MCFG_FRAGMENT_ADD(cassyyi)
r23300r23301
28532896
28542897static MACHINE_CONFIG_DERIVED( ddr3mp, k573d )
28552898   MCFG_DEVICE_MODIFY( "mpeg573" )
2856   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, gn845pwbb_output_callback_1))
2899   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, ddr_output_callback))
28572900
28582901   MCFG_FRAGMENT_ADD(pccard2)
28592902   MCFG_FRAGMENT_ADD(cassxzi)
r23300r23301
28612904
28622905static MACHINE_CONFIG_DERIVED( ddrusa, k573d )
28632906   MCFG_DEVICE_MODIFY( "mpeg573" )
2864   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, gn845pwbb_output_callback_1))
2907   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, ddr_output_callback))
28652908
28662909   MCFG_FRAGMENT_ADD(casszi)
28672910MACHINE_CONFIG_END
28682911
28692912static MACHINE_CONFIG_DERIVED( ddr5m, k573d )
28702913   MCFG_DEVICE_MODIFY( "mpeg573" )
2871   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, gn845pwbb_output_callback_1))
2914   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, ddr_output_callback))
28722915
28732916   MCFG_FRAGMENT_ADD(pccard2)
28742917   MCFG_FRAGMENT_ADD(casszi)
r23300r23301
28872930
28882931static MACHINE_CONFIG_DERIVED(dsfdr, k573d)
28892932   MCFG_DEVICE_MODIFY( "mpeg573" )
2890   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, gn845pwbb_output_callback_1))
2933   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, ddr_output_callback))
28912934
28922935   MCFG_FRAGMENT_ADD(cassxzi)
28932936MACHINE_CONFIG_END
28942937
28952938static MACHINE_CONFIG_DERIVED( dsem, k573d )
28962939   MCFG_DEVICE_MODIFY( "mpeg573" )
2897   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, gn845pwbb_output_callback_1))
2940   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, ddr_output_callback))
28982941
28992942   MCFG_FRAGMENT_ADD(cassxi)
29002943MACHINE_CONFIG_END
r23300r23301
29312974
29322975static MACHINE_CONFIG_DERIVED( drmn2m, k573d )
29332976   MCFG_DEVICE_MODIFY( "mpeg573" )
2934   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, drmn_output_callback_1))
2977   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, drmn_output_callback))
29352978
29362979   MCFG_FRAGMENT_ADD( cassxzi )
29372980MACHINE_CONFIG_END
29382981
29392982static MACHINE_CONFIG_DERIVED( drmn4m, k573d )
29402983   MCFG_DEVICE_MODIFY( "mpeg573" )
2941   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, drmn_output_callback_1))
2984   MCFG_MPEG573_OUTPUT_CALLBACK(WRITE8(ksys573_state, drmn_output_callback))
29422985
29432986   MCFG_FRAGMENT_ADD( casszi )
29442987MACHINE_CONFIG_END
r23300r23301
29783021   MCFG_FRAGMENT_ADD(cassx)
29793022MACHINE_CONFIG_END
29803023
3024static MACHINE_CONFIG_DERIVED( hyperbbc, konami573 )
3025   MCFG_FRAGMENT_ADD( cassy ) // The game doesn't check the security chip
3026
3027   MCFG_DEVICE_MODIFY("cassette")
3028   MCFG_DEVICE_CARD_MACHINE_CONFIG( "game", hyperbbc_cassette_install )
3029MACHINE_CONFIG_END
3030
29813031static MACHINE_CONFIG_DERIVED( hypbbc2p, konami573 )
29823032   MCFG_FRAGMENT_ADD( cassy )
3033
3034   MCFG_DEVICE_MODIFY("cassette")
3035   MCFG_DEVICE_CARD_MACHINE_CONFIG( "game", hypbbc2p_cassette_install )
29833036MACHINE_CONFIG_END
29843037
29853038static MACHINE_CONFIG_DERIVED( salarymc, konami573 )
29863039   MCFG_FRAGMENT_ADD( cassyi )
3040
3041   MCFG_DEVICE_MODIFY("cassette")
3042   MCFG_DEVICE_CARD_MACHINE_CONFIG( "game", salarymc_cassette_install )
29873043MACHINE_CONFIG_END
29883044
29893045static MACHINE_CONFIG_DERIVED( gchgchmp, konami573 )
r23300r23301
29973053
29983054   MCFG_FRAGMENT_ADD( cassxi )
29993055   MCFG_FRAGMENT_ADD( pccard1 )
3000   MCFG_DEVICE_ADD( "adc0838", ADC0838, 0 )
3001   MCFG_ADC083X_INPUT_CALLBACK(punchmania_inputs_callback)
3056
3057   MCFG_DEVICE_MODIFY("cassette")
3058   MCFG_DEVICE_CARD_MACHINE_CONFIG( "game", punchmania_cassette_install )
30023059MACHINE_CONFIG_END
30033060
30043061static MACHINE_CONFIG_DERIVED( pnchmn2, pnchmn )
r23300r23301
30533110   PORT_DIPSETTING(          0x00000000, "Flash ROM" )
30543111   PORT_BIT( 0x00000030, IP_ACTIVE_HIGH, IPT_SPECIAL )
30553112   PORT_BIT( 0x000000c0, IP_ACTIVE_LOW, IPT_SPECIAL)
3056   PORT_BIT( 0x00000100, IP_ACTIVE_HIGH, IPT_SPECIAL )
3057   PORT_BIT( 0x00000200, IP_ACTIVE_HIGH, IPT_SPECIAL )
3113   PORT_BIT( 0x00000100, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, read_line_adc083x_do)
3114   PORT_BIT( 0x00000200, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, read_line_adc083x_sars)
30583115//  PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_UNKNOWN )
30593116//  PORT_BIT( 0x00000800, IP_ACTIVE_LOW, IPT_UNKNOWN )
30603117   PORT_CONFNAME( 0x00001000, 0x00001000, "Network?" )
30613118   PORT_CONFSETTING(          0x00001000, DEF_STR( Off ) )
30623119   PORT_CONFSETTING(          0x00000000, DEF_STR( On ) )
30633120//  PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_UNKNOWN )
3064   PORT_BIT( 0x00004000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER(DEVICE_SELF, ksys573_state, read_line_ds2401)
3121   PORT_BIT( 0x00004000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, read_line_ds2401)
30653122//  PORT_BIT( 0x00008000, IP_ACTIVE_LOW, IPT_UNKNOWN )
30663123   PORT_BIT( 0x00010000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0834", adc083x_device, do_read)
30673124//  PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_UNKNOWN )
3068   PORT_BIT( 0x00040000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER(DEVICE_SELF, ksys573_state, read_line_secflash)
3125   PORT_BIT( 0x00040000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, read_line_secflash_sda)
30693126   PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_UNKNOWN )
30703127   PORT_BIT( 0x00100000, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* skip hang at startup */
30713128   PORT_BIT( 0x00200000, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* skip hang at startup */
r23300r23301
30803137//  PORT_BIT( 0x40000000, IP_ACTIVE_LOW, IPT_UNKNOWN )
30813138//  PORT_BIT( 0x80000000, IP_ACTIVE_LOW, IPT_UNKNOWN )
30823139
3083   PORT_START( "OUT1" )
3084   PORT_BIT( 0xffffffff, IP_ACTIVE_HIGH, IPT_OUTPUT )
3140   PORT_START( "OUT1" ) // security_w
3141   PORT_BIT( 0xffffff00, IP_ACTIVE_HIGH, IPT_OUTPUT )
3142   PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d0)
3143   PORT_BIT( 0x00000002, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d1)
3144   PORT_BIT( 0x00000004, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d2)
3145   PORT_BIT( 0x00000008, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d3)
3146   PORT_BIT( 0x00000010, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d4)
3147   PORT_BIT( 0x00000020, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d5)
3148   PORT_BIT( 0x00000040, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d6)
3149   PORT_BIT( 0x00000080, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_d7)
30853150
3151   PORT_START( "OUT2" ) // control_w
3152   PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("cassette", konami573_cassette_slot_device, write_line_zs01_sda)
3153
30863154   PORT_START("IN2")
30873155   PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
30883156   PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
r23300r23301
31283196   PORT_START( "analog3" )
31293197   PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
31303198
3131   PORT_START("CART")
3132   PORT_CONFNAME( 1, 0, "Security Cart" )
3133   PORT_CONFSETTING( 0, "Install" )
3134   PORT_CONFSETTING( 1, "Game" )
3135
31363199   PORT_START("CD")
31373200   PORT_CONFNAME( 1, 0, "CD" )
31383201   PORT_CONFSETTING( 0, "1" )
r23300r23301
32793342   PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, ksys573_state, dmx_lamps_b2)
32803343   PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, ksys573_state, dmx_lamps_b3)
32813344   PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, ksys573_state, dmx_lamps_b4)
3282   PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, ksys573_state, dmx_lamps_b5)   
3345   PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, ksys573_state, dmx_lamps_b5)
32833346INPUT_PORTS_END
32843347
32853348static INPUT_PORTS_START( drmn )
r23300r23301
34263489   PORT_INCLUDE( konami573 )
34273490
34283491   PORT_MODIFY("IN1")
3429   PORT_BIT( 0x00000100, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0838", adc083x_device, do_read)
3430   PORT_BIT( 0x00000200, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0838", adc083x_device, sars_read)
34313492   PORT_BIT( 0x02000000, IP_ACTIVE_LOW, IPT_UNUSED )
34323493
3433   PORT_MODIFY( "OUT1" )
3434   PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, cs_write)
3435   PORT_BIT( 0x00000002, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, clk_write)
3436   PORT_BIT( 0x00000020, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, di_write)
3437
34383494   PORT_MODIFY("IN2")
34393495   PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_16WAY PORT_PLAYER(1) PORT_NAME( "Select L" ) /* P2 LEFT */
34403496   PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_16WAY PORT_PLAYER(1) PORT_NAME( "Select R" ) /* P2 RIGHT */
r23300r23301
35043560ROM_START( bassangl )
35053561   SYS573_BIOS_A
35063562
3507   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3563   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
35083564   ROM_LOAD( "ge765ja.u1", 0x000000, 0x000224, BAD_DUMP CRC(ee1b32a7) SHA1(c0f6b14b054f5a95ce474e794a3e0ca78faac681) )
35093565
35103566   DISK_REGION( "cdrom0" )
r23300r23301
35143570ROM_START( bassang2 )
35153571   SYS573_BIOS_A
35163572
3517   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3573   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
35183574   ROM_LOAD( "gc865ja.u1", 0x000000, 0x000224, BAD_DUMP CRC(095cbfb5) SHA1(529ce0a7b0986cf7e64c37f466d6c2dac95cea7f) )
35193575
35203576   DISK_REGION( "cdrom0" )
r23300r23301
35383594ROM_START( darkhleg )
35393595   SYS573_BIOS_A
35403596
3541   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3597   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
35423598   ROM_LOAD( "gx706ja.u1", 0x000000, 0x000224, BAD_DUMP CRC(72b42574) SHA1(79dc959f0ce95ccb9ac0dbf0a72aec973e91bc56) )
35433599
35443600   DISK_REGION( "cdrom0" )
r23300r23301
35483604ROM_START( ddrextrm )
35493605   SYS573_BIOS_A
35503606
3551   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
3607   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
35523608   ROM_LOAD( "gcc36ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(c1601287) SHA1(929691a78f7bb6dd830f832f301116df0da1619b) )
35533609
3554   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
3610   ROM_REGION( 0x000008, "cassette:game:id", 0 )
35553611   ROM_LOAD( "gcc36ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
35563612
35573613   DISK_REGION( "cdrom0" )
r23300r23301
35613617ROM_START( ddru )
35623618   SYS573_BIOS_A
35633619
3564   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3620   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
35653621   ROM_LOAD( "gn845ua.u1",   0x000000, 0x000224, BAD_DUMP CRC(c9e7fced) SHA1(aac4dde100091bc64d397f53484a0ffbf68b8101) )
35663622
35673623   DISK_REGION( "cdrom0" )
r23300r23301
35713627ROM_START( ddrj )
35723628   SYS573_BIOS_A
35733629
3574   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3630   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
35753631   ROM_LOAD( "gc845jb.u1",   0x000000, 0x000224, BAD_DUMP CRC(a16f42b8) SHA1(da4f1eb3eb2b28cb3a0bc74bb9b9945970f56ac2) )
35763632
35773633   DISK_REGION( "cdrom0" )
r23300r23301
35813637ROM_START( ddrja )
35823638   SYS573_BIOS_A
35833639
3584   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3640   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
35853641   ROM_LOAD( "gc845ja.u1",   0x000000, 0x000224, NO_DUMP )
35863642
35873643   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
36113667ROM_START( ddrjb )
36123668   SYS573_BIOS_A
36133669
3614   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3670   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
36153671   ROM_LOAD( "gc845ja.u1",   0x000000, 0x000224, NO_DUMP )
36163672
36173673   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
36413697ROM_START( ddra )
36423698   SYS573_BIOS_A
36433699
3644   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3700   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
36453701   ROM_LOAD( "gn845aa.u1",   0x000000, 0x000224, BAD_DUMP CRC(327c4851) SHA1(f0939224af706fd103a67aae9c96518c1db90ac9) )
36463702
36473703   DISK_REGION( "cdrom0" )
r23300r23301
36513707ROM_START( ddr2m )
36523708   SYS573_BIOS_A
36533709
3654   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3710   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
36553711   ROM_LOAD( "gn895jaa.u1",  0x000000, 0x000224, BAD_DUMP CRC(363f427e) SHA1(adec886a07b9bd91f142f286b04fc6582205f037) )
36563712
36573713   DISK_REGION( "cdrom0" )
r23300r23301
36613717ROM_START( ddr2mc )
36623718   SYS573_BIOS_A
36633719
3664   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3720   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
36653721   ROM_LOAD( "gn896ja.u1",  0x000000, 0x000224, BAD_DUMP CRC(cbc984c5) SHA1(6c0cd78a41000999b4ffbd9fb3707738b50a9b50) )
36663722
36673723   DISK_REGION( "cdrom0" )
r23300r23301
36743730ROM_START( ddr2mc2 )
36753731   SYS573_BIOS_A
36763732
3677   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3733   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
36783734   ROM_LOAD( "ge984ja.u1",  0x000000, 0x000224, BAD_DUMP CRC(cbc984c5) SHA1(6c0cd78a41000999b4ffbd9fb3707738b50a9b50) )
36793735
36803736   DISK_REGION( "cdrom0" )
r23300r23301
36903746   ROM_REGION( 0x080000, "cpu2", 0 ) /* memory card reader */
36913747   ROM_LOAD( "885a01.bin",   0x000000, 0x080000, CRC(e22d093f) SHA1(927f62f63b5caa7899392decacd12fea0e6fdbea) )
36923748
3693   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3749   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
36943750   ROM_LOAD( "ge885jaa.u1",  0x000000, 0x000224, BAD_DUMP CRC(cbc984c5) SHA1(6c0cd78a41000999b4ffbd9fb3707738b50a9b50) )
36953751
36963752   DISK_REGION( "cdrom0" )
r23300r23301
37063762   ROM_REGION( 0x080000, "cpu2", 0 ) /* memory card reader */
37073763   ROM_LOAD( "885a01.bin",   0x000000, 0x080000, CRC(e22d093f) SHA1(927f62f63b5caa7899392decacd12fea0e6fdbea) )
37083764
3709   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
3765   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
37103766   ROM_LOAD( "ge885jaa.u1",  0x000000, 0x000224, BAD_DUMP CRC(cbc984c5) SHA1(6c0cd78a41000999b4ffbd9fb3707738b50a9b50) )
37113767
37123768   DISK_REGION( "cdrom0" )
r23300r23301
37163772ROM_START( ddr3ma )
37173773   SYS573_BIOS_A
37183774
3719   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
3775   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
37203776   ROM_LOAD( "ge887aa.u1",   0x000000, 0x000084, BAD_DUMP CRC(4ce86d32) SHA1(94cdb9873a7f7503acc3b763e9b49ec6af53533f) )
37213777
3722   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
3778   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
37233779   ROM_LOAD( "gn887aa.u1",   0x000000, 0x000084, BAD_DUMP CRC(bb14f9bd) SHA1(9d0adf5a32d8bbcaaea2f701f5c7a5d51ee0b8bf) )
37243780
3725   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3781   ROM_REGION( 0x000008, "cassette:install:id", 0 )
37263782   ROM_LOAD( "ge887aa.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
37273783
3728   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3784   ROM_REGION( 0x000008, "cassette:game:id", 0 )
37293785   ROM_LOAD( "gn887aa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
37303786
37313787   DISK_REGION( "cdrom0" )
r23300r23301
37353791ROM_START( ddr3mj )
37363792   SYS573_BIOS_A
37373793
3738   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
3794   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
37393795   ROM_LOAD( "ge887ja.u1",   0x000000, 0x000084, BAD_DUMP CRC(3a377cec) SHA1(5bf3107a89547bd7697d9f0ab8f67240e101a559) )
37403796
3741   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
3797   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
37423798   ROM_LOAD( "gn887ja.u1",   0x000000, 0x000084, BAD_DUMP CRC(2f633432) SHA1(bce44f20a5a7318af6aea4fdfa8af64ddb76047c) )
37433799
3744   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3800   ROM_REGION( 0x000008, "cassette:install:id", 0 )
37453801   ROM_LOAD( "ge887ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
37463802
3747   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3803   ROM_REGION( 0x000008, "cassette:game:id", 0 )
37483804   ROM_LOAD( "gn887ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
37493805
37503806   DISK_REGION( "cdrom0" )
r23300r23301
37543810ROM_START( ddr3mk )
37553811   SYS573_BIOS_A
37563812
3757   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
3813   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
37583814   ROM_LOAD( "ge887kb.u1",   0x000000, 0x000084, BAD_DUMP CRC(4ce86d32) SHA1(94cdb9873a7f7503acc3b763e9b49ec6af53533f) )
37593815
3760   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
3816   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
37613817   ROM_LOAD( "gn887kb.u1",   0x000000, 0x000084, BAD_DUMP CRC(bb14f9bd) SHA1(9d0adf5a32d8bbcaaea2f701f5c7a5d51ee0b8bf) )
37623818
3763   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3819   ROM_REGION( 0x000008, "cassette:install:id", 0 )
37643820   ROM_LOAD( "ge887kb.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
37653821
3766   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3822   ROM_REGION( 0x000008, "cassette:game:id", 0 )
37673823   ROM_LOAD( "gn887kb.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
37683824
37693825   DISK_REGION( "cdrom0" )
r23300r23301
37733829ROM_START( ddr3mka )
37743830   SYS573_BIOS_A
37753831
3776   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
3832   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
37773833   ROM_LOAD( "ge887ka.u1",   0x000000, 0x000084, BAD_DUMP CRC(4ce86d32) SHA1(94cdb9873a7f7503acc3b763e9b49ec6af53533f) )
37783834
3779   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
3835   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
37803836   ROM_LOAD( "gn887ka.u1",   0x000000, 0x000084, BAD_DUMP CRC(bb14f9bd) SHA1(9d0adf5a32d8bbcaaea2f701f5c7a5d51ee0b8bf) )
37813837
3782   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3838   ROM_REGION( 0x000008, "cassette:install:id", 0 )
37833839   ROM_LOAD( "ge887ka.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
37843840
3785   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3841   ROM_REGION( 0x000008, "cassette:game:id", 0 )
37863842   ROM_LOAD( "gn887ka.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
37873843
37883844   DISK_REGION( "cdrom0" )
r23300r23301
37923848ROM_START( ddr3mp )
37933849   SYS573_BIOS_A
37943850
3795   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
3851   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
37963852   ROM_LOAD( "gea22ja.u1",   0x000000, 0x000224, BAD_DUMP CRC(ef370ff7) SHA1(cb7a043f8bfa535e54ae9af728031d1018ed0734) )
37973853
3798   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
3854   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
37993855   ROM_LOAD( "gca22ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(6883c82c) SHA1(6fef1dc7150066eee427db685b6c5fb350b7768d) )
38003856
3801   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3857   ROM_REGION( 0x000008, "cassette:install:id", 0 )
38023858   ROM_LOAD( "gea22ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
38033859
3804   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3860   ROM_REGION( 0x000008, "cassette:game:id", 0 )
38053861   ROM_LOAD( "gca22ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
38063862
38073863   DISK_REGION( "cdrom0" )
r23300r23301
38113867ROM_START( ddr4m )
38123868   SYS573_BIOS_A
38133869
3814   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
3870   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
38153871   ROM_LOAD( "gea33aa.u1",   0x000000, 0x000224, BAD_DUMP CRC(7bd2a24f) SHA1(62c73a54c4ed7697cf81ddbf3d13d4b0ca827be5) )
38163872
3817   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
3873   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
38183874   ROM_LOAD( "gca33aa.u1",   0x000000, 0x001014, BAD_DUMP CRC(f6feb2bd) SHA1(dfd5bd532338849289e2e4c155c0ca86e79b9ae5) )
38193875
3820   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3876   ROM_REGION( 0x000008, "cassette:install:id", 0 )
38213877   ROM_LOAD( "gea33aa.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
38223878
3823   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3879   ROM_REGION( 0x000008, "cassette:game:id", 0 )
38243880   ROM_LOAD( "gca33aa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
38253881
38263882   DISK_REGION( "cdrom0" )
r23300r23301
38303886ROM_START( ddr4mj )
38313887   SYS573_BIOS_A
38323888
3833   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
3889   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
38343890   ROM_LOAD( "a33jaa.u1",    0x000000, 0x000224, BAD_DUMP CRC(10f1e9b8) SHA1(985bd26638964beebba5de4c7cda772b402d2e59) )
38353891
3836   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
3892   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
38373893   ROM_LOAD( "gca33ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(e5230867) SHA1(44aea9ccc90d81e7f41e5e9a62b28fcbdd75363b) )
38383894
3839   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3895   ROM_REGION( 0x000008, "cassette:install:id", 0 )
38403896   ROM_LOAD( "a33jaa.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
38413897
3842   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3898   ROM_REGION( 0x000008, "cassette:game:id", 0 )
38433899   ROM_LOAD( "gca33ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
38443900
38453901   DISK_REGION( "cdrom0" )
r23300r23301
38493905ROM_START( ddr4ms )
38503906   SYS573_BIOS_A
38513907
3852   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
3908   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
38533909   ROM_LOAD( "gea33ab.u1",   0x000000, 0x000224, BAD_DUMP CRC(32fb3d13) SHA1(3ca6c77438f96b13d2c05f13a10fcff89a1403a2) )
38543910
3855   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
3911   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
38563912   ROM_LOAD( "gca33ab.u1",   0x000000, 0x001014, BAD_DUMP CRC(312ac13f) SHA1(05d733edc03cfc5ea03db6c683f59ed6ff860b5a) )
38573913
3858   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3914   ROM_REGION( 0x000008, "cassette:install:id", 0 )
38593915   ROM_LOAD( "gea33ab.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
38603916
3861   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3917   ROM_REGION( 0x000008, "cassette:game:id", 0 )
38623918   ROM_LOAD( "gca33ab.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
38633919
38643920   DISK_REGION( "cdrom0" )
r23300r23301
38683924ROM_START( ddr4msj )
38693925   SYS573_BIOS_A
38703926
3871   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
3927   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
38723928   ROM_LOAD( "a33jba.u1",    0x000000, 0x000224, BAD_DUMP CRC(babf6fdb) SHA1(a2ef6b855d42072f0d3c72c8de9aff1f867de3f7) )
38733929
3874   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
3930   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
38753931   ROM_LOAD( "gca33jb.u1",   0x000000, 0x001014, BAD_DUMP CRC(00e4b531) SHA1(f421fc33642c5a3cd89fb14dc8cd601bdddd1f55) )
38763932
3877   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3933   ROM_REGION( 0x000008, "cassette:install:id", 0 )
38783934   ROM_LOAD( "a33jba.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
38793935
3880   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3936   ROM_REGION( 0x000008, "cassette:game:id", 0 )
38813937   ROM_LOAD( "gca33jb.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
38823938
38833939   DISK_REGION( "cdrom0" )
r23300r23301
38873943ROM_START( ddr4mp )
38883944   SYS573_BIOS_A
38893945
3890   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
3946   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
38913947   ROM_LOAD( "gea34ja.u1",   0x000000, 0x000224, BAD_DUMP CRC(10f1e9b8) SHA1(985bd26638964beebba5de4c7cda772b402d2e59) )
38923948
3893   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
3949   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
38943950   ROM_LOAD( "gca34ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(e9b6ce56) SHA1(f040fba2b2b446baa840026dcd10f9785f8cc0a3) )
38953951
3896   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3952   ROM_REGION( 0x000008, "cassette:install:id", 0 )
38973953   ROM_LOAD( "gea34ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
38983954
3899   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3955   ROM_REGION( 0x000008, "cassette:game:id", 0 )
39003956   ROM_LOAD( "gca34ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
39013957
3902   ROM_REGION( 0x002000, "m48t58", 0 ) /* timekeeper */
3958   ROM_REGION( 0x002000, "m48t58", 0 )
39033959   ROM_LOAD( "gca34ja.22h",  0x000000, 0x002000, CRC(80575c1f) SHA1(a0594ca0f75bc7d49b645e835e9fa48a73c3c9c7) )
39043960
39053961   DISK_REGION( "cdrom0" )
r23300r23301
39093965ROM_START( ddr4mps )
39103966   SYS573_BIOS_A
39113967
3912   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
3968   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
39133969   ROM_LOAD( "gea34jb.u1",   0x000000, 0x000224, BAD_DUMP CRC(babf6fdb) SHA1(a2ef6b855d42072f0d3c72c8de9aff1f867de3f7) )
39143970
3915   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
3971   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
39163972   ROM_LOAD( "gca34jb.u1",   0x000000, 0x001014, BAD_DUMP CRC(0c717300) SHA1(00d21f39fe90494ffec2f8799767cc46a9cd2b00) )
39173973
3918   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
3974   ROM_REGION( 0x000008, "cassette:install:id", 0 )
39193975   ROM_LOAD( "gea34jb.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
39203976
3921   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
3977   ROM_REGION( 0x000008, "cassette:game:id", 0 )
39223978   ROM_LOAD( "gca34jb.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
39233979
3924   ROM_REGION( 0x002000, "m48t58", 0 ) /* timekeeper */
3980   ROM_REGION( 0x002000, "m48t58", 0 )
39253981   ROM_LOAD( "gca34jb.22h",  0x000000, 0x002000, CRC(bc6c8bd7) SHA1(10ceec5c7bc5ca9fca88f3c083a7d97012982079) )
39263982
39273983   DISK_REGION( "cdrom0" )
r23300r23301
39313987ROM_START( ddr5m )
39323988   SYS573_BIOS_A
39333989
3934   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
3990   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
39353991   ROM_LOAD( "gca27ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(ec526036) SHA1(f47d94d19268fdfa3ae9d42db9f2e2f9be318f2b) )
39363992
3937   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
3993   ROM_REGION( 0x000008, "cassette:game:id", 0 )
39383994   ROM_LOAD( "gca27ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
39393995
39403996   DISK_REGION( "cdrom0" )
r23300r23301
39444000ROM_START( ddrbocd )
39454001   SYS573_BIOS_A
39464002
3947   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4003   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
39484004   ROM_LOAD( "gn895jaa.u1",  0x000000, 0x000224, BAD_DUMP CRC(363f427e) SHA1(adec886a07b9bd91f142f286b04fc6582205f037) )
39494005
39504006   DISK_REGION( "cdrom0" )
r23300r23301
39574013ROM_START( ddrs2k )
39584014   SYS573_BIOS_A
39594015
3960   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
4016   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
39614017   ROM_LOAD( "ge905aa.u1",   0x000000, 0x000084, BAD_DUMP CRC(36d18e2f) SHA1(e976047dfbee62de9ad9e5de8e7629a24c29d581) )
39624018
3963   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
4019   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
39644020   ROM_LOAD( "gc905aa.u1",   0x000000, 0x000084, BAD_DUMP CRC(21073a3e) SHA1(afa12404ceb462b9016a41c40775da87aa09cfeb) )
39654021
3966   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4022   ROM_REGION( 0x000008, "cassette:install:id", 0 )
39674023   ROM_LOAD( "ge905aa.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
39684024
3969   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4025   ROM_REGION( 0x000008, "cassette:game:id", 0 )
39704026   ROM_LOAD( "gc905aa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
39714027
39724028   DISK_REGION( "cdrom0" )
r23300r23301
39764032ROM_START( ddrs2kj )
39774033   SYS573_BIOS_A
39784034
3979   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
4035   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
39804036   ROM_LOAD( "ge905ja.u1",   0x000000, 0x000084, BAD_DUMP CRC(a077b0a1) SHA1(8f247b38c933a104a325ebf1f1691ef260480e1a) )
39814037
3982   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
4038   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
39834039   ROM_LOAD( "gc905ja.u1",   0x000000, 0x000084, BAD_DUMP CRC(b7a104b0) SHA1(0f6901e41640f729f8a084a33148a9b900475594) )
39844040
3985   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4041   ROM_REGION( 0x000008, "cassette:install:id", 0 )
39864042   ROM_LOAD( "ge905ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
39874043
3988   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4044   ROM_REGION( 0x000008, "cassette:game:id", 0 )
39894045   ROM_LOAD( "gc905aa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
39904046
39914047   DISK_REGION( "cdrom0" )
r23300r23301
39954051ROM_START( ddrmax )
39964052   SYS573_BIOS_A
39974053
3998   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4054   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
39994055   ROM_LOAD( "gcb19ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(2255626a) SHA1(cb70c4b551265ffc6cc41f7bd2678696e8067060) )
40004056
4001   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4057   ROM_REGION( 0x000008, "cassette:game:id", 0 )
40024058   ROM_LOAD( "gcb19ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
40034059
40044060   DISK_REGION( "cdrom0" )
r23300r23301
40084064ROM_START( ddrmax2 )
40094065   SYS573_BIOS_A
40104066
4011   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4067   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
40124068   ROM_LOAD( "gcb20ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(fb7e0f58) SHA1(e6da23257a2a2ba7c69e817a91a0a8864f009386) )
40134069
4014   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4070   ROM_REGION( 0x000008, "cassette:game:id", 0 )
40154071   ROM_LOAD( "gcb20ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
40164072
40174073   DISK_REGION( "cdrom0" )
r23300r23301
40214077ROM_START( ddrsbm )
40224078   SYS573_BIOS_A
40234079
4024   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* security cart eeprom */
4080   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
40254081   ROM_LOAD( "gq894ja.u1",   0x000000, 0x000084, BAD_DUMP CRC(cc3a47de) SHA1(f6e2e101870370b1e295a4a9ed546aa2d8bc2010) )
40264082
4027   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4083   ROM_REGION( 0x000008, "cassette:game:id", 0 )
40284084   ROM_LOAD( "gq894ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
40294085
40304086   DISK_REGION( "cdrom0" )
r23300r23301
40344090ROM_START( ddrusa )
40354091   SYS573_BIOS_A
40364092
4037   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4093   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
40384094   ROM_LOAD( "gka44ua.u1",   0x000000, 0x001014, BAD_DUMP CRC(2ef7c4f1) SHA1(9004d27179ece86883d01b3e6bbfeebc1b478d57) )
40394095
4040   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4096   ROM_REGION( 0x000008, "cassette:game:id", 0 )
40414097   ROM_LOAD( "gka44ua.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
40424098
40434099   DISK_REGION( "cdrom0" )
r23300r23301
40474103ROM_START( drmn )
40484104   SYS573_BIOS_A
40494105
4050   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4106   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
40514107   ROM_LOAD( "gq881ja.u1",   0x000000, 0x000224, BAD_DUMP CRC(7dca0b3f) SHA1(db6d5c527e2a99133b516e01433024d3173848c6) )
40524108
40534109   ROM_REGION( 0x200000, "onboard.6", 0 ) /* onboard flash */
r23300r23301
40554111   ROM_REGION( 0x200000, "onboard.7", 0 ) /* onboard flash */
40564112   ROM_LOAD( "gq881ja.27h",  0x000000, 0x200000, CRC(fc0b94c1) SHA1(967d374288db757d161d0e9e8e396a1176071c5f) )
40574113
4058   ROM_REGION( 0x002000, "m48t58", 0 ) /* timekeeper */
4114   ROM_REGION( 0x002000, "m48t58", 0 )
40594115   ROM_LOAD( "gq881ja.22h",  0x000000, 0x002000, CRC(e834d5ec) SHA1(1c845811e43d7dfec657da288b5a38b8bc9c8366) )
40604116
40614117   DISK_REGION( "cdrom0" )
r23300r23301
40684124ROM_START( drmn2m )
40694125   SYS573_BIOS_A
40704126
4071   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
4127   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
40724128   ROM_LOAD( "ge912ja.u1",   0x000000, 0x000224, BAD_DUMP CRC(1246fe5b) SHA1(b58d4f4c95e13abf639d645223565544bd79a58a) )
40734129
4074   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
4130   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
40754131   ROM_LOAD( "gn912ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(34deea99) SHA1(f179e22eaf30453bb94177ed9c25d7996f020c99) )
40764132
4077   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4133   ROM_REGION( 0x000008, "cassette:install:id", 0 )
40784134   ROM_LOAD( "ge912ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
40794135
4080   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4136   ROM_REGION( 0x000008, "cassette:game:id", 0 )
40814137   ROM_LOAD( "gn912ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
40824138
40834139   DISK_REGION( "cdrom0" )
r23300r23301
40874143ROM_START( drmn2mpu )
40884144   SYS573_BIOS_A
40894145
4090   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
4146   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
40914147   ROM_LOAD( "ge912ja.u1",   0x000000, 0x000224, BAD_DUMP CRC(1246fe5b) SHA1(b58d4f4c95e13abf639d645223565544bd79a58a) )
40924148
4093   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
4149   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
40944150   ROM_LOAD( "gn912ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(34deea99) SHA1(f179e22eaf30453bb94177ed9c25d7996f020c99) )
40954151
4096   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4152   ROM_REGION( 0x000008, "cassette:install:id", 0 )
40974153   ROM_LOAD( "ge912ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
40984154
4099   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4155   ROM_REGION( 0x000008, "cassette:game:id", 0 )
41004156   ROM_LOAD( "gn912ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
41014157
41024158   DISK_REGION( "cdrom0" )
r23300r23301
41094165ROM_START( drmn3m )
41104166   SYS573_BIOS_A
41114167
4112   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
4168   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
41134169   ROM_LOAD( "a23jaa.u1",    0x000000, 0x000224, BAD_DUMP CRC(90e544fa) SHA1(1feb617c36bad41aa720a6e5d3ec9e5cb2030567) )
41144170
4115   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
4171   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
41164172   ROM_LOAD( "gca23ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(5af1b5da) SHA1(cf862ef9ab60e8da89af96266943137827e4a261) )
41174173
4118   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4174   ROM_REGION( 0x000008, "cassette:install:id", 0 )
41194175   ROM_LOAD( "a23jaa.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
41204176
4121   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4177   ROM_REGION( 0x000008, "cassette:game:id", 0 )
41224178   ROM_LOAD( "gca23ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
41234179
41244180   DISK_REGION( "cdrom0" )
r23300r23301
41284184ROM_START( drmn4m )
41294185   SYS573_BIOS_A
41304186
4131   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4187   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
41324188   ROM_LOAD( "gea25jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(356bbbf4) SHA1(a20a8fcaed2dce50451346b1683739c96067feb1) )
41334189
41344190   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
41364192   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
41374193   ROM_LOAD( "gea25jaa.27m", 0x000000, 0x200000, CRC(118fa45a) SHA1(6bc6129e328f6f97a27b9f524066297b29efff5a) )
41384194
4139   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4195   ROM_REGION( 0x000008, "cassette:game:id", 0 )
41404196   ROM_LOAD( "gea25jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
41414197
41424198   DISK_REGION( "cdrom0" )
r23300r23301
41494205ROM_START( drmn5m )
41504206   SYS573_BIOS_A
41514207
4152   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4208   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
41534209   ROM_LOAD( "gcb05jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(6b629d68) SHA1(d01ef0677cd72c05f5f354fc6c4d9022b3506c1e) )
41544210
4155   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4211   ROM_REGION( 0x000008, "cassette:game:id", 0 )
41564212   ROM_LOAD( "gcb05jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
41574213
41584214   DISK_REGION( "cdrom0" )
r23300r23301
41654221ROM_START( drmn6m )
41664222   SYS573_BIOS_A
41674223
4168   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4224   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
41694225   ROM_LOAD( "gcb16jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(f6933041) SHA1(1839bb99d2db9413c58a2ed95e9039d2c7dd62ba) )
41704226
41714227   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
41734229   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
41744230   ROM_LOAD( "gcb16jaa.27m",  0x000000, 0x200000, CRC(5696e133) SHA1(aad39cc25ce5279adac8a10fb10158f4f4418c0a) )
41754231
4176   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4232   ROM_REGION( 0x000008, "cassette:game:id", 0 )
41774233   ROM_LOAD( "gcb16jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
41784234
41794235   DISK_REGION( "cdrom0" )
r23300r23301
41864242ROM_START( drmn7m )
41874243   SYS573_BIOS_A
41884244
4189   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4245   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
41904246   ROM_LOAD( "gcc07jba.u1",   0x000000, 0x001014, BAD_DUMP CRC(8d9bcf10) SHA1(3d486df924ba41669675d62982396aebf8d12052) )
41914247
41924248   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
41944250   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
41954251   ROM_LOAD( "gcc07jba.27m",  0x000000, 0x200000, CRC(9393fe8e) SHA1(f60752e3e397121f3d4856a634e1c8ce5fc465b5) )
41964252
4197   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4253   ROM_REGION( 0x000008, "cassette:game:id", 0 )
41984254   ROM_LOAD( "gcc07jba.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
41994255
42004256   DISK_REGION( "cdrom0" )
r23300r23301
42074263ROM_START( drmn7ma )
42084264   SYS573_BIOS_A
42094265
4210   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4266   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
42114267   ROM_LOAD( "gcc07jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(b675b39b) SHA1(9639db913821641cee619d7cc520de5d0c3ae7fa) )
42124268
42134269   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
42154271   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
42164272   ROM_LOAD( "gcc07jaa.27m",  0x000000, 0x200000, CRC(49d27b57) SHA1(e62737fe8665d837c2cebd1dcf4577a021d8cdb1) )
42174273
4218   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4274   ROM_REGION( 0x000008, "cassette:game:id", 0 )
42194275   ROM_LOAD( "gcc07jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
42204276
42214277   DISK_REGION( "cdrom0" )
r23300r23301
42284284ROM_START( drmn8m )
42294285   SYS573_BIOS_A
42304286
4231   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4287   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
42324288   ROM_LOAD( "gcc38jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(aaa03630) SHA1(4976b0c2e1b4458840a165bd889861d62289ad89) )
42334289
4234   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4290   ROM_REGION( 0x000008, "cassette:game:id", 0 )
42354291   ROM_LOAD( "gcc38jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
42364292
42374293   DISK_REGION( "cdrom0" )
r23300r23301
42444300ROM_START( drmn9m )
42454301   SYS573_BIOS_A
42464302
4247   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4303   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
42484304   ROM_LOAD( "gcd09jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(a1201529) SHA1(4a82f2ee9b049a16c00b7dcd905c43c1a06d60ee) )
42494305
4250   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4306   ROM_REGION( 0x000008, "cassette:game:id", 0 )
42514307   ROM_LOAD( "gcd09jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
42524308
42534309   DISK_REGION( "cdrom0" )
r23300r23301
42604316ROM_START( drmn10m )
42614317   SYS573_BIOS_A
42624318
4263   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4319   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
42644320   ROM_LOAD( "gcd40jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(ef0983a7) SHA1(06127b9fd786eca64eea50c40f7f73717b631e59) )
42654321
4266   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4322   ROM_REGION( 0x000008, "cassette:game:id", 0 )
42674323   ROM_LOAD( "gcd40jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
42684324
42694325   DISK_REGION( "cdrom0" )
r23300r23301
42764332ROM_START( dmx )
42774333   SYS573_BIOS_A
42784334
4279   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4335   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
42804336   ROM_LOAD( "ge874ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(c5536373) SHA1(1492221f7dd9485f7745ecb0a982a88c8e768e53) )
42814337
4282   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4338   ROM_REGION( 0x000008, "cassette:game:id", 0 )
42834339   ROM_LOAD( "ge874ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
42844340
42854341   DISK_REGION( "cdrom0" )
r23300r23301
42894345ROM_START( dmx2m )
42904346   SYS573_BIOS_A
42914347
4292   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4348   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
42934349   ROM_LOAD( "gca39ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(ecc75eb7) SHA1(af66ced28ba5e79ae32ae0ef12d2ebe4207f3822) )
42944350
4295   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4351   ROM_REGION( 0x000008, "cassette:game:id", 0 )
42964352   ROM_LOAD( "gca39ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
42974353
42984354   DISK_REGION( "cdrom0" )
r23300r23301
43024358ROM_START( dmx2majp )
43034359   SYS573_BIOS_A
43044360
4305   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4361   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
43064362   ROM_LOAD( "gca38ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(99a746b8) SHA1(333236e59a707ecaf840a66f9b947ceade2cf2c9) )
43074363
43084364   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
43104366   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
43114367   ROM_LOAD( "gca38ja.27m",  0x000000, 0x200000, CRC(6c3934b8) SHA1(f0e4a692b6caaf60fefaec87fd23da577439f69d) )
43124368
4313   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4369   ROM_REGION( 0x000008, "cassette:game:id", 0 )
43144370   ROM_LOAD( "gca38ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43154371
43164372   DISK_REGION( "cdrom0" )
r23300r23301
43204376ROM_START( dncfrks )
43214377   SYS573_BIOS_A
43224378
4323   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4379   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
43244380   ROM_LOAD( "gk874ka.u1",   0x000000, 0x001014, BAD_DUMP CRC(7a6f4672) SHA1(2e009e57760e92f48070a69cff5597c37a4783a2) )
43254381
4326   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4382   ROM_REGION( 0x000008, "cassette:game:id", 0 )
43274383   ROM_LOAD( "gk874ka.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43284384
43294385   DISK_REGION( "cdrom0" )
r23300r23301
43334389ROM_START( dsem )
43344390   SYS573_BIOS_A
43354391
4336   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4392   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
43374393   ROM_LOAD( "ge936ea.u1",   0x000000, 0x000224, BAD_DUMP CRC(0f5b7ae3) SHA1(646dd49da1216cc2d3d6920bc9b3447d55ebfbf0) )
43384394
4339   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4395   ROM_REGION( 0x000008, "cassette:game:id", 0 )
43404396   ROM_LOAD( "ge936ea.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43414397
43424398   DISK_REGION( "cdrom0" )
r23300r23301
43464402ROM_START( dsem2 )
43474403   SYS573_BIOS_A
43484404
4349   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4405   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
43504406   ROM_LOAD( "gkc23ea.u1",   0x000000, 0x001014, BAD_DUMP CRC(aec2421a) SHA1(5ea9e9ce6161ebc99a50db0b7304385511bd4553) )
43514407
4352   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4408   ROM_REGION( 0x000008, "cassette:game:id", 0 )
43534409   ROM_LOAD( "gkc23ea.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43544410
43554411   DISK_REGION( "cdrom0" )
r23300r23301
43594415ROM_START( dsfdct )
43604416   SYS573_BIOS_A
43614417
4362   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
4418   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
43634419   ROM_LOAD( "ge887ja_gn887ja.u1",   0x000000, 0x000084, BAD_DUMP CRC(08a60147) SHA1(0d39dca5e9e17fff0e64f296c8416e4ca23fdc1b) )
43644420
4365   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
4421   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
43664422   ROM_LOAD( "gc910jc.u1",   0x000000, 0x000084, BAD_DUMP CRC(3c1ca973) SHA1(32211a72e3ac88b2723f82dac0b26f93031b3a9c) )
43674423
4368   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4424   ROM_REGION( 0x000008, "cassette:install:id", 0 )
43694425   ROM_LOAD( "ge887ja_gn887ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43704426
4371   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4427   ROM_REGION( 0x000008, "cassette:game:id", 0 )
43724428   ROM_LOAD( "gc910jc.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43734429
43744430   DISK_REGION( "cdrom0" )
r23300r23301
43784434ROM_START( dsfdcta )
43794435   SYS573_BIOS_A
43804436
4381   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* install security cart eeprom */
4437   ROM_REGION( 0x0000084, "cassette:install:eeprom", 0 )
43824438   ROM_LOAD( "gn884ja.u1",  0x000000, 0x000084, BAD_DUMP CRC(ce6b98ce) SHA1(75549d9470345ce06d2706d373b19416d97e5b9a) )
43834439
4384   ROM_REGION( 0x0000084, "game_eeprom", 0 ) /* game security cart eeprom */
4440   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
43854441   ROM_LOAD( "gc910ja.u1",   0x000000, 0x000084, BAD_DUMP CRC(59a23808) SHA1(fcff1c68ff6cfbd391ac997a40fb5253fc62de82) )
43864442
4387   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4443   ROM_REGION( 0x000008, "cassette:install:id", 0 )
43884444   ROM_LOAD( "gn884ja.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43894445
4390   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4446   ROM_REGION( 0x000008, "cassette:game:id", 0 )
43914447   ROM_LOAD( "gc910ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
43924448
43934449   DISK_REGION( "cdrom0" )
r23300r23301
43974453ROM_START( dsfdr )
43984454   SYS573_BIOS_A
43994455
4400   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
4456   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
44014457   ROM_LOAD( "gea37ja.u1",   0x000000, 0x000224, BAD_DUMP CRC(5321055e) SHA1(d06b0dca9caba8249d71340469ad9083b02fd087) )
44024458
4403   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
4459   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
44044460   ROM_LOAD( "gca37ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(b6d9e7f9) SHA1(bc5f491de53a96d46745df09bc94e7853052296c) )
44054461
4406   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4462   ROM_REGION( 0x000008, "cassette:install:id", 0 )
44074463   ROM_LOAD( "gea37ja.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
44084464
4409   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4465   ROM_REGION( 0x000008, "cassette:game:id", 0 )
44104466   ROM_LOAD( "gca37ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
44114467
44124468   DISK_REGION( "cdrom0" )
r23300r23301
44164472ROM_START( dsftkd )
44174473   SYS573_BIOS_A
44184474
4419   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* security cart eeprom */
4475   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
44204476   ROM_LOAD( "gn884ja.u1",  0x000000, 0x000084, BAD_DUMP CRC(ce6b98ce) SHA1(75549d9470345ce06d2706d373b19416d97e5b9a) )
44214477
4422   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4478   ROM_REGION( 0x000008, "cassette:game:id", 0 )
44234479   ROM_LOAD( "gn884ja.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
44244480
44254481   DISK_REGION( "cdrom0" )
r23300r23301
44294485ROM_START( dstage )
44304486   SYS573_BIOS_A
44314487
4432   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4488   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
44334489   ROM_LOAD( "gn845ea.u1",   0x000000, 0x000224, BAD_DUMP CRC(db643af7) SHA1(881221da640b883302e657b906ea0a4e74555679) )
44344490
44354491   DISK_REGION( "cdrom0" )
r23300r23301
44394495ROM_START( fbait2bc )
44404496   SYS573_BIOS_A
44414497
4442   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4498   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
44434499   ROM_LOAD( "gc865ua.u1", 0x000000, 0x000224, BAD_DUMP CRC(ea8f0b4b) SHA1(363b1ea1a520b239ba8bca867366bbe8a9977a43) )
44444500
44454501   DISK_REGION( "cdrom0" )
r23300r23301
44494505ROM_START( fbaitbc )
44504506   SYS573_BIOS_A
44514507
4452   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4508   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
44534509   ROM_LOAD( "ge765ua.u1", 0x000000, 0x000224, BAD_DUMP CRC(588748c6) SHA1(ea1ead61e0dcb324ef7b6106cae00bcf6702d6c4) )
44544510
44554511   DISK_REGION( "cdrom0" )
r23300r23301
44594515ROM_START( fbaitmc )
44604516   SYS573_BIOS_A
44614517
4462   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4518   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
44634519   ROM_LOAD( "gx889ea.u1", 0x000000, 0x000224, BAD_DUMP CRC(753ad84e) SHA1(e024cefaaee7c9945ccc1f9a3d896b8560adce2e) )
44644520
44654521   DISK_REGION( "cdrom0" )
r23300r23301
44694525ROM_START( fbaitmca )
44704526   SYS573_BIOS_A
44714527
4472   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4528   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
44734529   ROM_LOAD( "gx889aa.u1", 0x000000, 0x000224, BAD_DUMP CRC(9c22aae8) SHA1(c107b0bf7fa76708f2d4f6aaf2cf27b3858378a3) )
44744530
44754531   DISK_REGION( "cdrom0" )
r23300r23301
44794535ROM_START( fbaitmcj )
44804536   SYS573_BIOS_A
44814537
4482   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4538   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
44834539   ROM_LOAD( "gx889ja.u1", 0x000000, 0x000224, BAD_DUMP CRC(6278603c) SHA1(d6b59e270cfe4016e12565aedec8a4f0702e1a6f) )
44844540
44854541   DISK_REGION( "cdrom0" )
r23300r23301
44894545ROM_START( fbaitmcu )
44904546   SYS573_BIOS_A
44914547
4492   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4548   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
44934549   ROM_LOAD( "gx889ua.u1", 0x000000, 0x000224, BAD_DUMP CRC(67b91e54) SHA1(4d94bfab08e2bf6e34ee606dd3c4e345d8e5d158) )
44944550
44954551   DISK_REGION( "cdrom0" )
r23300r23301
44994555ROM_START( fghtmn )
45004556   SYS573_BIOS_A
45014557
4502   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4558   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
45034559   ROM_LOAD( "gq918eaa.u1",  0x000000, 0x000224, CRC(f3342ff5) SHA1(d3d6ecc22396f74b99ad7aab7908cd542c518977) )
45044560
45054561   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
45074563   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
45084564   ROM_LOAD( "gq918xxb.27m", 0x000000, 0x200000, CRC(27d48c97) SHA1(c140d4bdfa869fbcae1133bbfe73a346e6f46cb8) )
45094565
4510   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4566   ROM_REGION( 0x000008, "cassette:game:id", 0 )
45114567   ROM_LOAD( "gq918eaa.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
45124568
45134569   DISK_REGION( "cdrom0" )
r23300r23301
45174573ROM_START( fghtmna )
45184574   SYS573_BIOS_A
45194575
4520   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4576   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
45214577   ROM_LOAD( "gq918aaa.u1",  0x000000, 0x000224, CRC(1a2c5d53) SHA1(ab7e44a83e8cd271e2bf8580881a3050d35641df) )
45224578
45234579   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
45254581   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
45264582   ROM_LOAD( "gq918xxb.27m", 0x000000, 0x200000, CRC(27d48c97) SHA1(c140d4bdfa869fbcae1133bbfe73a346e6f46cb8) )
45274583
4528   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4584   ROM_REGION( 0x000008, "cassette:game:id", 0 )
45294585   ROM_LOAD( "gq918aaa.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
45304586
45314587   DISK_REGION( "cdrom0" )
r23300r23301
45354591ROM_START( fghtmnk )
45364592   SYS573_BIOS_A
45374593
4538   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4594   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
45394595   ROM_LOAD( "gq918kaa.u1",  0x000000, 0x000224, CRC(cf32990b) SHA1(bf49b8560f008696b45a3f7f03fa7b3395635b0f) )
45404596
45414597   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
45434599   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
45444600   ROM_LOAD( "gq918xxb.27m", 0x000000, 0x200000, CRC(27d48c97) SHA1(c140d4bdfa869fbcae1133bbfe73a346e6f46cb8) )
45454601
4546   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4602   ROM_REGION( 0x000008, "cassette:game:id", 0 )
45474603   ROM_LOAD( "gq918kaa.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
45484604
45494605   DISK_REGION( "cdrom0" )
r23300r23301
45534609ROM_START( fghtmnu )
45544610   SYS573_BIOS_A
45554611
4556   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4612   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
45574613   ROM_LOAD( "gq918uaa.u1",  0x000000, 0x000224, CRC(e1b7e9ef) SHA1(5767f47cb9a689601fb92c6a494563c5ffdde04c) )
45584614
45594615   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
45614617   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
45624618   ROM_LOAD( "gq918xxb.27m", 0x000000, 0x200000, CRC(27d48c97) SHA1(c140d4bdfa869fbcae1133bbfe73a346e6f46cb8) )
45634619
4564   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4620   ROM_REGION( 0x000008, "cassette:game:id", 0 )
45654621   ROM_LOAD( "gq918uaa.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
45664622
45674623   DISK_REGION( "cdrom0" )
r23300r23301
45884644   ROM_REGION( 0x200000, "onboard.7", 0 ) /* onboard flash */
45894645   ROM_LOAD( "710ja.27h",    0x000000, 0x200000, CRC(aed26efe) SHA1(20b6fccd0bc5495d8258b976f72d330d6315c6f6) )
45904646
4591   ROM_REGION( 0x002000, "m48t58", 0 ) /* timekeeper */
4647   ROM_REGION( 0x002000, "m48t58", 0 )
45924648   ROM_LOAD( "710ja.22h",    0x000000, 0x002000, CRC(b784de91) SHA1(048157e9ad6df46656dbac6349b0c821254e1c37) )
45934649ROM_END
45944650
r23300r23301
46444700   ROM_LOAD( "ge877ja.4u",   0x100000, 0x100000, CRC(7b28d962) SHA1(27a46e41dc53cb85f83ec4558bc1f88504d725eb) )
46454701   ROM_CONTINUE( 0x000000, 0x100000 )
46464702
4647   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4703   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
46484704   ROM_LOAD( "ge877jaa.u1",  0x000000, 0x000224, CRC(06d0e427) SHA1(cf61c421c0ea236b492d49a00b4608062bbe9063) )
46494705ROM_END
46504706
46514707ROM_START( gtrfrks )
46524708   SYS573_BIOS_A
46534709
4654   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4710   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
46554711   ROM_LOAD( "gq886eac.u1",  0x000000, 0x000224, BAD_DUMP CRC(06bd6c4f) SHA1(61930e467ad135e2f31393ff5af981ed52f3bef9) )
46564712
46574713   DISK_REGION( "cdrom0" )
r23300r23301
46614717ROM_START( gtrfrksu )
46624718   SYS573_BIOS_A
46634719
4664   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4720   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
46654721   ROM_LOAD( "gq886uac.u1",  0x000000, 0x000224, BAD_DUMP CRC(143eaa55) SHA1(51a4fa3693f1cb1646a8986003f9b6cc1ae8b630) )
46664722
46674723   DISK_REGION( "cdrom0" )
r23300r23301
46714727ROM_START( gtrfrksj )
46724728   SYS573_BIOS_A
46734729
4674   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4730   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
46754731   ROM_LOAD( "gq886jac.u1",  0x000000, 0x000224, BAD_DUMP CRC(11ffd43d) SHA1(27f4f4d782604379254fb98c3c57e547aa4b321f) )
46764732
46774733   DISK_REGION( "cdrom0" )
r23300r23301
46814737ROM_START( gtrfrksa )
46824738   SYS573_BIOS_A
46834739
4684   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
4740   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
46854741   ROM_LOAD( "gq886aac.u1",  0x000000, 0x000224, BAD_DUMP CRC(efa51ee9) SHA1(3374d936de69c287e0161bc526546441c2943555) )
46864742
46874743   DISK_REGION( "cdrom0" )
r23300r23301
46914747ROM_START( gtrfrk2m )
46924748   SYS573_BIOS_A
46934749
4694   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* security cart eeprom */
4750   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
46954751   ROM_LOAD( "gq883jad.u1",  0x000000, 0x000084, BAD_DUMP CRC(687868c4) SHA1(1230e74e4cf17953febe501df56d8bbec1de9356) )
46964752
4697   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4753   ROM_REGION( 0x000008, "cassette:game:id", 0 )
46984754   ROM_LOAD( "gq883jad.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
46994755
47004756   DISK_REGION( "cdrom0" )
r23300r23301
47044760ROM_START( gtrfrk3m )
47054761   SYS573_BIOS_A
47064762
4707   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
4763   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
47084764   ROM_LOAD( "949jaa.u1",    0x000000, 0x000224, BAD_DUMP CRC(96c21d71) SHA1(871f1f0429154a486e547e182534db1557008dd6) )
47094765
4710   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
4766   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
47114767   ROM_LOAD( "ge949jab.u1",  0x000000, 0x001014, BAD_DUMP CRC(8645e17f) SHA1(e8a833384cb6bdb05870fcd44e7c8ed48a03c852) )
47124768
4713   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4769   ROM_REGION( 0x000008, "cassette:install:id", 0 )
47144770   ROM_LOAD( "949jaa.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
47154771
4716   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4772   ROM_REGION( 0x000008, "cassette:game:id", 0 )
47174773   ROM_LOAD( "ge949jab.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
47184774
47194775   DISK_REGION( "cdrom0" )
r23300r23301
47264782ROM_START( gtfrk3ma )
47274783   SYS573_BIOS_A
47284784
4729   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
4785   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
47304786   ROM_LOAD( "949jaa.u1",    0x000000, 0x000224, BAD_DUMP CRC(96c21d71) SHA1(871f1f0429154a486e547e182534db1557008dd6) )
47314787
4732   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
4788   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
47334789   ROM_LOAD( "ge949jab.u1",  0x000000, 0x001014, BAD_DUMP CRC(8645e17f) SHA1(e8a833384cb6bdb05870fcd44e7c8ed48a03c852) )
47344790
4735   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4791   ROM_REGION( 0x000008, "cassette:install:id", 0 )
47364792   ROM_LOAD( "949jaa.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
47374793
4738   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4794   ROM_REGION( 0x000008, "cassette:game:id", 0 )
47394795   ROM_LOAD( "ge949jab.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
47404796
47414797   DISK_REGION( "cdrom0" )
r23300r23301
47454801ROM_START( gtfrk3mb )
47464802   SYS573_BIOS_A
47474803
4748   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* game security cart eeprom */
4804   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
47494805   ROM_LOAD( "ge949jaa.u1",  0x000000, 0x001014, BAD_DUMP CRC(61f35ee1) SHA1(0a2b66742364d76ec18647b2761590bd49229625) )
47504806
4751   ROM_REGION( 0x000008, "install_id", 0 ) /* game security cart id */
4807   ROM_REGION( 0x000008, "cassette:game:id", 0 )
47524808   ROM_LOAD( "ge949jaa.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
47534809
47544810   DISK_REGION( "cdrom0" )
r23300r23301
47584814ROM_START( gtrfrk4m )
47594815   SYS573_BIOS_A
47604816
4761   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
4817   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
47624818   ROM_LOAD( "a24jaa.u1",    0x000000, 0x000224, BAD_DUMP CRC(29e326fe) SHA1(41a600105b08accc9d7ebd2b8ae08c0863758aa0) )
47634819
4764   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
4820   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
47654821   ROM_LOAD( "gea24ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(d1fccf11) SHA1(6dcd79f3171d6e4bd7e1149901638f8ea58ff623) )
47664822
4767   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
4823   ROM_REGION( 0x000008, "cassette:install:id", 0 )
47684824   ROM_LOAD( "a24jaa.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
47694825
4770   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
4826   ROM_REGION( 0x000008, "cassette:game:id", 0 )
47714827   ROM_LOAD( "gea24ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
47724828
47734829   DISK_REGION( "cdrom0" )
r23300r23301
47774833ROM_START( gtrfrk5m )
47784834   SYS573_BIOS_A
47794835
4780   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4836   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
47814837   ROM_LOAD( "gea26jaa.u1",  0x000000, 0x001014, BAD_DUMP CRC(c2725fca) SHA1(b70a3266c61af5cbe0478a6f3dd850ebcab980dc) )
47824838
47834839   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
47854841   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
47864842   ROM_LOAD( "gea26jaa.27m", 0x000000, 0x200000, CRC(345dc5f2) SHA1(61af3fcfe6119c1e8e18b92693855ab4fe708b30) )
47874843
4788   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4844   ROM_REGION( 0x000008, "cassette:game:id", 0 )
47894845   ROM_LOAD( "gea26jaa.u6",    0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
47904846
47914847   DISK_REGION( "cdrom0" )
r23300r23301
47954851ROM_START( gtrfrk6m )
47964852   SYS573_BIOS_A
47974853
4798   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4854   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
47994855   ROM_LOAD( "gcb06ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(673c98ab) SHA1(b1d889bf4fc5e425056acb6b72b2c563966fb7d7) )
48004856
4801   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4857   ROM_REGION( 0x000008, "cassette:game:id", 0 )
48024858   ROM_LOAD( "gcb06ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
48034859
48044860   DISK_REGION( "cdrom0" )
r23300r23301
48084864ROM_START( gtrfrk7m )
48094865   SYS573_BIOS_A
48104866
4811   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4867   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
48124868   ROM_LOAD( "gcb17jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(5a338c31) SHA1(0fd9ee306335858dd6bef680a62557a8bf055cc3) )
48134869
48144870   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
48164872   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
48174873   ROM_LOAD( "gcb17jaa.27m", 0x000000, 0x200000, CRC(7e7da9a9) SHA1(1882418779a48b5aefd113895756116379a6a4f7) )
48184874
4819   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4875   ROM_REGION( 0x000008, "cassette:game:id", 0 )
48204876   ROM_LOAD( "gcb17jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
48214877
48224878   DISK_REGION( "cdrom0" )
r23300r23301
48264882ROM_START( gtrfrk8m )
48274883   SYS573_BIOS_A
48284884
4829   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4885   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
48304886   ROM_LOAD( "gcc08jba.u1",   0x000000, 0x001014, BAD_DUMP CRC(db4b3027) SHA1(65ca32fcacda18954a4e8352dbb9bf583dfdd121) )
48314887
48324888   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
48344890   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
48354891   ROM_LOAD( "gcc08jba.27m", 0x000000, 0x200000, CRC(9393fe8e) SHA1(f60752e3e397121f3d4856a634e1c8ce5fc465b5) )
48364892
4837   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4893   ROM_REGION( 0x000008, "cassette:game:id", 0 )
48384894   ROM_LOAD( "gcc08jba.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
48394895
48404896   DISK_REGION( "cdrom0" )
r23300r23301
48444900ROM_START( gtrfrk8ma )
48454901   SYS573_BIOS_A
48464902
4847   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4903   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
48484904   ROM_LOAD( "gcc08jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(9c58f22b) SHA1(41ade23bac86e437b1f12c5730b8cce292ffe4f8) )
48494905
48504906   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
48524908   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
48534909   ROM_LOAD( "gcc08jaa.27m", 0x000000, 0x200000, CRC(49d27b57) SHA1(e62737fe8665d837c2cebd1dcf4577a021d8cdb1) )
48544910
4855   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4911   ROM_REGION( 0x000008, "cassette:game:id", 0 )
48564912   ROM_LOAD( "gcc08jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
48574913
48584914   DISK_REGION( "cdrom0" )
r23300r23301
48624918ROM_START( gtrfrk9m )
48634919   SYS573_BIOS_A
48644920
4865   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4921   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
48664922   ROM_LOAD( "gcc39jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(afb75814) SHA1(027dc2ae3444d10c14169f1f354ffcc928f62fb3) )
48674923
4868   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4924   ROM_REGION( 0x000008, "cassette:game:id", 0 )
48694925   ROM_LOAD( "gcc39jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
48704926
48714927   DISK_REGION( "cdrom0" )
r23300r23301
48754931ROM_START( gtfrk10m )
48764932   SYS573_BIOS_A
48774933
4878   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4934   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
48794935   ROM_LOAD( "gcd10jab.u1",   0x000000, 0x001014, BAD_DUMP CRC(43520577) SHA1(a0749e766688032fe6558707b564288b95da9b8d) )
48804936
4881   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4937   ROM_REGION( 0x000008, "cassette:game:id", 0 )
48824938   ROM_LOAD( "gcd10jab.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
48834939
48844940   DISK_REGION( "cdrom0" )
r23300r23301
48914947ROM_START( gtfrk10ma )
48924948   SYS573_BIOS_A
48934949
4894   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4950   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
48954951   ROM_LOAD( "gcd10jaa.u1",   0x000000, 0x001014, BAD_DUMP CRC(43520577) SHA1(a0749e766688032fe6558707b564288b95da9b8d) )
48964952
4897   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4953   ROM_REGION( 0x000008, "cassette:game:id", 0 )
48984954   ROM_LOAD( "gcd10jaa.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
48994955
49004956   DISK_REGION( "cdrom0" )
r23300r23301
49044960ROM_START( gtfrk10mb )
49054961   SYS573_BIOS_A
49064962
4907   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4963   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
49084964   ROM_LOAD( "gcd10jab.u1",   0x000000, 0x001014, BAD_DUMP CRC(43520577) SHA1(a0749e766688032fe6558707b564288b95da9b8d) )
49094965
4910   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4966   ROM_REGION( 0x000008, "cassette:game:id", 0 )
49114967   ROM_LOAD( "gcd10jab.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
49124968
49134969   DISK_REGION( "cdrom0" )
r23300r23301
49174973ROM_START( gtfrk11m )
49184974   SYS573_BIOS_A
49194975
4920   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
4976   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
49214977   ROM_LOAD( "gcd39ja.u1",   0x000000, 0x001014, BAD_DUMP CRC(9bd81d0a) SHA1(c95f6d7317bf88177f7217de4ba4376485d5cdbf) )
49224978
4923   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
4979   ROM_REGION( 0x000008, "cassette:game:id", 0 )
49244980   ROM_LOAD( "gcd39ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
49254981
49264982   DISK_REGION( "cdrom0" )
r23300r23301
50355091   ROM_REGION( 0x200000, "onboard.7", 0 ) /* onboard flash */
50365092   ROM_LOAD( "876ea.27h",    0x000000, 0x200000, CRC(49175f99) SHA1(0154f6332ed210b6f0af20ba622133cde0994b7f) )
50375093
5038   ROM_REGION( 0x002000, "m48t58", 0 ) /* timekeeper */
5094   ROM_REGION( 0x002000, "m48t58", 0 )
50395095   ROM_LOAD( "876ea.22h",    0x000000, 0x002000, CRC(8e11d196) SHA1(e7442fdd611f4290d531b1ebdc9f487e323fd531) )
50405096ROM_END
50415097
r23300r23301
50595115   ROM_REGION( 0x200000, "onboard.7", 0 ) /* onboard flash */
50605116   ROM_LOAD( "876ea.27h",    0x000000, 0x200000, CRC(49175f99) SHA1(0154f6332ed210b6f0af20ba622133cde0994b7f) )
50615117
5062   ROM_REGION( 0x002000, "m48t58", 0 ) /* timekeeper */
5118   ROM_REGION( 0x002000, "m48t58", 0 )
50635119   ROM_LOAD( "876aa.22h",    0x000000, 0x002000, CRC(3c17f026) SHA1(8ed33aca99f5d09d5792e136e700e3ac628018e8) )
50645120ROM_END
50655121
50665122ROM_START( hypbbc2p )
50675123   SYS573_BIOS_A
50685124
5069   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* security cart eeprom */
5125   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
50705126   ROM_LOAD( "gx908ja.u1",  0x000000, 0x000084, BAD_DUMP CRC(fb6c0635) SHA1(0d974462a0a244ffb1a651adb316242cde427756) )
50715127
50725128   DISK_REGION( "cdrom0" )
r23300r23301
50765132ROM_START( hypbbc2pk )
50775133   SYS573_BIOS_A
50785134
5079   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* security cart eeprom */
5135   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
50805136   ROM_LOAD( "gx908ka.u1",  0x000000, 0x000084, BAD_DUMP CRC(f4f37fe1) SHA1(30f90cdb2d092e4f8d6c14cfd4ca4945e6d352cb) )
50815137
50825138   DISK_REGION( "cdrom0" )
r23300r23301
50865142ROM_START( konam80a )
50875143   SYS573_BIOS_A
50885144
5089   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5145   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
50905146   ROM_LOAD( "gc826aa.u1", 0x000000, 0x000224, BAD_DUMP CRC(9b38b959) SHA1(6b4fca340a9b1c2ae21ad3903c1ac1e39ab08b1a) )
50915147
50925148   DISK_REGION( "cdrom0" )
r23300r23301
50965152ROM_START( konam80j )
50975153   SYS573_BIOS_A
50985154
5099   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5155   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
51005156   ROM_LOAD( "gc826ja.u1", 0x000000, 0x000224, BAD_DUMP CRC(e9e861e8) SHA1(45841db0b42d096213d9539a8d076d39391dca6d) )
51015157
51025158   DISK_REGION( "cdrom0" )
r23300r23301
51065162ROM_START( konam80k )
51075163   SYS573_BIOS_A
51085164
5109   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5165   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
51105166   ROM_LOAD( "gc826ka.u1", 0x000000, 0x000224, BAD_DUMP CRC(d41f7e38) SHA1(73e2bb132e23be72e72ea5b0686ccad28e47574a) )
51115167
51125168   DISK_REGION( "cdrom0" )
r23300r23301
51165172ROM_START( konam80s )
51175173   SYS573_BIOS_A
51185174
5119   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5175   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
51205176   ROM_LOAD( "gc826ea.u1", 0x000000, 0x000224, BAD_DUMP CRC(6ce4c619) SHA1(d2be08c213c0a74e30b7ebdd93946374cc64457f) )
51215177
51225178   DISK_REGION( "cdrom0" )
r23300r23301
51265182ROM_START( konam80u )
51275183   SYS573_BIOS_A
51285184
5129   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5185   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
51305186   ROM_LOAD( "gc826ua.u1", 0x000000, 0x000224, BAD_DUMP CRC(0577379b) SHA1(3988a2a5ef1f1d5981c4767cbed05b73351be903) )
51315187
51325188   DISK_REGION( "cdrom0" )
r23300r23301
51365192ROM_START( mamboagg )
51375193   SYS573_BIOS_A
51385194
5139   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
5195   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
51405196   ROM_LOAD( "gqa40jab.u1",  0x000000, 0x001014, BAD_DUMP CRC(fd9e7c1f) SHA1(6dd4790589d48803f58328d099c908f0565b2c01) )
51415197
5142   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
5198   ROM_REGION( 0x000008, "cassette:game:id", 0 )
51435199   ROM_LOAD( "gqa40jab.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
51445200
51455201   DISK_REGION( "cdrom0" )
r23300r23301
51495205ROM_START( mrtlbeat )
51505206   SYS573_BIOS_A
51515207
5152   ROM_REGION( 0x0001014, "install_eeprom", 0 ) /* security cart eeprom */
5208   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
51535209   ROM_LOAD( "geb47jb.u1",   0x000000, 0x001014, BAD_DUMP CRC(90079ff5) SHA1(8273ee3349dd13207836b0ebf72ad5fa67fef68a) )
51545210
5155   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
5211   ROM_REGION( 0x000008, "cassette:game:id", 0 )
51565212   ROM_LOAD( "geb47jb.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
51575213
51585214   DISK_REGION( "cdrom0" )
r23300r23301
51625218ROM_START( powyakex )
51635219   SYS573_BIOS_A
51645220
5165   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5221   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
51665222   ROM_LOAD( "gx802ja.u1", 0x000000, 0x000224, BAD_DUMP CRC(ea8bdda3) SHA1(780034ab08871631ef0e3e9b779ca89e016c26a8) )
51675223
51685224   DISK_REGION( "cdrom0" )
r23300r23301
51725228ROM_START( pcnfrk3m )
51735229   SYS573_BIOS_A
51745230
5175   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* install security cart eeprom */
5231   ROM_REGION( 0x0000224, "cassette:install:eeprom", 0 )
51765232   ROM_LOAD( "a23kaa.u1",    0x000000, 0x000224, BAD_DUMP CRC(d71c4b5c) SHA1(3911c5dd933c30e6e44c8cf417bb4c284ecb4b80) )
51775233
5178   ROM_REGION( 0x0001014, "game_eeprom", 0 ) /* game security cart eeprom */
5234   ROM_REGION( 0x0001014, "cassette:game:eeprom", 0 )
51795235   ROM_LOAD( "gca23ka.u1",   0x000000, 0x001014, BAD_DUMP CRC(f392349c) SHA1(e7eb7979db276de560d5820163a70d97e6c023d8) )
51805236
5181   ROM_REGION( 0x000008, "install_id", 0 ) /* install security cart id */
5237   ROM_REGION( 0x000008, "cassette:install:id", 0 )
51825238   ROM_LOAD( "a23kaa.u6",    0x000000, 0x000008, BAD_DUMP CRC(af09e43c) SHA1(d8372f2d6e0ae07061b496a2242a63e5bc2e54dc) )
51835239
5184   ROM_REGION( 0x000008, "game_id", 0 ) /* game security cart id */
5240   ROM_REGION( 0x000008, "cassette:game:id", 0 )
51855241   ROM_LOAD( "gca23ka.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
51865242
51875243   DISK_REGION( "cdrom0" )
r23300r23301
51915247ROM_START( pnchmn )
51925248   SYS573_BIOS_A
51935249
5194   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5250   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
51955251   ROM_LOAD( "gq918jaa.u1",  0x000000, 0x000224, BAD_DUMP CRC(e4769787) SHA1(d60c6598c7c58b5cd8f86350ebf7f3f32c1ebe9b) )
51965252
51975253   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
51995255   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
52005256   ROM_LOAD( "gq918xxb.27m", 0x000000, 0x200000, CRC(27d48c97) SHA1(c140d4bdfa869fbcae1133bbfe73a346e6f46cb8) )
52015257
5202   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
5258   ROM_REGION( 0x000008, "cassette:game:id", 0 )
52035259   ROM_LOAD( "gq918jaa.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
52045260
52055261   DISK_REGION( "cdrom0" )
r23300r23301
52095265ROM_START( pnchmna )
52105266   SYS573_BIOS_A
52115267
5212   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5268   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
52135269   ROM_LOAD( "gq918jab.u1",  0x000000, 0x000224, BAD_DUMP CRC(e4769787) SHA1(d60c6598c7c58b5cd8f86350ebf7f3f32c1ebe9b) )
52145270
52155271   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
52175273   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
52185274   ROM_LOAD( "gq918xxb.27m", 0x000000, 0x200000, CRC(27d48c97) SHA1(c140d4bdfa869fbcae1133bbfe73a346e6f46cb8) )
52195275
5220   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
5276   ROM_REGION( 0x000008, "cassette:game:id", 0 )
52215277   ROM_LOAD( "gq918jab.u6",  0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
52225278
52235279   DISK_REGION( "cdrom0" )
r23300r23301
52275283ROM_START( pnchmn2 )
52285284   SYS573_BIOS_A
52295285
5230   ROM_REGION( 0x0000224, "install_eeprom", 0 ) /* security cart eeprom */
5286   ROM_REGION( 0x0000224, "cassette:game:eeprom", 0 )
52315287   ROM_LOAD( "gqa09ja.u1",   0x000000, 0x000224, BAD_DUMP CRC(e1e4108f) SHA1(0605e2c7a7dcb2f4928350e96d2ffcc2ede4a762) )
52325288
52335289   ROM_REGION( 0x200000, "onboard.0", 0 ) /* onboard flash */
r23300r23301
52355291   ROM_REGION( 0x200000, "onboard.1", 0 ) /* onboard flash */
52365292   ROM_LOAD( "gqa09ja.27m",  0x000000, 0x200000, CRC(09b1a70b) SHA1(0f3bcad879e05faaf8130133d774a2071031ee74) )
52375293
5238   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
5294   ROM_REGION( 0x000008, "cassette:game:id", 0 )
52395295   ROM_LOAD( "gqa09ja.u6",   0x000000, 0x000008, BAD_DUMP CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
52405296
52415297   DISK_REGION( "cdrom0" )
r23300r23301
52455301ROM_START( salarymc )
52465302   SYS573_BIOS_A
52475303
5248   ROM_REGION( 0x0000084, "install_eeprom", 0 ) /* security cart eeprom */
5304   ROM_REGION( 0x0000084, "cassette:game:eeprom", 0 )
52495305   ROM_LOAD( "gca18jaa.u1",  0x000000, 0x000084, CRC(c9197f67) SHA1(8e95a89008f756a79295f2cb557c39efca1351e7) )
52505306
5251   ROM_REGION( 0x000008, "install_id", 0 ) /* security cart id */
5307   ROM_REGION( 0x000008, "cassette:game:id", 0 )
52525308   ROM_LOAD( "gca18jaa.u6",  0x000000, 0x000008, CRC(ce84419e) SHA1(839e8ee080ecfc79021a06417d930e8b32dfc6a1) )
52535309
52545310   DISK_REGION( "cdrom0" )
r23300r23301
52755331GAME( 1999, ddra,      dstage,   ddr,        ddr,       ksys573_state, ddr,      ROT0, "Konami", "Dance Dance Revolution (GN845 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
52765332GAME( 1998, fbait2bc,  sys573,   fbaitbc,    fbaitbc,   driver_device, 0,        ROT0, "Konami", "Fisherman's Bait 2 - A Bass Challenge (GE865 VER. UAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
52775333GAME( 1998, bassang2,  fbait2bc, fbaitbc,    fbaitbc,   driver_device, 0,        ROT0, "Konami", "Bass Angler 2 (GE865 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
5278GAME( 1998, hyperbbc,  sys573,   konami573,  hyperbbc,  driver_device, 0,        ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
5279GAME( 1998, hyperbbca, hyperbbc, konami573,  hyperbbc,  driver_device, 0,        ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
5334GAME( 1998, hyperbbc,  sys573,   hyperbbc,   hyperbbc,  ksys573_state, hyperbbc, ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
5335GAME( 1998, hyperbbca, hyperbbc, hyperbbc,   hyperbbc,  ksys573_state, hyperbbc, ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
52805336GAME( 1999, gchgchmp,  sys573,   gchgchmp,   gchgchmp,  driver_device, 0,        ROT0, "Konami", "Gachaga Champ (GE877 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
52815337GAME( 1999, drmn,      sys573,   drmn,       drmn,      ksys573_state, drmn,     ROT0, "Konami", "DrumMania (GQ881 VER. JAD)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
52825338GAME( 1999, gtrfrks,   sys573,   gtrfrks,    gtrfrks,   driver_device, 0,        ROT0, "Konami", "Guitar Freaks (GQ886 VER. EAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
trunk/src/mame/machine/k573cass.c
r23300r23301
1/*
2 * Konami 573 Security Cassette
3 *
4 */
5
16#include "k573cass.h"
27
3const device_type KONAMI573CASSETTE = &device_creator<konami573cassette_device>;
8WRITE_LINE_MEMBER(konami573_cassette_interface::write_line_d0)
9{
10}
411
5konami573cassette_device::konami573cassette_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
6   psxsiodev_device(mconfig, KONAMI573CASSETTE, "KONAMI 573 CASSETTE", tag, owner, clock, "konami573", __FILE__)
12WRITE_LINE_MEMBER(konami573_cassette_interface::write_line_d4)
713{
814}
915
10void konami573cassette_device::device_start()
16WRITE_LINE_MEMBER(konami573_cassette_interface::write_line_d5)
1117{
18}
19
20WRITE_LINE_MEMBER(konami573_cassette_interface::write_line_d6)
21{
22}
23
24WRITE_LINE_MEMBER(konami573_cassette_interface::write_line_d7)
25{
26}
27
28WRITE_LINE_MEMBER(konami573_cassette_interface::write_line_zs01_sda)
29{
30}
31
32READ_LINE_MEMBER(konami573_cassette_interface::read_line_dsr)
33{
34   return 1;
35}
36
37READ_LINE_MEMBER(konami573_cassette_interface::read_line_ds2401)
38{
39   return 0;
40}
41
42READ_LINE_MEMBER(konami573_cassette_interface::read_line_adc083x_do)
43{
44   return 0;
45}
46
47READ_LINE_MEMBER(konami573_cassette_interface::read_line_adc083x_sars)
48{
49   return 0;
50}
51
52
53const device_type KONAMI573_CASSETTE_X = &device_creator<konami573_cassette_x_device>;
54
55konami573_cassette_x_device::konami573_cassette_x_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
56   device_t(mconfig, KONAMI573_CASSETTE_X, "KONAMI 573 CASSETTE X", tag, owner, clock, "sys573", __FILE__),
57   device_slot_card_interface(mconfig, *this),
58   m_x76f041(*this, "eeprom")
59{
60}
61
62konami573_cassette_x_device::konami573_cassette_x_device(const machine_config &mconfig, const device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) :
63   device_t(mconfig, type, name, tag, owner, clock, shortname, __FILE__),
64   device_slot_card_interface(mconfig, *this),
65   m_x76f041(*this, "eeprom")
66{
67}
68
69static MACHINE_CONFIG_FRAGMENT( cassx )
70   MCFG_X76F041_ADD( "eeprom" )
71MACHINE_CONFIG_END
72
73machine_config_constructor konami573_cassette_x_device::device_mconfig_additions() const
74{
75   return MACHINE_CONFIG_NAME( cassx );
76}
77
78void konami573_cassette_x_device::device_start()
79{
80}
81
82WRITE_LINE_MEMBER(konami573_cassette_x_device::write_line_d0)
83{
84   m_x76f041->sda_w( state );
85}
86
87WRITE_LINE_MEMBER(konami573_cassette_x_device::write_line_d1)
88{
89   m_x76f041->scl_w( state );
90}
91
92WRITE_LINE_MEMBER(konami573_cassette_x_device::write_line_d2)
93{
94   m_x76f041->cs_w( state );
95}
96
97WRITE_LINE_MEMBER(konami573_cassette_x_device::write_line_d3)
98{
99   m_x76f041->rst_w( state );
100}
101
102READ_LINE_MEMBER(konami573_cassette_x_device::read_line_secflash_sda)
103{
104   return m_x76f041->sda_r();
105}
106
107
108const device_type KONAMI573_CASSETTE_XI = &device_creator<konami573_cassette_xi_device>;
109
110konami573_cassette_xi_device::konami573_cassette_xi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
111   konami573_cassette_x_device(mconfig, KONAMI573_CASSETTE_XI, "KONAMI 573 CASSETTE XI", tag, owner, clock, "sys573", __FILE__),
112   m_ds2401(*this, "id"),
113   m_adc0838(*this, "adc0838")
114{
115}
116
117static MACHINE_CONFIG_FRAGMENT( cassxi )
118   MCFG_X76F041_ADD( "eeprom" )
119   MCFG_DS2401_ADD( "id" )
120   MCFG_DEVICE_ADD( "adc0838", ADC0838, 0 )
121MACHINE_CONFIG_END
122
123machine_config_constructor konami573_cassette_xi_device::device_mconfig_additions() const
124{
125   return MACHINE_CONFIG_NAME( cassxi );
126}
127
128WRITE_LINE_MEMBER(konami573_cassette_xi_device::write_line_d0)
129{
130   konami573_cassette_x_device::write_line_d0( state ); // shares line with x76f041 sda
131
132   m_adc0838->cs_write( state );
133}
134
135WRITE_LINE_MEMBER(konami573_cassette_xi_device::write_line_d1)
136{
137   konami573_cassette_x_device::write_line_d1( state ); // shares line with x76f041 scl
138
139   m_adc0838->clk_write( state );
140}
141
142WRITE_LINE_MEMBER(konami573_cassette_xi_device::write_line_d4)
143{
144   m_ds2401->write( !state );
145}
146
147WRITE_LINE_MEMBER(konami573_cassette_xi_device::write_line_d5)
148{
149   m_adc0838->di_write( state );
150}
151
152READ_LINE_MEMBER(konami573_cassette_xi_device::read_line_ds2401)
153{
154   return m_ds2401->read();
155}
156
157READ_LINE_MEMBER(konami573_cassette_xi_device::read_line_adc083x_do)
158{
159   return m_adc0838->do_read();
160}
161
162READ_LINE_MEMBER(konami573_cassette_xi_device::read_line_adc083x_sars)
163{
164   return m_adc0838->sars_read();
165}
166
167
168const device_type KONAMI573_CASSETTE_Y = &device_creator<konami573_cassette_y_device>;
169
170konami573_cassette_y_device::konami573_cassette_y_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
171   device_t(mconfig, KONAMI573_CASSETTE_Y, "KONAMI 573 CASSETTE Y", tag, owner, clock, "sys573", __FILE__),
172   device_slot_card_interface(mconfig, *this),
173   m_x76f100(*this, "eeprom"),
174   m_d0_handler(*this),
175   m_d1_handler(*this),
176   m_d2_handler(*this),
177   m_d3_handler(*this),
178   m_d4_handler(*this),
179   m_d5_handler(*this),
180   m_d6_handler(*this),
181   m_d7_handler(*this)
182{
183}
184
185konami573_cassette_y_device::konami573_cassette_y_device(const machine_config &mconfig, const device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) :
186   device_t(mconfig, type, name, tag, owner, clock, shortname, __FILE__),
187   device_slot_card_interface(mconfig, *this),
188   m_x76f100(*this, "eeprom"),
189   m_d0_handler(*this),
190   m_d1_handler(*this),
191   m_d2_handler(*this),
192   m_d3_handler(*this),
193   m_d4_handler(*this),
194   m_d5_handler(*this),
195   m_d6_handler(*this),
196   m_d7_handler(*this)
197{
198}
199
200static MACHINE_CONFIG_FRAGMENT( cassy )
201   MCFG_X76F100_ADD( "eeprom" )
202MACHINE_CONFIG_END
203
204machine_config_constructor konami573_cassette_y_device::device_mconfig_additions() const
205{
206   return MACHINE_CONFIG_NAME( cassy );
207}
208
209void konami573_cassette_y_device::device_start()
210{
211   m_d0_handler.resolve_safe();
212   m_d1_handler.resolve_safe();
213   m_d2_handler.resolve_safe();
214   m_d3_handler.resolve_safe();
215   m_d4_handler.resolve_safe();
216   m_d5_handler.resolve_safe();
217   m_d6_handler.resolve_safe();
218   m_d7_handler.resolve_safe();
219}
220
221READ_LINE_MEMBER(konami573_cassette_y_device::read_line_secflash_sda)
222{
223   return m_x76f100->sda_r();
224}
225
226WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d0)
227{
228   m_d0_handler( state );
229   m_x76f100->sda_w( state );
230}
231
232WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d1)
233{
234   m_d1_handler( state );
235   m_x76f100->scl_w( state );
236}
237
238WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d2)
239{
240   m_d2_handler( state );
241   m_x76f100->cs_w( state );
242}
243
244WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d3)
245{
246   m_d3_handler( state );
247   m_x76f100->rst_w( state );
248}
249
250WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d4)
251{
252   m_d4_handler( state );
253}
254
255WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d5)
256{
257   m_d5_handler( state );
258}
259
260WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d6)
261{
262   m_d6_handler( state );
263}
264
265WRITE_LINE_MEMBER(konami573_cassette_y_device::write_line_d7)
266{
267   m_d7_handler( state );
268}
269
270
271const device_type KONAMI573_CASSETTE_YI = &device_creator<konami573_cassette_yi_device>;
272
273konami573_cassette_yi_device::konami573_cassette_yi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
274   konami573_cassette_y_device(mconfig, KONAMI573_CASSETTE_YI, "KONAMI 573 CASSETTE YI", tag, owner, clock, "sys573", __FILE__),
275   m_ds2401(*this, "id")
276{
277}
278
279static MACHINE_CONFIG_FRAGMENT( cassyi )
280   MCFG_X76F100_ADD( "eeprom" )
281   MCFG_DS2401_ADD( "id" )
282MACHINE_CONFIG_END
283
284machine_config_constructor konami573_cassette_yi_device::device_mconfig_additions() const
285{
286   return MACHINE_CONFIG_NAME( cassyi );
287}
288
289WRITE_LINE_MEMBER(konami573_cassette_yi_device::write_line_d4)
290{
291   konami573_cassette_y_device::write_line_d4( state );
292
293   m_ds2401->write( !state );
294}
295
296READ_LINE_MEMBER(konami573_cassette_yi_device::read_line_ds2401)
297{
298   return m_ds2401->read();
299}
300
301
302const device_type KONAMI573_CASSETTE_ZI = &device_creator<konami573_cassette_zi_device>;
303
304konami573_cassette_zi_device::konami573_cassette_zi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
305   device_t(mconfig, KONAMI573_CASSETTE_ZI, "KONAMI 573 CASSETTE ZI", tag, owner, clock, "sys573", __FILE__),
306   device_slot_card_interface(mconfig, *this),
307   m_zs01(*this,"eeprom"),
308   m_ds2401(*this, "id")
309{
310}
311
312static MACHINE_CONFIG_FRAGMENT( casszi )
313   MCFG_ZS01_ADD( "eeprom", "id" )
314   MCFG_DS2401_ADD( "id" )
315MACHINE_CONFIG_END
316
317machine_config_constructor konami573_cassette_zi_device::device_mconfig_additions() const
318{
319   return MACHINE_CONFIG_NAME( casszi );
320}
321
322void konami573_cassette_zi_device::device_start()
323{
324}
325
326WRITE_LINE_MEMBER(konami573_cassette_zi_device::write_line_d1)
327{
328   m_zs01->scl_w( state );
329}
330
331WRITE_LINE_MEMBER(konami573_cassette_zi_device::write_line_d2)
332{
333   m_zs01->cs_w( state );
334}
335
336WRITE_LINE_MEMBER(konami573_cassette_zi_device::write_line_d3)
337{
338   m_zs01->rst_w( state );
339}
340
341WRITE_LINE_MEMBER(konami573_cassette_zi_device::write_line_d4)
342{
343   m_ds2401->write( !state );
344}
345
346WRITE_LINE_MEMBER(konami573_cassette_zi_device::write_line_zs01_sda)
347{
348   m_zs01->sda_w( state );
349}
350
351READ_LINE_MEMBER(konami573_cassette_zi_device::read_line_ds2401)
352{
353   return m_ds2401->read();
354}
355
356READ_LINE_MEMBER(konami573_cassette_zi_device::read_line_secflash_sda)
357{
358   return m_zs01->sda_r();
359}
360
361
362const device_type KONAMI573_CASSETTE_SLOT_SERIAL = &device_creator<konami573_cassette_slot_serial_device>;
363
364konami573_cassette_slot_serial_device::konami573_cassette_slot_serial_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
365   psxsiodev_device(mconfig, KONAMI573_CASSETTE_SLOT, "KONAMI 573 CASSETTE SLOT (SERIAL)", tag, owner, clock, "sys573", __FILE__)
366{
367}
368
369void konami573_cassette_slot_serial_device::device_start()
370{
12371   psxsiodev_device::device_start();
372}
13373
14   data_out( PSX_SIO_IN_DSR, PSX_SIO_IN_DSR );
374void konami573_cassette_slot_serial_device::_data_out( int data, int mask )
375{
376   data_out( data, mask );
15377}
16378
17void konami573cassette_device::data_in( int data, int mask )
379void konami573_cassette_slot_serial_device::data_in( int data, int mask )
18380{
19381}
382
383
384const device_type KONAMI573_CASSETTE_SLOT = &device_creator<konami573_cassette_slot_device>;
385
386konami573_cassette_slot_device::konami573_cassette_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
387   device_t(mconfig, KONAMI573_CASSETTE_SLOT, "KONAMI 573 CASSETTE SLOT", tag, owner, clock, "sys573", __FILE__),
388   device_slot_interface(mconfig, *this),
389   m_serial(*this, ":maincpu:sio1:cassette") /// HACK: this shouldn't know where the actual slot is.
390{
391}
392
393void konami573_cassette_slot_device::device_start()
394{
395   m_cassette = dynamic_cast<konami573_cassette_interface *>(get_card_device());
396
397   if( m_cassette != NULL && m_cassette->read_line_dsr() )
398   {
399      m_serial->_data_out( PSX_SIO_IN_DSR, PSX_SIO_IN_DSR );
400   }
401   else
402   {
403      m_serial->_data_out( PSX_SIO_IN_DSR, 0 );
404   }
405}
406
407WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d0)
408{
409   if( m_cassette )
410   {
411      m_cassette->write_line_d0( state );
412   }
413}
414
415WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d1)
416{
417   if( m_cassette )
418   {
419      m_cassette->write_line_d1( state );
420   }
421}
422
423WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d2)
424{
425   if( m_cassette )
426   {
427      m_cassette->write_line_d2( state );
428   }
429}
430
431WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d3)
432{
433   if( m_cassette )
434   {
435      m_cassette->write_line_d3( state );
436   }
437}
438
439WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d4)
440{
441   if( m_cassette )
442   {
443      m_cassette->write_line_d4( state );
444   }
445}
446
447WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d5)
448{
449   if( m_cassette )
450   {
451      m_cassette->write_line_d5( state );
452   }
453}
454
455WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d6)
456{
457   if( m_cassette )
458   {
459      m_cassette->write_line_d6( state );
460   }
461}
462
463WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_d7)
464{
465   if( m_cassette )
466   {
467      m_cassette->write_line_d7( state );
468   }
469}
470
471WRITE_LINE_MEMBER(konami573_cassette_slot_device::write_line_zs01_sda)
472{
473   if( m_cassette )
474   {
475      m_cassette->write_line_zs01_sda( state );
476   }
477}
478
479READ_LINE_MEMBER(konami573_cassette_slot_device::read_line_ds2401)
480{
481   if( m_cassette )
482   {
483      return m_cassette->read_line_ds2401();
484   }
485
486   return 0;
487}
488
489READ_LINE_MEMBER(konami573_cassette_slot_device::read_line_secflash_sda)
490{
491   if( m_cassette )
492   {
493      return m_cassette->read_line_secflash_sda();
494   }
495
496   return 0;
497}
498
499READ_LINE_MEMBER(konami573_cassette_slot_device::read_line_adc083x_do)
500{
501   if( m_cassette )
502   {
503      return m_cassette->read_line_adc083x_do();
504   }
505
506   return 0;
507}
508
509READ_LINE_MEMBER(konami573_cassette_slot_device::read_line_adc083x_sars)
510{
511   if( m_cassette )
512   {
513      return m_cassette->read_line_adc083x_sars();
514   }
515
516   return 0;
517}
trunk/src/mame/machine/k573cass.h
r23300r23301
1/*
2 * Konami 573 Security Cassette
3 *
4 */
5
16#pragma once
27
38#ifndef __K573CASS_H__
r23300r23301
49#define __K573CASS_H__
510
611#include "cpu/psx/siodev.h"
12#include "machine/adc083x.h"
13#include "machine/ds2401.h"
14#include "machine/x76f041.h"
15#include "machine/x76f100.h"
16#include "machine/zs01.h"
717
8extern const device_type KONAMI573CASSETTE;
18class konami573_cassette_interface
19{
20public:
21   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d0);
22   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d1) = 0;
23   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d2) = 0;
24   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d3) = 0;
25   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d4);
26   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d5);
27   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d6);
28   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d7);
29   virtual DECLARE_WRITE_LINE_MEMBER(write_line_zs01_sda);
30   virtual DECLARE_READ_LINE_MEMBER(read_line_ds2401);
31   virtual DECLARE_READ_LINE_MEMBER(read_line_secflash_sda) = 0;
32   virtual DECLARE_READ_LINE_MEMBER(read_line_dsr);
33   virtual DECLARE_READ_LINE_MEMBER(read_line_adc083x_do);
34   virtual DECLARE_READ_LINE_MEMBER(read_line_adc083x_sars);
35};
936
10class konami573cassette_device : public psxsiodev_device
37
38extern const device_type KONAMI573_CASSETTE_X;
39
40class konami573_cassette_x_device: public device_t,
41   public konami573_cassette_interface,
42   public device_slot_card_interface
1143{
1244public:
13   konami573cassette_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
45   konami573_cassette_x_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
46   konami573_cassette_x_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock,const char *shortname = "", const char *source = __FILE__);
1447
48   virtual DECLARE_READ_LINE_MEMBER(read_line_secflash_sda);
49   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d0);
50   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d1);
51   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d2);
52   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d3);
53
1554protected:
1655   virtual void device_start();
56   virtual machine_config_constructor device_mconfig_additions() const;
1757
1858private:
59   required_device<x76f041_device> m_x76f041;
60};
61
62
63extern const device_type KONAMI573_CASSETTE_XI;
64
65class konami573_cassette_xi_device: public konami573_cassette_x_device
66{
67public:
68   konami573_cassette_xi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
69
70   virtual DECLARE_READ_LINE_MEMBER(read_line_ds2401);
71   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d4);
72
73   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d0);
74   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d1);
75   virtual DECLARE_READ_LINE_MEMBER(read_line_adc083x_do);
76   virtual DECLARE_READ_LINE_MEMBER(read_line_adc083x_sars);
77   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d5);
78
79protected:
80   virtual machine_config_constructor device_mconfig_additions() const;
81
82private:
83   required_device<ds2401_device> m_ds2401;
84   required_device<adc0838_device> m_adc0838;
85};
86
87
88extern const device_type KONAMI573_CASSETTE_Y;
89
90
91#define MCFG_KONAMI573_CASSETTE_Y_D0_HANDLER(_devcb) \
92   devcb = &konami573_cassette_y_device::set_d0_handler(*device, DEVCB2_##_devcb);
93
94#define MCFG_KONAMI573_CASSETTE_Y_D1_HANDLER(_devcb) \
95   devcb = &konami573_cassette_y_device::set_d1_handler(*device, DEVCB2_##_devcb);
96
97#define MCFG_KONAMI573_CASSETTE_Y_D2_HANDLER(_devcb) \
98   devcb = &konami573_cassette_y_device::set_d2_handler(*device, DEVCB2_##_devcb);
99
100#define MCFG_KONAMI573_CASSETTE_Y_D3_HANDLER(_devcb) \
101   devcb = &konami573_cassette_y_device::set_d3_handler(*device, DEVCB2_##_devcb);
102
103#define MCFG_KONAMI573_CASSETTE_Y_D4_HANDLER(_devcb) \
104   devcb = &konami573_cassette_y_device::set_d4_handler(*device, DEVCB2_##_devcb);
105
106#define MCFG_KONAMI573_CASSETTE_Y_D5_HANDLER(_devcb) \
107   devcb = &konami573_cassette_y_device::set_d5_handler(*device, DEVCB2_##_devcb);
108
109#define MCFG_KONAMI573_CASSETTE_Y_D6_HANDLER(_devcb) \
110   devcb = &konami573_cassette_y_device::set_d6_handler(*device, DEVCB2_##_devcb);
111
112#define MCFG_KONAMI573_CASSETTE_Y_D7_HANDLER(_devcb) \
113   devcb = &konami573_cassette_y_device::set_d7_handler(*device, DEVCB2_##_devcb);
114
115class konami573_cassette_y_device: public device_t,
116   public konami573_cassette_interface,
117   public device_slot_card_interface
118{
119public:
120   konami573_cassette_y_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
121   konami573_cassette_y_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock,const char *shortname = "", const char *source = __FILE__);
122
123   // static configuration helpers
124   template<class _Object> static devcb2_base &set_d0_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d0_handler.set_callback(object); }
125   template<class _Object> static devcb2_base &set_d1_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d1_handler.set_callback(object); }
126   template<class _Object> static devcb2_base &set_d2_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d2_handler.set_callback(object); }
127   template<class _Object> static devcb2_base &set_d3_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d3_handler.set_callback(object); }
128   template<class _Object> static devcb2_base &set_d4_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d4_handler.set_callback(object); }
129   template<class _Object> static devcb2_base &set_d5_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d5_handler.set_callback(object); }
130   template<class _Object> static devcb2_base &set_d6_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d6_handler.set_callback(object); }
131   template<class _Object> static devcb2_base &set_d7_handler(device_t &device, _Object object) { return downcast<konami573_cassette_y_device &>(device).m_d7_handler.set_callback(object); }
132
133   virtual DECLARE_READ_LINE_MEMBER(read_line_secflash_sda);
134   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d0);
135   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d1);
136   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d2);
137   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d3);
138   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d4);
139   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d5);
140   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d6);
141   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d7);
142
143protected:
144   virtual void device_start();
145   virtual machine_config_constructor device_mconfig_additions() const;
146
147private:
148   required_device<x76f100_device> m_x76f100;
149   devcb2_write_line m_d0_handler;
150   devcb2_write_line m_d1_handler;
151   devcb2_write_line m_d2_handler;
152   devcb2_write_line m_d3_handler;
153   devcb2_write_line m_d4_handler;
154   devcb2_write_line m_d5_handler;
155   devcb2_write_line m_d6_handler;
156   devcb2_write_line m_d7_handler;
157};
158
159
160extern const device_type KONAMI573_CASSETTE_YI;
161
162class konami573_cassette_yi_device: public konami573_cassette_y_device
163{
164public:
165   konami573_cassette_yi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
166
167   virtual DECLARE_READ_LINE_MEMBER(read_line_ds2401);
168   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d4);
169
170protected:
171   virtual machine_config_constructor device_mconfig_additions() const;
172
173private:
174   required_device<ds2401_device> m_ds2401;
175};
176
177
178extern const device_type KONAMI573_CASSETTE_ZI;
179
180class konami573_cassette_zi_device: public device_t,
181   public konami573_cassette_interface,
182   public device_slot_card_interface
183{
184public:
185   konami573_cassette_zi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
186
187   virtual DECLARE_READ_LINE_MEMBER(read_line_ds2401);
188   virtual DECLARE_READ_LINE_MEMBER(read_line_secflash_sda);
189   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d4);
190   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d1);
191   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d2);
192   virtual DECLARE_WRITE_LINE_MEMBER(write_line_d3);
193   virtual DECLARE_WRITE_LINE_MEMBER(write_line_zs01_sda);
194
195protected:
196   virtual void device_start();
197   virtual machine_config_constructor device_mconfig_additions() const;
198
199private:
200   required_device<zs01_device> m_zs01;
201   required_device<ds2401_device> m_ds2401;
202};
203
204
205extern const device_type KONAMI573_CASSETTE_SLOT_SERIAL;
206
207class konami573_cassette_slot_serial_device : public psxsiodev_device
208{
209public:
210   konami573_cassette_slot_serial_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
211
212   void _data_out( int data, int mask );
213
214protected:
215   virtual void device_start();
216
217private:
19218   virtual void data_in( int data, int mask );
20219};
21220
221
222extern const device_type KONAMI573_CASSETTE_SLOT;
223
224class konami573_cassette_slot_device : public device_t,
225   public device_slot_interface
226{
227public:
228   konami573_cassette_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
229
230   DECLARE_WRITE_LINE_MEMBER(write_line_d0);
231   DECLARE_WRITE_LINE_MEMBER(write_line_d1);
232   DECLARE_WRITE_LINE_MEMBER(write_line_d2);
233   DECLARE_WRITE_LINE_MEMBER(write_line_d3);
234   DECLARE_WRITE_LINE_MEMBER(write_line_d4);
235   DECLARE_WRITE_LINE_MEMBER(write_line_d5);
236   DECLARE_WRITE_LINE_MEMBER(write_line_d6);
237   DECLARE_WRITE_LINE_MEMBER(write_line_d7);
238   DECLARE_WRITE_LINE_MEMBER(write_line_zs01_sda);
239   DECLARE_READ_LINE_MEMBER(read_line_ds2401);
240   DECLARE_READ_LINE_MEMBER(read_line_secflash_sda);
241   DECLARE_READ_LINE_MEMBER(read_line_adc083x_do);
242   DECLARE_READ_LINE_MEMBER(read_line_adc083x_sars);
243
244protected:
245   virtual void device_start();
246
247private:
248   required_device<konami573_cassette_slot_serial_device> m_serial;
249   konami573_cassette_interface *m_cassette;
250};
251
252
22253#endif
trunk/src/mame/machine/zs01.c
r23300r23301
99
1010#include "emu.h"
1111#include "machine/zs01.h"
12#include "machine/ds2401.h"
1312
1413#define VERBOSE_LEVEL 0
1514
r23300r23301
5352   save_item(NAME(response_to_reset));
5453   save_item(NAME(command_key));
5554   save_item(NAME(data_key));
55
56   m_ds2401 = siblingdevice<ds2401_device>(ds2401_tag);
57   if( m_ds2401 == NULL )
58   {
59      logerror( "ds2401 '%s' not found\n", ds2401_tag );
60   }
5661}
5762
5863void zs01_device::device_reset()
r23300r23301
412417                        switch(write_buffer[1]) {
413418                        case 0xfd: {
414419                           /* TODO: use read/write to talk to the ds2401, which will require a timer. */
415                           ds2401_device *ds2401 = machine().device<ds2401_device>(ds2401_tag);
416                           for(int i = 0; i < SIZE_DATA_BUFFER; i++)
417                              read_buffer[2+i] = ds2401->direct_read(SIZE_DATA_BUFFER-i-1);
420                           if( m_ds2401 != NULL )
421                              for(int i = 0; i < SIZE_DATA_BUFFER; i++)
422                                 read_buffer[2+i] = m_ds2401->direct_read(SIZE_DATA_BUFFER-i-1);
418423                           break;
419424                        }
420425                        default:
trunk/src/mame/machine/zs01.h
r23300r23301
88#ifndef __ZS01_H__
99#define __ZS01_H__
1010
11#include "machine/ds2401.h"
12#include "machine/secflash.h"
13
1114#define MCFG_ZS01_ADD(_tag, ds2401_tag) \
1215   MCFG_DEVICE_ADD(_tag, ZS01, 0) \
1316   zs01_device::static_set_ds2401_tag(*device, ds2401_tag);
14#include "machine/secflash.h"
1517
1618class zs01_device : public device_secure_serial_flash
1719{
r23300r23301
8284
8385private:
8486   inline void ATTR_PRINTF(3,4) verboselog(int n_level, const char *s_fmt, ...);
87
88   ds2401_device *m_ds2401;
8589};
8690
8791

Previous 199869 Revisions Next


© 1997-2024 The MAME Team