Fixed 04165: vbowl, vbowlj: Crash after OK

This commit is contained in:
Scott Stone 2011-01-04 15:03:24 +00:00
parent a5fff9c20c
commit 68ebcf0254

View File

@ -42,7 +42,7 @@ To do:
- Interrupt controller at 838000 or a38000 (there's a preliminary implementation for lhb)
- A few graphical bugs
- vbowl, vbowlj: trackball support, sound is slow and low volume.
- vbowl, vbowlj: trackball support.
Wrong colors in "Game Over" screen.
- lhb: in the copyright screen the '5' in '1995' is drawn by the cpu on layer 5,
@ -86,18 +86,6 @@ Notes:
***************************************************************************/
// ASC trampolines
/*static READ8_DEVICE_HANDLER(igs011_ics2115_r)
{
return downcast<ics2115_device *>(device)->read(offset);
//return 0;
}
static WRITE8_DEVICE_HANDLER(igs011_ics2115_w)
{
// device<ics2115_device>("asc")->write(offset, data);
}*/
static UINT8 *layer[8];
static UINT16 igs011_priority, *igs011_priority_ram;
@ -2249,11 +2237,12 @@ static ADDRESS_MAP_START( lhb2, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE( 0xa88000, 0xa88001 ) AM_READ( igs_3_dips_r )
ADDRESS_MAP_END
static READ16_HANDLER( ics2115_word_r )
/* trap15's note:
* TODO: change this horrible device-> chain to be proper.
*/
static READ16_DEVICE_HANDLER( ics2115_word_r )
{
ics2115_device* ics2115 = space->machine->device<ics2115_device>("ics2115");
ics2115_device* ics2115 = device->machine->device<ics2115_device>("ics");
switch(offset)
{
case 0: return ics2115_device::read(ics2115, (offs_t)0);
@ -2263,9 +2252,9 @@ static READ16_HANDLER( ics2115_word_r )
return 0xff;
}
static WRITE16_HANDLER( ics2115_word_w )
static WRITE16_DEVICE_HANDLER( ics2115_word_w )
{
ics2115_device* ics2115 = space->machine->device<ics2115_device>("ics2115");
ics2115_device* ics2115 = device->machine->device<ics2115_device>("ics");
switch(offset)
{
case 1:
@ -2340,8 +2329,7 @@ static ADDRESS_MAP_START( vbowl, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE( 0x300000, 0x3fffff ) AM_READWRITE( igs011_layers_r, igs011_layers_w )
AM_RANGE( 0x400000, 0x401fff ) AM_RAM_WRITE( igs011_palette ) AM_BASE_GENERIC( paletteram )
AM_RANGE( 0x520000, 0x520001 ) AM_READ_PORT( "COIN" )
// AM_RANGE( 0x600000, 0x600007 ) AM_DEVREADWRITE( "ics", ics2115_word_r, ics2115_word_w )
AM_RANGE( 0x600000, 0x600007 ) AM_READWRITE( ics2115_word_r, ics2115_word_w )
AM_RANGE( 0x600000, 0x600007 ) AM_DEVREADWRITE( "ics", ics2115_word_r, ics2115_word_w )
AM_RANGE( 0x700000, 0x700003 ) AM_RAM AM_BASE( &vbowl_trackball )
AM_RANGE( 0x700004, 0x700005 ) AM_WRITE( vbowl_pen_hi_w )
AM_RANGE( 0x800000, 0x800003 ) AM_WRITE( vbowl_igs003_w )
@ -3577,10 +3565,6 @@ static void sound_irq(device_t *device, int state)
// cputag_set_input_line(machine, "maincpu", 3, state);
}
/*static const ics2115_interface vbowl_ics2115_interface = {
sound_irq
};*/
static INTERRUPT_GEN( vbowl_interrupt )
{
switch (cpu_getiloops(device))
@ -3602,8 +3586,8 @@ static MACHINE_CONFIG_DERIVED( vbowl, igs011_base )
// MCFG_GFXDECODE(igs011_hi)
MCFG_DEVICE_REMOVE("oki")
// MCFG_SOUND_ADD("ics", ICS2115, 0)
MCFG_ICS2115_ADD("ics", 0, sound_irq)
// MCFG_SOUND_ADD("ics", ICS2115, 0)
// MCFG_SOUND_CONFIG(vbowl_ics2115_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 5.0)
MACHINE_CONFIG_END