diff --git a/src/mame/drivers/lwings.cpp b/src/mame/drivers/lwings.cpp index d0427cd01f5..ac5c619fcd9 100644 --- a/src/mame/drivers/lwings.cpp +++ b/src/mame/drivers/lwings.cpp @@ -76,8 +76,9 @@ READ8_MEMBER(lwings_state::avengers_adpcm_r) WRITE8_MEMBER(lwings_state::lwings_bankswitch_w) { -// if (data & 0xf0) printf("bankswitch_w %02x\n", data); +// if (data & 0xe0) printf("bankswitch_w %02x\n", data); // Fireball writes 0x20 on startup, maybe reset soundcpu? + m_sprbank = (data & 0x10)>>4; // Fireball only /* bit 0 is flip screen */ flip_screen_set(~data & 0x01); diff --git a/src/mame/includes/lwings.h b/src/mame/includes/lwings.h index 74180c84764..f5f24cb995f 100644 --- a/src/mame/includes/lwings.h +++ b/src/mame/includes/lwings.h @@ -40,6 +40,7 @@ public: UINT8 m_soundstate; UINT8 m_adpcm; UINT8 m_nmi_mask; + int m_sprbank; DECLARE_WRITE8_MEMBER(avengers_adpcm_w); DECLARE_READ8_MEMBER(avengers_adpcm_r); diff --git a/src/mame/video/lwings.cpp b/src/mame/video/lwings.cpp index 0a06822b9f9..05416b83a5e 100644 --- a/src/mame/video/lwings.cpp +++ b/src/mame/video/lwings.cpp @@ -204,7 +204,7 @@ void lwings_state::lwings_draw_sprites( bitmap_ind16 &bitmap, const rectangle &c } m_gfxdecode->gfx(2)->transpen(bitmap,cliprect, - code,color, + code+(m_sprbank*0x400),color, flipx,flipy, sx,sy,15); }