Exemple #1
0
void volfied_cchip_init(void)
{
	state_save_register_int  ("volfied", 0, "cc_bank", &current_bank);
	state_save_register_int  ("volfied", 0, "cc_data", &current_data);
	state_save_register_int  ("volfied", 0, "cc_flag", &current_flag);
	state_save_register_UINT8("volfied", 0, "cc_port", &cc_port, 1);
}
Exemple #2
0
void EEPROM_init(struct EEPROM_interface *interface)
{
	intf = interface;

	if ((1 << intf->address_bits) * intf->data_bits / 8 > MEMORY_SIZE)
	{
		usrintf_showmessage("EEPROM larger than eeprom.c allows");
		return;
	}

	memset(eeprom_data,0xff,(1 << intf->address_bits) * intf->data_bits / 8);
	serial_count = 0;
	latch = 0;
	reset_line = ASSERT_LINE;
	clock_line = ASSERT_LINE;
	eeprom_read_address = 0;
	sending = 0;
	if (intf->cmd_unlock) locked = 1;
	else locked = 0;

	state_save_register_UINT8("eeprom", 0, "data",          eeprom_data,   MEMORY_SIZE);
	state_save_register_UINT8("eeprom", 0, "serial buffer", serial_buffer, SERIAL_BUFFER_LENGTH);
	state_save_register_int  ("eeprom", 0, "clock line",    &clock_line);
	state_save_register_int  ("eeprom", 0, "reset line",    &reset_line);
	state_save_register_int  ("eeprom", 0, "locked",        &locked);
	state_save_register_int  ("eeprom", 0, "serial count",  &serial_count);
	state_save_register_int  ("eeprom", 0, "latch",         &latch);
	state_save_register_int  ("eeprom", 0, "reset delay",   &reset_delay);
	state_save_register_int  ("eeprom", 0, "clock count",   &eeprom_clock_count);
	state_save_register_int  ("eeprom", 0, "data bits",     &eeprom_data_bits);
	state_save_register_int  ("eeprom", 0, "address",       &eeprom_read_address);
}
Exemple #3
0
MACHINE_DRIVER_END


/*******************************************************************/

static DRIVER_INIT( tceptor )
{
	state_save_register_int("tceptor", 0, "m6809_irq_enable",  &m6809_irq_enable);
	state_save_register_int("tceptor", 0, "m68k_irq_enable",   &m68k_irq_enable);
	state_save_register_int("tceptor", 0, "mcu_irq_enable",    &mcu_irq_enable);
}
Exemple #4
0
void *exidy440_sh_start(int clock, const struct CustomSound_interface *config)
{
	int i, length;

	/* reset the system */
	exidy440_sound_command = 0;
	exidy440_sound_command_ack = 1;
	state_save_register_global(exidy440_sound_command);
	state_save_register_global(exidy440_sound_command_ack);

	/* reset the 6844 */
	for (i = 0; i < 4; i++)
	{
		m6844_channel[i].active = 0;
		m6844_channel[i].control = 0x00;
	}
	m6844_priority = 0x00;
	m6844_interrupt = 0x00;
	m6844_chain = 0x00;

	state_save_register_int("m6844", 0, "priority", &m6844_priority);
	state_save_register_int("m6844", 0, "interrupt", &m6844_interrupt);
	state_save_register_int("m6844", 0, "chain", &m6844_chain);

	channel_frequency[0] = clock;   /* channels 0 and 1 are run by FCLK */
	channel_frequency[1] = clock;
	channel_frequency[2] = clock/2; /* channels 2 and 3 are run by SCLK */
	channel_frequency[3] = clock/2;

	/* get stream channels */
	stream = stream_create(0, 2, clock, NULL, channel_update);

	/* allocate the sample cache */
	length = memory_region_length(REGION_SOUND1) * 16 + MAX_CACHE_ENTRIES * sizeof(sound_cache_entry);
	sound_cache = auto_malloc(length);

	/* determine the hard end of the cache and reset */
	sound_cache_max = (sound_cache_entry *)((UINT8 *)sound_cache + length);
	reset_sound_cache();

	/* allocate the mixer buffer */
	mixer_buffer_left = auto_malloc(2 * clock * sizeof(INT32));
	mixer_buffer_right = mixer_buffer_left + clock;

	if (SOUND_LOG)
		debuglog = fopen("sound.log", "w");

	return auto_malloc(1);
}
Exemple #5
0
ROM_END


