mirror of
https://github.com/holub/mame
synced 2025-05-20 20:58:51 +03:00
Some more driver conversions to new functions.
This commit is contained in:
parent
c5089beeeb
commit
feaae49a0d
@ -69,14 +69,6 @@ struct ics2115{
|
|||||||
static int caller_get_pc(void)
|
static int caller_get_pc(void)
|
||||||
{
|
{
|
||||||
int pc = cpu_get_pc(Machine->activecpu);
|
int pc = cpu_get_pc(Machine->activecpu);
|
||||||
#if 0
|
|
||||||
if(pc == 0x14b || pc == 0x26e || pc == 0x284 || pc == 0x28d ||
|
|
||||||
pc == 0x290 || pc == 0x299 || pc == 0x2a2 || pc == 0x2b3) {
|
|
||||||
int sp = z80_get_reg(Z80_SP);
|
|
||||||
pc = program_read_word(sp)|(program_read_word((UINT16)(sp+1)) << 8);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return pc;
|
return pc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -227,7 +227,7 @@ struct _SCSP
|
|||||||
struct _SCSPDSP DSP;
|
struct _SCSPDSP DSP;
|
||||||
};
|
};
|
||||||
|
|
||||||
static void dma_scsp(running_machine *machine, struct _SCSP *SCSP); /*SCSP DMA transfer function*/
|
static void dma_scsp(const address_space *space, struct _SCSP *SCSP); /*SCSP DMA transfer function*/
|
||||||
#define scsp_dgate scsp_regs[0x16/2] & 0x4000
|
#define scsp_dgate scsp_regs[0x16/2] & 0x4000
|
||||||
#define scsp_ddir scsp_regs[0x16/2] & 0x2000
|
#define scsp_ddir scsp_regs[0x16/2] & 0x2000
|
||||||
#define scsp_dexe scsp_regs[0x16/2] & 0x1000
|
#define scsp_dexe scsp_regs[0x16/2] & 0x1000
|
||||||
@ -1153,7 +1153,7 @@ static void SCSP_DoMasterSamples(struct _SCSP *SCSP, int nsamples)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dma_scsp(running_machine *machine, struct _SCSP *SCSP)
|
static void dma_scsp(const address_space *space, struct _SCSP *SCSP)
|
||||||
{
|
{
|
||||||
static UINT16 tmp_dma[3], *scsp_regs;
|
static UINT16 tmp_dma[3], *scsp_regs;
|
||||||
|
|
||||||
@ -1176,7 +1176,7 @@ static void dma_scsp(running_machine *machine, struct _SCSP *SCSP)
|
|||||||
{
|
{
|
||||||
for(;SCSP->scsp_dtlg > 0;SCSP->scsp_dtlg-=2)
|
for(;SCSP->scsp_dtlg > 0;SCSP->scsp_dtlg-=2)
|
||||||
{
|
{
|
||||||
program_write_word(SCSP->scsp_dmea, program_read_word(0x100000|SCSP->scsp_drga));
|
memory_write_word(space,SCSP->scsp_dmea, memory_read_word(space,0x100000|SCSP->scsp_drga));
|
||||||
SCSP->scsp_dmea+=2;
|
SCSP->scsp_dmea+=2;
|
||||||
SCSP->scsp_drga+=2;
|
SCSP->scsp_drga+=2;
|
||||||
}
|
}
|
||||||
@ -1185,7 +1185,7 @@ static void dma_scsp(running_machine *machine, struct _SCSP *SCSP)
|
|||||||
{
|
{
|
||||||
for(;SCSP->scsp_dtlg > 0;SCSP->scsp_dtlg-=2)
|
for(;SCSP->scsp_dtlg > 0;SCSP->scsp_dtlg-=2)
|
||||||
{
|
{
|
||||||
program_write_word(0x100000|SCSP->scsp_drga,program_read_word(SCSP->scsp_dmea));
|
memory_write_word(space,0x100000|SCSP->scsp_drga,memory_read_word(space,SCSP->scsp_dmea));
|
||||||
SCSP->scsp_dmea+=2;
|
SCSP->scsp_dmea+=2;
|
||||||
SCSP->scsp_drga+=2;
|
SCSP->scsp_drga+=2;
|
||||||
}
|
}
|
||||||
@ -1201,7 +1201,7 @@ static void dma_scsp(running_machine *machine, struct _SCSP *SCSP)
|
|||||||
|
|
||||||
/*Job done,request a dma end irq*/
|
/*Job done,request a dma end irq*/
|
||||||
if(scsp_regs[0x1e/2] & 0x10)
|
if(scsp_regs[0x1e/2] & 0x10)
|
||||||
cpu_set_input_line(machine->cpu[2],dma_transfer_end,HOLD_LINE);
|
cpu_set_input_line(space->machine->cpu[2],dma_transfer_end,HOLD_LINE);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef UNUSED_FUNCTION
|
#ifdef UNUSED_FUNCTION
|
||||||
@ -1310,7 +1310,7 @@ WRITE16_HANDLER( scsp_0_w )
|
|||||||
SCSP->scsp_dtlg = scsp_regs[0x416/2] & 0x0ffe;
|
SCSP->scsp_dtlg = scsp_regs[0x416/2] & 0x0ffe;
|
||||||
if(scsp_dexe)
|
if(scsp_dexe)
|
||||||
{
|
{
|
||||||
dma_scsp(space->machine, SCSP);
|
dma_scsp(space, SCSP);
|
||||||
scsp_regs[0x416/2]^=0x1000;//disable starting bit
|
scsp_regs[0x416/2]^=0x1000;//disable starting bit
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -228,7 +228,7 @@ static TIMER_CALLBACK( dma_timer_callback )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void update_dma_state(void)
|
static void update_dma_state(const address_space *space)
|
||||||
{
|
{
|
||||||
/* determine the new enabled state */
|
/* determine the new enabled state */
|
||||||
int enabled = ((tms32031_io_regs[DMA_GLOBAL_CTL] & 3) == 3) && (tms32031_io_regs[DMA_TRANSFER_COUNT] != 0);
|
int enabled = ((tms32031_io_regs[DMA_GLOBAL_CTL] & 3) == 3) && (tms32031_io_regs[DMA_TRANSFER_COUNT] != 0);
|
||||||
@ -251,7 +251,7 @@ static void update_dma_state(void)
|
|||||||
inc = (tms32031_io_regs[DMA_GLOBAL_CTL] >> 4) & 1;
|
inc = (tms32031_io_regs[DMA_GLOBAL_CTL] >> 4) & 1;
|
||||||
for (i = 0; i < tms32031_io_regs[DMA_TRANSFER_COUNT]; i++)
|
for (i = 0; i < tms32031_io_regs[DMA_TRANSFER_COUNT]; i++)
|
||||||
{
|
{
|
||||||
sound_data[i % STACK_SOUND_BUFSIZE] = program_read_dword(addr * 4);
|
sound_data[i % STACK_SOUND_BUFSIZE] = memory_read_dword(space, addr * 4);
|
||||||
addr += inc;
|
addr += inc;
|
||||||
if (i % STACK_SOUND_BUFSIZE == STACK_SOUND_BUFSIZE - 1)
|
if (i % STACK_SOUND_BUFSIZE == STACK_SOUND_BUFSIZE - 1)
|
||||||
dmadac_transfer(0, DAC_BUFFER_CHANNELS, 1, DAC_BUFFER_CHANNELS, STACK_SOUND_BUFSIZE / DAC_BUFFER_CHANNELS, sound_data);
|
dmadac_transfer(0, DAC_BUFFER_CHANNELS, 1, DAC_BUFFER_CHANNELS, STACK_SOUND_BUFSIZE / DAC_BUFFER_CHANNELS, sound_data);
|
||||||
@ -399,7 +399,7 @@ static WRITE32_HANDLER( tms32031_io_w )
|
|||||||
case DMA_SOURCE_ADDR:
|
case DMA_SOURCE_ADDR:
|
||||||
case DMA_DEST_ADDR:
|
case DMA_DEST_ADDR:
|
||||||
case DMA_TRANSFER_COUNT:
|
case DMA_TRANSFER_COUNT:
|
||||||
update_dma_state();
|
update_dma_state(space);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TIMER0_GLOBAL_CTL:
|
case TIMER0_GLOBAL_CTL:
|
||||||
|
@ -149,6 +149,7 @@
|
|||||||
|
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
|
#define NO_LEGACY_MEMORY_HANDLERS 1
|
||||||
#include "driver.h"
|
#include "driver.h"
|
||||||
#include "deprecat.h"
|
#include "deprecat.h"
|
||||||
#include "cpu/adsp2100/adsp2100.h"
|
#include "cpu/adsp2100/adsp2100.h"
|
||||||
@ -286,6 +287,8 @@ typedef struct _dcs_state dcs_state;
|
|||||||
struct _dcs_state
|
struct _dcs_state
|
||||||
{
|
{
|
||||||
const device_config *cpu;
|
const device_config *cpu;
|
||||||
|
const address_space *program;
|
||||||
|
const address_space *data;
|
||||||
UINT8 rev;
|
UINT8 rev;
|
||||||
|
|
||||||
/* sound output */
|
/* sound output */
|
||||||
@ -911,6 +914,8 @@ void dcs_init(running_machine *machine)
|
|||||||
|
|
||||||
/* find the DCS CPU and the sound ROMs */
|
/* find the DCS CPU and the sound ROMs */
|
||||||
dcs.cpu = cputag_get_cpu(machine, "dcs");
|
dcs.cpu = cputag_get_cpu(machine, "dcs");
|
||||||
|
dcs.program = cpu_get_address_space(dcs.cpu, ADDRESS_SPACE_PROGRAM);
|
||||||
|
dcs.data = cpu_get_address_space(dcs.cpu, ADDRESS_SPACE_DATA);
|
||||||
dcs.rev = 1;
|
dcs.rev = 1;
|
||||||
dcs.channels = 1;
|
dcs.channels = 1;
|
||||||
|
|
||||||
@ -1092,24 +1097,24 @@ static void sdrc_remap_memory(running_machine *machine)
|
|||||||
/* if SRAM disabled, clean it out */
|
/* if SRAM disabled, clean it out */
|
||||||
if (SDRC_SM_EN == 0)
|
if (SDRC_SM_EN == 0)
|
||||||
{
|
{
|
||||||
memory_install_readwrite32_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_PROGRAM), 0x0800, 0x3fff, 0, 0, SMH_UNMAP, SMH_UNMAP);
|
memory_install_readwrite32_handler(dcs.program, 0x0800, 0x3fff, 0, 0, SMH_UNMAP, SMH_UNMAP);
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), 0x0800, 0x37ff, 0, 0, SMH_UNMAP, SMH_UNMAP);
|
memory_install_readwrite16_handler(dcs.data, 0x0800, 0x37ff, 0, 0, SMH_UNMAP, SMH_UNMAP);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* otherwise, map the SRAM */
|
/* otherwise, map the SRAM */
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* first start with a clean program map */
|
/* first start with a clean program map */
|
||||||
memory_install_readwrite32_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_PROGRAM), 0x0800, 0x3fff, 0, 0, SMH_BANK21, SMH_BANK21);
|
memory_install_readwrite32_handler(dcs.program, 0x0800, 0x3fff, 0, 0, SMH_BANK21, SMH_BANK21);
|
||||||
memory_set_bankptr(machine, 21, dcs_sram + 0x4800);
|
memory_set_bankptr(machine, 21, dcs_sram + 0x4800);
|
||||||
|
|
||||||
/* set up the data map based on the SRAM banking */
|
/* set up the data map based on the SRAM banking */
|
||||||
/* map 0: ram from 0800-37ff */
|
/* map 0: ram from 0800-37ff */
|
||||||
if (SDRC_SM_BK == 0)
|
if (SDRC_SM_BK == 0)
|
||||||
{
|
{
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), 0x0800, 0x17ff, 0, 0, SMH_BANK22, SMH_BANK22);
|
memory_install_readwrite16_handler(dcs.data, 0x0800, 0x17ff, 0, 0, SMH_BANK22, SMH_BANK22);
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), 0x1800, 0x27ff, 0, 0, SMH_BANK23, SMH_BANK23);
|
memory_install_readwrite16_handler(dcs.data, 0x1800, 0x27ff, 0, 0, SMH_BANK23, SMH_BANK23);
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), 0x2800, 0x37ff, 0, 0, SMH_BANK24, SMH_BANK24);
|
memory_install_readwrite16_handler(dcs.data, 0x2800, 0x37ff, 0, 0, SMH_BANK24, SMH_BANK24);
|
||||||
memory_set_bankptr(machine, 22, dcs_sram + 0x0000);
|
memory_set_bankptr(machine, 22, dcs_sram + 0x0000);
|
||||||
memory_set_bankptr(machine, 23, dcs_sram + 0x1000);
|
memory_set_bankptr(machine, 23, dcs_sram + 0x1000);
|
||||||
memory_set_bankptr(machine, 24, dcs_sram + 0x2000);
|
memory_set_bankptr(machine, 24, dcs_sram + 0x2000);
|
||||||
@ -1118,9 +1123,9 @@ static void sdrc_remap_memory(running_machine *machine)
|
|||||||
/* map 1: nothing from 0800-17ff, alternate RAM at 1800-27ff, same RAM at 2800-37ff */
|
/* map 1: nothing from 0800-17ff, alternate RAM at 1800-27ff, same RAM at 2800-37ff */
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), 0x0800, 0x17ff, 0, 0, SMH_UNMAP, SMH_UNMAP);
|
memory_install_readwrite16_handler(dcs.data, 0x0800, 0x17ff, 0, 0, SMH_UNMAP, SMH_UNMAP);
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), 0x1800, 0x27ff, 0, 0, SMH_BANK23, SMH_BANK23);
|
memory_install_readwrite16_handler(dcs.data, 0x1800, 0x27ff, 0, 0, SMH_BANK23, SMH_BANK23);
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), 0x2800, 0x37ff, 0, 0, SMH_BANK24, SMH_BANK24);
|
memory_install_readwrite16_handler(dcs.data, 0x2800, 0x37ff, 0, 0, SMH_BANK24, SMH_BANK24);
|
||||||
memory_set_bankptr(machine, 23, dcs_sram + 0x3000);
|
memory_set_bankptr(machine, 23, dcs_sram + 0x3000);
|
||||||
memory_set_bankptr(machine, 24, dcs_sram + 0x2000);
|
memory_set_bankptr(machine, 24, dcs_sram + 0x2000);
|
||||||
}
|
}
|
||||||
@ -1131,14 +1136,14 @@ static void sdrc_remap_memory(running_machine *machine)
|
|||||||
{
|
{
|
||||||
int baseaddr = (SDRC_ROM_ST == 0) ? 0x0000 : (SDRC_ROM_ST == 1) ? 0x3000 : 0x3400;
|
int baseaddr = (SDRC_ROM_ST == 0) ? 0x0000 : (SDRC_ROM_ST == 1) ? 0x3000 : 0x3400;
|
||||||
int pagesize = (SDRC_ROM_SZ == 0 && SDRC_ROM_ST != 0) ? 4096 : 1024;
|
int pagesize = (SDRC_ROM_SZ == 0 && SDRC_ROM_ST != 0) ? 4096 : 1024;
|
||||||
memory_install_read16_handler(cpu_get_address_space(dcs.cpu, ADDRESS_SPACE_DATA), baseaddr, baseaddr + pagesize - 1, 0, 0, SMH_BANK25);
|
memory_install_read16_handler(dcs.data, baseaddr, baseaddr + pagesize - 1, 0, 0, SMH_BANK25);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* map the DRAM page as bank 26 */
|
/* map the DRAM page as bank 26 */
|
||||||
if (SDRC_DM_ST != 0)
|
if (SDRC_DM_ST != 0)
|
||||||
{
|
{
|
||||||
int baseaddr = (SDRC_DM_ST == 1) ? 0x0000 : (SDRC_DM_ST == 2) ? 0x3000 : 0x3400;
|
int baseaddr = (SDRC_DM_ST == 1) ? 0x0000 : (SDRC_DM_ST == 2) ? 0x3000 : 0x3400;
|
||||||
memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[cpu_get_index(dcs.cpu)], ADDRESS_SPACE_DATA), baseaddr, baseaddr + 0x3ff, 0, 0, SMH_BANK26, SMH_BANK26);
|
memory_install_readwrite16_handler(dcs.data, baseaddr, baseaddr + 0x3ff, 0, 0, SMH_BANK26, SMH_BANK26);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* update the bank pointers */
|
/* update the bank pointers */
|
||||||
@ -1747,11 +1752,11 @@ static void reset_timer(running_machine *machine)
|
|||||||
/* Road Burners: @ 28: JMP $0032 18032F, same code at $32 */
|
/* Road Burners: @ 28: JMP $0032 18032F, same code at $32 */
|
||||||
|
|
||||||
cpu_push_context(dcs.cpu);
|
cpu_push_context(dcs.cpu);
|
||||||
if (program_read_dword(0x18*4) == 0x0c0030 && /* ENA SEC_REG */
|
if (memory_read_dword(dcs.program, 0x18*4) == 0x0c0030 && /* ENA SEC_REG */
|
||||||
program_read_dword(0x19*4) == 0x804828 && /* SI = DM($0482) */
|
memory_read_dword(dcs.program, 0x19*4) == 0x804828 && /* SI = DM($0482) */
|
||||||
program_read_dword(0x1a*4) == 0x904828 && /* DM($0482) = SI */
|
memory_read_dword(dcs.program, 0x1a*4) == 0x904828 && /* DM($0482) = SI */
|
||||||
program_read_dword(0x1b*4) == 0x0C0020 && /* DIS SEC_REG */
|
memory_read_dword(dcs.program, 0x1b*4) == 0x0C0020 && /* DIS SEC_REG */
|
||||||
program_read_dword(0x1c*4) == 0x0A001F) /* RTI */
|
memory_read_dword(dcs.program, 0x1c*4) == 0x0A001F) /* RTI */
|
||||||
{
|
{
|
||||||
dcs.timer_ignore = TRUE;
|
dcs.timer_ignore = TRUE;
|
||||||
}
|
}
|
||||||
@ -1923,7 +1928,7 @@ static TIMER_CALLBACK( dcs_irq )
|
|||||||
cpu_push_context(dcs.cpu);
|
cpu_push_context(dcs.cpu);
|
||||||
for (i = 0; i < count; i++)
|
for (i = 0; i < count; i++)
|
||||||
{
|
{
|
||||||
buffer[i] = data_read_word_16le(reg * 2);
|
buffer[i] = memory_read_word(dcs.data, reg * 2);
|
||||||
reg += dcs.incs;
|
reg += dcs.incs;
|
||||||
}
|
}
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
@ -2213,10 +2218,10 @@ static int preprocess_stage_1(running_machine *machine, UINT16 data)
|
|||||||
if (transfer.writes_left & 1)
|
if (transfer.writes_left & 1)
|
||||||
transfer.temp = data;
|
transfer.temp = data;
|
||||||
else
|
else
|
||||||
program_write_dword(transfer.start++ * 4, (transfer.temp << 8) | (data & 0xff));
|
memory_write_dword(dcs.program, transfer.start++ * 4, (transfer.temp << 8) | (data & 0xff));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
data_write_word(transfer.start++ * 2, data);
|
memory_write_word(dcs.data, transfer.start++ * 2, data);
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
|
|
||||||
/* if we're done, start a timer to send the response words */
|
/* if we're done, start a timer to send the response words */
|
||||||
|
@ -370,6 +370,7 @@ static void leland_80186_dac_update(void *param, stream_sample_t **inputs, strea
|
|||||||
|
|
||||||
static void leland_80186_dma_update(void *param, stream_sample_t **inputs, stream_sample_t **outputs, int length)
|
static void leland_80186_dma_update(void *param, stream_sample_t **inputs, stream_sample_t **outputs, int length)
|
||||||
{
|
{
|
||||||
|
const address_space *dmaspace = param;
|
||||||
stream_sample_t *buffer = outputs[0];
|
stream_sample_t *buffer = outputs[0];
|
||||||
int i, j;
|
int i, j;
|
||||||
|
|
||||||
@ -377,7 +378,7 @@ static void leland_80186_dma_update(void *param, stream_sample_t **inputs, strea
|
|||||||
memset(buffer, 0, length * sizeof(*buffer));
|
memset(buffer, 0, length * sizeof(*buffer));
|
||||||
|
|
||||||
/* loop over DMA buffers */
|
/* loop over DMA buffers */
|
||||||
cpu_push_context(Machine->cpu[2]);
|
cpu_push_context(dmaspace->cpu);
|
||||||
for (i = 0; i < 2; i++)
|
for (i = 0; i < 2; i++)
|
||||||
{
|
{
|
||||||
struct dma_state *d = &i80186.dma[i];
|
struct dma_state *d = &i80186.dma[i];
|
||||||
@ -419,7 +420,7 @@ static void leland_80186_dma_update(void *param, stream_sample_t **inputs, strea
|
|||||||
/* sample-rate convert to the output frequency */
|
/* sample-rate convert to the output frequency */
|
||||||
for (j = 0; j < length && count > 0; j++)
|
for (j = 0; j < length && count > 0; j++)
|
||||||
{
|
{
|
||||||
buffer[j] += ((int)program_read_byte(source) - 0x80) * volume;
|
buffer[j] += ((int)memory_read_byte(dmaspace, source) - 0x80) * volume;
|
||||||
frac += step;
|
frac += step;
|
||||||
source += frac >> 24;
|
source += frac >> 24;
|
||||||
count -= frac >> 24;
|
count -= frac >> 24;
|
||||||
@ -504,6 +505,7 @@ static TIMER_CALLBACK( dma_timer_callback );
|
|||||||
|
|
||||||
void *leland_80186_sh_start(int clock, const custom_sound_interface *config)
|
void *leland_80186_sh_start(int clock, const custom_sound_interface *config)
|
||||||
{
|
{
|
||||||
|
const address_space *dmaspace = cputag_get_address_space(Machine, "audio", ADDRESS_SPACE_PROGRAM);
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* determine which sound hardware is installed */
|
/* determine which sound hardware is installed */
|
||||||
@ -513,7 +515,7 @@ void *leland_80186_sh_start(int clock, const custom_sound_interface *config)
|
|||||||
has_ym2151 = 1;
|
has_ym2151 = 1;
|
||||||
|
|
||||||
/* allocate separate streams for the DMA and non-DMA DACs */
|
/* allocate separate streams for the DMA and non-DMA DACs */
|
||||||
dma_stream = stream_create(0, 1, OUTPUT_RATE, NULL, leland_80186_dma_update);
|
dma_stream = stream_create(0, 1, OUTPUT_RATE, (void *)dmaspace, leland_80186_dma_update);
|
||||||
nondma_stream = stream_create(0, 1, OUTPUT_RATE, NULL, leland_80186_dac_update);
|
nondma_stream = stream_create(0, 1, OUTPUT_RATE, NULL, leland_80186_dac_update);
|
||||||
|
|
||||||
/* if we have a 2151, install an externally driven DAC stream */
|
/* if we have a 2151, install an externally driven DAC stream */
|
||||||
|
@ -152,10 +152,10 @@ static WRITE16_HANDLER( protection_w )
|
|||||||
{
|
{
|
||||||
case 0x64:
|
case 0x64:
|
||||||
{
|
{
|
||||||
UINT32 param1 = (program_read_word(cmd & 0xffffff) << 16)
|
UINT32 param1 = (memory_read_word(space, cmd & 0xffffff) << 16)
|
||||||
| program_read_word((cmd & 0xffffff) + 2);
|
| memory_read_word(space, (cmd & 0xffffff) + 2);
|
||||||
UINT32 param2 = (program_read_word((cmd & 0xffffff) + 4) << 16)
|
UINT32 param2 = (memory_read_word(space, (cmd & 0xffffff) + 4) << 16)
|
||||||
| program_read_word((cmd & 0xffffff) + 6);
|
| memory_read_word(space, (cmd & 0xffffff) + 6);
|
||||||
|
|
||||||
switch (param1 >> 24)
|
switch (param1 >> 24)
|
||||||
{
|
{
|
||||||
@ -166,7 +166,7 @@ static WRITE16_HANDLER( protection_w )
|
|||||||
param2 &= 0xffffff;
|
param2 &= 0xffffff;
|
||||||
while(size >= 0)
|
while(size >= 0)
|
||||||
{
|
{
|
||||||
program_write_word(param2, program_read_word(param1));
|
memory_write_word(space, param2, memory_read_word(space, param1));
|
||||||
param1 += 2;
|
param1 += 2;
|
||||||
param2 += 2;
|
param2 += 2;
|
||||||
size--;
|
size--;
|
||||||
|
@ -41,8 +41,8 @@ UINT8 atarigt_is_primrage;
|
|||||||
|
|
||||||
static UINT32 * mo_command;
|
static UINT32 * mo_command;
|
||||||
|
|
||||||
static void (*protection_w)(running_machine *machine, offs_t offset, UINT16 data);
|
static void (*protection_w)(const address_space *space, offs_t offset, UINT16 data);
|
||||||
static void (*protection_r)(running_machine *machine, offs_t offset, UINT16 *data);
|
static void (*protection_r)(const address_space *space, offs_t offset, UINT16 *data);
|
||||||
|
|
||||||
static void cage_irq_callback(running_machine *machine, int reason);
|
static void cage_irq_callback(running_machine *machine, int reason);
|
||||||
|
|
||||||
@ -276,9 +276,9 @@ static void tmek_update_mode(offs_t offset)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void tmek_protection_w(running_machine *machine, offs_t offset, UINT16 data)
|
static void tmek_protection_w(const address_space *space, offs_t offset, UINT16 data)
|
||||||
{
|
{
|
||||||
if (LOG_PROTECTION) logerror("%06X:Protection W@%06X = %04X\n", cpu_get_previouspc(machine->activecpu), offset, data);
|
if (LOG_PROTECTION) logerror("%06X:Protection W@%06X = %04X\n", cpu_get_previouspc(space->cpu), offset, data);
|
||||||
|
|
||||||
/* track accesses */
|
/* track accesses */
|
||||||
tmek_update_mode(offset);
|
tmek_update_mode(offset);
|
||||||
@ -291,9 +291,9 @@ static void tmek_protection_w(running_machine *machine, offs_t offset, UINT16 da
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void tmek_protection_r(running_machine *machine, offs_t offset, UINT16 *data)
|
static void tmek_protection_r(const address_space *space, offs_t offset, UINT16 *data)
|
||||||
{
|
{
|
||||||
if (LOG_PROTECTION) logerror("%06X:Protection R@%06X\n", cpu_get_previouspc(machine->activecpu), offset);
|
if (LOG_PROTECTION) logerror("%06X:Protection R@%06X\n", cpu_get_previouspc(space->cpu), offset);
|
||||||
|
|
||||||
/* track accesses */
|
/* track accesses */
|
||||||
tmek_update_mode(offset);
|
tmek_update_mode(offset);
|
||||||
@ -357,11 +357,11 @@ static void primage_update_mode(offs_t offset)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
static void primrage_protection_w(running_machine *machine, offs_t offset, UINT16 data)
|
static void primrage_protection_w(const address_space *space, offs_t offset, UINT16 data)
|
||||||
{
|
{
|
||||||
if (LOG_PROTECTION)
|
if (LOG_PROTECTION)
|
||||||
{
|
{
|
||||||
UINT32 pc = cpu_get_previouspc(machine->activecpu);
|
UINT32 pc = cpu_get_previouspc(space->cpu);
|
||||||
switch (pc)
|
switch (pc)
|
||||||
{
|
{
|
||||||
/* protection code from 20f90 - 21000 */
|
/* protection code from 20f90 - 21000 */
|
||||||
@ -394,7 +394,7 @@ static void primrage_protection_w(running_machine *machine, offs_t offset, UINT1
|
|||||||
|
|
||||||
/* catch anything else */
|
/* catch anything else */
|
||||||
default:
|
default:
|
||||||
logerror("%06X:Unknown protection W@%06X = %04X\n", cpu_get_previouspc(machine->activecpu), offset, data);
|
logerror("%06X:Unknown protection W@%06X = %04X\n", cpu_get_previouspc(space->cpu), offset, data);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -427,14 +427,14 @@ static void primrage_protection_w(running_machine *machine, offs_t offset, UINT1
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
static void primrage_protection_r(running_machine *machine, offs_t offset, UINT16 *data)
|
static void primrage_protection_r(const address_space *space, offs_t offset, UINT16 *data)
|
||||||
{
|
{
|
||||||
/* track accesses */
|
/* track accesses */
|
||||||
primage_update_mode(offset);
|
primage_update_mode(offset);
|
||||||
|
|
||||||
if (LOG_PROTECTION)
|
if (LOG_PROTECTION)
|
||||||
{
|
{
|
||||||
UINT32 pc = cpu_get_previouspc(machine->activecpu);
|
UINT32 pc = cpu_get_previouspc(space->cpu);
|
||||||
UINT32 p1, p2, a6;
|
UINT32 p1, p2, a6;
|
||||||
switch (pc)
|
switch (pc)
|
||||||
{
|
{
|
||||||
@ -454,9 +454,9 @@ if (LOG_PROTECTION)
|
|||||||
case 0x275bc:
|
case 0x275bc:
|
||||||
break;
|
break;
|
||||||
case 0x275cc:
|
case 0x275cc:
|
||||||
a6 = cpu_get_reg(machine->activecpu, M68K_A6);
|
a6 = cpu_get_reg(space->cpu, M68K_A6);
|
||||||
p1 = (program_read_word(a6+8) << 16) | program_read_word(a6+10);
|
p1 = (memory_read_word(space, a6+8) << 16) | memory_read_word(space, a6+10);
|
||||||
p2 = (program_read_word(a6+12) << 16) | program_read_word(a6+14);
|
p2 = (memory_read_word(space, a6+12) << 16) | memory_read_word(space, a6+14);
|
||||||
logerror("Known Protection @ 275BC(%08X, %08X): R@%06X ", p1, p2, offset);
|
logerror("Known Protection @ 275BC(%08X, %08X): R@%06X ", p1, p2, offset);
|
||||||
break;
|
break;
|
||||||
case 0x275d2:
|
case 0x275d2:
|
||||||
@ -472,8 +472,8 @@ if (LOG_PROTECTION)
|
|||||||
|
|
||||||
/* protection code from 3d8dc - 3d95a */
|
/* protection code from 3d8dc - 3d95a */
|
||||||
case 0x3d8f4:
|
case 0x3d8f4:
|
||||||
a6 = cpu_get_reg(machine->activecpu, M68K_A6);
|
a6 = cpu_get_reg(space->cpu, M68K_A6);
|
||||||
p1 = (program_read_word(a6+12) << 16) | program_read_word(a6+14);
|
p1 = (memory_read_word(space, a6+12) << 16) | memory_read_word(space, a6+14);
|
||||||
logerror("Known Protection @ 3D8F4(%08X): R@%06X ", p1, offset);
|
logerror("Known Protection @ 3D8F4(%08X): R@%06X ", p1, offset);
|
||||||
break;
|
break;
|
||||||
case 0x3d8fa:
|
case 0x3d8fa:
|
||||||
@ -483,8 +483,8 @@ if (LOG_PROTECTION)
|
|||||||
|
|
||||||
/* protection code from 437fa - 43860 */
|
/* protection code from 437fa - 43860 */
|
||||||
case 0x43814:
|
case 0x43814:
|
||||||
a6 = cpu_get_reg(machine->activecpu, M68K_A6);
|
a6 = cpu_get_reg(space->cpu, M68K_A6);
|
||||||
p1 = program_read_dword(a6+14) & 0xffffff;
|
p1 = memory_read_dword(space, a6+14) & 0xffffff;
|
||||||
logerror("Known Protection @ 43814(%08X): R@%06X ", p1, offset);
|
logerror("Known Protection @ 43814(%08X): R@%06X ", p1, offset);
|
||||||
break;
|
break;
|
||||||
case 0x4381c:
|
case 0x4381c:
|
||||||
@ -497,7 +497,7 @@ if (LOG_PROTECTION)
|
|||||||
|
|
||||||
/* catch anything else */
|
/* catch anything else */
|
||||||
default:
|
default:
|
||||||
logerror("%06X:Unknown protection R@%06X\n", cpu_get_previouspc(machine->activecpu), offset);
|
logerror("%06X:Unknown protection R@%06X\n", cpu_get_previouspc(space->cpu), offset);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -550,13 +550,13 @@ static READ32_HANDLER( colorram_protection_r )
|
|||||||
if (ACCESSING_BITS_16_31)
|
if (ACCESSING_BITS_16_31)
|
||||||
{
|
{
|
||||||
result = atarigt_colorram_r(address);
|
result = atarigt_colorram_r(address);
|
||||||
(*protection_r)(space->machine, address, &result);
|
(*protection_r)(space, address, &result);
|
||||||
result32 |= result << 16;
|
result32 |= result << 16;
|
||||||
}
|
}
|
||||||
if (ACCESSING_BITS_0_15)
|
if (ACCESSING_BITS_0_15)
|
||||||
{
|
{
|
||||||
result = atarigt_colorram_r(address + 2);
|
result = atarigt_colorram_r(address + 2);
|
||||||
(*protection_r)(space->machine, address + 2, &result);
|
(*protection_r)(space, address + 2, &result);
|
||||||
result32 |= result;
|
result32 |= result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -572,13 +572,13 @@ static WRITE32_HANDLER( colorram_protection_w )
|
|||||||
{
|
{
|
||||||
if (!ignore_writes)
|
if (!ignore_writes)
|
||||||
atarigt_colorram_w(address, data >> 16, mem_mask >> 16);
|
atarigt_colorram_w(address, data >> 16, mem_mask >> 16);
|
||||||
(*protection_w)(space->machine, address, data >> 16);
|
(*protection_w)(space, address, data >> 16);
|
||||||
}
|
}
|
||||||
if (ACCESSING_BITS_0_15)
|
if (ACCESSING_BITS_0_15)
|
||||||
{
|
{
|
||||||
if (!ignore_writes)
|
if (!ignore_writes)
|
||||||
atarigt_colorram_w(address + 2, data, mem_mask);
|
atarigt_colorram_w(address + 2, data, mem_mask);
|
||||||
(*protection_w)(space->machine, address + 2, data);
|
(*protection_w)(space, address + 2, data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -141,12 +141,13 @@ static UINT32 *ResetPatch;
|
|||||||
|
|
||||||
static void IntReq(running_machine *machine, int num)
|
static void IntReq(running_machine *machine, int num)
|
||||||
{
|
{
|
||||||
UINT32 IntEn=program_read_dword_32le(0x01800c08);
|
const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
UINT32 IntPend=program_read_dword_32le(0x01800c0c);
|
UINT32 IntEn=memory_read_dword(space, 0x01800c08);
|
||||||
|
UINT32 IntPend=memory_read_dword(space, 0x01800c0c);
|
||||||
if(IntEn&(1<<num))
|
if(IntEn&(1<<num))
|
||||||
{
|
{
|
||||||
IntPend|=(1<<num);
|
IntPend|=(1<<num);
|
||||||
program_write_dword_32le(0x01800c0c,IntPend);
|
memory_write_dword(space,0x01800c0c,IntPend);
|
||||||
cpu_set_input_line(machine->cpu[0],SE3208_INT,ASSERT_LINE);
|
cpu_set_input_line(machine->cpu[0],SE3208_INT,ASSERT_LINE);
|
||||||
}
|
}
|
||||||
#ifdef IDLE_LOOP_SPEEDUP
|
#ifdef IDLE_LOOP_SPEEDUP
|
||||||
@ -158,7 +159,7 @@ static void IntReq(running_machine *machine, int num)
|
|||||||
static READ32_HANDLER(FlipCount_r)
|
static READ32_HANDLER(FlipCount_r)
|
||||||
{
|
{
|
||||||
#ifdef IDLE_LOOP_SPEEDUP
|
#ifdef IDLE_LOOP_SPEEDUP
|
||||||
UINT32 IntPend=program_read_dword_32le(0x01800c0c);
|
UINT32 IntPend=memory_read_dword(space, 0x01800c0c);
|
||||||
FlipCntRead++;
|
FlipCntRead++;
|
||||||
if(FlipCntRead>=16 && !IntPend && FlipCount!=0)
|
if(FlipCntRead>=16 && !IntPend && FlipCount!=0)
|
||||||
cpu_suspend(space->machine->cpu[0],SUSPEND_REASON_SPIN,1);
|
cpu_suspend(space->machine->cpu[0],SUSPEND_REASON_SPIN,1);
|
||||||
@ -199,11 +200,11 @@ static READ32_HANDLER(Input_r)
|
|||||||
|
|
||||||
static WRITE32_HANDLER(IntAck_w)
|
static WRITE32_HANDLER(IntAck_w)
|
||||||
{
|
{
|
||||||
UINT32 IntPend=program_read_dword_32le(0x01800c0c);
|
UINT32 IntPend=memory_read_dword(space, 0x01800c0c);
|
||||||
if(mem_mask&0xff)
|
if(mem_mask&0xff)
|
||||||
{
|
{
|
||||||
IntPend&=~(1<<(data&0x1f));
|
IntPend&=~(1<<(data&0x1f));
|
||||||
program_write_dword_32le(0x01800c0c,IntPend);
|
memory_write_dword(space, 0x01800c0c,IntPend);
|
||||||
if(!IntPend)
|
if(!IntPend)
|
||||||
cpu_set_input_line(space->machine->cpu[0],SE3208_INT,CLEAR_LINE);
|
cpu_set_input_line(space->machine->cpu[0],SE3208_INT,CLEAR_LINE);
|
||||||
}
|
}
|
||||||
@ -213,8 +214,9 @@ static WRITE32_HANDLER(IntAck_w)
|
|||||||
|
|
||||||
static IRQ_CALLBACK(icallback)
|
static IRQ_CALLBACK(icallback)
|
||||||
{
|
{
|
||||||
|
const address_space *space = cpu_get_address_space(device, ADDRESS_SPACE_PROGRAM);
|
||||||
|
UINT32 IntPend=memory_read_dword(space, 0x01800c0c);
|
||||||
int i;
|
int i;
|
||||||
UINT32 IntPend=program_read_dword_32le(0x01800c0c);
|
|
||||||
|
|
||||||
for(i=0;i<32;++i)
|
for(i=0;i<32;++i)
|
||||||
{
|
{
|
||||||
@ -245,12 +247,12 @@ static TIMER_CALLBACK( Timercb )
|
|||||||
IntReq(machine, num[which]);
|
IntReq(machine, num[which]);
|
||||||
}
|
}
|
||||||
|
|
||||||
INLINE void Timer_w(int which, UINT32 data, UINT32 mem_mask)
|
INLINE void Timer_w(const address_space *space, int which, UINT32 data, UINT32 mem_mask)
|
||||||
{
|
{
|
||||||
if(((data^Timerctrl[which])&1) && (data&1)) //Timer activate
|
if(((data^Timerctrl[which])&1) && (data&1)) //Timer activate
|
||||||
{
|
{
|
||||||
int PD=(data>>8)&0xff;
|
int PD=(data>>8)&0xff;
|
||||||
int TCV=program_read_dword_32le(0x01801404+which*8);
|
int TCV=memory_read_dword(space, 0x01801404+which*8);
|
||||||
attotime period = attotime_mul(ATTOTIME_IN_HZ(43000000), (PD + 1) * (TCV + 1));
|
attotime period = attotime_mul(ATTOTIME_IN_HZ(43000000), (PD + 1) * (TCV + 1));
|
||||||
|
|
||||||
if(Timerctrl[which]&2)
|
if(Timerctrl[which]&2)
|
||||||
@ -263,7 +265,7 @@ INLINE void Timer_w(int which, UINT32 data, UINT32 mem_mask)
|
|||||||
|
|
||||||
static WRITE32_HANDLER(Timer0_w)
|
static WRITE32_HANDLER(Timer0_w)
|
||||||
{
|
{
|
||||||
Timer_w(0, data, mem_mask);
|
Timer_w(space, 0, data, mem_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
static READ32_HANDLER(Timer0_r)
|
static READ32_HANDLER(Timer0_r)
|
||||||
@ -273,7 +275,7 @@ static READ32_HANDLER(Timer0_r)
|
|||||||
|
|
||||||
static WRITE32_HANDLER(Timer1_w)
|
static WRITE32_HANDLER(Timer1_w)
|
||||||
{
|
{
|
||||||
Timer_w(1, data, mem_mask);
|
Timer_w(space, 1, data, mem_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
static READ32_HANDLER(Timer1_r)
|
static READ32_HANDLER(Timer1_r)
|
||||||
@ -283,7 +285,7 @@ static READ32_HANDLER(Timer1_r)
|
|||||||
|
|
||||||
static WRITE32_HANDLER(Timer2_w)
|
static WRITE32_HANDLER(Timer2_w)
|
||||||
{
|
{
|
||||||
Timer_w(2, data, mem_mask);
|
Timer_w(space, 2, data, mem_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
static READ32_HANDLER(Timer2_r)
|
static READ32_HANDLER(Timer2_r)
|
||||||
@ -293,7 +295,7 @@ static READ32_HANDLER(Timer2_r)
|
|||||||
|
|
||||||
static WRITE32_HANDLER(Timer3_w)
|
static WRITE32_HANDLER(Timer3_w)
|
||||||
{
|
{
|
||||||
Timer_w(3, data, mem_mask);
|
Timer_w(space, 3, data, mem_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
static READ32_HANDLER(Timer3_r)
|
static READ32_HANDLER(Timer3_r)
|
||||||
@ -344,50 +346,50 @@ static WRITE32_HANDLER(PIO_w)
|
|||||||
DS1302_CLK(space->machine, CLK?1:0);
|
DS1302_CLK(space->machine, CLK?1:0);
|
||||||
|
|
||||||
if(DS1302_RD())
|
if(DS1302_RD())
|
||||||
program_write_dword_32le(0x01802008,program_read_dword_32le(0x01802008)|0x10000000);
|
memory_write_dword(space,0x01802008,memory_read_dword(space,0x01802008)|0x10000000);
|
||||||
else
|
else
|
||||||
program_write_dword_32le(0x01802008,program_read_dword_32le(0x01802008)&(~0x10000000));
|
memory_write_dword(space,0x01802008,memory_read_dword(space,0x01802008)&(~0x10000000));
|
||||||
|
|
||||||
COMBINE_DATA(&PIO);
|
COMBINE_DATA(&PIO);
|
||||||
}
|
}
|
||||||
|
|
||||||
INLINE void DMA_w(running_machine *machine, int which, UINT32 data, UINT32 mem_mask)
|
INLINE void DMA_w(const address_space *space, int which, UINT32 data, UINT32 mem_mask)
|
||||||
{
|
{
|
||||||
if(((data^DMActrl[which])&(1<<10)) && (data&(1<<10))) //DMAOn
|
if(((data^DMActrl[which])&(1<<10)) && (data&(1<<10))) //DMAOn
|
||||||
{
|
{
|
||||||
UINT32 CTR=data;
|
UINT32 CTR=data;
|
||||||
UINT32 SRC=program_read_dword_32le(0x01800804+which*0x10);
|
UINT32 SRC=memory_read_dword(space,0x01800804+which*0x10);
|
||||||
UINT32 DST=program_read_dword_32le(0x01800808+which*0x10);
|
UINT32 DST=memory_read_dword(space,0x01800808+which*0x10);
|
||||||
UINT32 CNT=program_read_dword_32le(0x0180080C+which*0x10);
|
UINT32 CNT=memory_read_dword(space,0x0180080C+which*0x10);
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if(CTR&0x2) //32 bits
|
if(CTR&0x2) //32 bits
|
||||||
{
|
{
|
||||||
for(i=0;i<CNT;++i)
|
for(i=0;i<CNT;++i)
|
||||||
{
|
{
|
||||||
UINT32 v=program_read_dword_32le(SRC+i*4);
|
UINT32 v=memory_read_dword(space,SRC+i*4);
|
||||||
program_write_dword_32le(DST+i*4,v);
|
memory_write_dword(space,DST+i*4,v);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(CTR&0x1) //16 bits
|
else if(CTR&0x1) //16 bits
|
||||||
{
|
{
|
||||||
for(i=0;i<CNT;++i)
|
for(i=0;i<CNT;++i)
|
||||||
{
|
{
|
||||||
UINT16 v=program_read_word_32le(SRC+i*2);
|
UINT16 v=memory_read_word(space,SRC+i*2);
|
||||||
program_write_word_32le(DST+i*2,v);
|
memory_write_word(space,DST+i*2,v);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else //8 bits
|
else //8 bits
|
||||||
{
|
{
|
||||||
for(i=0;i<CNT;++i)
|
for(i=0;i<CNT;++i)
|
||||||
{
|
{
|
||||||
UINT8 v=program_read_byte_32le(SRC+i);
|
UINT8 v=memory_read_byte(space,SRC+i);
|
||||||
program_write_byte_32le(DST+i,v);
|
memory_write_byte(space,DST+i,v);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
data&=~(1<<10);
|
data&=~(1<<10);
|
||||||
program_write_dword_32le(0x0180080C+which*0x10,0);
|
memory_write_dword(space,0x0180080C+which*0x10,0);
|
||||||
IntReq(machine, 7+which);
|
IntReq(space->machine, 7+which);
|
||||||
}
|
}
|
||||||
COMBINE_DATA(&DMActrl[which]);
|
COMBINE_DATA(&DMActrl[which]);
|
||||||
}
|
}
|
||||||
@ -399,7 +401,7 @@ static READ32_HANDLER(DMA0_r)
|
|||||||
|
|
||||||
static WRITE32_HANDLER(DMA0_w)
|
static WRITE32_HANDLER(DMA0_w)
|
||||||
{
|
{
|
||||||
DMA_w(space->machine, 0, data, mem_mask);
|
DMA_w(space, 0, data, mem_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
static READ32_HANDLER(DMA1_r)
|
static READ32_HANDLER(DMA1_r)
|
||||||
@ -409,7 +411,7 @@ static READ32_HANDLER(DMA1_r)
|
|||||||
|
|
||||||
static WRITE32_HANDLER(DMA1_w)
|
static WRITE32_HANDLER(DMA1_w)
|
||||||
{
|
{
|
||||||
DMA_w(space->machine, 1, data, mem_mask);
|
DMA_w(space, 1, data, mem_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -541,14 +543,14 @@ static VIDEO_START(crystal)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
static UINT16 GetVidReg(UINT16 reg)
|
static UINT16 GetVidReg(const address_space *space, UINT16 reg)
|
||||||
{
|
{
|
||||||
return program_read_word_32le(0x03000000+reg);
|
return memory_read_word(space,0x03000000+reg);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void SetVidReg(UINT16 reg,UINT16 val)
|
static void SetVidReg(const address_space *space, UINT16 reg,UINT16 val)
|
||||||
{
|
{
|
||||||
program_write_word_32le(0x03000000+reg,val);
|
memory_write_word(space,0x03000000+reg,val);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -559,7 +561,7 @@ static VIDEO_UPDATE(crystal)
|
|||||||
|
|
||||||
|
|
||||||
UINT32 B0=0x0;
|
UINT32 B0=0x0;
|
||||||
UINT32 B1=(GetVidReg(0x90)&0x8000)?0x400000:0x100000;
|
UINT32 B1=(GetVidReg(space,0x90)&0x8000)?0x400000:0x100000;
|
||||||
UINT16 *Front,*Back;
|
UINT16 *Front,*Back;
|
||||||
UINT16 *Visible,*DrawDest;
|
UINT16 *Visible,*DrawDest;
|
||||||
UINT16 *srcline;
|
UINT16 *srcline;
|
||||||
@ -567,7 +569,7 @@ static VIDEO_UPDATE(crystal)
|
|||||||
UINT16 head,tail;
|
UINT16 head,tail;
|
||||||
UINT32 width=video_screen_get_width(screen);
|
UINT32 width=video_screen_get_width(screen);
|
||||||
|
|
||||||
if(GetVidReg(0x8e)&1)
|
if(GetVidReg(space,0x8e)&1)
|
||||||
{
|
{
|
||||||
Front=(UINT16*) (frameram+B1/4);
|
Front=(UINT16*) (frameram+B1/4);
|
||||||
Back=(UINT16*) (frameram+B0/4);
|
Back=(UINT16*) (frameram+B0/4);
|
||||||
@ -582,7 +584,7 @@ static VIDEO_UPDATE(crystal)
|
|||||||
DrawDest=(UINT16 *) frameram;
|
DrawDest=(UINT16 *) frameram;
|
||||||
|
|
||||||
|
|
||||||
if(GetVidReg(0x8c)&0x80)
|
if(GetVidReg(space,0x8c)&0x80)
|
||||||
DrawDest=Front;
|
DrawDest=Front;
|
||||||
else
|
else
|
||||||
DrawDest=Back;
|
DrawDest=Back;
|
||||||
@ -592,8 +594,8 @@ static VIDEO_UPDATE(crystal)
|
|||||||
srcline=(UINT16 *) DrawDest;
|
srcline=(UINT16 *) DrawDest;
|
||||||
|
|
||||||
DoFlip=0;
|
DoFlip=0;
|
||||||
head=GetVidReg(0x82);
|
head=GetVidReg(space,0x82);
|
||||||
tail=GetVidReg(0x80);
|
tail=GetVidReg(space,0x80);
|
||||||
while((head&0x7ff)!=(tail&0x7ff))
|
while((head&0x7ff)!=(tail&0x7ff))
|
||||||
{
|
{
|
||||||
DoFlip=vrender0_ProcessPacket(space,0x03800000+head*64,DrawDest,(UINT8*)textureram);
|
DoFlip=vrender0_ProcessPacket(space,0x03800000+head*64,DrawDest,(UINT8*)textureram);
|
||||||
@ -604,7 +606,7 @@ static VIDEO_UPDATE(crystal)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(DoFlip)
|
if(DoFlip)
|
||||||
SetVidReg(0x8e,GetVidReg(0x8e)^1);
|
SetVidReg(space,0x8e,GetVidReg(space,0x8e)^1);
|
||||||
|
|
||||||
srcline=(UINT16 *) Visible;
|
srcline=(UINT16 *) Visible;
|
||||||
for(y=0;y<240;y++)
|
for(y=0;y<240;y++)
|
||||||
@ -615,14 +617,15 @@ static VIDEO_UPDATE(crystal)
|
|||||||
|
|
||||||
static VIDEO_EOF(crystal)
|
static VIDEO_EOF(crystal)
|
||||||
{
|
{
|
||||||
|
const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
UINT16 head,tail;
|
UINT16 head,tail;
|
||||||
int DoFlip=0;
|
int DoFlip=0;
|
||||||
|
|
||||||
head=GetVidReg(0x82);
|
head=GetVidReg(space,0x82);
|
||||||
tail=GetVidReg(0x80);
|
tail=GetVidReg(space,0x80);
|
||||||
while((head&0x7ff)!=(tail&0x7ff))
|
while((head&0x7ff)!=(tail&0x7ff))
|
||||||
{
|
{
|
||||||
UINT16 Packet0=program_read_word_32le(0x03800000+head*64);
|
UINT16 Packet0=memory_read_word(space,0x03800000+head*64);
|
||||||
if(Packet0&0x81)
|
if(Packet0&0x81)
|
||||||
DoFlip=1;
|
DoFlip=1;
|
||||||
head++;
|
head++;
|
||||||
@ -630,7 +633,7 @@ static VIDEO_EOF(crystal)
|
|||||||
if(DoFlip)
|
if(DoFlip)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
SetVidReg(0x82,head);
|
SetVidReg(space,0x82,head);
|
||||||
if(DoFlip)
|
if(DoFlip)
|
||||||
{
|
{
|
||||||
if(FlipCount)
|
if(FlipCount)
|
||||||
|
@ -194,7 +194,7 @@ static WRITE8_HANDLER( i8257_LMSR_w )
|
|||||||
|
|
||||||
for(i = 0; i < size; i++)
|
for(i = 0; i < size; i++)
|
||||||
{
|
{
|
||||||
program_write_byte(dst++, program_read_byte(src++));
|
memory_write_byte(space, dst++, memory_read_byte(space, src++));
|
||||||
}
|
}
|
||||||
|
|
||||||
e00x_l[0] = 0;
|
e00x_l[0] = 0;
|
||||||
|
@ -495,10 +495,11 @@ static MACHINE_RESET( drakton )
|
|||||||
|
|
||||||
static READ8_DEVICE_HANDLER( dk_dma_read_byte )
|
static READ8_DEVICE_HANDLER( dk_dma_read_byte )
|
||||||
{
|
{
|
||||||
|
const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
UINT8 result;
|
UINT8 result;
|
||||||
|
|
||||||
cpu_push_context(device->machine->cpu[0]);
|
cpu_push_context(space->cpu);
|
||||||
result = program_read_byte(offset);
|
result = memory_read_byte(space, offset);
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
@ -506,13 +507,15 @@ static READ8_DEVICE_HANDLER( dk_dma_read_byte )
|
|||||||
|
|
||||||
static WRITE8_DEVICE_HANDLER( dk_dma_write_byte )
|
static WRITE8_DEVICE_HANDLER( dk_dma_write_byte )
|
||||||
{
|
{
|
||||||
cpu_push_context(device->machine->cpu[0]);
|
const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
program_write_byte(offset, data);
|
cpu_push_context(space->cpu);
|
||||||
|
memory_write_byte(space, offset, data);
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
}
|
}
|
||||||
|
|
||||||
static READ8_DEVICE_HANDLER( hb_dma_read_byte )
|
static READ8_DEVICE_HANDLER( hb_dma_read_byte )
|
||||||
{
|
{
|
||||||
|
const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
dkong_state *state = device->machine->driver_data;
|
dkong_state *state = device->machine->driver_data;
|
||||||
int bucket = state->rev_map[(offset>>10) & 0x1ff];
|
int bucket = state->rev_map[(offset>>10) & 0x1ff];
|
||||||
int addr;
|
int addr;
|
||||||
@ -523,8 +526,8 @@ static READ8_DEVICE_HANDLER( hb_dma_read_byte )
|
|||||||
|
|
||||||
addr = ((bucket<<7) & 0x7c00) | (offset & 0x3ff);
|
addr = ((bucket<<7) & 0x7c00) | (offset & 0x3ff);
|
||||||
|
|
||||||
cpu_push_context(device->machine->cpu[0]);
|
cpu_push_context(space->cpu);
|
||||||
data = program_read_byte(addr);
|
data = memory_read_byte(space, addr);
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
@ -532,6 +535,7 @@ static READ8_DEVICE_HANDLER( hb_dma_read_byte )
|
|||||||
|
|
||||||
static WRITE8_DEVICE_HANDLER( hb_dma_write_byte )
|
static WRITE8_DEVICE_HANDLER( hb_dma_write_byte )
|
||||||
{
|
{
|
||||||
|
const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
dkong_state *state = device->machine->driver_data;
|
dkong_state *state = device->machine->driver_data;
|
||||||
int bucket = state->rev_map[(offset>>10) & 0x1ff];
|
int bucket = state->rev_map[(offset>>10) & 0x1ff];
|
||||||
int addr;
|
int addr;
|
||||||
@ -541,8 +545,8 @@ static WRITE8_DEVICE_HANDLER( hb_dma_write_byte )
|
|||||||
|
|
||||||
addr = ((bucket<<7) & 0x7c00) | (offset & 0x3ff);
|
addr = ((bucket<<7) & 0x7c00) | (offset & 0x3ff);
|
||||||
|
|
||||||
cpu_push_context(device->machine->cpu[0]);
|
cpu_push_context(space->cpu);
|
||||||
program_write_byte(addr, data);
|
memory_write_byte(space, addr, data);
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -606,13 +610,13 @@ static READ8_HANDLER( dkongjr_in2_r )
|
|||||||
|
|
||||||
static READ8_HANDLER( s2650_mirror_r )
|
static READ8_HANDLER( s2650_mirror_r )
|
||||||
{
|
{
|
||||||
return program_read_byte(0x1000+offset);
|
return memory_read_byte(space, 0x1000+offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static WRITE8_HANDLER( s2650_mirror_w )
|
static WRITE8_HANDLER( s2650_mirror_w )
|
||||||
{
|
{
|
||||||
program_write_byte(0x1000+offset,data);
|
memory_write_byte(space, 0x1000+offset, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -551,12 +551,13 @@ static UINT8 at_pages[0x10];
|
|||||||
|
|
||||||
static DMA8237_MEM_READ( pc_dma_read_byte )
|
static DMA8237_MEM_READ( pc_dma_read_byte )
|
||||||
{
|
{
|
||||||
|
const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
UINT8 result;
|
UINT8 result;
|
||||||
offs_t page_offset = (((offs_t) dma_offset[0][channel]) << 16)
|
offs_t page_offset = (((offs_t) dma_offset[0][channel]) << 16)
|
||||||
& 0xFF0000;
|
& 0xFF0000;
|
||||||
|
|
||||||
cpu_push_context(device->machine->cpu[0]);
|
cpu_push_context(space->cpu);
|
||||||
result = program_read_byte(page_offset + offset);
|
result = memory_read_byte(space, page_offset + offset);
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
@ -565,11 +566,12 @@ static DMA8237_MEM_READ( pc_dma_read_byte )
|
|||||||
|
|
||||||
static DMA8237_MEM_WRITE( pc_dma_write_byte )
|
static DMA8237_MEM_WRITE( pc_dma_write_byte )
|
||||||
{
|
{
|
||||||
|
const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
|
||||||
offs_t page_offset = (((offs_t) dma_offset[0][channel]) << 16)
|
offs_t page_offset = (((offs_t) dma_offset[0][channel]) << 16)
|
||||||
& 0xFF0000;
|
& 0xFF0000;
|
||||||
|
|
||||||
cpu_push_context(device->machine->cpu[0]);
|
cpu_push_context(space->cpu);
|
||||||
program_write_byte(page_offset + offset, data);
|
memory_write_byte(space, page_offset + offset, data);
|
||||||
cpu_pop_context();
|
cpu_pop_context();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -764,7 +764,7 @@ static MACHINE_DRIVER_START( redline )
|
|||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
MDRV_IMPORT_FROM(leland)
|
MDRV_IMPORT_FROM(leland)
|
||||||
|
|
||||||
MDRV_CPU_ADD("sound", I80186, MCU_CLOCK)
|
MDRV_CPU_ADD("audio", I80186, MCU_CLOCK)
|
||||||
MDRV_CPU_PROGRAM_MAP(leland_80186_map_program,0)
|
MDRV_CPU_PROGRAM_MAP(leland_80186_map_program,0)
|
||||||
MDRV_CPU_IO_MAP(redline_80186_map_io,0)
|
MDRV_CPU_IO_MAP(redline_80186_map_io,0)
|
||||||
|
|
||||||
@ -780,7 +780,7 @@ static MACHINE_DRIVER_START( quarterb )
|
|||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
MDRV_IMPORT_FROM(redline)
|
MDRV_IMPORT_FROM(redline)
|
||||||
|
|
||||||
MDRV_CPU_MODIFY("sound")
|
MDRV_CPU_MODIFY("audio")
|
||||||
MDRV_CPU_IO_MAP(leland_80186_map_io,0)
|
MDRV_CPU_IO_MAP(leland_80186_map_io,0)
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
@ -1295,7 +1295,7 @@ ROM_START( redlin2p )
|
|||||||
ROM_LOAD( "13913-01.u9", 0x1a000, 0x02000, CRC(02886071) SHA1(699f13677a3e76e8ec2ec73e62d4da4038f9f85d) )
|
ROM_LOAD( "13913-01.u9", 0x1a000, 0x02000, CRC(02886071) SHA1(699f13677a3e76e8ec2ec73e62d4da4038f9f85d) )
|
||||||
ROM_CONTINUE( 0x26000, 0x02000 )
|
ROM_CONTINUE( 0x26000, 0x02000 )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "17t", 0x0e0001, 0x10000, CRC(8d26f221) SHA1(cd5b1d88fec0ff1ab7af554a9fcffc43d33a12e7) )
|
ROM_LOAD16_BYTE( "17t", 0x0e0001, 0x10000, CRC(8d26f221) SHA1(cd5b1d88fec0ff1ab7af554a9fcffc43d33a12e7) )
|
||||||
ROM_LOAD16_BYTE( "28t", 0x0e0000, 0x10000, CRC(7aa21b2c) SHA1(5fd9f49d4bb1dc28393b9df76dfa19e28677639b) )
|
ROM_LOAD16_BYTE( "28t", 0x0e0000, 0x10000, CRC(7aa21b2c) SHA1(5fd9f49d4bb1dc28393b9df76dfa19e28677639b) )
|
||||||
|
|
||||||
@ -1340,7 +1340,7 @@ ROM_START( quarterb )
|
|||||||
ROM_LOAD( "15206-01.u9", 0x1a000, 0x02000, CRC(6bf8d4ab) SHA1(cc9b3f1e651b2a667f17553aac655f0039983890) )
|
ROM_LOAD( "15206-01.u9", 0x1a000, 0x02000, CRC(6bf8d4ab) SHA1(cc9b3f1e651b2a667f17553aac655f0039983890) )
|
||||||
ROM_CONTINUE( 0x26000, 0x02000 )
|
ROM_CONTINUE( 0x26000, 0x02000 )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "15222-02.45t", 0x040001, 0x10000, CRC(710bdc76) SHA1(610f7baa17adf2d16c9494b05556b49ae376fe81) )
|
ROM_LOAD16_BYTE( "15222-02.45t", 0x040001, 0x10000, CRC(710bdc76) SHA1(610f7baa17adf2d16c9494b05556b49ae376fe81) )
|
||||||
ROM_LOAD16_BYTE( "15225-02.62t", 0x040000, 0x10000, CRC(041cecde) SHA1(91556a393d61979d3e92f75142832353e9081a15) )
|
ROM_LOAD16_BYTE( "15225-02.62t", 0x040000, 0x10000, CRC(041cecde) SHA1(91556a393d61979d3e92f75142832353e9081a15) )
|
||||||
ROM_LOAD16_BYTE( "15221-02.44t", 0x060001, 0x10000, CRC(e0459ddb) SHA1(811896fe3398ecc322ca20c2376b715b2d44992e) )
|
ROM_LOAD16_BYTE( "15221-02.44t", 0x060001, 0x10000, CRC(e0459ddb) SHA1(811896fe3398ecc322ca20c2376b715b2d44992e) )
|
||||||
@ -1385,7 +1385,7 @@ ROM_START( quartrba )
|
|||||||
ROM_LOAD( "15206-01.u9", 0x1a000, 0x02000, CRC(6bf8d4ab) SHA1(cc9b3f1e651b2a667f17553aac655f0039983890) )
|
ROM_LOAD( "15206-01.u9", 0x1a000, 0x02000, CRC(6bf8d4ab) SHA1(cc9b3f1e651b2a667f17553aac655f0039983890) )
|
||||||
ROM_CONTINUE( 0x26000, 0x02000 )
|
ROM_CONTINUE( 0x26000, 0x02000 )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "15222-01.45t", 0x040001, 0x10000, CRC(722d1a19) SHA1(b7c7c606798c4357cee58b64d95f2f6a6172d72e) )
|
ROM_LOAD16_BYTE( "15222-01.45t", 0x040001, 0x10000, CRC(722d1a19) SHA1(b7c7c606798c4357cee58b64d95f2f6a6172d72e) )
|
||||||
ROM_LOAD16_BYTE( "15225-01.62t", 0x040000, 0x10000, CRC(f8c20496) SHA1(5f948a56743127e19d9fbd888b546ce82c0b05f6) )
|
ROM_LOAD16_BYTE( "15225-01.62t", 0x040000, 0x10000, CRC(f8c20496) SHA1(5f948a56743127e19d9fbd888b546ce82c0b05f6) )
|
||||||
ROM_LOAD16_BYTE( "15221-01.44t", 0x060001, 0x10000, CRC(bc6abaaf) SHA1(2ca9116c1861d7089679de034c2255bc51179338) )
|
ROM_LOAD16_BYTE( "15221-01.44t", 0x060001, 0x10000, CRC(bc6abaaf) SHA1(2ca9116c1861d7089679de034c2255bc51179338) )
|
||||||
@ -1421,7 +1421,7 @@ ROM_START( viper )
|
|||||||
ROM_LOAD( "viper.u3t", 0x20000, 0x10000, CRC(213bc02b) SHA1(53fadd81a0138525d3d39fd9c2ea258f90b2e6e7) )
|
ROM_LOAD( "viper.u3t", 0x20000, 0x10000, CRC(213bc02b) SHA1(53fadd81a0138525d3d39fd9c2ea258f90b2e6e7) )
|
||||||
ROM_LOAD( "viper.u4t", 0x30000, 0x10000, CRC(ce0b95b4) SHA1(1a322714ce1e9e5589da9966f2e684e9a2c22592) )
|
ROM_LOAD( "viper.u4t", 0x30000, 0x10000, CRC(ce0b95b4) SHA1(1a322714ce1e9e5589da9966f2e684e9a2c22592) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "15620-02.45t", 0x040001, 0x10000, CRC(7380ece1) SHA1(c131c80c67503785ba1ec5b31366cd72f0f7e0e3) )
|
ROM_LOAD16_BYTE( "15620-02.45t", 0x040001, 0x10000, CRC(7380ece1) SHA1(c131c80c67503785ba1ec5b31366cd72f0f7e0e3) )
|
||||||
ROM_LOAD16_BYTE( "15623-02.62t", 0x040000, 0x10000, CRC(2921d8f9) SHA1(5ce6752ef3928b40263efdcd81fae376e2d86e36) )
|
ROM_LOAD16_BYTE( "15623-02.62t", 0x040000, 0x10000, CRC(2921d8f9) SHA1(5ce6752ef3928b40263efdcd81fae376e2d86e36) )
|
||||||
ROM_LOAD16_BYTE( "15619-02.44t", 0x060001, 0x10000, CRC(c8507cc2) SHA1(aae9f19b3bc6790a137d94e3c4bb3e61e8670b42) )
|
ROM_LOAD16_BYTE( "15619-02.44t", 0x060001, 0x10000, CRC(c8507cc2) SHA1(aae9f19b3bc6790a137d94e3c4bb3e61e8670b42) )
|
||||||
@ -1461,7 +1461,7 @@ ROM_START( teamqb )
|
|||||||
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
||||||
ROM_LOAD( "15607-01.u8t", 0x70000, 0x10000, CRC(57cb6d2d) SHA1(56e364aedca25935a5cd7ab4460d9213fcc58b4a) )
|
ROM_LOAD( "15607-01.u8t", 0x70000, 0x10000, CRC(57cb6d2d) SHA1(56e364aedca25935a5cd7ab4460d9213fcc58b4a) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "15623-01.25t", 0x040001, 0x10000, CRC(710bdc76) SHA1(610f7baa17adf2d16c9494b05556b49ae376fe81) )
|
ROM_LOAD16_BYTE( "15623-01.25t", 0x040001, 0x10000, CRC(710bdc76) SHA1(610f7baa17adf2d16c9494b05556b49ae376fe81) )
|
||||||
ROM_LOAD16_BYTE( "15620-01.13t", 0x040000, 0x10000, CRC(7e5cb8ad) SHA1(aaff4e93053638955b95951dceea3b35e842e80f) )
|
ROM_LOAD16_BYTE( "15620-01.13t", 0x040000, 0x10000, CRC(7e5cb8ad) SHA1(aaff4e93053638955b95951dceea3b35e842e80f) )
|
||||||
ROM_LOAD16_BYTE( "15624-01.26t", 0x060001, 0x10000, CRC(dd090d33) SHA1(09a3fa4fa3a50c6692be2bc5fec2c4e9a5072d5d) )
|
ROM_LOAD16_BYTE( "15624-01.26t", 0x060001, 0x10000, CRC(dd090d33) SHA1(09a3fa4fa3a50c6692be2bc5fec2c4e9a5072d5d) )
|
||||||
@ -1501,7 +1501,7 @@ ROM_START( teamqb2 )
|
|||||||
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
||||||
ROM_LOAD( "15607-01.u8t", 0x70000, 0x10000, CRC(57cb6d2d) SHA1(56e364aedca25935a5cd7ab4460d9213fcc58b4a) )
|
ROM_LOAD( "15607-01.u8t", 0x70000, 0x10000, CRC(57cb6d2d) SHA1(56e364aedca25935a5cd7ab4460d9213fcc58b4a) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "15623-01.25t", 0x040001, 0x10000, CRC(710bdc76) SHA1(610f7baa17adf2d16c9494b05556b49ae376fe81) )
|
ROM_LOAD16_BYTE( "15623-01.25t", 0x040001, 0x10000, CRC(710bdc76) SHA1(610f7baa17adf2d16c9494b05556b49ae376fe81) )
|
||||||
ROM_LOAD16_BYTE( "15620-01.13t", 0x040000, 0x10000, CRC(7e5cb8ad) SHA1(aaff4e93053638955b95951dceea3b35e842e80f) )
|
ROM_LOAD16_BYTE( "15620-01.13t", 0x040000, 0x10000, CRC(7e5cb8ad) SHA1(aaff4e93053638955b95951dceea3b35e842e80f) )
|
||||||
ROM_LOAD16_BYTE( "15624-01.26t", 0x060001, 0x10000, CRC(dd090d33) SHA1(09a3fa4fa3a50c6692be2bc5fec2c4e9a5072d5d) )
|
ROM_LOAD16_BYTE( "15624-01.26t", 0x060001, 0x10000, CRC(dd090d33) SHA1(09a3fa4fa3a50c6692be2bc5fec2c4e9a5072d5d) )
|
||||||
@ -1541,7 +1541,7 @@ ROM_START( aafb )
|
|||||||
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
||||||
ROM_LOAD( "03-28002.u8", 0x70000, 0x10000, CRC(c3e09811) SHA1(9b6e036a53000c9bcb104677d9c71743f02fd841) )
|
ROM_LOAD( "03-28002.u8", 0x70000, 0x10000, CRC(c3e09811) SHA1(9b6e036a53000c9bcb104677d9c71743f02fd841) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
||||||
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
||||||
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
||||||
@ -1581,7 +1581,7 @@ ROM_START( aafbb )
|
|||||||
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
||||||
ROM_LOAD( "24002-02.u8t", 0x70000, 0x10000, CRC(3d9747c9) SHA1(4624ac39ff5336b0fd8c70bf35685041d5c38b1c) )
|
ROM_LOAD( "24002-02.u8t", 0x70000, 0x10000, CRC(3d9747c9) SHA1(4624ac39ff5336b0fd8c70bf35685041d5c38b1c) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
||||||
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
||||||
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
||||||
@ -1621,7 +1621,7 @@ ROM_START( aafbc )
|
|||||||
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
||||||
ROM_LOAD( "24002-02.u8t", 0x70000, 0x10000, CRC(3d9747c9) SHA1(4624ac39ff5336b0fd8c70bf35685041d5c38b1c) )
|
ROM_LOAD( "24002-02.u8t", 0x70000, 0x10000, CRC(3d9747c9) SHA1(4624ac39ff5336b0fd8c70bf35685041d5c38b1c) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
||||||
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
||||||
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
||||||
@ -1661,7 +1661,7 @@ ROM_START( aafbd2p )
|
|||||||
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
ROM_LOAD( "15606-01.u7t", 0x60000, 0x10000, CRC(8eeb007c) SHA1(6f9d4132c7e5e6502108cb3e8eab9114f07848b4) )
|
||||||
ROM_LOAD( "24002-02.u8t", 0x70000, 0x10000, CRC(3d9747c9) SHA1(4624ac39ff5336b0fd8c70bf35685041d5c38b1c) )
|
ROM_LOAD( "24002-02.u8t", 0x70000, 0x10000, CRC(3d9747c9) SHA1(4624ac39ff5336b0fd8c70bf35685041d5c38b1c) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
ROM_LOAD16_BYTE( "24019-01.u25", 0x040001, 0x10000, CRC(9e344768) SHA1(7f16d29c52f3d7f0046f414185c4d889f6128597) )
|
||||||
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
ROM_LOAD16_BYTE( "24016-01.u13", 0x040000, 0x10000, CRC(6997025f) SHA1(5eda3bcae896933385fe97a4e1396ae2da7576cb) )
|
||||||
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
ROM_LOAD16_BYTE( "24020-01.u26", 0x060001, 0x10000, CRC(0788f2a5) SHA1(75eb1ab00185f8efa71f1d46197b5f6d20d721f2) )
|
||||||
@ -1701,7 +1701,7 @@ ROM_START( offroad )
|
|||||||
ROM_LOAD( "22111-01.u7", 0x60000, 0x10000, CRC(f79157a1) SHA1(a5731aa92f805123cb00c6ef93a0aed3dc84dae4) )
|
ROM_LOAD( "22111-01.u7", 0x60000, 0x10000, CRC(f79157a1) SHA1(a5731aa92f805123cb00c6ef93a0aed3dc84dae4) )
|
||||||
ROM_LOAD( "22112-01.u8", 0x70000, 0x10000, CRC(3eef38d3) SHA1(9131960592a44c8567ab483f72955d2cc8898445) )
|
ROM_LOAD( "22112-01.u8", 0x70000, 0x10000, CRC(3eef38d3) SHA1(9131960592a44c8567ab483f72955d2cc8898445) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "22116-03.u25", 0x040001, 0x10000, CRC(95bb31d3) SHA1(e7bc43b63126fd33663865b2e41bacc58e962628) )
|
ROM_LOAD16_BYTE( "22116-03.u25", 0x040001, 0x10000, CRC(95bb31d3) SHA1(e7bc43b63126fd33663865b2e41bacc58e962628) )
|
||||||
ROM_LOAD16_BYTE( "22113-03.u13", 0x040000, 0x10000, CRC(71b28df6) SHA1(caf8e4c98a1650dbaedf83f4d38da920d0976f78) )
|
ROM_LOAD16_BYTE( "22113-03.u13", 0x040000, 0x10000, CRC(71b28df6) SHA1(caf8e4c98a1650dbaedf83f4d38da920d0976f78) )
|
||||||
ROM_LOAD16_BYTE( "22117-03.u26", 0x060001, 0x10000, CRC(703d81ce) SHA1(caf5363fb468a461a260e0ec636b0a7a8dc9cd3d) )
|
ROM_LOAD16_BYTE( "22117-03.u26", 0x060001, 0x10000, CRC(703d81ce) SHA1(caf5363fb468a461a260e0ec636b0a7a8dc9cd3d) )
|
||||||
@ -1743,7 +1743,7 @@ ROM_START( offroadt )
|
|||||||
ROM_LOAD( "ortpu7.bin", 0x60000, 0x10000, CRC(a5af5b4f) SHA1(e4992bfbf628d034a879bf9317377348ee4c24e9) )
|
ROM_LOAD( "ortpu7.bin", 0x60000, 0x10000, CRC(a5af5b4f) SHA1(e4992bfbf628d034a879bf9317377348ee4c24e9) )
|
||||||
ROM_LOAD( "ortpu8.bin", 0x70000, 0x10000, CRC(0f735078) SHA1(cb59b11fbed672cb372759384e5916418e6c3dc7) )
|
ROM_LOAD( "ortpu8.bin", 0x70000, 0x10000, CRC(0f735078) SHA1(cb59b11fbed672cb372759384e5916418e6c3dc7) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "ortpu25.bin", 0x040001, 0x10000, CRC(f952f800) SHA1(0f1fc837b0b5f5495a666b0a42adb6068e58a57a) )
|
ROM_LOAD16_BYTE( "ortpu25.bin", 0x040001, 0x10000, CRC(f952f800) SHA1(0f1fc837b0b5f5495a666b0a42adb6068e58a57a) )
|
||||||
ROM_LOAD16_BYTE( "ortpu13.bin", 0x040000, 0x10000, CRC(7beec9fc) SHA1(b03b4a28217a8c7c02dc0314db97fef1d4ab6f20) )
|
ROM_LOAD16_BYTE( "ortpu13.bin", 0x040000, 0x10000, CRC(7beec9fc) SHA1(b03b4a28217a8c7c02dc0314db97fef1d4ab6f20) )
|
||||||
ROM_LOAD16_BYTE( "ortpu26.bin", 0x060001, 0x10000, CRC(6227ea94) SHA1(26384af82f73452b7be8a0eeac9f8a3b464068f6) )
|
ROM_LOAD16_BYTE( "ortpu26.bin", 0x060001, 0x10000, CRC(6227ea94) SHA1(26384af82f73452b7be8a0eeac9f8a3b464068f6) )
|
||||||
@ -1784,7 +1784,7 @@ ROM_START( pigout )
|
|||||||
ROM_LOAD( "poutu7t.bin", 0x60000, 0x10000, CRC(393bd990) SHA1(d66d3c5c6d97bb983549d5037bd69c481751b9bf) )
|
ROM_LOAD( "poutu7t.bin", 0x60000, 0x10000, CRC(393bd990) SHA1(d66d3c5c6d97bb983549d5037bd69c481751b9bf) )
|
||||||
ROM_LOAD( "poutu8t.bin", 0x70000, 0x10000, CRC(cb9ffaad) SHA1(f39fb33e5a30619cd3017574739ccace80afbe1f) )
|
ROM_LOAD( "poutu8t.bin", 0x70000, 0x10000, CRC(cb9ffaad) SHA1(f39fb33e5a30619cd3017574739ccace80afbe1f) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "poutu25t.bin", 0x040001, 0x10000, CRC(92cd2617) SHA1(88e318f4a41c67fd9e91f013b3c29b6275b69c31) )
|
ROM_LOAD16_BYTE( "poutu25t.bin", 0x040001, 0x10000, CRC(92cd2617) SHA1(88e318f4a41c67fd9e91f013b3c29b6275b69c31) )
|
||||||
ROM_LOAD16_BYTE( "poutu13t.bin", 0x040000, 0x10000, CRC(9448c389) SHA1(7bb0bd49044ba4b302048d2922ed300f799a2efb) )
|
ROM_LOAD16_BYTE( "poutu13t.bin", 0x040000, 0x10000, CRC(9448c389) SHA1(7bb0bd49044ba4b302048d2922ed300f799a2efb) )
|
||||||
ROM_LOAD16_BYTE( "poutu26t.bin", 0x060001, 0x10000, CRC(ab57de8f) SHA1(28a366e7441bc85dfb814f7a7797aa704a0277ba) )
|
ROM_LOAD16_BYTE( "poutu26t.bin", 0x060001, 0x10000, CRC(ab57de8f) SHA1(28a366e7441bc85dfb814f7a7797aa704a0277ba) )
|
||||||
@ -1825,7 +1825,7 @@ ROM_START( pigouta )
|
|||||||
ROM_LOAD( "poutu7t.bin", 0x60000, 0x10000, CRC(393bd990) SHA1(d66d3c5c6d97bb983549d5037bd69c481751b9bf) )
|
ROM_LOAD( "poutu7t.bin", 0x60000, 0x10000, CRC(393bd990) SHA1(d66d3c5c6d97bb983549d5037bd69c481751b9bf) )
|
||||||
ROM_LOAD( "poutu8t.bin", 0x70000, 0x10000, CRC(cb9ffaad) SHA1(f39fb33e5a30619cd3017574739ccace80afbe1f) )
|
ROM_LOAD( "poutu8t.bin", 0x70000, 0x10000, CRC(cb9ffaad) SHA1(f39fb33e5a30619cd3017574739ccace80afbe1f) )
|
||||||
|
|
||||||
ROM_REGION( 0x100000, "sound", 0 )
|
ROM_REGION( 0x100000, "audio", 0 )
|
||||||
ROM_LOAD16_BYTE( "poutu25t.bin", 0x040001, 0x10000, CRC(92cd2617) SHA1(88e318f4a41c67fd9e91f013b3c29b6275b69c31) )
|
ROM_LOAD16_BYTE( "poutu25t.bin", 0x040001, 0x10000, CRC(92cd2617) SHA1(88e318f4a41c67fd9e91f013b3c29b6275b69c31) )
|
||||||
ROM_LOAD16_BYTE( "poutu13t.bin", 0x040000, 0x10000, CRC(9448c389) SHA1(7bb0bd49044ba4b302048d2922ed300f799a2efb) )
|
ROM_LOAD16_BYTE( "poutu13t.bin", 0x040000, 0x10000, CRC(9448c389) SHA1(7bb0bd49044ba4b302048d2922ed300f799a2efb) )
|
||||||
ROM_LOAD16_BYTE( "poutu26t.bin", 0x060001, 0x10000, CRC(ab57de8f) SHA1(28a366e7441bc85dfb814f7a7797aa704a0277ba) )
|
ROM_LOAD16_BYTE( "poutu26t.bin", 0x060001, 0x10000, CRC(ab57de8f) SHA1(28a366e7441bc85dfb814f7a7797aa704a0277ba) )
|
||||||
|
Loading…
Reference in New Issue
Block a user