diff options
Diffstat (limited to 'src/mame/drivers/ddenlovr.c')
-rw-r--r-- | src/mame/drivers/ddenlovr.c | 179 |
1 files changed, 118 insertions, 61 deletions
diff --git a/src/mame/drivers/ddenlovr.c b/src/mame/drivers/ddenlovr.c index d0ace5d741e..89d4ae00fc7 100644 --- a/src/mame/drivers/ddenlovr.c +++ b/src/mame/drivers/ddenlovr.c @@ -110,8 +110,6 @@ Notes: #include "cpu/m68000/m68000.h" #include "cpu/z80/z80.h" #include "sound/ay8910.h" -#include "sound/okim6295.h" -#include "sound/2413intf.h" #include "machine/msm6242.h" #include "machine/nvram.h" #include "includes/dynax.h" @@ -153,8 +151,70 @@ class ddenlovr_state : public dynax_state { public: ddenlovr_state(const machine_config &mconfig, device_type type, const char *tag) - : dynax_state(mconfig, type, tag) - { } + : dynax_state(mconfig, type, tag), + m_dsw_sel16(*this, "dsw_sel16"), + m_protection1(*this, "protection1"), + m_protection2(*this, "protection2") { } + + + optional_shared_ptr<UINT16> m_dsw_sel16; + optional_shared_ptr<UINT16> m_protection1; + optional_shared_ptr<UINT16> m_protection2; + + + UINT8 * m_ddenlovr_pixmap[8]; + + /* blitter (TODO: merge with the dynax.h, where possible) */ + int m_extra_layers; + int m_ddenlovr_dest_layer; + int m_ddenlovr_blit_flip; + int m_ddenlovr_blit_x; + int m_ddenlovr_blit_y; + int m_ddenlovr_blit_address; + int m_ddenlovr_blit_pen; + int m_ddenlovr_blit_pen_mode; + int m_ddenlovr_blitter_irq_flag; + int m_ddenlovr_blitter_irq_enable; + int m_ddenlovr_rect_width; + int m_ddenlovr_rect_height; + int m_ddenlovr_clip_width; + int m_ddenlovr_clip_height; + int m_ddenlovr_line_length; + int m_ddenlovr_clip_ctrl; + int m_ddenlovr_clip_x; + int m_ddenlovr_clip_y; + int m_ddenlovr_scroll[8*2]; + int m_ddenlovr_priority; + int m_ddenlovr_priority2; + int m_ddenlovr_bgcolor; + int m_ddenlovr_bgcolor2; + int m_ddenlovr_layer_enable; + int m_ddenlovr_layer_enable2; + int m_ddenlovr_palette_base[8]; + int m_ddenlovr_palette_mask[8]; + int m_ddenlovr_transparency_pen[8]; + int m_ddenlovr_transparency_mask[8]; + int m_ddenlovr_blit_latch; + int m_ddenlovr_blit_pen_mask; // not implemented + int m_ddenlovr_blit_rom_bits; // usually 8, 16 in hanakanz + const int *m_ddenlovr_blit_commands; + int m_ddenlovr_blit_regs[2]; + + /* ddenlovr misc (TODO: merge with dynax.h, where possible) */ + UINT8 m_palram[0x200]; + int m_okibank; + UINT8 m_rongrong_blitter_busy_select; + UINT8 m_prot_val; + UINT16 m_prot_16; + UINT16 m_quiz365_protection[2]; + + UINT16 m_mmpanic_leds; /* A led for each of the 9 buttons */ + UINT8 m_funkyfig_lockout; + UINT8 m_romdata[2]; + int m_palette_index; + UINT8 m_hginga_rombank; + UINT8 m_mjflove_irq_cause; + UINT8 m_daimyojn_palette_sel; DECLARE_MACHINE_START(ddenlovr); DECLARE_MACHINE_RESET(ddenlovr); @@ -350,6 +410,20 @@ public: DECLARE_VIDEO_START(htengoku); DECLARE_WRITE8_MEMBER(htengoku_dsw_w); DECLARE_READ8_MEMBER(htengoku_dsw_r); + DECLARE_WRITE8_MEMBER( quizchq_oki_bank_w ); + DECLARE_WRITE16_MEMBER( ddenlovr_oki_bank_w ); + DECLARE_WRITE16_MEMBER( quiz365_oki_bank1_w ); + DECLARE_WRITE16_MEMBER( quiz365_oki_bank2_w ); + DECLARE_WRITE8_MEMBER( ddenlovr_select_w ); + DECLARE_READ8_MEMBER( quiz365_input_r ); + DECLARE_WRITE16_MEMBER( nettoqc_oki_bank_w ); + DECLARE_WRITE8_MEMBER( hanakanz_oki_bank_w ); + DECLARE_WRITE8_MEMBER( mjchuuka_oki_bank_w ); + DECLARE_READ8_MEMBER( hginga_dsw_r ); + DECLARE_WRITE8_MEMBER( mjflove_okibank_w ); + DECLARE_WRITE8_MEMBER( jongtei_okibank_w ); + DECLARE_READ8_MEMBER( seljan2_dsw_r ); + DECLARE_WRITE8_MEMBER( daimyojn_okibank_w ); void ddenlovr_flipscreen_w( UINT8 data ); void ddenlovr_blit_flip_w( UINT8 data ); @@ -368,20 +442,6 @@ public: void mmpanic_update_leds(); void mjchuuka_get_romdata(); UINT8 hgokou_player_r( int player ); - DECLARE_WRITE8_MEMBER( quizchq_oki_bank_w ); - DECLARE_WRITE16_MEMBER( ddenlovr_oki_bank_w ); - DECLARE_WRITE16_MEMBER( quiz365_oki_bank1_w ); - DECLARE_WRITE16_MEMBER( quiz365_oki_bank2_w ); - DECLARE_WRITE8_MEMBER( ddenlovr_select_w ); - DECLARE_READ8_MEMBER( quiz365_input_r ); - DECLARE_WRITE16_MEMBER( nettoqc_oki_bank_w ); - DECLARE_WRITE8_MEMBER( hanakanz_oki_bank_w ); - DECLARE_WRITE8_MEMBER( mjchuuka_oki_bank_w ); - DECLARE_READ8_MEMBER( hginga_dsw_r ); - DECLARE_WRITE8_MEMBER( mjflove_okibank_w ); - DECLARE_WRITE8_MEMBER( jongtei_okibank_w ); - DECLARE_READ8_MEMBER( seljan2_dsw_r ); - DECLARE_WRITE8_MEMBER( daimyojn_okibank_w ); }; VIDEO_START_MEMBER(ddenlovr_state,ddenlovr) @@ -1916,7 +1976,7 @@ static ADDRESS_MAP_START( quiz365_map, AS_PROGRAM, 16, ddenlovr_state ) AM_RANGE(0x300286, 0x300287) AM_READ(ddenlovr_gfxrom_r) // Video Chip AM_RANGE(0x3002c0, 0x3002c1) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)// Sound - AM_RANGE(0x300300, 0x300303) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) + AM_RANGE(0x300300, 0x300303) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff) AM_RANGE(0x300340, 0x30035f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff) AM_RANGE(0x300380, 0x300383) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff) AM_RANGE(0x300384, 0x300385) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff) @@ -1968,7 +2028,7 @@ static ADDRESS_MAP_START( ddenlovj_map, AS_PROGRAM, 16, ddenlovr_state ) AM_RANGE(0x300070, 0x300071) AM_READ(unk16_r) // ? must be 78 on startup (not necessary in ddlover) AM_RANGE(0x300080, 0x300083) AM_WRITE(ddenlovr_blitter_w) AM_RANGE(0x300086, 0x300087) AM_READ(ddenlovr_gfxrom_r) // Video Chip - AM_RANGE(0x3000c0, 0x3000c3) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) + AM_RANGE(0x3000c0, 0x3000c3) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff) AM_RANGE(0x300100, 0x30011f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff) AM_RANGE(0x300140, 0x300143) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff) AM_RANGE(0x300180, 0x300181) AM_READ_PORT("P1") @@ -2035,7 +2095,7 @@ static ADDRESS_MAP_START( ddenlovrk_map, AS_PROGRAM, 16, ddenlovr_state ) AM_RANGE(0xe00308, 0xe00309) AM_WRITE(ddenlovr_coincounter_0_w) // Coin Counters AM_RANGE(0xe0030c, 0xe0030d) AM_WRITE(ddenlovr_coincounter_1_w) // - AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) + AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff) AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff) AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff) AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff) @@ -2073,7 +2133,7 @@ static ADDRESS_MAP_START( ddenlovr_map, AS_PROGRAM, 16, ddenlovr_state ) AM_RANGE(0xe00308, 0xe00309) AM_WRITE(ddenlovr_coincounter_0_w) // Coin Counters AM_RANGE(0xe0030c, 0xe0030d) AM_WRITE(ddenlovr_coincounter_1_w) // - AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) + AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff) AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff) AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff) AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff) @@ -2147,7 +2207,7 @@ static ADDRESS_MAP_START( nettoqc_map, AS_PROGRAM, 16, ddenlovr_state ) AM_RANGE(0x300070, 0x300071) AM_READ(unk16_r) // ? must be 78 on startup (not necessary in ddlover) AM_RANGE(0x300080, 0x300083) AM_WRITE(ddenlovr_blitter_w) AM_RANGE(0x300086, 0x300087) AM_READ(ddenlovr_gfxrom_r) // Video Chip - AM_RANGE(0x3000c0, 0x3000c3) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) + AM_RANGE(0x3000c0, 0x3000c3) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff) AM_RANGE(0x300100, 0x30011f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff) AM_RANGE(0x300140, 0x300143) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff) AM_RANGE(0x300180, 0x300181) AM_READ_PORT("P1") @@ -2210,7 +2270,7 @@ static ADDRESS_MAP_START( ultrchmp_map, AS_PROGRAM, 16, ddenlovr_state ) AM_RANGE(0xe00308, 0xe00309) AM_WRITE(ddenlovr_coincounter_0_w) // Coin Counters AM_RANGE(0xe0030c, 0xe0030d) AM_WRITE(ddenlovr_coincounter_1_w) // - AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) + AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff) AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff) AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff) AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff) @@ -2266,7 +2326,7 @@ static ADDRESS_MAP_START( quizchq_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x22, 0x23) AM_READ(rongrong_input2_r) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x60, 0x61) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x60, 0x61) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x80, 0x83) AM_WRITE(ddenlovr_palette_base_w) AM_RANGE(0x84, 0x87) AM_WRITE(ddenlovr_palette_mask_w) @@ -2303,7 +2363,7 @@ static ADDRESS_MAP_START( rongrong_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x20, 0x2f) AM_DEVREADWRITE("rtc", msm6242_device, read, write) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x60, 0x61) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x60, 0x61) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x80, 0x83) AM_WRITE(ddenlovr_palette_base_w) AM_RANGE(0x84, 0x87) AM_WRITE(ddenlovr_palette_mask_w) @@ -2457,7 +2517,7 @@ static ADDRESS_MAP_START( mmpanic_sound_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x02, 0x02) AM_READNOP // read just before port 00 AM_RANGE(0x04, 0x04) AM_NOP // read only once at the start AM_RANGE(0x06, 0x06) AM_WRITENOP // almost always 1, sometimes 0 - AM_RANGE(0x08, 0x09) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x08, 0x09) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x0c, 0x0c) AM_DEVWRITE("aysnd", ay8910_device, data_w) AM_RANGE(0x0e, 0x0e) AM_DEVWRITE("aysnd", ay8910_device, address_w) ADDRESS_MAP_END @@ -2740,7 +2800,7 @@ static ADDRESS_MAP_START( hanakanz_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x93, 0x93) AM_WRITE(hanakanz_coincounter_w) AM_RANGE(0x94, 0x94) AM_WRITE(hanakanz_keyb_w) AM_RANGE(0x96, 0x96) AM_READ(hanakanz_rand_r) - AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0xc0, 0xc0) AM_DEVREADWRITE("oki", okim6295_device, read, write) AM_RANGE(0xe0, 0xef) AM_DEVREADWRITE("rtc", msm6242_device, read, write) ADDRESS_MAP_END @@ -2756,7 +2816,7 @@ static ADDRESS_MAP_START( hkagerou_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x80, 0x80) AM_WRITE(hanakanz_blitter_data_w) AM_RANGE(0x81, 0x81) AM_WRITE(hanakanz_palette_w) AM_RANGE(0x83, 0x84) AM_READ(hanakanz_gfxrom_r) - AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0xb0, 0xb0) AM_READ_PORT("SYSTEM") AM_RANGE(0xb1, 0xb2) AM_READ(hanakanz_keyb_r) AM_RANGE(0xb3, 0xb3) AM_WRITE(hanakanz_coincounter_w) @@ -2778,7 +2838,7 @@ static ADDRESS_MAP_START( kotbinyo_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x80, 0x80) AM_WRITE(hanakanz_blitter_data_w) AM_RANGE(0x81, 0x81) AM_WRITE(hanakanz_palette_w) AM_RANGE(0x83, 0x84) AM_READ(hanakanz_gfxrom_r) - AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0xb0, 0xb0) AM_READ_PORT("SYSTEM") // AM_RANGE(0xb1, 0xb2) AM_READ(hanakanz_keyb_r) AM_RANGE(0xb1, 0xb1) AM_READ_PORT("KEYB0") @@ -2802,7 +2862,7 @@ static ADDRESS_MAP_START( kotbinsp_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x80, 0x80) AM_WRITE(hanakanz_blitter_data_w) AM_RANGE(0x81, 0x81) AM_WRITE(hanakanz_palette_w) AM_RANGE(0x83, 0x84) AM_READ(hanakanz_gfxrom_r) - AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x90, 0x90) AM_READ_PORT("SYSTEM") // AM_RANGE(0x91, 0x91) AM_READ(hanakanz_keyb_r) AM_RANGE(0x91, 0x91) AM_READ_PORT("KEYB0") @@ -2841,7 +2901,7 @@ static ADDRESS_MAP_START( mjreach1_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x94, 0x94) AM_READ_PORT("SYSTEM") AM_RANGE(0x95, 0x96) AM_READ(hanakanz_keyb_r) AM_RANGE(0x97, 0x97) AM_WRITE(hanakanz_coincounter_w) - AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0xc0, 0xc0) AM_DEVREADWRITE("oki", okim6295_device, read, write) AM_RANGE(0xe0, 0xef) AM_DEVREADWRITE("rtc", msm6242_device, read, write) ADDRESS_MAP_END @@ -2969,7 +3029,7 @@ static ADDRESS_MAP_START( mjchuuka_portmap, AS_IO, 8, ddenlovr_state ) // 16 AM_RANGE(0x63, 0x63) AM_MIRROR(0xff00) AM_READ_PORT("DSW4") AM_RANGE(0x64, 0x64) AM_MIRROR(0xff00) AM_READ_PORT("DSW5") // DSW 1-4 high bits AM_RANGE(0x80, 0x80) AM_MIRROR(0xff00) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0xa0, 0xa1) AM_MIRROR(0xff00) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0xa0, 0xa1) AM_MIRROR(0xff00) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0xc0, 0xcf) AM_MIRROR(0xff00) AM_DEVREADWRITE("rtc", msm6242_device, read, write) AM_RANGE(0xe0, 0xe1) AM_MIRROR(0xff00) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) ADDRESS_MAP_END @@ -3078,7 +3138,7 @@ static ADDRESS_MAP_START( mjmyster_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x22, 0x22) AM_READ(mjmyster_coins_r) AM_RANGE(0x23, 0x23) AM_READ(mjmyster_keyb_r) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x42, 0x43) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x42, 0x43) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x44, 0x44) AM_DEVREAD("aysnd", ay8910_device, data_r) AM_RANGE(0x46, 0x46) AM_DEVWRITE("aysnd", ay8910_device, data_w) AM_RANGE(0x48, 0x48) AM_DEVWRITE("aysnd", ay8910_device, address_w) @@ -3243,7 +3303,7 @@ static ADDRESS_MAP_START( hginga_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) AM_RANGE(0x1c, 0x1c) AM_READNOP AM_WRITE(mjmyster_rambank_w) AM_RANGE(0x1e, 0x1e) AM_WRITE(hginga_rombank_w) - AM_RANGE(0x22, 0x23) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x22, 0x23) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x24, 0x24) AM_DEVREAD("aysnd", ay8910_device, data_r) AM_RANGE(0x26, 0x26) AM_DEVWRITE("aysnd", ay8910_device, data_w) AM_RANGE(0x28, 0x28) AM_DEVWRITE("aysnd", ay8910_device, address_w) @@ -3366,7 +3426,7 @@ static ADDRESS_MAP_START( hgokou_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x61, 0x61) AM_WRITE(hgokou_input_w) AM_RANGE(0x62, 0x62) AM_READ(hgokou_input_r) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x82, 0x83) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x82, 0x83) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x84, 0x84) AM_DEVREAD("aysnd", ay8910_device, data_r) AM_RANGE(0x86, 0x86) AM_DEVWRITE("aysnd", ay8910_device, data_w) AM_RANGE(0x88, 0x88) AM_DEVWRITE("aysnd", ay8910_device, address_w) @@ -3409,7 +3469,7 @@ static ADDRESS_MAP_START( hgokbang_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x1c, 0x1c) AM_READNOP AM_WRITE(mjmyster_rambank_w) // ? ack on RTC int AM_RANGE(0x1e, 0x1e) AM_WRITE(hginga_rombank_w) AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x22, 0x23) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x22, 0x23) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x24, 0x24) AM_DEVREAD("aysnd", ay8910_device, data_r) AM_RANGE(0x26, 0x26) AM_DEVWRITE("aysnd", ay8910_device, data_w) AM_RANGE(0x28, 0x28) AM_DEVWRITE("aysnd", ay8910_device, address_w) @@ -3500,7 +3560,7 @@ static ADDRESS_MAP_START( hparadis_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x1c, 0x1c) AM_READ(hparadis_dsw_r) AM_RANGE(0x1e, 0x1e) AM_WRITE(hparadis_select_w) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x60, 0x61) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x60, 0x61) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x80, 0x83) AM_WRITE(ddenlovr_palette_base_w) AM_RANGE(0x84, 0x87) AM_WRITE(ddenlovr_palette_mask_w) AM_RANGE(0x88, 0x8b) AM_WRITE(ddenlovr_transparency_pen_w) @@ -3546,7 +3606,7 @@ static ADDRESS_MAP_START( mjmywrld_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x22, 0x22) AM_READ(mjmywrld_coins_r) AM_RANGE(0x23, 0x23) AM_READ(mjmyster_keyb_r) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x42, 0x43) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x42, 0x43) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x44, 0x44) AM_DEVREAD("aysnd", ay8910_device, data_r) AM_RANGE(0x46, 0x46) AM_DEVWRITE("aysnd", ay8910_device, data_w) AM_RANGE(0x48, 0x48) AM_DEVWRITE("aysnd", ay8910_device, address_w) @@ -3646,7 +3706,7 @@ static ADDRESS_MAP_START( akamaru_map, AS_PROGRAM, 16, ddenlovr_state ) AM_RANGE(0xe00308, 0xe00309) AM_WRITE(ddenlovr_coincounter_0_w) // Coin Counters AM_RANGE(0xe0030c, 0xe0030d) AM_WRITE(ddenlovr_coincounter_1_w) // - AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) + AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff) AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff) AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff) AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff) @@ -3737,7 +3797,7 @@ static ADDRESS_MAP_START( mjflove_portmap, AS_IO, 8, ddenlovr_state ) // 16 bit AM_RANGE(0x0100, 0x0100) AM_READ_PORT("DSW1") AM_RANGE(0x0181, 0x0181) AM_WRITENOP // ? int. enable AM_RANGE(0x0184, 0x0184) AM_WRITE(mjflove_coincounter_w) - AM_RANGE(0x0200, 0x0201) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x0200, 0x0201) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x0280, 0x028f) AM_DEVREADWRITE("rtc", msm6242_device, read, write) AM_RANGE(0x0300, 0x0301) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) AM_RANGE(0x0380, 0x0380) AM_DEVREADWRITE("oki", okim6295_device, read, write) @@ -3778,7 +3838,7 @@ static ADDRESS_MAP_START( jongtei_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x60, 0x60) AM_WRITE(hanakanz_blitter_data_w) AM_RANGE(0x61, 0x61) AM_WRITE(hanakanz_palette_w) AM_RANGE(0x63, 0x64) AM_READ(hanakanz_gfxrom_r) - AM_RANGE(0x80, 0x81) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x80, 0x81) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0xa0, 0xa0) AM_DEVREADWRITE("oki", okim6295_device, read, write) AM_RANGE(0xc0, 0xcf) AM_DEVREADWRITE("rtc", msm6242_device, read, write) ADDRESS_MAP_END @@ -3841,7 +3901,7 @@ WRITE8_MEMBER(ddenlovr_state::sryudens_rambank_w) static ADDRESS_MAP_START( sryudens_portmap, AS_IO, 8, ddenlovr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x02, 0x03) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x02, 0x03) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x04, 0x05) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) AM_RANGE(0x1c, 0x1c) AM_READNOP AM_WRITE(sryudens_rambank_w) // ? ack on RTC int AM_RANGE(0x1e, 0x1e) AM_WRITE(mjflove_rombank_w) @@ -3928,7 +3988,7 @@ static ADDRESS_MAP_START( janshinp_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x70, 0x70) AM_WRITE(quizchq_oki_bank_w) AM_RANGE(0x80, 0x80) AM_RAM AM_RANGE(0x90, 0x90) AM_DEVREADWRITE("oki", okim6295_device, read, write) - AM_RANGE(0x92, 0x93) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x92, 0x93) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x94, 0x95) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) ADDRESS_MAP_END @@ -4000,7 +4060,7 @@ static ADDRESS_MAP_START( seljan2_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x38, 0x38) AM_READNOP // ? ack or watchdog AM_RANGE(0x40, 0x41) AM_WRITE(mjflove_blitter_w) AM_RANGE(0x43, 0x43) AM_READ(rongrong_gfxrom_r) - AM_RANGE(0x50, 0x51) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0x50, 0x51) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0x54, 0x54) AM_DEVREADWRITE("oki", okim6295_device, read, write) AM_RANGE(0x58, 0x58) AM_DEVWRITE("aysnd", ay8910_device, address_w) AM_RANGE(0x5c, 0x5c) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w) // dsw @@ -4154,7 +4214,7 @@ static ADDRESS_MAP_START( htengoku_io_map, AS_IO, 8, ddenlovr_state ) AM_RANGE( 0x40, 0x40 ) AM_DEVWRITE("aysnd", ay8910_device, address_w) // AY8910 AM_RANGE( 0x42, 0x42 ) AM_DEVREAD("aysnd", ay8910_device, data_r) // AM_RANGE( 0x44, 0x44 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) // - AM_RANGE( 0x46, 0x47 ) AM_DEVWRITE("ymsnd", ym2413_device, write) // + AM_RANGE( 0x46, 0x47 ) AM_DEVWRITE("ym2413", ym2413_device, write) // AM_RANGE( 0x80, 0x8f ) AM_DEVREADWRITE("rtc", msm6242_device, read, write) AM_RANGE( 0xa0, 0xa3 ) AM_WRITE(ddenlovr_palette_base_w) // ddenlovr mixer chip AM_RANGE( 0xa4, 0xa7 ) AM_WRITE(ddenlovr_palette_mask_w) @@ -4226,7 +4286,7 @@ static MACHINE_CONFIG_START( htengoku, ddenlovr_state ) MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, htengoku_dsw_w)) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20) - MCFG_SOUND_ADD("ymsnd", YM2413, 3579545) + MCFG_SOUND_ADD("ym2413", YM2413, 3579545) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) /* devices */ @@ -4341,7 +4401,7 @@ static ADDRESS_MAP_START( daimyojn_portmap, AS_IO, 8, ddenlovr_state ) AM_RANGE(0x42, 0x44) AM_READ(hanakanz_gfxrom_r) AM_RANGE(0x8a, 0x8b) AM_READ(daimyojn_year_hack_r) // ? AM_RANGE(0x80, 0x8f) AM_DEVREADWRITE("rtc", msm6242_device, read, write) - AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ymsnd", ym2413_device, write) + AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("ym2413", ym2413_device, write) AM_RANGE(0xa2, 0xa2) AM_DEVREADWRITE("oki", okim6295_device, read, write) AM_RANGE(0xa8, 0xa8) AM_READ_PORT("SYSTEM") AM_RANGE(0xaa, 0xaa) AM_READ(daimyojn_keyb1_r) @@ -9301,8 +9361,6 @@ MACHINE_START_MEMBER(ddenlovr_state,ddenlovr) save_item(NAME(m_mjflove_irq_cause)); save_item(NAME(m_daimyojn_palette_sel)); save_item(NAME(m_palram)); - - save_item(NAME(m_irq_count)); } MACHINE_RESET_MEMBER(ddenlovr_state,ddenlovr) @@ -9323,7 +9381,6 @@ MACHINE_RESET_MEMBER(ddenlovr_state,ddenlovr) m_hginga_rombank = 0; m_mjflove_irq_cause = 0; m_daimyojn_palette_sel = 0; - m_irq_count = 0; m_quiz365_protection[0] = 0; m_quiz365_protection[1] = 0; @@ -9435,7 +9492,7 @@ static MACHINE_CONFIG_START( ddenlovr, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_63636MHz / 8) + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_63636MHz / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_SOUND_ADD("aysnd", AY8910, XTAL_28_63636MHz / 16) // or /8 ? @@ -9553,7 +9610,7 @@ static MACHINE_CONFIG_START( quizchq, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_63636MHz/8) // 3.579545Mhz, verified + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_63636MHz/8) // 3.579545Mhz, verified MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.50) MCFG_OKIM6295_ADD("oki", XTAL_28_63636MHz/28, OKIM6295_PIN7_HIGH) // clock frequency verified 1.022MHz, pin 7 verified high @@ -9637,7 +9694,7 @@ static MACHINE_CONFIG_START( mmpanic, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, 3579545) + MCFG_SOUND_ADD("ym2413", YM2413, 3579545) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_SOUND_ADD("aysnd", AY8910, 3579545) @@ -9714,7 +9771,7 @@ static MACHINE_CONFIG_START( hanakanz, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, 3579545) + MCFG_SOUND_ADD("ym2413", YM2413, 3579545) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_OKIM6295_ADD("oki", 1022720, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified @@ -9760,7 +9817,7 @@ static MACHINE_CONFIG_START( kotbinyo, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_37516MHz / 8) + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_37516MHz / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_OKIM6295_ADD("oki", XTAL_28_37516MHz / 28, OKIM6295_PIN7_HIGH) @@ -10129,7 +10186,7 @@ static MACHINE_CONFIG_START( jongtei, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_63636MHz / 8) + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_63636MHz / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_OKIM6295_ADD("oki", XTAL_28_63636MHz / 28, OKIM6295_PIN7_HIGH) @@ -10172,7 +10229,7 @@ static MACHINE_CONFIG_START( sryudens, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_63636MHz / 8) + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_63636MHz / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_SOUND_ADD("aysnd", AY8910, XTAL_28_63636MHz / 8) @@ -10219,7 +10276,7 @@ static MACHINE_CONFIG_START( janshinp, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_63636MHz / 8) + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_63636MHz / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_SOUND_ADD("aysnd", AY8910, XTAL_28_63636MHz / 8) @@ -10286,7 +10343,7 @@ static MACHINE_CONFIG_START( seljan2, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_63636MHz / 8) + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_63636MHz / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_SOUND_ADD("aysnd", AY8910, XTAL_28_63636MHz / 8) @@ -10336,7 +10393,7 @@ static MACHINE_CONFIG_START( daimyojn, ddenlovr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_28_63636MHz / 8) + MCFG_SOUND_ADD("ym2413", YM2413, XTAL_28_63636MHz / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MCFG_OKIM6295_ADD("oki", XTAL_28_63636MHz / 28, OKIM6295_PIN7_HIGH) |