static DRIVER_INIT( taitoh )
{
	state_save_register_int("sound1", 0, "sound region", &banknum);
	state_save_register_func_postload(reset_sound_region);
}
Exemple #6
0
/***************************************************************************

  Game driver(s)

***************************************************************************/

ROM_START( rastan )
	ROM_REGION( 0x60000, REGION_CPU1, 0 )	/* 6*64k for 68000 code */
	ROM_LOAD16_BYTE( "ic19_38.bin", 0x00000, 0x10000, 0x1c91dbb1 )
	ROM_LOAD16_BYTE( "ic07_37.bin", 0x00001, 0x10000, 0xecf20bdd )
	ROM_LOAD16_BYTE( "ic20_40.bin", 0x20000, 0x10000, 0x0930d4b3 )
	ROM_LOAD16_BYTE( "ic08_39.bin", 0x20001, 0x10000, 0xd95ade5e )
	ROM_LOAD16_BYTE( "ic21_42.bin", 0x40000, 0x10000, 0x1857a7cb )
	ROM_LOAD16_BYTE( "ic09_43.bin", 0x40001, 0x10000, 0xc34b9152 )

	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
	ROM_LOAD( "ic49_19.bin", 0x00000, 0x4000, 0xee81fdd8 )
	ROM_CONTINUE(            0x10000, 0xc000 )

	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
	ROM_LOAD( "ic40_01.bin",  0x00000, 0x20000, 0xcd30de19 )        /* 8x8 0 */
	ROM_LOAD( "ic39_03.bin",  0x20000, 0x20000, 0xab67e064 )        /* 8x8 0 */
	ROM_LOAD( "ic67_02.bin",  0x40000, 0x20000, 0x54040fec )        /* 8x8 1 */
	ROM_LOAD( "ic66_04.bin",  0x60000, 0x20000, 0x94737e93 )        /* 8x8 1 */

	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
	ROM_LOAD( "ic15_05.bin",  0x00000, 0x20000, 0xc22d94ac )        /* sprites 1a */
	ROM_LOAD( "ic14_07.bin",  0x20000, 0x20000, 0xb5632a51 )        /* sprites 3a */
	ROM_LOAD( "ic28_06.bin",  0x40000, 0x20000, 0x002ccf39 )        /* sprites 1b */
	ROM_LOAD( "ic27_08.bin",  0x60000, 0x20000, 0xfeafca05 )        /* sprites 3b */

	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* 64k for the samples */
	ROM_LOAD( "ic76_20.bin", 0x0000, 0x10000, 0xfd1a34cc ) /* samples are 4bit ADPCM */
ROM_END

ROM_START( rastanu )
	ROM_REGION( 0x60000, REGION_CPU1, 0 )	/* 6*64k for 68000 code */
	ROM_LOAD16_BYTE( "ic19_38.bin", 0x00000, 0x10000, 0x1c91dbb1 )
	ROM_LOAD16_BYTE( "ic07_37.bin", 0x00001, 0x10000, 0xecf20bdd )
	ROM_LOAD16_BYTE( "b04-45.20",   0x20000, 0x10000, 0x362812dd )
	ROM_LOAD16_BYTE( "b04-44.8",    0x20001, 0x10000, 0x51cc5508 )
	ROM_LOAD16_BYTE( "ic21_42.bin", 0x40000, 0x10000, 0x1857a7cb )
	ROM_LOAD16_BYTE( "b04-41-1.9",  0x40001, 0x10000, 0xbd403269 )

	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
	ROM_LOAD( "ic49_19.bin", 0x00000, 0x4000, 0xee81fdd8 )
	ROM_CONTINUE(            0x10000, 0xc000 )

	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
	ROM_LOAD( "ic40_01.bin",  0x00000, 0x20000, 0xcd30de19 )        /* 8x8 0 */
	ROM_LOAD( "ic39_03.bin",  0x20000, 0x20000, 0xab67e064 )        /* 8x8 0 */
	ROM_LOAD( "ic67_02.bin",  0x40000, 0x20000, 0x54040fec )        /* 8x8 1 */
	ROM_LOAD( "ic66_04.bin",  0x60000, 0x20000, 0x94737e93 )        /* 8x8 1 */

	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
	ROM_LOAD( "ic15_05.bin",  0x00000, 0x20000, 0xc22d94ac )        /* sprites 1a */
	ROM_LOAD( "ic14_07.bin",  0x20000, 0x20000, 0xb5632a51 )        /* sprites 3a */
	ROM_LOAD( "ic28_06.bin",  0x40000, 0x20000, 0x002ccf39 )        /* sprites 1b */
	ROM_LOAD( "ic27_08.bin",  0x60000, 0x20000, 0xfeafca05 )        /* sprites 3b */

	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* 64k for the samples */
	ROM_LOAD( "ic76_20.bin", 0x0000, 0x10000, 0xfd1a34cc ) /* samples are 4bit ADPCM */
