Previous 199869 Revisions Next

r26357 Friday 22nd November, 2013 at 13:11:59 UTC by smf
Added the SHA1 for System 573 700B01 now that we have a dump. It currently expects a different response from the H8 at bootup than the other BIOS versions, so the data is stored in a fake rom until it's HLE'd better of we get a dump of the H8 internal rom [smf, innocent2k, anthonyoftga]
[src/mame/drivers]ksys573.c

trunk/src/mame/drivers/ksys573.c
r26356r26357
512512      m_pads(*this, "PADS" ),
513513      m_psxirq(*this, ":maincpu:irq" ),
514514      m_ata(*this, "ata" ),
515      m_h8_response(*this, "h8_response"),
515516      m_maincpu(*this, "maincpu" ),
516517      m_ram(*this, "maincpu:ram" ),
517518      m_flashbank(*this, "flashbank" ),
r26356r26357
549550   DECLARE_DRIVER_INIT( hyperbbc );
550551   DECLARE_DRIVER_INIT( drmn );
551552   DECLARE_MACHINE_RESET( konami573 );
553   WRITE_LINE_MEMBER( h8_clk_w );
554   DECLARE_READ_LINE_MEMBER( h8_d0_r );
555   DECLARE_READ_LINE_MEMBER( h8_d1_r );
556   DECLARE_READ_LINE_MEMBER( h8_d2_r );
557   DECLARE_READ_LINE_MEMBER( h8_d3_r );
552558   DECLARE_WRITE_LINE_MEMBER( gtrfrks_lamps_b7 );
553559   DECLARE_WRITE_LINE_MEMBER( gtrfrks_lamps_b6 );
554560   DECLARE_WRITE_LINE_MEMBER( gtrfrks_lamps_b5 );
r26356r26357
613619   UINT32 m_control;
614620   UINT16 m_n_security_control;
615621
622   required_memory_region m_h8_response;
623   int m_h8_index;
624   int m_h8_clk;
625
616626   UINT8 m_gx700pwbf_output_data[ 4 ];
617627   void ( ksys573_state::*m_gx700pwfbf_output_callback )( address_space &space, ATTR_UNUSED offs_t offset, ATTR_UNUSED UINT8 data, ATTR_UNUSED UINT8 mem_mask );
618628
r26356r26357
859869MACHINE_RESET_MEMBER( ksys573_state,konami573 )
860870{
861871   update_disc();
872
873   m_h8_index = 0;
874   m_h8_clk = 0;
862875}
863876
864877void ksys573_state::sys573_vblank( screen_device &screen, bool vblank_state )
r26356r26357
905918   }
906919}
907920
921// H8 check at startup (JVS related)
922
923WRITE_LINE_MEMBER( ksys573_state::h8_clk_w )
924{
925   if( m_h8_clk != state )
926   {
927      if( state )
928      {
929         if( m_h8_index < m_h8_response->bytes() - 1 )
930         {
931            m_h8_index++;
932         }
933         printf( "%d\n", m_h8_index );
934      }
935
936      m_h8_clk = state;
937   }
938}
939
940READ_LINE_MEMBER( ksys573_state::h8_d0_r )
941{
942   return ( m_h8_response->base()[ m_h8_index ] >> 0 ) & 1;
943}
944
945READ_LINE_MEMBER( ksys573_state::h8_d1_r )
946{
947   return ( m_h8_response->base()[ m_h8_index ] >> 1 ) & 1;
948}
949
950READ_LINE_MEMBER( ksys573_state::h8_d2_r )
951{
952   return ( m_h8_response->base()[ m_h8_index ] >> 2 ) & 1;
953}
954
955READ_LINE_MEMBER( ksys573_state::h8_d3_r )
956{
957   return ( m_h8_response->base()[ m_h8_index ] >> 3 ) & 1;
958}
959
960
908961/*
909962GE765-PWB(B)A
910963
r26356r26357
25102563   PORT_BIT( 0x00000002, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER( "adc0834", adc083x_device, cs_write )
25112564   PORT_BIT( 0x00000004, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER( "adc0834", adc083x_device, clk_write )
25122565   PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER( "adc0834", adc083x_device, di_write )
2566   PORT_BIT( 0x00000100, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER( DEVICE_SELF, ksys573_state, h8_clk_w )
25132567
25142568   PORT_START( "IN1" )
25152569   PORT_DIPNAME( 0x00000001, 0x00000001, "Unused 1" ) PORT_DIPLOCATION( "DIP SW:1" )
r26356r26357
25242578   PORT_DIPNAME( 0x00000008, 0x00000000, "Start Up Device" ) PORT_DIPLOCATION( "DIP SW:4" )
25252579   PORT_DIPSETTING(          0x00000008, "CD-ROM Drive" )
25262580   PORT_DIPSETTING(          0x00000000, "Flash ROM" )
2527   PORT_BIT( 0x00000030, IP_ACTIVE_HIGH, IPT_SPECIAL )
2528   PORT_BIT( 0x000000c0, IP_ACTIVE_LOW, IPT_SPECIAL )
2581   PORT_BIT( 0x00000010, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER( DEVICE_SELF, ksys573_state, h8_d0_r )
2582   PORT_BIT( 0x00000020, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER( DEVICE_SELF, ksys573_state, h8_d1_r )
2583   PORT_BIT( 0x00000040, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER( DEVICE_SELF, ksys573_state, h8_d2_r )
2584   PORT_BIT( 0x00000080, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER( DEVICE_SELF, ksys573_state, h8_d3_r )
25292585   PORT_BIT( 0x00000100, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER( "cassette", konami573_cassette_slot_device, read_line_adc083x_do )
25302586   PORT_BIT( 0x00000200, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER( "cassette", konami573_cassette_slot_device, read_line_adc083x_sars )
25312587//  PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_UNKNOWN )
r26356r26357
25682624   PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER( "cassette", konami573_cassette_slot_device, write_line_zs01_sda )
25692625
25702626   PORT_START( "IN2" )
2571   PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNKNOWN )
2627   PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_UNKNOWN )
25722628   PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER( 1 )
25732629   PORT_BIT( 0x00000200, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER( 1 )
25742630   PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER( 1 )
r26356r26357
29633019   ROM_SYSTEM_BIOS( 0, "std",        "Standard" ) \
29643020   ROMX_LOAD( "700a01.22g",   0x0000000, 0x080000, CRC(11812ef8) SHA1(e1284add4aaddd5337bd7f4e27614460d52b5b48), ROM_BIOS(1) ) \
29653021   ROM_SYSTEM_BIOS( 1, "gchgchmp",   "Found on Gachagachamp" ) \
2966   ROMX_LOAD( "700_a01.22g",  0x000000,  0x080000, CRC(39ebb0ca) SHA1(9aab8c637dd2be84d79007e52f108abe92bf29dd), ROM_BIOS(2) ) \
3022   ROMX_LOAD( "700a01(gchgchmp).22g",  0x000000,  0x080000, CRC(39ebb0ca) SHA1(9aab8c637dd2be84d79007e52f108abe92bf29dd), ROM_BIOS(2) ) \
29673023   ROM_SYSTEM_BIOS( 2, "dsem2",      "Found on Dancing Stage Euro Mix 2" ) \
2968   ROMX_LOAD( "700b01.22g",   0x0000000, 0x080000, CRC(6cf852af) NO_DUMP, ROM_BIOS(3) )
3024   ROMX_LOAD( "700b01.22g",   0x0000000, 0x080000, CRC(6cf852af) SHA1(a2421d0a494892c0e71003c96995ce8f945064dd), ROM_BIOS(3) ) \
3025   ROM_REGION( 0x40, "h8_response", 0 ) \
3026   ROMX_LOAD( "h8a01.bin",    0x000000, 0x000040, CRC(131e0359) SHA1(967f66578ebc0cf6b044d71af09b59bce1f4a1d0), ROM_BIOS(1) ) \
3027   ROMX_LOAD( "h8a01.bin",    0x000000, 0x000040, CRC(131e0359) SHA1(967f66578ebc0cf6b044d71af09b59bce1f4a1d0), ROM_BIOS(2) ) \
3028   ROMX_LOAD( "h8b01.bin",    0x000000, 0x000040, CRC(508b057d) SHA1(779177e6312ef272483eeb64a5e84bbae6e301f2), ROM_BIOS(3) )
29693029
29703030// BIOS
29713031ROM_START( sys573 )

Previous 199869 Revisions Next


© 1997-2024 The MAME Team