diff options
Diffstat (limited to 'src/emu/sound/iremga20.c')
-rw-r--r-- | src/emu/sound/iremga20.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/emu/sound/iremga20.c b/src/emu/sound/iremga20.c index 1a1e04078f6..a8c5a2d9450 100644 --- a/src/emu/sound/iremga20.c +++ b/src/emu/sound/iremga20.c @@ -230,12 +230,9 @@ static SND_RESET( iremga20 ) static SND_START( iremga20 ) { - struct IremGA20_chip_def *chip; + struct IremGA20_chip_def *chip = device->token; int i; - chip = auto_malloc(sizeof(*chip)); - memset(chip, 0, sizeof(*chip)); - /* Initialize our chip structure */ chip->rom = device->region; chip->rom_size = device->regionbytes; @@ -261,7 +258,7 @@ static SND_START( iremga20 ) state_save_register_device_item(device, i, chip->channel[i].play); } - return chip; + return DEVICE_START_OK; } @@ -285,6 +282,7 @@ SND_GET_INFO( iremga20 ) switch (state) { /* --- the following bits of info are returned as 64-bit signed integers --- */ + case SNDINFO_INT_TOKEN_BYTES: info->i = sizeof(struct IremGA20_chip_def); break; /* --- the following bits of info are returned as pointers to data or functions --- */ case SNDINFO_PTR_SET_INFO: info->set_info = SND_SET_INFO_NAME( iremga20 ); break; |