ROM_END

ROM_START( rastanu2 )
	ROM_REGION( 0x60000, REGION_CPU1, 0 )	/* 6*64k for 68000 code */
	ROM_LOAD16_BYTE( "rs19_38.bin", 0x00000, 0x10000, 0xa38ac909 )
	ROM_LOAD16_BYTE( "b04-21.7",    0x00001, 0x10000, 0x7c8dde9a )
	ROM_LOAD16_BYTE( "b04-23.20",   0x20000, 0x10000, 0x254b3dce )
	ROM_LOAD16_BYTE( "b04-22.8",    0x20001, 0x10000, 0x98e8edcf )
	ROM_LOAD16_BYTE( "b04-25.21",   0x40000, 0x10000, 0xd1e5adee )
	ROM_LOAD16_BYTE( "b04-24.9",    0x40001, 0x10000, 0xa3dcc106 )

	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
	ROM_LOAD( "ic49_19.bin", 0x00000, 0x4000, 0xee81fdd8 )
	ROM_CONTINUE(            0x10000, 0xc000 )

	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
	ROM_LOAD( "ic40_01.bin",  0x00000, 0x20000, 0xcd30de19 )        /* 8x8 0 */
	ROM_LOAD( "ic39_03.bin",  0x20000, 0x20000, 0xab67e064 )        /* 8x8 0 */
	ROM_LOAD( "ic67_02.bin",  0x40000, 0x20000, 0x54040fec )        /* 8x8 1 */
	ROM_LOAD( "ic66_04.bin",  0x60000, 0x20000, 0x94737e93 )        /* 8x8 1 */

	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
	ROM_LOAD( "ic15_05.bin",  0x00000, 0x20000, 0xc22d94ac )        /* sprites 1a */
	ROM_LOAD( "ic14_07.bin",  0x20000, 0x20000, 0xb5632a51 )        /* sprites 3a */
	ROM_LOAD( "ic28_06.bin",  0x40000, 0x20000, 0x002ccf39 )        /* sprites 1b */
	ROM_LOAD( "ic27_08.bin",  0x60000, 0x20000, 0xfeafca05 )        /* sprites 3b */

	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* 64k for the samples */
	ROM_LOAD( "ic76_20.bin", 0x0000, 0x10000, 0xfd1a34cc ) /* samples are 4bit ADPCM */
ROM_END

