234
234
#include "sound/msm5205.h"
235
235
#include "includes/stfight.h"
237
static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 )
237
static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, stfight_state )
238
238
AM_RANGE(0x0000, 0x7fff) AM_ROM
239
239
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* sf02.bin */
240
AM_RANGE(0xc000, 0xc0ff) AM_RAM AM_BASE_GENERIC(paletteram)
241
AM_RANGE(0xc100, 0xc1ff) AM_RAM AM_BASE_GENERIC(paletteram2)
240
AM_RANGE(0xc000, 0xc0ff) AM_RAM AM_SHARE("paletteram")
241
AM_RANGE(0xc100, 0xc1ff) AM_RAM AM_SHARE("paletteram2")
242
242
AM_RANGE(0xc200, 0xc200) AM_READ_PORT("P1") /* IN1 */
243
243
AM_RANGE(0xc201, 0xc201) AM_READ_PORT("P2") /* IN2 */
244
244
AM_RANGE(0xc202, 0xc202) AM_READ_PORT("START") /* IN3 */
245
245
AM_RANGE(0xc203, 0xc204) AM_READ(stfight_dsw_r) /* DS0,1 */
246
246
AM_RANGE(0xc205, 0xc205) AM_READ(stfight_coin_r) /* coin mech */
247
247
AM_RANGE(0xc500, 0xc500) AM_WRITE(stfight_fm_w) /* play fm sound */
248
AM_RANGE(0xc600, 0xc600) AM_DEVWRITE("msm", stfight_adpcm_control_w) /* voice control */
248
AM_RANGE(0xc600, 0xc600) AM_DEVWRITE_LEGACY("msm", stfight_adpcm_control_w) /* voice control */
249
249
AM_RANGE(0xc700, 0xc700) AM_WRITE(stfight_coin_w) /* coin mech */
250
250
AM_RANGE(0xc804, 0xc806) AM_WRITENOP /* TBD */
251
251
AM_RANGE(0xc807, 0xc807) AM_WRITE(stfight_sprite_bank_w)
252
AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(stfight_text_char_w) AM_BASE_MEMBER(stfight_state, m_text_char_ram)
253
AM_RANGE(0xd400, 0xd7ff) AM_RAM_WRITE(stfight_text_attr_w) AM_BASE_MEMBER(stfight_state, m_text_attr_ram)
254
AM_RANGE(0xd800, 0xd808) AM_WRITE(stfight_vh_latch_w) AM_BASE_MEMBER(stfight_state, m_vh_latch_ram)
252
AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(stfight_text_char_w) AM_SHARE("text_char_ram")
253
AM_RANGE(0xd400, 0xd7ff) AM_RAM_WRITE(stfight_text_attr_w) AM_SHARE("text_attr_ram")
254
AM_RANGE(0xd800, 0xd808) AM_WRITE(stfight_vh_latch_w) AM_SHARE("vh_latch_ram")
255
255
AM_RANGE(0xe000, 0xefff) AM_RAM
256
AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_MEMBER(stfight_state, m_sprite_ram)
256
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("sprite_ram")
259
static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 )
259
static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, stfight_state )
260
260
AM_RANGE(0x0000, 0x7fff) AM_ROM
261
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w)
262
AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w)
261
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE_LEGACY("ym1", ym2203_r, ym2203_w)
262
AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE_LEGACY("ym2", ym2203_r, ym2203_w)
263
263
AM_RANGE(0xe800, 0xe800) AM_WRITE(stfight_e800_w)
264
264
AM_RANGE(0xf000, 0xf000) AM_READ(stfight_fm_r)
265
265
AM_RANGE(0xf800, 0xffff) AM_RAM
600
600
ROM_START( empcityj )
601
601
ROM_REGION( 2*0x18000, "maincpu", 0 ) /* 96k for code + 96k for decrypted opcodes */
602
ROM_LOAD( "1.bin", 0x00000, 0x8000, CRC(8162331c) SHA1(f2fdf5fbc52d4ea692fb87fa049c48935a73d67b) )
603
ROM_LOAD( "2.bin", 0x10000, 0x8000, CRC(960edea6) SHA1(fd19475e841defe42625a94c40c6390b7e6e7682) ) /* bank switched */
602
ROM_LOAD( "1(__empcityj).bin", 0x00000, 0x8000, CRC(8162331c) SHA1(f2fdf5fbc52d4ea692fb87fa049c48935a73d67b) )
603
ROM_LOAD( "2(__empcityj).bin", 0x10000, 0x8000, CRC(960edea6) SHA1(fd19475e841defe42625a94c40c6390b7e6e7682) ) /* bank switched */
605
605
ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for the second CPU */
606
606
ROM_LOAD( "ec_04.rom", 0x0000, 0x8000, CRC(aa3e7d1e) SHA1(da350384d55f011253d19ce17fc327cd2604257f) )