~ubuntu-branches/debian/sid/mame/sid

« back to all changes in this revision

Viewing changes to src/mame/drivers/argus.c

  • Committer: Package Import Robot
  • Author(s): Jordi Mallach, Emmanuel Kasper, Jordi Mallach
  • Date: 2012-06-05 20:02:23 UTC
  • mfrom: (0.3.1) (0.1.4)
  • Revision ID: package-import@ubuntu.com-20120605200223-gnlpogjrg6oqe9md
Tags: 0.146-1
[ Emmanuel Kasper ]
* New upstream release
* Drop patch to fix man pages section and patches to link with flac 
  and jpeg system lib: all this has been pushed upstream by Cesare Falco
* Add DM-Upload-Allowed: yes field.

[ Jordi Mallach ]
* Create a "gnu" TARGETOS stanza that defines NO_AFFINITY_NP.
* Stop setting TARGETOS to "unix" in d/rules. It should be autodetected,
  and set to the appropriate value.
* mame_manpage_section.patch: Change mame's manpage section to 6 (games),
  in the TH declaration.

Show diffs side-by-side

added added

removed removed

Lines of Context:
174
174
 
175
175
***************************************************************************/
176
176
 
177
 
static WRITE8_HANDLER( argus_bankselect_w )
 
177
WRITE8_MEMBER(argus_state::argus_bankselect_w)
178
178
{
179
 
        UINT8 *RAM = space->machine().region("maincpu")->base();
 
179
        UINT8 *RAM = memregion("maincpu")->base();
180
180
        int bankaddress;
181
181
 
182
182
        bankaddress = 0x10000 + ((data & 7) * 0x4000);
183
 
        memory_set_bankptr(space->machine(), "bank1", &RAM[bankaddress]);        /* Select 8 banks of 16k */
 
183
        membank("bank1")->set_base(&RAM[bankaddress]);   /* Select 8 banks of 16k */
184
184
}
185
185
 
186
186
 
190
190
 
191
191
***************************************************************************/
192
192
 
193
 
static ADDRESS_MAP_START( argus_map, AS_PROGRAM, 8 )
 
193
static ADDRESS_MAP_START( argus_map, AS_PROGRAM, 8, argus_state )
194
194
        AM_RANGE(0x0000, 0x7fff) AM_ROM
195
195
        AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1")
196
196
        AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
198
198
        AM_RANGE(0xc002, 0xc002) AM_READ_PORT("P2")
199
199
        AM_RANGE(0xc003, 0xc003) AM_READ_PORT("DSW1")
200
200
        AM_RANGE(0xc004, 0xc004) AM_READ_PORT("DSW2")
201
 
        AM_RANGE(0xc200, 0xc200) AM_WRITE(soundlatch_w)
 
201
        AM_RANGE(0xc200, 0xc200) AM_WRITE(soundlatch_byte_w)
202
202
        AM_RANGE(0xc201, 0xc201) AM_WRITE(argus_flipscreen_w)
203
203
        AM_RANGE(0xc202, 0xc202) AM_WRITE(argus_bankselect_w)
204
 
        AM_RANGE(0xc300, 0xc301) AM_RAM AM_BASE_MEMBER(argus_state, m_bg0_scrollx)
205
 
        AM_RANGE(0xc302, 0xc303) AM_RAM AM_BASE_MEMBER(argus_state, m_bg0_scrolly)
206
 
        AM_RANGE(0xc308, 0xc309) AM_RAM AM_BASE_MEMBER(argus_state, m_bg1_scrollx)
207
 
        AM_RANGE(0xc30a, 0xc30b) AM_RAM AM_BASE_MEMBER(argus_state, m_bg1_scrolly)
 
204
        AM_RANGE(0xc300, 0xc301) AM_RAM AM_SHARE("bg0_scrollx")
 
205
        AM_RANGE(0xc302, 0xc303) AM_RAM AM_SHARE("bg0_scrolly")
 
206
        AM_RANGE(0xc308, 0xc309) AM_RAM AM_SHARE("bg1_scrollx")
 
207
        AM_RANGE(0xc30a, 0xc30b) AM_RAM AM_SHARE("bg1_scrolly")