ROM_START( rastsaga )
	ROM_REGION( 0x60000, REGION_CPU1, 0 )	/* 6*64k for 68000 code */
	ROM_LOAD16_BYTE( "rs19_38.bin", 0x00000, 0x10000, 0xa38ac909 )
	ROM_LOAD16_BYTE( "rs07_37.bin", 0x00001, 0x10000, 0xbad60872 )
	ROM_LOAD16_BYTE( "rs20_40.bin", 0x20000, 0x10000, 0x6bcf70dc )
	ROM_LOAD16_BYTE( "rs08_39.bin", 0x20001, 0x10000, 0x8838ecc5 )
	ROM_LOAD16_BYTE( "rs21_42.bin", 0x40000, 0x10000, 0xb626c439 )
	ROM_LOAD16_BYTE( "rs09_43.bin", 0x40001, 0x10000, 0xc928a516 )

	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
	ROM_LOAD( "ic49_19.bin", 0x00000, 0x4000, 0xee81fdd8 )
	ROM_CONTINUE(            0x10000, 0xc000 )

	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
	ROM_LOAD( "ic40_01.bin",  0x00000, 0x20000, 0xcd30de19 )        /* 8x8 0 */
	ROM_LOAD( "ic39_03.bin",  0x20000, 0x20000, 0xab67e064 )        /* 8x8 0 */
	ROM_LOAD( "ic67_02.bin",  0x40000, 0x20000, 0x54040fec )        /* 8x8 1 */
	ROM_LOAD( "ic66_04.bin",  0x60000, 0x20000, 0x94737e93 )        /* 8x8 1 */

	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
	ROM_LOAD( "ic15_05.bin",  0x00000, 0x20000, 0xc22d94ac )        /* sprites 1a */
	ROM_LOAD( "ic14_07.bin",  0x20000, 0x20000, 0xb5632a51 )        /* sprites 3a */
	ROM_LOAD( "ic28_06.bin",  0x40000, 0x20000, 0x002ccf39 )        /* sprites 1b */
	ROM_LOAD( "ic27_08.bin",  0x60000, 0x20000, 0xfeafca05 )        /* sprites 3b */

	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* 64k for the samples */
	ROM_LOAD( "ic76_20.bin", 0x0000, 0x10000, 0xfd1a34cc ) /* samples are 4bit ADPCM */
ROM_END


static void init_rastan(void)
{
	state_save_register_int("sound", 0, "sound region", &banknum);
	state_save_register_func_postload(reset_sound_region);
}
Exemple #7
0
void am53cf96_init( struct AM53CF96interface *interface )
{
	const struct hard_disk_info *hdinfo;

	// save interface pointer for later
	intf = interface;

	memset(scsi_regs, 0, sizeof(scsi_regs));

	// try to open the disk
	if (interface->device == AM53CF96_DEVICE_HDD)
	{
		disk = hard_disk_open(get_disk_handle(0));
		if (!disk)
		{
			logerror("53cf96: no disk found!\n");
		}
		else
		{
			hdinfo = hard_disk_get_info(disk);
			if (hdinfo->sectorbytes != 512)
			{
				logerror("53cf96: Error!  invalid sector size %d\n", hdinfo->sectorbytes);
			}		
		}
	}
	else if (interface->device == AM53CF96_DEVICE_CDROM)
	{
		logerror("53cf96: CDROM not yet supported!\n");
	}
	else
	{
		logerror("53cf96: unknown device type!\n");
	}

	state_save_register_UINT8("53cf96", 0, "registers", scsi_regs, 32);
	state_save_register_UINT8("53cf96", 0, "fifo", fifo, 16);
	state_save_register_UINT8("53cf96", 0, "fifo pointer", &fptr, 1);
	state_save_register_UINT8("53cf96", 0, "last scsi-2 command", &last_cmd, 1);
	state_save_register_UINT8("53cf96", 0, "transfer state", &xfer_state, 1);
	state_save_register_int("53cf96", 0, "current lba", &lba);
	state_save_register_int("53cf96", 0, "blocks to read", &blocks);
}
Exemple #8
0
ROM_END

static DRIVER_INIT( lethalen )
{
	konami_rom_deinterleave_2_half(REGION_GFX2);
	konami_rom_deinterleave_2(REGION_GFX3);
	konami_rom_deinterleave_2(REGION_GFX4);

	state_save_register_int("LE", 0, "control2", &cur_control2);
}
Exemple #9
0
static DRIVER_INIT( quizf1 )
{
	irem_cpu_decrypt(0,lethalth_decryption_table);

	bankaddress = 0;
	set_m90_bank();

	state_save_register_int("main", 0, "bankaddress", &bankaddress);
	state_save_register_func_postload(set_m90_bank);
}
Exemple #10
0
static DRIVER_INIT( jumping )
{
	int i;

	/* Sprite colour map is reversed - switch to normal */

	for (i = 0;i < memory_region_length(REGION_GFX2);i++)
		memory_region(REGION_GFX2)[i] ^= 0xff;

	state_save_register_int("jumping", 0, "sound", &jumping_latch);
}
Exemple #11
0
ROM_END


