Cleanups and version bump.

This commit is contained in:
Aaron Giles 2008-08-14 08:05:35 +00:00
parent 2e7d262931
commit 224eb1f58b
86 changed files with 511 additions and 511 deletions

View File

@ -229,15 +229,15 @@ const char *format_int(astring *string, UINT64 value, int format)
case XML_INT_FORMAT_DECIMAL:
astring_printf(string, "%d", (UINT32)value);
break;
case XML_INT_FORMAT_DECIMAL_POUND:
astring_printf(string, "#%d", (UINT32)value);
break;
case XML_INT_FORMAT_HEX_DOLLAR:
astring_printf(string, "$%X", (UINT32)value);
break;
case XML_INT_FORMAT_HEX_C:
astring_printf(string, "0x%X", (UINT32)value);
break;
@ -277,7 +277,7 @@ void cheat_init(running_machine *machine)
cheat_list_save("output", cheatinfo->cheatlist);
/* we rely on the debugger expression callbacks; if the debugger isn't
enabled, we must jumpstart them manually */
enabled, we must jumpstart them manually */
if ((machine->debug_flags & DEBUG_FLAG_ENABLED) == 0)
debug_cpu_init(machine);
}
@ -354,7 +354,7 @@ void *cheat_get_next_menu_entry(running_machine *machine, void *previous, const
/* description is standard */
if (description != NULL)
*description = astring_c(cheat->description);
/* some cheat entries are just text for display */
if (cheat->parameter == NULL && cheat->script[SCRIPT_STATE_RUN] == NULL && cheat->script[SCRIPT_STATE_OFF] == NULL && cheat->script[SCRIPT_STATE_ON] == NULL)
{
@ -987,7 +987,7 @@ static void cheat_entry_save(mame_file *cheatfile, const cheat_entry *cheat)
{
script_state state;
int scriptcount;
/* count the scripts */
scriptcount = 0;
for (state = SCRIPT_STATE_OFF; state < SCRIPT_STATE_COUNT; state++)
@ -1133,7 +1133,7 @@ error:
static void cheat_parameter_save(mame_file *cheatfile, const cheat_parameter *param)
{
astring *string = astring_alloc();
/* output the parameter tag */
mame_fprintf(cheatfile, "\t\t<parameter");

View File

@ -1287,7 +1287,7 @@ static void read_track_data(laserdisc_state *ld)
ld->videotarget.height /= 2;
ld->videotarget.rowpixels *= 2;
ld->avconfig.video = &ld->videotarget;
/* set the audio target information */
if (ld->audiobufin + ld->audiomaxsamples <= ld->audiobufsize)
{
@ -1301,7 +1301,7 @@ static void read_track_data(laserdisc_state *ld)
ld->avconfig.audio[0] = &ld->audiobuffer[0][0];
ld->avconfig.audio[1] = &ld->audiobuffer[1][0];
}
/* override if we're not decoding */
ld->avconfig.maxsamples = ld->audiomaxsamples;
ld->avconfig.actsamples = &ld->audiocursamples;
@ -1372,7 +1372,7 @@ static void process_track_data(const device_config *device)
ld->videofields[ld->videoindex]++;
ld->videoframenum[ld->videoindex] = ld->last_frame;
}
/* pass the audio to the callback */
if (ld->audiocallback != NULL)
(*ld->audiocallback)(device, ld->samplerate, ld->audiocursamples, ld->avconfig.audio[0], ld->avconfig.audio[1]);
@ -1381,24 +1381,24 @@ static void process_track_data(const device_config *device)
if (ld->audiocursamples != 0 && ld->audiobufin != 0)
{
int chnum;
/* iterate over channels */
for (chnum = 0; chnum < 2; chnum++)
if (ld->avconfig.audio[chnum] == &ld->audiobuffer[chnum][0])
{
int samplesleft;
/* move data to the end */
samplesleft = ld->audiobufsize - ld->audiobufin;
samplesleft = MIN(samplesleft, ld->audiocursamples);
memmove(&ld->audiobuffer[chnum][ld->audiobufin], &ld->audiobuffer[chnum][0], samplesleft * 2);
/* shift data at the beginning */
if (samplesleft < ld->audiocursamples)
memmove(&ld->audiobuffer[chnum][0], &ld->audiobuffer[chnum][samplesleft], (ld->audiocursamples - samplesleft) * 2);
}
}
/* update the input buffer pointer */
ld->audiobufin = (ld->audiobufin + ld->audiocursamples) % ld->audiobufsize;
}

View File

@ -1,5 +1,5 @@
#pragma once
#ifndef __262INTF_H__
#define __262INTF_H__

View File

@ -69,7 +69,7 @@ static void process_commands(const device_config *laserdisc)
static const UINT8 digits[10] = { 0x3f, 0x0f, 0x8f, 0x4f, 0x2f, 0xaf, 0x6f, 0x1f, 0x9f, 0x5f };
input_port_value controls = input_port_read(laserdisc->machine, "controls");
int number;
/* scan/step backwards */
if (!(last_controls & 0x01) && (controls & 0x01))
{
@ -83,7 +83,7 @@ static void process_commands(const device_config *laserdisc)
if (playing)
laserdisc_data_w(laserdisc, 0xfd);
}
/* scan/step forwards */
if (!(last_controls & 0x02) && (controls & 0x02))
{
@ -97,14 +97,14 @@ static void process_commands(const device_config *laserdisc)
if (playing)
laserdisc_data_w(laserdisc, 0xfd);
}
/* play/pause */
if (!(last_controls & 0x10) && (controls & 0x10))
{
playing = !playing;
laserdisc_data_w(laserdisc, playing ? 0xfd : 0xa0);
}
/* toggle display */
if (!(last_controls & 0x20) && (controls & 0x20))
{
@ -112,19 +112,19 @@ static void process_commands(const device_config *laserdisc)
laserdisc_data_w(laserdisc, digits[displaying]);
laserdisc_data_w(laserdisc, 0xf1);
}
/* numbers */
for (number = 0; number < 10; number++)
if (!(last_controls & (0x100 << number)) && (controls & (0x100 << number)))
laserdisc_data_w(laserdisc, digits[number]);
/* enter */
if (!(last_controls & 0x40000) && (controls & 0x40000))
{
playing = FALSE;
laserdisc_data_w(laserdisc, 0xf7);
}
last_controls = controls;
}
@ -134,14 +134,14 @@ static TIMER_CALLBACK( vsync_update )
const device_config *laserdisc = device_list_first(machine->config->devicelist, LASERDISC);
int vblank_scanline;
attotime target;
/* handle commands */
if (!param)
process_commands(laserdisc);
/* update the laserdisc */
laserdisc_vsync(laserdisc);
/* set a timer to go off on the next VBLANK */
vblank_scanline = video_screen_get_visible_area(machine->primary_screen)->max_y + 1;
target = video_screen_get_time_until_pos(machine->primary_screen, vblank_scanline, 0);
@ -158,7 +158,7 @@ static MACHINE_START( ldplayer )
static TIMER_CALLBACK( autoplay )
{
const device_config *laserdisc = device_list_first(machine->config->devicelist, LASERDISC);
/* start playing */
laserdisc_data_w(laserdisc, 0xfd);
playing = TRUE;
@ -170,7 +170,7 @@ static MACHINE_RESET( ldplayer )
{
/* set up a timer to start playing immediately */
timer_set(attotime_zero, NULL, 0, autoplay);
/* indicate the name of the file we opened */
popmessage("Opened %s\n", astring_c(filename));
}
@ -291,7 +291,7 @@ static DRIVER_INIT( ldplayer )
while ((dir = mame_readpath(path)) != NULL)
{
int length = strlen(dir->name);
/* look for files ending in .chd */
if (length > 4 &&
tolower(dir->name[length - 4] == '.') &&
@ -301,7 +301,7 @@ static DRIVER_INIT( ldplayer )
{
file_error filerr;
chd_error chderr;
/* open the file itself via our search path */
filerr = mame_fopen(SEARCHPATH_IMAGE, dir->name, OPEN_FLAG_READ, &image_file);
if (filerr == FILERR_NONE)
@ -324,7 +324,7 @@ static DRIVER_INIT( ldplayer )
}
mame_closepath(path);
}
/* if we failed, pop a message and exit */
if (image_file == NULL)
fatalerror("No valid image file found!\n");

View File

@ -95,7 +95,7 @@ struct _avcomp_state
huffman_context * crcontext;
huffman_context * audiohicontext;
huffman_context * audiolocontext;
/* configuration data */
av_codec_compress_config compress;
av_codec_decompress_config decompress;
@ -133,7 +133,7 @@ avcomp_state *avcomp_init(UINT32 maxwidth, UINT32 maxheight, UINT32 maxchannels)
{
huffman_error hufferr;
avcomp_state *state;
/* error if out of range */
if (maxchannels > MAX_CHANNELS)
return NULL;
@ -219,7 +219,7 @@ void avcomp_config_compress(avcomp_state *state, const av_codec_compress_config
/*-------------------------------------------------
avcomp_config_decompress - configure
avcomp_config_decompress - configure
decompression parameters
-------------------------------------------------*/
@ -247,7 +247,7 @@ avcomp_error avcomp_encode_data(avcomp_state *state, const UINT8 *source, UINT8
avcomp_error err;
UINT32 dstoffs;
int chnum;
/* extract data from source if present */
if (source != NULL)
{
@ -261,7 +261,7 @@ avcomp_error avcomp_encode_data(avcomp_state *state, const UINT8 *source, UINT8
samples = (source[6] << 8) + source[7];
width = (source[8] << 8) + source[9];
height = (source[10] << 8) + source[11];
/* determine the start of each piece of data */
source += 12;
metastart = source;
@ -272,17 +272,17 @@ avcomp_error avcomp_encode_data(avcomp_state *state, const UINT8 *source, UINT8
source += 2 * samples;
}
videostart = source;
/* data is assumed to be big-endian already */
audioxor = videoxor = 0;
videostride = 2 * width;
}
/* otherwise, extract from the state */
else
{
UINT16 betest = 0;
/* extract metadata information */
metastart = state->compress.metadata;
metasize = state->compress.metalength;
@ -305,7 +305,7 @@ avcomp_error avcomp_encode_data(avcomp_state *state, const UINT8 *source, UINT8
width = state->compress.video->width;
height = state->compress.video->height;
}
/* data is assumed to be native-endian */
*(UINT8 *)&betest = 1;
audioxor = videoxor = (betest == 1) ? 1 : 0;
@ -409,7 +409,7 @@ avcomp_error avcomp_decode_data(avcomp_state *state, const UINT8 *source, UINT32
totalsize += (source[10 + 2 * chnum] << 8) | source[11 + 2 * chnum];
if (totalsize >= complength)
return AVCERR_INVALID_DATA;
/* starting offsets */
srcoffs = 10 + 2 * channels;
@ -440,28 +440,28 @@ avcomp_error avcomp_decode_data(avcomp_state *state, const UINT8 *source, UINT32
dest += 2 * samples;
}
videostart = dest;
/* data is assumed to be big-endian already */
audioxor = videoxor = 0;
videostride = 2 * width;
}
/* otherwise, extract from the state */
else
{
UINT16 betest = 0;
/* determine the start of each piece of data */
metastart = state->decompress.metadata;
for (chnum = 0; chnum < channels; chnum++)
audiostart[chnum] = (UINT8 *)state->decompress.audio[chnum];
videostart = (state->decompress.video != NULL) ? state->decompress.video->base : NULL;
videostride = (state->decompress.video != NULL) ? state->decompress.video->rowpixels * 2 : 0;
/* data is assumed to be native-endian */
*(UINT8 *)&betest = 1;
audioxor = videoxor = (betest == 1) ? 1 : 0;
/* verify against sizes */
if (state->decompress.video != NULL && (state->decompress.video->width < width || state->decompress.video->height < height))
return AVCERR_VIDEO_TOO_LARGE;
@ -470,7 +470,7 @@ avcomp_error avcomp_decode_data(avcomp_state *state, const UINT8 *source, UINT32
return AVCERR_AUDIO_TOO_LARGE;
if (state->decompress.metadata != NULL && state->decompress.maxmetalength < metasize)
return AVCERR_METADATA_TOO_LARGE;
/* set the output values */
if (state->decompress.actsamples != NULL)
*state->decompress.actsamples = samples;
@ -530,14 +530,14 @@ static avcomp_error encode_audio(avcomp_state *state, int channels, int samples,
UINT8 *output = dest;
int chnum, sampnum;
UINT8 *deltabuf;
/* iterate over channels to compute deltas */
deltabuf = state->audiodata;
for (chnum = 0; chnum < channels; chnum++)
{
const UINT8 *srcdata = source[chnum];
INT16 prevsample = 0;
/* extract audio data into hi and lo deltas stored in big-endian order */
for (sampnum = 0; sampnum < samples; sampnum++)
{
@ -566,7 +566,7 @@ static avcomp_error encode_audio(avcomp_state *state, int channels, int samples,
if (hufferr != HUFFERR_NONE)
return AVCERR_COMPRESSION_ERROR;
output += size;
/* note the size of the two trees */
huffsize = output - dest;
sizes[0] = huffsize >> 8;
@ -577,7 +577,7 @@ static avcomp_error encode_audio(avcomp_state *state, int channels, int samples,
for (chnum = 0; chnum < channels; chnum++)
{
const UINT8 *input = state->audiodata + chnum * samples * 2;
/* encode the data */
hufferr = huffman_encode_data_interleaved(2, contexts, input, samples * 2, 1, 0, 0, output, samples * 2, &size);
if (hufferr != HUFFERR_NONE)
@ -591,7 +591,7 @@ static avcomp_error encode_audio(avcomp_state *state, int channels, int samples,
sizes[chnum * 2 + 2] = size >> 8;
sizes[chnum * 2 + 3] = size;
}
/* if we ran out of room, throw it all away and just store raw */
if (chnum < channels)
{
@ -701,7 +701,7 @@ static avcomp_error decode_audio(avcomp_state *state, int channels, int samples,
for (chnum = 0; chnum < channels; chnum++)
{
UINT8 *curdest = dest[chnum];
/* extract the size of this channel */
size = (sizes[chnum * 2 + 2] << 8) | sizes[chnum * 2 + 3];
@ -714,7 +714,7 @@ static avcomp_error decode_audio(avcomp_state *state, int channels, int samples,
INT16 delta = (source[0] << 8) | source[1];
INT16 newsample = prevsample + delta;
prevsample = newsample;
curdest[0 ^ dxor] = newsample >> 8;
curdest[1 ^ dxor] = newsample;
source += 2;
@ -733,7 +733,7 @@ static avcomp_error decode_audio(avcomp_state *state, int channels, int samples,
return AVCERR_INVALID_DATA;
source += actsize;
huffsize = actsize;
hufferr = huffman_import_tree(state->audiolocontext, source, size, &actsize);
if (hufferr != HUFFERR_NONE)
return AVCERR_INVALID_DATA;
@ -741,7 +741,7 @@ static avcomp_error decode_audio(avcomp_state *state, int channels, int samples,
huffsize += actsize;
if (huffsize != size)
return AVCERR_INVALID_DATA;
/* set up the contexts */
contexts[0] = state->audiohicontext;
contexts[1] = state->audiolocontext;
@ -778,7 +778,7 @@ static avcomp_error decode_audio(avcomp_state *state, int channels, int samples,
INT16 delta = (deltabuf[0] << 8) | deltabuf[1];
INT16 newsample = prevsample + delta;
prevsample = newsample;
curdest[0 ^ dxor] = newsample >> 8;
curdest[1 ^ dxor] = newsample;
deltabuf += 2;
@ -833,7 +833,7 @@ static avcomp_error decode_video_lossless(avcomp_state *state, int width, int he
if (hufferr != HUFFERR_NONE)
return AVCERR_INVALID_DATA;
source += actsize;
/* set up the decoding contexts */
contexts[0] = state->ycontext;
contexts[1] = state->cbcontext;

View File

@ -66,34 +66,34 @@
****************************************************************************
Delta-RLE encoding works as follows:
Starting value is assumed to be 0. All data is encoded as a delta
from the previous value, such that final[i] = final[i - 1] + delta.
Long runs of 0s are RLE-encoded as follows:
0x100 = repeat count of 8
0x101 = repeat count of 9
0x102 = repeat count of 10
0x103 = repeat count of 11
0x104 = repeat count of 12
0x105 = repeat count of 13
0x106 = repeat count of 14
0x107 = repeat count of 15
0x108 = repeat count of 16
0x109 = repeat count of 32
0x10a = repeat count of 64
0x10b = repeat count of 128
0x10c = repeat count of 256
0x10d = repeat count of 512
0x10e = repeat count of 1024
0x10f = repeat count of 2048
Note that repeat counts are reset at the end of a row, so if a 0 run
extends to the end of a row, a large repeat count may be used.
The reason for starting the run counts at 8 is that 0 is expected to
be the most common symbol, and is typically encoded in 1 or 2 bits.
Delta-RLE encoding works as follows:
Starting value is assumed to be 0. All data is encoded as a delta
from the previous value, such that final[i] = final[i - 1] + delta.
Long runs of 0s are RLE-encoded as follows:
0x100 = repeat count of 8
0x101 = repeat count of 9
0x102 = repeat count of 10
0x103 = repeat count of 11
0x104 = repeat count of 12
0x105 = repeat count of 13
0x106 = repeat count of 14
0x107 = repeat count of 15
0x108 = repeat count of 16
0x109 = repeat count of 32
0x10a = repeat count of 64
0x10b = repeat count of 128
0x10c = repeat count of 256
0x10d = repeat count of 512
0x10e = repeat count of 1024
0x10f = repeat count of 2048
Note that repeat counts are reset at the end of a row, so if a 0 run
extends to the end of a row, a large repeat count may be used.
The reason for starting the run counts at 8 is that 0 is expected to
be the most common symbol, and is typically encoded in 1 or 2 bits.
***************************************************************************/
@ -305,8 +305,8 @@ INLINE UINT32 bit_buffer_read(bit_buffer *bitbuf, int numbits)
/*-------------------------------------------------
bit_buffer_peek - peek ahead and return
'numbits' bits from the buffer, returning
bit_buffer_peek - peek ahead and return
'numbits' bits from the buffer, returning
them right-justified
-------------------------------------------------*/
@ -473,7 +473,7 @@ huffman_error huffman_export_tree(huffman_context *context, UINT8 *dest, UINT32
/*-------------------------------------------------
huffman_deltarle_import_tree - import a
huffman_deltarle_import_tree - import a
huffman tree from a source data stream for
delta-RLE encoded data
-------------------------------------------------*/
@ -485,7 +485,7 @@ huffman_error huffman_deltarle_import_tree(huffman_context *context, const UINT8
/*-------------------------------------------------
huffman__deltarle_export_tree - export a
huffman__deltarle_export_tree - export a
huffman tree to a target data stream for
delta-RLE encoded data
-------------------------------------------------*/
@ -510,7 +510,7 @@ huffman_error huffman_compute_tree_interleaved(int numcontexts, huffman_context
{
UINT32 sx, sy, ctxnum;
huffman_error error;
/* initialize all nodes */
for (ctxnum = 0; ctxnum < numcontexts; ctxnum++)
{
@ -531,11 +531,11 @@ huffman_error huffman_compute_tree_interleaved(int numcontexts, huffman_context
context->datahisto[source[sx ^ sxor]]++;
}
}
/* advance to the next row */
source += sstride;
}
/* compute optimal trees for each */
for (ctxnum = 0; ctxnum < numcontexts; ctxnum++)
{
@ -549,8 +549,8 @@ huffman_error huffman_compute_tree_interleaved(int numcontexts, huffman_context
/*-------------------------------------------------
huffman_deltarle_compute_tree - compute an
optimal huffman tree for the given source
huffman_deltarle_compute_tree - compute an
optimal huffman tree for the given source
data, with pre-encoding as delta-RLE
-------------------------------------------------*/
@ -563,7 +563,7 @@ huffman_error huffman_deltarle_compute_tree_interleaved(int numcontexts, huffman
{
UINT32 sx, sy, ctxnum;
huffman_error error;
/* initialize all nodes */
for (ctxnum = 0; ctxnum < numcontexts; ctxnum++)
{
@ -590,7 +590,7 @@ huffman_error huffman_deltarle_compute_tree_interleaved(int numcontexts, huffman
{
huffman_context *context = contexts[ctxnum];
UINT8 newdata, delta;
/* if still counting RLE, do nothing */
if (context->rleremaining != 0)
{
@ -619,7 +619,7 @@ huffman_error huffman_deltarle_compute_tree_interleaved(int numcontexts, huffman
else
break;
}
/* if we hit the end of row, maximize the count */
if (scan >= swidth && zerocount >= 8)
zerocount = 100000;
@ -627,7 +627,7 @@ huffman_error huffman_deltarle_compute_tree_interleaved(int numcontexts, huffman
/* encode the maximal count we can */
rlecode = rlecount_to_code(zerocount);
context->datahisto[rlecode]++;
/* set up the remaining count */
context->rleremaining = code_to_rlecount(rlecode) - 1;
}
@ -638,11 +638,11 @@ huffman_error huffman_deltarle_compute_tree_interleaved(int numcontexts, huffman
}
}
}
/* advance to the next row */
source += sstride;
}
/* compute optimal trees for each */
for (ctxnum = 0; ctxnum < numcontexts; ctxnum++)
{
@ -672,7 +672,7 @@ huffman_error huffman_encode_data_interleaved(int numcontexts, huffman_context *
/* initialize the output buffer */
bit_buffer_write_init(&bitbuf, dest, dlength);
/* iterate over "height" */
for (sy = 0; sy < sheight; sy++)
{
@ -687,7 +687,7 @@ huffman_error huffman_encode_data_interleaved(int numcontexts, huffman_context *
bit_buffer_write(&bitbuf, node->bits, node->numbits);
}
}
/* advance to the next row */
source += sstride;
}
@ -699,7 +699,7 @@ huffman_error huffman_encode_data_interleaved(int numcontexts, huffman_context *
/*-------------------------------------------------
huffman_deltarle_encode_data - encode data
huffman_deltarle_encode_data - encode data
using the given tree with delta-RLE
pre-encoding
-------------------------------------------------*/
@ -713,17 +713,17 @@ huffman_error huffman_deltarle_encode_data_interleaved(int numcontexts, huffman_
{
UINT32 sx, sy, ctxnum;
bit_buffer bitbuf;
/* initialize the output buffer */
bit_buffer_write_init(&bitbuf, dest, dlength);
/* initialize the contexts */
for (ctxnum = 0; ctxnum < numcontexts; ctxnum++)
{
huffman_context *context = contexts[ctxnum];
context->prevdata = 0;
}
/* iterate over "height" */
for (sy = 0; sy < sheight; sy++)
{
@ -743,7 +743,7 @@ huffman_error huffman_deltarle_encode_data_interleaved(int numcontexts, huffman_
huffman_context *context = contexts[ctxnum];
UINT8 newdata, delta;
huffman_node *node;
/* if still counting RLE, do nothing */
if (context->rleremaining != 0)
{
@ -781,7 +781,7 @@ huffman_error huffman_deltarle_encode_data_interleaved(int numcontexts, huffman_
rlecode = rlecount_to_code(zerocount);
node = &context->huffnode[rlecode];
bit_buffer_write(&bitbuf, node->bits, node->numbits);
/* set up the remaining count */
context->rleremaining = code_to_rlecount(rlecode) - 1;
}
@ -793,7 +793,7 @@ huffman_error huffman_deltarle_encode_data_interleaved(int numcontexts, huffman_
}
}
}
/* advance to the next row */
source += sstride;
}
@ -825,7 +825,7 @@ huffman_error huffman_decode_data(huffman_context *context, const UINT8 *source,
return error;
}
table = context->lookup;
/* initialize our bit buffer */
bit_buffer_read_init(&bitbuf, source, slength);
@ -837,10 +837,10 @@ huffman_error huffman_decode_data(huffman_context *context, const UINT8 *source,
{
huffman_lookup_value lookup;
UINT32 bits;
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = table[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
@ -848,7 +848,7 @@ huffman_error huffman_decode_data(huffman_context *context, const UINT8 *source,
/* store the upper byte */
dest[dx ^ dxor] = LOOKUP_CODE(lookup);
}
/* advance to the next row */
dest += dstride;
}
@ -881,7 +881,7 @@ huffman_error huffman_decode_data_interleaved(int numcontexts, huffman_context *
return error;
}
}
/* initialize our bit buffer */
bit_buffer_read_init(&bitbuf, source, slength);
@ -897,10 +897,10 @@ huffman_error huffman_decode_data_interleaved(int numcontexts, huffman_context *
huffman_context *context = contexts[ctxnum];
huffman_lookup_value lookup;
UINT32 bits;
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, context->maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = context->lookup[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
@ -909,7 +909,7 @@ huffman_error huffman_decode_data_interleaved(int numcontexts, huffman_context *
dest[dx ^ dxor] = LOOKUP_CODE(lookup);
}
}
/* advance to the next row */
dest += dstride;
}
@ -921,8 +921,8 @@ huffman_error huffman_decode_data_interleaved(int numcontexts, huffman_context *
/*-------------------------------------------------
huffman_deltarle_decode_data - decode data
using the given tree with delta-RLE
huffman_deltarle_decode_data - decode data
using the given tree with delta-RLE
post-decoding
-------------------------------------------------*/
@ -944,7 +944,7 @@ huffman_error huffman_deltarle_decode_data(huffman_context *context, const UINT8
return error;
}
table = context->lookup;
/* initialize our bit buffer */
bit_buffer_read_init(&bitbuf, source, slength);
@ -960,7 +960,7 @@ huffman_error huffman_deltarle_decode_data(huffman_context *context, const UINT8
huffman_lookup_value lookup;
UINT32 bits;
int data;
/* if we have RLE remaining, just store that */
if (rleremaining != 0)
{
@ -968,17 +968,17 @@ huffman_error huffman_deltarle_decode_data(huffman_context *context, const UINT8
dest[dx ^ dxor] = prevdata;
continue;
}
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = table[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
/* compute the data and handle RLE decoding */
data = LOOKUP_CODE(lookup);
/* if not an RLE special, just add to the previous; otherwise, start counting RLE */
if (data < 0x100)
prevdata += (UINT8)data;
@ -988,7 +988,7 @@ huffman_error huffman_deltarle_decode_data(huffman_context *context, const UINT8
/* store the updated data value */
dest[dx ^ dxor] = prevdata;
}
/* advance to the next row */
dest += dstride;
}
@ -1000,7 +1000,7 @@ huffman_error huffman_deltarle_decode_data(huffman_context *context, const UINT8
/*-------------------------------------------------
huffman_deltarle_decode_data_interleaved -
huffman_deltarle_decode_data_interleaved -
decode data using multiple contexts and
delta-RLE post-decoding
-------------------------------------------------*/
@ -1010,9 +1010,9 @@ huffman_error huffman_deltarle_decode_data_interleaved(int numcontexts, huffman_
UINT32 dx, dy, ctxnum;
huffman_error error;
bit_buffer bitbuf;
/* fast case the A/V Y/Cb/Y/Cr case */
if (numcontexts == 4 && contexts[0] == contexts[2] && contexts[0] != contexts[1] && contexts[1] != contexts[3] &&
if (numcontexts == 4 && contexts[0] == contexts[2] && contexts[0] != contexts[1] && contexts[1] != contexts[3] &&
contexts[0]->maxbits == contexts[1]->maxbits && contexts[0]->maxbits == contexts[3]->maxbits)
return huffman_deltarle_decode_data_interleaved_0102(contexts, source, slength, dest, dwidth, dheight, dstride, dxor, actlength);
@ -1052,7 +1052,7 @@ huffman_error huffman_deltarle_decode_data_interleaved(int numcontexts, huffman_
huffman_lookup_value lookup;
UINT32 bits;
int data;
/* if we have RLE remaining, just store that */
if (context->rleremaining != 0)
{
@ -1060,10 +1060,10 @@ huffman_error huffman_deltarle_decode_data_interleaved(int numcontexts, huffman_
dest[dx ^ dxor] = context->prevdata;
continue;
}
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, context->maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = context->lookup[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
@ -1081,7 +1081,7 @@ huffman_error huffman_deltarle_decode_data_interleaved(int numcontexts, huffman_
dest[dx ^ dxor] = context->prevdata;
}
}
/* advance to the next row */
dest += dstride;
}
@ -1093,8 +1093,8 @@ huffman_error huffman_deltarle_decode_data_interleaved(int numcontexts, huffman_
/*-------------------------------------------------
huffman_deltarle_decode_data_interleaved_0102 -
decode data using 3 unique contexts in
huffman_deltarle_decode_data_interleaved_0102 -
decode data using 3 unique contexts in
0/1/0/2 order (used for Y/Cb/Y/Cr encoding)
-------------------------------------------------*/
@ -1107,7 +1107,7 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
huffman_error error;
bit_buffer bitbuf;
UINT32 dx, dy;
/* regenerate the lookup tables if necessary */
if (contexts[0]->lookupdirty)
{
@ -1127,7 +1127,7 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
if (error != HUFFERR_NONE)
return error;
}
/* cache the tables locally */
table02 = contexts[0]->lookup;
table1 = contexts[1]->lookup;
@ -1148,9 +1148,9 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
huffman_lookup_value lookup;
UINT32 bits;
int data;
/* ----- offset 0 ----- */
/* if we have RLE remaining, just store that */
if (rleremaining02 != 0)
rleremaining02--;
@ -1158,14 +1158,14 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
{
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = table02[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
/* compute the data and handle RLE decoding */
data = LOOKUP_CODE(lookup);
/* if not an RLE special, just add to the previous; otherwise, start counting RLE */
if (data < 0x100)
prevdata02 += (UINT8)data;
@ -1177,7 +1177,7 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
dest[(dx + 0) ^ dxor] = prevdata02;
/* ----- offset 1 ----- */
/* if we have RLE remaining, just store that */
if (rleremaining1 != 0)
rleremaining1--;
@ -1185,14 +1185,14 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
{
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = table1[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
/* compute the data and handle RLE decoding */
data = LOOKUP_CODE(lookup);
/* if not an RLE special, just add to the previous; otherwise, start counting RLE */
if (data < 0x100)
prevdata1 += (UINT8)data;
@ -1204,7 +1204,7 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
dest[(dx + 1) ^ dxor] = prevdata1;
/* ----- offset 2 (same as 0) ----- */
/* if we have RLE remaining, just store that */
if (rleremaining02 != 0)
rleremaining02--;
@ -1212,14 +1212,14 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
{
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = table02[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
/* compute the data and handle RLE decoding */
data = LOOKUP_CODE(lookup);
/* if not an RLE special, just add to the previous; otherwise, start counting RLE */
if (data < 0x100)
prevdata02 += (UINT8)data;
@ -1231,7 +1231,7 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
dest[(dx + 2) ^ dxor] = prevdata02;
/* ----- offset 3 ----- */
/* if we have RLE remaining, just store that */
if (rleremaining3 != 0)
rleremaining3--;
@ -1239,14 +1239,14 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
{
/* peek ahead to get maxbits worth of data */
bits = bit_buffer_peek(&bitbuf, maxbits);
/* look it up, then remove the actual number of bits for this code */
lookup = table3[bits];
bit_buffer_remove(&bitbuf, LOOKUP_BITS(lookup));
/* compute the data and handle RLE decoding */
data = LOOKUP_CODE(lookup);
/* if not an RLE special, just add to the previous; otherwise, start counting RLE */
if (data < 0x100)
prevdata3 += (UINT8)data;
@ -1257,7 +1257,7 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
/* store the updated data value */
dest[(dx + 3) ^ dxor] = prevdata3;
}
/* advance to the next row */
dest += dstride;
}
@ -1274,7 +1274,7 @@ static huffman_error huffman_deltarle_decode_data_interleaved_0102(huffman_conte
***************************************************************************/
/*-------------------------------------------------
import_tree - import a huffman tree from a
import_tree - import a huffman tree from a
source data stream
-------------------------------------------------*/
@ -1339,7 +1339,7 @@ static huffman_error import_tree(huffman_context *context, const UINT8 *source,
/*-------------------------------------------------
export_tree - export a huffman tree to a
export_tree - export a huffman tree to a
target data stream
-------------------------------------------------*/
@ -1451,7 +1451,7 @@ static huffman_error compute_optimal_tree(huffman_context *context, const UINT32
UINT32 lowerweight, upperweight;
UINT32 sdatacount;
int i;
/* compute the number of data items in the histogram */
sdatacount = 0;
for (i = 0; i < numcodes; i++)

View File

@ -126,14 +126,14 @@ static const discrete_mixer_desc madalien_final_mix =
DISCRETE_SOUND_START( madalien )
/************************************************
* Input register mapping
************************************************/
* Input register mapping
************************************************/
DISCRETE_INPUT_DATA(MADALIEN_8910_PORTA)
DISCRETE_INPUT_DATA(MADALIEN_8910_PORTB)
/************************************************
* Convert to individual bits
************************************************/
* Convert to individual bits
************************************************/
// Port A is used to turn filtering on/off.
// 1 - player shot, siren, music
// turn bit into 4066 Ron value of 270 ohms @ 5V
@ -165,16 +165,16 @@ DISCRETE_SOUND_START( madalien )
DISCRETE_TRANSFORM3(MADALIEN_8910_PORTB_7, 1, MADALIEN_8910_PORTB, 0x40, (DEFAULT_TTL_V_LOGIC_1 - 1) / 0x40, "01&2*")
/************************************************
* PSG input streams
************************************************/
* PSG input streams
************************************************/
// AY-3-8910 PSG have a 1Vpp level
DISCRETE_INPUTX_STREAM(MADALIEN_8910_PSG_A, 0, 2.0/32768, .250)
DISCRETE_INPUTX_STREAM(MADALIEN_8910_PSG_B, 1, 2.0/32768, .250)
DISCRETE_INPUTX_STREAM(MADALIEN_8910_PSG_C, 2, 2.0/32768, .250)
/************************************************
* AY-3-8910 filtering
************************************************/
* AY-3-8910 filtering
************************************************/
// top op-amp
DISCRETE_ONOFF(NODE_20, MADALIEN_8910_PORTA_2, MADALIEN_8910_PSG_A)
DISCRETE_OP_AMP_FILTER(NODE_21, 1, NODE_20, 0, DISC_OP_AMP_FILTER_IS_BAND_PASS_1M, &madalien_psg_a_filter)
@ -195,8 +195,8 @@ DISCRETE_SOUND_START( madalien )
DISCRETE_MIXER3(NODE_48, 1, NODE_21, NODE_33, NODE_41, &madalien_psg_mix)
/************************************************
* Player motor
************************************************/
* Player motor
************************************************/
DISCRETE_555_ASTABLE(NODE_50, // cap is buffered by op-amp 2D.
1, // always enabled
RES_K(4.7),
@ -225,8 +225,8 @@ DISCRETE_SOUND_START( madalien )
DISCRETE_COMP_ADDER(NODE_59, 1, MADALIEN_8910_PORTB_23, &madalien_effect_1b_vol_r)
/************************************************
* Enemy motor
************************************************/
* Enemy motor
************************************************/
DISCRETE_CRFILTER(NODE_60, 1, MADALIEN_8910_PORTB_7, RES_K(100), CAP_U(4.7))
// 2 diodes clamp it positive.
DISCRETE_CLAMP(NODE_62, 1, NODE_60, 0, 12, 0)
@ -249,8 +249,8 @@ DISCRETE_SOUND_START( madalien )
DISCRETE_DAC_R1(NODE_68, 1, NODE_67, DEFAULT_TTL_V_LOGIC_1, &madalien_effect2_dac)
/************************************************
* Mixer
************************************************/
* Mixer
************************************************/
DISCRETE_MIXER7(NODE_90, 1, MADALIEN_8910_PSG_A, NODE_48, MADALIEN_8910_PSG_B, MADALIEN_8910_PSG_C, NODE_56, NODE_57, NODE_68, &madalien_final_mix)
DISCRETE_OUTPUT(NODE_90, 1.1)

View File

@ -302,14 +302,14 @@ static UINT8 speech_cnt;
static TIMER_CALLBACK( ad2083_step )
{
/* only 16 bytes needed ... The original dump is bad. This
* is what is needed to get speech to work. The prom data has
* been updated and marked as BAD_DUMP. The information below
* is given for reference once another dump should surface.
* is what is needed to get speech to work. The prom data has
* been updated and marked as BAD_DUMP. The information below
* is given for reference once another dump should surface.
*
* static const int prom[16] = {0x00, 0x00, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00,
* 0x02, 0x00, 0x40, 0x00, 0x04, 0x06, 0x04, 0x84 };
* static const int prom[16] = {0x00, 0x00, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00,
* 0x02, 0x00, 0x40, 0x00, 0x04, 0x06, 0x04, 0x84 };
*/
UINT8 *prom = memory_region(machine, "tms5110_ctrl");
UINT8 *prom = memory_region(machine, "tms5110_ctrl");
UINT8 ctrl;
if (param == 0)

View File

@ -715,8 +715,8 @@ static INPUT_PORTS_START( tetrsark )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) // or up? it rotates the piece.
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) // WTF? it does't work
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) // WTF? it does't work
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) // WTF? it does't work
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) // WTF? it does't work
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
INPUT_PORTS_END

View File

@ -780,9 +780,9 @@ OSC : 40.000MHz, 32.000MHz, 25.000MHz
DIP SW: 8 position (x2)
RAM : MCM54260 (x2, 40 pin SOJ)
TMS44251 (x4, 28 pin ZIP)
OTHER :
TMS44251 (x4, 28 pin ZIP)
OTHER :
CSI CAT28C16 EEPROM (24 pin DIP)
ADV476KN80E (28 pin DIP)
8 PALs
@ -793,8 +793,8 @@ OTHER :
74HC14 Logic Chip
10 Pin header (probably for re-programming the XC3030's
after it suicides....)
ROMs :
Byte
Filename Type C'sum
@ -802,7 +802,7 @@ Filename Type C'sum
u1801.bin 27C4001 344Eh OKI Samples
u101.bin 27C2001 617Ah \ Main Program
u102.bin 27C2001 8F04h /
u102.bin 27C2001 8F04h /
u1600.bin 32M Mask 1105h \
u1601.bin 32M Mask 8642h / Gfx

View File

@ -579,7 +579,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
/* Forgotten Worlds has dial controls on B-board mapped at 800040-80005f. See DRIVER_INIT */
AM_RANGE(0x800100, 0x80013f) AM_WRITE(cps1_cps_a_w) AM_BASE(&cps1_cps_a_regs) /* CPS-A custom */
/* CPS-B custom is mapped by a PAL on B-board. SF2 revision "E" US 910228 has it a a different
address, see DRIVER_INIT */
address, see DRIVER_INIT */
AM_RANGE(0x800140, 0x80017f) AM_READWRITE(cps1_cps_b_r, cps1_cps_b_w) AM_BASE(&cps1_cps_b_regs)
AM_RANGE(0x800180, 0x800187) AM_WRITE(cps1_soundlatch_w) /* Sound command */
AM_RANGE(0x800188, 0x80018f) AM_WRITE(cps1_soundlatch2_w) /* Sound timer fade */

View File

@ -519,7 +519,7 @@ static MACHINE_RESET(crystal)
memory_set_bankptr(1,memory_region(machine, "user1")+0);
FlashCmd=0xff;
OldPort4=0;
DMActrl[0]=0;
DMActrl[1]=0;

View File

@ -1590,7 +1590,7 @@ static ADDRESS_MAP_START( quiz365_writemem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x17ffff) AM_WRITE(SMH_ROM) // ROM
AM_RANGE(0x200000, 0x2003ff) AM_WRITE(ddenlovr_palette_w) // Palette
AM_RANGE(0x200e0a, 0x200e0d) AM_WRITE(quiz365_protection_w) // Protection
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ?
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ?
AM_RANGE(0x300200, 0x300201) AM_WRITE(ddenlovr_select2_16_w)
AM_RANGE(0x300202, 0x300203) AM_WRITE(quiz365_coincounter_w) // Coin Counters + more stuff written on startup
AM_RANGE(0x300240, 0x300247) AM_WRITE(ddenlovr16_palette_base_w)
@ -1656,7 +1656,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ddenlvrj_writemem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x07ffff) AM_WRITE(SMH_ROM) // ROM
AM_RANGE(0x200000, 0x2003ff) AM_WRITE(ddenlovr_palette_w) // Palette
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ? B0 on startup, then 00
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ? B0 on startup, then 00
AM_RANGE(0x300040, 0x300047) AM_WRITE(ddenlovr16_palette_base_w)
AM_RANGE(0x300048, 0x30004f) AM_WRITE(ddenlovr16_palette_mask_w)
AM_RANGE(0x300050, 0x300057) AM_WRITE(ddenlovr16_transparency_pen_w)
@ -1697,7 +1697,7 @@ static ADDRESS_MAP_START( ddenlovr_writemem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x07ffff) AM_WRITE(SMH_ROM) // ROM
AM_RANGE(0x300000, 0x300001) AM_WRITE(ddenlovr_oki_bank_w)
AM_RANGE(0xd00000, 0xd003ff) AM_WRITE(ddenlovr_palette_w) // Palette
// AM_RANGE(0xd01000, 0xd017ff) SMH_RAM) // ? B0 on startup, then 00
// AM_RANGE(0xd01000, 0xd017ff) SMH_RAM) // ? B0 on startup, then 00
AM_RANGE(0xe00040, 0xe00047) AM_WRITE(ddenlovr16_palette_base_w)
AM_RANGE(0xe00048, 0xe0004f) AM_WRITE(ddenlovr16_palette_mask_w)
AM_RANGE(0xe00050, 0xe00057) AM_WRITE(ddenlovr16_transparency_pen_w)
@ -1712,7 +1712,7 @@ static ADDRESS_MAP_START( ddenlovr_writemem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xe00400, 0xe00401) AM_WRITE(ym2413_register_port_0_lsb_w)
AM_RANGE(0xe00402, 0xe00403) AM_WRITE(ym2413_data_port_0_lsb_w)
AM_RANGE(0xe00500, 0xe0051f) AM_DEVWRITE8(MSM6242, "rtc", msm6242_w, 0x00ff) // 6242RTC
// AM_RANGE(0xe00302, 0xe00303) AM_WRITE(SMH_NOP) // ?
// AM_RANGE(0xe00302, 0xe00303) AM_WRITE(SMH_NOP) // ?
AM_RANGE(0xe00600, 0xe00601) AM_WRITE(ay8910_control_port_0_lsb_w)
AM_RANGE(0xe00602, 0xe00603) AM_WRITE(ay8910_write_port_0_lsb_w)
AM_RANGE(0xe00700, 0xe00701) AM_WRITE(okim6295_data_0_lsb_w)
@ -3242,7 +3242,7 @@ static ADDRESS_MAP_START( akamaru_writemem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x1fffff) AM_WRITE(SMH_ROM) // ROM
AM_RANGE(0x213570, 0x213571) AM_WRITE(akamaru_protection1_w) // OKI bank
AM_RANGE(0xd00000, 0xd003ff) AM_WRITE(ddenlovr_palette_w) // Palette
// AM_RANGE(0xd01000, 0xd017ff) AM_WRITE(SMH_RAM) // 0
// AM_RANGE(0xd01000, 0xd017ff) AM_WRITE(SMH_RAM) // 0
AM_RANGE(0xe00040, 0xe00047) AM_WRITE(ddenlovr16_palette_base_w)
AM_RANGE(0xe00048, 0xe0004f) AM_WRITE(ddenlovr16_palette_mask_w)
AM_RANGE(0xe00050, 0xe00057) AM_WRITE(ddenlovr16_transparency_pen_w)
@ -3674,7 +3674,7 @@ static INPUT_PORTS_START( quiz365 )
PORT_DIPSETTING( 0x40, "0" )
PORT_DIPSETTING( 0x80, "1" )
PORT_DIPSETTING( 0xc0, "2" )
// PORT_DIPSETTING( 0x00, "2" )
// PORT_DIPSETTING( 0x00, "2" )
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x03, "Unknown 2-0&1" )
@ -3785,7 +3785,7 @@ static INPUT_PORTS_START( rongrong )
PORT_DIPSETTING( 0x30, "1" )
PORT_DIPSETTING( 0x20, "2" )
PORT_DIPSETTING( 0x10, "3" )
// PORT_DIPSETTING( 0x00, "3" )
// PORT_DIPSETTING( 0x00, "3" )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -3936,8 +3936,8 @@ static INPUT_PORTS_START( mmpanic )
PORT_DIPSETTING( 0x10, "3" )
PORT_DIPSETTING( 0x0c, "4" )
PORT_DIPSETTING( 0x08, "5" )
// PORT_DIPSETTING( 0x04, "5" )
// PORT_DIPSETTING( 0x00, "5" )
// PORT_DIPSETTING( 0x04, "5" )
// PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x20, 0x20, "Linked Cabinets" )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4056,7 +4056,7 @@ static INPUT_PORTS_START( animaljr )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x18, 0x18, "Unknown 2-3&4" ) // used ?
// PORT_DIPSETTING( 0x10, "0" )
// PORT_DIPSETTING( 0x10, "0" )
PORT_DIPSETTING( 0x00, "0" )
PORT_DIPSETTING( 0x18, "1" )
PORT_DIPSETTING( 0x08, "2" )
@ -4698,7 +4698,7 @@ static INPUT_PORTS_START( mjreach1 )
PORT_DIPSETTING( 0x01, "1500" )
PORT_DIPSETTING( 0x00, "2000" )
PORT_DIPNAME( 0x18, 0x18, "YAKUMAN Times" )
// PORT_DIPSETTING( 0x00, "1" )
// PORT_DIPSETTING( 0x00, "1" )
PORT_DIPSETTING( 0x18, "1" )
PORT_DIPSETTING( 0x10, "2" )
PORT_DIPSETTING( 0x08, "3" )
@ -4905,9 +4905,9 @@ static INPUT_PORTS_START( mjchuuka )
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
PORT_DIPNAME( 0x0c, 0x0c, "Min Credits To Start" )
PORT_DIPSETTING( 0x0c, "1" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x10, "10" )
PORT_DIPSETTING( 0x00, "255" )
@ -4932,7 +4932,7 @@ static INPUT_PORTS_START( mjchuuka )
PORT_DIPSETTING( 0x01, "1000?" )
PORT_DIPSETTING( 0x00, "1000?" )
PORT_DIPNAME( 0x18, 0x18, "YAKUMAN Times" )
// PORT_DIPSETTING( 0x00, "1" )
// PORT_DIPSETTING( 0x00, "1" )
PORT_DIPSETTING( 0x18, "1" )
PORT_DIPSETTING( 0x10, "2" )
PORT_DIPSETTING( 0x08, "3?" )
@ -5047,8 +5047,8 @@ static INPUT_PORTS_START( funkyfig )
PORT_DIPSETTING( 0x10, "3" )
PORT_DIPSETTING( 0x0c, "4" )
PORT_DIPSETTING( 0x08, "5" )
// PORT_DIPSETTING( 0x04, "5" )
// PORT_DIPSETTING( 0x00, "5" )
// PORT_DIPSETTING( 0x04, "5" )
// PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x20, 0x20, "Linked Cabinets" )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -5198,9 +5198,9 @@ static INPUT_PORTS_START( mjmyster )
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
PORT_DIPNAME( 0x0c, 0x0c, "Min Credits To Start" )
PORT_DIPSETTING( 0x0c, "1" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x70, 0x70, "YAKUMAN Bonus" )
PORT_DIPSETTING( 0x70, "Cut" )
PORT_DIPSETTING( 0x60, "1 T" )
@ -5216,7 +5216,7 @@ static INPUT_PORTS_START( mjmyster )
PORT_START("DSW3")
PORT_DIPNAME( 0x03, 0x03, "YAKUMAN Times" )
// PORT_DIPSETTING( 0x00, "1" )
// PORT_DIPSETTING( 0x00, "1" )
PORT_DIPSETTING( 0x03, "1" )
PORT_DIPSETTING( 0x02, "2" )
PORT_DIPSETTING( 0x01, "3?" )
@ -5293,13 +5293,13 @@ INPUT_PORTS_END
static INPUT_PORTS_START( hginga )
PORT_START("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE3 ) // medal out
// PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
// PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F1) // Test
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) // analyzer
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) // data clear
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 ) // note
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1)
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("KEY0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_A ) PORT_PLAYER(2) // A
@ -5812,9 +5812,9 @@ static INPUT_PORTS_START( mjmyornt )
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
PORT_DIPNAME( 0x0c, 0x0c, "Min Credits To Start" )
PORT_DIPSETTING( 0x0c, "1" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x70, 0x70, "YAKUMAN Bonus" )
PORT_DIPSETTING( 0x70, "Cut" )
PORT_DIPSETTING( 0x60, "1 T" )
@ -5830,7 +5830,7 @@ static INPUT_PORTS_START( mjmyornt )
PORT_START("DSW3")
PORT_DIPNAME( 0x03, 0x03, "YAKUMAN Times" )
// PORT_DIPSETTING( 0x00, "1" )
// PORT_DIPSETTING( 0x00, "1" )
PORT_DIPSETTING( 0x03, "1" )
PORT_DIPSETTING( 0x02, "2" )
PORT_DIPSETTING( 0x01, "3?" )
@ -5993,9 +5993,9 @@ static INPUT_PORTS_START( mjmyuniv )
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
PORT_DIPNAME( 0x0c, 0x0c, "Min Credits To Start" )
PORT_DIPSETTING( 0x0c, "1" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
// PORT_DIPSETTING( 0x08, "2" ) // ? these don't let you start a game
// PORT_DIPSETTING( 0x04, "3" )
// PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x70, 0x70, "YAKUMAN Bonus" )
PORT_DIPSETTING( 0x70, "Cut" )
PORT_DIPSETTING( 0x60, "1 T" )
@ -6011,7 +6011,7 @@ static INPUT_PORTS_START( mjmyuniv )
PORT_START("DSW3")
PORT_DIPNAME( 0x03, 0x03, "YAKUMAN Times" )
// PORT_DIPSETTING( 0x00, "1" )
// PORT_DIPSETTING( 0x00, "1" )
PORT_DIPSETTING( 0x03, "1" )
PORT_DIPSETTING( 0x02, "2" )
PORT_DIPSETTING( 0x01, "3?" )
@ -6431,7 +6431,7 @@ static INPUT_PORTS_START( hparadis )
PORT_DIPSETTING( 0x60, "Hanafuda" )
PORT_DIPSETTING( 0x40, "Mahjong" )
PORT_DIPSETTING( 0x20, DEF_STR( Joystick ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Joystick ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Joystick ) )
PORT_DIPNAME( 0x80, 0x80, "First Chance" )
PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x80, DEF_STR( Yes ) )
@ -7544,7 +7544,7 @@ ROM_START( ddenlovr )
ROM_END
/*
/*
Don Den Lover (bootleg)
PCB Layout

View File

@ -41,25 +41,25 @@
Dumping a HD image.
2.5 inch 2.5 to 2.5 to
2.5 inch 2.5 to 2.5 to
hard drive 3.5 adapter long 3.5 IDE cable 3.5 adapter PCB
/---|- |----------------------| -|---\
/---|- |----------------------| -|---\
|------|- |-/ |- |----------------------| -| \-| -|
| |- | |- |----------------------| -| | -|
|------|- |-\ |- |----------------------| -| /-| -|
\---|- |----------------------| -|---/
\---|- |----------------------| -|---/
|| ||
|| /\ ||<-- Power connector
|| || not used
|| ||
||
||
--------- unplug here
| PC | when game PCB is booted
|Power | and working. Boot Windows and stop at menu (F8)
|Supply | Then plug HD into PC IDE controller, and continue boot process
|+5V and| then dump the hard drive with Winhex
|GND | once PC is booted up again.
---------
|+5V and| then dump the hard drive with Winhex
|GND | once PC is booted up again.
---------
*/

View File

@ -13,11 +13,11 @@ PCB Layout
6295 6295 6116 *PLCC84 DM1004
6116 DM1005
PIC16C55 DM1006
6116 6116 DM1007
6116 6116 DM1008
6116
6116
6116
TPC1020
DSW1 62256 62256 (PLCC84)
DM1000A DM1000B
@ -26,7 +26,7 @@ DSW2 68000 TPC1020 62256
12MHz 32MHz
Notes:
Notes:
*: Unknown PLCC84 chip (surface scratched)
VSync: 60Hz
HSync: 15.625kHz

View File

@ -47,7 +47,7 @@ EXPRO-02
clock input on any of the pins of these chips. They're not ROMs either
because the pinout doesn't match any known EPROMs.
There are no markings on the chips other than 'GP-U27' & 'GP-U41'
If GP-U41 is removed, on bootup the PCB gives an error 'BG ERROR' and
If GP-U41 is removed, on bootup the PCB gives an error 'BG ERROR' and
a memory address. If GP-U27 is removed, the PCB works but there are no
background graphics.
@ -56,8 +56,8 @@ EXPRO-02
GP-U41 clocks - pins 21 & 22 - 12.0MHz, pins 1 & 2 - 6.0MHz, pins 8 & 9 - 15.6249kHz (HSync?)
GP-U27 clock - none (so it's not an MCU)
(TODO: which is correct?)
OKI M6295 clock - 2.0MHz (12/6). pin7 = low
(TODO: which is correct?)
OKI M6295 clock - 2.0MHz (12/6). pin7 = low
OKI M6295 clock - 2.000 MHz [16/8]. Sample rate 2000000/165
VSync - 60Hz

View File

@ -380,7 +380,7 @@ INPUT_PORTS_END
/* the same as f1gp, but with an extra button */
static INPUT_PORTS_START( f1gp2 )
PORT_INCLUDE( f1gp )
PORT_MODIFY("INPUTS")
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 )

View File

@ -572,9 +572,9 @@ static INPUT_PORTS_START( victnine )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("EXTRA_P1") /* D805 */
/* bits 0,1 are MCU related:
- bit 0: mcu is ready to receive data from main cpu
- bit 1: mcu has sent data to the main cpu */
/* bits 0,1 are MCU related:
- bit 0: mcu is ready to receive data from main cpu
- bit 1: mcu has sent data to the main cpu */
PORT_BIT( 0x03, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(victnine_mcu_status_bit01_r, NULL)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 )

View File

@ -854,7 +854,7 @@ ROM_START( freekcb2 )
ROM_LOAD( "1.bin", 0x00000, 0x08000, CRC(a6030ba9) SHA1(f363100f54a7a80701a6395c7539b8daa60db054) )
/* the first half of the gfx roms isn't used on this bootleg (roms are double size)
- the content is otherwise identical */
- the content is otherwise identical */
ROM_REGION( 0xc000, "gfx1", ROMREGION_DISPOSE ) /* GFX */
ROM_LOAD( "2.bin", 0x000000, 0x04000, CRC(96aeae91) SHA1(073ca6c9fbe14760ee10293791254da3bcb43940) )
ROM_CONTINUE(0x0000,0x4000)
@ -998,7 +998,7 @@ Gigas (bootleg)
CPU: Z80 (on a small plug in board), 8748 MCU (on same plug-in board)
SND: 76489 x3
DIPSW: 8 position x3
DIPSW: 8 position x3
RAM: 6116 x2 (near ROMs 1-6), 6264 x1 (near ROMs 7-8), 2018 x2 (located in center of board)
XTAL: 18.432MHz
PROMs: 82s129 x6 (not dumped yet, probably match existing archives....)

View File

@ -499,7 +499,7 @@ ADDRESS_MAP_END
/* ----------------------------------------------------------------------------
Input Ports
Input Ports
---------------------------------------------------------------------------- */
static INPUT_PORTS_START( fromanc2 )

View File

@ -306,13 +306,13 @@ static INPUT_PORTS_START( pbancho )
PORT_DIPSETTING( 0x001c, DEF_STR( Normal ) ) // 3
PORT_DIPSETTING( 0x0018, DEF_STR( Hard ) ) // 4
PORT_DIPSETTING( 0x0004, DEF_STR( Hardest ) ) // 5
// PORT_DIPSETTING( 0x0000, DEF_STR( Normal ) ) // 3
// PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) // 3
// PORT_DIPSETTING( 0x0014, DEF_STR( Normal ) ) // 3
// PORT_DIPSETTING( 0x0000, DEF_STR( Normal ) ) // 3
// PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) // 3
// PORT_DIPSETTING( 0x0014, DEF_STR( Normal ) ) // 3
PORT_DIPNAME( 0x0060, 0x0060, "Lives (Vs Mode)" )
PORT_DIPSETTING( 0x0000, "1" ) // 1 1
PORT_DIPSETTING( 0x0060, "2" ) // 2 3
// PORT_DIPSETTING( 0x0020, "2" ) // 2 3
// PORT_DIPSETTING( 0x0020, "2" ) // 2 3
PORT_DIPSETTING( 0x0040, "3" ) // 3 5
PORT_DIPNAME( 0x0080, 0x0080, "? Senin Mode ?" )
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
@ -323,7 +323,7 @@ static INPUT_PORTS_START( pbancho )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0200, 0x0200, "Allow Game Selection" ) // "unused" in the manual?
PORT_DIPSETTING( 0x0200, DEF_STR( Yes ) )
// PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) // Why cripple the game!?
// PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) // Why cripple the game!?
PORT_DIPNAME( 0x1c00, 0x1c00, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x0c00, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x1400, DEF_STR( 3C_1C ) )

View File

@ -684,7 +684,7 @@ Notes:
6264 - 8k x8 SRAM (x2, DIP28)
6116 - 2k x8 SRAM (x8, DIP24)
VSync - 58Hz
ROMs:
SQUASH_D16.E16 27C010 \
SQUASH_D18.E18 27C010 / 68K Program

View File

@ -1,4 +1,4 @@
/* Galxaia
/* Galxaia
Galaxia by Zaccaria (1979)
@ -49,7 +49,7 @@ static VIDEO_START( galaxia )
static VIDEO_UPDATE( galaxia )
{
int x,y, count;
bitmap_t *s2636_0_bitmap;
bitmap_t *s2636_1_bitmap;
bitmap_t *s2636_2_bitmap;
@ -65,7 +65,7 @@ static VIDEO_UPDATE( galaxia )
count++;
}
}
s2636_0_bitmap = s2636_update(s2636_0, cliprect);
s2636_1_bitmap = s2636_update(s2636_1, cliprect);
s2636_2_bitmap = s2636_update(s2636_2, cliprect);
@ -89,7 +89,7 @@ static VIDEO_UPDATE( galaxia )
if (S2636_IS_PIXEL_DRAWN(pixel1))
*BITMAP_ADDR16(bitmap, y, x) = S2636_PIXEL_COLOR(pixel1);
if (S2636_IS_PIXEL_DRAWN(pixel2))
*BITMAP_ADDR16(bitmap, y, x) = S2636_PIXEL_COLOR(pixel2);
}
@ -109,7 +109,7 @@ static WRITE8_HANDLER(galaxia_video_w)
galaxia_color[offset]=data;
}
}
static READ8_HANDLER(galaxia_video_r)
{
return galaxia_video[offset];
@ -117,12 +117,12 @@ static READ8_HANDLER(galaxia_video_r)
static ADDRESS_MAP_START( mem_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_RAM AM_BASE(&galaxia_s2636_0_ram)
AM_RANGE(0x1600, 0x16ff) AM_MIRROR(0x6000) AM_RAM AM_BASE(&galaxia_s2636_1_ram)
AM_RANGE(0x1700, 0x17ff) AM_MIRROR(0x6000) AM_RAM AM_BASE(&galaxia_s2636_2_ram)
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_READWRITE(galaxia_video_r, galaxia_video_w) AM_BASE(&galaxia_video)
AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x2000, 0x33ff) AM_ROM
ADDRESS_MAP_END

View File

@ -2033,7 +2033,7 @@ static INPUT_PORTS_START( ckongg )
PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x40, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) )
// PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0xc0, DEF_STR( Free_Play ) )
PORT_START("DSW0")

View File

@ -230,12 +230,12 @@ static INPUT_PORTS_START( galivan )
/* This is how the Bonus Life are defined in Service Mode */
/* However, to keep the way Bonus Life are defined in MAME, */
/* below are the same values, but using the MAME way */
// PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" )
// PORT_DIPSETTING( 0x04, "20k" )
// PORT_DIPSETTING( 0x00, "50k" )
// PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" )
// PORT_DIPSETTING( 0x08, "every 60k" )
// PORT_DIPSETTING( 0x00, "every 90k" )
// PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" )
// PORT_DIPSETTING( 0x04, "20k" )
// PORT_DIPSETTING( 0x00, "50k" )
// PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" )
// PORT_DIPSETTING( 0x08, "every 60k" )
// PORT_DIPSETTING( 0x00, "every 90k" )
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x0c, "20k and every 60k" )
PORT_DIPSETTING( 0x08, "50k and every 60k" )

View File

@ -447,7 +447,7 @@ static INPUT_PORTS_START( mrgoemon )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
// PORT_DIPSETTING( 0x00, "Invalid" )
// PORT_DIPSETTING( 0x00, "Invalid" )
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) )

View File

@ -207,7 +207,7 @@ static INPUT_PORTS_START( gbusters )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
// PORT_DIPSETTING( 0x00, "Invalid" )
// PORT_DIPSETTING( 0x00, "Invalid" )
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) )

View File

@ -604,7 +604,7 @@ static void laserdisc_audio_process(const device_config *device, int samplerate,
if (logit)
logerror("--------------\n");
/* if no data, reset it all */
if (ch1 == NULL)
{

View File

@ -280,7 +280,7 @@ static INPUT_PORTS_START( gradius3 )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
// PORT_DIPSETTING( 0x00, "Invalid" )
// PORT_DIPSETTING( 0x00, "Invalid" )
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) )

View File

@ -348,9 +348,9 @@ static VIDEO_UPDATE( aso )
}
static CUSTOM_INPUT( sound_status_r )
{
return snk_sound_busy_bit;
static CUSTOM_INPUT( sound_status_r )
{
return snk_sound_busy_bit;
}

View File

@ -188,7 +188,7 @@ A046491
| 16MHz | 0 | |---| |
| | 0 | 136077-1032-70N CY7C168 |TMS| SOCKET 136052-1123.65A
| | 0 | | | |
| | | 6264 CY7C168 |320|
| | | 6264 CY7C168 |320|
| | | |C10| |
| | | 20MHz| | |
| |-----| | | 95C 95A |

View File

@ -205,7 +205,7 @@ static INPUT_PORTS_START( hcastle )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
// PORT_DIPSETTING( 0x00, "Invalidity" ) // Disables the 2 coin slots
// PORT_DIPSETTING( 0x00, "Invalidity" ) // Disables the 2 coin slots
PORT_START("DSW3")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )

View File

@ -77,7 +77,7 @@ static ADDRESS_MAP_START( hyperspt_readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x1000, 0x10ff) AM_READ(SMH_RAM)
AM_RANGE(0x1600, 0x1600) AM_READ_PORT("DSW2")
AM_RANGE(0x1680, 0x1680) AM_READ_PORT("SYSTEM")
// AM_RANGE(0x1681, 0x1681) AM_READ_PORT("P1_P2")
// AM_RANGE(0x1681, 0x1681) AM_READ_PORT("P1_P2")
AM_RANGE(0x1681, 0x1681) AM_READ(konami_IN1_r) /* P1/P2 IO and handle fake button for cheating */
AM_RANGE(0x1682, 0x1682) AM_READ_PORT("P3_P4")
AM_RANGE(0x1683, 0x1683) AM_READ_PORT("DSW1")
@ -150,7 +150,7 @@ static INPUT_PORTS_START( hyperspt )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
/* Fake button to press buttons 1 and 3 impossibly fast. Handle via konami_IN1_r */
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Run Like Hell (Cheat)") PORT_PLAYER(1)
@ -200,7 +200,7 @@ static INPUT_PORTS_START( hyperspt )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
PORT_DIPSETTING( 0x00, "Disabled" )
/* 0x00 disables Coin 2. It still accepts coins and makes the sound, but
it doesn't give you any credit */
it doesn't give you any credit */
PORT_START("DSW2")
PORT_DIPNAME( 0x01, 0x00, "After Last Event" )
@ -301,7 +301,7 @@ static INPUT_PORTS_START( roadf )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
PORT_DIPSETTING( 0x00, "Disabled" )
/* 0x00 disables Coin 2. It still accepts coins and makes the sound, but
it doesn't give you any credit */
it doesn't give you any credit */
PORT_START("DSW2")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Allow_Continue ) )

View File

@ -152,7 +152,7 @@ static VIDEO_UPDATE(igs)
/***************************************************************************
In addition to the blitter, the CPU can also read from and write to
In addition to the blitter, the CPU can also read from and write to
the framebuffers for the 8 layers, seen as 0x100000 bytes in memory.
The first half contains layers 0-3. Layers 4-7 are in the other half.
@ -160,7 +160,7 @@ static VIDEO_UPDATE(igs)
- bytes 0x00000-0x00003 contain the 1st pixel of layer 0,1,2,3
- bytes 0x00004-0x00007 contain the 2nd pixel of layer 0,1,2,3
...
...
- bytes 0x80000-0x80003 contain the 1st pixel of layer 4,5,6,7
- bytes 0x80004-0x80007 contain the 2nd pixel of layer 4,5,6,7
@ -2848,7 +2848,7 @@ static DRIVER_INIT( dbc )
rom[0x1923e/2] = 0x4e71; // 01923E: 6408 bcc 19248 (fills screen with characters otherwise)
// Fix for the palette fade on title screen
// rom[0x19E90/2] = 0x00ff;
// rom[0x19E90/2] = 0x00ff;
}
/***************************************************************************
@ -2998,13 +2998,13 @@ ROMs:
2x PAL16L8ACN (u17,u18)(read protected)
2x PALATF22V10B (u15,u45)
1x empty space for additional PALATV750 (u16)
Notes:
1x JAMMA edge connector
1x trimmer (volume)
3x 8x2 switches DIP
The PCB is perfectly working, empty spaces and empty sockets are clearly intended to be empty.
The PCB is perfectly working, empty spaces and empty sockets are clearly intended to be empty.
25/07/2007 f205v Corrado Tomaselli Gnoppi
***************************************************************************/
@ -3194,7 +3194,7 @@ Notes:
IGS_M0202 - OKI samples (4M maskROM)
***************************************************************************/
ROM_START( lhba )
ROM_REGION( 0x80000, "main", 0 )
ROM_LOAD( "maj_v-033c.u30", 0x00000, 0x80000, CRC(02a0b716) SHA1(cd0ee32ea69f66768196b0e9b4df0fae3af84ed3) )
@ -3254,7 +3254,7 @@ Notes:
IGS_M0201 - Graphics (16M maskROM)
IGS_M0202 - OKI samples (4M maskROM)
MAJ-H_CG - Graphics (27c4001 EPROM)
***************************************************************************/
ROM_START( dbc )

View File

@ -404,9 +404,9 @@ Grand Tour
IGS, 1993
This game probably runs on the same board as IGS's IQ Block.
Two of the PALs are labelled GRAND3 and GRAND4. However, there may be other
games that run on this same PCB also, since three of the PALs are
labelled AF1, AF2 and AF3, meaning the main/first game to run on this
Two of the PALs are labelled GRAND3 and GRAND4. However, there may be other
games that run on this same PCB also, since three of the PALs are
labelled AF1, AF2 and AF3, meaning the main/first game to run on this
hardware was called A-something F-something.

View File

@ -356,7 +356,7 @@ static int special_result = 0;
static CUSTOM_INPUT( special_port_r )
{
if (sound_int_state)
if (sound_int_state)
special_result ^= 1;
return special_result;

View File

@ -365,14 +365,14 @@ static ADDRESS_MAP_START( berlwall, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x200000, 0x20ffff) AM_RAM // Work RAM
AM_RANGE(0x30e000, 0x30ffff) AM_RAM AM_BASE(&spriteram16) AM_SIZE(&spriteram_size) // Sprites
AM_RANGE(0x400000, 0x400fff) AM_RAM_WRITE(paletteram16_xGGGGGRRRRRBBBBB_word_w) AM_BASE(&paletteram16) // Palette
// AM_RANGE(0x480000, 0x480001) AM_RAM // ?
// AM_RANGE(0x480000, 0x480001) AM_RAM // ?
AM_RANGE(0x500000, 0x500001) AM_READWRITE(kaneko16_bg15_reg_r, kaneko16_bg15_reg_w) AM_BASE(&kaneko16_bg15_reg) // High Color Background
AM_RANGE(0x580000, 0x580001) AM_READWRITE(kaneko16_bg15_select_r, kaneko16_bg15_select_w) AM_BASE(&kaneko16_bg15_select)
AM_RANGE(0x600000, 0x60003f) AM_RAM_WRITE(kaneko16_sprites_regs_w) AM_BASE(&kaneko16_sprites_regs) // Sprites Regs
AM_RANGE(0x680000, 0x680001) AM_READ_PORT("DSW_P1")
AM_RANGE(0x680002, 0x680003) AM_READ_PORT("P2")
AM_RANGE(0x680004, 0x680005) AM_READ_PORT("SYSTEM")
// AM_RANGE(0x680006, 0x680007) AM_READ_PORT("UNK")
// AM_RANGE(0x680006, 0x680007) AM_READ_PORT("UNK")
AM_RANGE(0x700000, 0x700001) AM_WRITE(kaneko16_coin_lockout_w) // Coin Lockout
AM_RANGE(0x780000, 0x780001) AM_READ(watchdog_reset16_r) // Watchdog
AM_RANGE(0x800000, 0x80001f) AM_READWRITE(kaneko16_YM2149_0_r, kaneko16_YM2149_0_w) // Sound
@ -1079,11 +1079,11 @@ static INPUT_PORTS_START( blazeon )
PORT_DIPSETTING( 0x0009, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x0004, DEF_STR( 4C_3C ) )
PORT_DIPSETTING( 0x000f, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x0000, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x0000, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x0003, "5 Coins/6 Credits" )
PORT_DIPSETTING( 0x0002, DEF_STR( 4C_5C ) )
PORT_DIPSETTING( 0x0006, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x0001, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x0001, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0x000e, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x000d, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x000c, DEF_STR( 1C_4C ) )
@ -1097,11 +1097,11 @@ static INPUT_PORTS_START( blazeon )
PORT_DIPSETTING( 0x0090, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x0040, DEF_STR( 4C_3C ) )
PORT_DIPSETTING( 0x00f0, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x0000, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x0000, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x0030, "5 Coins/6 Credits" )
PORT_DIPSETTING( 0x0020, DEF_STR( 4C_5C ) )
PORT_DIPSETTING( 0x0060, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x0010, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x0010, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0x00e0, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x00d0, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_4C ) )
@ -2777,7 +2777,7 @@ Kaneko, 1995
PCB Layouts
-----------
KANEKO AX-SYSTEM BOARD
KANEKO AX-SYSTEM BOARD
M201F00584 KANEKO (sticker)
|------------------------------------------------------|
| PX4460 CNC1 |
@ -2837,13 +2837,13 @@ Notes:
CNC1/CNC2 \
CNA/CNB | Multi-pin connectors joining top board to bottom board
CN1/2/3 /
Custom IC's -
Custom IC's -
KANEKO VIEW2-CHIP (x2, QFP144)
KANEKO KC-002 (QFP208)
*1 - KANEKO JAPAN 9448 TA (QFP44)
KANEKO AX-SYSTEM BOARD ROM-08
KANEKO AX-SYSTEM BOARD ROM-08
AX09S00584 KANEKO (sticker)
|------------------------------------------------------|
| 93C46 SW1 CNB CN1 |
@ -2921,7 +2921,7 @@ Notes:
M2B0X0.U93 27C010 (1M) |
M2B1X0.U94 27C010 (1M) /
M2-100-00.U48 8M MASKROM (32-Pin) \
M2-100-00.U48 8M MASKROM (32-Pin) \
M2W1A1.U47 27C040 (4M) / Oki Samples
***************************************************************************/

View File

@ -95,7 +95,7 @@ static ADDRESS_MAP_START( kingpin_readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(io_read_missing_dips)
AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW")
/* AM_RANGE(0x02, 0x02) AM_READ(io_read_missing_dips) */
/* AM_RANGE(0x02, 0x02) AM_READ(io_read_missing_dips) */
AM_RANGE(0x10, 0x10) AM_READ_PORT("IN0")
AM_RANGE(0x11, 0x11) AM_READ_PORT("IN1")
AM_RANGE(0x20, 0x20) AM_READ(TMS9928A_vram_r)

View File

@ -1485,7 +1485,7 @@ static INPUT_PORTS_START( common )
// d5a002 = input port: service4/3/2/1 coin 4/3/2/1
// d5a003 = objint stat, exioint stat, trackint stat, excgint stat, escint stat,
// excpuint stat, objdma stat, eeprom do
// note: racin' force expects bit 1 of the eeprom port to toggle
PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(eeprom_bit_r, NULL)
PORT_BIT( 0x000000fe, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(gx_rdport1_3_r, NULL)
@ -2672,22 +2672,22 @@ PWB300456A
|DIPSW CN3 CN4 |
|----------------------------------------------|
Notes:
This version mother board has the game board connectors on top,
This version mother board has the game board connectors on top,
meaning the game board plugs in above the mother board. A small
cable feeds the RGB from the game board to the JAMMA connector via
an adapter board for the 1st screen. Another small cable is used
to connect the 2nd RGB output to the 'versus' cabinet/monitor.
68020 clock: 24.000MHz (QFP100)
68000 clock: 8.000MHz (PLCC68)
VSync : 60Hz
S_OUT: Connector for right speaker sound output.
CN3 : Connector for 3rd player controls
CN4 : Connector for 4th player controls
CN5 : Connector for player 1 gun
CN6 : Connector for player 2 gun
RAM:
CY7C185: 8K x8 SRAM
8464 : 8K x8 SRAM
@ -2739,7 +2739,7 @@ PWB 301798A
|----------------------------------------------|
Notes:
*: Unpopulated ROM positions.
Konami Customs:
003462 - Xilinx PLCC84 FPGA stamped 003462
053936 - QFP100, also marked KS10011-PF PSAC2
@ -3040,7 +3040,7 @@ ROM_START( racinfru )
ROM_END
/*
/*
Open Golf Championship - version EAE
Konami, 1994
@ -3052,7 +3052,7 @@ PCB Layout (Bottom Board)
PWB354207B
--------------------------------------
A23
A23
A22 A26
A21 A25 A07 M514256(x12)
A20 A24 A06

View File

@ -130,7 +130,7 @@ static INPUT_PORTS_START( labyrunr )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
// PORT_DIPSETTING( 0x00, "Invalid" )
// PORT_DIPSETTING( 0x00, "Invalid" )
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) )

View File

@ -271,9 +271,9 @@ static INPUT_PORTS_START( laserbat )
PORT_DIPSETTING( 0x20, "5" )
PORT_DIPSETTING( 0x30, "6" )
PORT_DIPSETTING( 0x40, "Infinites" )
// PORT_DIPSETTING( 0x50, "Infinites" )
// PORT_DIPSETTING( 0x60, "Infinites" )
// PORT_DIPSETTING( 0x70, "Infinites" )
// PORT_DIPSETTING( 0x50, "Infinites" )
// PORT_DIPSETTING( 0x60, "Infinites" )
// PORT_DIPSETTING( 0x70, "Infinites" )
PORT_DIPNAME( 0x80, 0x80, "Collision Detection" )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
@ -424,9 +424,9 @@ static INPUT_PORTS_START( catnmous )
PORT_DIPSETTING( 0x20, "4" )
PORT_DIPSETTING( 0x30, "5" )
PORT_DIPSETTING( 0x40, "Infinites" )
// PORT_DIPSETTING( 0x50, "Infinites" )
// PORT_DIPSETTING( 0x60, "Infinites" )
// PORT_DIPSETTING( 0x70, "Infinites" )
// PORT_DIPSETTING( 0x50, "Infinites" )
// PORT_DIPSETTING( 0x60, "Infinites" )
// PORT_DIPSETTING( 0x70, "Infinites" )
PORT_DIPNAME( 0x80, 0x80, "Game Over Melody" )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )

View File

@ -693,7 +693,7 @@ static INPUT_PORTS_START( skybump )
PORT_DIPSETTING( 0x40, "3" )
PORT_DIPSETTING( 0x60, "5" )
PORT_DIPSETTING( 0x00, "Infinite (Cheat)")
// PORT_DIPSETTING( 0x20, "Infinite (Cheat)")
// PORT_DIPSETTING( 0x20, "Infinite (Cheat)")
INPUT_PORTS_END

View File

@ -202,7 +202,7 @@
Coin EF E0 00 DF F6 01 "ready?"
(*) "big" and "small" are splitted from the sample "big or small".
So, you can easily see that writes to ports 0x00-0x01 define the start (pos) offset,
and writes to ports 0x03-0x04 the ending offset of each sample to be played.
@ -234,9 +234,9 @@
Pinout
======
General In Lucky74 Measured Comments
General In Lucky74 Measured Comments
------------------------------------------------------------------
01 - Clock In (12 MHz)
01 - Clock In (12 MHz)
02 - Clock Out 1 (In/2) (6 MHz)
03 - Clock Out 2 (In/4) (3 MHz)
04 - Clock Out 3 (In/4) (3 MHz) Yes, again!
@ -282,7 +282,7 @@
LUCKY 74 - E2 Comments
------------------------------------------------------
01 - I - Flip State.
02 - I - CLK1 1.5 MHz. In phase with 6 MHz & 3 MHz.
02 - I - CLK1 1.5 MHz. In phase with 6 MHz & 3 MHz.
03 - I - CLK2 12 MHz.
04 - I - CLK3 1.5 MHz. In phase with 6 MHz.
05 - I - CLK4 3 MHz. In phase with 6 MHz.
@ -314,7 +314,7 @@
LUCKY 74 - E1 Comments
------------------------------------------------------
01 - I - Flip State.
02 - I - CLK1 1.5 MHz. In phase with 6 MHz & 3 MHz.
02 - I - CLK1 1.5 MHz. In phase with 6 MHz & 3 MHz.
03 - I - CLK2 12 MHz.
04 - I - CLK3 1.5 MHz. In phase with 6 MHz.
05 - I - CLK4 3 MHz. In phase with 6 MHz.
@ -371,13 +371,13 @@
Pinout
======
General Comments
General Comments
---------------------------------------------------------------
01 - Low Nibble Enable Half sample rate.
02 - High Nibble Enable Half sample rate inverted.
03 - /BUSY LOW while playing.
04 - /Read Strobe LOW to read from Data Bus.
05 - /Write Strobe LOW to write on Data Bus.
04 - /Read Strobe LOW to read from Data Bus.
05 - /Write Strobe LOW to write on Data Bus.
06 - A0 Internal Register address 0.
07 - A1 Internal Register address 1.
08 - A2 Internal Register address 2.
@ -708,7 +708,7 @@ static READ8_HANDLER( custom_09R81P_port_r )
static WRITE8_HANDLER( custom_09R81P_port_w )
{
lucky74_adpcm_reg[offset] = data;
}
}
static WRITE8_HANDLER( ym2149_portb_w )
{
@ -1125,7 +1125,7 @@ static void lucky74_adpcm_int(running_machine *machine, int num)
if (lucky74_adpcm_busy_line) /* still not started */
{
/* init all 09R81P registers */
logerror("init ADPCM registers\n");
logerror("init ADPCM registers\n");
lucky74_adpcm_end = (lucky74_adpcm_reg[04] << 8) + lucky74_adpcm_reg[03];
lucky74_adpcm_pos = (lucky74_adpcm_reg[01] << 8) + lucky74_adpcm_reg[00];
lucky74_adpcm_busy_line = 0;
@ -1241,9 +1241,9 @@ static MACHINE_DRIVER_START( lucky74 )
MDRV_CPU_VBLANK_INT("main", nmi_interrupt) /* 60 Hz. measured */
MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_SOUND_START(lucky74)
/* 2x 82c255 (4x 8255) */
MDRV_DEVICE_ADD( "ppi8255_0", PPI8255 )
@ -1306,7 +1306,7 @@ MACHINE_DRIVER_END
- The black CPU box was replaced with a mini daughterboard
with a real Z80, the program ROM, and NVRAM.
- The checksum routines were patched.
- All the co-processor routines are there, but the calls were NOPed.

View File

@ -13,8 +13,8 @@
2008-08
Dip locations have been added assuming that the layout is the same as the
m92 boards (and earlier Irem boards). However, it would be nice to have them
Dip locations have been added assuming that the layout is the same as the
m92 boards (and earlier Irem boards). However, it would be nice to have them
confirmed for m107 games as well.
*******************************************************************************/

View File

@ -60,9 +60,9 @@ JP4: /
2008-08
Dip locations verified with dips listing for: kungfum, ldrun, kidniki,
spelunkr, spelunk2.
The other locations have been added assuming that the layout is the same
on all m62 boards. However, it would be nice to have them confirmed for
spelunkr, spelunk2.
The other locations have been added assuming that the layout is the same
on all m62 boards. However, it would be nice to have them confirmed for
other supported games as well.
**************************************************************************/
@ -451,7 +451,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( common )
PORT_START("SYSTEM")
/* Start 1 & 2 also restarts and freezes the game with stop mode on
and are used in test mode to enter and esc the various tests */
and are used in test mode to enter and esc the various tests */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
/* service coin must be active for 19 frames to be consistently recognized */

View File

@ -286,7 +286,7 @@ static void draw_sprites(running_machine *machine, bitmap_t *bitmap, const recta
sx, sy,
cliprect,
TRANSPARENCY_PEN, 0);
/* sprite wrapping - verified on real hardware*/
if(sx>0xf0)
{
@ -297,7 +297,7 @@ static void draw_sprites(running_machine *machine, bitmap_t *bitmap, const recta
cliprect,
TRANSPARENCY_PEN, 0);
}
}
}

View File

@ -71,10 +71,10 @@ kengo 0x18 --------------
2008-08
Dip locations verified for the following games:
- dbreed, hharry, loht (jpn), poundfor, rtype, rtype2 [manual]
- airduel, gallop, imgfight [dip listing]
The other locations have been added assuming that the layout is the same
on all m72 boards. However, it would be nice to have them confirmed for
- dbreed, hharry, loht (jpn), poundfor, rtype, rtype2 [manual]
- airduel, gallop, imgfight [dip listing]
The other locations have been added assuming that the layout is the same
on all m72 boards. However, it would be nice to have them confirmed for
other supported games as well.
@ -1442,7 +1442,7 @@ static INPUT_PORTS_START( airduel )
PORT_DIPSETTING( 0xb000, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0xc000, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0xd000, DEF_STR( 3C_1C ) )
// PORT_DIPSETTING( 0x1000, DEF_STR( Free-Play ) ) /* another free play */
// PORT_DIPSETTING( 0x1000, DEF_STR( Free-Play ) ) /* another free play */
PORT_DIPSETTING( 0xe000, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x3000, DEF_STR( 3C_2C ) )
PORT_DIPSETTING( 0x2000, DEF_STR( 4C_3C ) )

View File

@ -122,23 +122,23 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( main_cpu_io, ADDRESS_SPACE_IO, 16 )
AM_RANGE(0x00, 0x01) AM_WRITE(m72_sound_command_w)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x02, 0x03) AM_WRITE(m90_coincounter_w)
AM_RANGE(0x02, 0x03) AM_READ_PORT("SYSTEM")
AM_RANGE(0x02, 0x03) AM_READ_PORT("SYSTEM")
AM_RANGE(0x04, 0x05) AM_WRITE(quizf1_bankswitch_w)
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
AM_RANGE(0x06, 0x07) AM_READ_PORT("P3_P4")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
AM_RANGE(0x06, 0x07) AM_READ_PORT("P3_P4")
AM_RANGE(0x80, 0x8f) AM_WRITE(m90_video_control_w)
ADDRESS_MAP_END
static ADDRESS_MAP_START( dynablsb_cpu_io, ADDRESS_SPACE_IO, 16 )
AM_RANGE(0x00, 0x01) AM_WRITE(m72_sound_command_w)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x02, 0x03) AM_WRITE(m90_coincounter_w)
AM_RANGE(0x02, 0x03) AM_READ_PORT("SYSTEM")
// AM_RANGE(0x04, 0x05) AM_WRITE(unknown_w) /* dynablsb: write continuosly 0x6000 */
AM_RANGE(0x02, 0x03) AM_READ_PORT("SYSTEM")
// AM_RANGE(0x04, 0x05) AM_WRITE(unknown_w) /* dynablsb: write continuosly 0x6000 */
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
AM_RANGE(0x06, 0x07) AM_READ_PORT("P3_P4")
AM_RANGE(0x06, 0x07) AM_READ_PORT("P3_P4")
AM_RANGE(0x80, 0x8f) AM_WRITE(m90_video_control_w)
// AM_RANGE(0x90, 0x91) AM_WRITE(unknown_w)
ADDRESS_MAP_END

View File

@ -187,8 +187,8 @@ Notes:
2008-08
Dip locations verified for:
- dsccr94j, gunforce, inthunt, majtitl2, uccops [manual]
- bmaster, hook, lethalt, mysticri, rtypeleo [dip listing]
- dsccr94j, gunforce, inthunt, majtitl2, uccops [manual]
- bmaster, hook, lethalt, mysticri, rtypeleo [dip listing]
psoldier dip locations still need veritication.
*****************************************************************************/
@ -1641,12 +1641,12 @@ ROM_END
Undercover Cops Alpha Renewal Version
Irem, 1992
An alt. version, runs on standard
An alt. version, runs on standard
M92 main board: M92-A-B 05C04170B1
ROM board: M92-E-B 05C04238B1
Chips used are...
Nanao 08J27504A1
Nanao 08J27504A1
Nanao 08J27291A5 @ 14.31818MHz
*/

View File

@ -181,7 +181,7 @@ static INPUT_PORTS_START( magic10 )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unused ) ) PORT_CONDITION("DSW", 0xc000, PORTCOND_EQUALS, 0x4000)
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x3000, 0x3000, "1 Play Won" ) PORT_CONDITION("DSW", 0xc000, PORTCOND_EQUALS, 0x0000)
// PORT_DIPSETTING( 0x0000, "Every 10 Score" )
// PORT_DIPSETTING( 0x1000, "Every 10 Score" )

View File

@ -35,16 +35,16 @@
'1' to go back to the game.
Guru Notes:
This board looks like an early proto, it's hand etched, with
This board looks like an early proto, it's hand etched, with
a ton of wire mods. I'm told the game is kind of like Scramble.
It's probably _ultra_ rare too.
The board looks like pure crap actually, with lot's of resistors
The board looks like pure crap actually, with lot's of resistors
jumpering tracks and a partial harness that is wired directly to
the logic chips which has been *ruthlessly* chopped off!
the logic chips which has been *ruthlessly* chopped off!
Here's what I can see.....
EPROMs (x5, dumped, MALZAK.1 by itself, the other 4 grouped together)
S 8039 2650AI (DIP 40)
S 8051 2636N (DIP 40)
@ -57,7 +57,7 @@
SN76477 (x2, DIP28)
INS/DP8212N P8212 (x2, DIP 24)
plenty of logic chips, resistors, caps etc
Note: There's no PALs or PROMs
*/

View File

@ -108,12 +108,12 @@ static INPUT_PORTS_START( marineb )
PORT_DIPSETTING( 0x03, "6" )
PORT_DIPNAME( 0x1c, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x04, "???" )
// PORT_DIPSETTING( 0x08, "???" )
// PORT_DIPSETTING( 0x0c, "???" )
// PORT_DIPSETTING( 0x10, "???" )
// PORT_DIPSETTING( 0x14, "???" )
// PORT_DIPSETTING( 0x18, "???" )
// PORT_DIPSETTING( 0x04, "???" )
// PORT_DIPSETTING( 0x08, "???" )
// PORT_DIPSETTING( 0x0c, "???" )
// PORT_DIPSETTING( 0x10, "???" )
// PORT_DIPSETTING( 0x14, "???" )
// PORT_DIPSETTING( 0x18, "???" )
PORT_DIPSETTING( 0x1c, DEF_STR( Free_Play ) )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "20000 50000" )
@ -158,8 +158,8 @@ static INPUT_PORTS_START( changes )
PORT_DIPSETTING( 0x03, "6" )
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x04, "???" )
// PORT_DIPSETTING( 0x08, "???" )
// PORT_DIPSETTING( 0x04, "???" )
// PORT_DIPSETTING( 0x08, "???" )
PORT_DIPSETTING( 0x0c, DEF_STR( Free_Play ) )
PORT_DIPNAME( 0x10, 0x00, "1st Bonus Life" )
PORT_DIPSETTING( 0x00, "20000" )

View File

@ -123,9 +123,9 @@ static READ8_HANDLER( sound_nmi_ack_r )
return 0;
}
static CUSTOM_INPUT( sound_status_r )
{
return sound_cpu_busy;
static CUSTOM_INPUT( sound_status_r )
{
return sound_cpu_busy;
}
static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -194,7 +194,7 @@ static ADDRESS_MAP_START( madcrash_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8500, 0x8500) AM_READ_PORT("DSW2")
AM_RANGE(0x8600, 0x86ff) AM_RAM /* video attribute */
AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w)
// AM_RANGE(0xc800, 0xc800) AM_WRITE(marvins_palette_bank_w) // palette bank switch (c8f1 for Vanguard)
// AM_RANGE(0xc800, 0xc800) AM_WRITE(marvins_palette_bank_w) // palette bank switch (c8f1 for Vanguard)
AM_RANGE(0xc800, 0xc8ff) AM_RAM
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_BASE(&spriteram) AM_SHARE(1)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(marvins_background_ram_w) AM_SHARE(2) AM_BASE(&spriteram_3)

View File

@ -939,7 +939,7 @@ ROM_END
static INPUT_PORTS_START( 64street )
PORT_START("SYSTEM")
COINS
PORT_START("P1")
JOY_2BUTTONS(1) // fire jump
@ -1080,7 +1080,7 @@ static INPUT_PORTS_START( astyanax )
JOY_3BUTTONS(1) // fire jump magic
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_3BUTTONS(2)
JOY_3BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
@ -1089,19 +1089,19 @@ static INPUT_PORTS_START( astyanax )
PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) ) // 1_5
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) ) // 1_5
PORT_DIPNAME( 0x38, 0x38, DEF_STR( Coin_B ) )
PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x20, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x38, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x28, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x08, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) // 1_5
// PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x28, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x08, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) // 1_5
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -1443,11 +1443,11 @@ static INPUT_PORTS_START( bigstrik )
PORT_DIPSETTING( 0x09, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x0f, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x05, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x04, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x02, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x01, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x04, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x02, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x01, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0x0e, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x0d, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x0c, DEF_STR( 1C_4C ) )
@ -1460,11 +1460,11 @@ static INPUT_PORTS_START( bigstrik )
PORT_DIPSETTING( 0x90, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0xf0, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x40, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x30, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x20, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x10, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x40, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x30, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x20, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x10, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0xe0, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0xd0, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0xc0, DEF_STR( 1C_4C ) )
@ -1936,7 +1936,7 @@ static INPUT_PORTS_START( hachoo )
JOY_2BUTTONS(1) // fire jump
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
@ -2351,9 +2351,9 @@ static INPUT_PORTS_START( jitsupro )
PORT_DIPSETTING( 0x14, "H" )
PORT_DIPSETTING( 0x10, "O (M)" )
PORT_DIPSETTING( 0x0c, "Bu" )
// PORT_DIPSETTING( 0x08, "13" )
// PORT_DIPSETTING( 0x04, "14" )
// PORT_DIPSETTING( 0x00, "15" )
// PORT_DIPSETTING( 0x08, "13" )
// PORT_DIPSETTING( 0x04, "14" )
// PORT_DIPSETTING( 0x00, "15" )
PORT_DIPNAME( 0x40, 0x40, "Scroll Is Based On" )
PORT_DIPSETTING( 0x40, "Shadow of Baseball" )
PORT_DIPSETTING( 0x00, "The Baseball Itself" )
@ -2562,7 +2562,7 @@ static INPUT_PORTS_START( lomakai )
JOY_2BUTTONS(1) // fire jump
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
@ -2744,7 +2744,7 @@ static INPUT_PORTS_START( p47 )
JOY_2BUTTONS(1) // fire bomb
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
@ -3065,7 +3065,7 @@ static INPUT_PORTS_START( plusalph )
JOY_2BUTTONS(1) // fire bomb
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
@ -3353,7 +3353,7 @@ static INPUT_PORTS_START( stdragon )
JOY_2BUTTONS(1) // fire fire
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
@ -3440,12 +3440,12 @@ ROM_END
static INPUT_PORTS_START( soldamj )
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // turn turn (3rd button is shown in service mode, but seems unused)
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */

View File

@ -1386,7 +1386,7 @@ ROM_END
War Gods
Midway, 1996
This game runs on hardware that appears to be similar to Cruisin' USA but using
This game runs on hardware that appears to be similar to Cruisin' USA but using
a 420M 2.5" IDE hard drive. Only about 100M of the hard drive is used.
There are only 2 ROMs located at U12 and U41.

View File

@ -1063,11 +1063,11 @@ static READ64_HANDLER( model3_ctrl_r )
}
else if (ACCESSING_BITS_24_31)
{
if(model3_controls_bank & 0x1)
if(model3_controls_bank & 0x1)
{
return (input_port_read(machine, "IN1")) << 24;
}
else
else
{
return (input_port_read(machine, "IN0")) << 24;
}

View File

@ -246,7 +246,7 @@ static INPUT_PORTS_START( gfire2 )
PORT_DIPSETTING( 0x0c, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x08, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
PORT_DIPNAME( 0x02, 0x02, "Bonus Time" )
PORT_DIPSETTING( 0x00, "*2 +30" )
PORT_DIPSETTING( 0x02, "*2 +50" )

View File

@ -746,7 +746,7 @@ static INPUT_PORTS_START( p47aces )
PORT_DIPNAME( 0x00030000, 0x00030000, "FG/BG X offset" ) PORT_DIPLOCATION("SW3:8,7")
PORT_DIPSETTING( 0x00030000, "0/0" )
PORT_DIPSETTING( 0x00020000, "5/5" )
// PORT_DIPSETTING( 0x00010000, "5/5" )
// PORT_DIPSETTING( 0x00010000, "5/5" )
PORT_DIPSETTING( 0x00000000, "2/4" )
PORT_DIPNAME( 0x00400000, 0x00400000, "FBI Logo" ) PORT_DIPLOCATION("SW3:2")
PORT_DIPSETTING( 0x00400000, DEF_STR( No ) )
@ -870,9 +870,9 @@ static INPUT_PORTS_START( kirarast ) // player 1 inputs done? others?
PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F1)
// PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_START1 ) /* already mapped in mahjong inputs */
// PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_START1 ) /* already mapped in mahjong inputs */
PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_UNUSED )
// PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_START2 ) /* ms32.c mahjongs don't have P2 inputs */
// PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_START2 ) /* ms32.c mahjongs don't have P2 inputs */
PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x00400000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x00800000, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -918,7 +918,7 @@ static INPUT_PORTS_START( 47pie2 ) // player 1 inputs done? others?
PORT_INCLUDE( kirarast )
PORT_MODIFY("INPUTS")
// PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_COIN2 ) /* coin 2 is unused */
// PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_COIN2 ) /* coin 2 is unused */
PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_MODIFY("DSW")

View File

@ -505,7 +505,7 @@ Notes:
VR1: master volume
VR2: shoot volume
VR3: music volume
8035 clocks: pins 2 and 3 measure 6.000MHz
8035 clocks: pins 2 and 3 measure 6.000MHz
pin 9 measures 399.256kHz
pin 12 measures 200.0kHz
pin 13 measures 105.0kHz
@ -514,7 +514,7 @@ Notes:
pin 23 measures 399.3kHz
pin 24 measures 399.3kHz
pin 39 measures 61.5627Hz
Middle board
------------
@ -546,7 +546,7 @@ Notes:
VR1: adjusts brightness
Board contains mostly logic ICs (not shown)
Video output is b/w, the harness is wired to a JAMMA fingerboard but only blue is used.
Bottom board
------------
@ -579,10 +579,10 @@ Notes:
4116: 2K x8 DRAM
8080 clock: 2.0160MHz (20.160 / 10)
Sync: no V reading, H is 15.57kHz
Set 1 is on the PCB and is complete.
Some ROMs in set1 match the current sfeverbw set.
The other two sets were supplied as just EPROMs.
Set2 (maybe High Splitter) is missing the ROM at location I2. Might be missing, or maybe
just the program is smaller and the extra ROM was not required.

View File

@ -938,7 +938,7 @@ This game runs on Namco NB-1 hardware.
PCB Layout
----------
NB-1 MAIN PCB MEMEXT OBJ2 PCB
NB-1 MAIN PCB MEMEXT OBJ2 PCB
8634961101 (8634963101) 8635901201 (8635901301)
|------------------------------------------------------|---------|
| 62256 62256 | |

View File

@ -50,9 +50,9 @@ Notes:
CN25/26 - Connectors for filter board
EPF8452AQC160-3 - Altera FLEX EPF8452AQC160-3 FPGA (QFP160)
315-6188.IC31 - Altera EPC1064 (DIP8)
According to the datasheet, it's an FPGA Configuration
Device which loads the Altera Flex EPF8452 with some info
on power-up.
According to the datasheet, it's an FPGA Configuration
Device which loads the Altera Flex EPF8452 with some info
on power-up.
JP1 - set to 2-3. Alt setting is 1-2
JP4 - set to 2-3. Alt setting is 1-2
93C46 - 128 bytes EEPROM

View File

@ -5834,7 +5834,7 @@ Notes:
6295 - Oki M6295, running at MHz, sample rate (x2, QFP44)
DIP1/2- 8 position Dip Switches
VOL - Volume Potentiometer
NMK CUSTOM IC'S
- NMK004; Actually a TLCS90-based Toshiba TMP91P640F-10 MCU
with 16K internal OTP PROM, running at 8.000MHz [16 / 2] (QFP64)

View File

@ -3318,7 +3318,7 @@ Notes:
PAL - Atmel ATF22V10B PAL (DIP24, labelled 'EA U4')
U3 - Unpopulated position for 32MBit MASKROM (DIP42)
U6, U7 - Unpopulated position for 74LS245 logic chip (x2)
IGS PCB NO- T0237
|-----------------------------------------------|

View File

@ -2105,7 +2105,7 @@ Notes:
U1 - 4M MASKROM (SOP44)
VOL - Master Volume Potentiometer
* - Unpopulated position for 16M SOP44 MASKROM
CPU: MC68EC020FG16
OSC: 16.000MHz

View File

@ -1440,7 +1440,7 @@ Notes:
*COPX-D2 - 2M MaskROM stamped 'COPX-D2' at location U0313 (DIP40)
* means these ROMs are soldered-in and match ROMs from the original Raiden II PCB
SEIBU Custom ICs -
SEIBU Custom ICs -
SIE150 (QFP100)
SEI252 SB05-106 (QFP208)
SEI0200 TC110G21AF 0076 (QFP100)

View File

@ -1118,7 +1118,7 @@ ROM_END
PCB No: DE-0353-3
Mask ROM code: MAM
Sound : 45 (HuC6280 CPU), OKI M6295 (x2), YM2151, YM3012
RAM : 6264 (x4 near 113 + x1 near 18P - 5 total)
RAM : 6264 (x4 near 113 + x1 near 18P - 5 total)
Xtals: 32.200MHz, 28.000MHz
DIPSW: 8 position x3
PALs: PAL16L8 x4 labelled TP-00 (near MAM-07), TP-01, TP-02 (both near 68000),

View File

@ -3090,7 +3090,7 @@ Notes:
BG-1P, BG-2P - Backgrounds, MX29F1610MC surface mounted 16MBit FlashROM (SOP44)
BG-1D, BG-2D - Backgrounds, MX23C3210MC surface mounted 32MBit MaskROM (SOP44)
PCM0, PCM1 - PCM sound samples, 27C4001 4MBit EPROM (DIP32)
FIX0, FIX1, FIX2 - 27C512 EPROM (DIP28)

View File

@ -1,25 +1,25 @@
/***************************************************************************
Arcade games (hacks of console games) running on SNES harware.
Driver (based on nss.c ) by Tomasz Slanina analog[at]op.pl
Supported games:
- Killer Instinct
- Final Fight 2
- Sonic Blast Man 2 (not working)
Not dumped:
- Final Fight 3
Supported games:
- Killer Instinct
- Final Fight 2
- Sonic Blast Man 2 (not working)
Not dumped:
- Final Fight 3
TODO:
- ffight2b - dipswitches ($7eadd7 ?)
- sblast2b - decrypt (xor+swaps)
- kiinstb - fix gfx glitches, missing texts
Final Fight 2 PCB layout:
------------------------
@ -369,10 +369,10 @@ static INPUT_PORTS_START( ffight2b )
PORT_DIPSETTING( 0x18, "1" )
PORT_DIPNAME( 0xe0, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:6,7,8")
PORT_DIPSETTING( 0x20, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x60, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
/* PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) ) */
/* PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) ) */
PORT_DIPSETTING( 0xc0, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_4C ) )
@ -426,7 +426,7 @@ static DRIVER_INIT(kinstb)
{
rom[i]=BITSWAP8(rom[i],5,0,6,1,7,4,3,2);
}
shared_ram=auto_malloc(0x100);
memory_install_readwrite8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x781000, 0x7810ff, 0, 0, sharedram_r, sharedram_w);
@ -468,7 +468,7 @@ DRIVER_INIT( ffight2b )
/* boot vector */
rom[0x7ffd]=0x89;
rom[0x7ffc]=0x54;
ffight2b_coins=0;
memory_install_read8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x7eadce, 0x7eadce, 0, 0, ffight2b_coin_r);

View File

@ -75,7 +75,7 @@ GOLF E30-001A
|-------------------------------------------------------------|
Notes:
VOL : Master Volume Potentiometer
MB3714 : Fujitsu MB3714 Power Amp
MB3714 : Fujitsu MB3714 Power Amp
D6376 : NEC uPD6376 2-channel 16-bit D/A convertor (SOIC16)
MB3790 : Power Monitoring IC with Reset and Watchdog Timer Function (SOIC16)
TC528257: Toshiba TC528257 32k x8 SRAM (SOJ28)

View File

@ -487,7 +487,7 @@ E51-00001-A
|------------------------------------|
Note:
Unknown QFP (surface scratched off) is the CPU
Unknown QFP (surface scratched off) is the CPU
+ GFX generator - it's possibly NEC V70/V810
*/

View File

@ -3175,7 +3175,7 @@ Deniam (Licensed to Sega Enterprises, Ltd), 1997
PCB Number: LEX-0704
This is a non-Sega-manufactured STV cart which works with Japanese and USA bioses.
This is a non-Sega-manufactured STV cart which works with Japanese and USA bioses.
The cart is mostly the same as the Sega carts, containing not a lot except some ROMs
and logic chips.

View File

@ -437,13 +437,13 @@ static void cottonbm_slave_speedup( UINT32 data )
DRIVER_INIT(cottonbm)
{
// cpunum_set_info_int(0, CPUINFO_INT_SH2_PCFLUSH_SELECT, FIRST_SPEEDUP_SLOT);
// cpunum_set_info_int(0, CPUINFO_INT_SH2_PCFLUSH_ADDR, 0x6030ee2);
// cpunum_set_info_int(1, CPUINFO_INT_SH2_PCFLUSH_SELECT, FIRST_SPEEDUP_SLOT+1);
// cpunum_set_info_int(1, CPUINFO_INT_SH2_PCFLUSH_ADDR, 0x6032b52);
// cpunum_set_info_int(0, CPUINFO_INT_SH2_PCFLUSH_SELECT, FIRST_SPEEDUP_SLOT);
// cpunum_set_info_int(0, CPUINFO_INT_SH2_PCFLUSH_ADDR, 0x6030ee2);
// cpunum_set_info_int(1, CPUINFO_INT_SH2_PCFLUSH_SELECT, FIRST_SPEEDUP_SLOT+1);
// cpunum_set_info_int(1, CPUINFO_INT_SH2_PCFLUSH_ADDR, 0x6032b52);
// cpunum_set_info_fct(1, CPUINFO_PTR_SH2_FTCSR_READ_CALLBACK, (genf*)cottonbm_slave_speedup );
// memory_install_read32_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x60ffc10, 0x60ffc13, 0, 0, cottonbm_speedup_r ); // idle loop of main cpu
// cpunum_set_info_fct(1, CPUINFO_PTR_SH2_FTCSR_READ_CALLBACK, (genf*)cottonbm_slave_speedup );
// memory_install_read32_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x60ffc10, 0x60ffc13, 0, 0, cottonbm_speedup_r ); // idle loop of main cpu
DRIVER_INIT_CALL(stv);

View File

@ -4927,7 +4927,7 @@ Notes:
TCO540OBN - / (QFP160)
TCO100SCN - Tilemap Controller (QFP160)
TCO510NIO - I/O (QFP100)
RAM:
62256 : 32K x8 SRAM
TC51832: 32K x8 SRAM

View File

@ -1409,7 +1409,7 @@ Notes:
5510 ESP clocks: pin1- 8.000MHz, pins4-6- 2.6686MHz, pins9-10- 29.7623kHz, pin16- 3.8095225MHz
VSync : 59Hz
HSync : 15.97kHz
D29* /D49* /D53* = PALs
D53-12 PAL16L8B
D29-17-1 PALCE16V8H
@ -2304,12 +2304,12 @@ NEW F3 MOTHER (ASIA) M20A0001B MOTHER PCB J1100335B
Notes:
68020 clock : 15.23809 (30.47618 / 2)
68000 clock : 15.23809 (30.47618 / 2)
68681 clocks : pin2- 500kHz, pin32- 4.000MHz, pin36- 1.000MHz, pin38- 1.000MHz, pin39- 500kHz,
5505 clocks : pin12- 2.6686MHz, pin34- 15.23809MHz,
68681 clocks : pin2- 500kHz, pin32- 4.000MHz, pin36- 1.000MHz, pin38- 1.000MHz, pin39- 500kHz,
5505 clocks : pin12- 2.6686MHz, pin34- 15.23809MHz,
5510 clocks : pin1- 8.000MHz, pins4-6- 2.6686MHz, pin16- 2.6686MHz
VSync : 59Hz
HSync : 15.78kHz
D77* = PALs

View File

@ -117,7 +117,7 @@ static ADDRESS_MAP_START( 6206B_map, ADDRESS_SPACE_PROGRAM, 8 )
// AM_RANGE(0xfc02, 0xfc02) AM_WRITE(unknown_write) /* written during start-up, not again */
AM_RANGE(0xfc03, 0xfc03) AM_READWRITE(input_port_3_r, tbowl_coin_counter_w) /* Player 4 inputs */
// AM_RANGE(0xfc05, 0xfc05) AM_WRITE(unknown_write) /* no idea */
// AM_RANGE(0xfc06, 0xfc06) AM_READ(dummy_r) /* Read During NMI */
// AM_RANGE(0xfc06, 0xfc06) AM_READ(dummy_r) /* Read During NMI */
AM_RANGE(0xfc07, 0xfc07) AM_READ(input_port_4_r) /* System inputs */
AM_RANGE(0xfc08, 0xfc08) AM_READ(input_port_5_r) /* DSW1 */
// AM_RANGE(0xfc08, 0xfc08) AM_WRITE(unknown_write) /* hardly used .. */

View File

@ -315,13 +315,13 @@ static WRITE8_HANDLER( wdclr_w )
static CUSTOM_INPUT( tempest_knob_r )
{
return input_port_read(field->port->machine, (tempest_player_select == 0) ?
return input_port_read(field->port->machine, (tempest_player_select == 0) ?
TEMPEST_KNOB_P1_TAG : TEMPEST_KNOB_P2_TAG);
}
static CUSTOM_INPUT( tempest_buttons_r )
{
return input_port_read(field->port->machine, (tempest_player_select == 0) ?
return input_port_read(field->port->machine, (tempest_player_select == 0) ?
TEMPEST_BUTTONS_P1_TAG : TEMPEST_BUTTONS_P2_TAG);
}

View File

@ -487,8 +487,8 @@ OTHER: ADV476KN50E (DIP28)
MACH110 (CPLD, PLCC44)
DALLAS DS1220Y-150 (NVRAM)
4-pin header for standard light gun (x2)
ROMS :
ROMS :
-----------------------------------------
ds1220y.ic1 NVRAM located near ic2
1.ic2 27C040 \

View File

@ -178,7 +178,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xfe0d00, 0xfe1807) AM_RAM /* still part of OBJ RAM */
AM_RANGE(0xfe4000, 0xfe4001) AM_READWRITE(input_port_0_word_r, tigeroad_videoctrl_w) /* char bank, coin counters, + ? */
AM_RANGE(0xfe4002, 0xfe4003) AM_READ(input_port_1_word_r)
/* AM_RANGE(0xfe4002, 0xfe4003) AM_WRITE(tigeroad_soundcmd_w) added by init_tigeroad() */
/* AM_RANGE(0xfe4002, 0xfe4003) AM_WRITE(tigeroad_soundcmd_w) added by init_tigeroad() */
AM_RANGE(0xfe4004, 0xfe4005) AM_READ(input_port_2_word_r)
AM_RANGE(0xfec000, 0xfec7ff) AM_RAM_WRITE(tigeroad_videoram_w) AM_BASE(&videoram16)
AM_RANGE(0xfe8000, 0xfe8003) AM_WRITE(tigeroad_scroll_w)
@ -532,7 +532,7 @@ static MACHINE_DRIVER_START( tigeroad )
MDRV_CPU_ADD("audio", Z80, XTAL_3_579545MHz) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_port_map,0)
/* IRQs are triggered by the YM2203 */
/* video hardware */

View File

@ -989,9 +989,9 @@ Konami, 2002
PCB number - GM941-PWB(A)C Copyright 1999 Konami Made In Japan
Mahjong Fight Club is a multi player Mahjong battle game for up to 8 players. A
single PCB will not boot unless all of the other units are connected and powered
on, although how exactly they're connected is unknown. There is probably a
master unit that talks to all of the 8 satellite units. At the moment I have
single PCB will not boot unless all of the other units are connected and powered
on, although how exactly they're connected is unknown. There is probably a
master unit that talks to all of the 8 satellite units. At the moment I have
only 2 of the 8 satellite units so I can't confirm that.
However, I don't have access to the main unit anyway as it was not included in
the auction we won :(
@ -1015,15 +1015,15 @@ card as it is PC readable. The card contains only 1 file named c09jad04.bin
surface mounted at location U25. The BIOS is common to ALL Viper games.
nvram.u39 is a ST M48T58Y Timekeeper NVRAM soldered-in at location U39. The
codes at the start of the image (probably just the first 16 or 32 bytes) are
used as a simple (and very weak) protection check to stop game swaps. The
codes at the start of the image (probably just the first 16 or 32 bytes) are
used as a simple (and very weak) protection check to stop game swaps. The
contents of the NVRAM is different for ALL games on this hardware.
Some games use a dongle and swapping games won't work unless the dongle is also provided.
The following games comes with a dongle....
Mahjong Fight Club
For non-dongled games, I have verified the following games will work when the
For non-dongled games, I have verified the following games will work when the
CF card and NVRAM are swapped....
*/

View File

@ -202,7 +202,7 @@
PORT_DIPSETTING( 0xd0, DEF_STR( 3C_1C ) ) \
PORT_DIPSETTING( 0xe0, DEF_STR( 2C_1C ) ) \
PORT_DIPSETTING( 0xf0, DEF_STR( 1C_1C ) ) \
/* PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) ) */ \
/* PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) ) */ \
PORT_DIPSETTING( 0x70, DEF_STR( 1C_2C ) ) \
PORT_DIPSETTING( 0x60, DEF_STR( 1C_3C ) ) \
PORT_DIPSETTING( 0x50, DEF_STR( 1C_4C ) ) \

View File

@ -43,53 +43,53 @@ static int rndseed;
int rnd()
{
rndseed = rndseed * 0x290029;
return (rndseed >> 16) & 0xff;
rndseed = rndseed * 0x290029;
return (rndseed >> 16) & 0xff;
}
void generate_key(UINT8 *key, int seed, int upper_bound)
{
int i;
int i;
rndseed = seed;
for (i = 0; i < 0x1000; ++i)
{
if ("we must encrypt this data table position")
{
UINT8 byteval;
rndseed = seed;
for (i = 0; i < 0x1000; ++i)
{
if ("we must encrypt this data table position")
{
UINT8 byteval;
do
{
byteval = rnd();
} while (byteval == 0x40);
do
{
byteval = rnd();
} while (byteval == 0x40);
opcode_key[i] = byteval;
opcode_key[i] = byteval;
do
{
byteval = rnd();
} while (byteval == 0x40);
do
{
byteval = rnd();
} while (byteval == 0x40);
data_key[i] = byteval;
}
}
data_key[i] = byteval;
}
}
rndseed = seed;
for (i = 0; i < 0x1000; ++i)
{
if ("we mustn't encrypt this data table position")
{
UINT8 byteval;
rndseed = seed;
for (i = 0; i < 0x1000; ++i)
{
if ("we mustn't encrypt this data table position")
{
UINT8 byteval;
do
{
byteval = rnd();
} while (byteval == 0x40);
do
{
byteval = rnd();
} while (byteval == 0x40);
opcode_key[i] = byteval;
data_key[i] = 0x40;
}
}
opcode_key[i] = byteval;
data_key[i] = 0x40;
}
}
}

View File

@ -2546,7 +2546,7 @@ static void cps1_render_stars(const device_config *screen, bitmap_t *bitmap,cons
if (!stars_rom && (cps1_stars_enabled[0] || cps1_stars_enabled[1]))
{
#ifdef MAME_DEBUG
// popmessage("stars enabled but no stars ROM");
// popmessage("stars enabled but no stars ROM");
#endif
return;
}

View File

@ -261,7 +261,7 @@ static void docpy16(int opcode,int src,int *dst,INT16 _ax,INT16 _ay)
static int org_first_pixel(int _org_dpd)
{
int gbm = (HD63484_reg[0x02/2] & 0x700) >> 8;
switch (gbm)
{
case 0:

View File

@ -611,7 +611,7 @@ static avi_error read_avi_frame(avi_file *avi, UINT32 framenum, UINT32 first_sam
if (avierr != AVIERR_NONE)
goto cleanup;
}
/* build the fake bitmap */
*avconfig->video = *fullbitmap;
if (interlaced)
@ -851,7 +851,7 @@ static int do_createav(int argc, char *argv[], int param)
goto cleanup;
}
avconfig.video = &fakebitmap;
/* allocate audio buffers */
avconfig.channels = channels;
for (chnum = 0; chnum < channels; chnum++)
@ -1474,7 +1474,7 @@ static int do_extractav(int argc, char *argv[], int param)
goto cleanup;
}
avconfig.video = &fakebitmap;
/* allocate audio buffers */
avconfig.maxsamples = ((UINT64)rate * 1000000 + fps_times_1million - 1) / fps_times_1million;
avconfig.actsamples = &numsamples;
@ -1527,7 +1527,7 @@ static int do_extractav(int argc, char *argv[], int param)
{
/* progress */
progress(framenum == 0, "Extracting hunk %d/%d... \r", framenum, numframes);
/* set up the fake bitmap for this frame */
*avconfig.video = *fullbitmap;
if (interlaced)
@ -1536,7 +1536,7 @@ static int do_extractav(int argc, char *argv[], int param)
avconfig.video->rowpixels *= 2;
avconfig.video->height /= 2;
}
/* configure the decompressor for this frame */
chd_codec_config(chd, AV_CODEC_DECOMPRESS_CONFIG, &avconfig);
@ -1555,7 +1555,7 @@ static int do_extractav(int argc, char *argv[], int param)
if (avierr != AVIERR_NONE)
goto cleanup;
}
/* write video */
if (!interlaced || (firstframe + framenum) % 2 == 1)
{

View File

@ -458,7 +458,7 @@ static void verify_video(int frame, bitmap_t *bitmap)
}
}
}
/* now examine the active video signal */
pixels = 0;
for (y = 22*2 + fieldnum; y < bitmap->height; y += 2)
@ -467,7 +467,7 @@ static void verify_video(int frame, bitmap_t *bitmap)
pixelhisto[*BITMAP_ADDR16(bitmap, y, x) >> 8]++;
pixels += 720 - 16 - 16;
}
/* remove the top/bottom 0.1% */
remaining = pixels / 1000;
for (minval = 0; remaining >= 0; minval++)
@ -475,11 +475,11 @@ static void verify_video(int frame, bitmap_t *bitmap)
remaining = pixels / 1000;
for (maxval = 255; remaining >= 0; maxval--)
remaining -= pixelhisto[maxval];
/* update the overall min/max */
video_min_overall = MIN(minval, video_min_overall);
video_max_overall = MAX(maxval, video_max_overall);
/* track low fields */
if (minval < 16)
{
@ -534,7 +534,7 @@ static void verify_video_final(int frame, bitmap_t *bitmap)
if (!video_saw_leadout)
printf("Track %6d.%d: never saw any lead-out (WARNING)\n", field / fields_per_frame, 0);
/* any remaining high/low reports? */
/* any remaining high/low reports? */
if (video_num_low_fields > 0)
printf("%6d.%d-%6d.%d: active video signal level low for %d fields (WARNING)\n", video_first_low_frame, video_first_low_field, frame, 0, video_num_low_fields);
if (video_num_high_fields > 0)

View File

@ -9,4 +9,4 @@
***************************************************************************/
const char build_version[] = "0.126u4 ("__DATE__")";
const char build_version[] = "0.126u5 ("__DATE__")";