208
208
        AM_RANGE(0xc30c, 0xc30c) AM_WRITE(argus_bg_status_w)
209
 
        AM_RANGE(0xc400, 0xcfff) AM_READWRITE(argus_paletteram_r, argus_paletteram_w) AM_BASE_MEMBER(argus_state, m_paletteram)
210
 
        AM_RANGE(0xd000, 0xd7ff) AM_READWRITE(argus_txram_r, argus_txram_w) AM_BASE_MEMBER(argus_state, m_txram)
211
 
        AM_RANGE(0xd800, 0xdfff) AM_READWRITE(argus_bg1ram_r, argus_bg1ram_w) AM_BASE_MEMBER(argus_state, m_bg1ram)
 
209
        AM_RANGE(0xc400, 0xcfff) AM_READWRITE(argus_paletteram_r, argus_paletteram_w) AM_SHARE("paletteram")
 
210
        AM_RANGE(0xd000, 0xd7ff) AM_READWRITE(argus_txram_r, argus_txram_w) AM_SHARE("txram")
 
211
        AM_RANGE(0xd800, 0xdfff) AM_READWRITE(argus_bg1ram_r, argus_bg1ram_w) AM_SHARE("bg1ram")
212
212
        AM_RANGE(0xe000, 0xf1ff) AM_RAM
213
 
        AM_RANGE(0xf200, 0xf7ff) AM_RAM AM_BASE_SIZE_MEMBER(argus_state, m_spriteram, m_spriteram_size)
 
213
        AM_RANGE(0xf200, 0xf7ff) AM_RAM AM_SHARE("spriteram")
214
214
        AM_RANGE(0xf800, 0xffff) AM_RAM
215
215
ADDRESS_MAP_END
216
216
 
217
 
static ADDRESS_MAP_START( valtric_map, AS_PROGRAM, 8 )
 
217
static ADDRESS_MAP_START( valtric_map, AS_PROGRAM, 8, argus_state )
218
218
        AM_RANGE(0x0000, 0x7fff) AM_ROM
219
219
        AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1")
220
220
        AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
222
222
        AM_RANGE(0xc002, 0xc002) AM_READ_PORT("P2")
223
223
        AM_RANGE(0xc003, 0xc003) AM_READ_PORT("DSW1")
224
224
        AM_RANGE(0xc004, 0xc004) AM_READ_PORT("DSW2")
225
 
        AM_RANGE(0xc200, 0xc200) AM_WRITE(soundlatch_w)
 
225
        AM_RANGE(0xc200, 0xc200) AM_WRITE(soundlatch_byte_w)
226
226
        AM_RANGE(0xc201, 0xc201) AM_WRITE(argus_flipscreen_w)
227
227
        AM_RANGE(0xc202, 0xc202) AM_WRITE(argus_bankselect_w)
228
228
        AM_RANGE(0xc300, 0xc300) AM_WRITE(valtric_unknown_w)
229
 
        AM_RANGE(0xc308, 0xc309) AM_RAM AM_BASE_MEMBER(argus_state, m_bg1_scrollx)
230
 
        AM_RANGE(0xc30a, 0xc30b) AM_RAM AM_BASE_MEMBER(argus_state, m_bg1_scrolly)
 
229
        AM_RANGE(0xc308, 0xc309) AM_RAM AM_SHARE("bg1_scrollx")
 
230
        AM_RANGE(0xc30a, 0xc30b) AM_RAM AM_SHARE("bg1_scrolly")
231
231
        AM_RANGE(0xc30c, 0xc30c) AM_WRITE(valtric_bg_status_w)
232
232
        AM_RANGE(0xc30d, 0xc30d) AM_WRITE(valtric_mosaic_w)
233
 
        AM_RANGE(0xc400, 0xcfff) AM_READWRITE(argus_paletteram_r, valtric_paletteram_w) AM_BASE_MEMBER(argus_state, m_paletteram)
234
 
        AM_RANGE(0xd000, 0xd7ff) AM_READWRITE(argus_txram_r, argus_txram_w) AM_BASE_MEMBER(argus_state, m_txram)
235
 
        AM_RANGE(0xd800, 0xdfff) AM_READWRITE(argus_bg1ram_r, argus_bg1ram_w) AM_BASE_MEMBER(argus_state, m_bg1ram)
 