static DRIVER_INIT( ninjaw )
{
	cpua_ctrl = 0xff;
	state_save_register_UINT16("main1", 0, "control", &cpua_ctrl, 1);
	state_save_register_func_postload(parse_control);

	state_save_register_int("sound1", 0, "sound region", &banknum);
	state_save_register_func_postload(reset_sound_region);
}
Exemple #12
0
int ide_controller_init_custom(int which, struct ide_interface *intf, struct chd_file *diskhandle)
{
	struct ide_state *ide = &idestate[which];
	const struct hard_disk_info *hdinfo;

	/* NULL interface is immediate failure */
	if (!intf)
		return 1;

	/* reset the IDE state */
	memset(ide, 0, sizeof(*ide));
	ide->intf = intf;

	/* set MAME harddisk handle */
	ide->disk = hard_disk_open(diskhandle);

	/* get and copy the geometry */
	if (ide->disk)
	{
		hdinfo = hard_disk_get_info(ide->disk);
		ide->num_cylinders = hdinfo->cylinders;
		ide->num_sectors = hdinfo->sectors;
		ide->num_heads = hdinfo->heads;
		if (hdinfo->sectorbytes != IDE_DISK_SECTOR_SIZE)
			/* wrong sector len */
			return 1;
#if PRINTF_IDE_COMMANDS
		printf("CHS: %d %d %d\n", ide->num_cylinders, ide->num_heads, ide->num_sectors);
#endif
	}

	/* build the features page */
	ide_build_features(ide);

	/* create a timer for timing status */
	ide->last_status_timer = timer_alloc(NULL);
	ide->reset_timer = timer_alloc(reset_callback);

	/* register ide status */
	state_save_register_UINT8 ("ide", which, "adapter_control",        &ide->adapter_control,       1);
	state_save_register_UINT8 ("ide", which, "status",                 &ide->status,                1);
	state_save_register_UINT8 ("ide", which, "error",                  &ide->error,                 1);
	state_save_register_UINT8 ("ide", which, "command",                &ide->command,               1);
	state_save_register_UINT8 ("ide", which, "interrupt_pending",      &ide->interrupt_pending,     1);
	state_save_register_UINT8 ("ide", which, "precomp_offset",         &ide->precomp_offset,        1);

	state_save_register_UINT8 ("ide", which, "buffer",                 ide->buffer,                 IDE_DISK_SECTOR_SIZE);
	state_save_register_UINT8 ("ide", which, "features",               ide->features,               IDE_DISK_SECTOR_SIZE);
	state_save_register_UINT16("ide", which, "buffer_offset",          &ide->buffer_offset,         1);
	state_save_register_UINT16("ide", which, "sector_count",           &ide->sector_count,          1);

	state_save_register_UINT16("ide", which, "block_count",            &ide->block_count,           1);
	state_save_register_UINT16("ide", which, "sectors_until_int",      &ide->sectors_until_int,     1);

	state_save_register_UINT8 ("ide", which, "dma_active",             &ide->dma_active,            1);
	state_save_register_UINT8 ("ide", which, "dma_cpu",                &ide->dma_cpu,               1);
	state_save_register_UINT8 ("ide", which, "dma_address_xor",        &ide->dma_address_xor,       1);
	state_save_register_UINT8 ("ide", which, "dma_last_buffer",        &ide->dma_last_buffer,       1);
	state_save_register_UINT32("ide", which, "dma_address",            &ide->dma_address,           1);
	state_save_register_UINT32("ide", which, "dma_descriptor",         &ide->dma_descriptor,        1);
	state_save_register_UINT32("ide", which, "dma_bytes_left",         &ide->dma_bytes_left,        1);

	state_save_register_UINT8 ("ide", which, "bus_master_command",     &ide->bus_master_command,    1);
	state_save_register_UINT8 ("ide", which, "bus_master_status",      &ide->bus_master_status,     1);
	state_save_register_UINT32("ide", which, "bus_master_descriptor",  &ide->bus_master_descriptor, 1);

	state_save_register_UINT16("ide", which, "cur_cylinder",           &ide->cur_cylinder,          1);
	state_save_register_UINT8 ("ide", which, "cur_sector",             &ide->cur_sector,            1);
	state_save_register_UINT8 ("ide", which, "cur_head",               &ide->cur_head,              1);
	state_save_register_UINT8 ("ide", which, "cur_head_reg",           &ide->cur_head_reg,          1);

	state_save_register_UINT32("ide", which, "cur_lba",                &ide->cur_lba,               1);

	state_save_register_UINT16("ide", which, "num_cylinders",          &ide->num_cylinders,         1);
	state_save_register_UINT8 ("ide", which, "num_sectors",            &ide->num_sectors,           1);
	state_save_register_UINT8 ("ide", which, "num_heads",              &ide->num_heads,             1);

	state_save_register_UINT8 ("ide", which, "config_unknown",         &ide->config_unknown,        1);
	state_save_register_UINT8 ("ide", which, "config_register",        ide->config_register,        IDE_CONFIG_REGISTERS);
	state_save_register_UINT8 ("ide", which, "config_register_num",    &ide->config_register_num,   1);

	state_save_register_int   ("ide", which, "master_password_enable", &ide->master_password_enable);
	state_save_register_int   ("ide", which, "user_password_enable",   &ide->user_password_enable);

	return 0;
}
Exemple #13
0
static void *qsound_start(int sndindex, int clock, const void *config)
{
	struct qsound_info *chip;
	int i;

	chip = auto_malloc(sizeof(*chip));
	memset(chip, 0, sizeof(chip));

	if (Machine->sample_rate == 0) return 0;

	chip->intf = config;

	chip->sample_rom = (QSOUND_SRC_SAMPLE *)memory_region(chip->intf->region);

	memset(chip->channel, 0, sizeof(chip->channel));

#if QSOUND_DRIVER1
	chip->frq_ratio = ((float)clock / (float)QSOUND_CLOCKDIV) /
						(float) Machine->sample_rate;
	chip->frq_ratio *= 16.0;

	/* Create pan table */
	for (i=0; i<33; i++)
	{
		chip->pan_table[i]=(int)((256/sqrt(32)) * sqrt(i));
	}
#else
	i=0;
#endif

#if LOG_QSOUND
	logerror("Pan table\n");
	for (i=0; i<33; i++)
		logerror("%02x ", chip->pan_table[i]);
#endif
	{
		/* Allocate stream */
#define CHANNELS ( 2 )
		chip->stream = stream_create(
			0, CHANNELS,
			Machine->sample_rate,
			chip,
			qsound_update );
	}

#if LOG_WAVE
	chip->fpRawDataR=fopen("qsoundr.raw", "w+b");
	chip->fpRawDataL=fopen("qsoundl.raw", "w+b");
	if (!chip->fpRawDataR || !chip->fpRawDataL)
	{
		return NULL;
	}
#endif

#if QSOUND_DRIVER1
	/* state save (DRIVER1) */
	for (i=0; i<QSOUND_CHANNELS; i++)
	{
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "bank", &chip->channel[i].bank);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "address", &chip->channel[i].address);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "pitch", &chip->channel[i].pitch);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "loop", &chip->channel[i].loop);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "end", &chip->channel[i].end);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "vol", &chip->channel[i].vol);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "pan", &chip->channel[i].pan);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "key", &chip->channel[i].key);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "lvol", &chip->channel[i].lvol);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "rvol", &chip->channel[i].rvol);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "lastdt", &chip->channel[i].lastdt);
		state_save_register_int("QSound", sndindex*QSOUND_CHANNELS+i, "offset", &chip->channel[i].offset);
	}
#endif

	return chip;
}
Exemple #14
0
ROM_END

static void init_bombjack(void)
{
	state_save_register_int ("main", 0, "sound latch", &latch);
}