diff options
Diffstat (limited to 'src/mame/drivers/mpu4.cpp')
-rw-r--r-- | src/mame/drivers/mpu4.cpp | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/src/mame/drivers/mpu4.cpp b/src/mame/drivers/mpu4.cpp index dd61303fc78..2be04458a11 100644 --- a/src/mame/drivers/mpu4.cpp +++ b/src/mame/drivers/mpu4.cpp @@ -2111,58 +2111,6 @@ void mpu4_state::init_m4default_big() } -uint8_t mpu4_state::crystal_sound_r() -{ - return machine().rand(); -} -//this may be a YMZ280B -void mpu4_state::crystal_sound_w(uint8_t data) -{ - logerror("crystal_sound_w %02x\n",data); -} - -void mpu4_state::init_m_frkstn() -{ - address_space &space = m_maincpu->space(AS_PROGRAM); - init_m4default(); - space.install_read_handler(0x0880, 0x0880, read8smo_delegate(*this, FUNC(mpu4_state::crystal_sound_r))); - space.install_write_handler(0x0881, 0x0881, write8smo_delegate(*this, FUNC(mpu4_state::crystal_sound_w))); -} - -// thanks to Project Amber for descramble information -static void descramble_crystal( uint8_t* region, int start, int end, uint8_t extra_xor) -{ - for (int i=start;i<end;i++) - { - uint8_t x = region[i]; - switch (i & 0x58) - { - case 0x00: // same as 0x08 - case 0x08: x = bitswap<8>( x^0xca , 3,2,1,0,7,4,6,5 ); break; - case 0x10: x = bitswap<8>( x^0x30 , 3,0,4,6,1,5,7,2 ); break; - case 0x18: x = bitswap<8>( x^0x89 , 4,1,2,5,7,0,6,3 ); break; - case 0x40: x = bitswap<8>( x^0x14 , 6,1,4,3,2,5,0,7 ); break; - case 0x48: x = bitswap<8>( x^0x40 , 1,0,3,2,5,4,7,6 ); break; - case 0x50: x = bitswap<8>( x^0xcb , 3,2,1,0,7,6,5,4 ); break; - case 0x58: x = bitswap<8>( x^0xc0 , 2,3,6,0,5,1,7,4 ); break; - } - region[i] = x ^ extra_xor; - } -} - - -void mpu4_state::init_crystal() -{ - init_m_frkstn(); - descramble_crystal(memregion( "maincpu" )->base(), 0x0000, 0x10000, 0x00); -} - -void mpu4_state::init_crystali() -{ - init_m_frkstn(); - descramble_crystal(memregion( "maincpu" )->base(), 0x0000, 0x10000, 0xff); // invert after decrypt?! -} - /* generate a 50 Hz signal (based on an RC time) */ TIMER_DEVICE_CALLBACK_MEMBER(mpu4_state::gen_50hz) { |