From e93c3cedae194158eab54342c14638fddad20b51 Mon Sep 17 00:00:00 2001 From: smf- Date: Sat, 25 Aug 2012 10:30:00 +0000 Subject: [PATCH] turned WD33C93 into a device & made cps3 flash roms optional on cd sets (nw) --- src/emu/machine/wd33c93.c | 564 ++++++++++++++-------------- src/emu/machine/wd33c93.h | 108 +++++- src/mame/drivers/cps3.c | 765 ++++++++++++++++++-------------------- src/mame/includes/cps3.h | 2 - src/mess/drivers/ip20.c | 16 +- src/mess/drivers/ip22.c | 44 +-- 6 files changed, 769 insertions(+), 730 deletions(-) diff --git a/src/emu/machine/wd33c93.c b/src/emu/machine/wd33c93.c index 76745441737..4f5723c24e7 100644 --- a/src/emu/machine/wd33c93.c +++ b/src/emu/machine/wd33c93.c @@ -13,44 +13,10 @@ #include "emu.h" #include "wd33c93.h" -#include "machine/scsidev.h" #define VERBOSE 0 #define LOG(x) do { if (VERBOSE) logerror x; } while (0) -static scsidev_device *devices[8]; // SCSI IDs 0-7 -static const struct WD33C93interface *intf; - -/* wd register names */ -#define WD_OWN_ID 0x00 -#define WD_CONTROL 0x01 -#define WD_TIMEOUT_PERIOD 0x02 -#define WD_CDB_1 0x03 -#define WD_CDB_2 0x04 -#define WD_CDB_3 0x05 -#define WD_CDB_4 0x06 -#define WD_CDB_5 0x07 -#define WD_CDB_6 0x08 -#define WD_CDB_7 0x09 -#define WD_CDB_8 0x0a -#define WD_CDB_9 0x0b -#define WD_CDB_10 0x0c -#define WD_CDB_11 0x0d -#define WD_CDB_12 0x0e -#define WD_TARGET_LUN 0x0f -#define WD_COMMAND_PHASE 0x10 -#define WD_SYNCHRONOUS_TRANSFER 0x11 -#define WD_TRANSFER_COUNT_MSB 0x12 -#define WD_TRANSFER_COUNT 0x13 -#define WD_TRANSFER_COUNT_LSB 0x14 -#define WD_DESTINATION_ID 0x15 -#define WD_SOURCE_ID 0x16 -#define WD_SCSI_STATUS 0x17 -#define WD_COMMAND 0x18 -#define WD_DATA 0x19 -#define WD_QUEUE_TAG 0x1a -#define WD_AUXILIARY_STATUS 0x1f - /* WD commands */ #define WD_CMD_RESET 0x00 #define WD_CMD_ABORT 0x01 @@ -168,63 +134,37 @@ static const struct WD33C93interface *intf; #define SRCID_ES 0x40 #define SRCID_ER 0x80 -/* command handler definition */ -typedef void (*cmd_handler)(running_machine &machine); -#define CMD_HANDLER(name) void name(running_machine &machine) - -#define TEMP_INPUT_LEN 262144 -#define FIFO_SIZE 12 - -/* internal controller data definition */ -typedef struct -{ - UINT8 sasr; - UINT8 regs[WD_AUXILIARY_STATUS+1]; - UINT8 fifo[FIFO_SIZE]; - int fifo_pos; - UINT8 *temp_input; - int temp_input_pos; - UINT8 busphase; - UINT8 identify; - int read_pending; - emu_timer *cmd_timer; -} _wd33c93_data; - -/* local instance of controller data */ -static _wd33c93_data scsi_data; - - /* convernience functions */ -static UINT8 wd33c93_getunit( void ) +UINT8 wd33c93_device::getunit( void ) { /* return the destination unit id */ - return scsi_data.regs[WD_DESTINATION_ID] & SRCID_MASK; + return regs[WD_DESTINATION_ID] & SRCID_MASK; } -static void wd33c93_set_xfer_count( int count ) +void wd33c93_device::set_xfer_count( int count ) { /* set the count */ - scsi_data.regs[ WD_TRANSFER_COUNT_LSB ] = count & 0xff; - scsi_data.regs[ WD_TRANSFER_COUNT ] = ( count >> 8 ) & 0xff; - scsi_data.regs[ WD_TRANSFER_COUNT_MSB ] = ( count >> 16 ) & 0xff; + regs[ WD_TRANSFER_COUNT_LSB ] = count & 0xff; + regs[ WD_TRANSFER_COUNT ] = ( count >> 8 ) & 0xff; + regs[ WD_TRANSFER_COUNT_MSB ] = ( count >> 16 ) & 0xff; } -static int wd33c93_get_xfer_count( void ) +int wd33c93_device::get_xfer_count( void ) { /* get the count */ - int count = scsi_data.regs[ WD_TRANSFER_COUNT_MSB ]; + int count = regs[ WD_TRANSFER_COUNT_MSB ]; count <<= 8; - count |= scsi_data.regs[ WD_TRANSFER_COUNT ]; + count |= regs[ WD_TRANSFER_COUNT ]; count <<= 8; - count |= scsi_data.regs[ WD_TRANSFER_COUNT_LSB ]; + count |= regs[ WD_TRANSFER_COUNT_LSB ]; return count; } -static void wd33c93_read_data(int bytes, UINT8 *pData) +void wd33c93_device::read_data(int bytes, UINT8 *pData) { - UINT8 unit = wd33c93_getunit(); + UINT8 unit = getunit(); if ( devices[unit] ) { @@ -236,103 +176,113 @@ static void wd33c93_read_data(int bytes, UINT8 *pData) } } -static void wd33c93_complete_immediate( running_machine &machine, int status ) +void wd33c93_device::complete_immediate( int status ) { /* reset our timer */ - scsi_data.cmd_timer->reset( ); + cmd_timer->reset(); /* set the new status */ - scsi_data.regs[WD_SCSI_STATUS] = status & 0xff; + regs[WD_SCSI_STATUS] = status & 0xff; /* set interrupt pending */ - scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_INT; + regs[WD_AUXILIARY_STATUS] |= ASR_INT; /* check for error conditions */ - if ( wd33c93_get_xfer_count() > 0 ) + if ( get_xfer_count() > 0 ) { /* set data buffer ready */ - scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_DBR; + regs[WD_AUXILIARY_STATUS] |= ASR_DBR; } else { /* clear data buffer ready */ - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; + regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; } /* clear command in progress and bus busy */ - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); + regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); /* if we have a callback, call it */ - if (intf && intf->irq_callback) + if (irq_callback) { - intf->irq_callback(machine, 1); + irq_callback(machine(), 1); } } -static TIMER_CALLBACK(wd33c93_complete_cb) +void wd33c93_device::device_timer(emu_timer &timer, device_timer_id tid, int param, void *ptr) { - wd33c93_complete_immediate( machine, param ); + switch( tid ) + { + case 0: + complete_immediate( param ); + break; + + case 1: + complete_immediate(CSR_SRV_REQ | busphase); + break; + + case 2: + regs[WD_AUXILIARY_STATUS] &= ~ASR_CIP; + break; + } } -static TIMER_CALLBACK(wd33c93_service_request) -{ - /* issue a message out request */ - wd33c93_complete_immediate(machine, CSR_SRV_REQ | scsi_data.busphase); -} - -static TIMER_CALLBACK(wd33c93_deassert_cip) -{ - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~ASR_CIP; -} - -static void wd33c93_complete_cmd( UINT8 status ) +void wd33c93_device::complete_cmd( UINT8 status ) { /* fire off a timer to complete the command */ - scsi_data.cmd_timer->adjust( attotime::from_usec(1), status ); + cmd_timer->adjust( attotime::from_usec(1), status ); } /* command handlers */ -static CMD_HANDLER( wd33c93_invalid_cmd ) +void wd33c93_device::unimplemented_cmd() { - logerror( "%s:Unknown/Unimplemented SCSI controller command: %02x\n", machine.describe_context(), scsi_data.regs[WD_COMMAND] ); + logerror( "%s:Unimplemented SCSI controller command: %02x\n", machine().describe_context(), regs[WD_COMMAND] ); /* complete the command */ - wd33c93_complete_cmd( CSR_INVALID ); + complete_cmd( CSR_INVALID ); } -static CMD_HANDLER( wd33c93_reset_cmd ) +void wd33c93_device::invalid_cmd() { - int advanced = 0; + logerror( "%s:Invalid SCSI controller command: %02x\n", machine().describe_context(), regs[WD_COMMAND] ); + + /* complete the command */ + complete_cmd( CSR_INVALID ); +} + +void wd33c93_device::reset_cmd() +{ + int advanced = 0; /* see if it wants us to reset with advanced features */ - if ( scsi_data.regs[WD_OWN_ID] & OWNID_EAF ) + if ( regs[WD_OWN_ID] & OWNID_EAF ) { advanced = 1; } /* clear out all registers */ - memset( scsi_data.regs, 0, sizeof( scsi_data.regs ) ); + memset( regs, 0, sizeof( regs ) ); /* complete the command */ - wd33c93_complete_cmd(advanced ? CSR_RESET_AF : CSR_RESET); + complete_cmd(advanced ? CSR_RESET_AF : CSR_RESET); } -static CMD_HANDLER( wd33c93_abort_cmd ) +void wd33c93_device::abort_cmd() { /* complete the command */ - wd33c93_complete_cmd(CSR_ABORT); + complete_cmd(CSR_ABORT); } -static CMD_HANDLER( wd33c93_disconnect_cmd ) +void wd33c93_device::disconnect_cmd() { /* complete the command */ - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); + regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); } -static CMD_HANDLER( wd33c93_select_cmd ) +void wd33c93_device::select_cmd() { - UINT8 unit = wd33c93_getunit(); - UINT8 newstatus; + UINT8 unit = getunit(); + UINT8 newstatus; /* see if we can select that device */ if ( devices[unit] ) @@ -341,19 +291,19 @@ static CMD_HANDLER( wd33c93_select_cmd ) newstatus = CSR_SELECT; /* determine the next bus phase depending on the command */ - if ( (scsi_data.regs[WD_COMMAND] & 0x7f) == WD_CMD_SEL_ATN ) + if ( (regs[WD_COMMAND] & 0x7f) == WD_CMD_SEL_ATN ) { /* /ATN asserted during select: Move to Message Out Phase to read identify */ - scsi_data.busphase = PHS_MESS_OUT; + busphase = PHS_MESS_OUT; } else { /* No /ATN asserted: Move to Command Phase */ - scsi_data.busphase = PHS_COMMAND; + busphase = PHS_COMMAND; } /* queue up a service request out in the future */ - machine.scheduler().timer_set( attotime::from_usec(50), FUNC(wd33c93_service_request )); + service_req_timer->adjust( attotime::from_usec(50) ); } else { @@ -362,70 +312,70 @@ static CMD_HANDLER( wd33c93_select_cmd ) } /* complete the command */ - wd33c93_complete_cmd(newstatus); + complete_cmd(newstatus); } -static CMD_HANDLER( wd33c93_selectxfer_cmd ) +void wd33c93_device::selectxfer_cmd() { - UINT8 unit = wd33c93_getunit(); - UINT8 newstatus; + UINT8 unit = getunit(); + UINT8 newstatus; /* see if we can select that device */ if ( devices[unit] ) { - if ( scsi_data.regs[WD_COMMAND_PHASE] < 0x45 ) + if ( regs[WD_COMMAND_PHASE] < 0x45 ) { /* device is available */ int xfercount; int phase; /* do the request */ - devices[unit]->SetCommand( &scsi_data.regs[WD_CDB_1], 12 ); + devices[unit]->SetCommand( ®s[WD_CDB_1], 12 ); devices[unit]->ExecCommand( &xfercount ); devices[unit]->GetPhase( &phase ); /* set transfer count */ - if ( wd33c93_get_xfer_count() > TEMP_INPUT_LEN ) + if ( get_xfer_count() > TEMP_INPUT_LEN ) { - logerror( "WD33C93: Transfer count too big. Please increase TEMP_INPUT_LEN (size=%d)\n", wd33c93_get_xfer_count() ); - wd33c93_set_xfer_count( TEMP_INPUT_LEN ); + logerror( "WD33C93: Transfer count too big. Please increase TEMP_INPUT_LEN (size=%d)\n", get_xfer_count() ); + set_xfer_count( TEMP_INPUT_LEN ); } switch( phase ) { case SCSI_PHASE_DATAIN: - scsi_data.read_pending = 1; + read_pending = 1; break; } } - if ( scsi_data.read_pending ) + if ( read_pending ) { - int len = TEMP_INPUT_LEN; + int len = TEMP_INPUT_LEN; - if ( wd33c93_get_xfer_count() < len ) len = wd33c93_get_xfer_count(); + if ( get_xfer_count() < len ) len = get_xfer_count(); - memset( &scsi_data.temp_input[0], 0, TEMP_INPUT_LEN ); - wd33c93_read_data( len, &scsi_data.temp_input[0] ); - scsi_data.temp_input_pos = 0; - scsi_data.read_pending = 0; + memset( &temp_input[0], 0, TEMP_INPUT_LEN ); + read_data( len, &temp_input[0] ); + temp_input_pos = 0; + read_pending = 0; } - scsi_data.regs[WD_TARGET_LUN] = 0; - scsi_data.regs[WD_CONTROL] |= CTRL_EDI; - scsi_data.regs[WD_COMMAND_PHASE] = 0x60; + regs[WD_TARGET_LUN] = 0; + regs[WD_CONTROL] |= CTRL_EDI; + regs[WD_COMMAND_PHASE] = 0x60; /* signal transfer ready */ newstatus = CSR_SEL_XFER_DONE; /* if allowed disconnect, queue a service request */ - if ( scsi_data.identify & 0x40 ) + if ( identify & 0x40 ) { /* queue disconnect message in */ - scsi_data.busphase = PHS_MESS_IN; + busphase = PHS_MESS_IN; /* queue up a service request out in the future */ - machine.scheduler().timer_set( attotime::from_msec(50), FUNC(wd33c93_service_request )); + service_req_timer->adjust( attotime::from_usec(50) ); } } else @@ -433,189 +383,199 @@ static CMD_HANDLER( wd33c93_selectxfer_cmd ) /* device is not available */ newstatus = CSR_TIMEOUT; - wd33c93_set_xfer_count( 0 ); + set_xfer_count( 0 ); } /* complete the command */ - wd33c93_complete_cmd(newstatus); + complete_cmd(newstatus); } -static CMD_HANDLER( wd33c93_negate_ack ) +void wd33c93_device::negate_ack() { logerror( "WD33C93: ACK Negated\n" ); /* complete the command */ - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); + regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); } -static CMD_HANDLER( wd33c93_xferinfo_cmd ) +void wd33c93_device::xferinfo_cmd() { /* make the buffer available right away */ - scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_DBR; - scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_CIP; + regs[WD_AUXILIARY_STATUS] |= ASR_DBR; + regs[WD_AUXILIARY_STATUS] |= ASR_CIP; /* the command will be completed once the data is transferred */ - machine.scheduler().timer_set( attotime::from_msec(1), FUNC(wd33c93_deassert_cip )); + deassert_cip_timer->adjust( attotime::from_msec(1) ); } -/* Command handlers */ -static const cmd_handler wd33c93_cmds[0x22] = -{ - &wd33c93_reset_cmd, /* 0x00 - WD_CMD_RESET */ - &wd33c93_abort_cmd, /* 0x01 - WD_CMD_ABORT */ - &wd33c93_invalid_cmd, /* 0x02 - WD_CMD_ASSERT_ATN (uninmplemented) */ - &wd33c93_negate_ack, /* 0x03 - WD_CMD_NEGATE_ACK */ - &wd33c93_disconnect_cmd,/* 0x04 - WD_CMD_DISCONNECT */ - &wd33c93_invalid_cmd, /* 0x05 - WD_CMD_RESELECT (uninmplemented) */ - &wd33c93_select_cmd, /* 0x06 - WD_CMD_SEL_ATN */ - &wd33c93_select_cmd, /* 0x07 - WD_CMD_SEL */ - &wd33c93_selectxfer_cmd,/* 0x08 - WD_CMD_SEL_ATN_XFER */ - &wd33c93_selectxfer_cmd,/* 0x09 - WD_CMD_SEL_XFER */ - &wd33c93_invalid_cmd, /* 0x0a - WD_CMD_RESEL_RECEIVE (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x0b - WD_CMD_RESEL_SEND (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x0c - WD_CMD_WAIT_SEL_RECEIVE (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x0d - WD_CMD_SSCC (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x0e - WD_CMD_SND_DISC (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x0f - WD_CMD_SET_IDI (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x10 - WD_CMD_RCV_CMD (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x11 - WD_CMD_RCV_DATA (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x12 - WD_CMD_RCV_MSG_OUT (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x13 - WD_CMD_RCV (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x14 - WD_CMD_SND_STATUS (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x15 - WD_CMD_SND_DATA (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x16 - WD_CMD_SND_MSG_IN (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x17 - WD_CMD_SND (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x18 - WD_CMD_TRANS_ADDR (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x19 - WD_CMD_XFER_PAD (uninmplemented) */ - &wd33c93_invalid_cmd, /* 0x1a - invalid */ - &wd33c93_invalid_cmd, /* 0x1b - invalid */ - &wd33c93_invalid_cmd, /* 0x1c - invalid */ - &wd33c93_invalid_cmd, /* 0x1d - invalid */ - &wd33c93_invalid_cmd, /* 0x1e - invalid */ - &wd33c93_invalid_cmd, /* 0x1f - invalid */ - &wd33c93_xferinfo_cmd, /* 0x20 - WD_CMD_TRANS_INFO) */ - &wd33c93_invalid_cmd /* 0x21 - WD_CMD_TRANSFER_PAD (uninmplemented) */ -}; - /* Handle pending commands */ -static void wd33c93_command( running_machine &machine ) +void wd33c93_device::dispatch_command() { /* get the command */ - UINT8 cmd = scsi_data.regs[WD_COMMAND]; + UINT8 cmd = regs[WD_COMMAND] & 0x7f; - /* check if its within valid bounds */ - if ( (cmd & 0x7F) > WD_CMD_TRANSFER_PAD ) + switch(cmd) { - wd33c93_invalid_cmd(machine); - return; - } + case WD_CMD_RESET: + reset_cmd(); + break; + + case WD_CMD_ABORT: + abort_cmd(); + break; + + case WD_CMD_NEGATE_ACK: + negate_ack(); + break; - /* call the command handler */ - (*wd33c93_cmds[cmd & 0x7F])(machine); + case WD_CMD_DISCONNECT: + disconnect_cmd(); + break; + + case WD_CMD_SEL_ATN: + case WD_CMD_SEL: + select_cmd(); + break; + + case WD_CMD_SEL_ATN_XFER: + case WD_CMD_SEL_XFER: + selectxfer_cmd(); + break; + + case WD_CMD_TRANS_INFO: + xferinfo_cmd(); + break; + + case WD_CMD_ASSERT_ATN: + case WD_CMD_RESELECT: + case WD_CMD_RESEL_RECEIVE: + case WD_CMD_RESEL_SEND: + case WD_CMD_WAIT_SEL_RECEIVE: + case WD_CMD_SSCC: + case WD_CMD_SND_DISC: + case WD_CMD_SET_IDI: + case WD_CMD_RCV_CMD: + case WD_CMD_RCV_DATA: + case WD_CMD_RCV_MSG_OUT: + case WD_CMD_RCV: + case WD_CMD_SND_STATUS: + case WD_CMD_SND_DATA: + case WD_CMD_SND_MSG_IN: + case WD_CMD_SND: + case WD_CMD_TRANS_ADDR: + case WD_CMD_XFER_PAD: + case WD_CMD_TRANSFER_PAD: + unimplemented_cmd(); + break; + + default: + invalid_cmd(); + break; + } } -WRITE8_HANDLER(wd33c93_w) +WRITE8_MEMBER(wd33c93_device::write) { switch( offset ) { case 0: { /* update register select */ - scsi_data.sasr = data & 0x1f; + sasr = data & 0x1f; } break; case 1: { - LOG(( "WD33C93: PC=%08x - Write REG=%02x, data = %02x\n", cpu_get_pc(&space->device()), scsi_data.sasr, data )); + LOG(( "WD33C93: PC=%08x - Write REG=%02x, data = %02x\n", cpu_get_pc(&space.device()), sasr, data )); /* update the register */ - scsi_data.regs[scsi_data.sasr] = data; + regs[sasr] = data; /* if we receive a command, schedule to process it */ - if ( scsi_data.sasr == WD_COMMAND ) + if ( sasr == WD_COMMAND ) { - LOG(( "WDC33C93: PC=%08x - Executing command %08x - unit %d\n", cpu_get_pc(&space->device()), data, wd33c93_getunit() )); + LOG(( "WDC33C93: PC=%08x - Executing command %08x - unit %d\n", cpu_get_pc(&space.device()), data, getunit() )); /* signal we're processing it */ - scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_CIP; + regs[WD_AUXILIARY_STATUS] |= ASR_CIP; /* process the command */ - wd33c93_command(space->machine()); + dispatch_command(); } - else if ( scsi_data.sasr == WD_CDB_1 ) + else if ( sasr == WD_CDB_1 ) { - scsi_data.regs[WD_COMMAND_PHASE] = 0; + regs[WD_COMMAND_PHASE] = 0; } - else if ( scsi_data.sasr == WD_DATA ) + else if ( sasr == WD_DATA ) { /* if data was written, and we have a count, send to device */ - int count = wd33c93_get_xfer_count(); + int count = get_xfer_count(); - if ( scsi_data.regs[WD_COMMAND] & 0x80 ) + if ( regs[WD_COMMAND] & 0x80 ) count = 1; if ( count-- > 0 ) { /* write to FIFO */ - if ( scsi_data.fifo_pos < FIFO_SIZE ) + if ( fifo_pos < FIFO_SIZE ) { - scsi_data.fifo[scsi_data.fifo_pos++] = data; + fifo[fifo_pos++] = data; } /* update count */ - wd33c93_set_xfer_count( count ); + set_xfer_count( count ); /* if we're done with the write, see where we're at */ if ( count == 0 ) { - scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_INT; - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; + regs[WD_AUXILIARY_STATUS] |= ASR_INT; + regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; - switch( scsi_data.busphase ) + switch( busphase ) { case PHS_MESS_OUT: { /* reset fifo */ - scsi_data.fifo_pos = 0; + fifo_pos = 0; /* Message out phase. Data is probably SCSI Identify. Move to command phase. */ - scsi_data.busphase = PHS_COMMAND; + busphase = PHS_COMMAND; - scsi_data.identify = scsi_data.fifo[0]; + identify = fifo[0]; } break; case PHS_COMMAND: { - UINT8 unit = wd33c93_getunit(); - int xfercount; + UINT8 unit = getunit(); + int xfercount; int phase; /* Execute the command. Depending on the command, we'll move to data in or out */ - devices[unit]->SetCommand( &scsi_data.fifo[0], 12 ); + devices[unit]->SetCommand( &fifo[0], 12 ); devices[unit]->ExecCommand( &xfercount ); devices[unit]->GetPhase( &phase ); /* reset fifo */ - scsi_data.fifo_pos = 0; + fifo_pos = 0; /* set the new count */ - wd33c93_set_xfer_count( xfercount ); + set_xfer_count( xfercount ); switch( phase ) { case SCSI_PHASE_STATUS: - scsi_data.busphase = PHS_STATUS; + busphase = PHS_STATUS; break; case SCSI_PHASE_DATAIN: - scsi_data.busphase = PHS_DATA_IN; - scsi_data.read_pending = 1; + busphase = PHS_DATA_IN; + read_pending = 1; break; case SCSI_PHASE_DATAOUT: - scsi_data.busphase = PHS_DATA_OUT; + busphase = PHS_DATA_OUT; break; } } @@ -624,19 +584,19 @@ WRITE8_HANDLER(wd33c93_w) case PHS_DATA_OUT: { /* write data out to device */ - wd33c93_write_data( scsi_data.fifo_pos, scsi_data.fifo ); + write_data( fifo_pos, fifo ); /* reset fifo */ - scsi_data.fifo_pos = 0; + fifo_pos = 0; /* move to status phase */ - scsi_data.busphase = PHS_STATUS; + busphase = PHS_STATUS; } break; } /* complete the command */ - wd33c93_complete_immediate(space->machine(), CSR_XFER_DONE | scsi_data.busphase); + complete_immediate(CSR_XFER_DONE | busphase); } } else @@ -646,9 +606,9 @@ WRITE8_HANDLER(wd33c93_w) } /* auto-increment register select if not on special registers */ - if ( scsi_data.sasr != WD_COMMAND && scsi_data.sasr != WD_DATA && scsi_data.sasr != WD_AUXILIARY_STATUS ) + if ( sasr != WD_COMMAND && sasr != WD_DATA && sasr != WD_AUXILIARY_STATUS ) { - scsi_data.sasr = ( scsi_data.sasr + 1 ) & 0x1f; + sasr = ( sasr + 1 ) & 0x1f; } } break; @@ -661,109 +621,109 @@ WRITE8_HANDLER(wd33c93_w) } } -READ8_HANDLER(wd33c93_r) +READ8_MEMBER(wd33c93_device::read) { switch( offset ) { case 0: { /* read aux status */ - return scsi_data.regs[WD_AUXILIARY_STATUS]; + return regs[WD_AUXILIARY_STATUS]; } break; case 1: { - UINT8 ret; + UINT8 ret; /* if reading status, clear irq flag */ - if ( scsi_data.sasr == WD_SCSI_STATUS ) + if ( sasr == WD_SCSI_STATUS ) { - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~ASR_INT; + regs[WD_AUXILIARY_STATUS] &= ~ASR_INT; - if (intf && intf->irq_callback) + if (irq_callback) { - intf->irq_callback(space->machine(), 0); + irq_callback(machine(), 0); } - LOG(( "WD33C93: PC=%08x - Status read (%02x)\n", cpu_get_pc(&space->device()), scsi_data.regs[WD_SCSI_STATUS] )); + LOG(( "WD33C93: PC=%08x - Status read (%02x)\n", cpu_get_pc(&space.device()), regs[WD_SCSI_STATUS] )); } - else if ( scsi_data.sasr == WD_DATA ) + else if ( sasr == WD_DATA ) { /* we're going to be doing synchronous reads */ /* get the transfer count */ - int count = wd33c93_get_xfer_count(); + int count = get_xfer_count(); /* initialize the return value */ - scsi_data.regs[WD_DATA] = 0; + regs[WD_DATA] = 0; - if ( count <= 0 && scsi_data.busphase == PHS_MESS_IN ) + if ( count <= 0 && busphase == PHS_MESS_IN ) { /* move to disconnect */ - wd33c93_complete_cmd(CSR_DISC); + complete_cmd(CSR_DISC); } - else if ( count == 1 && scsi_data.busphase == PHS_STATUS ) + else if ( count == 1 && busphase == PHS_STATUS ) { /* update the count */ - wd33c93_set_xfer_count( 0 ); + set_xfer_count( 0 ); /* move to message in phase */ - scsi_data.busphase = PHS_MESS_IN; + busphase = PHS_MESS_IN; /* complete the command */ - wd33c93_complete_cmd(CSR_XFER_DONE | scsi_data.busphase); + complete_cmd(CSR_XFER_DONE | busphase); } else if ( count-- > 0 ) /* make sure we still have data to send */ { - if ( scsi_data.read_pending ) + if ( read_pending ) { - int len = TEMP_INPUT_LEN; + int len = TEMP_INPUT_LEN; if ( (count+1) < len ) len = count+1; - wd33c93_read_data( len, &scsi_data.temp_input[0] ); - scsi_data.temp_input_pos = 0; - scsi_data.read_pending = 0; + read_data( len, &temp_input[0] ); + temp_input_pos = 0; + read_pending = 0; } - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~ASR_INT; + regs[WD_AUXILIARY_STATUS] &= ~ASR_INT; /* read in one byte */ - if ( scsi_data.temp_input_pos < TEMP_INPUT_LEN ) - scsi_data.regs[WD_DATA] = scsi_data.temp_input[scsi_data.temp_input_pos++]; + if ( temp_input_pos < TEMP_INPUT_LEN ) + regs[WD_DATA] = temp_input[temp_input_pos++]; /* update the count */ - wd33c93_set_xfer_count( count ); + set_xfer_count( count ); /* transfer finished, see where we're at */ if ( count == 0 ) { - if ( scsi_data.regs[WD_COMMAND_PHASE] != 0x60 ) + if ( regs[WD_COMMAND_PHASE] != 0x60 ) { /* move to status phase */ - scsi_data.busphase = PHS_STATUS; + busphase = PHS_STATUS; /* complete the command */ - wd33c93_complete_cmd(CSR_XFER_DONE | scsi_data.busphase); + complete_cmd(CSR_XFER_DONE | busphase); } else { - scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_INT; - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; + regs[WD_AUXILIARY_STATUS] |= ASR_INT; + regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; } } } } - LOG(( "WD33C93: PC=%08x - Data read (%02x)\n", cpu_get_pc(&space->device()), scsi_data.regs[WD_DATA] )); + LOG(( "WD33C93: PC=%08x - Data read (%02x)\n", cpu_get_pc(&space.device()), regs[WD_DATA] )); /* get the register value */ - ret = scsi_data.regs[scsi_data.sasr]; + ret = regs[sasr]; /* auto-increment register select if not on special registers */ - if ( scsi_data.sasr != WD_COMMAND && scsi_data.sasr != WD_DATA && scsi_data.sasr != WD_AUXILIARY_STATUS ) + if ( sasr != WD_COMMAND && sasr != WD_DATA && sasr != WD_AUXILIARY_STATUS ) { - scsi_data.sasr = ( scsi_data.sasr + 1 ) & 0x1f; + sasr = ( sasr + 1 ) & 0x1f; } return ret; @@ -779,40 +739,56 @@ READ8_HANDLER(wd33c93_r) return 0; } -void wd33c93_init( running_machine &machine, const struct WD33C93interface *interface ) +wd33c93_device::wd33c93_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : device_t(mconfig, WD33C93, "33C93 SCSI", tag, owner, clock) { - // save interface pointer for later - intf = interface; +} - memset(&scsi_data, 0, sizeof(scsi_data)); +void wd33c93_device::device_start() +{ + memset(®s, 0, sizeof(regs)); memset(devices, 0, sizeof(devices)); // try to open the devices - for (int i = 0; i < interface->scsidevs->devs_present; i++) + for (int i = 0; i < scsidevs->devs_present; i++) { - scsidev_device *device = machine.device( interface->scsidevs->devices[i].tag ); + scsidev_device *device = machine().device( scsidevs->devices[i].tag ); devices[device->GetDeviceID()] = device; } /* allocate a timer for commands */ - scsi_data.cmd_timer = machine.scheduler().timer_alloc(FUNC(wd33c93_complete_cb)); + cmd_timer = timer_alloc(0); + service_req_timer = timer_alloc(1); + deassert_cip_timer = timer_alloc(2); - scsi_data.temp_input = auto_alloc_array( machine, UINT8, TEMP_INPUT_LEN ); - -// state_save_register_item_array(machine, "wd33c93", NULL, 0, scsi_data); + save_item( NAME( sasr ) ); + save_item( NAME( regs ) ); + save_item( NAME( fifo ) ); + save_item( NAME( fifo_pos ) ); + save_item( NAME( temp_input ) ); + save_item( NAME( temp_input_pos ) ); + save_item( NAME( busphase ) ); + save_item( NAME( identify ) ); + save_item( NAME( read_pending ) ); } -void wd33c93_get_dma_data( int bytes, UINT8 *pData ) +void wd33c93_device::static_set_interface(device_t &device, const WD33C93interface &interface) { - int len = bytes; + wd33c93_device &wd33c93 = downcast(device); + static_cast(wd33c93) = interface; +} - if ( len >= wd33c93_get_xfer_count() ) - len = wd33c93_get_xfer_count(); +void wd33c93_device::get_dma_data( int bytes, UINT8 *pData ) +{ + int len = bytes; + + if ( len >= get_xfer_count() ) + len = get_xfer_count(); if ( len == 0 ) return; - if ( (scsi_data.temp_input_pos+len) >= TEMP_INPUT_LEN ) + if ( (temp_input_pos+len) >= TEMP_INPUT_LEN ) { logerror( "Reading past end of buffer, increase TEMP_INPUT_LEN size\n" ); len = TEMP_INPUT_LEN - len; @@ -820,16 +796,16 @@ void wd33c93_get_dma_data( int bytes, UINT8 *pData ) assert(len); - memcpy( pData, &scsi_data.temp_input[scsi_data.temp_input_pos], len ); + memcpy( pData, &temp_input[temp_input_pos], len ); - scsi_data.temp_input_pos += len; - len = wd33c93_get_xfer_count() - len; - wd33c93_set_xfer_count(len); + temp_input_pos += len; + len = get_xfer_count() - len; + set_xfer_count(len); } -void wd33c93_write_data(int bytes, UINT8 *pData) +void wd33c93_device::write_data(int bytes, UINT8 *pData) { - UINT8 unit = wd33c93_getunit(); + UINT8 unit = getunit(); if (devices[unit]) { @@ -841,14 +817,16 @@ void wd33c93_write_data(int bytes, UINT8 *pData) } } -void wd33c93_clear_dma(void) +void wd33c93_device::clear_dma() { /* indicate DMA completed by clearing the transfer count */ - wd33c93_set_xfer_count(0); - scsi_data.regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; + set_xfer_count(0); + regs[WD_AUXILIARY_STATUS] &= ~ASR_DBR; } -int wd33c93_get_dma_count(void) +int wd33c93_device::get_dma_count() { - return wd33c93_get_xfer_count(); + return get_xfer_count(); } + +const device_type WD33C93 = &device_creator; diff --git a/src/emu/machine/wd33c93.h b/src/emu/machine/wd33c93.h index 0ebdda46925..e4b23bad385 100644 --- a/src/emu/machine/wd33c93.h +++ b/src/emu/machine/wd33c93.h @@ -7,6 +7,7 @@ #define _WD33C93_H_ #include "machine/scsi.h" +#include "scsidev.h" struct WD33C93interface { @@ -14,12 +15,105 @@ struct WD33C93interface void (*irq_callback)(running_machine &machine, int state); /* irq callback */ }; -extern void wd33c93_init( running_machine &machine, const struct WD33C93interface *interface ); -extern void wd33c93_get_dma_data(int bytes, UINT8 *pData); -extern void wd33c93_write_data(int bytes, UINT8 *pData); -extern void wd33c93_clear_dma(void); -extern int wd33c93_get_dma_count(void); -extern READ8_HANDLER(wd33c93_r); -extern WRITE8_HANDLER(wd33c93_w); +/* wd register names */ + +enum +{ + WD_OWN_ID = 0x00, + WD_CONTROL = 0x01, + WD_TIMEOUT_PERIOD = 0x02, + WD_CDB_1 = 0x03, + WD_CDB_2 = 0x04, + WD_CDB_3 = 0x05, + WD_CDB_4 = 0x06, + WD_CDB_5 = 0x07, + WD_CDB_6 = 0x08, + WD_CDB_7 = 0x09, + WD_CDB_8 = 0x0a, + WD_CDB_9 = 0x0b, + WD_CDB_10 = 0x0c, + WD_CDB_11 = 0x0d, + WD_CDB_12 = 0x0e, + WD_TARGET_LUN = 0x0f, + WD_COMMAND_PHASE = 0x10, + WD_SYNCHRONOUS_TRANSFER = 0x11, + WD_TRANSFER_COUNT_MSB = 0x12, + WD_TRANSFER_COUNT = 0x13, + WD_TRANSFER_COUNT_LSB = 0x14, + WD_DESTINATION_ID = 0x15, + WD_SOURCE_ID = 0x16, + WD_SCSI_STATUS = 0x17, + WD_COMMAND = 0x18, + WD_DATA = 0x19, + WD_QUEUE_TAG = 0x1a, + WD_AUXILIARY_STATUS = 0x1f +}; + +#define TEMP_INPUT_LEN 262144 +#define FIFO_SIZE 12 + +#define MCFG_WD33C93_ADD( _tag, _interface ) \ + MCFG_DEVICE_ADD( _tag, WD33C93, 0 ) \ + wd33c93_device::static_set_interface(*device, _interface); + +class wd33c93_device : public device_t, + public WD33C93interface +{ +public: + // construction/destruction + wd33c93_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // inline configuration helpers + static void static_set_interface(device_t &device, const WD33C93interface &interface); + + DECLARE_READ8_MEMBER(read); + DECLARE_WRITE8_MEMBER(write); + + void get_dma_data( int bytes, UINT8 *pData ); + void write_data(int bytes, UINT8 *pData); + void clear_dma(); + int get_dma_count(); + +protected: + // device-level overrides + virtual void device_start(); + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr); + +private: + UINT8 getunit( void ); + void set_xfer_count( int count ); + int get_xfer_count( void ); + void read_data(int bytes, UINT8 *pData); + void complete_immediate( int status ); + void complete_cmd( UINT8 status ); + void unimplemented_cmd(); + void invalid_cmd(); + void reset_cmd(); + void abort_cmd(); + void disconnect_cmd(); + void select_cmd(); + void selectxfer_cmd(); + void negate_ack(); + void xferinfo_cmd(); + void dispatch_command(); + + scsidev_device *devices[8]; // SCSI IDs 0-7 + + UINT8 sasr; + UINT8 regs[WD_AUXILIARY_STATUS+1]; + UINT8 fifo[FIFO_SIZE]; + int fifo_pos; + UINT8 temp_input[TEMP_INPUT_LEN]; + int temp_input_pos; + UINT8 busphase; + UINT8 identify; + int read_pending; + emu_timer *cmd_timer; + emu_timer *service_req_timer; + emu_timer *deassert_cip_timer; +}; + +// device type definition +extern const device_type WD33C93; #endif diff --git a/src/mame/drivers/cps3.c b/src/mame/drivers/cps3.c index 936ea93fd20..9f5f7069fbe 100644 --- a/src/mame/drivers/cps3.c +++ b/src/mame/drivers/cps3.c @@ -1715,36 +1715,6 @@ WRITE32_MEMBER(cps3_state::cps3_eeprom_w) } -READ32_MEMBER(cps3_state::cps3_cdrom_r) -{ - UINT32 retval = 0; - - if (ACCESSING_BITS_24_31) - { - retval |= ((UINT16)wd33c93_r(&space,0))<<16; - } - - if (ACCESSING_BITS_0_7) - { - retval |= (UINT16)wd33c93_r(&space,1); - } - - return retval; -} - -WRITE32_MEMBER(cps3_state::cps3_cdrom_w) -{ - if (ACCESSING_BITS_24_31) - { - wd33c93_w(&space,0,(data & 0x00ff0000)>>16); - } - - if (ACCESSING_BITS_0_7) - { - wd33c93_w(&space,1,(data & 0x000000ff)>>0); - } -} - WRITE32_MEMBER(cps3_state::cps3_ss_bank_base_w) { // might be scroll registers or something else.. @@ -2197,7 +2167,7 @@ static ADDRESS_MAP_START( cps3_map, AS_PROGRAM, 32, cps3_state ) AM_RANGE(0x05100000, 0x05100003) AM_WRITE(cps3_irq12_ack_w ) AM_RANGE(0x05110000, 0x05110003) AM_WRITE(cps3_irq10_ack_w ) - AM_RANGE(0x05140000, 0x05140003) AM_READWRITE(cps3_cdrom_r, cps3_cdrom_w ) + AM_RANGE(0x05140000, 0x05140003) AM_DEVREADWRITE8("wd33c93", wd33c93_device, read, write, 0x00ff00ff ) AM_RANGE(0x06000000, 0x067fffff) AM_READWRITE(cps3_flash1_r, cps3_flash1_w ) /* Flash ROMs simm 1 */ AM_RANGE(0x06800000, 0x06ffffff) AM_READWRITE(cps3_flash2_r, cps3_flash2_w ) /* Flash ROMs simm 2 */ @@ -2305,11 +2275,6 @@ static const struct WD33C93interface scsi_intf = NULL /* command completion IRQ */ }; -static MACHINE_START( cps3 ) -{ - wd33c93_init(machine, &scsi_intf); -} - static MACHINE_RESET( cps3 ) { cps3_state *state = machine.driver_data(); @@ -2544,6 +2509,7 @@ static MACHINE_CONFIG_START( cps3, cps3_state ) MCFG_CPU_PERIODIC_INT(cps3_other_interrupt,80) /* ?source? */ MCFG_CPU_CONFIG(sh2_conf_cps3) + MCFG_WD33C93_ADD("wd33c93", scsi_intf); MCFG_SCSIDEV_ADD("cdrom", SCSICD, SCSI_ID_1) /* video hardware */ @@ -2561,7 +2527,6 @@ static MACHINE_CONFIG_START( cps3, cps3_state ) 42.9545MHz / 15.4445kHz = 2781.217 / 6 = 463.536 -> unlikely */ - MCFG_MACHINE_START(cps3) MCFG_MACHINE_RESET(cps3) MCFG_NVRAM_ADD_0FILL("eeprom") MCFG_PALETTE_LENGTH(0x10000) // actually 0x20000 ... @@ -2625,377 +2590,377 @@ MACHINE_CONFIG_DERIVED( jojoba, cps3 ) MCFG_FRAGMENT_ADD(simm5_128mbit) MACHINE_CONFIG_END -#define REDEARTH_961121_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "redearth(__961121)-simm1.0", 0x00000, 0x200000, CRC(cad468f8) SHA1(b3aa4f7d3fae84e8821417ccde9528d3eda2b7a6) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "redearth(__961121)-simm1.1", 0x00000, 0x200000, CRC(e9721d89) SHA1(5c63d10bdbce52d50b6dde14d4a0f1369383d656) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "redearth(__961121)-simm1.2", 0x00000, 0x200000, CRC(2889ec98) SHA1(a94310eb4777f908d87e9d90969db8504b4140ff) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "redearth(__961121)-simm1.3", 0x00000, 0x200000, CRC(5a6cd148) SHA1(d65c6e8378a91828474a16a3bbcd13c4b3b15f13) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "redearth-simm3.0", 0x00000, 0x200000, CRC(83350cc5) SHA1(922b1abf80a4a89f35279b66311a7369d3965bd0) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "redearth-simm3.1", 0x00000, 0x200000, CRC(56734de6) SHA1(75699fa6efe5bec335e4b02e15b3c45726b68fa8) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "redearth-simm3.2", 0x00000, 0x200000, CRC(800ea0f1) SHA1(33871ab56dc1cd24441389d53e43fb8e43b149d9) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "redearth-simm3.3", 0x00000, 0x200000, CRC(97e9146c) SHA1(ab7744709615081440bee72f4080d6fd5b938668) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "redearth-simm3.4", 0x00000, 0x200000, CRC(0cb1d648) SHA1(7042a590c2b7ec55323062127e254da3cdc790a1) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "redearth-simm3.5", 0x00000, 0x200000, CRC(7a1099f0) SHA1(c6a92ec86eb24485f1db530e0e78f647e8432231) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "redearth-simm3.6", 0x00000, 0x200000, CRC(aeff8f54) SHA1(fd760e237c2e5fb2da45e32a1c12fd3defb4c3e4) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "redearth-simm3.7", 0x00000, 0x200000, CRC(f770acd0) SHA1(4b3ccb6f91568f95f04ede6c574144918d131201) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "redearth-simm4.0", 0x00000, 0x200000, CRC(301e56f2) SHA1(4847d971bff70a2aeed4599e1201c7ec9677da60) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "redearth-simm4.1", 0x00000, 0x200000, CRC(2048e103) SHA1(b21f95b05cd99749bd3f25cc71b2671c2026847b) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "redearth-simm4.2", 0x00000, 0x200000, CRC(c9433455) SHA1(63a269d76bac332c2e991d0f6a20c35e0e88680a) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "redearth-simm4.3", 0x00000, 0x200000, CRC(c02171a8) SHA1(2e9228729b27a6113d9f2e42af310a834979f714) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "redearth-simm4.4", 0x00000, 0x200000, CRC(2ddbf276) SHA1(b232baaa8edc8db18f8a3bdcc2d38fe984a94a34) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "redearth-simm4.5", 0x00000, 0x200000, CRC(fea820a6) SHA1(55ee8ef95751f5a509fb126513e1b2a70a3414e5) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "redearth-simm4.6", 0x00000, 0x200000, CRC(c7528df1) SHA1(aa312f80c2d7759d18d1aa8d416cf932b2850824) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "redearth-simm4.7", 0x00000, 0x200000, CRC(2449cf3b) SHA1(c60d8042136d74e547f668ad787cae529c42eed9) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "redearth-simm5.0", 0x00000, 0x200000, CRC(424451b9) SHA1(250fb92254c9e7ff5bc8dbeea5872f8a771dc9bd) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "redearth-simm5.1", 0x00000, 0x200000, CRC(9b8cb56b) SHA1(2ff1081dc99bb7c2f1e036f4c112137c96b83d23) ) \ +#define REDEARTH_961121_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "redearth(__961121)-simm1.0", 0x00000, 0x200000, CRC(cad468f8) SHA1(b3aa4f7d3fae84e8821417ccde9528d3eda2b7a6), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "redearth(__961121)-simm1.1", 0x00000, 0x200000, CRC(e9721d89) SHA1(5c63d10bdbce52d50b6dde14d4a0f1369383d656), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "redearth(__961121)-simm1.2", 0x00000, 0x200000, CRC(2889ec98) SHA1(a94310eb4777f908d87e9d90969db8504b4140ff), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "redearth(__961121)-simm1.3", 0x00000, 0x200000, CRC(5a6cd148) SHA1(d65c6e8378a91828474a16a3bbcd13c4b3b15f13), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "redearth-simm3.0", 0x00000, 0x200000, CRC(83350cc5) SHA1(922b1abf80a4a89f35279b66311a7369d3965bd0), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "redearth-simm3.1", 0x00000, 0x200000, CRC(56734de6) SHA1(75699fa6efe5bec335e4b02e15b3c45726b68fa8), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "redearth-simm3.2", 0x00000, 0x200000, CRC(800ea0f1) SHA1(33871ab56dc1cd24441389d53e43fb8e43b149d9), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "redearth-simm3.3", 0x00000, 0x200000, CRC(97e9146c) SHA1(ab7744709615081440bee72f4080d6fd5b938668), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "redearth-simm3.4", 0x00000, 0x200000, CRC(0cb1d648) SHA1(7042a590c2b7ec55323062127e254da3cdc790a1), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "redearth-simm3.5", 0x00000, 0x200000, CRC(7a1099f0) SHA1(c6a92ec86eb24485f1db530e0e78f647e8432231), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "redearth-simm3.6", 0x00000, 0x200000, CRC(aeff8f54) SHA1(fd760e237c2e5fb2da45e32a1c12fd3defb4c3e4), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "redearth-simm3.7", 0x00000, 0x200000, CRC(f770acd0) SHA1(4b3ccb6f91568f95f04ede6c574144918d131201), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "redearth-simm4.0", 0x00000, 0x200000, CRC(301e56f2) SHA1(4847d971bff70a2aeed4599e1201c7ec9677da60), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "redearth-simm4.1", 0x00000, 0x200000, CRC(2048e103) SHA1(b21f95b05cd99749bd3f25cc71b2671c2026847b), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "redearth-simm4.2", 0x00000, 0x200000, CRC(c9433455) SHA1(63a269d76bac332c2e991d0f6a20c35e0e88680a), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "redearth-simm4.3", 0x00000, 0x200000, CRC(c02171a8) SHA1(2e9228729b27a6113d9f2e42af310a834979f714), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "redearth-simm4.4", 0x00000, 0x200000, CRC(2ddbf276) SHA1(b232baaa8edc8db18f8a3bdcc2d38fe984a94a34), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "redearth-simm4.5", 0x00000, 0x200000, CRC(fea820a6) SHA1(55ee8ef95751f5a509fb126513e1b2a70a3414e5), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "redearth-simm4.6", 0x00000, 0x200000, CRC(c7528df1) SHA1(aa312f80c2d7759d18d1aa8d416cf932b2850824), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "redearth-simm4.7", 0x00000, 0x200000, CRC(2449cf3b) SHA1(c60d8042136d74e547f668ad787cae529c42eed9), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "redearth-simm5.0", 0x00000, 0x200000, CRC(424451b9) SHA1(250fb92254c9e7ff5bc8dbeea5872f8a771dc9bd), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "redearth-simm5.1", 0x00000, 0x200000, CRC(9b8cb56b) SHA1(2ff1081dc99bb7c2f1e036f4c112137c96b83d23), flags ) \ #define REDEARTH_961121_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-wzd-5", 0, BAD_DUMP SHA1(e5676752b08283dc4a98c3d7b759e8aa6dcd0679) ) \ -#define REDEARTH_961023_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "redearth(__961023)-simm1.0", 0x00000, 0x200000, CRC(65bac346) SHA1(6f4ba0c2cae91a37fc97bea5fc8a50aaf6ca6513) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "redearth(__961023)-simm1.1", 0x00000, 0x200000, CRC(a8ec4aae) SHA1(0012cb6ba630ddd74958f7759de34706bf919338) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "redearth(__961023)-simm1.2", 0x00000, 0x200000, CRC(2caf8995) SHA1(ca012b6dec0481b043edf9c7e931bd952ec74ebb) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "redearth(__961023)-simm1.3", 0x00000, 0x200000, CRC(13ebc21d) SHA1(465bdea0633526a8bf07b35495a5311c8bf213d5) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "redearth-simm3.0", 0x00000, 0x200000, CRC(83350cc5) SHA1(922b1abf80a4a89f35279b66311a7369d3965bd0) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "redearth-simm3.1", 0x00000, 0x200000, CRC(56734de6) SHA1(75699fa6efe5bec335e4b02e15b3c45726b68fa8) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "redearth-simm3.2", 0x00000, 0x200000, CRC(800ea0f1) SHA1(33871ab56dc1cd24441389d53e43fb8e43b149d9) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "redearth-simm3.3", 0x00000, 0x200000, CRC(97e9146c) SHA1(ab7744709615081440bee72f4080d6fd5b938668) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "redearth-simm3.4", 0x00000, 0x200000, CRC(0cb1d648) SHA1(7042a590c2b7ec55323062127e254da3cdc790a1) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "redearth-simm3.5", 0x00000, 0x200000, CRC(7a1099f0) SHA1(c6a92ec86eb24485f1db530e0e78f647e8432231) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "redearth-simm3.6", 0x00000, 0x200000, CRC(aeff8f54) SHA1(fd760e237c2e5fb2da45e32a1c12fd3defb4c3e4) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "redearth-simm3.7", 0x00000, 0x200000, CRC(f770acd0) SHA1(4b3ccb6f91568f95f04ede6c574144918d131201) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "redearth-simm4.0", 0x00000, 0x200000, CRC(301e56f2) SHA1(4847d971bff70a2aeed4599e1201c7ec9677da60) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "redearth-simm4.1", 0x00000, 0x200000, CRC(2048e103) SHA1(b21f95b05cd99749bd3f25cc71b2671c2026847b) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "redearth-simm4.2", 0x00000, 0x200000, CRC(c9433455) SHA1(63a269d76bac332c2e991d0f6a20c35e0e88680a) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "redearth-simm4.3", 0x00000, 0x200000, CRC(c02171a8) SHA1(2e9228729b27a6113d9f2e42af310a834979f714) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "redearth-simm4.4", 0x00000, 0x200000, CRC(2ddbf276) SHA1(b232baaa8edc8db18f8a3bdcc2d38fe984a94a34) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "redearth-simm4.5", 0x00000, 0x200000, CRC(fea820a6) SHA1(55ee8ef95751f5a509fb126513e1b2a70a3414e5) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "redearth-simm4.6", 0x00000, 0x200000, CRC(c7528df1) SHA1(aa312f80c2d7759d18d1aa8d416cf932b2850824) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "redearth-simm4.7", 0x00000, 0x200000, CRC(2449cf3b) SHA1(c60d8042136d74e547f668ad787cae529c42eed9) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "redearth-simm5.0", 0x00000, 0x200000, CRC(424451b9) SHA1(250fb92254c9e7ff5bc8dbeea5872f8a771dc9bd) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "redearth-simm5.1", 0x00000, 0x200000, CRC(9b8cb56b) SHA1(2ff1081dc99bb7c2f1e036f4c112137c96b83d23) ) \ +#define REDEARTH_961023_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "redearth(__961023)-simm1.0", 0x00000, 0x200000, CRC(65bac346) SHA1(6f4ba0c2cae91a37fc97bea5fc8a50aaf6ca6513), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "redearth(__961023)-simm1.1", 0x00000, 0x200000, CRC(a8ec4aae) SHA1(0012cb6ba630ddd74958f7759de34706bf919338), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "redearth(__961023)-simm1.2", 0x00000, 0x200000, CRC(2caf8995) SHA1(ca012b6dec0481b043edf9c7e931bd952ec74ebb), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "redearth(__961023)-simm1.3", 0x00000, 0x200000, CRC(13ebc21d) SHA1(465bdea0633526a8bf07b35495a5311c8bf213d5), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "redearth-simm3.0", 0x00000, 0x200000, CRC(83350cc5) SHA1(922b1abf80a4a89f35279b66311a7369d3965bd0), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "redearth-simm3.1", 0x00000, 0x200000, CRC(56734de6) SHA1(75699fa6efe5bec335e4b02e15b3c45726b68fa8), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "redearth-simm3.2", 0x00000, 0x200000, CRC(800ea0f1) SHA1(33871ab56dc1cd24441389d53e43fb8e43b149d9), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "redearth-simm3.3", 0x00000, 0x200000, CRC(97e9146c) SHA1(ab7744709615081440bee72f4080d6fd5b938668), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "redearth-simm3.4", 0x00000, 0x200000, CRC(0cb1d648) SHA1(7042a590c2b7ec55323062127e254da3cdc790a1), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "redearth-simm3.5", 0x00000, 0x200000, CRC(7a1099f0) SHA1(c6a92ec86eb24485f1db530e0e78f647e8432231), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "redearth-simm3.6", 0x00000, 0x200000, CRC(aeff8f54) SHA1(fd760e237c2e5fb2da45e32a1c12fd3defb4c3e4), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "redearth-simm3.7", 0x00000, 0x200000, CRC(f770acd0) SHA1(4b3ccb6f91568f95f04ede6c574144918d131201), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "redearth-simm4.0", 0x00000, 0x200000, CRC(301e56f2) SHA1(4847d971bff70a2aeed4599e1201c7ec9677da60), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "redearth-simm4.1", 0x00000, 0x200000, CRC(2048e103) SHA1(b21f95b05cd99749bd3f25cc71b2671c2026847b), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "redearth-simm4.2", 0x00000, 0x200000, CRC(c9433455) SHA1(63a269d76bac332c2e991d0f6a20c35e0e88680a), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "redearth-simm4.3", 0x00000, 0x200000, CRC(c02171a8) SHA1(2e9228729b27a6113d9f2e42af310a834979f714), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "redearth-simm4.4", 0x00000, 0x200000, CRC(2ddbf276) SHA1(b232baaa8edc8db18f8a3bdcc2d38fe984a94a34), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "redearth-simm4.5", 0x00000, 0x200000, CRC(fea820a6) SHA1(55ee8ef95751f5a509fb126513e1b2a70a3414e5), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "redearth-simm4.6", 0x00000, 0x200000, CRC(c7528df1) SHA1(aa312f80c2d7759d18d1aa8d416cf932b2850824), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "redearth-simm4.7", 0x00000, 0x200000, CRC(2449cf3b) SHA1(c60d8042136d74e547f668ad787cae529c42eed9), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "redearth-simm5.0", 0x00000, 0x200000, CRC(424451b9) SHA1(250fb92254c9e7ff5bc8dbeea5872f8a771dc9bd), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "redearth-simm5.1", 0x00000, 0x200000, CRC(9b8cb56b) SHA1(2ff1081dc99bb7c2f1e036f4c112137c96b83d23), flags ) \ #define REDEARTH_961023_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-wzd-3", 0, SHA1(a6ff67093db6bc80ee5fc46e4300e0177b213a52) ) \ -#define SFIII_970204_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "sfiii-simm1.0", 0x00000, 0x200000, CRC(cfc9e45a) SHA1(5d9061f76680642e730373e3ac29b24926dc5c0c) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "sfiii-simm1.1", 0x00000, 0x200000, CRC(57920546) SHA1(c8452e7e101b8888fb806d1c9874c6be49fc7dbd) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "sfiii-simm1.2", 0x00000, 0x200000, CRC(0d8f2680) SHA1(ade7b28acd11023696c4b20136f3d2f34da6b1be) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "sfiii-simm1.3", 0x00000, 0x200000, CRC(ea4ca054) SHA1(f91c55c4e4fc428ce15d27be38aeed3a483d028c) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "sfiii-simm3.0", 0x00000, 0x200000, CRC(080b3bd3) SHA1(f51bc5de95ab22b87ba09ea721285b308afd0bda) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "sfiii-simm3.1", 0x00000, 0x200000, CRC(5c356f2f) SHA1(e969ce388f6e565d9612e65b0895560c7bb472e6) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "sfiii-simm3.2", 0x00000, 0x200000, CRC(f9c97a45) SHA1(58a9691696c3f26a1150a451567c501f55cf1874) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "sfiii-simm3.3", 0x00000, 0x200000, CRC(09de3ead) SHA1(2f41d84a96cb5e0d169200a4e9358ad5f407a2b7) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "sfiii-simm3.4", 0x00000, 0x200000, CRC(7dd7e1f3) SHA1(bcf1023287457d97f09d9f6e9c93fdf24cc24a07) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "sfiii-simm3.5", 0x00000, 0x200000, CRC(47a03a3a) SHA1(2509e5737059251888e4e1efbcdfac86a89ff1a1) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "sfiii-simm3.6", 0x00000, 0x200000, CRC(e9eb7a26) SHA1(b8547edb7085e9149aa59d5226ad2d1976cab2bd) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "sfiii-simm3.7", 0x00000, 0x200000, CRC(7f44395c) SHA1(f4d2e283cb3a4aad4eae4e13963a74e20be7c181) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "sfiii-simm4.0", 0x00000, 0x200000, CRC(9ac080fc) SHA1(2e5024b35b147513ee42eda8748df9d669410377) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "sfiii-simm4.1", 0x00000, 0x200000, CRC(6e2c4c94) SHA1(5a185cb76b5999bd826bc9b5ea584a5c3498f69d) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "sfiii-simm4.2", 0x00000, 0x200000, CRC(8afc22d4) SHA1(04a419a3092c98fc4a7693e6acf30ae5a849e5c1) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "sfiii-simm4.3", 0x00000, 0x200000, CRC(9f3873b8) SHA1(33499d6f02bc84c80acb56be078aaed7f8d1300d) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "sfiii-simm4.4", 0x00000, 0x200000, CRC(166b3c97) SHA1(40e6e9d43cbbd8496b430931b8ab7db01dc1c6d5) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "sfiii-simm4.5", 0x00000, 0x200000, CRC(e5ea2547) SHA1(a823c689098f37a3054d728bddb0033a4b8396f1) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "sfiii-simm4.6", 0x00000, 0x200000, CRC(e85b9fdd) SHA1(264cb10fe9b3ede384c7db42bfc58ed5c21ea8f8) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "sfiii-simm4.7", 0x00000, 0x200000, CRC(362c01b7) SHA1(9c404312a6aabe8e91e68dde193e3972bc1636cd) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "sfiii-simm5.0", 0x00000, 0x200000, CRC(9bc108b2) SHA1(894dadab7957044bf877029c7f8e556d5d6e85d3) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "sfiii-simm5.1", 0x00000, 0x200000, CRC(c6f1c066) SHA1(00de492dd1ef7aef05027a8c501c296b6602e917) ) \ +#define SFIII_970204_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "sfiii-simm1.0", 0x00000, 0x200000, CRC(cfc9e45a) SHA1(5d9061f76680642e730373e3ac29b24926dc5c0c), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "sfiii-simm1.1", 0x00000, 0x200000, CRC(57920546) SHA1(c8452e7e101b8888fb806d1c9874c6be49fc7dbd), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "sfiii-simm1.2", 0x00000, 0x200000, CRC(0d8f2680) SHA1(ade7b28acd11023696c4b20136f3d2f34da6b1be), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "sfiii-simm1.3", 0x00000, 0x200000, CRC(ea4ca054) SHA1(f91c55c4e4fc428ce15d27be38aeed3a483d028c), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "sfiii-simm3.0", 0x00000, 0x200000, CRC(080b3bd3) SHA1(f51bc5de95ab22b87ba09ea721285b308afd0bda), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "sfiii-simm3.1", 0x00000, 0x200000, CRC(5c356f2f) SHA1(e969ce388f6e565d9612e65b0895560c7bb472e6), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "sfiii-simm3.2", 0x00000, 0x200000, CRC(f9c97a45) SHA1(58a9691696c3f26a1150a451567c501f55cf1874), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "sfiii-simm3.3", 0x00000, 0x200000, CRC(09de3ead) SHA1(2f41d84a96cb5e0d169200a4e9358ad5f407a2b7), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "sfiii-simm3.4", 0x00000, 0x200000, CRC(7dd7e1f3) SHA1(bcf1023287457d97f09d9f6e9c93fdf24cc24a07), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "sfiii-simm3.5", 0x00000, 0x200000, CRC(47a03a3a) SHA1(2509e5737059251888e4e1efbcdfac86a89ff1a1), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "sfiii-simm3.6", 0x00000, 0x200000, CRC(e9eb7a26) SHA1(b8547edb7085e9149aa59d5226ad2d1976cab2bd), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "sfiii-simm3.7", 0x00000, 0x200000, CRC(7f44395c) SHA1(f4d2e283cb3a4aad4eae4e13963a74e20be7c181), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "sfiii-simm4.0", 0x00000, 0x200000, CRC(9ac080fc) SHA1(2e5024b35b147513ee42eda8748df9d669410377), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "sfiii-simm4.1", 0x00000, 0x200000, CRC(6e2c4c94) SHA1(5a185cb76b5999bd826bc9b5ea584a5c3498f69d), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "sfiii-simm4.2", 0x00000, 0x200000, CRC(8afc22d4) SHA1(04a419a3092c98fc4a7693e6acf30ae5a849e5c1), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "sfiii-simm4.3", 0x00000, 0x200000, CRC(9f3873b8) SHA1(33499d6f02bc84c80acb56be078aaed7f8d1300d), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "sfiii-simm4.4", 0x00000, 0x200000, CRC(166b3c97) SHA1(40e6e9d43cbbd8496b430931b8ab7db01dc1c6d5), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "sfiii-simm4.5", 0x00000, 0x200000, CRC(e5ea2547) SHA1(a823c689098f37a3054d728bddb0033a4b8396f1), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "sfiii-simm4.6", 0x00000, 0x200000, CRC(e85b9fdd) SHA1(264cb10fe9b3ede384c7db42bfc58ed5c21ea8f8), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "sfiii-simm4.7", 0x00000, 0x200000, CRC(362c01b7) SHA1(9c404312a6aabe8e91e68dde193e3972bc1636cd), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "sfiii-simm5.0", 0x00000, 0x200000, CRC(9bc108b2) SHA1(894dadab7957044bf877029c7f8e556d5d6e85d3), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "sfiii-simm5.1", 0x00000, 0x200000, CRC(c6f1c066) SHA1(00de492dd1ef7aef05027a8c501c296b6602e917), flags ) \ #define SFIII_970204_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-sf3-3", 0, BAD_DUMP SHA1(606e62cc5f46275e366e7dbb412dbaeb7e54cd0c) ) \ -#define SFIII2_970930_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "sfiii2-simm1.0", 0x00000, 0x200000, CRC(2d666f0b) SHA1(68de034b3a3aeaf4b26122a84ad48b0b763e4122) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "sfiii2-simm1.1", 0x00000, 0x200000, CRC(2a3a8ef6) SHA1(31fb58fd1360ed8c951e2c4ac898a5a7104528d6) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "sfiii2-simm1.2", 0x00000, 0x200000, CRC(161d2206) SHA1(58999f876e64c1a088e8765962a9cd504f22a706) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "sfiii2-simm1.3", 0x00000, 0x200000, CRC(87ded8a3) SHA1(4ccef64f80d2ee63940b0958b500364ee515db51) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "sfiii2-simm2.0", 0x00000, 0x200000, CRC(94a4ce0f) SHA1(2c8e26a66d1dcd17c22c70baa2a3ff5a54511514) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "sfiii2-simm2.1", 0x00000, 0x200000, CRC(67585033) SHA1(24df9968a54c330fbe95f8e4dfe6e7dfd144ed0c) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "sfiii2-simm2.2", 0x00000, 0x200000, CRC(fabffcd5) SHA1(9399f64c42f63a64e44a21a2690e44779943a2b2) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "sfiii2-simm2.3", 0x00000, 0x200000, CRC(623c09ca) SHA1(dc9618a08bb7f44e569ac17605d268511155a14e) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "sfiii2-simm3.0", 0x00000, 0x200000, CRC(dab2d766) SHA1(d265cc8b1b497eb4bedd63b3f1de60eb1c1db0df) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "sfiii2-simm3.1", 0x00000, 0x200000, CRC(1f2aa34b) SHA1(38b224d34c4550f1f33c2c368e2a252d0d176cc0) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "sfiii2-simm3.2", 0x00000, 0x200000, CRC(6f1a04eb) SHA1(980ca929114075d1920e2da44f9a22087cc92e55) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "sfiii2-simm3.3", 0x00000, 0x200000, CRC(e05ef205) SHA1(e604e3832549740f953581fc91e850beda6a73c8) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "sfiii2-simm3.4", 0x00000, 0x200000, CRC(affb074f) SHA1(0e76973807039bc66fd0f3233401cea8d2c45f84) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "sfiii2-simm3.5", 0x00000, 0x200000, CRC(6962872e) SHA1(f16b2d0792697345145d0e9d950e912a2ffabe0d) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "sfiii2-simm3.6", 0x00000, 0x200000, CRC(6eed87de) SHA1(5d5067ad36234c5efd57a2baebeffa2f44f2caec) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "sfiii2-simm3.7", 0x00000, 0x200000, CRC(e18f479e) SHA1(cd4c1812ab422336bfa414e0b2098b472d2f9251) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "sfiii2-simm4.0", 0x00000, 0x200000, CRC(764c2503) SHA1(cad3f20ade2e1d3ac52f8c318443da20062ae943) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "sfiii2-simm4.1", 0x00000, 0x200000, CRC(3e16af6e) SHA1(afde2ed4bf3a3e95035fc02c572c5b83178a9467) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "sfiii2-simm4.2", 0x00000, 0x200000, CRC(215705e6) SHA1(42d3849f8a9242a89ba465dbc205f310186c67cd) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "sfiii2-simm4.3", 0x00000, 0x200000, CRC(e30cbd9c) SHA1(c205101ada86154921e09fed4f6908d15ec60761) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "sfiii2-simm4.4", 0x00000, 0x200000, CRC(4185ded9) SHA1(24bf9b5f25d7753f1feb09b82611f7482f30d304) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "sfiii2-simm4.5", 0x00000, 0x200000, CRC(4e8db013) SHA1(6816df2b6c60005fb375530ea93bb30a960c9b01) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "sfiii2-simm4.6", 0x00000, 0x200000, CRC(08df48ce) SHA1(e8a3b68ebeab193539446c3f6e0a19b37f1f3495) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "sfiii2-simm4.7", 0x00000, 0x200000, CRC(bb8f80a5) SHA1(35d9e86637d54405c97fdb7da9c42cc53907cae3) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "sfiii2-simm5.0", 0x00000, 0x200000, CRC(ebdc4787) SHA1(f86e8ebf4b2214be166dbe4ea921058a552364ea) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "sfiii2-simm5.1", 0x00000, 0x200000, CRC(6b7c550e) SHA1(77cdabccf3ecebf142ac86dffe6e24052941e3a1) ) \ - ROM_REGION( 0x200000, "simm5.2", 0 ) ROM_LOAD( "sfiii2-simm5.2", 0x00000, 0x200000, CRC(56ff8c50) SHA1(16f7602a4549a5b724e3fcdb75b0f3c397077b81) ) \ - ROM_REGION( 0x200000, "simm5.3", 0 ) ROM_LOAD( "sfiii2-simm5.3", 0x00000, 0x200000, CRC(3f2ac3e9) SHA1(a7b631f18ce572a42f46314f37a01d9840abc765) ) \ - ROM_REGION( 0x200000, "simm5.4", 0 ) ROM_LOAD( "sfiii2-simm5.4", 0x00000, 0x200000, CRC(48cda50e) SHA1(35e9f27fb8b69e3b3a313ea33dc53b1102e5f66e) ) \ - ROM_REGION( 0x200000, "simm5.5", 0 ) ROM_LOAD( "sfiii2-simm5.5", 0x00000, 0x200000, CRC(520c0af6) SHA1(7bed1b6707974eafbfb62ccb84a51df8a100e070) ) \ - ROM_REGION( 0x200000, "simm5.6", 0 ) ROM_LOAD( "sfiii2-simm5.6", 0x00000, 0x200000, CRC(2edc5986) SHA1(761ab2c67d0d873ffd74158eb77f7722c076f3e3) ) \ - ROM_REGION( 0x200000, "simm5.7", 0 ) ROM_LOAD( "sfiii2-simm5.7", 0x00000, 0x200000, CRC(93ffa199) SHA1(33ec2379f30c6fdf47ba72c1d0cad8bdd02f17df) ) \ +#define SFIII2_970930_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "sfiii2-simm1.0", 0x00000, 0x200000, CRC(2d666f0b) SHA1(68de034b3a3aeaf4b26122a84ad48b0b763e4122), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "sfiii2-simm1.1", 0x00000, 0x200000, CRC(2a3a8ef6) SHA1(31fb58fd1360ed8c951e2c4ac898a5a7104528d6), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "sfiii2-simm1.2", 0x00000, 0x200000, CRC(161d2206) SHA1(58999f876e64c1a088e8765962a9cd504f22a706), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "sfiii2-simm1.3", 0x00000, 0x200000, CRC(87ded8a3) SHA1(4ccef64f80d2ee63940b0958b500364ee515db51), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "sfiii2-simm2.0", 0x00000, 0x200000, CRC(94a4ce0f) SHA1(2c8e26a66d1dcd17c22c70baa2a3ff5a54511514), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "sfiii2-simm2.1", 0x00000, 0x200000, CRC(67585033) SHA1(24df9968a54c330fbe95f8e4dfe6e7dfd144ed0c), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "sfiii2-simm2.2", 0x00000, 0x200000, CRC(fabffcd5) SHA1(9399f64c42f63a64e44a21a2690e44779943a2b2), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "sfiii2-simm2.3", 0x00000, 0x200000, CRC(623c09ca) SHA1(dc9618a08bb7f44e569ac17605d268511155a14e), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "sfiii2-simm3.0", 0x00000, 0x200000, CRC(dab2d766) SHA1(d265cc8b1b497eb4bedd63b3f1de60eb1c1db0df), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "sfiii2-simm3.1", 0x00000, 0x200000, CRC(1f2aa34b) SHA1(38b224d34c4550f1f33c2c368e2a252d0d176cc0), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "sfiii2-simm3.2", 0x00000, 0x200000, CRC(6f1a04eb) SHA1(980ca929114075d1920e2da44f9a22087cc92e55), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "sfiii2-simm3.3", 0x00000, 0x200000, CRC(e05ef205) SHA1(e604e3832549740f953581fc91e850beda6a73c8), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "sfiii2-simm3.4", 0x00000, 0x200000, CRC(affb074f) SHA1(0e76973807039bc66fd0f3233401cea8d2c45f84), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "sfiii2-simm3.5", 0x00000, 0x200000, CRC(6962872e) SHA1(f16b2d0792697345145d0e9d950e912a2ffabe0d), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "sfiii2-simm3.6", 0x00000, 0x200000, CRC(6eed87de) SHA1(5d5067ad36234c5efd57a2baebeffa2f44f2caec), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "sfiii2-simm3.7", 0x00000, 0x200000, CRC(e18f479e) SHA1(cd4c1812ab422336bfa414e0b2098b472d2f9251), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "sfiii2-simm4.0", 0x00000, 0x200000, CRC(764c2503) SHA1(cad3f20ade2e1d3ac52f8c318443da20062ae943), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "sfiii2-simm4.1", 0x00000, 0x200000, CRC(3e16af6e) SHA1(afde2ed4bf3a3e95035fc02c572c5b83178a9467), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "sfiii2-simm4.2", 0x00000, 0x200000, CRC(215705e6) SHA1(42d3849f8a9242a89ba465dbc205f310186c67cd), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "sfiii2-simm4.3", 0x00000, 0x200000, CRC(e30cbd9c) SHA1(c205101ada86154921e09fed4f6908d15ec60761), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "sfiii2-simm4.4", 0x00000, 0x200000, CRC(4185ded9) SHA1(24bf9b5f25d7753f1feb09b82611f7482f30d304), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "sfiii2-simm4.5", 0x00000, 0x200000, CRC(4e8db013) SHA1(6816df2b6c60005fb375530ea93bb30a960c9b01), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "sfiii2-simm4.6", 0x00000, 0x200000, CRC(08df48ce) SHA1(e8a3b68ebeab193539446c3f6e0a19b37f1f3495), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "sfiii2-simm4.7", 0x00000, 0x200000, CRC(bb8f80a5) SHA1(35d9e86637d54405c97fdb7da9c42cc53907cae3), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "sfiii2-simm5.0", 0x00000, 0x200000, CRC(ebdc4787) SHA1(f86e8ebf4b2214be166dbe4ea921058a552364ea), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "sfiii2-simm5.1", 0x00000, 0x200000, CRC(6b7c550e) SHA1(77cdabccf3ecebf142ac86dffe6e24052941e3a1), flags ) \ + ROM_REGION( 0x200000, "simm5.2", 0 ) ROMX_LOAD( "sfiii2-simm5.2", 0x00000, 0x200000, CRC(56ff8c50) SHA1(16f7602a4549a5b724e3fcdb75b0f3c397077b81), flags ) \ + ROM_REGION( 0x200000, "simm5.3", 0 ) ROMX_LOAD( "sfiii2-simm5.3", 0x00000, 0x200000, CRC(3f2ac3e9) SHA1(a7b631f18ce572a42f46314f37a01d9840abc765), flags ) \ + ROM_REGION( 0x200000, "simm5.4", 0 ) ROMX_LOAD( "sfiii2-simm5.4", 0x00000, 0x200000, CRC(48cda50e) SHA1(35e9f27fb8b69e3b3a313ea33dc53b1102e5f66e), flags ) \ + ROM_REGION( 0x200000, "simm5.5", 0 ) ROMX_LOAD( "sfiii2-simm5.5", 0x00000, 0x200000, CRC(520c0af6) SHA1(7bed1b6707974eafbfb62ccb84a51df8a100e070), flags ) \ + ROM_REGION( 0x200000, "simm5.6", 0 ) ROMX_LOAD( "sfiii2-simm5.6", 0x00000, 0x200000, CRC(2edc5986) SHA1(761ab2c67d0d873ffd74158eb77f7722c076f3e3), flags ) \ + ROM_REGION( 0x200000, "simm5.7", 0 ) ROMX_LOAD( "sfiii2-simm5.7", 0x00000, 0x200000, CRC(93ffa199) SHA1(33ec2379f30c6fdf47ba72c1d0cad8bdd02f17df), flags ) \ #define SFIII2_970930_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-3ga000", 0, BAD_DUMP SHA1(4e162885b0b3265a56e0265037bcf247e820f027) ) \ -#define JOJO_990128_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "jojo(__990128)-simm1.0", 0x00000, 0x200000, CRC(9516948b) SHA1(4d7e6c1eb7d1bebff2a5069bcd186070a9105474) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "jojo(__990128)-simm1.1", 0x00000, 0x200000, CRC(a847848d) SHA1(4df70309395f1d2a2e8f85bc34e17453d4a76f81) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "jojo(__990128)-simm1.2", 0x00000, 0x200000, CRC(853e8846) SHA1(d120b7e2de9502e3261e8dd101f97589b2ed1c38) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "jojo(__990128)-simm1.3", 0x00000, 0x200000, CRC(c04fe00e) SHA1(d09409b77460d19b56aaaf4a64356f3d37a1ee41) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "jojo(__990128)-simm2.0", 0x00000, 0x200000, CRC(e1a4b3c8) SHA1(5dc298431644e1ca470aaab752a7d74f2f9dc7a1) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "jojo(__990128)-simm2.1", 0x00000, 0x200000, CRC(189cef95) SHA1(ebe42a019358461557f69fb17d65d84d0f733415) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "jojo(__990128)-simm2.2", 0x00000, 0x200000, CRC(47db5ec6) SHA1(e80271e4013e4391c2cc4229ff1fbd4a2b7c6f04) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "jojo(__990128)-simm2.3", 0x00000, 0x200000, CRC(e3d3a155) SHA1(75e9b5da93dd8894cf70fa4dac56f3958be4c766) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "jojo-simm3.0", 0x00000, 0x200000, CRC(de7fc9c1) SHA1(662b85a990b04c855773506c936317e62fab4a05) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "jojo-simm3.1", 0x00000, 0x200000, CRC(43d053d3) SHA1(54ff0e9c164e0d1649522c330ccc7e5d79e0bc85) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "jojo-simm3.2", 0x00000, 0x200000, CRC(2ffd7fa5) SHA1(9018c8e2b286a333ba606208e90caa764951ea3f) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "jojo-simm3.3", 0x00000, 0x200000, CRC(4da4985b) SHA1(2552b1730a21ce17d58b69a79ad212a6a5829439) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "jojo-simm3.4", 0x00000, 0x200000, CRC(fde98d72) SHA1(654563e12d033e8656dc74a268a08b15b171470d) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "jojo-simm3.5", 0x00000, 0x200000, CRC(edb2a266) SHA1(19ebada8422c7f4bf70d0c9ad42b84268967b316) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "jojo-simm3.6", 0x00000, 0x200000, CRC(be7cf319) SHA1(7893f5907992e6b903b2683980bba6d3d003bb06) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "jojo-simm3.7", 0x00000, 0x200000, CRC(56fe1a9f) SHA1(01741fe1256f4e682f687e94040f4e8bbb8bedb2) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "jojo-simm4.0", 0x00000, 0x200000, CRC(c4e7bf68) SHA1(a4d1ddea58a3d42db82a63a5e974cbf38d9b792a) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "jojo-simm4.1", 0x00000, 0x200000, CRC(b62b2719) SHA1(cb577b89e9e14fda67715716fefd47a782d518ab) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "jojo-simm4.2", 0x00000, 0x200000, CRC(18d15809) SHA1(2b406cd1aaa4799a436213dcaa65473eacb4c6d7) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "jojo-simm4.3", 0x00000, 0x200000, CRC(9af0ad79) SHA1(075ee048e17b50188876f25d7a6571d6ace84d7d) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "jojo-simm4.4", 0x00000, 0x200000, CRC(4124c1f0) SHA1(e4946a8029adc5d0bacead8d766521b4ccd1722b) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "jojo-simm4.5", 0x00000, 0x200000, CRC(5e001fd1) SHA1(6457a39f336381b46e587aa2f5f719810ee5bcf9) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "jojo-simm4.6", 0x00000, 0x200000, CRC(9affa23b) SHA1(e3d77e777c47277d841a9dadc1dd6e3157706a2e) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "jojo-simm4.7", 0x00000, 0x200000, CRC(2511572a) SHA1(725adcf71bcee5c8bb839d2d1c5e3456b8c6886b) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "jojo-simm5.0", 0x00000, 0x200000, CRC(797615fc) SHA1(29874be9f1da5515c90f5d601aa5924c263f8feb) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "jojo-simm5.1", 0x00000, 0x200000, CRC(734fd162) SHA1(16cdfac74d18a6c2216afb1ce6afbd7f15297c32) ) \ +#define JOJO_990128_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "jojo(__990128)-simm1.0", 0x00000, 0x200000, CRC(9516948b) SHA1(4d7e6c1eb7d1bebff2a5069bcd186070a9105474), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "jojo(__990128)-simm1.1", 0x00000, 0x200000, CRC(a847848d) SHA1(4df70309395f1d2a2e8f85bc34e17453d4a76f81), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "jojo(__990128)-simm1.2", 0x00000, 0x200000, CRC(853e8846) SHA1(d120b7e2de9502e3261e8dd101f97589b2ed1c38), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "jojo(__990128)-simm1.3", 0x00000, 0x200000, CRC(c04fe00e) SHA1(d09409b77460d19b56aaaf4a64356f3d37a1ee41), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "jojo(__990128)-simm2.0", 0x00000, 0x200000, CRC(e1a4b3c8) SHA1(5dc298431644e1ca470aaab752a7d74f2f9dc7a1), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "jojo(__990128)-simm2.1", 0x00000, 0x200000, CRC(189cef95) SHA1(ebe42a019358461557f69fb17d65d84d0f733415), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "jojo(__990128)-simm2.2", 0x00000, 0x200000, CRC(47db5ec6) SHA1(e80271e4013e4391c2cc4229ff1fbd4a2b7c6f04), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "jojo(__990128)-simm2.3", 0x00000, 0x200000, CRC(e3d3a155) SHA1(75e9b5da93dd8894cf70fa4dac56f3958be4c766), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "jojo-simm3.0", 0x00000, 0x200000, CRC(de7fc9c1) SHA1(662b85a990b04c855773506c936317e62fab4a05), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "jojo-simm3.1", 0x00000, 0x200000, CRC(43d053d3) SHA1(54ff0e9c164e0d1649522c330ccc7e5d79e0bc85), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "jojo-simm3.2", 0x00000, 0x200000, CRC(2ffd7fa5) SHA1(9018c8e2b286a333ba606208e90caa764951ea3f), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "jojo-simm3.3", 0x00000, 0x200000, CRC(4da4985b) SHA1(2552b1730a21ce17d58b69a79ad212a6a5829439), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "jojo-simm3.4", 0x00000, 0x200000, CRC(fde98d72) SHA1(654563e12d033e8656dc74a268a08b15b171470d), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "jojo-simm3.5", 0x00000, 0x200000, CRC(edb2a266) SHA1(19ebada8422c7f4bf70d0c9ad42b84268967b316), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "jojo-simm3.6", 0x00000, 0x200000, CRC(be7cf319) SHA1(7893f5907992e6b903b2683980bba6d3d003bb06), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "jojo-simm3.7", 0x00000, 0x200000, CRC(56fe1a9f) SHA1(01741fe1256f4e682f687e94040f4e8bbb8bedb2), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "jojo-simm4.0", 0x00000, 0x200000, CRC(c4e7bf68) SHA1(a4d1ddea58a3d42db82a63a5e974cbf38d9b792a), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "jojo-simm4.1", 0x00000, 0x200000, CRC(b62b2719) SHA1(cb577b89e9e14fda67715716fefd47a782d518ab), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "jojo-simm4.2", 0x00000, 0x200000, CRC(18d15809) SHA1(2b406cd1aaa4799a436213dcaa65473eacb4c6d7), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "jojo-simm4.3", 0x00000, 0x200000, CRC(9af0ad79) SHA1(075ee048e17b50188876f25d7a6571d6ace84d7d), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "jojo-simm4.4", 0x00000, 0x200000, CRC(4124c1f0) SHA1(e4946a8029adc5d0bacead8d766521b4ccd1722b), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "jojo-simm4.5", 0x00000, 0x200000, CRC(5e001fd1) SHA1(6457a39f336381b46e587aa2f5f719810ee5bcf9), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "jojo-simm4.6", 0x00000, 0x200000, CRC(9affa23b) SHA1(e3d77e777c47277d841a9dadc1dd6e3157706a2e), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "jojo-simm4.7", 0x00000, 0x200000, CRC(2511572a) SHA1(725adcf71bcee5c8bb839d2d1c5e3456b8c6886b), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "jojo-simm5.0", 0x00000, 0x200000, CRC(797615fc) SHA1(29874be9f1da5515c90f5d601aa5924c263f8feb), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "jojo-simm5.1", 0x00000, 0x200000, CRC(734fd162) SHA1(16cdfac74d18a6c2216afb1ce6afbd7f15297c32), flags ) \ #define JOJO_990128_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-jjk-3", 0, SHA1(dc6e74b5e02e13f62cb8c4e234dd6061501e49c1) ) \ -#define JOJO_990108_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "jojo(__990108)-simm1.0", 0x00000, 0x200000, CRC(cfbc38d6) SHA1(c33e3a51fe8ab54e0912a1d6e662fe1ade73cee7) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "jojo(__990108)-simm1.1", 0x00000, 0x200000, CRC(42578d94) SHA1(fa46f92ac1a6716430adec9ab27214a11fa61749) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "jojo(__990108)-simm1.2", 0x00000, 0x200000, CRC(1b40c566) SHA1(9833799e9b4fecf7f9ce14bca64936646b3fdbde) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "jojo(__990108)-simm1.3", 0x00000, 0x200000, CRC(bba709b4) SHA1(0dd71e575f2193505f2ab960568ac1eccf40d53f) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "jojo(__990108)-simm2.0", 0x00000, 0x200000, CRC(417e5dc1) SHA1(54ee9596c1c51811f3bdef7dbe77b44b34f230ca) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "jojo(__990108)-simm2.1", 0x00000, 0x200000, CRC(d3b3267d) SHA1(eb2cff347880f1489fb5b1b8bd16df8f50c7f494) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "jojo(__990108)-simm2.2", 0x00000, 0x200000, CRC(c66d96b1) SHA1(909d5aac165748b549b6056a6091c41df012f5df) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "jojo(__990108)-simm2.3", 0x00000, 0x200000, CRC(aa34cc85) SHA1(7677cc6fa913755fc699691b350698bbe8904118) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "jojo-simm3.0", 0x00000, 0x200000, CRC(de7fc9c1) SHA1(662b85a990b04c855773506c936317e62fab4a05) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "jojo-simm3.1", 0x00000, 0x200000, CRC(43d053d3) SHA1(54ff0e9c164e0d1649522c330ccc7e5d79e0bc85) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "jojo-simm3.2", 0x00000, 0x200000, CRC(2ffd7fa5) SHA1(9018c8e2b286a333ba606208e90caa764951ea3f) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "jojo-simm3.3", 0x00000, 0x200000, CRC(4da4985b) SHA1(2552b1730a21ce17d58b69a79ad212a6a5829439) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "jojo-simm3.4", 0x00000, 0x200000, CRC(fde98d72) SHA1(654563e12d033e8656dc74a268a08b15b171470d) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "jojo-simm3.5", 0x00000, 0x200000, CRC(edb2a266) SHA1(19ebada8422c7f4bf70d0c9ad42b84268967b316) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "jojo-simm3.6", 0x00000, 0x200000, CRC(be7cf319) SHA1(7893f5907992e6b903b2683980bba6d3d003bb06) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "jojo-simm3.7", 0x00000, 0x200000, CRC(56fe1a9f) SHA1(01741fe1256f4e682f687e94040f4e8bbb8bedb2) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "jojo-simm4.0", 0x00000, 0x200000, CRC(c4e7bf68) SHA1(a4d1ddea58a3d42db82a63a5e974cbf38d9b792a) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "jojo-simm4.1", 0x00000, 0x200000, CRC(b62b2719) SHA1(cb577b89e9e14fda67715716fefd47a782d518ab) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "jojo-simm4.2", 0x00000, 0x200000, CRC(18d15809) SHA1(2b406cd1aaa4799a436213dcaa65473eacb4c6d7) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "jojo-simm4.3", 0x00000, 0x200000, CRC(9af0ad79) SHA1(075ee048e17b50188876f25d7a6571d6ace84d7d) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "jojo-simm4.4", 0x00000, 0x200000, CRC(4124c1f0) SHA1(e4946a8029adc5d0bacead8d766521b4ccd1722b) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "jojo-simm4.5", 0x00000, 0x200000, CRC(5e001fd1) SHA1(6457a39f336381b46e587aa2f5f719810ee5bcf9) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "jojo-simm4.6", 0x00000, 0x200000, CRC(9affa23b) SHA1(e3d77e777c47277d841a9dadc1dd6e3157706a2e) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "jojo-simm4.7", 0x00000, 0x200000, CRC(2511572a) SHA1(725adcf71bcee5c8bb839d2d1c5e3456b8c6886b) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "jojo-simm5.0", 0x00000, 0x200000, CRC(797615fc) SHA1(29874be9f1da5515c90f5d601aa5924c263f8feb) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "jojo-simm5.1", 0x00000, 0x200000, CRC(734fd162) SHA1(16cdfac74d18a6c2216afb1ce6afbd7f15297c32) ) \ +#define JOJO_990108_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "jojo(__990108)-simm1.0", 0x00000, 0x200000, CRC(cfbc38d6) SHA1(c33e3a51fe8ab54e0912a1d6e662fe1ade73cee7), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "jojo(__990108)-simm1.1", 0x00000, 0x200000, CRC(42578d94) SHA1(fa46f92ac1a6716430adec9ab27214a11fa61749), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "jojo(__990108)-simm1.2", 0x00000, 0x200000, CRC(1b40c566) SHA1(9833799e9b4fecf7f9ce14bca64936646b3fdbde), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "jojo(__990108)-simm1.3", 0x00000, 0x200000, CRC(bba709b4) SHA1(0dd71e575f2193505f2ab960568ac1eccf40d53f), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "jojo(__990108)-simm2.0", 0x00000, 0x200000, CRC(417e5dc1) SHA1(54ee9596c1c51811f3bdef7dbe77b44b34f230ca), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "jojo(__990108)-simm2.1", 0x00000, 0x200000, CRC(d3b3267d) SHA1(eb2cff347880f1489fb5b1b8bd16df8f50c7f494), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "jojo(__990108)-simm2.2", 0x00000, 0x200000, CRC(c66d96b1) SHA1(909d5aac165748b549b6056a6091c41df012f5df), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "jojo(__990108)-simm2.3", 0x00000, 0x200000, CRC(aa34cc85) SHA1(7677cc6fa913755fc699691b350698bbe8904118), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "jojo-simm3.0", 0x00000, 0x200000, CRC(de7fc9c1) SHA1(662b85a990b04c855773506c936317e62fab4a05), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "jojo-simm3.1", 0x00000, 0x200000, CRC(43d053d3) SHA1(54ff0e9c164e0d1649522c330ccc7e5d79e0bc85), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "jojo-simm3.2", 0x00000, 0x200000, CRC(2ffd7fa5) SHA1(9018c8e2b286a333ba606208e90caa764951ea3f), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "jojo-simm3.3", 0x00000, 0x200000, CRC(4da4985b) SHA1(2552b1730a21ce17d58b69a79ad212a6a5829439), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "jojo-simm3.4", 0x00000, 0x200000, CRC(fde98d72) SHA1(654563e12d033e8656dc74a268a08b15b171470d), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "jojo-simm3.5", 0x00000, 0x200000, CRC(edb2a266) SHA1(19ebada8422c7f4bf70d0c9ad42b84268967b316), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "jojo-simm3.6", 0x00000, 0x200000, CRC(be7cf319) SHA1(7893f5907992e6b903b2683980bba6d3d003bb06), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "jojo-simm3.7", 0x00000, 0x200000, CRC(56fe1a9f) SHA1(01741fe1256f4e682f687e94040f4e8bbb8bedb2), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "jojo-simm4.0", 0x00000, 0x200000, CRC(c4e7bf68) SHA1(a4d1ddea58a3d42db82a63a5e974cbf38d9b792a), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "jojo-simm4.1", 0x00000, 0x200000, CRC(b62b2719) SHA1(cb577b89e9e14fda67715716fefd47a782d518ab), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "jojo-simm4.2", 0x00000, 0x200000, CRC(18d15809) SHA1(2b406cd1aaa4799a436213dcaa65473eacb4c6d7), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "jojo-simm4.3", 0x00000, 0x200000, CRC(9af0ad79) SHA1(075ee048e17b50188876f25d7a6571d6ace84d7d), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "jojo-simm4.4", 0x00000, 0x200000, CRC(4124c1f0) SHA1(e4946a8029adc5d0bacead8d766521b4ccd1722b), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "jojo-simm4.5", 0x00000, 0x200000, CRC(5e001fd1) SHA1(6457a39f336381b46e587aa2f5f719810ee5bcf9), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "jojo-simm4.6", 0x00000, 0x200000, CRC(9affa23b) SHA1(e3d77e777c47277d841a9dadc1dd6e3157706a2e), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "jojo-simm4.7", 0x00000, 0x200000, CRC(2511572a) SHA1(725adcf71bcee5c8bb839d2d1c5e3456b8c6886b), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "jojo-simm5.0", 0x00000, 0x200000, CRC(797615fc) SHA1(29874be9f1da5515c90f5d601aa5924c263f8feb), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "jojo-simm5.1", 0x00000, 0x200000, CRC(734fd162) SHA1(16cdfac74d18a6c2216afb1ce6afbd7f15297c32), flags ) \ #define JOJO_990108_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-jjk-2", 0, BAD_DUMP SHA1(0f5c09171409213e191a607ee89ca3a91fe9c96a) ) \ -#define JOJO_981202_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "jojo(__981202)-simm1.0", 0x00000, 0x200000, CRC(e06ba886) SHA1(4defd5e8e1e6d0c439fed8a6454e89a59e24ea4c) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "jojo(__981202)-simm1.1", 0x00000, 0x200000, CRC(6dd177c8) SHA1(c39db980f6fcca9c221e9be6f777eaf38f1b136b) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "jojo(__981202)-simm1.2", 0x00000, 0x200000, CRC(d35a15e0) SHA1(576b92a94505764a10b9bcf82c02335e7ef62014) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "jojo(__981202)-simm1.3", 0x00000, 0x200000, CRC(66d865ac) SHA1(5248c3f124af62b4a672d954ef15f86629feeacb) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "jojo(__981202)-simm2.0", 0x00000, 0x200000, CRC(417e5dc1) SHA1(54ee9596c1c51811f3bdef7dbe77b44b34f230ca) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "jojo(__981202)-simm2.1", 0x00000, 0x200000, CRC(c891c887) SHA1(42e84f774ee655e9a39b016a3cfe94262ed2e9f1) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "jojo(__981202)-simm2.2", 0x00000, 0x200000, CRC(1e101f30) SHA1(56518c1646bb9452334856bb8bcc58892f9f93b9) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "jojo(__981202)-simm2.3", 0x00000, 0x200000, CRC(1fd1d3e4) SHA1(bed2b77d58f1fdf7ba5ca7126d3db1dd0f8c80b4) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "jojo-simm3.0", 0x00000, 0x200000, CRC(de7fc9c1) SHA1(662b85a990b04c855773506c936317e62fab4a05) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "jojo-simm3.1", 0x00000, 0x200000, CRC(43d053d3) SHA1(54ff0e9c164e0d1649522c330ccc7e5d79e0bc85) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "jojo-simm3.2", 0x00000, 0x200000, CRC(2ffd7fa5) SHA1(9018c8e2b286a333ba606208e90caa764951ea3f) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "jojo-simm3.3", 0x00000, 0x200000, CRC(4da4985b) SHA1(2552b1730a21ce17d58b69a79ad212a6a5829439) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "jojo-simm3.4", 0x00000, 0x200000, CRC(fde98d72) SHA1(654563e12d033e8656dc74a268a08b15b171470d) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "jojo-simm3.5", 0x00000, 0x200000, CRC(edb2a266) SHA1(19ebada8422c7f4bf70d0c9ad42b84268967b316) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "jojo-simm3.6", 0x00000, 0x200000, CRC(be7cf319) SHA1(7893f5907992e6b903b2683980bba6d3d003bb06) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "jojo-simm3.7", 0x00000, 0x200000, CRC(56fe1a9f) SHA1(01741fe1256f4e682f687e94040f4e8bbb8bedb2) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "jojo-simm4.0", 0x00000, 0x200000, CRC(c4e7bf68) SHA1(a4d1ddea58a3d42db82a63a5e974cbf38d9b792a) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "jojo-simm4.1", 0x00000, 0x200000, CRC(b62b2719) SHA1(cb577b89e9e14fda67715716fefd47a782d518ab) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "jojo-simm4.2", 0x00000, 0x200000, CRC(18d15809) SHA1(2b406cd1aaa4799a436213dcaa65473eacb4c6d7) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "jojo-simm4.3", 0x00000, 0x200000, CRC(9af0ad79) SHA1(075ee048e17b50188876f25d7a6571d6ace84d7d) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "jojo-simm4.4", 0x00000, 0x200000, CRC(4124c1f0) SHA1(e4946a8029adc5d0bacead8d766521b4ccd1722b) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "jojo-simm4.5", 0x00000, 0x200000, CRC(5e001fd1) SHA1(6457a39f336381b46e587aa2f5f719810ee5bcf9) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "jojo-simm4.6", 0x00000, 0x200000, CRC(9affa23b) SHA1(e3d77e777c47277d841a9dadc1dd6e3157706a2e) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "jojo-simm4.7", 0x00000, 0x200000, CRC(2511572a) SHA1(725adcf71bcee5c8bb839d2d1c5e3456b8c6886b) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "jojo-simm5.0", 0x00000, 0x200000, CRC(797615fc) SHA1(29874be9f1da5515c90f5d601aa5924c263f8feb) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "jojo-simm5.1", 0x00000, 0x200000, CRC(734fd162) SHA1(16cdfac74d18a6c2216afb1ce6afbd7f15297c32) ) \ +#define JOJO_981202_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "jojo(__981202)-simm1.0", 0x00000, 0x200000, CRC(e06ba886) SHA1(4defd5e8e1e6d0c439fed8a6454e89a59e24ea4c), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "jojo(__981202)-simm1.1", 0x00000, 0x200000, CRC(6dd177c8) SHA1(c39db980f6fcca9c221e9be6f777eaf38f1b136b), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "jojo(__981202)-simm1.2", 0x00000, 0x200000, CRC(d35a15e0) SHA1(576b92a94505764a10b9bcf82c02335e7ef62014), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "jojo(__981202)-simm1.3", 0x00000, 0x200000, CRC(66d865ac) SHA1(5248c3f124af62b4a672d954ef15f86629feeacb), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "jojo(__981202)-simm2.0", 0x00000, 0x200000, CRC(417e5dc1) SHA1(54ee9596c1c51811f3bdef7dbe77b44b34f230ca), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "jojo(__981202)-simm2.1", 0x00000, 0x200000, CRC(c891c887) SHA1(42e84f774ee655e9a39b016a3cfe94262ed2e9f1), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "jojo(__981202)-simm2.2", 0x00000, 0x200000, CRC(1e101f30) SHA1(56518c1646bb9452334856bb8bcc58892f9f93b9), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "jojo(__981202)-simm2.3", 0x00000, 0x200000, CRC(1fd1d3e4) SHA1(bed2b77d58f1fdf7ba5ca7126d3db1dd0f8c80b4), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "jojo-simm3.0", 0x00000, 0x200000, CRC(de7fc9c1) SHA1(662b85a990b04c855773506c936317e62fab4a05), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "jojo-simm3.1", 0x00000, 0x200000, CRC(43d053d3) SHA1(54ff0e9c164e0d1649522c330ccc7e5d79e0bc85), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "jojo-simm3.2", 0x00000, 0x200000, CRC(2ffd7fa5) SHA1(9018c8e2b286a333ba606208e90caa764951ea3f), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "jojo-simm3.3", 0x00000, 0x200000, CRC(4da4985b) SHA1(2552b1730a21ce17d58b69a79ad212a6a5829439), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "jojo-simm3.4", 0x00000, 0x200000, CRC(fde98d72) SHA1(654563e12d033e8656dc74a268a08b15b171470d), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "jojo-simm3.5", 0x00000, 0x200000, CRC(edb2a266) SHA1(19ebada8422c7f4bf70d0c9ad42b84268967b316), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "jojo-simm3.6", 0x00000, 0x200000, CRC(be7cf319) SHA1(7893f5907992e6b903b2683980bba6d3d003bb06), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "jojo-simm3.7", 0x00000, 0x200000, CRC(56fe1a9f) SHA1(01741fe1256f4e682f687e94040f4e8bbb8bedb2), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "jojo-simm4.0", 0x00000, 0x200000, CRC(c4e7bf68) SHA1(a4d1ddea58a3d42db82a63a5e974cbf38d9b792a), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "jojo-simm4.1", 0x00000, 0x200000, CRC(b62b2719) SHA1(cb577b89e9e14fda67715716fefd47a782d518ab), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "jojo-simm4.2", 0x00000, 0x200000, CRC(18d15809) SHA1(2b406cd1aaa4799a436213dcaa65473eacb4c6d7), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "jojo-simm4.3", 0x00000, 0x200000, CRC(9af0ad79) SHA1(075ee048e17b50188876f25d7a6571d6ace84d7d), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "jojo-simm4.4", 0x00000, 0x200000, CRC(4124c1f0) SHA1(e4946a8029adc5d0bacead8d766521b4ccd1722b), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "jojo-simm4.5", 0x00000, 0x200000, CRC(5e001fd1) SHA1(6457a39f336381b46e587aa2f5f719810ee5bcf9), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "jojo-simm4.6", 0x00000, 0x200000, CRC(9affa23b) SHA1(e3d77e777c47277d841a9dadc1dd6e3157706a2e), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "jojo-simm4.7", 0x00000, 0x200000, CRC(2511572a) SHA1(725adcf71bcee5c8bb839d2d1c5e3456b8c6886b), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "jojo-simm5.0", 0x00000, 0x200000, CRC(797615fc) SHA1(29874be9f1da5515c90f5d601aa5924c263f8feb), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "jojo-simm5.1", 0x00000, 0x200000, CRC(734fd162) SHA1(16cdfac74d18a6c2216afb1ce6afbd7f15297c32), flags ) \ #define JOJO_981202_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-jjk000", 0, BAD_DUMP SHA1(09869f6d8c032b527e02d815749dc8fab1289e86) ) \ -#define SFIII3_990608_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "sfiii3(__990608)-simm1.0", 0x00000, 0x200000, CRC(11dfd3cd) SHA1(dba1f77c46e80317e3279298411154dfb6db2309) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "sfiii3(__990608)-simm1.1", 0x00000, 0x200000, CRC(c50585e6) SHA1(a289237957ea1c7f58b1c65e24c54ceb34cb1712) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "sfiii3(__990608)-simm1.2", 0x00000, 0x200000, CRC(8e011d9b) SHA1(e0861bcd3c4f865474d7ce47aa9eeec7b3d28da6) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "sfiii3(__990608)-simm1.3", 0x00000, 0x200000, CRC(dca8d92f) SHA1(7cd241641c943df446e2c75b88b5cf2d2ebf7b2e) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "sfiii3-simm2.0", 0x00000, 0x200000, CRC(06eb969e) SHA1(d89f6a6585b76692d57d337f0f8186398fb056da) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "sfiii3-simm2.1", 0x00000, 0x200000, CRC(e7039f82) SHA1(8e81e66b5a4f45ae14b070a491bde47a6a74499f) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "sfiii3-simm2.2", 0x00000, 0x200000, CRC(645c96f7) SHA1(06d5a54874d4bf100b776131ec9060da209ad037) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "sfiii3-simm2.3", 0x00000, 0x200000, CRC(610efab1) SHA1(bbc21ed6ff6220ff6017a3f02ebd9a341fbc9040) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "sfiii3-simm3.0", 0x00000, 0x200000, CRC(7baa1f79) SHA1(3f409df28c24dd7221966b5340d59898ea756b6f) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "sfiii3-simm3.1", 0x00000, 0x200000, CRC(234bf8fe) SHA1(2191781ae4d726cab28de97f27efa4a13f3bdd69) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "sfiii3-simm3.2", 0x00000, 0x200000, CRC(d9ebc308) SHA1(af6a0dca77e5181c9f20533a06760a782c5fd51d) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "sfiii3-simm3.3", 0x00000, 0x200000, CRC(293cba77) SHA1(294604cacdc24261aec4d39e489de91c41fa1758) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "sfiii3-simm3.4", 0x00000, 0x200000, CRC(6055e747) SHA1(3813852c5a4a5355ef739ca8f0913bbd390b984b) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "sfiii3-simm3.5", 0x00000, 0x200000, CRC(499aa6fc) SHA1(5b9b6eab3e99ff3e1d7c1f50b9d8bc6a81f3f8a9) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "sfiii3-simm3.6", 0x00000, 0x200000, CRC(6c13879e) SHA1(de189b0b8f42bc7dd89983e62bc2ecb4237b3277) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "sfiii3-simm3.7", 0x00000, 0x200000, CRC(cf4f8ede) SHA1(e0fb68fcb0e445f824c62fa828d6e1dcd7e3683a) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "sfiii3-simm4.0", 0x00000, 0x200000, CRC(091fd5ba) SHA1(3327ad7c2623c119bf728af717ea2ce3b74673a9) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "sfiii3-simm4.1", 0x00000, 0x200000, CRC(0bca8917) SHA1(b7b284e2f16f46d46bcfaae779b232c5b980924f) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "sfiii3-simm4.2", 0x00000, 0x200000, CRC(a0fd578b) SHA1(100c9db9f00ecd88d518076f5a0822e6ac3695b3) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "sfiii3-simm4.3", 0x00000, 0x200000, CRC(4bf8c699) SHA1(2c0b4288b5ebc5e54d9e782dfc39eb8c78fd4c21) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "sfiii3-simm4.4", 0x00000, 0x200000, CRC(137b8785) SHA1(56a579520a8ce2abbf36be57777f024e80474eee) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "sfiii3-simm4.5", 0x00000, 0x200000, CRC(4fb70671) SHA1(9aba83c18cfc099a5ce18793119bff0c2b9c777f) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "sfiii3-simm4.6", 0x00000, 0x200000, CRC(832374a4) SHA1(c84629e32fbf47cb7b5b4ee7555bfc2ac9b3857f) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "sfiii3-simm4.7", 0x00000, 0x200000, CRC(1c88576d) SHA1(0f039944d0c2305999ed5dbd351c3eb87812dc3b) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "sfiii3-simm5.0", 0x00000, 0x200000, CRC(c67d9190) SHA1(d265475244099d0ec153059986f3445c7bd910a3) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "sfiii3-simm5.1", 0x00000, 0x200000, CRC(6cb79868) SHA1(c94237f30e05bfcb2e23945530c812d9e4c73416) ) \ - ROM_REGION( 0x200000, "simm5.2", 0 ) ROM_LOAD( "sfiii3-simm5.2", 0x00000, 0x200000, CRC(df69930e) SHA1(c76b7c559a1d5558138afbc796249efa2f49f6a8) ) \ - ROM_REGION( 0x200000, "simm5.3", 0 ) ROM_LOAD( "sfiii3-simm5.3", 0x00000, 0x200000, CRC(333754e0) SHA1(4c18a569c26524a492ecd6f4c8b3c8e803a077d3) ) \ - ROM_REGION( 0x200000, "simm5.4", 0 ) ROM_LOAD( "sfiii3-simm5.4", 0x00000, 0x200000, CRC(78f6d417) SHA1(a69577cc5399fcf0a24548661168f27f3e7e8e40) ) \ - ROM_REGION( 0x200000, "simm5.5", 0 ) ROM_LOAD( "sfiii3-simm5.5", 0x00000, 0x200000, CRC(8ccad9b1) SHA1(f8bda399f87be2497b7ac39e9661f9863bf4f873) ) \ - ROM_REGION( 0x200000, "simm5.6", 0 ) ROM_LOAD( "sfiii3-simm5.6", 0x00000, 0x200000, CRC(85de59e5) SHA1(748b5c91f15777b85d8c1d35b685cd90d3185ec6) ) \ - ROM_REGION( 0x200000, "simm5.7", 0 ) ROM_LOAD( "sfiii3-simm5.7", 0x00000, 0x200000, CRC(ee7e29b3) SHA1(63dc30c6904ca2f58d229249bee5eef51fafa158) ) \ - ROM_REGION( 0x200000, "simm6.0", 0 ) ROM_LOAD( "sfiii3-simm6.0", 0x00000, 0x200000, CRC(8da69042) SHA1(fd3d08295342635b2136e48d543c9350d287bb22) ) \ - ROM_REGION( 0x200000, "simm6.1", 0 ) ROM_LOAD( "sfiii3-simm6.1", 0x00000, 0x200000, CRC(1c8c7ac4) SHA1(ac9f8353a4c356ef98aa7c226baba00b01f5a80f) ) \ - ROM_REGION( 0x200000, "simm6.2", 0 ) ROM_LOAD( "sfiii3-simm6.2", 0x00000, 0x200000, CRC(a671341d) SHA1(636f4c04962bc1e1ddb29d2e01244b00389b234f) ) \ - ROM_REGION( 0x200000, "simm6.3", 0 ) ROM_LOAD( "sfiii3-simm6.3", 0x00000, 0x200000, CRC(1a990249) SHA1(2acc639e2c0c53bf24096b8620eab090bc25d03b) ) \ - ROM_REGION( 0x200000, "simm6.4", 0 ) ROM_LOAD( "sfiii3-simm6.4", 0x00000, 0x200000, CRC(20cb39ac) SHA1(7d13a0fea1ef719dd2ff77dfb547d53c6023cc9e) ) \ - ROM_REGION( 0x200000, "simm6.5", 0 ) ROM_LOAD( "sfiii3-simm6.5", 0x00000, 0x200000, CRC(5f844b2f) SHA1(564e4934f89ed3b92a4c4874519f8f00f3b48696) ) \ - ROM_REGION( 0x200000, "simm6.6", 0 ) ROM_LOAD( "sfiii3-simm6.6", 0x00000, 0x200000, CRC(450e8d28) SHA1(885db658132aa27926df617ec2d2a1f38abdbb60) ) \ - ROM_REGION( 0x200000, "simm6.7", 0 ) ROM_LOAD( "sfiii3-simm6.7", 0x00000, 0x200000, CRC(cc5f4187) SHA1(248ddace21ed4736a56e92f77cc6ad219d7fef0b) ) \ +#define SFIII3_990608_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "sfiii3(__990608)-simm1.0", 0x00000, 0x200000, CRC(11dfd3cd) SHA1(dba1f77c46e80317e3279298411154dfb6db2309), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "sfiii3(__990608)-simm1.1", 0x00000, 0x200000, CRC(c50585e6) SHA1(a289237957ea1c7f58b1c65e24c54ceb34cb1712), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "sfiii3(__990608)-simm1.2", 0x00000, 0x200000, CRC(8e011d9b) SHA1(e0861bcd3c4f865474d7ce47aa9eeec7b3d28da6), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "sfiii3(__990608)-simm1.3", 0x00000, 0x200000, CRC(dca8d92f) SHA1(7cd241641c943df446e2c75b88b5cf2d2ebf7b2e), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "sfiii3-simm2.0", 0x00000, 0x200000, CRC(06eb969e) SHA1(d89f6a6585b76692d57d337f0f8186398fb056da), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "sfiii3-simm2.1", 0x00000, 0x200000, CRC(e7039f82) SHA1(8e81e66b5a4f45ae14b070a491bde47a6a74499f), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "sfiii3-simm2.2", 0x00000, 0x200000, CRC(645c96f7) SHA1(06d5a54874d4bf100b776131ec9060da209ad037), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "sfiii3-simm2.3", 0x00000, 0x200000, CRC(610efab1) SHA1(bbc21ed6ff6220ff6017a3f02ebd9a341fbc9040), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "sfiii3-simm3.0", 0x00000, 0x200000, CRC(7baa1f79) SHA1(3f409df28c24dd7221966b5340d59898ea756b6f), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "sfiii3-simm3.1", 0x00000, 0x200000, CRC(234bf8fe) SHA1(2191781ae4d726cab28de97f27efa4a13f3bdd69), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "sfiii3-simm3.2", 0x00000, 0x200000, CRC(d9ebc308) SHA1(af6a0dca77e5181c9f20533a06760a782c5fd51d), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "sfiii3-simm3.3", 0x00000, 0x200000, CRC(293cba77) SHA1(294604cacdc24261aec4d39e489de91c41fa1758), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "sfiii3-simm3.4", 0x00000, 0x200000, CRC(6055e747) SHA1(3813852c5a4a5355ef739ca8f0913bbd390b984b), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "sfiii3-simm3.5", 0x00000, 0x200000, CRC(499aa6fc) SHA1(5b9b6eab3e99ff3e1d7c1f50b9d8bc6a81f3f8a9), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "sfiii3-simm3.6", 0x00000, 0x200000, CRC(6c13879e) SHA1(de189b0b8f42bc7dd89983e62bc2ecb4237b3277), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "sfiii3-simm3.7", 0x00000, 0x200000, CRC(cf4f8ede) SHA1(e0fb68fcb0e445f824c62fa828d6e1dcd7e3683a), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "sfiii3-simm4.0", 0x00000, 0x200000, CRC(091fd5ba) SHA1(3327ad7c2623c119bf728af717ea2ce3b74673a9), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "sfiii3-simm4.1", 0x00000, 0x200000, CRC(0bca8917) SHA1(b7b284e2f16f46d46bcfaae779b232c5b980924f), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "sfiii3-simm4.2", 0x00000, 0x200000, CRC(a0fd578b) SHA1(100c9db9f00ecd88d518076f5a0822e6ac3695b3), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "sfiii3-simm4.3", 0x00000, 0x200000, CRC(4bf8c699) SHA1(2c0b4288b5ebc5e54d9e782dfc39eb8c78fd4c21), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "sfiii3-simm4.4", 0x00000, 0x200000, CRC(137b8785) SHA1(56a579520a8ce2abbf36be57777f024e80474eee), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "sfiii3-simm4.5", 0x00000, 0x200000, CRC(4fb70671) SHA1(9aba83c18cfc099a5ce18793119bff0c2b9c777f), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "sfiii3-simm4.6", 0x00000, 0x200000, CRC(832374a4) SHA1(c84629e32fbf47cb7b5b4ee7555bfc2ac9b3857f), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "sfiii3-simm4.7", 0x00000, 0x200000, CRC(1c88576d) SHA1(0f039944d0c2305999ed5dbd351c3eb87812dc3b), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "sfiii3-simm5.0", 0x00000, 0x200000, CRC(c67d9190) SHA1(d265475244099d0ec153059986f3445c7bd910a3), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "sfiii3-simm5.1", 0x00000, 0x200000, CRC(6cb79868) SHA1(c94237f30e05bfcb2e23945530c812d9e4c73416), flags ) \ + ROM_REGION( 0x200000, "simm5.2", 0 ) ROMX_LOAD( "sfiii3-simm5.2", 0x00000, 0x200000, CRC(df69930e) SHA1(c76b7c559a1d5558138afbc796249efa2f49f6a8), flags ) \ + ROM_REGION( 0x200000, "simm5.3", 0 ) ROMX_LOAD( "sfiii3-simm5.3", 0x00000, 0x200000, CRC(333754e0) SHA1(4c18a569c26524a492ecd6f4c8b3c8e803a077d3), flags ) \ + ROM_REGION( 0x200000, "simm5.4", 0 ) ROMX_LOAD( "sfiii3-simm5.4", 0x00000, 0x200000, CRC(78f6d417) SHA1(a69577cc5399fcf0a24548661168f27f3e7e8e40), flags ) \ + ROM_REGION( 0x200000, "simm5.5", 0 ) ROMX_LOAD( "sfiii3-simm5.5", 0x00000, 0x200000, CRC(8ccad9b1) SHA1(f8bda399f87be2497b7ac39e9661f9863bf4f873), flags ) \ + ROM_REGION( 0x200000, "simm5.6", 0 ) ROMX_LOAD( "sfiii3-simm5.6", 0x00000, 0x200000, CRC(85de59e5) SHA1(748b5c91f15777b85d8c1d35b685cd90d3185ec6), flags ) \ + ROM_REGION( 0x200000, "simm5.7", 0 ) ROMX_LOAD( "sfiii3-simm5.7", 0x00000, 0x200000, CRC(ee7e29b3) SHA1(63dc30c6904ca2f58d229249bee5eef51fafa158), flags ) \ + ROM_REGION( 0x200000, "simm6.0", 0 ) ROMX_LOAD( "sfiii3-simm6.0", 0x00000, 0x200000, CRC(8da69042) SHA1(fd3d08295342635b2136e48d543c9350d287bb22), flags ) \ + ROM_REGION( 0x200000, "simm6.1", 0 ) ROMX_LOAD( "sfiii3-simm6.1", 0x00000, 0x200000, CRC(1c8c7ac4) SHA1(ac9f8353a4c356ef98aa7c226baba00b01f5a80f), flags ) \ + ROM_REGION( 0x200000, "simm6.2", 0 ) ROMX_LOAD( "sfiii3-simm6.2", 0x00000, 0x200000, CRC(a671341d) SHA1(636f4c04962bc1e1ddb29d2e01244b00389b234f), flags ) \ + ROM_REGION( 0x200000, "simm6.3", 0 ) ROMX_LOAD( "sfiii3-simm6.3", 0x00000, 0x200000, CRC(1a990249) SHA1(2acc639e2c0c53bf24096b8620eab090bc25d03b), flags ) \ + ROM_REGION( 0x200000, "simm6.4", 0 ) ROMX_LOAD( "sfiii3-simm6.4", 0x00000, 0x200000, CRC(20cb39ac) SHA1(7d13a0fea1ef719dd2ff77dfb547d53c6023cc9e), flags ) \ + ROM_REGION( 0x200000, "simm6.5", 0 ) ROMX_LOAD( "sfiii3-simm6.5", 0x00000, 0x200000, CRC(5f844b2f) SHA1(564e4934f89ed3b92a4c4874519f8f00f3b48696), flags ) \ + ROM_REGION( 0x200000, "simm6.6", 0 ) ROMX_LOAD( "sfiii3-simm6.6", 0x00000, 0x200000, CRC(450e8d28) SHA1(885db658132aa27926df617ec2d2a1f38abdbb60), flags ) \ + ROM_REGION( 0x200000, "simm6.7", 0 ) ROMX_LOAD( "sfiii3-simm6.7", 0x00000, 0x200000, CRC(cc5f4187) SHA1(248ddace21ed4736a56e92f77cc6ad219d7fef0b), flags ) \ #define SFIII3_990608_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-33s-2", 0, BAD_DUMP SHA1(41b0e246db91cbfc3f8f0f62d981734feb4b4ab5) ) \ -#define SFIII3_990512_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "sfiii3(__990512)-simm1.0", 0x00000, 0x200000, CRC(66e66235) SHA1(0a98038721d176458d4f85dbd76c5edb93a65322) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "sfiii3(__990512)-simm1.1", 0x00000, 0x200000, CRC(186e8c5f) SHA1(a63040201a660b56217a8cbab32f5c2c466ee5dd) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "sfiii3(__990512)-simm1.2", 0x00000, 0x200000, CRC(bce18cab) SHA1(a5c28063d98c22403756fc926a20631456fb7dcc) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "sfiii3(__990512)-simm1.3", 0x00000, 0x200000, CRC(129dc2c9) SHA1(c1e634d94b1c8f7f02a47703622de5cab3d0da3f) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "sfiii3-simm2.0", 0x00000, 0x200000, CRC(06eb969e) SHA1(d89f6a6585b76692d57d337f0f8186398fb056da) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "sfiii3-simm2.1", 0x00000, 0x200000, CRC(e7039f82) SHA1(8e81e66b5a4f45ae14b070a491bde47a6a74499f) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "sfiii3-simm2.2", 0x00000, 0x200000, CRC(645c96f7) SHA1(06d5a54874d4bf100b776131ec9060da209ad037) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "sfiii3-simm2.3", 0x00000, 0x200000, CRC(610efab1) SHA1(bbc21ed6ff6220ff6017a3f02ebd9a341fbc9040) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "sfiii3-simm3.0", 0x00000, 0x200000, CRC(7baa1f79) SHA1(3f409df28c24dd7221966b5340d59898ea756b6f) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "sfiii3-simm3.1", 0x00000, 0x200000, CRC(234bf8fe) SHA1(2191781ae4d726cab28de97f27efa4a13f3bdd69) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "sfiii3-simm3.2", 0x00000, 0x200000, CRC(d9ebc308) SHA1(af6a0dca77e5181c9f20533a06760a782c5fd51d) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "sfiii3-simm3.3", 0x00000, 0x200000, CRC(293cba77) SHA1(294604cacdc24261aec4d39e489de91c41fa1758) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "sfiii3-simm3.4", 0x00000, 0x200000, CRC(6055e747) SHA1(3813852c5a4a5355ef739ca8f0913bbd390b984b) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "sfiii3-simm3.5", 0x00000, 0x200000, CRC(499aa6fc) SHA1(5b9b6eab3e99ff3e1d7c1f50b9d8bc6a81f3f8a9) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "sfiii3-simm3.6", 0x00000, 0x200000, CRC(6c13879e) SHA1(de189b0b8f42bc7dd89983e62bc2ecb4237b3277) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "sfiii3-simm3.7", 0x00000, 0x200000, CRC(cf4f8ede) SHA1(e0fb68fcb0e445f824c62fa828d6e1dcd7e3683a) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "sfiii3-simm4.0", 0x00000, 0x200000, CRC(091fd5ba) SHA1(3327ad7c2623c119bf728af717ea2ce3b74673a9) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "sfiii3-simm4.1", 0x00000, 0x200000, CRC(0bca8917) SHA1(b7b284e2f16f46d46bcfaae779b232c5b980924f) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "sfiii3-simm4.2", 0x00000, 0x200000, CRC(a0fd578b) SHA1(100c9db9f00ecd88d518076f5a0822e6ac3695b3) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "sfiii3-simm4.3", 0x00000, 0x200000, CRC(4bf8c699) SHA1(2c0b4288b5ebc5e54d9e782dfc39eb8c78fd4c21) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "sfiii3-simm4.4", 0x00000, 0x200000, CRC(137b8785) SHA1(56a579520a8ce2abbf36be57777f024e80474eee) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "sfiii3-simm4.5", 0x00000, 0x200000, CRC(4fb70671) SHA1(9aba83c18cfc099a5ce18793119bff0c2b9c777f) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "sfiii3-simm4.6", 0x00000, 0x200000, CRC(832374a4) SHA1(c84629e32fbf47cb7b5b4ee7555bfc2ac9b3857f) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "sfiii3-simm4.7", 0x00000, 0x200000, CRC(1c88576d) SHA1(0f039944d0c2305999ed5dbd351c3eb87812dc3b) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "sfiii3-simm5.0", 0x00000, 0x200000, CRC(c67d9190) SHA1(d265475244099d0ec153059986f3445c7bd910a3) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "sfiii3-simm5.1", 0x00000, 0x200000, CRC(6cb79868) SHA1(c94237f30e05bfcb2e23945530c812d9e4c73416) ) \ - ROM_REGION( 0x200000, "simm5.2", 0 ) ROM_LOAD( "sfiii3-simm5.2", 0x00000, 0x200000, CRC(df69930e) SHA1(c76b7c559a1d5558138afbc796249efa2f49f6a8) ) \ - ROM_REGION( 0x200000, "simm5.3", 0 ) ROM_LOAD( "sfiii3-simm5.3", 0x00000, 0x200000, CRC(333754e0) SHA1(4c18a569c26524a492ecd6f4c8b3c8e803a077d3) ) \ - ROM_REGION( 0x200000, "simm5.4", 0 ) ROM_LOAD( "sfiii3-simm5.4", 0x00000, 0x200000, CRC(78f6d417) SHA1(a69577cc5399fcf0a24548661168f27f3e7e8e40) ) \ - ROM_REGION( 0x200000, "simm5.5", 0 ) ROM_LOAD( "sfiii3-simm5.5", 0x00000, 0x200000, CRC(8ccad9b1) SHA1(f8bda399f87be2497b7ac39e9661f9863bf4f873) ) \ - ROM_REGION( 0x200000, "simm5.6", 0 ) ROM_LOAD( "sfiii3-simm5.6", 0x00000, 0x200000, CRC(85de59e5) SHA1(748b5c91f15777b85d8c1d35b685cd90d3185ec6) ) \ - ROM_REGION( 0x200000, "simm5.7", 0 ) ROM_LOAD( "sfiii3-simm5.7", 0x00000, 0x200000, CRC(ee7e29b3) SHA1(63dc30c6904ca2f58d229249bee5eef51fafa158) ) \ - ROM_REGION( 0x200000, "simm6.0", 0 ) ROM_LOAD( "sfiii3-simm6.0", 0x00000, 0x200000, CRC(8da69042) SHA1(fd3d08295342635b2136e48d543c9350d287bb22) ) \ - ROM_REGION( 0x200000, "simm6.1", 0 ) ROM_LOAD( "sfiii3-simm6.1", 0x00000, 0x200000, CRC(1c8c7ac4) SHA1(ac9f8353a4c356ef98aa7c226baba00b01f5a80f) ) \ - ROM_REGION( 0x200000, "simm6.2", 0 ) ROM_LOAD( "sfiii3-simm6.2", 0x00000, 0x200000, CRC(a671341d) SHA1(636f4c04962bc1e1ddb29d2e01244b00389b234f) ) \ - ROM_REGION( 0x200000, "simm6.3", 0 ) ROM_LOAD( "sfiii3-simm6.3", 0x00000, 0x200000, CRC(1a990249) SHA1(2acc639e2c0c53bf24096b8620eab090bc25d03b) ) \ - ROM_REGION( 0x200000, "simm6.4", 0 ) ROM_LOAD( "sfiii3-simm6.4", 0x00000, 0x200000, CRC(20cb39ac) SHA1(7d13a0fea1ef719dd2ff77dfb547d53c6023cc9e) ) \ - ROM_REGION( 0x200000, "simm6.5", 0 ) ROM_LOAD( "sfiii3-simm6.5", 0x00000, 0x200000, CRC(5f844b2f) SHA1(564e4934f89ed3b92a4c4874519f8f00f3b48696) ) \ - ROM_REGION( 0x200000, "simm6.6", 0 ) ROM_LOAD( "sfiii3-simm6.6", 0x00000, 0x200000, CRC(450e8d28) SHA1(885db658132aa27926df617ec2d2a1f38abdbb60) ) \ - ROM_REGION( 0x200000, "simm6.7", 0 ) ROM_LOAD( "sfiii3-simm6.7", 0x00000, 0x200000, CRC(cc5f4187) SHA1(248ddace21ed4736a56e92f77cc6ad219d7fef0b) ) \ +#define SFIII3_990512_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "sfiii3(__990512)-simm1.0", 0x00000, 0x200000, CRC(66e66235) SHA1(0a98038721d176458d4f85dbd76c5edb93a65322), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "sfiii3(__990512)-simm1.1", 0x00000, 0x200000, CRC(186e8c5f) SHA1(a63040201a660b56217a8cbab32f5c2c466ee5dd), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "sfiii3(__990512)-simm1.2", 0x00000, 0x200000, CRC(bce18cab) SHA1(a5c28063d98c22403756fc926a20631456fb7dcc), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "sfiii3(__990512)-simm1.3", 0x00000, 0x200000, CRC(129dc2c9) SHA1(c1e634d94b1c8f7f02a47703622de5cab3d0da3f), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "sfiii3-simm2.0", 0x00000, 0x200000, CRC(06eb969e) SHA1(d89f6a6585b76692d57d337f0f8186398fb056da), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "sfiii3-simm2.1", 0x00000, 0x200000, CRC(e7039f82) SHA1(8e81e66b5a4f45ae14b070a491bde47a6a74499f), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "sfiii3-simm2.2", 0x00000, 0x200000, CRC(645c96f7) SHA1(06d5a54874d4bf100b776131ec9060da209ad037), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "sfiii3-simm2.3", 0x00000, 0x200000, CRC(610efab1) SHA1(bbc21ed6ff6220ff6017a3f02ebd9a341fbc9040), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "sfiii3-simm3.0", 0x00000, 0x200000, CRC(7baa1f79) SHA1(3f409df28c24dd7221966b5340d59898ea756b6f), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "sfiii3-simm3.1", 0x00000, 0x200000, CRC(234bf8fe) SHA1(2191781ae4d726cab28de97f27efa4a13f3bdd69), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "sfiii3-simm3.2", 0x00000, 0x200000, CRC(d9ebc308) SHA1(af6a0dca77e5181c9f20533a06760a782c5fd51d), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "sfiii3-simm3.3", 0x00000, 0x200000, CRC(293cba77) SHA1(294604cacdc24261aec4d39e489de91c41fa1758), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "sfiii3-simm3.4", 0x00000, 0x200000, CRC(6055e747) SHA1(3813852c5a4a5355ef739ca8f0913bbd390b984b), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "sfiii3-simm3.5", 0x00000, 0x200000, CRC(499aa6fc) SHA1(5b9b6eab3e99ff3e1d7c1f50b9d8bc6a81f3f8a9), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "sfiii3-simm3.6", 0x00000, 0x200000, CRC(6c13879e) SHA1(de189b0b8f42bc7dd89983e62bc2ecb4237b3277), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "sfiii3-simm3.7", 0x00000, 0x200000, CRC(cf4f8ede) SHA1(e0fb68fcb0e445f824c62fa828d6e1dcd7e3683a), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "sfiii3-simm4.0", 0x00000, 0x200000, CRC(091fd5ba) SHA1(3327ad7c2623c119bf728af717ea2ce3b74673a9), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "sfiii3-simm4.1", 0x00000, 0x200000, CRC(0bca8917) SHA1(b7b284e2f16f46d46bcfaae779b232c5b980924f), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "sfiii3-simm4.2", 0x00000, 0x200000, CRC(a0fd578b) SHA1(100c9db9f00ecd88d518076f5a0822e6ac3695b3), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "sfiii3-simm4.3", 0x00000, 0x200000, CRC(4bf8c699) SHA1(2c0b4288b5ebc5e54d9e782dfc39eb8c78fd4c21), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "sfiii3-simm4.4", 0x00000, 0x200000, CRC(137b8785) SHA1(56a579520a8ce2abbf36be57777f024e80474eee), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "sfiii3-simm4.5", 0x00000, 0x200000, CRC(4fb70671) SHA1(9aba83c18cfc099a5ce18793119bff0c2b9c777f), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "sfiii3-simm4.6", 0x00000, 0x200000, CRC(832374a4) SHA1(c84629e32fbf47cb7b5b4ee7555bfc2ac9b3857f), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "sfiii3-simm4.7", 0x00000, 0x200000, CRC(1c88576d) SHA1(0f039944d0c2305999ed5dbd351c3eb87812dc3b), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "sfiii3-simm5.0", 0x00000, 0x200000, CRC(c67d9190) SHA1(d265475244099d0ec153059986f3445c7bd910a3), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "sfiii3-simm5.1", 0x00000, 0x200000, CRC(6cb79868) SHA1(c94237f30e05bfcb2e23945530c812d9e4c73416), flags ) \ + ROM_REGION( 0x200000, "simm5.2", 0 ) ROMX_LOAD( "sfiii3-simm5.2", 0x00000, 0x200000, CRC(df69930e) SHA1(c76b7c559a1d5558138afbc796249efa2f49f6a8), flags ) \ + ROM_REGION( 0x200000, "simm5.3", 0 ) ROMX_LOAD( "sfiii3-simm5.3", 0x00000, 0x200000, CRC(333754e0) SHA1(4c18a569c26524a492ecd6f4c8b3c8e803a077d3), flags ) \ + ROM_REGION( 0x200000, "simm5.4", 0 ) ROMX_LOAD( "sfiii3-simm5.4", 0x00000, 0x200000, CRC(78f6d417) SHA1(a69577cc5399fcf0a24548661168f27f3e7e8e40), flags ) \ + ROM_REGION( 0x200000, "simm5.5", 0 ) ROMX_LOAD( "sfiii3-simm5.5", 0x00000, 0x200000, CRC(8ccad9b1) SHA1(f8bda399f87be2497b7ac39e9661f9863bf4f873), flags ) \ + ROM_REGION( 0x200000, "simm5.6", 0 ) ROMX_LOAD( "sfiii3-simm5.6", 0x00000, 0x200000, CRC(85de59e5) SHA1(748b5c91f15777b85d8c1d35b685cd90d3185ec6), flags ) \ + ROM_REGION( 0x200000, "simm5.7", 0 ) ROMX_LOAD( "sfiii3-simm5.7", 0x00000, 0x200000, CRC(ee7e29b3) SHA1(63dc30c6904ca2f58d229249bee5eef51fafa158), flags ) \ + ROM_REGION( 0x200000, "simm6.0", 0 ) ROMX_LOAD( "sfiii3-simm6.0", 0x00000, 0x200000, CRC(8da69042) SHA1(fd3d08295342635b2136e48d543c9350d287bb22), flags ) \ + ROM_REGION( 0x200000, "simm6.1", 0 ) ROMX_LOAD( "sfiii3-simm6.1", 0x00000, 0x200000, CRC(1c8c7ac4) SHA1(ac9f8353a4c356ef98aa7c226baba00b01f5a80f), flags ) \ + ROM_REGION( 0x200000, "simm6.2", 0 ) ROMX_LOAD( "sfiii3-simm6.2", 0x00000, 0x200000, CRC(a671341d) SHA1(636f4c04962bc1e1ddb29d2e01244b00389b234f), flags ) \ + ROM_REGION( 0x200000, "simm6.3", 0 ) ROMX_LOAD( "sfiii3-simm6.3", 0x00000, 0x200000, CRC(1a990249) SHA1(2acc639e2c0c53bf24096b8620eab090bc25d03b), flags ) \ + ROM_REGION( 0x200000, "simm6.4", 0 ) ROMX_LOAD( "sfiii3-simm6.4", 0x00000, 0x200000, CRC(20cb39ac) SHA1(7d13a0fea1ef719dd2ff77dfb547d53c6023cc9e), flags ) \ + ROM_REGION( 0x200000, "simm6.5", 0 ) ROMX_LOAD( "sfiii3-simm6.5", 0x00000, 0x200000, CRC(5f844b2f) SHA1(564e4934f89ed3b92a4c4874519f8f00f3b48696), flags ) \ + ROM_REGION( 0x200000, "simm6.6", 0 ) ROMX_LOAD( "sfiii3-simm6.6", 0x00000, 0x200000, CRC(450e8d28) SHA1(885db658132aa27926df617ec2d2a1f38abdbb60), flags ) \ + ROM_REGION( 0x200000, "simm6.7", 0 ) ROMX_LOAD( "sfiii3-simm6.7", 0x00000, 0x200000, CRC(cc5f4187) SHA1(248ddace21ed4736a56e92f77cc6ad219d7fef0b), flags ) \ #define SFIII3_990512_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-33s-1", 0, BAD_DUMP SHA1(2f4a9006a31903114f9f9dc09465ae253e565c51) ) \ -#define JOJOBA_990927_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "jojoba(__990927)-simm1.0", 0x00000, 0x200000, CRC(adcd8377) SHA1(f1aacbe061e3bcade5cca34435c3f86aec5f1499) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "jojoba(__990927)-simm1.1", 0x00000, 0x200000, CRC(d7590b59) SHA1(bfee627ebb7cb7b28216527b17e1b06a4e6f19f4) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "jojoba(__990927)-simm1.2", 0x00000, 0x200000, CRC(e62e240b) SHA1(70468cae67c009a80b45954c2a30794577343c77) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "jojoba(__990927)-simm1.3", 0x00000, 0x200000, CRC(c95450c3) SHA1(55616e009b007180d1ac6290c8da44b0d864a494) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "jojoba(__990927)-simm2.0", 0x00000, 0x200000, CRC(535f2eba) SHA1(167bec0dccfc2f91cb10cb1e2631ee619b3eb9fe) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "jojoba(__990927)-simm2.1", 0x00000, 0x200000, CRC(01dd3a01) SHA1(08c462219796baa3ec28d78d038a18187cd838bb) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "jojoba(__990927)-simm2.2", 0x00000, 0x200000, CRC(61432672) SHA1(d0416a75d395926041f90a3d34edb96a080acfd6) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "jojoba(__990927)-simm2.3", 0x00000, 0x200000, CRC(acdc9aca) SHA1(89f77ddd6286709182a676fd9bd6c333a3b16271) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "jojoba-simm3.0", 0x00000, 0x200000, CRC(4d16e111) SHA1(f198007375be65e89856d64ee2b3857a18b4eab8) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "jojoba-simm3.1", 0x00000, 0x200000, CRC(9b3406d3) SHA1(54e90cd334d13e2c74305c6b87ebce1365ef3d59) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "jojoba-simm3.2", 0x00000, 0x200000, CRC(f2414997) SHA1(fb89d5784250538ad17fd527267b513afb6eca20) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "jojoba-simm3.3", 0x00000, 0x200000, CRC(954b9c7d) SHA1(0d64d97167d4e669d7e4f3a388f9d5ec1e18ed42) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "jojoba-simm3.4", 0x00000, 0x200000, CRC(625adc1d) SHA1(533d62759ecece10c711d99bfca403e5cba279b5) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "jojoba-simm3.5", 0x00000, 0x200000, CRC(20a70bb4) SHA1(3bd8376304ffc974fb8031eac8bebff27969538c) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "jojoba-simm3.6", 0x00000, 0x200000, CRC(a10ec5af) SHA1(9b403260e8fbdacaa5369ab79fc05855cc6a6bdb) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "jojoba-simm3.7", 0x00000, 0x200000, CRC(0bd0de7a) SHA1(1debecda5f282f2a1dd17e887e522a4d00c5dc9d) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "jojoba-simm4.0", 0x00000, 0x200000, CRC(6ea14adc) SHA1(696b2ec66f3c197817a60f507a1b4c78db37f488) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "jojoba-simm4.1", 0x00000, 0x200000, CRC(8f4c42fb) SHA1(363d769b0b066ce139125426d2da6dfa15d1eb28) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "jojoba-simm4.2", 0x00000, 0x200000, CRC(ef0586d1) SHA1(8fcc350da20e3e59fa76fa14e10f2c47233ba9dc) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "jojoba-simm4.3", 0x00000, 0x200000, CRC(93ccc470) SHA1(5d267679e61c0fb592ad5f696d3c06ec1746d0b3) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "jojoba-simm4.4", 0x00000, 0x200000, CRC(3d9ec7d2) SHA1(665b867bab928be183c2006527e55f9b8ec4a271) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "jojoba-simm4.5", 0x00000, 0x200000, CRC(03e66850) SHA1(8478662dc9db20d9a186d315a883bd1cbb5e5000) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "jojoba-simm4.6", 0x00000, 0x200000, CRC(01606ac3) SHA1(ccc74edeca6abdd86fc1cf42ececa1ea393b3261) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "jojoba-simm4.7", 0x00000, 0x200000, CRC(36392b87) SHA1(e62080c8461775c1e180400dfb44414679fd0fc1) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "jojoba-simm5.0", 0x00000, 0x200000, CRC(2ef8c60c) SHA1(dea87a73a11b8edd27c3c9c5ab2af295cb5508f9) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "jojoba-simm5.1", 0x00000, 0x200000, CRC(cf7d7ca6) SHA1(b347707b1e5bc71d28b282273f893592e5f9e333) ) \ - ROM_REGION( 0x200000, "simm5.2", 0 ) ROM_LOAD( "jojoba-simm5.2", 0x00000, 0x200000, CRC(b7815bfa) SHA1(0b5a3a2ffe1b3c0ca765dcedc297e78e5928302b) ) \ - ROM_REGION( 0x200000, "simm5.3", 0 ) ROM_LOAD( "jojoba-simm5.3", 0x00000, 0x200000, CRC(9bfec049) SHA1(62cc9a1920047863205544b77344ee18f310f084) ) \ - ROM_REGION( 0x200000, "simm5.4", 0 ) ROM_LOAD( "jojoba-simm5.4", 0x00000, 0x200000, CRC(d167536b) SHA1(e2637d3486f168ce44e0a00413d38960cb86db4c) ) \ - ROM_REGION( 0x200000, "simm5.5", 0 ) ROM_LOAD( "jojoba-simm5.5", 0x00000, 0x200000, CRC(55e7a042) SHA1(c18bda61fa005d9174a27b7b7d324004262a4525) ) \ - ROM_REGION( 0x200000, "simm5.6", 0 ) ROM_LOAD( "jojoba-simm5.6", 0x00000, 0x200000, CRC(4fb32906) SHA1(3a5965b3197517932c8aa4c07a6ea6a190a338d7) ) \ - ROM_REGION( 0x200000, "simm5.7", 0 ) ROM_LOAD( "jojoba-simm5.7", 0x00000, 0x200000, CRC(8c8be520) SHA1(c461f3f76a83592b36b29afb316679a7c8972404) ) \ +#define JOJOBA_990927_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "jojoba(__990927)-simm1.0", 0x00000, 0x200000, CRC(adcd8377) SHA1(f1aacbe061e3bcade5cca34435c3f86aec5f1499), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "jojoba(__990927)-simm1.1", 0x00000, 0x200000, CRC(d7590b59) SHA1(bfee627ebb7cb7b28216527b17e1b06a4e6f19f4), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "jojoba(__990927)-simm1.2", 0x00000, 0x200000, CRC(e62e240b) SHA1(70468cae67c009a80b45954c2a30794577343c77), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "jojoba(__990927)-simm1.3", 0x00000, 0x200000, CRC(c95450c3) SHA1(55616e009b007180d1ac6290c8da44b0d864a494), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "jojoba(__990927)-simm2.0", 0x00000, 0x200000, CRC(535f2eba) SHA1(167bec0dccfc2f91cb10cb1e2631ee619b3eb9fe), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "jojoba(__990927)-simm2.1", 0x00000, 0x200000, CRC(01dd3a01) SHA1(08c462219796baa3ec28d78d038a18187cd838bb), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "jojoba(__990927)-simm2.2", 0x00000, 0x200000, CRC(61432672) SHA1(d0416a75d395926041f90a3d34edb96a080acfd6), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "jojoba(__990927)-simm2.3", 0x00000, 0x200000, CRC(acdc9aca) SHA1(89f77ddd6286709182a676fd9bd6c333a3b16271), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "jojoba-simm3.0", 0x00000, 0x200000, CRC(4d16e111) SHA1(f198007375be65e89856d64ee2b3857a18b4eab8), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "jojoba-simm3.1", 0x00000, 0x200000, CRC(9b3406d3) SHA1(54e90cd334d13e2c74305c6b87ebce1365ef3d59), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "jojoba-simm3.2", 0x00000, 0x200000, CRC(f2414997) SHA1(fb89d5784250538ad17fd527267b513afb6eca20), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "jojoba-simm3.3", 0x00000, 0x200000, CRC(954b9c7d) SHA1(0d64d97167d4e669d7e4f3a388f9d5ec1e18ed42), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "jojoba-simm3.4", 0x00000, 0x200000, CRC(625adc1d) SHA1(533d62759ecece10c711d99bfca403e5cba279b5), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "jojoba-simm3.5", 0x00000, 0x200000, CRC(20a70bb4) SHA1(3bd8376304ffc974fb8031eac8bebff27969538c), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "jojoba-simm3.6", 0x00000, 0x200000, CRC(a10ec5af) SHA1(9b403260e8fbdacaa5369ab79fc05855cc6a6bdb), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "jojoba-simm3.7", 0x00000, 0x200000, CRC(0bd0de7a) SHA1(1debecda5f282f2a1dd17e887e522a4d00c5dc9d), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "jojoba-simm4.0", 0x00000, 0x200000, CRC(6ea14adc) SHA1(696b2ec66f3c197817a60f507a1b4c78db37f488), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "jojoba-simm4.1", 0x00000, 0x200000, CRC(8f4c42fb) SHA1(363d769b0b066ce139125426d2da6dfa15d1eb28), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "jojoba-simm4.2", 0x00000, 0x200000, CRC(ef0586d1) SHA1(8fcc350da20e3e59fa76fa14e10f2c47233ba9dc), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "jojoba-simm4.3", 0x00000, 0x200000, CRC(93ccc470) SHA1(5d267679e61c0fb592ad5f696d3c06ec1746d0b3), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "jojoba-simm4.4", 0x00000, 0x200000, CRC(3d9ec7d2) SHA1(665b867bab928be183c2006527e55f9b8ec4a271), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "jojoba-simm4.5", 0x00000, 0x200000, CRC(03e66850) SHA1(8478662dc9db20d9a186d315a883bd1cbb5e5000), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "jojoba-simm4.6", 0x00000, 0x200000, CRC(01606ac3) SHA1(ccc74edeca6abdd86fc1cf42ececa1ea393b3261), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "jojoba-simm4.7", 0x00000, 0x200000, CRC(36392b87) SHA1(e62080c8461775c1e180400dfb44414679fd0fc1), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "jojoba-simm5.0", 0x00000, 0x200000, CRC(2ef8c60c) SHA1(dea87a73a11b8edd27c3c9c5ab2af295cb5508f9), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "jojoba-simm5.1", 0x00000, 0x200000, CRC(cf7d7ca6) SHA1(b347707b1e5bc71d28b282273f893592e5f9e333), flags ) \ + ROM_REGION( 0x200000, "simm5.2", 0 ) ROMX_LOAD( "jojoba-simm5.2", 0x00000, 0x200000, CRC(b7815bfa) SHA1(0b5a3a2ffe1b3c0ca765dcedc297e78e5928302b), flags ) \ + ROM_REGION( 0x200000, "simm5.3", 0 ) ROMX_LOAD( "jojoba-simm5.3", 0x00000, 0x200000, CRC(9bfec049) SHA1(62cc9a1920047863205544b77344ee18f310f084), flags ) \ + ROM_REGION( 0x200000, "simm5.4", 0 ) ROMX_LOAD( "jojoba-simm5.4", 0x00000, 0x200000, CRC(d167536b) SHA1(e2637d3486f168ce44e0a00413d38960cb86db4c), flags ) \ + ROM_REGION( 0x200000, "simm5.5", 0 ) ROMX_LOAD( "jojoba-simm5.5", 0x00000, 0x200000, CRC(55e7a042) SHA1(c18bda61fa005d9174a27b7b7d324004262a4525), flags ) \ + ROM_REGION( 0x200000, "simm5.6", 0 ) ROMX_LOAD( "jojoba-simm5.6", 0x00000, 0x200000, CRC(4fb32906) SHA1(3a5965b3197517932c8aa4c07a6ea6a190a338d7), flags ) \ + ROM_REGION( 0x200000, "simm5.7", 0 ) ROMX_LOAD( "jojoba-simm5.7", 0x00000, 0x200000, CRC(8c8be520) SHA1(c461f3f76a83592b36b29afb316679a7c8972404), flags ) \ #define JOJOBA_990927_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-jjm-1", 0, SHA1(8628d3fa555fbd5f4121082e925c1834b76c5e65) ) \ -#define JOJOBA_990913_FLASH \ - ROM_REGION( 0x200000, "simm1.0", 0 ) ROM_LOAD( "jojoba(__990913)-simm1.0", 0x00000, 0x200000, CRC(76976231) SHA1(90adde7e5983ec6a4e02789d5cefe9e85c9c52d5) ) \ - ROM_REGION( 0x200000, "simm1.1", 0 ) ROM_LOAD( "jojoba(__990913)-simm1.1", 0x00000, 0x200000, CRC(cedd78e7) SHA1(964988b90a2f14c1da2cfc48d943e16e54da3fd3) ) \ - ROM_REGION( 0x200000, "simm1.2", 0 ) ROM_LOAD( "jojoba(__990913)-simm1.2", 0x00000, 0x200000, CRC(2955b77f) SHA1(2a907a5cd91448bfc420c318584e5ef4bbe55a91) ) \ - ROM_REGION( 0x200000, "simm1.3", 0 ) ROM_LOAD( "jojoba(__990913)-simm1.3", 0x00000, 0x200000, CRC(280139d7) SHA1(b7c28f6f0218688fb873a3106d2f95ea2e1e927c) ) \ - ROM_REGION( 0x200000, "simm2.0", 0 ) ROM_LOAD( "jojoba(__990913)-simm2.0", 0x00000, 0x200000, CRC(305c4914) SHA1(c3a73ffe58f61ab8f1cd9e3f0891037638dc5a9b) ) \ - ROM_REGION( 0x200000, "simm2.1", 0 ) ROM_LOAD( "jojoba(__990913)-simm2.1", 0x00000, 0x200000, CRC(18af4f3b) SHA1(04b8fdf23a782b10c203b111cc634a6d3474044a) ) \ - ROM_REGION( 0x200000, "simm2.2", 0 ) ROM_LOAD( "jojoba(__990913)-simm2.2", 0x00000, 0x200000, CRC(397e5c9e) SHA1(021d86ee66bf951fb6a1dd90fb7007c6865cbb8b) ) \ - ROM_REGION( 0x200000, "simm2.3", 0 ) ROM_LOAD( "jojoba(__990913)-simm2.3", 0x00000, 0x200000, CRC(a9d0a7d7) SHA1(b2cfc0661f8903ddbeea8a604ee8b42097e10ab8) ) \ - ROM_REGION( 0x200000, "simm3.0", 0 ) ROM_LOAD( "jojoba-simm3.0", 0x00000, 0x200000, CRC(4d16e111) SHA1(f198007375be65e89856d64ee2b3857a18b4eab8) ) \ - ROM_REGION( 0x200000, "simm3.1", 0 ) ROM_LOAD( "jojoba-simm3.1", 0x00000, 0x200000, CRC(9b3406d3) SHA1(54e90cd334d13e2c74305c6b87ebce1365ef3d59) ) \ - ROM_REGION( 0x200000, "simm3.2", 0 ) ROM_LOAD( "jojoba-simm3.2", 0x00000, 0x200000, CRC(f2414997) SHA1(fb89d5784250538ad17fd527267b513afb6eca20) ) \ - ROM_REGION( 0x200000, "simm3.3", 0 ) ROM_LOAD( "jojoba-simm3.3", 0x00000, 0x200000, CRC(954b9c7d) SHA1(0d64d97167d4e669d7e4f3a388f9d5ec1e18ed42) ) \ - ROM_REGION( 0x200000, "simm3.4", 0 ) ROM_LOAD( "jojoba-simm3.4", 0x00000, 0x200000, CRC(625adc1d) SHA1(533d62759ecece10c711d99bfca403e5cba279b5) ) \ - ROM_REGION( 0x200000, "simm3.5", 0 ) ROM_LOAD( "jojoba-simm3.5", 0x00000, 0x200000, CRC(20a70bb4) SHA1(3bd8376304ffc974fb8031eac8bebff27969538c) ) \ - ROM_REGION( 0x200000, "simm3.6", 0 ) ROM_LOAD( "jojoba-simm3.6", 0x00000, 0x200000, CRC(a10ec5af) SHA1(9b403260e8fbdacaa5369ab79fc05855cc6a6bdb) ) \ - ROM_REGION( 0x200000, "simm3.7", 0 ) ROM_LOAD( "jojoba-simm3.7", 0x00000, 0x200000, CRC(0bd0de7a) SHA1(1debecda5f282f2a1dd17e887e522a4d00c5dc9d) ) \ - ROM_REGION( 0x200000, "simm4.0", 0 ) ROM_LOAD( "jojoba-simm4.0", 0x00000, 0x200000, CRC(6ea14adc) SHA1(696b2ec66f3c197817a60f507a1b4c78db37f488) ) \ - ROM_REGION( 0x200000, "simm4.1", 0 ) ROM_LOAD( "jojoba-simm4.1", 0x00000, 0x200000, CRC(8f4c42fb) SHA1(363d769b0b066ce139125426d2da6dfa15d1eb28) ) \ - ROM_REGION( 0x200000, "simm4.2", 0 ) ROM_LOAD( "jojoba-simm4.2", 0x00000, 0x200000, CRC(ef0586d1) SHA1(8fcc350da20e3e59fa76fa14e10f2c47233ba9dc) ) \ - ROM_REGION( 0x200000, "simm4.3", 0 ) ROM_LOAD( "jojoba-simm4.3", 0x00000, 0x200000, CRC(93ccc470) SHA1(5d267679e61c0fb592ad5f696d3c06ec1746d0b3) ) \ - ROM_REGION( 0x200000, "simm4.4", 0 ) ROM_LOAD( "jojoba-simm4.4", 0x00000, 0x200000, CRC(3d9ec7d2) SHA1(665b867bab928be183c2006527e55f9b8ec4a271) ) \ - ROM_REGION( 0x200000, "simm4.5", 0 ) ROM_LOAD( "jojoba-simm4.5", 0x00000, 0x200000, CRC(03e66850) SHA1(8478662dc9db20d9a186d315a883bd1cbb5e5000) ) \ - ROM_REGION( 0x200000, "simm4.6", 0 ) ROM_LOAD( "jojoba-simm4.6", 0x00000, 0x200000, CRC(01606ac3) SHA1(ccc74edeca6abdd86fc1cf42ececa1ea393b3261) ) \ - ROM_REGION( 0x200000, "simm4.7", 0 ) ROM_LOAD( "jojoba-simm4.7", 0x00000, 0x200000, CRC(36392b87) SHA1(e62080c8461775c1e180400dfb44414679fd0fc1) ) \ - ROM_REGION( 0x200000, "simm5.0", 0 ) ROM_LOAD( "jojoba-simm5.0", 0x00000, 0x200000, CRC(2ef8c60c) SHA1(dea87a73a11b8edd27c3c9c5ab2af295cb5508f9) ) \ - ROM_REGION( 0x200000, "simm5.1", 0 ) ROM_LOAD( "jojoba-simm5.1", 0x00000, 0x200000, CRC(cf7d7ca6) SHA1(b347707b1e5bc71d28b282273f893592e5f9e333) ) \ - ROM_REGION( 0x200000, "simm5.2", 0 ) ROM_LOAD( "jojoba-simm5.2", 0x00000, 0x200000, CRC(b7815bfa) SHA1(0b5a3a2ffe1b3c0ca765dcedc297e78e5928302b) ) \ - ROM_REGION( 0x200000, "simm5.3", 0 ) ROM_LOAD( "jojoba-simm5.3", 0x00000, 0x200000, CRC(9bfec049) SHA1(62cc9a1920047863205544b77344ee18f310f084) ) \ - ROM_REGION( 0x200000, "simm5.4", 0 ) ROM_LOAD( "jojoba-simm5.4", 0x00000, 0x200000, CRC(d167536b) SHA1(e2637d3486f168ce44e0a00413d38960cb86db4c) ) \ - ROM_REGION( 0x200000, "simm5.5", 0 ) ROM_LOAD( "jojoba-simm5.5", 0x00000, 0x200000, CRC(55e7a042) SHA1(c18bda61fa005d9174a27b7b7d324004262a4525) ) \ - ROM_REGION( 0x200000, "simm5.6", 0 ) ROM_LOAD( "jojoba-simm5.6", 0x00000, 0x200000, CRC(4fb32906) SHA1(3a5965b3197517932c8aa4c07a6ea6a190a338d7) ) \ - ROM_REGION( 0x200000, "simm5.7", 0 ) ROM_LOAD( "jojoba-simm5.7", 0x00000, 0x200000, CRC(8c8be520) SHA1(c461f3f76a83592b36b29afb316679a7c8972404) ) \ +#define JOJOBA_990913_FLASH( flags ) \ + ROM_REGION( 0x200000, "simm1.0", 0 ) ROMX_LOAD( "jojoba(__990913)-simm1.0", 0x00000, 0x200000, CRC(76976231) SHA1(90adde7e5983ec6a4e02789d5cefe9e85c9c52d5), flags ) \ + ROM_REGION( 0x200000, "simm1.1", 0 ) ROMX_LOAD( "jojoba(__990913)-simm1.1", 0x00000, 0x200000, CRC(cedd78e7) SHA1(964988b90a2f14c1da2cfc48d943e16e54da3fd3), flags ) \ + ROM_REGION( 0x200000, "simm1.2", 0 ) ROMX_LOAD( "jojoba(__990913)-simm1.2", 0x00000, 0x200000, CRC(2955b77f) SHA1(2a907a5cd91448bfc420c318584e5ef4bbe55a91), flags ) \ + ROM_REGION( 0x200000, "simm1.3", 0 ) ROMX_LOAD( "jojoba(__990913)-simm1.3", 0x00000, 0x200000, CRC(280139d7) SHA1(b7c28f6f0218688fb873a3106d2f95ea2e1e927c), flags ) \ + ROM_REGION( 0x200000, "simm2.0", 0 ) ROMX_LOAD( "jojoba(__990913)-simm2.0", 0x00000, 0x200000, CRC(305c4914) SHA1(c3a73ffe58f61ab8f1cd9e3f0891037638dc5a9b), flags ) \ + ROM_REGION( 0x200000, "simm2.1", 0 ) ROMX_LOAD( "jojoba(__990913)-simm2.1", 0x00000, 0x200000, CRC(18af4f3b) SHA1(04b8fdf23a782b10c203b111cc634a6d3474044a), flags ) \ + ROM_REGION( 0x200000, "simm2.2", 0 ) ROMX_LOAD( "jojoba(__990913)-simm2.2", 0x00000, 0x200000, CRC(397e5c9e) SHA1(021d86ee66bf951fb6a1dd90fb7007c6865cbb8b), flags ) \ + ROM_REGION( 0x200000, "simm2.3", 0 ) ROMX_LOAD( "jojoba(__990913)-simm2.3", 0x00000, 0x200000, CRC(a9d0a7d7) SHA1(b2cfc0661f8903ddbeea8a604ee8b42097e10ab8), flags ) \ + ROM_REGION( 0x200000, "simm3.0", 0 ) ROMX_LOAD( "jojoba-simm3.0", 0x00000, 0x200000, CRC(4d16e111) SHA1(f198007375be65e89856d64ee2b3857a18b4eab8), flags ) \ + ROM_REGION( 0x200000, "simm3.1", 0 ) ROMX_LOAD( "jojoba-simm3.1", 0x00000, 0x200000, CRC(9b3406d3) SHA1(54e90cd334d13e2c74305c6b87ebce1365ef3d59), flags ) \ + ROM_REGION( 0x200000, "simm3.2", 0 ) ROMX_LOAD( "jojoba-simm3.2", 0x00000, 0x200000, CRC(f2414997) SHA1(fb89d5784250538ad17fd527267b513afb6eca20), flags ) \ + ROM_REGION( 0x200000, "simm3.3", 0 ) ROMX_LOAD( "jojoba-simm3.3", 0x00000, 0x200000, CRC(954b9c7d) SHA1(0d64d97167d4e669d7e4f3a388f9d5ec1e18ed42), flags ) \ + ROM_REGION( 0x200000, "simm3.4", 0 ) ROMX_LOAD( "jojoba-simm3.4", 0x00000, 0x200000, CRC(625adc1d) SHA1(533d62759ecece10c711d99bfca403e5cba279b5), flags ) \ + ROM_REGION( 0x200000, "simm3.5", 0 ) ROMX_LOAD( "jojoba-simm3.5", 0x00000, 0x200000, CRC(20a70bb4) SHA1(3bd8376304ffc974fb8031eac8bebff27969538c), flags ) \ + ROM_REGION( 0x200000, "simm3.6", 0 ) ROMX_LOAD( "jojoba-simm3.6", 0x00000, 0x200000, CRC(a10ec5af) SHA1(9b403260e8fbdacaa5369ab79fc05855cc6a6bdb), flags ) \ + ROM_REGION( 0x200000, "simm3.7", 0 ) ROMX_LOAD( "jojoba-simm3.7", 0x00000, 0x200000, CRC(0bd0de7a) SHA1(1debecda5f282f2a1dd17e887e522a4d00c5dc9d), flags ) \ + ROM_REGION( 0x200000, "simm4.0", 0 ) ROMX_LOAD( "jojoba-simm4.0", 0x00000, 0x200000, CRC(6ea14adc) SHA1(696b2ec66f3c197817a60f507a1b4c78db37f488), flags ) \ + ROM_REGION( 0x200000, "simm4.1", 0 ) ROMX_LOAD( "jojoba-simm4.1", 0x00000, 0x200000, CRC(8f4c42fb) SHA1(363d769b0b066ce139125426d2da6dfa15d1eb28), flags ) \ + ROM_REGION( 0x200000, "simm4.2", 0 ) ROMX_LOAD( "jojoba-simm4.2", 0x00000, 0x200000, CRC(ef0586d1) SHA1(8fcc350da20e3e59fa76fa14e10f2c47233ba9dc), flags ) \ + ROM_REGION( 0x200000, "simm4.3", 0 ) ROMX_LOAD( "jojoba-simm4.3", 0x00000, 0x200000, CRC(93ccc470) SHA1(5d267679e61c0fb592ad5f696d3c06ec1746d0b3), flags ) \ + ROM_REGION( 0x200000, "simm4.4", 0 ) ROMX_LOAD( "jojoba-simm4.4", 0x00000, 0x200000, CRC(3d9ec7d2) SHA1(665b867bab928be183c2006527e55f9b8ec4a271), flags ) \ + ROM_REGION( 0x200000, "simm4.5", 0 ) ROMX_LOAD( "jojoba-simm4.5", 0x00000, 0x200000, CRC(03e66850) SHA1(8478662dc9db20d9a186d315a883bd1cbb5e5000), flags ) \ + ROM_REGION( 0x200000, "simm4.6", 0 ) ROMX_LOAD( "jojoba-simm4.6", 0x00000, 0x200000, CRC(01606ac3) SHA1(ccc74edeca6abdd86fc1cf42ececa1ea393b3261), flags ) \ + ROM_REGION( 0x200000, "simm4.7", 0 ) ROMX_LOAD( "jojoba-simm4.7", 0x00000, 0x200000, CRC(36392b87) SHA1(e62080c8461775c1e180400dfb44414679fd0fc1), flags ) \ + ROM_REGION( 0x200000, "simm5.0", 0 ) ROMX_LOAD( "jojoba-simm5.0", 0x00000, 0x200000, CRC(2ef8c60c) SHA1(dea87a73a11b8edd27c3c9c5ab2af295cb5508f9), flags ) \ + ROM_REGION( 0x200000, "simm5.1", 0 ) ROMX_LOAD( "jojoba-simm5.1", 0x00000, 0x200000, CRC(cf7d7ca6) SHA1(b347707b1e5bc71d28b282273f893592e5f9e333), flags ) \ + ROM_REGION( 0x200000, "simm5.2", 0 ) ROMX_LOAD( "jojoba-simm5.2", 0x00000, 0x200000, CRC(b7815bfa) SHA1(0b5a3a2ffe1b3c0ca765dcedc297e78e5928302b), flags ) \ + ROM_REGION( 0x200000, "simm5.3", 0 ) ROMX_LOAD( "jojoba-simm5.3", 0x00000, 0x200000, CRC(9bfec049) SHA1(62cc9a1920047863205544b77344ee18f310f084), flags ) \ + ROM_REGION( 0x200000, "simm5.4", 0 ) ROMX_LOAD( "jojoba-simm5.4", 0x00000, 0x200000, CRC(d167536b) SHA1(e2637d3486f168ce44e0a00413d38960cb86db4c), flags ) \ + ROM_REGION( 0x200000, "simm5.5", 0 ) ROMX_LOAD( "jojoba-simm5.5", 0x00000, 0x200000, CRC(55e7a042) SHA1(c18bda61fa005d9174a27b7b7d324004262a4525), flags ) \ + ROM_REGION( 0x200000, "simm5.6", 0 ) ROMX_LOAD( "jojoba-simm5.6", 0x00000, 0x200000, CRC(4fb32906) SHA1(3a5965b3197517932c8aa4c07a6ea6a190a338d7), flags ) \ + ROM_REGION( 0x200000, "simm5.7", 0 ) ROMX_LOAD( "jojoba-simm5.7", 0x00000, 0x200000, CRC(8c8be520) SHA1(c461f3f76a83592b36b29afb316679a7c8972404), flags ) \ #define JOJOBA_990913_CDROM \ DISK_REGION( "cdrom" ) DISK_IMAGE_READONLY( "cap-jjm-0", 0, BAD_DUMP SHA1(0678a0baeb853dcff1d230c14f0873cc9f143d7b) ) \ @@ -3009,7 +2974,7 @@ ROM_START( redearth ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "redearth_euro.29f400.u2", 0x000000, 0x080000, CRC(02e0f336) SHA1(acc37e830dfeb9674f5a0fb24f4cc23217ae4ff5) ) - REDEARTH_961121_FLASH + REDEARTH_961121_FLASH( ROM_OPTIONAL ) REDEARTH_961121_CDROM ROM_END @@ -3017,7 +2982,7 @@ ROM_START( redearthr1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "redearth_euro.29f400.u2", 0x000000, 0x080000, CRC(02e0f336) SHA1(acc37e830dfeb9674f5a0fb24f4cc23217ae4ff5) ) - REDEARTH_961023_FLASH + REDEARTH_961023_FLASH( ROM_OPTIONAL ) REDEARTH_961023_CDROM ROM_END @@ -3025,7 +2990,7 @@ ROM_START( warzard ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "warzard_japan.29f400.u2", 0x000000, 0x080000, CRC(f8e2f0c6) SHA1(93d6a986f44c211fff014e55681eca4d2a2774d6) ) - REDEARTH_961121_FLASH + REDEARTH_961121_FLASH( ROM_OPTIONAL ) REDEARTH_961121_CDROM ROM_END @@ -3033,7 +2998,7 @@ ROM_START( warzardr1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "warzard_japan.29f400.u2", 0x000000, 0x080000, CRC(f8e2f0c6) SHA1(93d6a986f44c211fff014e55681eca4d2a2774d6) ) - REDEARTH_961023_FLASH + REDEARTH_961023_FLASH( ROM_OPTIONAL ) REDEARTH_961023_CDROM ROM_END @@ -3041,7 +3006,7 @@ ROM_START( sfiii ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii_usa.29f400.u2", 0x000000, 0x080000, CRC(fb172a8e) SHA1(48ebf59910f246835f7dc0c588da30f7a908072f) ) - SFIII_970204_FLASH + SFIII_970204_FLASH( ROM_OPTIONAL ) SFIII_970204_CDROM ROM_END @@ -3049,7 +3014,7 @@ ROM_START( sfiiij ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii_japan.29f400.u2", 0x000000, 0x080000, CRC(74205250) SHA1(c3e83ace7121d32da729162662ec6b5285a31211) ) - SFIII_970204_FLASH + SFIII_970204_FLASH( ROM_OPTIONAL ) SFIII_970204_CDROM ROM_END @@ -3057,7 +3022,7 @@ ROM_START( sfiiih ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii_hispanic.29f400.u2", 0x000000, 0x080000, CRC(d2b3cd48) SHA1(00ebb270c24a66515c97e35331de54ff5358000e) ) - SFIII_970204_FLASH + SFIII_970204_FLASH( ROM_OPTIONAL ) SFIII_970204_CDROM ROM_END @@ -3065,7 +3030,7 @@ ROM_START( sfiii2 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii2_usa.29f400.u2", 0x000000, 0x080000, CRC(75dd72e0) SHA1(5a12d6ea6734df5de00ecee6f9ef470749d2f242) ) - SFIII2_970930_FLASH + SFIII2_970930_FLASH( ROM_OPTIONAL ) SFIII2_970930_CDROM ROM_END @@ -3073,7 +3038,7 @@ ROM_START( sfiii2j ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii2_japan.29f400.u2", 0x000000, 0x080000, CRC(faea0a3e) SHA1(a03cd63bcf52e4d57f7a598c8bc8e243694624ec) ) - SFIII2_970930_FLASH + SFIII2_970930_FLASH( ROM_OPTIONAL ) SFIII2_970930_CDROM ROM_END @@ -3081,7 +3046,7 @@ ROM_START( jojo ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_usa.29f400.u2", 0x000000, 0x080000, CRC(8d40f7be) SHA1(2a4bd83db2f959c33b071e517941aa55a0f919c0) ) - JOJO_990128_FLASH + JOJO_990128_FLASH( ROM_OPTIONAL ) JOJO_990128_CDROM ROM_END @@ -3089,7 +3054,7 @@ ROM_START( jojor1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_usa.29f400.u2", 0x000000, 0x080000, CRC(8d40f7be) SHA1(2a4bd83db2f959c33b071e517941aa55a0f919c0) ) - JOJO_990108_FLASH + JOJO_990108_FLASH( ROM_OPTIONAL ) JOJO_990108_CDROM ROM_END @@ -3097,7 +3062,7 @@ ROM_START( jojor2 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_usa.29f400.u2", 0x000000, 0x080000, CRC(8d40f7be) SHA1(2a4bd83db2f959c33b071e517941aa55a0f919c0) ) - JOJO_981202_FLASH + JOJO_981202_FLASH( ROM_OPTIONAL ) JOJO_981202_CDROM ROM_END @@ -3105,7 +3070,7 @@ ROM_START( jojoj ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_japan.29f400.u2", 0x000000, 0x080000, CRC(02778f60) SHA1(a167f9ebe030592a0cdb0c6a3c75835c6a43be4c) ) - JOJO_990128_FLASH + JOJO_990128_FLASH( ROM_OPTIONAL ) JOJO_990128_CDROM ROM_END @@ -3113,7 +3078,7 @@ ROM_START( jojojr1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_japan.29f400.u2", 0x000000, 0x080000, CRC(02778f60) SHA1(a167f9ebe030592a0cdb0c6a3c75835c6a43be4c) ) - JOJO_990108_FLASH + JOJO_990108_FLASH( ROM_OPTIONAL ) JOJO_990108_CDROM ROM_END @@ -3121,7 +3086,7 @@ ROM_START( jojojr2 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_japan.29f400.u2", 0x000000, 0x080000, CRC(02778f60) SHA1(a167f9ebe030592a0cdb0c6a3c75835c6a43be4c) ) - JOJO_981202_FLASH + JOJO_981202_FLASH( ROM_OPTIONAL ) JOJO_981202_CDROM ROM_END @@ -3129,7 +3094,7 @@ ROM_START( sfiii3 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii3_euro.29f400.u2", 0x000000, 0x080000, CRC(30bbf293) SHA1(f094c2eeaf4f6709060197aca371a4532346bf78) ) - SFIII3_990608_FLASH + SFIII3_990608_FLASH( ROM_OPTIONAL ) SFIII3_990608_CDROM ROM_END @@ -3137,7 +3102,7 @@ ROM_START( sfiii3r1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii3_euro.29f400.u2", 0x000000, 0x080000, CRC(30bbf293) SHA1(f094c2eeaf4f6709060197aca371a4532346bf78) ) - SFIII3_990512_FLASH + SFIII3_990512_FLASH( ROM_OPTIONAL ) SFIII3_990512_CDROM ROM_END @@ -3145,7 +3110,7 @@ ROM_START( sfiii3u ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii3_usa.29f400.u2", 0x000000, 0x080000, CRC(ecc545c1) SHA1(e39083820aae914fd8b80c9765129bedb745ceba) ) - SFIII3_990608_FLASH + SFIII3_990608_FLASH( ROM_OPTIONAL ) SFIII3_990608_CDROM ROM_END @@ -3153,7 +3118,7 @@ ROM_START( sfiii3ur1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii3_usa.29f400.u2", 0x000000, 0x080000, CRC(ecc545c1) SHA1(e39083820aae914fd8b80c9765129bedb745ceba) ) - SFIII3_990512_FLASH + SFIII3_990512_FLASH( ROM_OPTIONAL ) SFIII3_990512_CDROM ROM_END @@ -3161,7 +3126,7 @@ ROM_START( jojoba ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojoba_japan.29f400.u2", 0x000000, 0x080000, CRC(3085478c) SHA1(055eab1fc42816f370a44b17fd7e87ffcb10e8b7) ) - JOJOBA_990927_FLASH + JOJOBA_990927_FLASH( ROM_OPTIONAL ) JOJOBA_990927_CDROM ROM_END @@ -3169,7 +3134,7 @@ ROM_START( jojobar1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojoba_japan.29f400.u2", 0x000000, 0x080000, CRC(3085478c) SHA1(055eab1fc42816f370a44b17fd7e87ffcb10e8b7) ) - JOJOBA_990913_FLASH + JOJOBA_990913_FLASH( ROM_OPTIONAL ) JOJOBA_990913_CDROM ROM_END @@ -3180,77 +3145,77 @@ ROM_START( sfiiin ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii_asia_nocd.29f400.u2", 0x000000, 0x080000, CRC(73e32463) SHA1(45d144e533e4b20cc5a744ca4f618e288430c601) ) - SFIII_970204_FLASH + SFIII_970204_FLASH( 0 ) ROM_END ROM_START( sfiii2n ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii2_asia_nocd.29f400.u2", 0x000000, 0x080000, CRC(fd297c0d) SHA1(4323deda2789f104b53f32a663196ec16de73215) ) - SFIII2_970930_FLASH + SFIII2_970930_FLASH( 0 ) ROM_END ROM_START( jojon ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_asia_nocd.29f400.u2", 0x000000, 0x080000, CRC(05b4f953) SHA1(c746c7bb5359acc9adced817cb4870b1912eaefd) ) - JOJO_990128_FLASH + JOJO_990128_FLASH( 0 ) ROM_END ROM_START( jojonr1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_asia_nocd.29f400.u2", 0x000000, 0x080000, CRC(05b4f953) SHA1(c746c7bb5359acc9adced817cb4870b1912eaefd) ) - JOJO_990108_FLASH + JOJO_990108_FLASH( 0 ) ROM_END ROM_START( jojonr2 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojo_asia_nocd.29f400.u2", 0x000000, 0x080000, CRC(05b4f953) SHA1(c746c7bb5359acc9adced817cb4870b1912eaefd) ) - JOJO_981202_FLASH + JOJO_981202_FLASH( 0 ) ROM_END ROM_START( sfiii3n ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii3_japan_nocd.29f400.u2", 0x000000, 0x080000, CRC(1edc6366) SHA1(60b4b9adeb030a33059d74fdf03873029e465b52) ) - SFIII3_990608_FLASH + SFIII3_990608_FLASH( 0 ) ROM_END ROM_START( sfiii3nr1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "sfiii3_japan_nocd.29f400.u2", 0x000000, 0x080000, CRC(1edc6366) SHA1(60b4b9adeb030a33059d74fdf03873029e465b52) ) - SFIII3_990512_FLASH + SFIII3_990512_FLASH( 0 ) ROM_END ROM_START( jojoban ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojoba_japan_nocd.29f400.u2", 0x000000, 0x080000, CRC(4dab19f5) SHA1(ba07190e7662937fc267f07285c51e99a45c061e) ) - JOJOBA_990927_FLASH + JOJOBA_990927_FLASH( 0 ) ROM_END ROM_START( jojobanr1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojoba_japan_nocd.29f400.u2", 0x000000, 0x080000, CRC(4dab19f5) SHA1(ba07190e7662937fc267f07285c51e99a45c061e) ) - JOJOBA_990913_FLASH + JOJOBA_990913_FLASH( 0 ) ROM_END ROM_START( jojobane ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojoba_euro_nocd.29f400.u2", 0x000000, 0x080000, CRC(1ee2d679) SHA1(9e129b454a376606b3f7e8aec64de425cf9c635c) ) - JOJOBA_990927_FLASH + JOJOBA_990927_FLASH( 0 ) ROM_END ROM_START( jojobaner1 ) ROM_REGION32_BE( 0x080000, "user1", 0 ) /* bios region */ ROM_LOAD( "jojoba_euro_nocd.29f400.u2", 0x000000, 0x080000, CRC(1ee2d679) SHA1(9e129b454a376606b3f7e8aec64de425cf9c635c) ) - JOJOBA_990913_FLASH + JOJOBA_990913_FLASH( 0 ) ROM_END diff --git a/src/mame/includes/cps3.h b/src/mame/includes/cps3.h index 1ab7f49c953..9381f85b3ac 100644 --- a/src/mame/includes/cps3.h +++ b/src/mame/includes/cps3.h @@ -87,8 +87,6 @@ public: DECLARE_READ32_MEMBER(cps3_40C0004_r); DECLARE_READ32_MEMBER(cps3_eeprom_r); DECLARE_WRITE32_MEMBER(cps3_eeprom_w); - DECLARE_READ32_MEMBER(cps3_cdrom_r); - DECLARE_WRITE32_MEMBER(cps3_cdrom_w); DECLARE_WRITE32_MEMBER(cps3_ss_bank_base_w); DECLARE_WRITE32_MEMBER(cps3_ss_pal_base_w); DECLARE_WRITE32_MEMBER(cps3_palettedma_w); diff --git a/src/mess/drivers/ip20.c b/src/mess/drivers/ip20.c index 7734f3bfe84..58e2f0f87b4 100644 --- a/src/mess/drivers/ip20.c +++ b/src/mess/drivers/ip20.c @@ -49,7 +49,10 @@ class ip20_state : public driver_device { public: ip20_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag) { } + : driver_device(mconfig, type, tag), + m_wd33c93(*this, "wd33c93"){ } + + required_device m_wd33c93; HPC_t m_HPC; RTC_t m_RTC; @@ -131,7 +134,7 @@ READ32_MEMBER(ip20_state::hpc_r) case 0x0120: if (ACCESSING_BITS_8_15) { - return ( wd33c93_r( &space, 0 ) << 8 ); + return ( m_wd33c93->read( space, 0 ) << 8 ); } else { @@ -140,7 +143,7 @@ READ32_MEMBER(ip20_state::hpc_r) case 0x0124: if (ACCESSING_BITS_8_15) { - return ( wd33c93_r( &space, 1 ) << 8 ); + return ( m_wd33c93->read( space, 1 ) << 8 ); } else { @@ -288,7 +291,7 @@ WRITE32_MEMBER(ip20_state::hpc_w) if (ACCESSING_BITS_8_15) { verboselog(machine(), 2, "HPC SCSI Controller Register Write: %08x\n", ( data >> 8 ) & 0x000000ff ); - wd33c93_w( &space, 0, ( data >> 8 ) & 0x000000ff ); + m_wd33c93->write( space, 0, ( data >> 8 ) & 0x000000ff ); } else { @@ -299,7 +302,7 @@ WRITE32_MEMBER(ip20_state::hpc_w) if (ACCESSING_BITS_8_15) { verboselog(machine(), 2, "HPC SCSI Controller Data Write: %08x\n", ( data >> 8 ) & 0x000000ff ); - wd33c93_w( &space, 1, ( data >> 8 ) & 0x000000ff ); + m_wd33c93->write( space, 1, ( data >> 8 ) & 0x000000ff ); } else { @@ -562,8 +565,6 @@ static MACHINE_START( ip204415 ) { ip20_state *state = machine.driver_data(); - wd33c93_init(machine, &scsi_intf); - sgi_mc_init(machine); state->m_HPC.nMiscStatus = 0; @@ -615,6 +616,7 @@ static MACHINE_CONFIG_START( ip204415, ip20_state ) MCFG_SCC8530_ADD("scc", 7000000, line_cb_t()) + MCFG_WD33C93_ADD("wd33c93", scsi_intf); MCFG_SCSIDEV_ADD("cdrom", SCSICD, SCSI_ID_6) MCFG_EEPROM_ADD("eeprom", eeprom_interface_93C56) diff --git a/src/mess/drivers/ip22.c b/src/mess/drivers/ip22.c index cec6378622f..f4b0dc4505c 100644 --- a/src/mess/drivers/ip22.c +++ b/src/mess/drivers/ip22.c @@ -95,10 +95,12 @@ class ip22_state : public driver_device { public: ip22_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag) , + : driver_device(mconfig, type, tag), + m_wd33c93(*this, "wd33c93"), m_unkpbus0(*this, "unkpbus0"), m_mainram(*this, "mainram") { } + required_device m_wd33c93; required_shared_ptr m_unkpbus0; required_shared_ptr m_mainram; RTC_t m_RTC; @@ -480,7 +482,7 @@ READ32_MEMBER(ip22_state::hpc3_hd0_r) // //verboselog((machine, 2, "HPC3 HD0 Status Read: %08x (%08x): %08x\n", 0x1fb90000 + ( offset << 2), mem_mask, nHPC3_hd0_regs[0x17] ); if (ACCESSING_BITS_0_7) { - return wd33c93_r( &space, 0 ); + return m_wd33c93->read( space, 0 ); } else { @@ -491,7 +493,7 @@ READ32_MEMBER(ip22_state::hpc3_hd0_r) // //verboselog((machine, 2, "HPC3 HD0 Register Read: %08x (%08x): %08x\n", 0x1fb90000 + ( offset << 2), mem_mask, nHPC3_hd0_regs[nHPC3_hd0_register] ); if (ACCESSING_BITS_0_7) { - return wd33c93_r( &space, 1 ); + return m_wd33c93->read( space, 1 ); } else { @@ -515,7 +517,7 @@ WRITE32_MEMBER(ip22_state::hpc3_hd0_w) // //verboselog((machine, 2, "HPC3 HD0 Register Select Write: %08x\n", data ); if (ACCESSING_BITS_0_7) { - wd33c93_w( &space, 0, data & 0x000000ff ); + m_wd33c93->write( space, 0, data & 0x000000ff ); } break; case 0x0004/4: @@ -523,7 +525,7 @@ WRITE32_MEMBER(ip22_state::hpc3_hd0_w) // //verboselog((machine, 2, "HPC3 HD0 Register %d Write: %08x\n", nHPC3_hd0_register, data ); if (ACCESSING_BITS_0_7) { - wd33c93_w( &space, 1, data & 0x000000ff ); + m_wd33c93->write( space, 1, data & 0x000000ff ); } break; default: @@ -1261,9 +1263,9 @@ static void scsi_irq(running_machine &machine, int state) if (state) { - if (wd33c93_get_dma_count()) + if (drvstate->m_wd33c93->get_dma_count()) { - printf("wd33c93_get_dma_count() is %d\n", wd33c93_get_dma_count() ); + printf("drvstate->m_wd33c93->get_dma_count() is %d\n", drvstate->m_wd33c93->get_dma_count() ); if (drvstate->m_HPC3.nSCSI0DMACtrl & HPC3_DMACTRL_ENABLE) { if (drvstate->m_HPC3.nSCSI0DMACtrl & HPC3_DMACTRL_IRQ) logerror("IP22: Unhandled SCSI DMA IRQ\n"); @@ -1275,7 +1277,7 @@ static void scsi_irq(running_machine &machine, int state) UINT32 wptr, tmpword; int words, dptr, twords; - words = wd33c93_get_dma_count(); + words = drvstate->m_wd33c93->get_dma_count(); words /= 4; wptr = space->read_dword(drvstate->m_HPC3.nSCSI0Descriptor); @@ -1289,7 +1291,7 @@ static void scsi_irq(running_machine &machine, int state) if (words <= (512/4)) { // one-shot - //wd33c93_get_dma_data(wd33c93_get_dma_count(), drvstate->m_dma_buffer); + //drvstate->m_wd33c93->get_dma_data(drvstate->m_wd33c93->get_dma_count(), drvstate->m_dma_buffer); while (words) { @@ -1315,14 +1317,14 @@ static void scsi_irq(running_machine &machine, int state) words--; } - words = wd33c93_get_dma_count(); - wd33c93_write_data(words, drvstate->m_dma_buffer); + words = drvstate->m_wd33c93->get_dma_count(); + drvstate->m_wd33c93->write_data(words, drvstate->m_dma_buffer); } else { while (words) { - //wd33c93_get_dma_data(512, drvstate->m_dma_buffer); + //drvstate->m_wd33c93->get_dma_data(512, drvstate->m_dma_buffer); twords = 512/4; drvstate->m_HPC3.nSCSI0Descriptor += 512; dptr = 0; @@ -1351,14 +1353,14 @@ static void scsi_irq(running_machine &machine, int state) twords--; } - wd33c93_write_data(512, drvstate->m_dma_buffer); + drvstate->m_wd33c93->write_data(512, drvstate->m_dma_buffer); words -= (512/4); } } // clear DMA on the controller too - wd33c93_clear_dma(); + drvstate->m_wd33c93->clear_dma(); #if 0 UINT32 dptr, tmpword; UINT32 bc = space->read_dword(drvstate->m_HPC3.nSCSI0Descriptor + 4); @@ -1399,10 +1401,10 @@ static void scsi_irq(running_machine &machine, int state) } length = space->read_dword(drvstate->m_HPC3.nSCSI0Descriptor+4) & 0x3fff; - wd33c93_write_data(length, drvstate->m_dma_buffer); + drvstate->m_wd33c93->write_data(length, drvstate->m_dma_buffer); // clear DMA on the controller too - wd33c93_clear_dma(); + drvstate->m_wd33c93->clear_dma(); } else { @@ -1417,7 +1419,7 @@ static void scsi_irq(running_machine &machine, int state) UINT32 wptr, tmpword; int words, sptr, twords; - words = wd33c93_get_dma_count(); + words = drvstate->m_wd33c93->get_dma_count(); words /= 4; wptr = space->read_dword(drvstate->m_HPC3.nSCSI0Descriptor); @@ -1430,7 +1432,7 @@ static void scsi_irq(running_machine &machine, int state) if (words <= (1024/4)) { // one-shot - wd33c93_get_dma_data(wd33c93_get_dma_count(), drvstate->m_dma_buffer); + drvstate->m_wd33c93->get_dma_data(drvstate->m_wd33c93->get_dma_count(), drvstate->m_dma_buffer); while (words) { @@ -1453,7 +1455,7 @@ static void scsi_irq(running_machine &machine, int state) { while (words) { - wd33c93_get_dma_data(512, drvstate->m_dma_buffer); + drvstate->m_wd33c93->get_dma_data(512, drvstate->m_dma_buffer); twords = 512/4; sptr = 0; @@ -1479,7 +1481,7 @@ static void scsi_irq(running_machine &machine, int state) } // clear DMA on the controller too - wd33c93_clear_dma(); + drvstate->m_wd33c93->clear_dma(); } } @@ -1524,7 +1526,6 @@ static MACHINE_START( ip225015 ) sgi_mc_init(machine); // SCSI init - wd33c93_init(machine, &scsi_intf); machine.add_notifier(MACHINE_NOTIFY_EXIT, machine_notify_delegate(FUNC(ip225015_exit),&machine)); machine.device("nvram_user")->set_base(state->m_RTC.nUserRAM, 0x200); @@ -1691,6 +1692,7 @@ static MACHINE_CONFIG_START( ip225015, ip22_state ) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0) + MCFG_WD33C93_ADD("wd33c93", scsi_intf); MCFG_SCSIDEV_ADD("cdrom", SCSICD, SCSI_ID_4) MCFG_SCSIDEV_ADD("harddisk1", SCSIHD, SCSI_ID_1) MACHINE_CONFIG_END