233
        AM_RANGE(0xc400, 0xcfff) AM_READWRITE(argus_paletteram_r, valtric_paletteram_w) AM_SHARE("paletteram")
 
234
        AM_RANGE(0xd000, 0xd7ff) AM_READWRITE(argus_txram_r, argus_txram_w) AM_SHARE("txram")
 
235
        AM_RANGE(0xd800, 0xdfff) AM_READWRITE(argus_bg1ram_r, argus_bg1ram_w) AM_SHARE("bg1ram")
236
236
        AM_RANGE(0xe000, 0xf1ff) AM_RAM
237
 
        AM_RANGE(0xf200, 0xf7ff) AM_RAM AM_BASE_SIZE_MEMBER(argus_state, m_spriteram, m_spriteram_size)
 
237
        AM_RANGE(0xf200, 0xf7ff) AM_RAM AM_SHARE("spriteram")
238
238
        AM_RANGE(0xf800, 0xffff) AM_RAM
239
239
ADDRESS_MAP_END
240
240
 
241
 
static ADDRESS_MAP_START( butasan_map, AS_PROGRAM, 8 )
 
241
static ADDRESS_MAP_START( butasan_map, AS_PROGRAM, 8, argus_state )
242
242
        AM_RANGE(0x0000, 0x7fff) AM_ROM
243
243
        AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1")
244
244
        AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
247
247
        AM_RANGE(0xc003, 0xc003) AM_READ_PORT("DSW1")
248
248
        AM_RANGE(0xc004, 0xc004) AM_READ_PORT("DSW2")
249
249
        AM_RANGE(0xc100, 0xc100) AM_WRITE(butasan_unknown_w)
250
 
        AM_RANGE(0xc200, 0xc200) AM_WRITE(soundlatch_w)
 
250
        AM_RANGE(0xc200, 0xc200) AM_WRITE(soundlatch_byte_w)
251
251
        AM_RANGE(0xc201, 0xc201) AM_WRITE(argus_flipscreen_w)
252
252
        AM_RANGE(0xc202, 0xc202) AM_WRITE(argus_bankselect_w)
253
253
        AM_RANGE(0xc203, 0xc203) AM_WRITE(butasan_pageselect_w)
254
 
        AM_RANGE(0xc300, 0xc301) AM_RAM AM_BASE_MEMBER(argus_state, m_bg0_scrollx)
255
 
        AM_RANGE(0xc302, 0xc303) AM_RAM AM_BASE_MEMBER(argus_state, m_bg0_scrolly)
 
254
        AM_RANGE(0xc300, 0xc301) AM_RAM AM_SHARE("bg0_scrollx")
 
255
        AM_RANGE(0xc302, 0xc303) AM_RAM AM_SHARE("bg0_scrolly")
256
256
        AM_RANGE(0xc304, 0xc304) AM_WRITE(butasan_bg0_status_w)
257
 
        AM_RANGE(0xc308, 0xc309) AM_RAM AM_BASE_MEMBER(argus_state, m_bg1_scrollx)
258
 
        AM_RANGE(0xc30a, 0xc30b) AM_RAM AM_BASE_MEMBER(argus_state, m_bg1_scrolly)
 
257
        AM_RANGE(0xc308, 0xc309) AM_RAM AM_SHARE("bg1_scrollx")
 
258
        AM_RANGE(0xc30a, 0xc30b) AM_RAM AM_SHARE("bg1_scrolly")
259
259
        AM_RANGE(0xc30c, 0xc30c) AM_WRITE(butasan_bg1_status_w)
260
 
        AM_RANGE(0xc400, 0xc7ff) AM_READWRITE(butasan_bg1ram_r, butasan_bg1ram_w) AM_BASE_MEMBER(argus_state, m_butasan_bg1ram)
261
 
        AM_RANGE(0xc800, 0xcfff) AM_READWRITE(argus_paletteram_r, butasan_paletteram_w) AM_BASE_MEMBER(argus_state, m_paletteram)
 
260
        AM_RANGE(0xc400, 0xc7ff) AM_READWRITE(butasan_bg1ram_r, butasan_bg1ram_w) AM_SHARE("butasan_bg1ram")
 
