Cleanups and version bump.
This commit is contained in:
parent
75fa442218
commit
ee4f1afeec
@ -561,7 +561,7 @@ static void ptm6840_timeout( running_device *device, int idx )
|
|||||||
ptm6840->status_reg |= (1 << idx);
|
ptm6840->status_reg |= (1 << idx);
|
||||||
ptm6840->status_read_since_int &= ~(1 << idx);
|
ptm6840->status_read_since_int &= ~(1 << idx);
|
||||||
update_interrupts(device);
|
update_interrupts(device);
|
||||||
|
|
||||||
if ( ptm6840->control_reg[idx] & 0x80 )
|
if ( ptm6840->control_reg[idx] & 0x80 )
|
||||||
{
|
{
|
||||||
if ((ptm6840->mode[idx] == 0)||(ptm6840->mode[idx] == 2))
|
if ((ptm6840->mode[idx] == 0)||(ptm6840->mode[idx] == 2))
|
||||||
|
@ -11,9 +11,9 @@
|
|||||||
Various fixes by Lord Nightmare
|
Various fixes by Lord Nightmare
|
||||||
Modularization by Lord Nightmare
|
Modularization by Lord Nightmare
|
||||||
Sub-interpolation-cycle parameter updating added by Lord Nightmare
|
Sub-interpolation-cycle parameter updating added by Lord Nightmare
|
||||||
Preliminary MASSIVE merge of tms5110 and tms5220 cores by Lord Nightmare
|
Preliminary MASSIVE merge of tms5110 and tms5220 cores by Lord Nightmare
|
||||||
Lattice Filter, Multiplier, and clipping redone by Lord Nightmare
|
Lattice Filter, Multiplier, and clipping redone by Lord Nightmare
|
||||||
TMS5220C multi-rate feature added by Lord Nightmare
|
TMS5220C multi-rate feature added by Lord Nightmare
|
||||||
|
|
||||||
Much information regarding these lpc encoding comes from US patent 4,209,844
|
Much information regarding these lpc encoding comes from US patent 4,209,844
|
||||||
US patent 4,331,836 describes the complete 51xx chip
|
US patent 4,331,836 describes the complete 51xx chip
|
||||||
@ -49,7 +49,7 @@ TODO:
|
|||||||
If a command is still executing, /READY will be kept high until the command has
|
If a command is still executing, /READY will be kept high until the command has
|
||||||
finished if the next command is written.
|
finished if the next command is written.
|
||||||
tomcat has a 5220 which is not hooked up at all
|
tomcat has a 5220 which is not hooked up at all
|
||||||
|
|
||||||
Progress list for drivers using old vs new interface:
|
Progress list for drivers using old vs new interface:
|
||||||
starwars: uses new interface (couriersud)
|
starwars: uses new interface (couriersud)
|
||||||
gauntlet: uses new interface (couriersud
|
gauntlet: uses new interface (couriersud
|
||||||
@ -471,9 +471,9 @@ static void update_status_and_ints(tms5220_state *tms)
|
|||||||
{
|
{
|
||||||
/* update flags and set ints if needed */
|
/* update flags and set ints if needed */
|
||||||
/* BL is set if neither byte 9 nor 8 of the fifo are in use; this
|
/* BL is set if neither byte 9 nor 8 of the fifo are in use; this
|
||||||
translates to having fifo_count (which ranges from 0 bytes in use to 16
|
translates to having fifo_count (which ranges from 0 bytes in use to 16
|
||||||
bytes used) being less than or equal to 8. Victory/Victorba depends on this. */
|
bytes used) being less than or equal to 8. Victory/Victorba depends on this. */
|
||||||
if (tms->fifo_count <= 8)
|
if (tms->fifo_count <= 8)
|
||||||
{
|
{
|
||||||
/* generate an interrupt if necessary; if /BL was inactive and is now active, set int. */
|
/* generate an interrupt if necessary; if /BL was inactive and is now active, set int. */
|
||||||
if (!tms->buffer_low)
|
if (!tms->buffer_low)
|
||||||
@ -482,9 +482,9 @@ static void update_status_and_ints(tms5220_state *tms)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
tms->buffer_low = 0;
|
tms->buffer_low = 0;
|
||||||
|
|
||||||
/* BE is set if neither byte 15 nor 14 of the fifo are in use; this
|
/* BE is set if neither byte 15 nor 14 of the fifo are in use; this
|
||||||
translates to having fifo_count equal to exactly 0 */
|
translates to having fifo_count equal to exactly 0 */
|
||||||
if (tms->fifo_count == 0)
|
if (tms->fifo_count == 0)
|
||||||
{
|
{
|
||||||
/* generate an interrupt if necessary; if /BE was inactive and is now active, set int. */
|
/* generate an interrupt if necessary; if /BE was inactive and is now active, set int. */
|
||||||
@ -495,9 +495,9 @@ static void update_status_and_ints(tms5220_state *tms)
|
|||||||
else
|
else
|
||||||
tms->buffer_empty = 0;
|
tms->buffer_empty = 0;
|
||||||
|
|
||||||
/* TS is talk status and is set elsewhere in the fifo parser and in
|
/* TS is talk status and is set elsewhere in the fifo parser and in
|
||||||
the SPEAK command handler; however, if /BE is true during speak external
|
the SPEAK command handler; however, if /BE is true during speak external
|
||||||
mode, it is immediately unset here. */
|
mode, it is immediately unset here. */
|
||||||
if ((tms->speak_external == 1) && (tms->buffer_empty == 1))
|
if ((tms->speak_external == 1) && (tms->buffer_empty == 1))
|
||||||
{
|
{
|
||||||
/* generate an interrupt if necessary; if /TS was active and is now inactive, set int. */
|
/* generate an interrupt if necessary; if /TS was active and is now inactive, set int. */
|
||||||
@ -506,7 +506,7 @@ static void update_status_and_ints(tms5220_state *tms)
|
|||||||
tms->talk_status = 0;
|
tms->talk_status = 0;
|
||||||
}
|
}
|
||||||
/* Note that TS being unset will also generate an interrupt when a STOP
|
/* Note that TS being unset will also generate an interrupt when a STOP
|
||||||
frame is encountered; this is handled in the sample generator code and not here */
|
frame is encountered; this is handled in the sample generator code and not here */
|
||||||
}
|
}
|
||||||
|
|
||||||
/**********************************************************************************************
|
/**********************************************************************************************
|
||||||
@ -600,7 +600,7 @@ static int tms5220_status_read(tms5220_state *tms)
|
|||||||
static int tms5220_ready_read(tms5220_state *tms)
|
static int tms5220_ready_read(tms5220_state *tms)
|
||||||
{
|
{
|
||||||
#ifdef DEBUG_PIN_READS
|
#ifdef DEBUG_PIN_READS
|
||||||
logerror("ready_read: ready pin read, io_ready is %d, fifo count is %d\n", tms->io_ready, tms->fifo_count);
|
logerror("ready_read: ready pin read, io_ready is %d, fifo count is %d\n", tms->io_ready, tms->fifo_count);
|
||||||
#endif
|
#endif
|
||||||
return ((tms->fifo_count < FIFO_SIZE)||(!tms->speak_external)) && tms->io_ready;
|
return ((tms->fifo_count < FIFO_SIZE)||(!tms->speak_external)) && tms->io_ready;
|
||||||
}
|
}
|
||||||
@ -681,7 +681,7 @@ static void tms5220_process(tms5220_state *tms, INT16 *buffer, unsigned int size
|
|||||||
goto empty;
|
goto empty;
|
||||||
|
|
||||||
/* if speak external is set, but talk status is not (yet) set,
|
/* if speak external is set, but talk status is not (yet) set,
|
||||||
wait for buffer low to clear */
|
wait for buffer low to clear */
|
||||||
if (!tms->talk_status && tms->speak_external)
|
if (!tms->talk_status && tms->speak_external)
|
||||||
{
|
{
|
||||||
if (tms->buffer_low == 1)
|
if (tms->buffer_low == 1)
|
||||||
@ -692,7 +692,7 @@ static void tms5220_process(tms5220_state *tms, INT16 *buffer, unsigned int size
|
|||||||
tms->new_frame_pitch = 0;
|
tms->new_frame_pitch = 0;
|
||||||
for (i = 0; i < tms->coeff->num_k; i++)
|
for (i = 0; i < tms->coeff->num_k; i++)
|
||||||
tms->new_frame_k[i] = 0;
|
tms->new_frame_k[i] = 0;
|
||||||
|
|
||||||
tms->talk_status = 1;
|
tms->talk_status = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -736,14 +736,14 @@ static void tms5220_process(tms5220_state *tms, INT16 *buffer, unsigned int size
|
|||||||
|
|
||||||
|
|
||||||
/* in all cases where interpolation would be inhibited, set the target
|
/* in all cases where interpolation would be inhibited, set the target
|
||||||
value equal to the current value.
|
value equal to the current value.
|
||||||
Interpolation inhibit cases:
|
Interpolation inhibit cases:
|
||||||
* Old frame was voiced, new is unvoiced
|
* Old frame was voiced, new is unvoiced
|
||||||
* Old frame was silence/zero energy, new is unvoiced
|
* Old frame was silence/zero energy, new is unvoiced
|
||||||
* Old frame was unvoiced, new is voiced
|
* Old frame was unvoiced, new is voiced
|
||||||
* New frame is a silence/zero energy frame - ? not sure
|
* New frame is a silence/zero energy frame - ? not sure
|
||||||
* New frame is a stop frame - ? not sure
|
* New frame is a stop frame - ? not sure
|
||||||
*/
|
*/
|
||||||
if ( ((NEW_FRAME_SILENCE_FLAG == 0) && (NEW_FRAME_STOP_FLAG == 0))
|
if ( ((NEW_FRAME_SILENCE_FLAG == 0) && (NEW_FRAME_STOP_FLAG == 0))
|
||||||
&& ( ((OLD_FRAME_UNVOICED_FLAG == 0) && (NEW_FRAME_UNVOICED_FLAG == 1))
|
&& ( ((OLD_FRAME_UNVOICED_FLAG == 0) && (NEW_FRAME_UNVOICED_FLAG == 1))
|
||||||
|| ((OLD_FRAME_SILENCE_FLAG == 1) && (NEW_FRAME_UNVOICED_FLAG == 1))
|
|| ((OLD_FRAME_SILENCE_FLAG == 1) && (NEW_FRAME_UNVOICED_FLAG == 1))
|
||||||
@ -761,7 +761,7 @@ static void tms5220_process(tms5220_state *tms, INT16 *buffer, unsigned int size
|
|||||||
tms->target_k[i] = tms->current_k[i];
|
tms->target_k[i] = tms->current_k[i];
|
||||||
}
|
}
|
||||||
/* in cases where the new frame is a STOP or SILENCE frame,
|
/* in cases where the new frame is a STOP or SILENCE frame,
|
||||||
ramp the energy down to 0, leaving everything else alone. */
|
ramp the energy down to 0, leaving everything else alone. */
|
||||||
else if ((NEW_FRAME_SILENCE_FLAG == 1) || (NEW_FRAME_STOP_FLAG == 1))
|
else if ((NEW_FRAME_SILENCE_FLAG == 1) || (NEW_FRAME_STOP_FLAG == 1))
|
||||||
{
|
{
|
||||||
#ifdef DEBUG_GENERATION
|
#ifdef DEBUG_GENERATION
|
||||||
@ -862,7 +862,7 @@ static void tms5220_process(tms5220_state *tms, INT16 *buffer, unsigned int size
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* calculate the output */
|
/* calculate the output */
|
||||||
if (OLD_FRAME_UNVOICED_FLAG == 1)
|
if (OLD_FRAME_UNVOICED_FLAG == 1)
|
||||||
{
|
{
|
||||||
/* generate unvoiced samples here */
|
/* generate unvoiced samples here */
|
||||||
if (tms->RNG & 1)
|
if (tms->RNG & 1)
|
||||||
@ -944,17 +944,17 @@ empty:
|
|||||||
static INT16 clip_and_wrap(INT16 cliptemp)
|
static INT16 clip_and_wrap(INT16 cliptemp)
|
||||||
{
|
{
|
||||||
/* clipping & wrapping, just like the patent shows:
|
/* clipping & wrapping, just like the patent shows:
|
||||||
first of all the result should be clamped to 14 bits, between -16384 and 16383
|
first of all the result should be clamped to 14 bits, between -16384 and 16383
|
||||||
*/
|
*/
|
||||||
while (cliptemp > 16383) cliptemp -= 32768;
|
while (cliptemp > 16383) cliptemp -= 32768;
|
||||||
while (cliptemp < -16384) cliptemp += 32768;
|
while (cliptemp < -16384) cliptemp += 32768;
|
||||||
/* the top 10 bits of this result are visible on the digital output IO pin.
|
/* the top 10 bits of this result are visible on the digital output IO pin.
|
||||||
next, if the top 3 bits of the 14 bit result are all the same, the lowest of those 3 bits plus the next 7 bits are the signed analog output, otherwise the low bits are all forced to match the inverse of the topmost bit, i.e.:
|
next, if the top 3 bits of the 14 bit result are all the same, the lowest of those 3 bits plus the next 7 bits are the signed analog output, otherwise the low bits are all forced to match the inverse of the topmost bit, i.e.:
|
||||||
1x xxxx xxxx xxxx -> 0b10000000
|
1x xxxx xxxx xxxx -> 0b10000000
|
||||||
11 1bcd efgh xxxx -> 0b1bcdefgh
|
11 1bcd efgh xxxx -> 0b1bcdefgh
|
||||||
00 0bcd efgh xxxx -> 0b0bcdefgh
|
00 0bcd efgh xxxx -> 0b0bcdefgh
|
||||||
0x xxxx xxxx xxxx -> 0b01111111
|
0x xxxx xxxx xxxx -> 0b01111111
|
||||||
*/
|
*/
|
||||||
#ifdef DO_CLIP_AND_WRAP
|
#ifdef DO_CLIP_AND_WRAP
|
||||||
if (cliptemp > 2047) cliptemp = 2047;
|
if (cliptemp > 2047) cliptemp = 2047;
|
||||||
else if (cliptemp < -2048) cliptemp = -2048;
|
else if (cliptemp < -2048) cliptemp = -2048;
|
||||||
@ -968,11 +968,11 @@ static INT16 clip_and_wrap(INT16 cliptemp)
|
|||||||
|
|
||||||
/**********************************************************************************************
|
/**********************************************************************************************
|
||||||
|
|
||||||
ti_matrix_multiply -- does the proper multiply and shift as the TI chips do.
|
ti_matrix_multiply -- does the proper multiply and shift as the TI chips do.
|
||||||
a is the k coefficient and is clamped to 10 bits (9 bits plus a sign)
|
a is the k coefficient and is clamped to 10 bits (9 bits plus a sign)
|
||||||
b is the running result and is clamped to 14 bits.
|
b is the running result and is clamped to 14 bits.
|
||||||
output is 14 bits, but note the result LSB bit is always 1.
|
output is 14 bits, but note the result LSB bit is always 1.
|
||||||
|
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
static INT16 matrix_multiply(INT16 a, INT16 b)
|
static INT16 matrix_multiply(INT16 a, INT16 b)
|
||||||
{
|
{
|
||||||
@ -988,7 +988,7 @@ static INT16 matrix_multiply(INT16 a, INT16 b)
|
|||||||
#endif
|
#endif
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**********************************************************************************************
|
/**********************************************************************************************
|
||||||
|
|
||||||
lattice_filter -- executes one 'full run' of the lattice filter on a specific byte of
|
lattice_filter -- executes one 'full run' of the lattice filter on a specific byte of
|
||||||
@ -1007,7 +1007,7 @@ static INT16 lattice_filter(tms5220_state *tms)
|
|||||||
Kn = tms->current_k[n-1]
|
Kn = tms->current_k[n-1]
|
||||||
bn = tms->x[n-1]
|
bn = tms->x[n-1]
|
||||||
*/
|
*/
|
||||||
tms->u[10] = matrix_multiply(tms->current_energy, (tms->excitation_data*64)); //Y(11)
|
tms->u[10] = matrix_multiply(tms->current_energy, (tms->excitation_data*64)); //Y(11)
|
||||||
//tms->u[10] = matrix_multiply((tms->excitation_data*64), tms->current_energy); // wrong but sounds better
|
//tms->u[10] = matrix_multiply((tms->excitation_data*64), tms->current_energy); // wrong but sounds better
|
||||||
tms->u[9] = tms->u[10] - matrix_multiply(tms->current_k[9], tms->x[9]);
|
tms->u[9] = tms->u[10] - matrix_multiply(tms->current_k[9], tms->x[9]);
|
||||||
tms->u[8] = tms->u[9] - matrix_multiply(tms->current_k[8], tms->x[8]);
|
tms->u[8] = tms->u[9] - matrix_multiply(tms->current_k[8], tms->x[8]);
|
||||||
@ -1062,7 +1062,7 @@ static void process_command(tms5220_state *tms, unsigned char cmd)
|
|||||||
tms->RDB_flag = TRUE;
|
tms->RDB_flag = TRUE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x00: case 0x20: /* set rate (tms5220c only), otherwise NOP */
|
case 0x00: case 0x20: /* set rate (tms5220c only), otherwise NOP */
|
||||||
if (tms->variant == SUBTYPE_TMS5220C)
|
if (tms->variant == SUBTYPE_TMS5220C)
|
||||||
{
|
{
|
||||||
@ -1086,7 +1086,7 @@ static void process_command(tms5220_state *tms, unsigned char cmd)
|
|||||||
if (tms->talk_status == 0) /* TALKST must be clear for LA */
|
if (tms->talk_status == 0) /* TALKST must be clear for LA */
|
||||||
{
|
{
|
||||||
/* tms5220 data sheet says that if we load only one 4-bit nibble, it won't work.
|
/* tms5220 data sheet says that if we load only one 4-bit nibble, it won't work.
|
||||||
This code does not care about this. */
|
This code does not care about this. */
|
||||||
if (tms->intf->load_address)
|
if (tms->intf->load_address)
|
||||||
(*tms->intf->load_address)(tms->device, cmd & 0x0f);
|
(*tms->intf->load_address)(tms->device, cmd & 0x0f);
|
||||||
tms->schedule_dummy_read = TRUE;
|
tms->schedule_dummy_read = TRUE;
|
||||||
@ -1155,9 +1155,9 @@ static void parse_frame(tms5220_state *tms)
|
|||||||
bits = 131072; // == arbitrary large number
|
bits = 131072; // == arbitrary large number
|
||||||
}
|
}
|
||||||
/* if the chip is a tms5220C, and the rate mode is set to that each frame (0x04 bit set)
|
/* if the chip is a tms5220C, and the rate mode is set to that each frame (0x04 bit set)
|
||||||
has a 2 bit rate preceeding it, grab two bits here and store them as the rate; */
|
has a 2 bit rate preceeding it, grab two bits here and store them as the rate; */
|
||||||
if ((tms->variant == SUBTYPE_TMS5220C) && (tms->tms5220c_rate & 0x04))
|
if ((tms->variant == SUBTYPE_TMS5220C) && (tms->tms5220c_rate & 0x04))
|
||||||
{
|
{
|
||||||
bits -= 2;
|
bits -= 2;
|
||||||
if (bits < 0) goto ranout;
|
if (bits < 0) goto ranout;
|
||||||
indx = extract_bits(tms, 2);
|
indx = extract_bits(tms, 2);
|
||||||
@ -1255,7 +1255,7 @@ static void parse_frame(tms5220_state *tms)
|
|||||||
logerror("Parsed a frame successfully in ROM\n");
|
logerror("Parsed a frame successfully in ROM\n");
|
||||||
#endif
|
#endif
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ranout:
|
ranout:
|
||||||
#ifdef DEBUG_FRAME_ERRORS
|
#ifdef DEBUG_FRAME_ERRORS
|
||||||
logerror("Ran out of bits on a parse!\n");
|
logerror("Ran out of bits on a parse!\n");
|
||||||
@ -1303,11 +1303,11 @@ static DEVICE_START( tms5220 )
|
|||||||
|
|
||||||
tms->intf = device->baseconfig().static_config ? (const tms5220_interface *)device->baseconfig().static_config : &dummy;
|
tms->intf = device->baseconfig().static_config ? (const tms5220_interface *)device->baseconfig().static_config : &dummy;
|
||||||
//tms->table = *device->region;
|
//tms->table = *device->region;
|
||||||
|
|
||||||
tms->device = device;
|
tms->device = device;
|
||||||
tms5220_set_variant(tms, TMS5220_IS_5220);
|
tms5220_set_variant(tms, TMS5220_IS_5220);
|
||||||
tms->clock = device->clock;
|
tms->clock = device->clock;
|
||||||
|
|
||||||
assert_always(tms != NULL, "Error creating TMS5220 chip");
|
assert_always(tms != NULL, "Error creating TMS5220 chip");
|
||||||
|
|
||||||
/* resolve irq line */
|
/* resolve irq line */
|
||||||
@ -1317,17 +1317,17 @@ static DEVICE_START( tms5220 )
|
|||||||
tms->stream = stream_create(device, 0, 1, device->clock / 80, tms, tms5220_update);
|
tms->stream = stream_create(device, 0, 1, device->clock / 80, tms, tms5220_update);
|
||||||
|
|
||||||
/*if (tms->table == NULL)
|
/*if (tms->table == NULL)
|
||||||
{
|
{
|
||||||
assert_always(tms->intf->M0_callback != NULL, "Missing _mandatory_ 'M0_callback' function pointer in the TMS5110 interface\n This function is used by TMS5220 to call for a new single bit\n needed to generate the speech when in VSM mode\n Aborting startup...\n");
|
assert_always(tms->intf->M0_callback != NULL, "Missing _mandatory_ 'M0_callback' function pointer in the TMS5110 interface\n This function is used by TMS5220 to call for a new single bit\n needed to generate the speech when in VSM mode\n Aborting startup...\n");
|
||||||
tms->M0_callback = tms->intf->M0_callback;
|
tms->M0_callback = tms->intf->M0_callback;
|
||||||
tms->set_load_address = tms->intf->load_address;
|
tms->set_load_address = tms->intf->load_address;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
tms->M0_callback = speech_rom_read_bit;
|
tms->M0_callback = speech_rom_read_bit;
|
||||||
tms->set_load_address = speech_rom_set_addr;
|
tms->set_load_address = speech_rom_set_addr;
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
/* not during reset which is called frm within a write! */
|
/* not during reset which is called frm within a write! */
|
||||||
tms->io_ready = 1;
|
tms->io_ready = 1;
|
||||||
tms->true_timing = 0;
|
tms->true_timing = 0;
|
||||||
|
@ -34,7 +34,7 @@ JSA-i: stereo gating for POKEY/TMS5220C is currently only mono, only looking at
|
|||||||
ALL: the LPF (low pass filter) bit which selectively places a lowpass filter in the output
|
ALL: the LPF (low pass filter) bit which selectively places a lowpass filter in the output
|
||||||
path for all channels is currently unimplemented; someone who knows analog magic will need
|
path for all channels is currently unimplemented; someone who knows analog magic will need
|
||||||
to handle this.
|
to handle this.
|
||||||
|
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
@ -296,7 +296,7 @@ static WRITE8_HANDLER( jsa1_io_w )
|
|||||||
count = 5 | ((data >> 2) & 2);
|
count = 5 | ((data >> 2) & 2);
|
||||||
tms5220_set_frequency(tms5220, JSA_MASTER_CLOCK*2 / (16 - count));
|
tms5220_set_frequency(tms5220, JSA_MASTER_CLOCK*2 / (16 - count));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* reset the YM2151 if needed */
|
/* reset the YM2151 if needed */
|
||||||
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
||||||
|
|
||||||
@ -417,7 +417,7 @@ static WRITE8_HANDLER( jsa2_io_w )
|
|||||||
0x02 = n/c
|
0x02 = n/c
|
||||||
0x01 = YM2151 reset (active low)
|
0x01 = YM2151 reset (active low)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* reset the YM2151 if needed */
|
/* reset the YM2151 if needed */
|
||||||
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
||||||
|
|
||||||
@ -542,7 +542,7 @@ static WRITE8_HANDLER( jsa3_io_w )
|
|||||||
0x02 = OKI6295 bank bit 0
|
0x02 = OKI6295 bank bit 0
|
||||||
0x01 = YM2151 reset (active low)
|
0x01 = YM2151 reset (active low)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* reset the YM2151 if needed */
|
/* reset the YM2151 if needed */
|
||||||
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
||||||
|
|
||||||
@ -676,7 +676,7 @@ static WRITE8_HANDLER( jsa3s_io_w )
|
|||||||
0x02 = left OKI6295 bank bit 0
|
0x02 = left OKI6295 bank bit 0
|
||||||
0x01 = YM2151 reset (active low)
|
0x01 = YM2151 reset (active low)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* reset the YM2151 if needed */
|
/* reset the YM2151 if needed */
|
||||||
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
if ((data&1) == 0) devtag_reset(space->machine, "ymsnd");
|
||||||
|
|
||||||
|
@ -234,7 +234,7 @@ struct _snes_sound_state
|
|||||||
INLINE snes_sound_state *get_safe_token( running_device *device )
|
INLINE snes_sound_state *get_safe_token( running_device *device )
|
||||||
{
|
{
|
||||||
assert(device != NULL);
|
assert(device != NULL);
|
||||||
assert(device->token != NULL);
|
assert(device->token != NULL);
|
||||||
assert(device->type == SOUND);
|
assert(device->type == SOUND);
|
||||||
assert(sound_get_type(device) == SNES_SPC);
|
assert(sound_get_type(device) == SNES_SPC);
|
||||||
|
|
||||||
|
@ -2165,7 +2165,7 @@ MACHINE_DRIVER_END
|
|||||||
|
|
||||||
static MACHINE_DRIVER_START( funquiz )
|
static MACHINE_DRIVER_START( funquiz )
|
||||||
MDRV_IMPORT_FROM(fw1stpal)
|
MDRV_IMPORT_FROM(fw1stpal)
|
||||||
// MDRV_IMPORT_FROM(fw2ndpal)
|
// MDRV_IMPORT_FROM(fw2ndpal)
|
||||||
|
|
||||||
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
|
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
|
||||||
MDRV_CPU_PROGRAM_MAP(funquiz_map)
|
MDRV_CPU_PROGRAM_MAP(funquiz_map)
|
||||||
@ -3129,7 +3129,7 @@ ROM_END
|
|||||||
r.3 = 2a.bin royalcrde Royal Card (austrian, set 6)
|
r.3 = 2a.bin royalcrde Royal Card (austrian, set 6)
|
||||||
|
|
||||||
All ROMs are double sized, with identical halves.
|
All ROMs are double sized, with identical halves.
|
||||||
The set is working properly, with Bet (Hold 5) and normal payout. No Remote.
|
The set is working properly, with Bet (Hold 5) and normal payout. No Remote.
|
||||||
*/
|
*/
|
||||||
ROM_START( royalcrda )
|
ROM_START( royalcrda )
|
||||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||||
@ -3182,9 +3182,9 @@ ROM_START( royalcrdc )
|
|||||||
|
|
||||||
ROM_REGION( 0x20000, "gfx1", 0 )
|
ROM_REGION( 0x20000, "gfx1", 0 )
|
||||||
ROM_LOAD( "roj.ic26", 0x0000, 0x10000, CRC(3883cdcb) SHA1(b71a786822fe8fcb2c6fcdc463facb2738ec8c01) )
|
ROM_LOAD( "roj.ic26", 0x0000, 0x10000, CRC(3883cdcb) SHA1(b71a786822fe8fcb2c6fcdc463facb2738ec8c01) )
|
||||||
// ROM_IGNORE( 0x8000)
|
// ROM_IGNORE( 0x8000)
|
||||||
ROM_LOAD( "roj.ic25", 0x8000, 0x10000, CRC(c5b787e8) SHA1(be88aa901c1f96d171af45c3602e0ce72b8fff34) )
|
ROM_LOAD( "roj.ic25", 0x8000, 0x10000, CRC(c5b787e8) SHA1(be88aa901c1f96d171af45c3602e0ce72b8fff34) )
|
||||||
// ROM_IGNORE( 0x8000)
|
// ROM_IGNORE( 0x8000)
|
||||||
|
|
||||||
ROM_REGION( 0x0800, "nvram", 0 ) /* default NVRAM */
|
ROM_REGION( 0x0800, "nvram", 0 ) /* default NVRAM */
|
||||||
ROM_LOAD( "royalcrdc_nvram.bin", 0x0000, 0x0800, CRC(eacb0c7b) SHA1(513816623aa3843dd5d0416fc012060c7a9f6c71) )
|
ROM_LOAD( "royalcrdc_nvram.bin", 0x0000, 0x0800, CRC(eacb0c7b) SHA1(513816623aa3843dd5d0416fc012060c7a9f6c71) )
|
||||||
|
@ -1657,9 +1657,9 @@ INPUT_PORTS_START( mk3ghw )
|
|||||||
PORT_DIPSETTING( 0x05, DEF_STR( Medium ) )
|
PORT_DIPSETTING( 0x05, DEF_STR( Medium ) )
|
||||||
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
|
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
|
||||||
PORT_DIPSETTING( 0x03, DEF_STR( Hardest ) )
|
PORT_DIPSETTING( 0x03, DEF_STR( Hardest ) )
|
||||||
// PORT_DIPSETTING( 0x02, DEF_STR( Hardest ) )
|
// PORT_DIPSETTING( 0x02, DEF_STR( Hardest ) )
|
||||||
// PORT_DIPSETTING( 0x01, DEF_STR( Hardest ) )
|
// PORT_DIPSETTING( 0x01, DEF_STR( Hardest ) )
|
||||||
// PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
|
// PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
|
||||||
PORT_DIPUNUSED( 0x08, IP_ACTIVE_HIGH )
|
PORT_DIPUNUSED( 0x08, IP_ACTIVE_HIGH )
|
||||||
PORT_DIPUNUSED( 0x10, IP_ACTIVE_HIGH )
|
PORT_DIPUNUSED( 0x10, IP_ACTIVE_HIGH )
|
||||||
PORT_DIPUNUSED( 0x20, IP_ACTIVE_HIGH )
|
PORT_DIPUNUSED( 0x20, IP_ACTIVE_HIGH )
|
||||||
|
@ -234,7 +234,7 @@ static WRITE16_HANDLER( livequiz_coin_w )
|
|||||||
coin_counter_w(space->machine, 0, data & 0x0001);
|
coin_counter_w(space->machine, 0, data & 0x0001);
|
||||||
}
|
}
|
||||||
#ifdef MAME_DEBUG
|
#ifdef MAME_DEBUG
|
||||||
// popmessage("coin %04X", data);
|
// popmessage("coin %04X", data);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -290,7 +290,7 @@ static WRITE16_HANDLER( hammer_coin_w )
|
|||||||
coin_counter_w(space->machine, 1, data & 0x0002);
|
coin_counter_w(space->machine, 1, data & 0x0002);
|
||||||
}
|
}
|
||||||
#ifdef MAME_DEBUG
|
#ifdef MAME_DEBUG
|
||||||
// popmessage("coin %04X", data);
|
// popmessage("coin %04X", data);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -304,14 +304,14 @@ static WRITE16_HANDLER( hammer_motor_w )
|
|||||||
// data & 0x0080 ?
|
// data & 0x0080 ?
|
||||||
}
|
}
|
||||||
#ifdef MAME_DEBUG
|
#ifdef MAME_DEBUG
|
||||||
// popmessage("motor %04X", data);
|
// popmessage("motor %04X", data);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static WRITE16_HANDLER( hammer_led_w )
|
static WRITE16_HANDLER( hammer_led_w )
|
||||||
{
|
{
|
||||||
#ifdef MAME_DEBUG
|
#ifdef MAME_DEBUG
|
||||||
// popmessage("led %04X", data);
|
// popmessage("led %04X", data);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -561,7 +561,7 @@ static INPUT_PORTS_START( hammer )
|
|||||||
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
|
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||||
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
|
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||||
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("eeprom", eeprom_read_bit)
|
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("eeprom", eeprom_read_bit)
|
||||||
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_SERVICE_NO_TOGGLE( 0x0040, IP_ACTIVE_LOW )
|
PORT_SERVICE_NO_TOGGLE( 0x0040, IP_ACTIVE_LOW )
|
||||||
@ -932,7 +932,7 @@ ROM_START( hammer )
|
|||||||
|
|
||||||
ROM_REGION( 0x080000, "tiles", ROMREGION_ERASE )
|
ROM_REGION( 0x080000, "tiles", ROMREGION_ERASE )
|
||||||
// Use the tiles rom from livequiz (not present in this set) to show some debug text
|
// Use the tiles rom from livequiz (not present in this set) to show some debug text
|
||||||
// ROM_LOAD( "27c4096.u23", 0x000000, 0x080000, CRC(25121de8) SHA1(edf24d87551639b871baf3243b452a4e2ba84107) )
|
// ROM_LOAD( "27c4096.u23", 0x000000, 0x080000, CRC(25121de8) SHA1(edf24d87551639b871baf3243b452a4e2ba84107) )
|
||||||
|
|
||||||
ROM_REGION( 0x400000, "ymz", 0 )
|
ROM_REGION( 0x400000, "ymz", 0 )
|
||||||
ROM_LOAD( "s0.u25", 0x000000, 0x200000, CRC(c049a3e0) SHA1(0c7016c3128c170a84ad3f92fad1165775210e3d) )
|
ROM_LOAD( "s0.u25", 0x000000, 0x200000, CRC(c049a3e0) SHA1(0c7016c3128c170a84ad3f92fad1165775210e3d) )
|
||||||
|
@ -1126,31 +1126,31 @@ static READ16_HANDLER( ef9369_r )
|
|||||||
|
|
||||||
static INPUT_PORTS_START( crmaze )
|
static INPUT_PORTS_START( crmaze )
|
||||||
PORT_START("ORANGE1")
|
PORT_START("ORANGE1")
|
||||||
// PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("00")
|
// PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("00")
|
||||||
// PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("01")
|
// PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("01")
|
||||||
// PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("02")
|
// PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("02")
|
||||||
// PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("03")
|
// PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("03")
|
||||||
// PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("04")
|
// PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("04")
|
||||||
// PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("05")
|
// PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("05")
|
||||||
// PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("06")
|
// PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("06")
|
||||||
// PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("07")
|
// PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("07")
|
||||||
|
|
||||||
PORT_START("ORANGE2")
|
PORT_START("ORANGE2")
|
||||||
// PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("08")
|
// PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("08")
|
||||||
// PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("09")
|
// PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("09")
|
||||||
// PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("10")
|
// PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("10")
|
||||||
// PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("11")
|
// PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("11")
|
||||||
// PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("12")
|
// PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("12")
|
||||||
// PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("13")
|
// PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("13")
|
||||||
// PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("14")
|
// PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("14")
|
||||||
// PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("200p?")
|
// PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("200p?")
|
||||||
|
|
||||||
PORT_START("BLACK1")
|
PORT_START("BLACK1")
|
||||||
// PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("16")
|
// PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("16")
|
||||||
// PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("17")
|
// PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("17")
|
||||||
// PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("18")
|
// PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("18")
|
||||||
// PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("19")
|
// PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("19")
|
||||||
// PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("20")
|
// PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("20")
|
||||||
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_SERVICE) PORT_NAME("Test Switch")
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_SERVICE) PORT_NAME("Test Switch")
|
||||||
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_SERVICE) PORT_NAME("Refill Key") PORT_CODE(KEYCODE_R) PORT_TOGGLE
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_SERVICE) PORT_NAME("Refill Key") PORT_CODE(KEYCODE_R) PORT_TOGGLE
|
||||||
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("Door Switch?") PORT_TOGGLE
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("Door Switch?") PORT_TOGGLE
|
||||||
@ -1490,8 +1490,8 @@ static READ16_DEVICE_HANDLER( oki_r )
|
|||||||
|
|
||||||
static WRITE16_DEVICE_HANDLER( oki_w )
|
static WRITE16_DEVICE_HANDLER( oki_w )
|
||||||
{
|
{
|
||||||
// 0x10: .xxx xxxx OKIM6736 I6-I0
|
// 0x10: .xxx xxxx OKIM6736 I6-I0
|
||||||
// 0x12: .... ...x OKIM6736 /ST
|
// 0x12: .... ...x OKIM6736 /ST
|
||||||
}
|
}
|
||||||
|
|
||||||
static void video_reset(running_device *device)
|
static void video_reset(running_device *device)
|
||||||
@ -1929,9 +1929,9 @@ static READ16_HANDLER( characteriser16_r )
|
|||||||
LOG_CHR(("Characteriser read offset %02X \n",offset));
|
LOG_CHR(("Characteriser read offset %02X \n",offset));
|
||||||
LOG_CHR(("Characteriser read data %02X \n",mpu4_current_chr_table[prot_col].response));
|
LOG_CHR(("Characteriser read data %02X \n",mpu4_current_chr_table[prot_col].response));
|
||||||
|
|
||||||
// printf("%04x Characteriser read offset %02X,data %02X\n", cpu_get_previouspc(space->cpu),offset,mpu4_current_chr_table[prot_col].response);
|
// printf("%04x Characteriser read offset %02X,data %02X\n", cpu_get_previouspc(space->cpu),offset,mpu4_current_chr_table[prot_col].response);
|
||||||
// printf("Characteriser read offset %02X \n",offset);
|
// printf("Characteriser read offset %02X \n",offset);
|
||||||
// printf("Characteriser read data %02X \n",mpu4_current_chr_table[prot_col].response);
|
// printf("Characteriser read data %02X \n",mpu4_current_chr_table[prot_col].response);
|
||||||
|
|
||||||
if (!mpu4_current_chr_table)
|
if (!mpu4_current_chr_table)
|
||||||
fatalerror("No Characteriser Table @ %04x\n", cpu_get_previouspc(space->cpu));
|
fatalerror("No Characteriser Table @ %04x\n", cpu_get_previouspc(space->cpu));
|
||||||
@ -1950,112 +1950,112 @@ static READ16_HANDLER( characteriser16_r )
|
|||||||
|
|
||||||
|
|
||||||
mpu4_chr_table adders_data[64] = {
|
mpu4_chr_table adders_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x8C}, {0x04, 0x64}, {0x10, 0x84}, {0x18, 0x84}, {0x0F, 0xC4}, {0x13, 0x84}, {0x1B, 0x84},
|
{0x00, 0x00}, {0x1A, 0x8C}, {0x04, 0x64}, {0x10, 0x84}, {0x18, 0x84}, {0x0F, 0xC4}, {0x13, 0x84}, {0x1B, 0x84},
|
||||||
{0x03, 0x9C}, {0x07, 0xF4}, {0x17, 0x04}, {0x1D, 0xCC}, {0x36, 0x24}, {0x35, 0x84}, {0x2B, 0xC4}, {0x28, 0x94},
|
{0x03, 0x9C}, {0x07, 0xF4}, {0x17, 0x04}, {0x1D, 0xCC}, {0x36, 0x24}, {0x35, 0x84}, {0x2B, 0xC4}, {0x28, 0x94},
|
||||||
{0x39, 0x54}, {0x21, 0x0C}, {0x22, 0x74}, {0x25, 0x0C}, {0x2C, 0x34}, {0x29, 0x04}, {0x31, 0x84}, {0x34, 0x84},
|
{0x39, 0x54}, {0x21, 0x0C}, {0x22, 0x74}, {0x25, 0x0C}, {0x2C, 0x34}, {0x29, 0x04}, {0x31, 0x84}, {0x34, 0x84},
|
||||||
{0x0A, 0xC4}, {0x1F, 0x84}, {0x06, 0x9C}, {0x0E, 0xE4}, {0x1C, 0x84}, {0x12, 0x84}, {0x1E, 0x84}, {0x0D, 0xD4},
|
{0x0A, 0xC4}, {0x1F, 0x84}, {0x06, 0x9C}, {0x0E, 0xE4}, {0x1C, 0x84}, {0x12, 0x84}, {0x1E, 0x84}, {0x0D, 0xD4},
|
||||||
{0x14, 0x44}, {0x0A, 0x84}, {0x19, 0xC4}, {0x15, 0x84}, {0x06, 0x9C}, {0x0F, 0xE4}, {0x08, 0x84}, {0x1B, 0x84},
|
{0x14, 0x44}, {0x0A, 0x84}, {0x19, 0xC4}, {0x15, 0x84}, {0x06, 0x9C}, {0x0F, 0xE4}, {0x08, 0x84}, {0x1B, 0x84},
|
||||||
{0x1E, 0x84}, {0x04, 0x8C}, {0x01, 0x60}, {0x0C, 0x84}, {0x18, 0x84}, {0x1A, 0x84}, {0x11, 0x84}, {0x0B, 0xC4},
|
{0x1E, 0x84}, {0x04, 0x8C}, {0x01, 0x60}, {0x0C, 0x84}, {0x18, 0x84}, {0x1A, 0x84}, {0x11, 0x84}, {0x0B, 0xC4},
|
||||||
{0x03, 0x9C}, {0x17, 0xF4}, {0x10, 0x04}, {0x1D, 0xCC}, {0x0E, 0x24}, {0x07, 0x9C}, {0x12, 0xF4}, {0x09, 0x04},
|
{0x03, 0x9C}, {0x17, 0xF4}, {0x10, 0x04}, {0x1D, 0xCC}, {0x0E, 0x24}, {0x07, 0x9C}, {0x12, 0xF4}, {0x09, 0x04},
|
||||||
{0x0D, 0x94}, {0x1F, 0x14}, {0x16, 0x44}, {0x05, 0x8C}, {0x13, 0x34}, {0x1C, 0x04}, {0x02, 0x9C}, {0x00, 0x00}
|
{0x0D, 0x94}, {0x1F, 0x14}, {0x16, 0x44}, {0x05, 0x8C}, {0x13, 0x34}, {0x1C, 0x04}, {0x02, 0x9C}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table crmaze_data[64] = {
|
mpu4_chr_table crmaze_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x84}, {0x04, 0x94}, {0x10, 0x3C}, {0x18, 0xEC}, {0x0F, 0x5C}, {0x13, 0xEC}, {0x1B, 0x50},
|
{0x00, 0x00}, {0x1A, 0x84}, {0x04, 0x94}, {0x10, 0x3C}, {0x18, 0xEC}, {0x0F, 0x5C}, {0x13, 0xEC}, {0x1B, 0x50},
|
||||||
{0x03, 0x2C}, {0x07, 0x68}, {0x17, 0x60}, {0x1D, 0xAC}, {0x36, 0x74}, {0x35, 0x00}, {0x2B, 0xAC}, {0x28, 0x58},
|
{0x03, 0x2C}, {0x07, 0x68}, {0x17, 0x60}, {0x1D, 0xAC}, {0x36, 0x74}, {0x35, 0x00}, {0x2B, 0xAC}, {0x28, 0x58},
|
||||||
{0x39, 0xEC}, {0x21, 0x7C}, {0x22, 0xEC}, {0x25, 0x58}, {0x2C, 0xE0}, {0x29, 0x90}, {0x31, 0x18}, {0x34, 0xEC},
|
{0x39, 0xEC}, {0x21, 0x7C}, {0x22, 0xEC}, {0x25, 0x58}, {0x2C, 0xE0}, {0x29, 0x90}, {0x31, 0x18}, {0x34, 0xEC},
|
||||||
{0x0A, 0x54}, {0x1F, 0x28}, {0x06, 0x68}, {0x0E, 0x44}, {0x1C, 0x84}, {0x12, 0xB4}, {0x1E, 0x10}, {0x0D, 0x20},
|
{0x0A, 0x54}, {0x1F, 0x28}, {0x06, 0x68}, {0x0E, 0x44}, {0x1C, 0x84}, {0x12, 0xB4}, {0x1E, 0x10}, {0x0D, 0x20},
|
||||||
{0x14, 0x84}, {0x0A, 0xBC}, {0x19, 0xE8}, {0x15, 0x70}, {0x06, 0x24}, {0x0F, 0x84}, {0x08, 0xB8}, {0x1B, 0xE0},
|
{0x14, 0x84}, {0x0A, 0xBC}, {0x19, 0xE8}, {0x15, 0x70}, {0x06, 0x24}, {0x0F, 0x84}, {0x08, 0xB8}, {0x1B, 0xE0},
|
||||||
{0x1E, 0x94}, {0x04, 0x14}, {0x01, 0x2C}, {0x0C, 0x64}, {0x18, 0x8C}, {0x1A, 0x50}, {0x11, 0x28}, {0x0B, 0x4C},
|
{0x1E, 0x94}, {0x04, 0x14}, {0x01, 0x2C}, {0x0C, 0x64}, {0x18, 0x8C}, {0x1A, 0x50}, {0x11, 0x28}, {0x0B, 0x4C},
|
||||||
{0x03, 0x6C}, {0x17, 0x60}, {0x10, 0xA0}, {0x1D, 0xBC}, {0x0E, 0xCC}, {0x07, 0x78}, {0x12, 0xE8}, {0x09, 0x50},
|
{0x03, 0x6C}, {0x17, 0x60}, {0x10, 0xA0}, {0x1D, 0xBC}, {0x0E, 0xCC}, {0x07, 0x78}, {0x12, 0xE8}, {0x09, 0x50},
|
||||||
{0x0D, 0x20}, {0x1F, 0xAC}, {0x16, 0x74}, {0x05, 0x04}, {0x13, 0xA4}, {0x1C, 0x94}, {0x02, 0x3C}, {0x00, 0x00}
|
{0x0D, 0x20}, {0x1F, 0xAC}, {0x16, 0x74}, {0x05, 0x04}, {0x13, 0xA4}, {0x1C, 0x94}, {0x02, 0x3C}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table crmazea_data[64] = {
|
mpu4_chr_table crmazea_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x0C}, {0x04, 0x90}, {0x10, 0xE0}, {0x18, 0xA4}, {0x0F, 0xAC}, {0x13, 0x78}, {0x1B, 0x5C},
|
{0x00, 0x00}, {0x1A, 0x0C}, {0x04, 0x90}, {0x10, 0xE0}, {0x18, 0xA4}, {0x0F, 0xAC}, {0x13, 0x78}, {0x1B, 0x5C},
|
||||||
{0x03, 0xDC}, {0x07, 0xD4}, {0x17, 0xA0}, {0x1D, 0xEC}, {0x36, 0x78}, {0x35, 0x54}, {0x2B, 0x48}, {0x28, 0x50},
|
{0x03, 0xDC}, {0x07, 0xD4}, {0x17, 0xA0}, {0x1D, 0xEC}, {0x36, 0x78}, {0x35, 0x54}, {0x2B, 0x48}, {0x28, 0x50},
|
||||||
{0x39, 0xC8}, {0x21, 0xF8}, {0x22, 0xDC}, {0x25, 0x94}, {0x2C, 0xE0}, {0x29, 0x24}, {0x31, 0x0C}, {0x34, 0xD8},
|
{0x39, 0xC8}, {0x21, 0xF8}, {0x22, 0xDC}, {0x25, 0x94}, {0x2C, 0xE0}, {0x29, 0x24}, {0x31, 0x0C}, {0x34, 0xD8},
|
||||||
{0x0A, 0x5C}, {0x1F, 0xD4}, {0x06, 0x68}, {0x0E, 0x18}, {0x1C, 0x14}, {0x12, 0xC8}, {0x1E, 0x38}, {0x0D, 0x5C},
|
{0x0A, 0x5C}, {0x1F, 0xD4}, {0x06, 0x68}, {0x0E, 0x18}, {0x1C, 0x14}, {0x12, 0xC8}, {0x1E, 0x38}, {0x0D, 0x5C},
|
||||||
{0x14, 0xDC}, {0x0A, 0x5C}, {0x19, 0xDC}, {0x15, 0xD4}, {0x06, 0x68}, {0x0F, 0x18}, {0x08, 0xD4}, {0x1B, 0x60},
|
{0x14, 0xDC}, {0x0A, 0x5C}, {0x19, 0xDC}, {0x15, 0xD4}, {0x06, 0x68}, {0x0F, 0x18}, {0x08, 0xD4}, {0x1B, 0x60},
|
||||||
{0x1E, 0x0C}, {0x04, 0x90}, {0x01, 0xE8}, {0x0C, 0xF8}, {0x18, 0xD4}, {0x1A, 0x60}, {0x11, 0x44}, {0x0B, 0x4C},
|
{0x1E, 0x0C}, {0x04, 0x90}, {0x01, 0xE8}, {0x0C, 0xF8}, {0x18, 0xD4}, {0x1A, 0x60}, {0x11, 0x44}, {0x0B, 0x4C},
|
||||||
{0x03, 0xD8}, {0x17, 0xD4}, {0x10, 0xE8}, {0x1D, 0xF8}, {0x0E, 0x9C}, {0x07, 0xD4}, {0x12, 0xE8}, {0x09, 0x30},
|
{0x03, 0xD8}, {0x17, 0xD4}, {0x10, 0xE8}, {0x1D, 0xF8}, {0x0E, 0x9C}, {0x07, 0xD4}, {0x12, 0xE8}, {0x09, 0x30},
|
||||||
{0x0D, 0x48}, {0x1F, 0xD8}, {0x16, 0xDC}, {0x05, 0x94}, {0x13, 0xE8}, {0x1C, 0x38}, {0x02, 0xDC}, {0x00, 0x00}
|
{0x0D, 0x48}, {0x1F, 0xD8}, {0x16, 0xDC}, {0x05, 0x94}, {0x13, 0xE8}, {0x1C, 0x38}, {0x02, 0xDC}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table mating_data[64] = {
|
mpu4_chr_table mating_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x18}, {0x04, 0xC8}, {0x10, 0xA4}, {0x18, 0x0C}, {0x0F, 0x80}, {0x13, 0x0C}, {0x1B, 0x90},
|
{0x00, 0x00}, {0x1A, 0x18}, {0x04, 0xC8}, {0x10, 0xA4}, {0x18, 0x0C}, {0x0F, 0x80}, {0x13, 0x0C}, {0x1B, 0x90},
|
||||||
{0x03, 0x34}, {0x07, 0x30}, {0x17, 0x00}, {0x1D, 0x58}, {0x36, 0xC8}, {0x35, 0x84}, {0x2B, 0x4C}, {0x28, 0xA0},
|
{0x03, 0x34}, {0x07, 0x30}, {0x17, 0x00}, {0x1D, 0x58}, {0x36, 0xC8}, {0x35, 0x84}, {0x2B, 0x4C}, {0x28, 0xA0},
|
||||||
{0x39, 0x4C}, {0x21, 0xC0}, {0x22, 0x3C}, {0x25, 0xC8}, {0x2C, 0xA4}, {0x29, 0x4C}, {0x31, 0x80}, {0x34, 0x0C},
|
{0x39, 0x4C}, {0x21, 0xC0}, {0x22, 0x3C}, {0x25, 0xC8}, {0x2C, 0xA4}, {0x29, 0x4C}, {0x31, 0x80}, {0x34, 0x0C},
|
||||||
{0x0A, 0x80}, {0x1F, 0x0C}, {0x06, 0xE0}, {0x0E, 0x1C}, {0x1C, 0x88}, {0x12, 0xA4}, {0x1E, 0x0C}, {0x0D, 0xA0},
|
{0x0A, 0x80}, {0x1F, 0x0C}, {0x06, 0xE0}, {0x0E, 0x1C}, {0x1C, 0x88}, {0x12, 0xA4}, {0x1E, 0x0C}, {0x0D, 0xA0},
|
||||||
{0x14, 0x0C}, {0x0A, 0x80}, {0x19, 0x4C}, {0x15, 0xA0}, {0x06, 0x3C}, {0x0F, 0x98}, {0x08, 0xEC}, {0x1B, 0x84},
|
{0x14, 0x0C}, {0x0A, 0x80}, {0x19, 0x4C}, {0x15, 0xA0}, {0x06, 0x3C}, {0x0F, 0x98}, {0x08, 0xEC}, {0x1B, 0x84},
|
||||||
{0x1E, 0x0C}, {0x04, 0xC0}, {0x01, 0x1C}, {0x0C, 0xA8}, {0x18, 0x84}, {0x1A, 0x0C}, {0x11, 0xA0}, {0x0B, 0x5C},
|
{0x1E, 0x0C}, {0x04, 0xC0}, {0x01, 0x1C}, {0x0C, 0xA8}, {0x18, 0x84}, {0x1A, 0x0C}, {0x11, 0xA0}, {0x0B, 0x5C},
|
||||||
{0x03, 0xE8}, {0x17, 0xA4}, {0x10, 0x0C}, {0x1D, 0xD0}, {0x0E, 0x04}, {0x07, 0x38}, {0x12, 0xA8}, {0x09, 0xC4},
|
{0x03, 0xE8}, {0x17, 0xA4}, {0x10, 0x0C}, {0x1D, 0xD0}, {0x0E, 0x04}, {0x07, 0x38}, {0x12, 0xA8}, {0x09, 0xC4},
|
||||||
{0x0D, 0x2C}, {0x1F, 0x90}, {0x16, 0x44}, {0x05, 0x18}, {0x13, 0xE8}, {0x1C, 0x84}, {0x02, 0x3C}, {0x00, 0x00}
|
{0x0D, 0x2C}, {0x1F, 0x90}, {0x16, 0x44}, {0x05, 0x18}, {0x13, 0xE8}, {0x1C, 0x84}, {0x02, 0x3C}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table skiltrek_data[64] = {
|
mpu4_chr_table skiltrek_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x1C}, {0x04, 0xCC}, {0x10, 0x64}, {0x18, 0x1C}, {0x0F, 0x4C}, {0x13, 0x64}, {0x1B, 0x1C},
|
{0x00, 0x00}, {0x1A, 0x1C}, {0x04, 0xCC}, {0x10, 0x64}, {0x18, 0x1C}, {0x0F, 0x4C}, {0x13, 0x64}, {0x1B, 0x1C},
|
||||||
{0x03, 0xEC}, {0x07, 0xE4}, {0x17, 0x0C}, {0x1D, 0xD4}, {0x36, 0x84}, {0x35, 0x0C}, {0x2B, 0x44}, {0x28, 0x2C},
|
{0x03, 0xEC}, {0x07, 0xE4}, {0x17, 0x0C}, {0x1D, 0xD4}, {0x36, 0x84}, {0x35, 0x0C}, {0x2B, 0x44}, {0x28, 0x2C},
|
||||||
{0x39, 0xD4}, {0x21, 0x14}, {0x22, 0x34}, {0x25, 0x14}, {0x2C, 0x24}, {0x29, 0x0C}, {0x31, 0x44}, {0x34, 0x0C},
|
{0x39, 0xD4}, {0x21, 0x14}, {0x22, 0x34}, {0x25, 0x14}, {0x2C, 0x24}, {0x29, 0x0C}, {0x31, 0x44}, {0x34, 0x0C},
|
||||||
{0x0A, 0x44}, {0x1F, 0x1C}, {0x06, 0xEC}, {0x0E, 0x54}, {0x1C, 0x04}, {0x12, 0x0C}, {0x1E, 0x54}, {0x0D, 0x24},
|
{0x0A, 0x44}, {0x1F, 0x1C}, {0x06, 0xEC}, {0x0E, 0x54}, {0x1C, 0x04}, {0x12, 0x0C}, {0x1E, 0x54}, {0x0D, 0x24},
|
||||||
{0x14, 0x0C}, {0x0A, 0x44}, {0x19, 0x9C}, {0x15, 0xEC}, {0x06, 0xE4}, {0x0F, 0x1C}, {0x08, 0x6C}, {0x1B, 0x54},
|
{0x14, 0x0C}, {0x0A, 0x44}, {0x19, 0x9C}, {0x15, 0xEC}, {0x06, 0xE4}, {0x0F, 0x1C}, {0x08, 0x6C}, {0x1B, 0x54},
|
||||||
{0x1E, 0x04}, {0x04, 0x1C}, {0x01, 0xC8}, {0x0C, 0x64}, {0x18, 0x1C}, {0x1A, 0x4C}, {0x11, 0x64}, {0x0B, 0x1C},
|
{0x1E, 0x04}, {0x04, 0x1C}, {0x01, 0xC8}, {0x0C, 0x64}, {0x18, 0x1C}, {0x1A, 0x4C}, {0x11, 0x64}, {0x0B, 0x1C},
|
||||||
{0x03, 0xEC}, {0x17, 0x64}, {0x10, 0x0C}, {0x1D, 0xD4}, {0x0E, 0x04}, {0x07, 0x3C}, {0x12, 0x6C}, {0x09, 0x44},
|
{0x03, 0xEC}, {0x17, 0x64}, {0x10, 0x0C}, {0x1D, 0xD4}, {0x0E, 0x04}, {0x07, 0x3C}, {0x12, 0x6C}, {0x09, 0x44},
|
||||||
{0x0D, 0x2C}, {0x1F, 0x54}, {0x16, 0x84}, {0x05, 0x1C}, {0x13, 0xEC}, {0x1C, 0x44}, {0x02, 0x3C}, {0x00, 0x00}
|
{0x0D, 0x2C}, {0x1F, 0x54}, {0x16, 0x84}, {0x05, 0x1C}, {0x13, 0xEC}, {0x1C, 0x44}, {0x02, 0x3C}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table timemchn_data[64] = {
|
mpu4_chr_table timemchn_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x2C}, {0x04, 0x94}, {0x10, 0x14}, {0x18, 0x04}, {0x0F, 0x0C}, {0x13, 0xC4}, {0x1B, 0x0C},
|
{0x00, 0x00}, {0x1A, 0x2C}, {0x04, 0x94}, {0x10, 0x14}, {0x18, 0x04}, {0x0F, 0x0C}, {0x13, 0xC4}, {0x1B, 0x0C},
|
||||||
{0x03, 0xD4}, {0x07, 0x64}, {0x17, 0x0C}, {0x1D, 0xB4}, {0x36, 0x04}, {0x35, 0x0C}, {0x2B, 0x84}, {0x28, 0x5C},
|
{0x03, 0xD4}, {0x07, 0x64}, {0x17, 0x0C}, {0x1D, 0xB4}, {0x36, 0x04}, {0x35, 0x0C}, {0x2B, 0x84}, {0x28, 0x5C},
|
||||||
{0x39, 0xDC}, {0x21, 0x9C}, {0x22, 0xDC}, {0x25, 0x9C}, {0x2C, 0xDC}, {0x29, 0xCC}, {0x31, 0x84}, {0x34, 0x0C},
|
{0x39, 0xDC}, {0x21, 0x9C}, {0x22, 0xDC}, {0x25, 0x9C}, {0x2C, 0xDC}, {0x29, 0xCC}, {0x31, 0x84}, {0x34, 0x0C},
|
||||||
{0x0A, 0x84}, {0x1F, 0x0C}, {0x06, 0xD4}, {0x0E, 0x04}, {0x1C, 0x2C}, {0x12, 0xC4}, {0x1E, 0x0C}, {0x0D, 0xC4},
|
{0x0A, 0x84}, {0x1F, 0x0C}, {0x06, 0xD4}, {0x0E, 0x04}, {0x1C, 0x2C}, {0x12, 0xC4}, {0x1E, 0x0C}, {0x0D, 0xC4},
|
||||||
{0x14, 0x0C}, {0x0A, 0x84}, {0x19, 0x1C}, {0x15, 0xDC}, {0x06, 0xDC}, {0x0F, 0x8C}, {0x08, 0xD4}, {0x1B, 0x44},
|
{0x14, 0x0C}, {0x0A, 0x84}, {0x19, 0x1C}, {0x15, 0xDC}, {0x06, 0xDC}, {0x0F, 0x8C}, {0x08, 0xD4}, {0x1B, 0x44},
|
||||||
{0x1E, 0x2C}, {0x04, 0x94}, {0x01, 0x20}, {0x0C, 0x0C}, {0x18, 0xA4}, {0x1A, 0x0C}, {0x11, 0xC4}, {0x0B, 0x0C},
|
{0x1E, 0x2C}, {0x04, 0x94}, {0x01, 0x20}, {0x0C, 0x0C}, {0x18, 0xA4}, {0x1A, 0x0C}, {0x11, 0xC4}, {0x0B, 0x0C},
|
||||||
{0x03, 0xD4}, {0x17, 0x14}, {0x10, 0x14}, {0x1D, 0x54}, {0x0E, 0x04}, {0x07, 0x6C}, {0x12, 0xC4}, {0x09, 0x4C},
|
{0x03, 0xD4}, {0x17, 0x14}, {0x10, 0x14}, {0x1D, 0x54}, {0x0E, 0x04}, {0x07, 0x6C}, {0x12, 0xC4}, {0x09, 0x4C},
|
||||||
{0x0D, 0xC4}, {0x1F, 0x0C}, {0x16, 0xC4}, {0x05, 0x2C}, {0x13, 0xC4}, {0x1C, 0x0C}, {0x02, 0xD4}, {0x00, 0x00}
|
{0x0D, 0xC4}, {0x1F, 0x0C}, {0x16, 0xC4}, {0x05, 0x2C}, {0x13, 0xC4}, {0x1C, 0x0C}, {0x02, 0xD4}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table strikeit_data[64] = {
|
mpu4_chr_table strikeit_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0xC4}, {0x04, 0xC4}, {0x10, 0x44}, {0x18, 0xC4}, {0x0F, 0x44}, {0x13, 0x44}, {0x1B, 0xC4},
|
{0x00, 0x00}, {0x1A, 0xC4}, {0x04, 0xC4}, {0x10, 0x44}, {0x18, 0xC4}, {0x0F, 0x44}, {0x13, 0x44}, {0x1B, 0xC4},
|
||||||
{0x03, 0xCC}, {0x07, 0x3C}, {0x17, 0x5C}, {0x1D, 0x7C}, {0x36, 0x54}, {0x35, 0x24}, {0x2B, 0xC4}, {0x28, 0x4C},
|
{0x03, 0xCC}, {0x07, 0x3C}, {0x17, 0x5C}, {0x1D, 0x7C}, {0x36, 0x54}, {0x35, 0x24}, {0x2B, 0xC4}, {0x28, 0x4C},
|
||||||
{0x39, 0xB4}, {0x21, 0x84}, {0x22, 0xCC}, {0x25, 0x34}, {0x2C, 0x04}, {0x29, 0x4C}, {0x31, 0x14}, {0x34, 0x24},
|
{0x39, 0xB4}, {0x21, 0x84}, {0x22, 0xCC}, {0x25, 0x34}, {0x2C, 0x04}, {0x29, 0x4C}, {0x31, 0x14}, {0x34, 0x24},
|
||||||
{0x0A, 0xC4}, {0x1F, 0x44}, {0x06, 0xCC}, {0x0E, 0x14}, {0x1C, 0x04}, {0x12, 0x44}, {0x1E, 0xC4}, {0x0D, 0x4C},
|
{0x0A, 0xC4}, {0x1F, 0x44}, {0x06, 0xCC}, {0x0E, 0x14}, {0x1C, 0x04}, {0x12, 0x44}, {0x1E, 0xC4}, {0x0D, 0x4C},
|
||||||
{0x14, 0x1C}, {0x0A, 0x54}, {0x19, 0x2C}, {0x15, 0x1C}, {0x06, 0x7C}, {0x0F, 0xD4}, {0x08, 0x0C}, {0x1B, 0x94},
|
{0x14, 0x1C}, {0x0A, 0x54}, {0x19, 0x2C}, {0x15, 0x1C}, {0x06, 0x7C}, {0x0F, 0xD4}, {0x08, 0x0C}, {0x1B, 0x94},
|
||||||
{0x1E, 0x04}, {0x04, 0xC4}, {0x01, 0xC0}, {0x0C, 0x4C}, {0x18, 0x94}, {0x1A, 0x04}, {0x11, 0x44}, {0x0B, 0x44},
|
{0x1E, 0x04}, {0x04, 0xC4}, {0x01, 0xC0}, {0x0C, 0x4C}, {0x18, 0x94}, {0x1A, 0x04}, {0x11, 0x44}, {0x0B, 0x44},
|
||||||
{0x03, 0xCC}, {0x17, 0x1C}, {0x10, 0x7C}, {0x1D, 0x7C}, {0x0E, 0xD4}, {0x07, 0x8C}, {0x12, 0x1C}, {0x09, 0x5C},
|
{0x03, 0xCC}, {0x17, 0x1C}, {0x10, 0x7C}, {0x1D, 0x7C}, {0x0E, 0xD4}, {0x07, 0x8C}, {0x12, 0x1C}, {0x09, 0x5C},
|
||||||
{0x0D, 0x5C}, {0x1F, 0x5C}, {0x16, 0x7C}, {0x05, 0x74}, {0x13, 0x04}, {0x1C, 0xC4}, {0x02, 0xCC}, {0x00, 0x00}
|
{0x0D, 0x5C}, {0x1F, 0x5C}, {0x16, 0x7C}, {0x05, 0x74}, {0x13, 0x04}, {0x1C, 0xC4}, {0x02, 0xCC}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table turnover_data[64] = {
|
mpu4_chr_table turnover_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x1C}, {0x04, 0x6C}, {0x10, 0xA4}, {0x18, 0x0C}, {0x0F, 0x24}, {0x13, 0x0C}, {0x1B, 0x34},
|
{0x00, 0x00}, {0x1A, 0x1C}, {0x04, 0x6C}, {0x10, 0xA4}, {0x18, 0x0C}, {0x0F, 0x24}, {0x13, 0x0C}, {0x1B, 0x34},
|
||||||
{0x03, 0x94}, {0x07, 0x94}, {0x17, 0x44}, {0x1D, 0x5C}, {0x36, 0x6C}, {0x35, 0x24}, {0x2B, 0x1C}, {0x28, 0xAC},
|
{0x03, 0x94}, {0x07, 0x94}, {0x17, 0x44}, {0x1D, 0x5C}, {0x36, 0x6C}, {0x35, 0x24}, {0x2B, 0x1C}, {0x28, 0xAC},
|
||||||
{0x39, 0x64}, {0x21, 0x1C}, {0x22, 0xEC}, {0x25, 0x64}, {0x2C, 0x0C}, {0x29, 0xA4}, {0x31, 0x0C}, {0x34, 0x24},
|
{0x39, 0x64}, {0x21, 0x1C}, {0x22, 0xEC}, {0x25, 0x64}, {0x2C, 0x0C}, {0x29, 0xA4}, {0x31, 0x0C}, {0x34, 0x24},
|
||||||
{0x0A, 0x1C}, {0x1F, 0xAC}, {0x06, 0xE4}, {0x0E, 0x1C}, {0x1C, 0x2C}, {0x12, 0xA4}, {0x1E, 0x0C}, {0x0D, 0xA4},
|
{0x0A, 0x1C}, {0x1F, 0xAC}, {0x06, 0xE4}, {0x0E, 0x1C}, {0x1C, 0x2C}, {0x12, 0xA4}, {0x1E, 0x0C}, {0x0D, 0xA4},
|
||||||
{0x14, 0x0C}, {0x0A, 0x24}, {0x19, 0x5C}, {0x15, 0xEC}, {0x06, 0xE4}, {0x0F, 0x1C}, {0x08, 0xAC}, {0x1B, 0x24},
|
{0x14, 0x0C}, {0x0A, 0x24}, {0x19, 0x5C}, {0x15, 0xEC}, {0x06, 0xE4}, {0x0F, 0x1C}, {0x08, 0xAC}, {0x1B, 0x24},
|
||||||
{0x1E, 0x1C}, {0x04, 0x6C}, {0x01, 0x60}, {0x0C, 0x0C}, {0x18, 0x34}, {0x1A, 0x04}, {0x11, 0x0C}, {0x0B, 0x24},
|
{0x1E, 0x1C}, {0x04, 0x6C}, {0x01, 0x60}, {0x0C, 0x0C}, {0x18, 0x34}, {0x1A, 0x04}, {0x11, 0x0C}, {0x0B, 0x24},
|
||||||
{0x03, 0x9C}, {0x17, 0xEC}, {0x10, 0xA4}, {0x1D, 0x4C}, {0x0E, 0x24}, {0x07, 0x9C}, {0x12, 0xEC}, {0x09, 0x24},
|
{0x03, 0x9C}, {0x17, 0xEC}, {0x10, 0xA4}, {0x1D, 0x4C}, {0x0E, 0x24}, {0x07, 0x9C}, {0x12, 0xEC}, {0x09, 0x24},
|
||||||
{0x0D, 0x0C}, {0x1F, 0x34}, {0x16, 0x04}, {0x05, 0x1C}, {0x13, 0xEC}, {0x1C, 0x24}, {0x02, 0x9C}, {0x00, 0x00}
|
{0x0D, 0x0C}, {0x1F, 0x34}, {0x16, 0x04}, {0x05, 0x1C}, {0x13, 0xEC}, {0x1C, 0x24}, {0x02, 0x9C}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table eyesdown_data[64] = {
|
mpu4_chr_table eyesdown_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x8C}, {0x04, 0x64}, {0x10, 0x0C}, {0x18, 0xC4}, {0x0F, 0x0C}, {0x13, 0x54}, {0x1B, 0x14},
|
{0x00, 0x00}, {0x1A, 0x8C}, {0x04, 0x64}, {0x10, 0x0C}, {0x18, 0xC4}, {0x0F, 0x0C}, {0x13, 0x54}, {0x1B, 0x14},
|
||||||
{0x03, 0x94}, {0x07, 0x94}, {0x17, 0x24}, {0x1D, 0xAC}, {0x36, 0x44}, {0x35, 0x0C}, {0x2B, 0x44}, {0x28, 0x1C},
|
{0x03, 0x94}, {0x07, 0x94}, {0x17, 0x24}, {0x1D, 0xAC}, {0x36, 0x44}, {0x35, 0x0C}, {0x2B, 0x44}, {0x28, 0x1C},
|
||||||
{0x39, 0x7C}, {0x21, 0x6C}, {0x22, 0x74}, {0x25, 0x84}, {0x2C, 0x3C}, {0x29, 0x4C}, {0x31, 0x44}, {0x34, 0x0C},
|
{0x39, 0x7C}, {0x21, 0x6C}, {0x22, 0x74}, {0x25, 0x84}, {0x2C, 0x3C}, {0x29, 0x4C}, {0x31, 0x44}, {0x34, 0x0C},
|
||||||
{0x0A, 0x44}, {0x1F, 0x8C}, {0x06, 0x74}, {0x0E, 0x84}, {0x1C, 0x0C}, {0x12, 0x54}, {0x1E, 0x04}, {0x0D, 0x1C},
|
{0x0A, 0x44}, {0x1F, 0x8C}, {0x06, 0x74}, {0x0E, 0x84}, {0x1C, 0x0C}, {0x12, 0x54}, {0x1E, 0x04}, {0x0D, 0x1C},
|
||||||
{0x14, 0x7C}, {0x0A, 0xCC}, {0x19, 0x64}, {0x15, 0x0C}, {0x06, 0x74}, {0x0F, 0x84}, {0x08, 0x3C}, {0x1B, 0x5C},
|
{0x14, 0x7C}, {0x0A, 0xCC}, {0x19, 0x64}, {0x15, 0x0C}, {0x06, 0x74}, {0x0F, 0x84}, {0x08, 0x3C}, {0x1B, 0x5C},
|
||||||
{0x1E, 0x4C}, {0x04, 0x64}, {0x01, 0x88}, {0x0C, 0x74}, {0x18, 0x04}, {0x1A, 0x8C}, {0x11, 0x54}, {0x0B, 0x04},
|
{0x1E, 0x4C}, {0x04, 0x64}, {0x01, 0x88}, {0x0C, 0x74}, {0x18, 0x04}, {0x1A, 0x8C}, {0x11, 0x54}, {0x0B, 0x04},
|
||||||
{0x03, 0x9C}, {0x17, 0x7C}, {0x10, 0x5C}, {0x1D, 0x7C}, {0x0E, 0xCC}, {0x07, 0x74}, {0x12, 0x04}, {0x09, 0x1C},
|
{0x03, 0x9C}, {0x17, 0x7C}, {0x10, 0x5C}, {0x1D, 0x7C}, {0x0E, 0xCC}, {0x07, 0x74}, {0x12, 0x04}, {0x09, 0x1C},
|
||||||
{0x0D, 0x5C}, {0x1F, 0x5C}, {0x16, 0x7C}, {0x05, 0x6C}, {0x13, 0x54}, {0x1C, 0x04}, {0x02, 0x9C}, {0x00, 0x00}
|
{0x0D, 0x5C}, {0x1F, 0x5C}, {0x16, 0x7C}, {0x05, 0x6C}, {0x13, 0x54}, {0x1C, 0x04}, {0x02, 0x9C}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
mpu4_chr_table quidgrid_data[64] = {
|
mpu4_chr_table quidgrid_data[64] = {
|
||||||
{0x00, 0x00}, {0x1A, 0x64}, {0x04, 0x64}, {0x10, 0x24}, {0x18, 0x64}, {0x0F, 0x64}, {0x13, 0x24}, {0x1B, 0x64},
|
{0x00, 0x00}, {0x1A, 0x64}, {0x04, 0x64}, {0x10, 0x24}, {0x18, 0x64}, {0x0F, 0x64}, {0x13, 0x24}, {0x1B, 0x64},
|
||||||
{0x03, 0x74}, {0x07, 0x54}, {0x17, 0x84}, {0x1D, 0xA4}, {0x36, 0x24}, {0x35, 0x24}, {0x2B, 0x64}, {0x28, 0x24},
|
{0x03, 0x74}, {0x07, 0x54}, {0x17, 0x84}, {0x1D, 0xA4}, {0x36, 0x24}, {0x35, 0x24}, {0x2B, 0x64}, {0x28, 0x24},
|
||||||
{0x39, 0xE4}, {0x21, 0x64}, {0x22, 0x74}, {0x25, 0x44}, {0x2C, 0x34}, {0x29, 0x04}, {0x31, 0x24}, {0x34, 0x24},
|
{0x39, 0xE4}, {0x21, 0x64}, {0x22, 0x74}, {0x25, 0x44}, {0x2C, 0x34}, {0x29, 0x04}, {0x31, 0x24}, {0x34, 0x24},
|
||||||
{0x0A, 0x64}, {0x1F, 0x64}, {0x06, 0x74}, {0x0E, 0x44}, {0x1C, 0x64}, {0x12, 0x24}, {0x1E, 0x64}, {0x0D, 0x24},
|
{0x0A, 0x64}, {0x1F, 0x64}, {0x06, 0x74}, {0x0E, 0x44}, {0x1C, 0x64}, {0x12, 0x24}, {0x1E, 0x64}, {0x0D, 0x24},
|
||||||
{0x14, 0x24}, {0x0A, 0x64}, {0x19, 0xE4}, {0x15, 0x24}, {0x06, 0x74}, {0x0F, 0x44}, {0x08, 0x34}, {0x1B, 0x14},
|
{0x14, 0x24}, {0x0A, 0x64}, {0x19, 0xE4}, {0x15, 0x24}, {0x06, 0x74}, {0x0F, 0x44}, {0x08, 0x34}, {0x1B, 0x14},
|
||||||
{0x1E, 0x04}, {0x04, 0x64}, {0x01, 0x60}, {0x0C, 0x24}, {0x18, 0x64}, {0x1A, 0x64}, {0x11, 0x24}, {0x0B, 0x64},
|
{0x1E, 0x04}, {0x04, 0x64}, {0x01, 0x60}, {0x0C, 0x24}, {0x18, 0x64}, {0x1A, 0x64}, {0x11, 0x24}, {0x0B, 0x64},
|
||||||
{0x03, 0x74}, {0x17, 0x04}, {0x10, 0x24}, {0x1D, 0xE4}, {0x0E, 0x64}, {0x07, 0x74}, {0x12, 0x04}, {0x09, 0x34},
|
{0x03, 0x74}, {0x17, 0x04}, {0x10, 0x24}, {0x1D, 0xE4}, {0x0E, 0x64}, {0x07, 0x74}, {0x12, 0x04}, {0x09, 0x34},
|
||||||
{0x0D, 0x04}, {0x1F, 0x64}, {0x16, 0x24}, {0x05, 0x64}, {0x13, 0x24}, {0x1C, 0x64}, {0x02, 0x74}, {0x00, 0x00}
|
{0x0D, 0x04}, {0x1F, 0x64}, {0x16, 0x24}, {0x05, 0x64}, {0x13, 0x24}, {0x1C, 0x64}, {0x02, 0x74}, {0x00, 0x00}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -2154,7 +2154,7 @@ ROM_END
|
|||||||
|
|
||||||
ROM_START( prizeinv )
|
ROM_START( prizeinv )
|
||||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||||
ROM_LOAD("in220mpu4.p1", 0x00000, 0x04000, CRC(75ff4b1f) SHA1(a3adaad9a91c30fe6ff42dc2003c34a199b28807) )
|
ROM_LOAD("in220mpu4.p1", 0x00000, 0x04000, CRC(75ff4b1f) SHA1(a3adaad9a91c30fe6ff42dc2003c34a199b28807) )
|
||||||
|
|
||||||
ROM_REGION( 0x800000, "video", 0 )
|
ROM_REGION( 0x800000, "video", 0 )
|
||||||
ROM_LOAD16_BYTE( "in2-20p1.1", 0x000000, 0x10000, CRC(f34d9001) SHA1(2bae06f4a5a5510b15b918261ecb0de9e34a6b53) )
|
ROM_LOAD16_BYTE( "in2-20p1.1", 0x000000, 0x10000, CRC(f34d9001) SHA1(2bae06f4a5a5510b15b918261ecb0de9e34a6b53) )
|
||||||
@ -2165,7 +2165,7 @@ ROM_END
|
|||||||
|
|
||||||
ROM_START( blox )
|
ROM_START( blox )
|
||||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||||
ROM_LOAD("blxv___2.0_0", 0x00000, 0x04000, CRC(b399b85e) SHA1(d36391fee4e3126754d6a0fa5f52fe05bc676930) )
|
ROM_LOAD("blxv___2.0_0", 0x00000, 0x04000, CRC(b399b85e) SHA1(d36391fee4e3126754d6a0fa5f52fe05bc676930) )
|
||||||
|
|
||||||
ROM_REGION( 0x800000, "video", 0 )
|
ROM_REGION( 0x800000, "video", 0 )
|
||||||
ROM_LOAD16_BYTE( "blxv___2.0_1", 0x000000, 0x10000, CRC(68134eda) SHA1(b324ae1243164c7be7f5eced7ff93760e2176a4e) )
|
ROM_LOAD16_BYTE( "blxv___2.0_1", 0x000000, 0x10000, CRC(68134eda) SHA1(b324ae1243164c7be7f5eced7ff93760e2176a4e) )
|
||||||
@ -2178,7 +2178,7 @@ ROM_END
|
|||||||
|
|
||||||
ROM_START( bloxd )
|
ROM_START( bloxd )
|
||||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||||
ROM_LOAD("blxv_d_2.0_0", 0x00000, 0x04000, CRC(2e0891e1) SHA1(3e8ffd0d41227a8a1e311ca0c0bde7590e06dfbd) )
|
ROM_LOAD("blxv_d_2.0_0", 0x00000, 0x04000, CRC(2e0891e1) SHA1(3e8ffd0d41227a8a1e311ca0c0bde7590e06dfbd) )
|
||||||
|
|
||||||
ROM_REGION( 0x800000, "video", 0 )
|
ROM_REGION( 0x800000, "video", 0 )
|
||||||
ROM_LOAD16_BYTE( "blxv___2.0_1", 0x000000, 0x10000, CRC(68134eda) SHA1(b324ae1243164c7be7f5eced7ff93760e2176a4e) )
|
ROM_LOAD16_BYTE( "blxv___2.0_1", 0x000000, 0x10000, CRC(68134eda) SHA1(b324ae1243164c7be7f5eced7ff93760e2176a4e) )
|
||||||
|
@ -121,7 +121,7 @@ static WRITE16_HANDLER( playmark_snd_command_w )
|
|||||||
{
|
{
|
||||||
playmark_state *state = (playmark_state *)space->machine->driver_data;
|
playmark_state *state = (playmark_state *)space->machine->driver_data;
|
||||||
|
|
||||||
if (ACCESSING_BITS_0_7)
|
if (ACCESSING_BITS_0_7)
|
||||||
{
|
{
|
||||||
state->snd_command = (data & 0xff);
|
state->snd_command = (data & 0xff);
|
||||||
state->snd_flag = 1;
|
state->snd_flag = 1;
|
||||||
@ -134,12 +134,12 @@ static READ8_HANDLER( playmark_snd_command_r )
|
|||||||
playmark_state *state = (playmark_state *)space->machine->driver_data;
|
playmark_state *state = (playmark_state *)space->machine->driver_data;
|
||||||
int data = 0;
|
int data = 0;
|
||||||
|
|
||||||
if ((state->oki_control & 0x38) == 0x30)
|
if ((state->oki_control & 0x38) == 0x30)
|
||||||
{
|
{
|
||||||
data = state->snd_command;
|
data = state->snd_command;
|
||||||
// logerror("PC$%03x PortB reading %02x from the 68K\n", cpu_get_previouspc(space->cpu), data);
|
// logerror("PC$%03x PortB reading %02x from the 68K\n", cpu_get_previouspc(space->cpu), data);
|
||||||
}
|
}
|
||||||
else if ((state->oki_control & 0x38) == 0x28)
|
else if ((state->oki_control & 0x38) == 0x28)
|
||||||
{
|
{
|
||||||
data = (okim6295_r(state->oki, 0) & 0x0f);
|
data = (okim6295_r(state->oki, 0) & 0x0f);
|
||||||
// logerror("PC$%03x PortB reading %02x from the OKI status port\n", cpu_get_previouspc(space->cpu), data);
|
// logerror("PC$%03x PortB reading %02x from the OKI status port\n", cpu_get_previouspc(space->cpu), data);
|
||||||
@ -152,7 +152,7 @@ static READ8_HANDLER( playmark_snd_flag_r )
|
|||||||
{
|
{
|
||||||
playmark_state *state = (playmark_state *)space->machine->driver_data;
|
playmark_state *state = (playmark_state *)space->machine->driver_data;
|
||||||
|
|
||||||
if (state->snd_flag)
|
if (state->snd_flag)
|
||||||
{
|
{
|
||||||
state->snd_flag = 0;
|
state->snd_flag = 0;
|
||||||
return 0x00;
|
return 0x00;
|
||||||
@ -1490,13 +1490,13 @@ static DRIVER_INIT( bigtwin )
|
|||||||
{
|
{
|
||||||
data_hi = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 0]));
|
data_hi = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 0]));
|
||||||
data_lo = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 1]));
|
data_lo = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 1]));
|
||||||
if ((data_hi <= 0x0f) && (data_lo <= 0x0f))
|
if ((data_hi <= 0x0f) && (data_lo <= 0x0f))
|
||||||
{
|
{
|
||||||
data = (data_hi << 4) | (data_lo << 0);
|
data = (data_hi << 4) | (data_lo << 0);
|
||||||
data_hi = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 2]));
|
data_hi = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 2]));
|
||||||
data_lo = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 3]));
|
data_lo = playmark_asciitohex((playmark_PICROM_HEX[src_pos + offs + 3]));
|
||||||
|
|
||||||
if ((data_hi <= 0x0f) && (data_lo <= 0x0f))
|
if ((data_hi <= 0x0f) && (data_lo <= 0x0f))
|
||||||
{
|
{
|
||||||
data |= (data_hi << 12) | (data_lo << 8);
|
data |= (data_hi << 12) | (data_lo << 8);
|
||||||
playmark_PICROM[dst_pos] = data;
|
playmark_PICROM[dst_pos] = data;
|
||||||
|
@ -381,7 +381,7 @@ static TILE_GET_INFO( powerbal_get_bg_tile_info )
|
|||||||
int code = (state->videoram1[tile_index] & 0x07ff) + state->tilebank * 0x800;
|
int code = (state->videoram1[tile_index] & 0x07ff) + state->tilebank * 0x800;
|
||||||
int colr = state->videoram1[tile_index] & 0xf000;
|
int colr = state->videoram1[tile_index] & 0xf000;
|
||||||
|
|
||||||
if (state->videoram1[tile_index] & 0x800)
|
if (state->videoram1[tile_index] & 0x800)
|
||||||
code |= 0x8000;
|
code |= 0x8000;
|
||||||
|
|
||||||
SET_TILE_INFO(1, code, colr >> 12, 0);
|
SET_TILE_INFO(1, code, colr >> 12, 0);
|
||||||
@ -399,7 +399,7 @@ static void draw_sprites( running_machine *machine, bitmap_t *bitmap, const rect
|
|||||||
int sx, sy, code, color, flipx;
|
int sx, sy, code, color, flipx;
|
||||||
|
|
||||||
sy = spriteram[offs + 3 - 4]; /* typical Playmark style... */
|
sy = spriteram[offs + 3 - 4]; /* typical Playmark style... */
|
||||||
if (sy & 0x8000)
|
if (sy & 0x8000)
|
||||||
return; /* end of list marker */
|
return; /* end of list marker */
|
||||||
|
|
||||||
flipx = sy & 0x4000;
|
flipx = sy & 0x4000;
|
||||||
|
@ -54,12 +54,12 @@ static READ16_HANDLER( pushman_68705_r )
|
|||||||
if (offset == 0)
|
if (offset == 0)
|
||||||
return state->latch;
|
return state->latch;
|
||||||
|
|
||||||
if (offset == 3 && state->new_latch)
|
if (offset == 3 && state->new_latch)
|
||||||
{
|
{
|
||||||
state->new_latch = 0;
|
state->new_latch = 0;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (offset == 3 && !state->new_latch)
|
if (offset == 3 && !state->new_latch)
|
||||||
return 0xff;
|
return 0xff;
|
||||||
|
|
||||||
return (state->shared_ram[2 * offset + 1] << 8) + state->shared_ram[2 * offset];
|
return (state->shared_ram[2 * offset + 1] << 8) + state->shared_ram[2 * offset];
|
||||||
|
@ -33,7 +33,7 @@ public:
|
|||||||
UINT16 * tilemap_regs;
|
UINT16 * tilemap_regs;
|
||||||
UINT16 * video_regs;
|
UINT16 * video_regs;
|
||||||
UINT16 * spriteram;
|
UINT16 * spriteram;
|
||||||
// UINT16 * paletteram; // currently this uses generic palette handling
|
// UINT16 * paletteram; // currently this uses generic palette handling
|
||||||
|
|
||||||
/* video-related */
|
/* video-related */
|
||||||
tilemap_t *mid_tilemap, *txt_tilemap;
|
tilemap_t *mid_tilemap, *txt_tilemap;
|
||||||
|
@ -868,7 +868,7 @@ WRITE8_HANDLER( subsino_out_c_w )
|
|||||||
tilemap_mark_all_tiles_dirty (reel1_tilemap);
|
tilemap_mark_all_tiles_dirty (reel1_tilemap);
|
||||||
tilemap_mark_all_tiles_dirty (reel2_tilemap);
|
tilemap_mark_all_tiles_dirty (reel2_tilemap);
|
||||||
tilemap_mark_all_tiles_dirty (reel3_tilemap);
|
tilemap_mark_all_tiles_dirty (reel3_tilemap);
|
||||||
// popmessage("data %02x\n",data);
|
// popmessage("data %02x\n",data);
|
||||||
}
|
}
|
||||||
|
|
||||||
static ADDRESS_MAP_START( tisub_map, ADDRESS_SPACE_PROGRAM, 8 )
|
static ADDRESS_MAP_START( tisub_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||||
@ -1025,7 +1025,7 @@ static ADDRESS_MAP_START( stisub_map, ADDRESS_SPACE_PROGRAM, 8 )
|
|||||||
|
|
||||||
AM_RANGE( 0x0d016, 0x0d017 ) AM_DEVWRITE( "ymsnd", ym3812_w )
|
AM_RANGE( 0x0d016, 0x0d017 ) AM_DEVWRITE( "ymsnd", ym3812_w )
|
||||||
|
|
||||||
// AM_RANGE( 0x0d01b, 0x0d01b ) AM_WRITE( subsino_tiles_offset_w )
|
// AM_RANGE( 0x0d01b, 0x0d01b ) AM_WRITE( subsino_tiles_offset_w )
|
||||||
|
|
||||||
AM_RANGE( 0x0e000, 0x0e7ff ) AM_RAM_WRITE( subsino_colorram_w ) AM_BASE( &colorram )
|
AM_RANGE( 0x0e000, 0x0e7ff ) AM_RAM_WRITE( subsino_colorram_w ) AM_BASE( &colorram )
|
||||||
AM_RANGE( 0x0e800, 0x0efff ) AM_RAM_WRITE( subsino_videoram_w ) AM_BASE( &videoram )
|
AM_RANGE( 0x0e800, 0x0efff ) AM_RAM_WRITE( subsino_videoram_w ) AM_BASE( &videoram )
|
||||||
@ -1504,12 +1504,12 @@ static INPUT_PORTS_START( stisub )
|
|||||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||||
|
|
||||||
/*
|
/*
|
||||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1")
|
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1")
|
||||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Big")
|
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Big")
|
||||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Small")
|
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Small")
|
||||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_POKER_BET ) PORT_IMPULSE(3)
|
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_POKER_BET ) PORT_IMPULSE(3)
|
||||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
*/
|
*/
|
||||||
|
|
||||||
PORT_START("INA")
|
PORT_START("INA")
|
||||||
|
@ -957,11 +957,11 @@ static INPUT_PORTS_START( rbibb )
|
|||||||
PORT_DIPSETTING( 0x00, "RP2C04-0001" )
|
PORT_DIPSETTING( 0x00, "RP2C04-0001" )
|
||||||
PORT_DIPSETTING( 0x20, "RP2C03" )
|
PORT_DIPSETTING( 0x20, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x40, "RP2C04-0002" )
|
PORT_DIPSETTING( 0x40, "RP2C04-0002" )
|
||||||
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x80, "RP2C04-0003" )
|
PORT_DIPSETTING( 0x80, "RP2C04-0003" )
|
||||||
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0xc0, "RP2C04-0004" )
|
PORT_DIPSETTING( 0xc0, "RP2C04-0004" )
|
||||||
// PORT_DIPSETTING( 0xe0, "RP2C03" )
|
// PORT_DIPSETTING( 0xe0, "RP2C03" )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
static INPUT_PORTS_START( btlecity )
|
static INPUT_PORTS_START( btlecity )
|
||||||
@ -1399,11 +1399,11 @@ static INPUT_PORTS_START( vstetris )
|
|||||||
PORT_DIPSETTING( 0x00, "RP2C04-0001" )
|
PORT_DIPSETTING( 0x00, "RP2C04-0001" )
|
||||||
PORT_DIPSETTING( 0x20, "RP2C03" )
|
PORT_DIPSETTING( 0x20, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x40, "RP2C04-0002" )
|
PORT_DIPSETTING( 0x40, "RP2C04-0002" )
|
||||||
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x80, "RP2C04-0003" )
|
PORT_DIPSETTING( 0x80, "RP2C04-0003" )
|
||||||
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0xc0, "RP2C04-0004" )
|
PORT_DIPSETTING( 0xc0, "RP2C04-0004" )
|
||||||
// PORT_DIPSETTING( 0xe0, "RP2C03" )
|
// PORT_DIPSETTING( 0xe0, "RP2C03" )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
/* P2 Start is a different bit */
|
/* P2 Start is a different bit */
|
||||||
@ -1434,11 +1434,11 @@ static INPUT_PORTS_START( vsskykid )
|
|||||||
PORT_DIPSETTING( 0x00, "RP2C04-0001" )
|
PORT_DIPSETTING( 0x00, "RP2C04-0001" )
|
||||||
PORT_DIPSETTING( 0x20, "RP2C03" )
|
PORT_DIPSETTING( 0x20, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x40, "RP2C04-0002" )
|
PORT_DIPSETTING( 0x40, "RP2C04-0002" )
|
||||||
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x80, "RP2C04-0003" )
|
PORT_DIPSETTING( 0x80, "RP2C04-0003" )
|
||||||
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0xc0, "RP2C04-0004" )
|
PORT_DIPSETTING( 0xc0, "RP2C04-0004" )
|
||||||
// PORT_DIPSETTING( 0xe0, "RP2C03" )
|
// PORT_DIPSETTING( 0xe0, "RP2C03" )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
static INPUT_PORTS_START( vspinbal )
|
static INPUT_PORTS_START( vspinbal )
|
||||||
@ -1622,11 +1622,11 @@ static INPUT_PORTS_START( starlstr )
|
|||||||
PORT_DIPNAME( 0xe0, 0x00, "PPU Type" )
|
PORT_DIPNAME( 0xe0, 0x00, "PPU Type" )
|
||||||
PORT_DIPSETTING( 0x00, "RP2C03" )
|
PORT_DIPSETTING( 0x00, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x20, "RP2C04-0001" )
|
PORT_DIPSETTING( 0x20, "RP2C04-0001" )
|
||||||
// PORT_DIPSETTING( 0x40, "RP2C03" )
|
// PORT_DIPSETTING( 0x40, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0x60, "RP2C04-0002" )
|
PORT_DIPSETTING( 0x60, "RP2C04-0002" )
|
||||||
// PORT_DIPSETTING( 0x80, "RP2C03" )
|
// PORT_DIPSETTING( 0x80, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0xa0, "RP2C04-0003" )
|
PORT_DIPSETTING( 0xa0, "RP2C04-0003" )
|
||||||
// PORT_DIPSETTING( 0xc0, "RP2C03" )
|
// PORT_DIPSETTING( 0xc0, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0xe0, "RP2C04-0004" )
|
PORT_DIPSETTING( 0xe0, "RP2C04-0004" )
|
||||||
|
|
||||||
PORT_START("DSW1") /* no DSW1? */
|
PORT_START("DSW1") /* no DSW1? */
|
||||||
@ -1658,12 +1658,12 @@ static INPUT_PORTS_START( tkoboxng )
|
|||||||
PORT_DIPSETTING( 0x10, DEF_STR( On ) )
|
PORT_DIPSETTING( 0x10, DEF_STR( On ) )
|
||||||
PORT_DIPNAME( 0xe0, 0x00, "PPU Type" )
|
PORT_DIPNAME( 0xe0, 0x00, "PPU Type" )
|
||||||
PORT_DIPSETTING( 0x00, "RP2C04-0003" )
|
PORT_DIPSETTING( 0x00, "RP2C04-0003" )
|
||||||
// PORT_DIPSETTING( 0x20, "RP2C03" )
|
// PORT_DIPSETTING( 0x20, "RP2C03" )
|
||||||
// PORT_DIPSETTING( 0x40, "RP2C03" )
|
// PORT_DIPSETTING( 0x40, "RP2C03" )
|
||||||
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
// PORT_DIPSETTING( 0x60, "RP2C03" )
|
||||||
// PORT_DIPSETTING( 0x80, "RP2C03" )
|
// PORT_DIPSETTING( 0x80, "RP2C03" )
|
||||||
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
// PORT_DIPSETTING( 0xa0, "RP2C03" )
|
||||||
// PORT_DIPSETTING( 0xc0, "RP2C03" )
|
// PORT_DIPSETTING( 0xc0, "RP2C03" )
|
||||||
PORT_DIPSETTING( 0xe0, "RP2C03" )
|
PORT_DIPSETTING( 0xe0, "RP2C03" )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ public:
|
|||||||
UINT16 * videoram3;
|
UINT16 * videoram3;
|
||||||
UINT16 * rowscroll;
|
UINT16 * rowscroll;
|
||||||
UINT16 * spriteram;
|
UINT16 * spriteram;
|
||||||
// UINT16 * paletteram; // currently this uses generic palette handling
|
// UINT16 * paletteram; // currently this uses generic palette handling
|
||||||
size_t spriteram_size;
|
size_t spriteram_size;
|
||||||
|
|
||||||
/* video-related */
|
/* video-related */
|
||||||
|
@ -14,7 +14,7 @@ public:
|
|||||||
/* memory pointers */
|
/* memory pointers */
|
||||||
UINT16 * videoram;
|
UINT16 * videoram;
|
||||||
UINT16 * spriteram;
|
UINT16 * spriteram;
|
||||||
// UINT16 * paletteram; // currently this uses generic palette handling
|
// UINT16 * paletteram; // currently this uses generic palette handling
|
||||||
|
|
||||||
/* video-related */
|
/* video-related */
|
||||||
tilemap_t *bg_tilemap, *tx_tilemap;
|
tilemap_t *bg_tilemap, *tx_tilemap;
|
||||||
|
@ -242,7 +242,7 @@ static const naomibd_config_table naomibd_translate_tbl[] =
|
|||||||
{ "alpiltdx", 0, 0x70e41, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
{ "alpiltdx", 0, 0x70e41, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
||||||
{ "capsnk", 0, 0, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
{ "capsnk", 0, 0, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
||||||
{ "capsnka", 0, 0, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
{ "capsnka", 0, 0, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
||||||
{ "crackndj", 0, 0xc2347, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
{ "crackndj", 0, 0xc2347, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
||||||
{ "crzytaxi", 0, 0xd2f45, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
{ "crzytaxi", 0, 0xd2f45, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
||||||
{ "csmash", 1, 0x03347, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
{ "csmash", 1, 0x03347, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
||||||
{ "csmasho", 1, 0x03347, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
{ "csmasho", 1, 0x03347, { 0, 0, 0, 0xffffffff, 0xffffffff, 0xffffffff } },
|
||||||
|
@ -572,7 +572,7 @@ WRITE8_HANDLER( snes_w_io )
|
|||||||
// APU is mirrored from 2140 to 217f
|
// APU is mirrored from 2140 to 217f
|
||||||
if (offset >= APU00 && offset < WMDATA)
|
if (offset >= APU00 && offset < WMDATA)
|
||||||
{
|
{
|
||||||
// printf("816: %02x to APU @ %d (PC=%06x)\n", data, offset & 3,cpu_get_pc(space->cpu));
|
// printf("816: %02x to APU @ %d (PC=%06x)\n", data, offset & 3,cpu_get_pc(space->cpu));
|
||||||
spc_port_in(state->spc700, offset & 0x3, data);
|
spc_port_in(state->spc700, offset & 0x3, data);
|
||||||
cpuexec_boost_interleave(space->machine, attotime_zero, ATTOTIME_IN_USEC(20));
|
cpuexec_boost_interleave(space->machine, attotime_zero, ATTOTIME_IN_USEC(20));
|
||||||
return;
|
return;
|
||||||
@ -2200,7 +2200,7 @@ static void snes_dma( const address_space *space, UINT8 channels )
|
|||||||
/* Number of bytes to transfer */
|
/* Number of bytes to transfer */
|
||||||
length = state->dma_channel[i].trans_size;
|
length = state->dma_channel[i].trans_size;
|
||||||
|
|
||||||
// printf( "DMA-Ch %d: len: %X, abus: %X, bbus: %X, incr: %d, dir: %s, type: %d\n", i, length, abus | abus_bank, bbus, increment, state->dma_channel[i].dmap & 0x80 ? "PPU->CPU" : "CPU->PPU", state->dma_channel[i].dmap & 0x07);
|
// printf( "DMA-Ch %d: len: %X, abus: %X, bbus: %X, incr: %d, dir: %s, type: %d\n", i, length, abus | abus_bank, bbus, increment, state->dma_channel[i].dmap & 0x80 ? "PPU->CPU" : "CPU->PPU", state->dma_channel[i].dmap & 0x07);
|
||||||
|
|
||||||
#ifdef SNES_DBG_DMA
|
#ifdef SNES_DBG_DMA
|
||||||
mame_printf_debug( "DMA-Ch %d: len: %X, abus: %X, bbus: %X, incr: %d, dir: %s, type: %d\n", i, length, abus | abus_bank, bbus, increment, state->dma_channel[i].dmap & 0x80 ? "PPU->CPU" : "CPU->PPU", state->dma_channel[i].dmap & 0x07);
|
mame_printf_debug( "DMA-Ch %d: len: %X, abus: %X, bbus: %X, incr: %d, dir: %s, type: %d\n", i, length, abus | abus_bank, bbus, increment, state->dma_channel[i].dmap & 0x80 ? "PPU->CPU" : "CPU->PPU", state->dma_channel[i].dmap & 0x07);
|
||||||
|
@ -2232,7 +2232,7 @@ static void pvr_drawframebuffer(bitmap_t *bitmap,const rectangle *cliprect)
|
|||||||
xi=((pvrta_regs[FB_R_SIZE] & 0x3ff)+1) << 1;
|
xi=((pvrta_regs[FB_R_SIZE] & 0x3ff)+1) << 1;
|
||||||
dy=((pvrta_regs[FB_R_SIZE] >> 10) & 0x3ff)+1;
|
dy=((pvrta_regs[FB_R_SIZE] >> 10) & 0x3ff)+1;
|
||||||
|
|
||||||
// dy++;
|
// dy++;
|
||||||
dy*=2; // probably depends on interlace mode, fields etc...
|
dy*=2; // probably depends on interlace mode, fields etc...
|
||||||
|
|
||||||
switch (unpackmode)
|
switch (unpackmode)
|
||||||
|
@ -92,7 +92,7 @@
|
|||||||
- A custom 40-pin GFX IC
|
- A custom 40-pin GFX IC
|
||||||
- 2x HYxxx devices (TAB blue PCB).
|
- 2x HYxxx devices (TAB blue PCB).
|
||||||
- A little board with 4x 74LS138 or 74LS137 (Impera green PCB).
|
- A little board with 4x 74LS138 or 74LS137 (Impera green PCB).
|
||||||
|
|
||||||
NOTE: The 74LS374 could be replaced by a 74HCT373.
|
NOTE: The 74LS374 could be replaced by a 74HCT373.
|
||||||
|
|
||||||
***********************************************************************************/
|
***********************************************************************************/
|
||||||
|
@ -159,7 +159,7 @@ READ8_DEVICE_HANDLER( ppu2c0x_r );
|
|||||||
|
|
||||||
#define MDRV_PPU2C05_04_ADD(_tag, _intrf) \
|
#define MDRV_PPU2C05_04_ADD(_tag, _intrf) \
|
||||||
MDRV_DEVICE_ADD(_tag, PPU_2C05_04, 0) \
|
MDRV_DEVICE_ADD(_tag, PPU_2C05_04, 0) \
|
||||||
MDRV_DEVICE_CONFIG(_intrf)
|
MDRV_DEVICE_CONFIG(_intrf)
|
||||||
|
|
||||||
#define MDRV_PPU2C07_ADD(_tag, _intrf) \
|
#define MDRV_PPU2C07_ADD(_tag, _intrf) \
|
||||||
MDRV_DEVICE_ADD(_tag, PPU_2C07, 0) \
|
MDRV_DEVICE_ADD(_tag, PPU_2C07, 0) \
|
||||||
|
@ -95,9 +95,9 @@ static void draw_sprites( running_machine *machine, bitmap_t *bitmap, const rect
|
|||||||
{
|
{
|
||||||
/* Don't draw empty sprite table entries */
|
/* Don't draw empty sprite table entries */
|
||||||
x = spriteram[offs + 3] & 0x1ff;
|
x = spriteram[offs + 3] & 0x1ff;
|
||||||
if (x == 0x180)
|
if (x == 0x180)
|
||||||
continue;
|
continue;
|
||||||
if (x > 0xff)
|
if (x > 0xff)
|
||||||
x = 0 - (0x200 - x);
|
x = 0 - (0x200 - x);
|
||||||
|
|
||||||
y = 240 - spriteram[offs + 2];
|
y = 240 - spriteram[offs + 2];
|
||||||
|
@ -10,4 +10,4 @@
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
extern const char build_version[];
|
extern const char build_version[];
|
||||||
const char build_version[] = "0.137u2 ("__DATE__")";
|
const char build_version[] = "0.137u3 ("__DATE__")";
|
||||||
|
Loading…
Reference in New Issue
Block a user