261
        AM_RANGE(0xc800, 0xcfff) AM_READWRITE(argus_paletteram_r, butasan_paletteram_w) AM_SHARE("paletteram")
262
262
        AM_RANGE(0xd000, 0xdfff) AM_READWRITE(butasan_pagedram_r, butasan_pagedram_w)
263
263
        AM_RANGE(0xe000, 0xefff) AM_RAM
264
 
        AM_RANGE(0xf000, 0xf67f) AM_RAM AM_BASE_SIZE_MEMBER(argus_state, m_spriteram, m_spriteram_size)
 
264
        AM_RANGE(0xf000, 0xf67f) AM_RAM AM_SHARE("spriteram")
265
265
        AM_RANGE(0xf680, 0xffff) AM_RAM
266
266
ADDRESS_MAP_END
267
267
 
268
 
static ADDRESS_MAP_START( sound_map_a, AS_PROGRAM, 8 )
 
268
static ADDRESS_MAP_START( sound_map_a, AS_PROGRAM, 8, argus_state )
269
269
        AM_RANGE(0x0000, 0x7fff) AM_ROM
270
270
        AM_RANGE(0x8000, 0x87ff) AM_RAM
271
 
        AM_RANGE(0xc000, 0xc000) AM_READ(soundlatch_r)
 
271
        AM_RANGE(0xc000, 0xc000) AM_READ(soundlatch_byte_r)
272
272
ADDRESS_MAP_END
273
273
 
274
 
static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8 )
 
274
static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8, argus_state )
275
275
        AM_RANGE(0x0000, 0xbfff) AM_ROM
276
276
        AM_RANGE(0xc000, 0xc7ff) AM_RAM
277
 
        AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r)
 
277
        AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_byte_r)
278
278
ADDRESS_MAP_END
279
279
 
280
280
#if 0
281
 
static ADDRESS_MAP_START( sound_portmap_1, AS_IO, 8 )
 
281
static ADDRESS_MAP_START( sound_portmap_1, AS_IO, 8, argus_state )
282
282
        ADDRESS_MAP_GLOBAL_MASK(0xff)
283
 
        AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w)
 
283
        AM_RANGE(0x00, 0x01) AM_DEVREADWRITE_LEGACY("ym1", ym2203_r, ym2203_w)
284
284
ADDRESS_MAP_END
285
285
#endif
286
286
 
287
 
static ADDRESS_MAP_START( sound_portmap_2, AS_IO, 8 )
 
287
static ADDRESS_MAP_START( sound_portmap_2, AS_IO, 8, argus_state )
288
288
        ADDRESS_MAP_GLOBAL_MASK(0xff)
289
 
        AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w)
290
 
        AM_RANGE(0x80, 0x81) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w)
 
289
        AM_RANGE(0x00, 0x01) AM_DEVREADWRITE_LEGACY("ym1", ym2203_r, ym2203_w)
 
290
        AM_RANGE(0x80, 0x81) AM_DEVREADWRITE_LEGACY("ym2", ym2203_r, ym2203_w)
291
291
ADDRESS_MAP_END
292
292
 
293
293
 
739
739
 
740
740
ROM_START( butasan ) /* English "subtitle" of Butasan for Japanese region.  Original Jaleco PCB */
741
741
        ROM_REGION( 0x30000, "maincpu", 0 )                                     /* Main CPU */
742
 
        ROM_LOAD( "4.t2",    0x00000, 0x10000, CRC(937dabed) SHA1(23058b07cc2973b3b7a4b0bcdab43c3db605a54e) ) /* overdump?  1+2 half identical */
 
742
        ROM_LOAD( "4.t2",    0x00000, 0x08000, CRC(1ba1d8e4) SHA1(ab141a1fbaab9f3ef6788b131833effb32c42930) ) /* M5L27256K-2 (32kb) - 4.4.bin */
743
743
        ROM_LOAD( "3.s2",    0x10000, 0x10000, CRC(a6b3ccc2) SHA1(fcc9db1cd68fd9477d86e63e6906d194d5ee477a) )
744
744
        ROM_LOAD( "2.p2",    0x20000, 0x10000, CRC(96517fa9) SHA1(03ee1f118f109c85b046098c457a90b40e163f3c) )
745
745