diff options
Diffstat (limited to 'src')
65 files changed, 15830 insertions, 15869 deletions
diff --git a/src/build/build.mak b/src/build/build.mak index 721346a3f6c..21116a9a4df 100644 --- a/src/build/build.mak +++ b/src/build/build.mak @@ -20,17 +20,20 @@ OBJDIRS += \ FILE2STR_TARGET = $(BUILDOUT)/file2str$(BUILD_EXE) MAKEDEP_TARGET = $(BUILDOUT)/makedep$(BUILD_EXE) +MAKELIST_TARGET = $(BUILDOUT)/makelist$(BUILD_EXE) PNG2BDC_TARGET = $(BUILDOUT)/png2bdc$(BUILD_EXE) VERINFO_TARGET = $(BUILDOUT)/verinfo$(BUILD_EXE) ifeq ($(TARGETOS),win32) FILE2STR = $(subst /,\,$(FILE2STR_TARGET)) MAKEDEP = $(subst /,\,$(MAKEDEP_TARGET)) +MAKELIST = $(subst /,\,$(MAKELIST_TARGET)) PNG2BDC = $(subst /,\,$(PNG2BDC_TARGET)) VERINFO = $(subst /,\,$(VERINFO_TARGET)) else FILE2STR = $(FILE2STR_TARGET) MAKEDEP = $(MAKEDEP_TARGET) +MAKELIST = $(MAKELIST_TARGET) PNG2BDC = $(PNG2BDC_TARGET) VERINFO = $(VERINFO_TARGET) endif @@ -39,6 +42,7 @@ ifneq ($(CROSS_BUILD),1) BUILD += \ $(FILE2STR_TARGET) \ $(MAKEDEP_TARGET) \ + $(MAKELIST_TARGET) \ $(PNG2BDC_TARGET) \ $(VERINFO_TARGET) \ @@ -71,6 +75,19 @@ $(MAKEDEP_TARGET): $(MAKEDEPOBJS) $(LIBUTIL) $(LIBOCORE) $(ZLIB) #------------------------------------------------- +# makelist +#------------------------------------------------- + +MAKELISTOBJS = \ + $(BUILDOBJ)/makelist.o \ + +$(MAKELIST_TARGET): $(MAKELISTOBJS) $(LIBUTIL) $(LIBOCORE) $(ZLIB) + @echo Linking $@... + $(LD) $(LDFLAGS) $^ $(LIBS) -o $@ + + + +#------------------------------------------------- # png2bdc #------------------------------------------------- diff --git a/src/build/makelist.c b/src/build/makelist.c new file mode 100644 index 00000000000..c28a14a61e8 --- /dev/null +++ b/src/build/makelist.c @@ -0,0 +1,203 @@ +/*************************************************************************** + + makelist.c + + Create and sort the driver list. + +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +***************************************************************************/ + +#include <stdio.h> +#include <stdlib.h> +#include <ctype.h> +#include "corefile.h" + + +#define MAX_DRIVERS 65536 + +static const char *drivlist[MAX_DRIVERS]; + + +//------------------------------------------------- +// driver_sort_callback - compare two items in +// a string array +//------------------------------------------------- + +int sort_callback(const void *elem1, const void *elem2) +{ + const char **item1 = (const char **)elem1; + const char **item2 = (const char **)elem2; + return strcmp(*item1, *item2); +} + + +//------------------------------------------------- +// main - primary entry point +//------------------------------------------------- + +int main(int argc, char *argv[]) +{ + // needs at least 1 argument + if (argc < 2) + { + fprintf(stderr, + "Usage:\n" + " makelist <source.lst>\n" + ); + return 0; + } + + // extract arguments + const char *srcfile = argv[1]; + + // read source file + void *buffer; + UINT32 length; + file_error filerr = core_fload(srcfile, &buffer, &length); + if (filerr != FILERR_NONE) + { + fprintf(stderr, "Unable to read source file '%s'\n", srcfile); + return 1; + } + + // rip through it to find all drivers + int drivcount = 0; + char *srcptr = (char *)buffer; + char *endptr = srcptr + length; + int linenum = 1; + bool in_comment = false; + while (srcptr < endptr) + { + char c = *srcptr++; + + // count newlines + if (c == 13 || c == 10) + { + if (c == 13 && *srcptr == 10) + srcptr++; + linenum++; + continue; + } + + // skip any spaces + if (isspace(c)) + continue; + + // look for end of C comment + if (in_comment && c == '*' && *srcptr == '/') + { + srcptr++; + in_comment = false; + continue; + } + + // skip anything else inside a C comment + if (in_comment) + continue; + + // look for start of C comment + if (c == '/' && *srcptr == '*') + { + srcptr++; + in_comment = true; + continue; + } + + // if we hit a C++ comment, scan to the end of line + if (c == '/' && *srcptr == '/') + { + while (srcptr < endptr && *srcptr != 13 && *srcptr != 10) + srcptr++; + continue; + } + + // extract the driver name + char drivname[32]; + drivname[0] = 0; + srcptr--; + for (int pos = 0; srcptr < endptr && pos < ARRAY_LENGTH(drivname) - 1 && !isspace(*srcptr); pos++) + { + drivname[pos] = *srcptr++; + drivname[pos+1] = 0; + } + + // verify the name as valid + for (char *drivch = drivname; *drivch != 0; drivch++) + { + if ((*drivch >= 'a' && *drivch <= 'z') || (*drivch >= '0' && *drivch <= '9') || *drivch == '_') + continue; + fprintf(stderr, "%s:%d - Invalid character '%c' in driver \"%s\"\n", srcfile, linenum, *drivch, drivname); + return 1; + } + + // add it to the list + char *name = (char *)malloc(strlen(drivname) + 1); + strcpy(name, drivname); + drivlist[drivcount++] = name; + } + + // add a reference to the ___empty driver + drivlist[drivcount++] = "___empty"; + + // output a count + if (drivcount == 0) + { + fprintf(stderr, "No drivers found\n"); + return 1; + } + fprintf(stderr, "%d drivers found\n", drivcount); + + // sort the list + qsort(drivlist, drivcount, sizeof(*drivlist), sort_callback); + + // start with a header + printf("#include \"emu.h\"\n\n"); + + // output the list of externs first + for (int index = 0; index < drivcount; index++) + printf("GAME_EXTERN(%s);\n", drivlist[index]); + printf("\n"); + + // then output the array + printf("const game_driver * const driver_list::s_drivers_sorted[%d] =\n", drivcount); + printf("{\n"); + for (int index = 0; index < drivcount; index++) + printf("\t&GAME_NAME(%s)%s\n", drivlist[index], (index == drivcount - 1) ? "" : ","); + printf("};\n"); + printf("\n"); + + // also output a global count + printf("int driver_list::s_driver_count = %d;\n", drivcount); + + return 0; +} diff --git a/src/emu/audit.c b/src/emu/audit.c index 76b9ab5dbee..1393a335737 100644 --- a/src/emu/audit.c +++ b/src/emu/audit.c @@ -4,8 +4,36 @@ ROM set auditing functions. - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ @@ -17,510 +45,419 @@ #include "sound/samples.h" +//************************************************************************** +// CORE FUNCTIONS +//************************************************************************** -/*************************************************************************** - FUNCTION PROTOTYPES -***************************************************************************/ - -static void audit_one_rom(emu_options &options, const rom_entry *rom, const char *regiontag, const game_driver *gamedrv, const char *validation, audit_record *record); -static void audit_one_disk(emu_options &options, const rom_entry *rom, const game_driver *gamedrv, const char *validation, audit_record *record); -static int rom_used_by_parent(emu_options &options, const game_driver *gamedrv, const hash_collection &romhashes, const game_driver **parent); - - - -/*************************************************************************** - INLINE FUNCTIONS -***************************************************************************/ +//------------------------------------------------- +// media_auditor - constructor +//------------------------------------------------- -/*------------------------------------------------- - set_status - shortcut for setting status and - substatus values --------------------------------------------------*/ - -INLINE void set_status(audit_record *record, UINT8 status, UINT8 substatus) +media_auditor::media_auditor(const driver_enumerator &enumerator) + : m_enumerator(enumerator), + m_validation(AUDIT_VALIDATE_FULL), + m_searchpath(NULL) { - record->status = status; - record->substatus = substatus; } +//------------------------------------------------- +// audit_media - audit the media described by the +// currently-enumerated driver +//------------------------------------------------- -/*************************************************************************** - CORE FUNCTIONS -***************************************************************************/ - -/*------------------------------------------------- - audit_images - validate the ROM and disk - images for a game --------------------------------------------------*/ - -int audit_images(emu_options &options, const game_driver *gamedrv, const char *validation, audit_record **audit) +media_auditor::summary media_auditor::audit_media(const char *validation) { - machine_config config(*gamedrv, options); - const rom_entry *region, *rom; - const rom_source *source; - audit_record *record; - int anyfound = FALSE; - int anyrequired = FALSE; - int allshared = TRUE; - int records; - - /* determine the number of records we will generate */ - records = 0; - bool source_is_gamedrv = true; - for (source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) - { - for (region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) - for (rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom)) - if (ROMREGION_ISROMDATA(region) || ROMREGION_ISDISKDATA(region)) - { - if (source_is_gamedrv && !ROM_ISOPTIONAL(rom)) - { - hash_collection hashes(ROM_GETHASHDATA(rom)); - if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) - { - anyrequired = TRUE; - if (allshared && !rom_used_by_parent(options, gamedrv, hashes, NULL)) - allshared = FALSE; - } - } - records++; - } + // start fresh + m_record_list.reset(); - source_is_gamedrv = false; - } + // store validation for later + m_validation = validation; - if (records > 0) + // iterate over ROM sources and regions + bool anyfound = false; + bool anyrequired = false; + for (const rom_source *source = rom_first_source(m_enumerator.config()); source != NULL; source = rom_next_source(*source)) { - /* allocate memory for the records */ - *audit = global_alloc_array_clear(audit_record, records); - record = *audit; - - /* iterate over ROM sources and regions */ - bool source_is_gamedrv = true; - for (source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) - { - for (region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) + // determine the search path for this source and iterate through the regions + m_searchpath = source->searchpath(); + + // also determine if this is the driver's specific ROMs or not + bool source_is_gamedrv = (dynamic_cast<const driver_device_config_base *>(source) != NULL); + + // now iterate over regions and ROMs within + for (const rom_entry *region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) + for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) { - const char *regiontag = ROMREGION_ISLOADBYNAME(region) ? ROM_GETNAME(region) : NULL; - for (rom = rom_first_file(region); rom; rom = rom_next_file(rom)) - { - /* audit a file */ - if (ROMREGION_ISROMDATA(region)) - { - audit_one_rom(options, rom, regiontag, gamedrv, validation, record); - } - - /* audit a disk */ - else if (ROMREGION_ISDISKDATA(region)) - { - audit_one_disk(options, rom, gamedrv, validation, record); - } - - else - { - continue; - } - - if (source_is_gamedrv && record->status != AUDIT_STATUS_NOT_FOUND && (allshared || !rom_used_by_parent(options, gamedrv, record->exphashes, NULL))) - anyfound = TRUE; - - record++; - } + hash_collection hashes(ROM_GETHASHDATA(rom)); + + // if a dump exists, then at least one entry is required + if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) + anyrequired = true; + + // audit a file + audit_record *record = NULL; + if (ROMREGION_ISROMDATA(region)) + record = audit_one_rom(rom); + + // audit a disk + else if (ROMREGION_ISDISKDATA(region)) + record = audit_one_disk(rom); + + // skip if no record + if (record == NULL) + continue; + + // if we got a record back, + if (record->status() != audit_record::STATUS_NOT_FOUND && source_is_gamedrv && also_used_by_parent(hashes) == -1) + anyfound = true; } - source_is_gamedrv = false; - } } - /* if we found nothing, we don't have the set at all */ + // if we found nothing, we don't have the set at all if (!anyfound && anyrequired) - { - global_free(*audit); - *audit = NULL; - records = 0; - } - - return records; + m_record_list.reset(); + + // return a summary + return summarize(); } -/*------------------------------------------------- - audit_samples - validate the samples for a - game --------------------------------------------------*/ +//------------------------------------------------- +// audit_samples - validate the samples for the +// currently-enumerated driver +//------------------------------------------------- -int audit_samples(emu_options &options, const game_driver *gamedrv, audit_record **audit) +media_auditor::summary media_auditor::audit_samples() { - machine_config config(*gamedrv, options); - audit_record *record; - int records = 0; - int sampnum; - - /* count the number of sample records attached to this driver */ - const device_config_sound_interface *sound = NULL; - for (bool gotone = config.m_devicelist.first(sound); gotone; gotone = sound->next(sound)) - if (sound->devconfig().type() == SAMPLES) - { - const samples_interface *intf = (const samples_interface *)sound->devconfig().static_config(); - - if (intf->samplenames != NULL) - { - /* iterate over samples in this entry */ - for (sampnum = 0; intf->samplenames[sampnum] != NULL; sampnum++) - if (intf->samplenames[sampnum][0] != '*') - records++; - } - } - - /* if no records, just quit now */ - if (records == 0) - goto skip; - - /* allocate memory for the records */ - *audit = global_alloc_array_clear(audit_record, records); - record = *audit; + // start fresh + m_record_list.reset(); - /* now iterate over sample entries */ - for (bool gotone = config.m_devicelist.first(sound); gotone; gotone = sound->next(sound)) - if (sound->devconfig().type() == SAMPLES) + // iterate over sample entries + for (const device_config *devconfig = m_enumerator.config().first_device(); devconfig != NULL; devconfig = devconfig->next()) + if (devconfig->type() == SAMPLES) { - const samples_interface *intf = (const samples_interface *)sound->devconfig().static_config(); - const char *sharedname = NULL; - + const samples_interface *intf = reinterpret_cast<const samples_interface *>(devconfig->static_config()); if (intf->samplenames != NULL) { - /* iterate over samples in this entry */ - for (sampnum = 0; intf->samplenames[sampnum] != NULL; sampnum++) + // by default we just search using the driver name + astring searchpath(m_enumerator.driver().name); + + // iterate over samples in this entry + for (int sampnum = 0; intf->samplenames[sampnum] != NULL; sampnum++) + { + // starred entries indicate an additional searchpath if (intf->samplenames[sampnum][0] == '*') - sharedname = &intf->samplenames[sampnum][1]; - else { - /* attempt to access the file from the game driver name */ - emu_file file(options.sample_path(), OPEN_FLAG_READ | OPEN_FLAG_NO_PRELOAD); - file_error filerr = file.open(gamedrv->name, PATH_SEPARATOR, intf->samplenames[sampnum]); - - /* attempt to access the file from the shared driver name */ - if (filerr != FILERR_NONE && sharedname != NULL) - filerr = file.open(sharedname, PATH_SEPARATOR, intf->samplenames[sampnum]); - - /* fill in the record */ - record->type = AUDIT_FILE_SAMPLE; - record->name = intf->samplenames[sampnum]; + searchpath.cat(";").cat(&intf->samplenames[sampnum][1]); + continue; + } + + // create a new record + audit_record &record = m_record_list.append(*global_alloc(audit_record(intf->samplenames[sampnum], audit_record::MEDIA_SAMPLE))); + + // look for the files + emu_file file(m_enumerator.options().sample_path(), OPEN_FLAG_READ | OPEN_FLAG_NO_PRELOAD); + path_iterator path(searchpath); + astring curpath; + while (path.next(curpath, intf->samplenames[sampnum])) + { + // attempt to access the file + file_error filerr = file.open(curpath); if (filerr == FILERR_NONE) - set_status(record++, AUDIT_STATUS_GOOD, SUBSTATUS_GOOD); + record.set_status(audit_record::STATUS_GOOD, audit_record::SUBSTATUS_GOOD); else - set_status(record++, AUDIT_STATUS_NOT_FOUND, SUBSTATUS_NOT_FOUND); + record.set_status(audit_record::STATUS_NOT_FOUND, audit_record::SUBSTATUS_NOT_FOUND); } + } } } - -skip: - return records; + + // return a summary + return summarize(); } -/*------------------------------------------------- - audit_summary - output a summary given a - list of audit records --------------------------------------------------*/ +//------------------------------------------------- +// summary - generate a summary, with an optional +// string format +//------------------------------------------------- -int audit_summary(const game_driver *gamedrv, int count, const audit_record *records, int output) +media_auditor::summary media_auditor::summarize(astring *string) { - int overall_status = CORRECT; - int recnum; - - /* no count AND no records means not found */ - if (count == 0 && records == NULL) + // no count AND no records means not found + if (m_record_list.count() == 0) return NOTFOUND; - /* loop over records */ - for (recnum = 0; recnum < count; recnum++) + // loop over records + summary overall_status = CORRECT; + for (audit_record *record = m_record_list.first(); record != NULL; record = record->next()) { - const audit_record *record = &records[recnum]; - int best_new_status = INCORRECT; + summary best_new_status = INCORRECT; - /* skip anything that's fine */ - if (record->substatus == SUBSTATUS_GOOD) + // skip anything that's fine + if (record->substatus() == audit_record::SUBSTATUS_GOOD) continue; - /* output the game name, file name, and length (if applicable) */ - if (output) + // output the game name, file name, and length (if applicable) + if (string != NULL) { - mame_printf_info("%-8s: %s", gamedrv->name, record->name); - if (record->explength > 0) - mame_printf_info(" (%d bytes)", record->explength); - mame_printf_info(" - "); + string->catprintf("%-12s: %s", m_enumerator.driver().name, record->name()); + if (record->expected_length() > 0) + string->catprintf(" (%d bytes)", record->expected_length()); + string->catprintf(" - "); } - /* use the substatus for finer details */ - switch (record->substatus) + // use the substatus for finer details + switch (record->substatus()) { - case SUBSTATUS_GOOD_NEEDS_REDUMP: - if (output) mame_printf_info("NEEDS REDUMP\n"); + case audit_record::SUBSTATUS_GOOD_NEEDS_REDUMP: + if (string != NULL) string->catprintf("NEEDS REDUMP\n"); best_new_status = BEST_AVAILABLE; break; - case SUBSTATUS_FOUND_NODUMP: - if (output) mame_printf_info("NO GOOD DUMP KNOWN\n"); + case audit_record::SUBSTATUS_FOUND_NODUMP: + if (string != NULL) string->catprintf("NO GOOD DUMP KNOWN\n"); best_new_status = BEST_AVAILABLE; break; - case SUBSTATUS_FOUND_BAD_CHECKSUM: - if (output) + case audit_record::SUBSTATUS_FOUND_BAD_CHECKSUM: + if (string != NULL) { astring tempstr; - mame_printf_info("INCORRECT CHECKSUM:\n"); - mame_printf_info("EXPECTED: %s\n", record->exphashes.macro_string(tempstr)); - mame_printf_info(" FOUND: %s\n", record->hashes.macro_string(tempstr)); + string->catprintf("INCORRECT CHECKSUM:\n"); + string->catprintf("EXPECTED: %s\n", record->expected_hashes().macro_string(tempstr)); + string->catprintf(" FOUND: %s\n", record->actual_hashes().macro_string(tempstr)); } break; - case SUBSTATUS_FOUND_WRONG_LENGTH: - if (output) mame_printf_info("INCORRECT LENGTH: %d bytes\n", record->length); + case audit_record::SUBSTATUS_FOUND_WRONG_LENGTH: + if (string != NULL) string->catprintf("INCORRECT LENGTH: %d bytes\n", record->actual_length()); break; - case SUBSTATUS_NOT_FOUND: - if (output) mame_printf_info("NOT FOUND\n"); + case audit_record::SUBSTATUS_NOT_FOUND: + if (string != NULL) string->catprintf("NOT FOUND\n"); break; - case SUBSTATUS_NOT_FOUND_NODUMP: - if (output) mame_printf_info("NOT FOUND - NO GOOD DUMP KNOWN\n"); + case audit_record::SUBSTATUS_NOT_FOUND_NODUMP: + if (string != NULL) string->catprintf("NOT FOUND - NO GOOD DUMP KNOWN\n"); best_new_status = BEST_AVAILABLE; break; - case SUBSTATUS_NOT_FOUND_OPTIONAL: - if (output) mame_printf_info("NOT FOUND BUT OPTIONAL\n"); + case audit_record::SUBSTATUS_NOT_FOUND_OPTIONAL: + if (string != NULL) string->catprintf("NOT FOUND BUT OPTIONAL\n"); best_new_status = BEST_AVAILABLE; break; - case SUBSTATUS_NOT_FOUND_PARENT: - if (output) mame_printf_info("NOT FOUND (shared with parent)\n"); + case audit_record::SUBSTATUS_NOT_FOUND_PARENT: + if (string != NULL) string->catprintf("NOT FOUND (shared with parent)\n"); break; - case SUBSTATUS_NOT_FOUND_BIOS: - if (output) mame_printf_info("NOT FOUND (BIOS)\n"); + case audit_record::SUBSTATUS_NOT_FOUND_BIOS: + if (string != NULL) string->catprintf("NOT FOUND (BIOS)\n"); break; + + default: + assert(false); } - /* downgrade the overall status if necessary */ + // downgrade the overall status if necessary overall_status = MAX(overall_status, best_new_status); } - return overall_status; } +//------------------------------------------------- +// audit_one_rom - validate a single ROM entry +//------------------------------------------------- -/*************************************************************************** - UTILITIES -***************************************************************************/ - -/*------------------------------------------------- - audit_one_rom - validate a single ROM entry --------------------------------------------------*/ - -static void audit_one_rom(emu_options &options, const rom_entry *rom, const char *regiontag, const game_driver *gamedrv, const char *validation, audit_record *record) +audit_record *media_auditor::audit_one_rom(const rom_entry *rom) { - const game_driver *drv; - UINT32 crc = 0; + // allocate and append a new record + audit_record &record = m_record_list.append(*global_alloc(audit_record(*rom, audit_record::MEDIA_ROM))); - /* fill in the record basics */ - record->type = AUDIT_FILE_ROM; - record->name = ROM_GETNAME(rom); - record->exphashes.from_internal_string(ROM_GETHASHDATA(rom)); - record->length = 0; - record->explength = rom_file_size(rom); - - /* see if we have a CRC and extract it if so */ - bool has_crc = record->exphashes.crc(crc); + // see if we have a CRC and extract it if so + UINT32 crc = 0; + bool has_crc = record.expected_hashes().crc(crc); - /* find the file and checksum it, getting the file length along the way */ - for (drv = gamedrv; drv != NULL; drv = driver_get_clone(drv)) + // find the file and checksum it, getting the file length along the way + emu_file file(m_enumerator.options().media_path(), OPEN_FLAG_READ | OPEN_FLAG_NO_PRELOAD); + path_iterator path(m_searchpath); + astring curpath; + while (path.next(curpath, record.name())) { - emu_file file(options.media_path(), OPEN_FLAG_READ | OPEN_FLAG_NO_PRELOAD); - - /* open the file if we can */ + // open the file if we can file_error filerr; if (has_crc) - filerr = file.open(drv->name, PATH_SEPARATOR, ROM_GETNAME(rom), crc); + filerr = file.open(curpath, crc); else - filerr = file.open(drv->name, PATH_SEPARATOR, ROM_GETNAME(rom)); + filerr = file.open(curpath); + + // if it worked, get the actual length and hashes, then stop if (filerr == FILERR_NONE) { - record->hashes = file.hashes(validation); - record->length = (UINT32)file.size(); + record.set_actual(file.hashes(m_validation), file.size()); break; } } + + // compute the final status + compute_status(record, rom, record.actual_length() != 0); + return &record; +} - /* if not found, check the region as a backup */ - if (record->length == 0 && regiontag != NULL) - { - emu_file file(options.media_path(), OPEN_FLAG_READ | OPEN_FLAG_NO_PRELOAD); - - /* open the file if we can */ - file_error filerr; - if (has_crc) - filerr = file.open(regiontag, PATH_SEPARATOR, ROM_GETNAME(rom), crc); - else - filerr = file.open(regiontag, PATH_SEPARATOR, ROM_GETNAME(rom)); - if (filerr == FILERR_NONE) - { - record->hashes = file.hashes(validation); - record->length = (UINT32)file.size(); - } - } - - /* if we failed to find the file, set the appropriate status */ - if (record->length == 0) - { - const game_driver *parent; - - /* no good dump */ - if (record->exphashes.flag(hash_collection::FLAG_NO_DUMP)) - set_status(record, AUDIT_STATUS_NOT_FOUND, SUBSTATUS_NOT_FOUND_NODUMP); - - /* optional ROM */ - else if (ROM_ISOPTIONAL(rom)) - set_status(record, AUDIT_STATUS_NOT_FOUND, SUBSTATUS_NOT_FOUND_OPTIONAL); - /* not found and used by parent */ - else if (rom_used_by_parent(options, gamedrv, record->exphashes, &parent)) - set_status(record, AUDIT_STATUS_NOT_FOUND, (parent->flags & GAME_IS_BIOS_ROOT) ? SUBSTATUS_NOT_FOUND_BIOS : SUBSTATUS_NOT_FOUND_PARENT); +//------------------------------------------------- +// audit_one_disk - validate a single disk entry +//------------------------------------------------- - /* just plain old not found */ - else - set_status(record, AUDIT_STATUS_NOT_FOUND, SUBSTATUS_NOT_FOUND); - } +audit_record *media_auditor::audit_one_disk(const rom_entry *rom) +{ + // allocate and append a new record + audit_record &record = m_record_list.append(*global_alloc(audit_record(*rom, audit_record::MEDIA_DISK))); - /* if we did find the file, do additional verification */ - else + // open the disk + emu_file *source_file; + chd_file *source; + chd_error err = open_disk_image(m_enumerator.options(), &m_enumerator.driver(), rom, &source_file, &source, NULL); + + // if we succeeded, get the hashes + if (err == CHDERR_NONE) { - /* length mismatch */ - if (record->explength != record->length) - set_status(record, AUDIT_STATUS_FOUND_INVALID, SUBSTATUS_FOUND_WRONG_LENGTH); - - /* found but needs a dump */ - else if (record->exphashes.flag(hash_collection::FLAG_NO_DUMP)) - set_status(record, AUDIT_STATUS_GOOD, SUBSTATUS_FOUND_NODUMP); - - /* incorrect hash */ - else if (record->exphashes != record->hashes) - set_status(record, AUDIT_STATUS_FOUND_INVALID, SUBSTATUS_FOUND_BAD_CHECKSUM); + static const UINT8 nullhash[20] = { 0 }; + chd_header header = *chd_get_header(source); + hash_collection hashes; - /* correct hash but needs a redump */ - else if (record->exphashes.flag(hash_collection::FLAG_BAD_DUMP)) - set_status(record, AUDIT_STATUS_GOOD, SUBSTATUS_GOOD_NEEDS_REDUMP); + // if there's an MD5 or SHA1 hash, add them to the output hash + if (memcmp(nullhash, header.md5, sizeof(header.md5)) != 0) + hashes.add_from_buffer(hash_collection::HASH_MD5, header.md5, sizeof(header.md5)); + if (memcmp(nullhash, header.sha1, sizeof(header.sha1)) != 0) + hashes.add_from_buffer(hash_collection::HASH_SHA1, header.sha1, sizeof(header.sha1)); + + // update the actual values + record.set_actual(hashes); - /* just plain old good */ - else - set_status(record, AUDIT_STATUS_GOOD, SUBSTATUS_GOOD); + // close the file and release the source + chd_close(source); + global_free(source_file); } + + // compute the final status + compute_status(record, rom, record.actual_length() != 0); + return &record; } -/*------------------------------------------------- - audit_one_disk - validate a single disk entry --------------------------------------------------*/ +//------------------------------------------------- +// compute_status - compute a detailed status +// based on the information we have +//------------------------------------------------- -static void audit_one_disk(emu_options &options, const rom_entry *rom, const game_driver *gamedrv, const char *validation, audit_record *record) +void media_auditor::compute_status(audit_record &record, const rom_entry *rom, bool found) { - emu_file *source_file; - chd_file *source; - chd_error err; - - /* fill in the record basics */ - record->type = AUDIT_FILE_DISK; - record->name = ROM_GETNAME(rom); - record->exphashes.from_internal_string(ROM_GETHASHDATA(rom)); - - /* open the disk */ - err = open_disk_image(options, gamedrv, rom, &source_file, &source, NULL); - - /* if we failed, report the error */ - if (err != CHDERR_NONE) + // if not found, provide more details + if (!found) { - /* out of memory */ - if (err == CHDERR_OUT_OF_MEMORY) - set_status(record, AUDIT_STATUS_ERROR, SUBSTATUS_ERROR); + int parent; + + // no good dump + if (record.expected_hashes().flag(hash_collection::FLAG_NO_DUMP)) + record.set_status(audit_record::STATUS_NOT_FOUND, audit_record::SUBSTATUS_NOT_FOUND_NODUMP); - /* not found but it's not good anyway */ - else if (record->exphashes.flag(hash_collection::FLAG_NO_DUMP)) - set_status(record, AUDIT_STATUS_NOT_FOUND, SUBSTATUS_NOT_FOUND_NODUMP); + // optional ROM + else if (ROM_ISOPTIONAL(rom)) + record.set_status(audit_record::STATUS_NOT_FOUND, audit_record::SUBSTATUS_NOT_FOUND_OPTIONAL); - /* not found but optional */ - else if (DISK_ISOPTIONAL(rom)) - set_status(record, AUDIT_STATUS_NOT_FOUND, SUBSTATUS_NOT_FOUND_OPTIONAL); + // not found and used by parent + else if ((parent = also_used_by_parent(record.expected_hashes())) != -1) + { + if (m_enumerator.driver(parent).flags & GAME_IS_BIOS_ROOT) + record.set_status(audit_record::STATUS_NOT_FOUND, audit_record::SUBSTATUS_NOT_FOUND_BIOS); + else + record.set_status(audit_record::STATUS_NOT_FOUND, audit_record::SUBSTATUS_NOT_FOUND_PARENT); + } - /* not found at all */ + // just plain old not found else - set_status(record, AUDIT_STATUS_NOT_FOUND, SUBSTATUS_NOT_FOUND); + record.set_status(audit_record::STATUS_NOT_FOUND, audit_record::SUBSTATUS_NOT_FOUND); } - - /* if we succeeded, validate it */ + + // if found, provide more details else { - static const UINT8 nullhash[20] = { 0 }; - chd_header header = *chd_get_header(source); - - /* if there's an MD5 or SHA1 hash, add them to the output hash */ - if (memcmp(nullhash, header.md5, sizeof(header.md5)) != 0) - record->hashes.add_from_buffer(hash_collection::HASH_MD5, header.md5, sizeof(header.md5)); - if (memcmp(nullhash, header.sha1, sizeof(header.sha1)) != 0) - record->hashes.add_from_buffer(hash_collection::HASH_SHA1, header.sha1, sizeof(header.sha1)); + // length mismatch + if (record.expected_length() != record.actual_length()) + record.set_status(audit_record::STATUS_FOUND_INVALID, audit_record::SUBSTATUS_FOUND_WRONG_LENGTH); - /* found but needs a dump */ - if (record->exphashes.flag(hash_collection::FLAG_NO_DUMP)) - set_status(record, AUDIT_STATUS_GOOD, SUBSTATUS_FOUND_NODUMP); + // found but needs a dump + else if (record.expected_hashes().flag(hash_collection::FLAG_NO_DUMP)) + record.set_status(audit_record::STATUS_GOOD, audit_record::SUBSTATUS_FOUND_NODUMP); - /* incorrect hash */ - else if (record->exphashes != record->hashes) - set_status(record, AUDIT_STATUS_FOUND_INVALID, SUBSTATUS_FOUND_BAD_CHECKSUM); + // incorrect hash + else if (record.expected_hashes() != record.actual_hashes()) + record.set_status(audit_record::STATUS_FOUND_INVALID, audit_record::SUBSTATUS_FOUND_BAD_CHECKSUM); - /* correct hash but needs a redump */ - else if (record->exphashes.flag(hash_collection::FLAG_BAD_DUMP)) - set_status(record, AUDIT_STATUS_GOOD, SUBSTATUS_GOOD_NEEDS_REDUMP); + // correct hash but needs a redump + else if (record.expected_hashes().flag(hash_collection::FLAG_BAD_DUMP)) + record.set_status(audit_record::STATUS_GOOD, audit_record::SUBSTATUS_GOOD_NEEDS_REDUMP); - /* just plain good */ + // just plain old good else - set_status(record, AUDIT_STATUS_GOOD, SUBSTATUS_GOOD); - - chd_close(source); - global_free(source_file); + record.set_status(audit_record::STATUS_GOOD, audit_record::SUBSTATUS_GOOD); } } -/*------------------------------------------------- - rom_used_by_parent - determine if a given - ROM is also used by the parent --------------------------------------------------*/ +//------------------------------------------------- +// also_used_by_parent - return the index in the +// enumerator of the parent who also owns a media +// entry with the same hashes +//------------------------------------------------- -static int rom_used_by_parent(emu_options &options, const game_driver *gamedrv, const hash_collection &romhashes, const game_driver **parent) +int media_auditor::also_used_by_parent(const hash_collection &romhashes) { - const game_driver *drv; + // iterate up the parent chain + for (int drvindex = m_enumerator.find(m_enumerator.driver().parent); drvindex != -1; drvindex = m_enumerator.find(m_enumerator.driver(drvindex).parent)) - /* iterate up the parent chain */ - for (drv = driver_get_clone(gamedrv); drv != NULL; drv = driver_get_clone(drv)) - { - machine_config config(*drv, options); - const rom_entry *region; - const rom_entry *rom; - - /* see if the parent has the same ROM or not */ - for (const rom_source *source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) - for (region = rom_first_region(*source); region; region = rom_next_region(region)) - for (rom = rom_first_file(region); rom; rom = rom_next_file(rom)) + // see if the parent has the same ROM or not + for (const rom_source *source = rom_first_source(m_enumerator.config(drvindex)); source != NULL; source = rom_next_source(*source)) + for (const rom_entry *region = rom_first_region(*source); region; region = rom_next_region(region)) + for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) { hash_collection hashes(ROM_GETHASHDATA(rom)); if (!hashes.flag(hash_collection::FLAG_NO_DUMP) && hashes == romhashes) - { - if (parent != NULL) - *parent = drv; - return TRUE; - } + return drvindex; } - } - return FALSE; + // nope, return -1 + return -1; +} + + +//------------------------------------------------- +// audit_record - constructor +//------------------------------------------------- + +audit_record::audit_record(const rom_entry &media, media_type type) + : m_next(NULL), + m_type(type), + m_status(STATUS_ERROR), + m_substatus(SUBSTATUS_ERROR), + m_name(ROM_GETNAME(&media)), + m_explength(rom_file_size(&media)), + m_length(0) +{ + m_exphashes.from_internal_string(ROM_GETHASHDATA(&media)); +} + +audit_record::audit_record(const char *name, media_type type) + : m_next(NULL), + m_type(type), + m_status(STATUS_ERROR), + m_substatus(SUBSTATUS_ERROR), + m_name(name), + m_explength(0), + m_length(0) +{ } diff --git a/src/emu/audit.h b/src/emu/audit.h index 3b6eaffd4a2..00964e91417 100644 --- a/src/emu/audit.h +++ b/src/emu/audit.h @@ -4,8 +4,36 @@ ROM, disk, and sample auditing functions. - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ @@ -18,84 +46,145 @@ -/*************************************************************************** - CONSTANTS -***************************************************************************/ +//************************************************************************** +// CONSTANTS +//************************************************************************** -/* hashes to use for validation */ +// hashes to use for validation #define AUDIT_VALIDATE_FAST "R" /* CRC only */ #define AUDIT_VALIDATE_FULL "RS" /* CRC + SHA1 */ -/* return values from audit_verify_roms and audit_verify_samples */ -enum -{ - CORRECT = 0, - BEST_AVAILABLE, - INCORRECT, - NOTFOUND -}; -/* image types for audit_record.type */ -enum -{ - AUDIT_FILE_ROM = 0, - AUDIT_FILE_DISK, - AUDIT_FILE_SAMPLE -}; -/* status values for audit_record.status */ -enum -{ - AUDIT_STATUS_GOOD = 0, - AUDIT_STATUS_FOUND_INVALID, - AUDIT_STATUS_NOT_FOUND, - AUDIT_STATUS_ERROR -}; +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** -/* substatus values for audit_record.substatus */ -enum -{ - SUBSTATUS_GOOD = 0, - SUBSTATUS_GOOD_NEEDS_REDUMP, - SUBSTATUS_FOUND_NODUMP, - SUBSTATUS_FOUND_BAD_CHECKSUM, - SUBSTATUS_FOUND_WRONG_LENGTH, - SUBSTATUS_NOT_FOUND, - SUBSTATUS_NOT_FOUND_NODUMP, - SUBSTATUS_NOT_FOUND_OPTIONAL, - SUBSTATUS_NOT_FOUND_PARENT, - SUBSTATUS_NOT_FOUND_BIOS, - SUBSTATUS_ERROR = 100 -}; +// ======================> audit_record - -/*************************************************************************** - TYPE DEFINITIONS -***************************************************************************/ - -typedef struct _audit_record audit_record; -struct _audit_record +// holds the result of auditing a single item +class audit_record { - UINT8 type; /* type of item that was audited */ - UINT8 status; /* status of audit on this item */ - UINT8 substatus; /* finer-detail status */ - const char * name; /* name of item */ - UINT32 explength; /* expected length of item */ - UINT32 length; /* actual length of item */ - hash_collection exphashes; /* expected hash data */ - hash_collection hashes; /* actual hash information */ + friend class simple_list<audit_record>; + +public: + // media types + enum media_type + { + MEDIA_ROM = 0, + MEDIA_DISK, + MEDIA_SAMPLE + }; + + // status values + enum audit_status + { + STATUS_GOOD = 0, + STATUS_FOUND_INVALID, + STATUS_NOT_FOUND, + STATUS_ERROR + }; + + // substatus values + enum audit_substatus + { + SUBSTATUS_GOOD = 0, + SUBSTATUS_GOOD_NEEDS_REDUMP, + SUBSTATUS_FOUND_NODUMP, + SUBSTATUS_FOUND_BAD_CHECKSUM, + SUBSTATUS_FOUND_WRONG_LENGTH, + SUBSTATUS_NOT_FOUND, + SUBSTATUS_NOT_FOUND_NODUMP, + SUBSTATUS_NOT_FOUND_OPTIONAL, + SUBSTATUS_NOT_FOUND_PARENT, + SUBSTATUS_NOT_FOUND_BIOS, + SUBSTATUS_ERROR = 100 + }; + + // construction/destruction + audit_record(const rom_entry &media, media_type type); + audit_record(const char *name, media_type type); + + // getters + audit_record *next() const { return m_next; } + media_type type() const { return m_type; } + audit_status status() const { return m_status; } + audit_substatus substatus() const { return m_substatus; } + const char *name() const { return m_name; } + UINT64 expected_length() const { return m_explength; } + UINT64 actual_length() const { return m_length; } + const hash_collection &expected_hashes() const { return m_exphashes; } + const hash_collection &actual_hashes() const { return m_hashes; } + + // setters + void set_status(audit_status status, audit_substatus substatus) + { + m_status = status; + m_substatus = substatus; + } + + void set_actual(const hash_collection &hashes, UINT64 length = 0) + { + m_hashes = hashes; + m_length = length; + } + +private: + // internal state + audit_record * m_next; + media_type m_type; /* type of item that was audited */ + audit_status m_status; /* status of audit on this item */ + audit_substatus m_substatus; /* finer-detail status */ + const char * m_name; /* name of item */ + UINT64 m_explength; /* expected length of item */ + UINT64 m_length; /* actual length of item */ + hash_collection m_exphashes; /* expected hash data */ + hash_collection m_hashes; /* actual hash information */ }; +// ======================> media_auditor -/*************************************************************************** - FUNCTION PROTOTYPES -***************************************************************************/ - -int audit_images(emu_options &options, const game_driver *gamedrv, const char *validation, audit_record **audit); -int audit_samples(emu_options &options, const game_driver *gamedrv, audit_record **audit); -int audit_summary(const game_driver *gamedrv, int count, const audit_record *records, int output); +// class which manages auditing of items +class media_auditor +{ +public: + // summary values + enum summary + { + CORRECT = 0, + NONE_NEEDED, + BEST_AVAILABLE, + INCORRECT, + NOTFOUND + }; + + // construction/destruction + media_auditor(const driver_enumerator &enumerator); + + // getters + audit_record *first() const { return m_record_list.first(); } + int count() const { return m_record_list.count(); } + + // audit operations + summary audit_media(const char *validation = AUDIT_VALIDATE_FULL); + summary audit_samples(); + summary summarize(astring *output = NULL); + +private: + // internal helpers + audit_record *audit_one_rom(const rom_entry *rom); + audit_record *audit_one_disk(const rom_entry *rom); + void compute_status(audit_record &record, const rom_entry *rom, bool found); + int also_used_by_parent(const hash_collection &romhashes); + + // internal state + simple_list<audit_record> m_record_list; + const driver_enumerator & m_enumerator; + const char * m_validation; + const char * m_searchpath; +}; #endif /* __AUDIT_H__ */ diff --git a/src/emu/clifront.c b/src/emu/clifront.c index 81435650c34..6035aa0e77f 100644 --- a/src/emu/clifront.c +++ b/src/emu/clifront.c @@ -56,42 +56,6 @@ #endif -/*************************************************************************** - TYPE DEFINITIONS -***************************************************************************/ - -struct romident_status -{ - int total; /* total files processed */ - int matches; /* number of matches found */ - int nonroms; /* number of non-ROM files found */ -}; - - - -/*************************************************************************** - FUNCTION PROTOTYPES -***************************************************************************/ - -static void execute_commands(cli_options &options, const char *exename); -static void display_help(void); - -/* informational functions */ -static void info_verifyroms(emu_options &options, const char *gamename); -static void info_verifysamples(emu_options &options, const char *gamename); -static void info_romident(emu_options &options, const char *gamename); -static void info_listmedia(emu_options &options, const char *gamename); -static void info_listsoftware(emu_options &options, const char *gamename); - -/* utilities */ -static void romident(emu_options &options, const char *filename, romident_status *status); -static void identify_file(emu_options &options, const char *name, romident_status *status); -static void identify_data(emu_options &options, const char *name, const UINT8 *data, int length, romident_status *status); -static void match_roms(emu_options &options, const hash_collection &hashes, int length, int *found); -static void display_suggestions(const char *gamename); - - - //************************************************************************** // COMMAND-LINE OPTIONS //************************************************************************** @@ -146,45 +110,55 @@ cli_options::cli_options() -/*************************************************************************** - CORE IMPLEMENTATION -***************************************************************************/ +//************************************************************************** +// CLI FRONTEND +//************************************************************************** + +//------------------------------------------------- +// cli_frontend - constructor +//------------------------------------------------- + +cli_frontend::cli_frontend(cli_options &options, osd_interface &osd) + : m_options(options), + m_osd(osd), + m_result(MAMERR_NONE) +{ + // begin tracking memory + track_memory(true); +} + + +//------------------------------------------------- +// ~cli_frontend - destructor +//------------------------------------------------- -static void display_suggestions(const char *gamename) +cli_frontend::~cli_frontend() { - const game_driver *matches[10]; - int drvnum; - - /* get the top 10 approximate matches */ - driver_list_get_approx_matches(drivers, gamename, ARRAY_LENGTH(matches), matches); - - /* print them out */ - fprintf(stderr, "\n\"%s\" approximately matches the following\n" - "supported " GAMESNOUN " (best match first):\n\n", gamename); - for (drvnum = 0; drvnum < ARRAY_LENGTH(matches); drvnum++) - if (matches[drvnum] != NULL) - fprintf(stderr, "%-18s%s\n", matches[drvnum]->name, matches[drvnum]->description); + // report any unfreed memory on clean exits + track_memory(false); + if (m_result == MAMERR_NONE) + dump_unfreed_mem(); } //------------------------------------------------- -// cli_execute - execute a game via the standard +// execute - execute a game via the standard // command line interface //------------------------------------------------- -int cli_execute(cli_options &options, osd_interface &osd, int argc, char **argv) +int cli_frontend::execute(int argc, char **argv) { // wrap the core execution in a try/catch to field all fatal errors - int result = MAMERR_NONE; + m_result = MAMERR_NONE; try { // parse the command line, adding any system-specific options astring option_errors; - if (!options.parse_command_line(argc, argv, option_errors)) + if (!m_options.parse_command_line(argc, argv, option_errors)) { // if we failed, check for no command and a system name first; in that case error on the name - if (strlen(options.command()) == 0 && options.system() == NULL && strlen(options.system_name()) > 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "Unknown system '%s'", options.system_name()); + if (strlen(m_options.command()) == 0 && m_options.system() == NULL && strlen(m_options.system_name()) > 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "Unknown system '%s'", m_options.system_name()); // otherwise, error on the options throw emu_fatalerror(MAMERR_INVALID_CONFIG, "%s", option_errors.trimspace().cstr()); @@ -197,19 +171,19 @@ int cli_execute(cli_options &options, osd_interface &osd, int argc, char **argv) core_filename_extract_base(&exename, argv[0], TRUE); // if we have a command, execute that - if (strlen(options.command()) != 0) - execute_commands(options, exename); + if (strlen(m_options.command()) != 0) + execute_commands(exename); // otherwise, check for a valid system else { // if we can't find it, give an appropriate error - const game_driver *system = options.system(); - if (system == NULL && strlen(options.system_name()) > 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "Unknown system '%s'", options.system_name()); + const game_driver *system = m_options.system(); + if (system == NULL && strlen(m_options.system_name()) > 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "Unknown system '%s'", m_options.system_name()); // otherwise just run the game - result = mame_execute(options, osd); + m_result = mame_execute(m_options, m_osd); } } @@ -218,577 +192,605 @@ int cli_execute(cli_options &options, osd_interface &osd, int argc, char **argv) { astring string(fatal.string()); fprintf(stderr, "%s\n", string.trimspace().cstr()); - result = (fatal.exitcode() != 0) ? fatal.exitcode() : MAMERR_FATALERROR; + m_result = (fatal.exitcode() != 0) ? fatal.exitcode() : MAMERR_FATALERROR; // if a game was specified, wasn't a wildcard, and our error indicates this was the // reason for failure, offer some suggestions - if (result == MAMERR_NO_SUCH_GAME && strlen(options.system_name()) > 0 && strchr(options.system_name(), '*') == NULL && options.system() == NULL) - display_suggestions(options.system_name()); + if (m_result == MAMERR_NO_SUCH_GAME && strlen(m_options.system_name()) > 0 && strchr(m_options.system_name(), '*') == NULL && m_options.system() == NULL) + { + // get the top 10 approximate matches + driver_enumerator drivlist(m_options); + int matches[10]; + drivlist.find_approximate_matches(m_options.system_name(), ARRAY_LENGTH(matches), matches); + + // print them out + fprintf(stderr, "\n\"%s\" approximately matches the following\n" + "supported " GAMESNOUN " (best match first):\n\n", m_options.system_name()); + for (int matchnum = 0; matchnum < ARRAY_LENGTH(matches); matchnum++) + if (matches[matchnum] != -1) + fprintf(stderr, "%-18s%s\n", drivlist.driver(matches[matchnum]).name, drivlist.driver(matches[matchnum]).description); + } } catch (emu_exception &) { fprintf(stderr, "Caught unhandled emulator exception\n"); - result = MAMERR_FATALERROR; + m_result = MAMERR_FATALERROR; } catch (std::bad_alloc &) { fprintf(stderr, "Out of memory!\n"); - result = MAMERR_FATALERROR; + m_result = MAMERR_FATALERROR; } // handle any other exceptions catch (...) { fprintf(stderr, "Caught unhandled exception\n"); - result = MAMERR_FATALERROR; + m_result = MAMERR_FATALERROR; } - // report any unfreed memory on clean exits - if (result == MAMERR_NONE) - dump_unfreed_mem(); - return result; + return m_result; } //------------------------------------------------- -// execute_commands - execute various frontend -// commands +// listxml - output the XML data for one or more +// games //------------------------------------------------- -static void execute_commands(cli_options &options, const char *exename) +void cli_frontend::listxml(const char *gamename) { - // help? - if (strcmp(options.command(), CLICOMMAND_HELP) == 0) - { - display_help(); - return; - } - - // showusage? - if (strcmp(options.command(), CLICOMMAND_SHOWUSAGE) == 0) - { - astring helpstring; -#ifndef MESS - mame_printf_info("Usage: %s [%s] [options]\n\nOptions:\n%s", exename, GAMENOUN, options.output_help(helpstring)); -#else - mame_printf_info("Usage: %s [%s] [media] [software] [options]\n\nOptions:\n%s", exename, GAMENOUN, options.output_help(helpstring)); -#endif - return; - } - - // validate? - if (strcmp(options.command(), CLICOMMAND_VALIDATE) == 0) - { - validate_drivers(options); - return; - } - - // other commands need the INIs parsed - astring option_errors; - options.parse_standard_inis(option_errors); - if (option_errors) - printf("%s\n", option_errors.cstr()); - - // createconfig? - if (strcmp(options.command(), CLICOMMAND_CREATECONFIG) == 0) - { - // attempt to open the output file - emu_file file(OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - if (file.open(CONFIGNAME ".ini") != FILERR_NONE) - throw emu_fatalerror("Unable to create file " CONFIGNAME ".ini\n"); - - // generate the updated INI - astring initext; - file.puts(options.output_ini(initext)); - return; - } - - // showconfig? - if (strcmp(options.command(), CLICOMMAND_SHOWCONFIG) == 0) - { - // print the INI text - astring initext; - printf("%s\n", options.output_ini(initext)); - return; - } - - // all other commands call out to one of these helpers - static const struct - { - const char *option; - void (*function)(emu_options &options, const char *gamename); - } info_commands[] = - { - { CLICOMMAND_LISTXML, cli_info_listxml }, - { CLICOMMAND_LISTFULL, cli_info_listfull }, - { CLICOMMAND_LISTSOURCE, cli_info_listsource }, - { CLICOMMAND_LISTCLONES, cli_info_listclones }, - { CLICOMMAND_LISTBROTHERS, cli_info_listbrothers }, - { CLICOMMAND_LISTCRC, cli_info_listcrc }, - { CLICOMMAND_LISTDEVICES, cli_info_listdevices }, - { CLICOMMAND_LISTROMS, cli_info_listroms }, - { CLICOMMAND_LISTSAMPLES, cli_info_listsamples }, - { CLICOMMAND_VERIFYROMS, info_verifyroms }, - { CLICOMMAND_VERIFYSAMPLES, info_verifysamples }, - { CLICOMMAND_LISTMEDIA, info_listmedia }, - { CLICOMMAND_LISTSOFTWARE, info_listsoftware }, - { CLICOMMAND_ROMIDENT, info_romident } - }; - - // find the command - for (int cmdindex = 0; cmdindex < ARRAY_LENGTH(info_commands); cmdindex++) - if (strcmp(options.command(), info_commands[cmdindex].option) == 0) - { - // parse any relevant INI files before proceeding - const char *sysname = options.system_name(); - (*info_commands[cmdindex].function)(options, (sysname[0] == 0) ? "*" : sysname); - return; - } + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - // if we get here, we don't know what has been requested - throw emu_fatalerror(MAMERR_INVALID_CONFIG, "Unknown command '%s' specified", options.command()); + // create the XML and print it to stdout + info_xml_creator creator(drivlist); + creator.output(stdout); } -/*------------------------------------------------- - display_help - display help to standard - output --------------------------------------------------*/ - -static void display_help(void) +//------------------------------------------------- +// listfull - output the name and description of +// one or more games +//------------------------------------------------- + +void cli_frontend::listfull(const char *gamename) { -#ifndef MESS - mame_printf_info("M.A.M.E. v%s - Multiple Arcade Machine Emulator\n" - "Copyright Nicola Salmoria and the MAME Team\n\n", build_version); - mame_printf_info("%s\n", mame_disclaimer); - mame_printf_info("Usage: MAME gamename [options]\n\n" - " MAME -showusage for a brief list of options\n" - " MAME -showconfig for a list of configuration options\n" - " MAME -createconfig to create a " CONFIGNAME ".ini\n\n" - "For usage instructions, please consult the file windows.txt\n"); -#else - mess_display_help(); -#endif -} - - - -/*************************************************************************** - INFORMATIONAL FUNCTIONS -***************************************************************************/ + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); -/*------------------------------------------------- - cli_info_listxml - output the XML data for one - or more games --------------------------------------------------*/ + // print the header + mame_printf_info("Name: Description:\n"); -void cli_info_listxml(emu_options &options, const char *gamename) -{ - print_mame_xml(stdout, drivers, gamename, options); + // iterate through drivers and output the info + while (drivlist.next()) + if ((drivlist.driver().flags & GAME_NO_STANDALONE) == 0) + mame_printf_info("%-18s\"%s\"\n", drivlist.driver().name, drivlist.driver().description); } -/*------------------------------------------------- - cli_info_listfull - output the name and - description of one or more games --------------------------------------------------*/ +//------------------------------------------------- +// listsource - output the name and source +// filename of one or more games +//------------------------------------------------- -void cli_info_listfull(emu_options &options, const char *gamename) +void cli_frontend::listsource(const char *gamename) { - int count = 0; - - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if ((drivers[drvindex]->flags & GAME_NO_STANDALONE) == 0 && mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - /* print the header on the first one */ - if (count == 0) - mame_printf_info("Name: Description:\n"); - - /* output the remaining information */ - mame_printf_info("%-18s\"%s\"\n", drivers[drvindex]->name, drivers[drvindex]->description); - count++; - } - - /* return an error if none found */ - if (count == 0) + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + + // iterate through drivers and output the info + astring filename; + while (drivlist.next()) + mame_printf_info("%-16s %s\n", drivlist.driver().name, core_filename_extract_base(&filename, drivlist.driver().source_file, FALSE)->cstr()); } -/*------------------------------------------------- - cli_info_listsource - output the name and source - filename of one or more games --------------------------------------------------*/ +//------------------------------------------------- +// listclones - output the name and parent of all +// clones matching the given pattern +//------------------------------------------------- -void cli_info_listsource(emu_options &options, const char *gamename) +void cli_frontend::listclones(const char *gamename) { - int count = 0; - astring filename; + // start with a filtered list of drivers + driver_enumerator drivlist(m_options, gamename); + int original_count = drivlist.count(); + + // iterate through the remaining ones to see if their parent matches + while (drivlist.next_excluded()) + { + // if we have a non-bios clone and it matches, keep it + int clone_of = drivlist.clone(); + if (clone_of != -1 && (drivlist.driver(clone_of).flags & GAME_IS_BIOS_ROOT) == 0) + if (drivlist.matches(gamename, drivlist.driver(clone_of).name)) + drivlist.include(); + } + + // return an error if none found + if (drivlist.count() == 0) + { + // see if we match but just weren't a clone + if (original_count == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + else + mame_printf_info("Found %d matches for '%s' but none were clones\n", drivlist.count(), gamename); + return; + } - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - /* output the remaining information */ - mame_printf_info("%-16s %s\n", drivers[drvindex]->name, core_filename_extract_base(&filename, drivers[drvindex]->source_file, FALSE)->cstr()); - count++; - } + // print the header + mame_printf_info("Name: Clone of:\n"); - /* return an error if none found */ - if (count == 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + // iterate through drivers and output the info + drivlist.reset(); + while (drivlist.next()) + { + int clone_of = drivlist.clone(); + if (clone_of != -1) + mame_printf_info("%-16s %-8s\n", drivlist.driver().name, drivlist.driver(clone_of).name); + } } -/*------------------------------------------------- - cli_info_listclones - output the name and source - filename of one or more games --------------------------------------------------*/ +//------------------------------------------------- +// listbrothers - for each matching game, output +// the list of other games that share the same +// source file +//------------------------------------------------- -void cli_info_listclones(emu_options &options, const char *gamename) +void cli_frontend::listbrothers(const char *gamename) { - int count = 0, drvcnt = 0; - - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - drvcnt++; - - if (drvcnt == 0) + // start with a filtered list of drivers; return an error if none found + driver_enumerator initial_drivlist(m_options, gamename); + if (initial_drivlist.count() == 0) throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - { - const game_driver *clone_of = driver_get_clone(drivers[drvindex]); + // for the final list, start with an empty driver list + driver_enumerator drivlist(m_options); + drivlist.exclude_all(); - /* if we are a clone, and either our name matches the gamename, or the clone's name matches, display us */ - if (clone_of != NULL && (clone_of->flags & GAME_IS_BIOS_ROOT) == 0) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0 || mame_strwildcmp(gamename, clone_of->name) == 0) - { - /* print the header on the first one */ - if (count == 0) - mame_printf_info("Name: Clone of:\n"); + // scan through the initially-selected drivers + while (initial_drivlist.next()) + { + // if we are already marked in the final list, we don't need to do anything + if (drivlist.included(initial_drivlist.current())) + continue; + + // otherwise, walk excluded items in the final list and mark any that match + drivlist.reset(); + while (drivlist.next_excluded()) + if (strcmp(drivlist.driver().source_file, initial_drivlist.driver().source_file) == 0) + drivlist.include(); + } + + // print the header + mame_printf_info("Source file: Name: Parent:\n"); - /* output the remaining information */ - mame_printf_info("%-16s %-8s\n", drivers[drvindex]->name, clone_of->name); - count++; - } + // output the entries found + drivlist.reset(); + astring filename; + while (drivlist.next()) + { + int clone_of = drivlist.clone(); + mame_printf_info("%-16s %-16s %-16s\n", core_filename_extract_base(&filename, drivlist.driver().source_file, FALSE)->cstr(), drivlist.driver().name, (clone_of == -1 ? "" : drivlist.driver(clone_of).name)); } } -/*------------------------------------------------- - cli_info_listbrothers - output the name and - source filename of one or more games --------------------------------------------------*/ +//------------------------------------------------- +// listcrc - output the CRC and name of all ROMs +// referenced by the emulator +//------------------------------------------------- -void cli_info_listbrothers(emu_options &options, const char *gamename) +void cli_frontend::listcrc(const char *gamename) { - UINT8 *didit = global_alloc_array_clear(UINT8, driver_list_get_count(drivers)); - int count = 0; - astring filename; + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (!didit[drvindex] && mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - didit[drvindex] = TRUE; - if (count > 0) - mame_printf_info("\n"); - mame_printf_info("%s ... other drivers in %s:\n", drivers[drvindex]->name, core_filename_extract_base(&filename, drivers[drvindex]->source_file, FALSE)->cstr()); - - /* now iterate again over drivers, finding those with the same source file */ - for (int matchindex = 0; drivers[matchindex]; matchindex++) - if (matchindex != drvindex && strcmp(drivers[drvindex]->source_file, drivers[matchindex]->source_file) == 0) + // iterate through matches, and then through ROMs + while (drivlist.next()) + for (const rom_source *source = rom_first_source(drivlist.config()); source != NULL; source = rom_next_source(*source)) + for (const rom_entry *region = rom_first_region(*source); region; region = rom_next_region(region)) + for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) { - const char *matchstring = (mame_strwildcmp(gamename, drivers[matchindex]->name) == 0) ? "-> " : " "; - const game_driver *clone_of = driver_get_clone(drivers[matchindex]); - - if (clone_of != NULL && (clone_of->flags & GAME_IS_BIOS_ROOT) == 0) - mame_printf_info("%s%-16s [%s]\n", matchstring, drivers[matchindex]->name, clone_of->name); - else - mame_printf_info("%s%s\n", matchstring, drivers[matchindex]->name); - didit[matchindex] = TRUE; + // if we have a CRC, display it + UINT32 crc; + if (hash_collection(ROM_GETHASHDATA(rom)).crc(crc)) + mame_printf_info("%08x %-16s %s\n", crc, ROM_GETNAME(rom), drivlist.driver().description); } - - count++; - } - - /* return an error if none found */ - global_free(didit); - if (count == 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); } -/*------------------------------------------------- - cli_info_listcrc - output the CRC and name of - all ROMs referenced by MAME --------------------------------------------------*/ +//------------------------------------------------- +// listroms - output the list of ROMs referenced +// by a given game or set of games +//------------------------------------------------- -void cli_info_listcrc(emu_options &options, const char *gamename) +void cli_frontend::listroms(const char *gamename) { - int count = 0; + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - machine_config config(*drivers[drvindex], options); - const rom_entry *region, *rom; - const rom_source *source; - - /* iterate over sources, regions, and then ROMs within the region */ - for (source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) - for (region = rom_first_region(*source); region; region = rom_next_region(region)) - for (rom = rom_first_file(region); rom; rom = rom_next_file(rom)) + // iterate through matches + astring tempstr; + bool first = true; + while (drivlist.next()) + { + // print a header + if (!first) + mame_printf_info("\n"); + first = false; + mame_printf_info("ROMs required for driver \"%s\".\n" + "Name Size Checksum\n", drivlist.driver().name); + + // iterate through roms + for (const rom_source *source = rom_first_source(drivlist.config()); source != NULL; source = rom_next_source(*source)) + for (const rom_entry *region = rom_first_region(*source); region; region = rom_next_region(region)) + for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) + { + // accumulate the total length of all chunks + int length = -1; + if (ROMREGION_ISROMDATA(region)) + length = rom_file_size(rom); + + // start with the name + const char *name = ROM_GETNAME(rom); + mame_printf_info("%-20s ", name); + + // output the length next + if (length >= 0) + mame_printf_info("%7d", length); + else + mame_printf_info(" "); + + // output the hash data + hash_collection hashes(ROM_GETHASHDATA(rom)); + if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) { - /* if we have a CRC, display it */ - UINT32 crc; - if (hash_collection(ROM_GETHASHDATA(rom)).crc(crc)) - mame_printf_info("%08x %-12s %s\n", crc, ROM_GETNAME(rom), drivers[drvindex]->description); + if (hashes.flag(hash_collection::FLAG_BAD_DUMP)) + mame_printf_info(" BAD"); + mame_printf_info(" %s", hashes.macro_string(tempstr)); } + else + mame_printf_info(" NO GOOD DUMP KNOWN"); - count++; - } - - /* return an error if none found */ - if (count == 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + // end with a CR + mame_printf_info("\n"); + } + } } -/*------------------------------------------------- - cli_info_listroms - output the list of ROMs - referenced by a given game or set of games --------------------------------------------------*/ +//------------------------------------------------- +// listsamples - output the list of samples +// referenced by a given game or set of games +//------------------------------------------------- -void cli_info_listroms(emu_options &options, const char *gamename) +void cli_frontend::listsamples(const char *gamename) { - int count = 0; - astring tempstr; + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - machine_config config(*drivers[drvindex], options); - - /* print the header */ - if (count > 0) - mame_printf_info("\n"); - mame_printf_info("This is the list of the ROMs required for driver \"%s\".\n" - "Name Size Checksum\n", drivers[drvindex]->name); - - /* iterate over sources, regions and then ROMs within the region */ - for (const rom_source *source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) - for (const rom_entry *region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) - for (const rom_entry *rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom)) - { - /* accumulate the total length of all chunks */ - int length = -1; - if (ROMREGION_ISROMDATA(region)) - length = rom_file_size(rom); - - /* start with the name */ - const char *name = ROM_GETNAME(rom); - mame_printf_info("%-20s ", name); - - /* output the length next */ - if (length >= 0) - mame_printf_info("%7d", length); - else - mame_printf_info(" "); - - /* output the hash data */ - hash_collection hashes(ROM_GETHASHDATA(rom)); - if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) - { - if (hashes.flag(hash_collection::FLAG_BAD_DUMP)) - mame_printf_info(" BAD"); - mame_printf_info(" %s", hashes.macro_string(tempstr)); - } - else - mame_printf_info(" NO GOOD DUMP KNOWN"); + // iterate over drivers, looking for SAMPLES devices + bool first = true; + while (drivlist.next()) + { + // see if we have samples + const device_config *devconfig; + for (devconfig = drivlist.config().first_device(); devconfig != NULL; devconfig = devconfig->next()) + if (devconfig->type() == SAMPLES) + break; + if (devconfig == NULL) + continue; + + // print a header + if (!first) + mame_printf_info("\n"); + first = false; + mame_printf_info("Samples required for driver \"%s\".\n", drivlist.driver().name); + + // iterate over samples devices + for ( ; devconfig != NULL; devconfig = devconfig->next()) + if (devconfig->type() == SAMPLES) + { + // if the list is legit, walk it and print the sample info + const char *const *samplenames = reinterpret_cast<const samples_interface *>(devconfig->static_config())->samplenames; + if (samplenames != NULL) + for (int sampnum = 0; samplenames[sampnum] != NULL; sampnum++) + if (samplenames[sampnum][0] != '*') + mame_printf_info("%s\n", samplenames[sampnum]); + } + } +} - /* end with a CR */ - mame_printf_info("\n"); - } - count++; - } +//------------------------------------------------- +// listdevices - output the list of devices +// referenced by a given game or set of games +//------------------------------------------------- - if (count == 0) +void cli_frontend::listdevices(const char *gamename) +{ + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + + // iterate over drivers, looking for SAMPLES devices + bool first = true; + while (drivlist.next()) + { + // print a header + if (!first) + printf("\n"); + first = false; + printf("Driver %s (%s):\n", drivlist.driver().name, drivlist.driver().description); + + // iterate through devices + for (const device_config *devconfig = drivlist.config().first_device(); devconfig != NULL; devconfig = devconfig->next()) + { + printf(" %s ('%s')", devconfig->name(), devconfig->tag()); + + UINT32 clock = devconfig->clock(); + if (clock >= 1000000000) + printf(" @ %d.%02d GHz\n", clock / 1000000000, (clock / 10000000) % 100); + else if (clock >= 1000000) + printf(" @ %d.%02d MHz\n", clock / 1000000, (clock / 10000) % 100); + else if (clock >= 1000) + printf(" @ %d.%02d kHz\n", clock / 1000, (clock / 10) % 100); + else if (clock > 0) + printf(" @ %d Hz\n", clock); + else + printf("\n"); + } + } } -/*------------------------------------------------- - cli_info_listsamples - output the list of samples - referenced by a given game or set of games --------------------------------------------------*/ +//------------------------------------------------- +// listmedia - output the list of image devices +// referenced by a given game or set of games +//------------------------------------------------- -void cli_info_listsamples(emu_options &options, const char *gamename) +void cli_frontend::listmedia(const char *gamename) { - int count = 0; + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - machine_config config(*drivers[drvindex], options); - const device_config_sound_interface *sound = NULL; + // print header + printf(" SYSTEM MEDIA NAME (brief) IMAGE FILE EXTENSIONS SUPPORTED \n"); + printf("---------- -------------------- ------------------------------------\n"); - /* find samples interfaces */ - for (bool gotone = config.m_devicelist.first(sound); gotone; gotone = sound->next(sound)) - if (sound->devconfig().type() == SAMPLES) - { - const char *const *samplenames = ((const samples_interface *)sound->devconfig().static_config())->samplenames; - int sampnum; + // iterate over drivers + while (drivlist.next()) + { + // iterate + const device_config_image_interface *imagedev = NULL; + bool first = true; + for (bool gotone = drivlist.config().m_devicelist.first(imagedev); gotone; gotone = imagedev->next(imagedev)) + { + // extract the shortname with parentheses + astring paren_shortname; + paren_shortname.format("(%s)", imagedev->brief_instance_name()); - /* if the list is legit, walk it and print the sample info */ - if (samplenames != NULL) - for (sampnum = 0; samplenames[sampnum] != NULL; sampnum++) - mame_printf_info("%s\n", samplenames[sampnum]); - } + // output the line, up to the list of extensions + printf("%-13s%-12s%-8s ", first ? drivlist.driver().name : "", imagedev->instance_name(), paren_shortname.cstr()); - count++; + // get the extensions and print them + astring extensions(imagedev->file_extensions()); + for (int start = 0, end = extensions.chr(0, ','); ; start = end + 1, end = extensions.chr(start, ',')) + { + astring curext(extensions, start, (end == -1) ? -1 : end - 1); + printf(".%-5s", curext.cstr()); + if (end == -1) + break; + } + + // end the line + printf("\n"); + first = false; } - - if (count == 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + + // if we didn't get any at all, just print a none line + if (first) + printf("%-13s(none)\n", drivlist.driver().name); + } } -/*------------------------------------------------- - cli_info_listdevices - output the list of - devices referenced by a given game or set of - games --------------------------------------------------*/ +//------------------------------------------------- +// verifyroms - verify the ROM sets of one or +// more games +//------------------------------------------------- -void cli_info_listdevices(emu_options &options, const char *gamename) +void cli_frontend::verifyroms(const char *gamename) { - int count = 0; - - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - machine_config config(*drivers[drvindex], options); + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - if (count != 0) - printf("\n"); - printf("Driver %s (%s):\n", drivers[drvindex]->name, drivers[drvindex]->description); + int correct = 0; + int incorrect = 0; + int notfound = 0; - /* iterate through devices */ - for (const device_config *devconfig = config.m_devicelist.first(); devconfig != NULL; devconfig = devconfig->next()) + // iterate over drivers + media_auditor auditor(drivlist); + while (drivlist.next()) + { + // audit the ROMs in this set + media_auditor::summary summary = auditor.audit_media(AUDIT_VALIDATE_FAST); + + // output the summary of the audit + astring summary_string; + auditor.summarize(&summary_string); + mame_printf_info("%s", summary_string.cstr()); + + // if not found, count that and leave it at that + if (summary == media_auditor::NOTFOUND) + notfound++; + + // else display information about what we discovered + else + { + // output the name of the driver and its clone + mame_printf_info("romset %s ", drivlist.driver().name); + int clone_of = drivlist.clone(); + if (clone_of != -1) + mame_printf_info("[%s] ", drivlist.driver(clone_of).name); + + // switch off of the result + switch (summary) { - printf(" %s ('%s')", devconfig->name(), devconfig->tag()); - - UINT32 clock = devconfig->clock(); - if (clock >= 1000000000) - printf(" @ %d.%02d GHz\n", clock / 1000000000, (clock / 10000000) % 100); - else if (clock >= 1000000) - printf(" @ %d.%02d MHz\n", clock / 1000000, (clock / 10000) % 100); - else if (clock >= 1000) - printf(" @ %d.%02d kHz\n", clock / 1000, (clock / 10) % 100); - else if (clock > 0) - printf(" @ %d Hz\n", clock); - else - printf("\n"); + case media_auditor::INCORRECT: + mame_printf_info("is bad\n"); + incorrect++; + break; + + case media_auditor::CORRECT: + mame_printf_info("is good\n"); + correct++; + break; + + case media_auditor::BEST_AVAILABLE: + mame_printf_info("is best available\n"); + correct++; + break; + + default: + break; } - - count++; } + } - if (count == 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + // clear out any cached files + zip_file_cache_clear(); + + // if we didn't get anything at all, display a generic end message + if (correct + incorrect == 0) + { + if (notfound > 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "romset \"%s\" not found!\n", gamename); + else + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "romset \"%s\" not supported!\n", gamename); + } + + // otherwise, print a summary + else + { + if (incorrect > 0) + throw emu_fatalerror(MAMERR_MISSING_FILES, "%d romsets found, %d were OK.\n", correct + incorrect, correct); + mame_printf_info("%d romsets found, %d were OK.\n", correct, correct); + } } -/*------------------------------------------------- - info_verifyroms - verify the ROM sets of - one or more games --------------------------------------------------*/ +//------------------------------------------------- +// info_verifysamples - verify the sample sets of +// one or more games +//------------------------------------------------- -static void info_verifyroms(emu_options &options, const char *gamename) +void cli_frontend::verifysamples(const char *gamename) { + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + int correct = 0; int incorrect = 0; int notfound = 0; - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) + // iterate over drivers + media_auditor auditor(drivlist); + while (drivlist.next()) + { + // audit the samples in this set + media_auditor::summary summary = auditor.audit_samples(); + + // output the summary of the audit + astring summary_string; + auditor.summarize(&summary_string); + mame_printf_info("%s", summary_string.cstr()); + + // if not found, print a message and set the flag + if (summary == media_auditor::NOTFOUND) { - audit_record *audit; - int audit_records; - int res; - - /* audit the ROMs in this set */ - audit_records = audit_images(options, drivers[drvindex], AUDIT_VALIDATE_FAST, &audit); - res = audit_summary(drivers[drvindex], audit_records, audit, TRUE); - if (audit_records > 0) - global_free(audit); - - /* if not found, count that and leave it at that */ - if (res == NOTFOUND) - notfound++; + mame_printf_error("sampleset \"%s\" not found!\n", drivlist.driver().name); + notfound++; + } - /* else display information about what we discovered */ - else + // else display information about what we discovered + else + { + // output the name of the driver and its clone + mame_printf_info("sampleset %s ", drivlist.driver().name); + int clone_of = drivlist.clone(); + if (clone_of != -1) + mame_printf_info("[%s] ", drivlist.driver(clone_of).name); + + // switch off of the result + switch (summary) { - const game_driver *clone_of; - - /* output the name of the driver and its clone */ - mame_printf_info("romset %s ", drivers[drvindex]->name); - clone_of = driver_get_clone(drivers[drvindex]); - if (clone_of != NULL) - mame_printf_info("[%s] ", clone_of->name); - - /* switch off of the result */ - switch (res) - { - case INCORRECT: - mame_printf_info("is bad\n"); - incorrect++; - break; - - case CORRECT: - mame_printf_info("is good\n"); - correct++; - break; - - case BEST_AVAILABLE: - mame_printf_info("is best available\n"); - correct++; - break; - } + case media_auditor::INCORRECT: + mame_printf_info("is bad\n"); + incorrect++; + break; + + case media_auditor::CORRECT: + mame_printf_info("is good\n"); + correct++; + break; + + case media_auditor::BEST_AVAILABLE: + mame_printf_info("is best available\n"); + correct++; + break; + + default: + break; } } + } - /* clear out any cached files */ + // clear out any cached files zip_file_cache_clear(); - /* if we didn't get anything at all, display a generic end message */ + // if we didn't get anything at all, display a generic end message if (correct + incorrect == 0) { if (notfound > 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "romset \"%s\" not found!\n", gamename); + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "sampleset \"%s\" not found!\n", gamename); else - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "romset \"%s\" not supported!\n", gamename); + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "sampleset \"%s\" not supported!\n", gamename); } - /* otherwise, print a summary */ + // otherwise, print a summary else { if (incorrect > 0) - throw emu_fatalerror(MAMERR_MISSING_FILES, "%d romsets found, %d were OK.\n", correct + incorrect, correct); - mame_printf_info("%d romsets found, %d were OK.\n", correct, correct); + throw emu_fatalerror(MAMERR_MISSING_FILES, "%d samplesets found, %d were OK.\n", correct + incorrect, correct); + mame_printf_info("%d samplesets found, %d were OK.\n", correct, correct); } } + + +#if 0 /*------------------------------------------------- info_listsoftware - output the list of software supported by a given game or set of @@ -798,37 +800,31 @@ static void info_verifyroms(emu_options &options, const char *gamename) identifying duplicate lists. -------------------------------------------------*/ -static void info_listsoftware(emu_options &options, const char *gamename) +static void info_listsoftware(const char *gamename) { FILE *out = stdout; - int nr_lists = 0; - char ** lists = NULL; - int list_idx = 0; - /* First determine the maximum number of lists we might encounter */ - for ( int drvindex = 0; drivers[drvindex] != NULL; drvindex++ ) - { - if ( mame_strwildcmp( gamename, drivers[drvindex]->name ) == 0 ) - { - /* allocate the machine config */ - machine_config config(*drivers[drvindex], options); + // determine which drivers to output; return an error if none found + driver_enumerator drivlist(m_options, gamename); + if (drivlist.count() == 0) + throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - for (const device_config *dev = config.m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) - { - software_list_config *swlist = (software_list_config *)downcast<const legacy_device_config_base *>(dev)->inline_config(); + // first determine the maximum number of lists we might encounter + int list_count = 0; + while (drivlist.next()) + for (const device_config *dev = drivlist.config().m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) + { + software_list_config *swlist = (software_list_config *)downcast<const legacy_device_config_base *>(dev)->inline_config(); - for ( int i = 0; i < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; i++ ) - { - if ( swlist->list_name[i] && *swlist->list_name[i] && (swlist->list_type == SOFTWARE_LIST_ORIGINAL_SYSTEM)) - nr_lists++; - } - } + for (int listnum = 0; listnum < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; listnum++) + if (swlist->list_name[listnum] && *swlist->list_name[listnum] && swlist->list_type == SOFTWARE_LIST_ORIGINAL_SYSTEM) + list_count++; } - } - lists = global_alloc_array( char *, nr_lists ); + // allocate a list + astring *lists = global_alloc_array(astring, list_count); - if (nr_lists) + if (list_count) { fprintf( out, "<?xml version=\"1.0\"?>\n" @@ -902,664 +898,602 @@ static void info_listsoftware(emu_options &options, const char *gamename) ); } - for ( int drvindex = 0; drivers[drvindex] != NULL; drvindex++ ) - { - if ( mame_strwildcmp( gamename, drivers[drvindex]->name ) == 0 ) + drivlist.reset(); + list_count = 0; + while (drivlist.next()) + for (const device_config *dev = drivlist.config().m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) { - /* allocate the machine config */ - machine_config config(*drivers[drvindex], options); + software_list_config *swlist = (software_list_config *)downcast<const legacy_device_config_base *>(dev)->inline_config(); - for (const device_config *dev = config.m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) + for (int listnum = 0; listnum < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; listnum++) { - software_list_config *swlist = (software_list_config *)downcast<const legacy_device_config_base *>(dev)->inline_config(); - - for ( int i = 0; i < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; i++ ) + if (swlist->list_name[listnum] && *swlist->list_name[listnum] && swlist->list_type == SOFTWARE_LIST_ORIGINAL_SYSTEM) { - if ( swlist->list_name[i] && *swlist->list_name[i] && (swlist->list_type == SOFTWARE_LIST_ORIGINAL_SYSTEM)) + software_list *list = software_list_open(m_options, swlist->list_name[listnum], FALSE, NULL); + + if ( list ) { - software_list *list = software_list_open( options, swlist->list_name[i], FALSE, NULL ); + /* Verify if we have encountered this list before */ + bool seen_before = false; + for (int seen_index = 0; seen_index < list_count && !seen_before; seen_index++) + if (lists[seen_index] == swlist->list_name[listnum]) + seen_before = true; - if ( list ) + if (!seen_before) { - /* Verify if we have encountered this list before */ - bool seen_before = false; - for ( int l = 0; l < list_idx && !seen_before; l++ ) - { - if ( ! strcmp( swlist->list_name[i], lists[l] ) ) - { - seen_before = true; - } - } + lists[list_count++] = swlist->list_name[i]; + software_list_parse( list, NULL, NULL ); + + fprintf(out, "\t<softwarelist name=\"%s\" description=\"%s\">\n", swlist->list_name[i], xml_normalize_string(software_list_get_description(list)) ); - if ( ! seen_before ) + for ( software_info *swinfo = software_list_find( list, "*", NULL ); swinfo != NULL; swinfo = software_list_find( list, "*", swinfo ) ) { - lists[list_idx] = core_strdup( swlist->list_name[i] ); - list_idx++; - software_list_parse( list, NULL, NULL ); + fprintf( out, "\t\t<software name=\"%s\"", swinfo->shortname ); + if ( swinfo->parentname != NULL ) + fprintf( out, " cloneof=\"%s\"", swinfo->parentname ); + if ( swinfo->supported == SOFTWARE_SUPPORTED_PARTIAL ) + fprintf( out, " supported=\"partial\"" ); + if ( swinfo->supported == SOFTWARE_SUPPORTED_NO ) + fprintf( out, " supported=\"no\"" ); + fprintf( out, ">\n" ); + fprintf( out, "\t\t\t<description>%s</description>\n", xml_normalize_string(swinfo->longname) ); + fprintf( out, "\t\t\t<year>%s</year>\n", xml_normalize_string( swinfo->year ) ); + fprintf( out, "\t\t\t<publisher>%s</publisher>\n", xml_normalize_string( swinfo->publisher ) ); + + for ( software_part *part = software_find_part( swinfo, NULL, NULL ); part != NULL; part = software_part_next( part ) ) + { + fprintf( out, "\t\t\t<part name=\"%s\"", part->name ); + if ( part->interface_ ) + fprintf( out, " interface=\"%s\"", part->interface_ ); - fprintf(out, "\t<softwarelist name=\"%s\" description=\"%s\">\n", swlist->list_name[i], xml_normalize_string(software_list_get_description(list)) ); + fprintf( out, ">\n"); - for ( software_info *swinfo = software_list_find( list, "*", NULL ); swinfo != NULL; swinfo = software_list_find( list, "*", swinfo ) ) - { - fprintf( out, "\t\t<software name=\"%s\"", swinfo->shortname ); - if ( swinfo->parentname != NULL ) - fprintf( out, " cloneof=\"%s\"", swinfo->parentname ); - if ( swinfo->supported == SOFTWARE_SUPPORTED_PARTIAL ) - fprintf( out, " supported=\"partial\"" ); - if ( swinfo->supported == SOFTWARE_SUPPORTED_NO ) - fprintf( out, " supported=\"no\"" ); - fprintf( out, ">\n" ); - fprintf( out, "\t\t\t<description>%s</description>\n", xml_normalize_string(swinfo->longname) ); - fprintf( out, "\t\t\t<year>%s</year>\n", xml_normalize_string( swinfo->year ) ); - fprintf( out, "\t\t\t<publisher>%s</publisher>\n", xml_normalize_string( swinfo->publisher ) ); - - for ( software_part *part = software_find_part( swinfo, NULL, NULL ); part != NULL; part = software_part_next( part ) ) + if ( part->featurelist ) { - fprintf( out, "\t\t\t<part name=\"%s\"", part->name ); - if ( part->interface_ ) - fprintf( out, " interface=\"%s\"", part->interface_ ); + feature_list *list = part->featurelist; - fprintf( out, ">\n"); - - if ( part->featurelist ) + while( list ) { - feature_list *list = part->featurelist; - - while( list ) - { - fprintf( out, "\t\t\t\t<feature name=\"%s\" value=\"%s\" />\n", list->name, list->value ); - list = list->next; - } + fprintf( out, "\t\t\t\t<feature name=\"%s\" value=\"%s\" />\n", list->name, list->value ); + list = list->next; } + } - /* TODO: display rom region information */ - for ( const rom_entry *region = part->romdata; region; region = rom_next_region( region ) ) - { - int is_disk = ROMREGION_ISDISKDATA(region); + /* TODO: display rom region information */ + for ( const rom_entry *region = part->romdata; region; region = rom_next_region( region ) ) + { + int is_disk = ROMREGION_ISDISKDATA(region); - if (!is_disk) - fprintf( out, "\t\t\t\t<dataarea name=\"%s\" size=\"%d\">\n", ROMREGION_GETTAG(region), ROMREGION_GETLENGTH(region) ); - else - fprintf( out, "\t\t\t\t<diskarea name=\"%s\">\n", ROMREGION_GETTAG(region) ); + if (!is_disk) + fprintf( out, "\t\t\t\t<dataarea name=\"%s\" size=\"%d\">\n", ROMREGION_GETTAG(region), ROMREGION_GETLENGTH(region) ); + else + fprintf( out, "\t\t\t\t<diskarea name=\"%s\">\n", ROMREGION_GETTAG(region) ); - for ( const rom_entry *rom = rom_first_file( region ); rom && !ROMENTRY_ISREGIONEND(rom); rom++ ) + for ( const rom_entry *rom = rom_first_file( region ); rom && !ROMENTRY_ISREGIONEND(rom); rom++ ) + { + if ( ROMENTRY_ISFILE(rom) ) { - if ( ROMENTRY_ISFILE(rom) ) + if (!is_disk) + fprintf( out, "\t\t\t\t\t<rom name=\"%s\" size=\"%d\"", xml_normalize_string(ROM_GETNAME(rom)), rom_file_size(rom) ); + else + fprintf( out, "\t\t\t\t\t<disk name=\"%s\"", xml_normalize_string(ROM_GETNAME(rom)) ); + + /* dump checksum information only if there is a known dump */ + hash_collection hashes(ROM_GETHASHDATA(rom)); + if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) { - if (!is_disk) - fprintf( out, "\t\t\t\t\t<rom name=\"%s\" size=\"%d\"", xml_normalize_string(ROM_GETNAME(rom)), rom_file_size(rom) ); - else - fprintf( out, "\t\t\t\t\t<disk name=\"%s\"", xml_normalize_string(ROM_GETNAME(rom)) ); - - /* dump checksum information only if there is a known dump */ - hash_collection hashes(ROM_GETHASHDATA(rom)); - if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) - { - astring tempstr; - for (hash_base *hash = hashes.first(); hash != NULL; hash = hash->next()) - fprintf(out, " %s=\"%s\"", hash->name(), hash->string(tempstr)); - } - - if (!is_disk) - fprintf( out, " offset=\"0x%x\"", ROM_GETOFFSET(rom) ); - - if ( hashes.flag(hash_collection::FLAG_BAD_DUMP) ) - fprintf( out, " status=\"baddump\"" ); - if ( hashes.flag(hash_collection::FLAG_NO_DUMP) ) - fprintf( out, " status=\"nodump\"" ); - - if (is_disk) - fprintf( out, " writeable=\"%s\"", (ROM_GETFLAGS(rom) & DISK_READONLYMASK) ? "no" : "yes"); - - if ((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(1)) - fprintf( out, " loadflag=\"load16_byte\"" ); - - if ((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(3)) - fprintf( out, " loadflag=\"load32_byte\"" ); - - if (((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(2)) && ((ROM_GETFLAGS(rom) & ROM_GROUPMASK) == ROM_GROUPWORD)) - { - if (!(ROM_GETFLAGS(rom) & ROM_REVERSEMASK)) - fprintf( out, " loadflag=\"load32_word\"" ); - else - fprintf( out, " loadflag=\"load32_word_swap\"" ); - } - - if (((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(6)) && ((ROM_GETFLAGS(rom) & ROM_GROUPMASK) == ROM_GROUPWORD)) - { - if (!(ROM_GETFLAGS(rom) & ROM_REVERSEMASK)) - fprintf( out, " loadflag=\"load64_word\"" ); - else - fprintf( out, " loadflag=\"load64_word_swap\"" ); - } - - if (((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_NOSKIP) && ((ROM_GETFLAGS(rom) & ROM_GROUPMASK) == ROM_GROUPWORD)) - { - if (!(ROM_GETFLAGS(rom) & ROM_REVERSEMASK)) - fprintf( out, " loadflag=\"load32_dword\"" ); - else - fprintf( out, " loadflag=\"load16_word_swap\"" ); - } - - fprintf( out, "/>\n" ); + astring tempstr; + for (hash_base *hash = hashes.first(); hash != NULL; hash = hash->next()) + fprintf(out, " %s=\"%s\"", hash->name(), hash->string(tempstr)); } - else if ( ROMENTRY_ISRELOAD(rom) ) + + if (!is_disk) + fprintf( out, " offset=\"0x%x\"", ROM_GETOFFSET(rom) ); + + if ( hashes.flag(hash_collection::FLAG_BAD_DUMP) ) + fprintf( out, " status=\"baddump\"" ); + if ( hashes.flag(hash_collection::FLAG_NO_DUMP) ) + fprintf( out, " status=\"nodump\"" ); + + if (is_disk) + fprintf( out, " writeable=\"%s\"", (ROM_GETFLAGS(rom) & DISK_READONLYMASK) ? "no" : "yes"); + + if ((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(1)) + fprintf( out, " loadflag=\"load16_byte\"" ); + + if ((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(3)) + fprintf( out, " loadflag=\"load32_byte\"" ); + + if (((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(2)) && ((ROM_GETFLAGS(rom) & ROM_GROUPMASK) == ROM_GROUPWORD)) { - fprintf( out, "\t\t\t\t\t<rom size=\"%d\" offset=\"0x%x\" loadflag=\"reload\" />\n", ROM_GETLENGTH(rom), ROM_GETOFFSET(rom) ); + if (!(ROM_GETFLAGS(rom) & ROM_REVERSEMASK)) + fprintf( out, " loadflag=\"load32_word\"" ); + else + fprintf( out, " loadflag=\"load32_word_swap\"" ); } - else if ( ROMENTRY_ISCONTINUE(rom) ) + + if (((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_SKIP(6)) && ((ROM_GETFLAGS(rom) & ROM_GROUPMASK) == ROM_GROUPWORD)) { - fprintf( out, "\t\t\t\t\t<rom size=\"%d\" offset=\"0x%x\" loadflag=\"continue\" />\n", ROM_GETLENGTH(rom), ROM_GETOFFSET(rom) ); + if (!(ROM_GETFLAGS(rom) & ROM_REVERSEMASK)) + fprintf( out, " loadflag=\"load64_word\"" ); + else + fprintf( out, " loadflag=\"load64_word_swap\"" ); } - else if ( ROMENTRY_ISFILL(rom) ) + + if (((ROM_GETFLAGS(rom) & ROM_SKIPMASK) == ROM_NOSKIP) && ((ROM_GETFLAGS(rom) & ROM_GROUPMASK) == ROM_GROUPWORD)) { - fprintf( out, "\t\t\t\t\t<rom size=\"%d\" offset=\"0x%x\" loadflag=\"fill\" />\n", ROM_GETLENGTH(rom), ROM_GETOFFSET(rom) ); + if (!(ROM_GETFLAGS(rom) & ROM_REVERSEMASK)) + fprintf( out, " loadflag=\"load32_dword\"" ); + else + fprintf( out, " loadflag=\"load16_word_swap\"" ); } - } - if (!is_disk) - fprintf( out, "\t\t\t\t</dataarea>\n" ); - else - fprintf( out, "\t\t\t\t</diskarea>\n" ); + fprintf( out, "/>\n" ); + } + else if ( ROMENTRY_ISRELOAD(rom) ) + { + fprintf( out, "\t\t\t\t\t<rom size=\"%d\" offset=\"0x%x\" loadflag=\"reload\" />\n", ROM_GETLENGTH(rom), ROM_GETOFFSET(rom) ); + } + else if ( ROMENTRY_ISCONTINUE(rom) ) + { + fprintf( out, "\t\t\t\t\t<rom size=\"%d\" offset=\"0x%x\" loadflag=\"continue\" />\n", ROM_GETLENGTH(rom), ROM_GETOFFSET(rom) ); + } + else if ( ROMENTRY_ISFILL(rom) ) + { + fprintf( out, "\t\t\t\t\t<rom size=\"%d\" offset=\"0x%x\" loadflag=\"fill\" />\n", ROM_GETLENGTH(rom), ROM_GETOFFSET(rom) ); + } } - fprintf( out, "\t\t\t</part>\n" ); + if (!is_disk) + fprintf( out, "\t\t\t\t</dataarea>\n" ); + else + fprintf( out, "\t\t\t\t</diskarea>\n" ); } - fprintf( out, "\t\t</software>\n" ); + fprintf( out, "\t\t\t</part>\n" ); } - fprintf(out, "\t</softwarelist>\n" ); + fprintf( out, "\t\t</software>\n" ); } - software_list_close( list ); + fprintf(out, "\t</softwarelist>\n" ); } + + software_list_close( list ); } } } } - } - if (nr_lists) + if (list_count > 0) fprintf( out, "</softwarelists>\n" ); else fprintf( out, "No software lists found for this system\n" ); global_free( lists ); } +#endif -/*------------------------------------------------- - softlist_match_roms - scan for a matching - software ROM by hash --------------------------------------------------*/ -void softlist_match_roms(machine_config &config, const hash_collection &hashes, int length, int *found) -{ - for (const device_config *dev = config.m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) - { - software_list_config *swlist = (software_list_config *)downcast<const legacy_device_config_base *>(dev)->inline_config(); - - for ( int i = 0; i < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; i++ ) - { - if ( swlist->list_name[i] ) - { - software_list *list = software_list_open( config.options(), swlist->list_name[i], FALSE, NULL ); - - for ( software_info *swinfo = software_list_find( list, "*", NULL ); swinfo != NULL; swinfo = software_list_find( list, "*", swinfo ) ) - { - for ( software_part *part = software_find_part( swinfo, NULL, NULL ); part != NULL; part = software_part_next( part ) ) - { - for ( const rom_entry *region = part->romdata; region != NULL; region = rom_next_region(region) ) - { - for ( const rom_entry *rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom) ) - { - hash_collection romhashes(ROM_GETHASHDATA(rom)); - if ( hashes == romhashes ) - { - bool baddump = romhashes.flag(hash_collection::FLAG_BAD_DUMP); - - /* output information about the match */ - if (*found != 0) - mame_printf_info(" "); - mame_printf_info("= %s%-20s %s:%s %s\n", baddump ? "(BAD) " : "", ROM_GETNAME(rom), swlist->list_name[i], swinfo->shortname, swinfo->longname); - (*found)++; - } - } - } - } - } - - software_list_close( list ); - } - } - } -} - -/*------------------------------------------------- - info_listmedia - output the list of image - devices referenced by a given game or set of - games --------------------------------------------------*/ +//------------------------------------------------- +// romident - identify ROMs by looking for +// matches in our internal database +//------------------------------------------------- -static void info_listmedia(emu_options &options, const char *gamename) +void cli_frontend::romident(const char *filename) { - int count = 0, devcount; - const device_config_image_interface *dev = NULL; - const char *src; - const char *driver_name; - const char *name; - const char *shortname; - char paren_shortname[16]; + media_identifier ident(m_options); - printf(" SYSTEM MEDIA NAME (brief) IMAGE FILE EXTENSIONS SUPPORTED \n"); - printf("---------- -------------------- ------------------------------------\n"); - - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - /* allocate the machine config */ - machine_config config(*drivers[drvindex], options); + // identify the file, then output results + mame_printf_info("Identifying %s....\n", filename); + ident.identify(filename); + mame_printf_info("%s\n", ident.result()); - driver_name = drivers[drvindex]->name; - - devcount = 0; - - for (bool gotone = config.m_devicelist.first(dev); gotone; gotone = dev->next(dev)) - { - src = downcast<const legacy_image_device_config_base *>(dev)->file_extensions(); - name = downcast<const legacy_image_device_config_base *>(dev)->instance_name(); - shortname = downcast<const legacy_image_device_config_base *>(dev)->brief_instance_name(); - - sprintf(paren_shortname, "(%s)", shortname); - - printf("%-13s%-12s%-8s ", driver_name, name, paren_shortname); - driver_name = " "; - - astring extensions(src); - char *ext = strtok((char*)extensions.cstr(),","); - while (ext != NULL) - { - printf(".%-5s",ext); - ext = strtok (NULL, ","); - devcount++; - } - printf("\n"); - } - if (!devcount) - printf("%-13s(none)\n",driver_name); - - count++; - } - - if (!count) - printf("There are no Computers or Consoles named %s\n", gamename); - - if (count == 0) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); + // return the appropriate error code + if (ident.matches() == ident.total()) + return; + else if (ident.matches() == ident.total() - ident.nonroms()) + throw emu_fatalerror(MAMERR_IDENT_NONROMS, ""); + else if (ident.matches() > 0) + throw emu_fatalerror(MAMERR_IDENT_PARTIAL, ""); + else + throw emu_fatalerror(MAMERR_IDENT_NONE, ""); } -/*------------------------------------------------- - info_verifysamples - verify the sample sets of - one or more games --------------------------------------------------*/ +//------------------------------------------------- +// execute_commands - execute various frontend +// commands +//------------------------------------------------- -static void info_verifysamples(emu_options &options, const char *gamename) +void cli_frontend::execute_commands(const char *exename) { - int correct = 0; - int incorrect = 0; - int notfound = FALSE; + // help? + if (strcmp(m_options.command(), CLICOMMAND_HELP) == 0) + { + display_help(); + return; + } - /* now iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - if (mame_strwildcmp(gamename, drivers[drvindex]->name) == 0) - { - audit_record *audit; - int audit_records; - int res; - - /* audit the samples in this set */ - audit_records = audit_samples(options, drivers[drvindex], &audit); - res = audit_summary(drivers[drvindex], audit_records, audit, TRUE); - if (audit_records > 0) - global_free(audit); - else - continue; + // showusage? + if (strcmp(m_options.command(), CLICOMMAND_SHOWUSAGE) == 0) + { + astring helpstring; +#ifndef MESS + mame_printf_info("Usage: %s [%s] [options]\n\nOptions:\n%s", exename, GAMENOUN, m_options.output_help(helpstring)); +#else + mame_printf_info("Usage: %s [%s] [media] [software] [options]\n\nOptions:\n%s", exename, GAMENOUN, m_options.output_help(helpstring)); +#endif + return; + } - /* if not found, print a message and set the flag */ - if (res == NOTFOUND) - { - mame_printf_error("sampleset \"%s\" not found!\n", drivers[drvindex]->name); - notfound = TRUE; - } + // validate? + if (strcmp(m_options.command(), CLICOMMAND_VALIDATE) == 0) + { + validate_drivers(m_options); + return; + } - /* else display information about what we discovered */ - else - { - mame_printf_info("sampleset %s ", drivers[drvindex]->name); + // other commands need the INIs parsed + astring option_errors; + m_options.parse_standard_inis(option_errors); + if (option_errors) + printf("%s\n", option_errors.cstr()); - /* switch off of the result */ - switch (res) - { - case INCORRECT: - mame_printf_info("is bad\n"); - incorrect++; - break; - - case CORRECT: - mame_printf_info("is good\n"); - correct++; - break; - - case BEST_AVAILABLE: - mame_printf_info("is best available\n"); - correct++; - break; - } - } - } + // createconfig? + if (strcmp(m_options.command(), CLICOMMAND_CREATECONFIG) == 0) + { + // attempt to open the output file + emu_file file(OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); + if (file.open(CONFIGNAME ".ini") != FILERR_NONE) + throw emu_fatalerror("Unable to create file " CONFIGNAME ".ini\n"); - /* clear out any cached files */ - zip_file_cache_clear(); + // generate the updated INI + astring initext; + file.puts(m_options.output_ini(initext)); + return; + } - /* if we didn't get anything at all because of an unsupported set, display message */ - if (correct + incorrect == 0) + // showconfig? + if (strcmp(m_options.command(), CLICOMMAND_SHOWCONFIG) == 0) { - if (!notfound) - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No matching games found for '%s'", gamename); - else - throw emu_fatalerror(MAMERR_NO_SUCH_GAME, "No sample sets found for '%s'", gamename); + // print the INI text + astring initext; + printf("%s\n", m_options.output_ini(initext)); + return; } - /* otherwise, print a summary */ - else + // all other commands call out to one of these helpers + static const struct { - if (incorrect > 0) - throw emu_fatalerror(MAMERR_MISSING_FILES, "%d sample sets found, %d were OK.\n", correct + incorrect, correct); - mame_printf_info("%d sample sets found, %d were OK.\n", correct, correct); - } + const char *option; + void (cli_frontend::*function)(const char *gamename); + } info_commands[] = + { + { CLICOMMAND_LISTXML, &cli_frontend::listxml }, + { CLICOMMAND_LISTFULL, &cli_frontend::listfull }, + { CLICOMMAND_LISTSOURCE, &cli_frontend::listsource }, + { CLICOMMAND_LISTCLONES, &cli_frontend::listclones }, + { CLICOMMAND_LISTBROTHERS, &cli_frontend::listbrothers }, + { CLICOMMAND_LISTCRC, &cli_frontend::listcrc }, + { CLICOMMAND_LISTDEVICES, &cli_frontend::listdevices }, + { CLICOMMAND_LISTROMS, &cli_frontend::listroms }, + { CLICOMMAND_LISTSAMPLES, &cli_frontend::listsamples }, + { CLICOMMAND_VERIFYROMS, &cli_frontend::verifyroms }, + { CLICOMMAND_VERIFYSAMPLES, &cli_frontend::verifysamples }, + { CLICOMMAND_LISTMEDIA, &cli_frontend::listmedia }, +// { CLICOMMAND_LISTSOFTWARE, &cli_frontend::listsoftware }, + { CLICOMMAND_ROMIDENT, &cli_frontend::romident } + }; + + // find the command + for (int cmdindex = 0; cmdindex < ARRAY_LENGTH(info_commands); cmdindex++) + if (strcmp(m_options.command(), info_commands[cmdindex].option) == 0) + { + // parse any relevant INI files before proceeding + const char *sysname = m_options.system_name(); + (this->*info_commands[cmdindex].function)((sysname[0] == 0) ? "*" : sysname); + return; + } + + // if we get here, we don't know what has been requested + throw emu_fatalerror(MAMERR_INVALID_CONFIG, "Unknown command '%s' specified", m_options.command()); } -/*------------------------------------------------- - info_romident - identify ROMs by looking for - matches in our internal database --------------------------------------------------*/ +//------------------------------------------------- +// display_help - display help to standard +// output +//------------------------------------------------- -static void info_romident(emu_options &options, const char *gamename) +void cli_frontend::display_help() { - romident_status status; +#ifndef MESS + mame_printf_info("M.A.M.E. v%s - Multiple Arcade Machine Emulator\n" + "Copyright Nicola Salmoria and the MAME Team\n\n", build_version); + mame_printf_info("%s\n", mame_disclaimer); + mame_printf_info("Usage: MAME gamename [options]\n\n" + " MAME -showusage for a brief list of options\n" + " MAME -showconfig for a list of configuration options\n" + " MAME -createconfig to create a " CONFIGNAME ".ini\n\n" + "For usage instructions, please consult the file windows.txt\n"); +#else + mess_display_help(); +#endif +} - /* do the identification */ - romident(options, gamename, &status); - /* clear out any cached files */ - zip_file_cache_clear(); +//------------------------------------------------- +// display_suggestions - display 10 possible +// matches for a given invalid gamename +//------------------------------------------------- - /* return the appropriate error code */ - if (status.matches == status.total) - return; - else if (status.matches == status.total - status.nonroms) - throw emu_fatalerror(MAMERR_IDENT_NONROMS, ""); - else if (status.matches > 0) - throw emu_fatalerror(MAMERR_IDENT_PARTIAL, ""); - else - throw emu_fatalerror(MAMERR_IDENT_NONE, ""); +void cli_frontend::display_suggestions(const char *gamename) +{ } +//************************************************************************** +// MEDIA IDENTIFIER +//************************************************************************** -/*************************************************************************** - UTILITIES -***************************************************************************/ - -/*------------------------------------------------- - romident - identify files --------------------------------------------------*/ +//------------------------------------------------- +// media_identifier - constructor +//------------------------------------------------- -static void romident(emu_options &options, const char *filename, romident_status *status) +media_identifier::media_identifier(cli_options &options) + : m_drivlist(options), + m_total(0), + m_matches(0), + m_nonroms(0) { - osd_directory *directory; +} - /* reset the status */ - memset(status, 0, sizeof(*status)); - /* first try to open as a directory */ - directory = osd_opendir(filename); +//------------------------------------------------- +// identify - identify a directory, ZIP file, +// or raw file +//------------------------------------------------- + +void media_identifier::identify(const char *filename) +{ + // first try to open as a directory + osd_directory *directory = osd_opendir(filename); if (directory != NULL) { - const osd_directory_entry *entry; - - /* iterate over all files in the directory */ - while ((entry = osd_readdir(directory)) != NULL) + // iterate over all files in the directory + for (const osd_directory_entry *entry = osd_readdir(directory); entry != NULL; entry = osd_readdir(directory)) if (entry->type == ENTTYPE_FILE) { astring curfile(filename, PATH_SEPARATOR, entry->name); - identify_file(options, curfile, status); + identify_file(curfile); } + + // close the directory and be done osd_closedir(directory); } - /* if that failed, and the filename ends with .zip, identify as a ZIP file */ + // if that failed, and the filename ends with .zip, identify as a ZIP file else if (core_filename_ends_with(filename, ".zip")) { - /* first attempt to examine it as a valid ZIP file */ + // first attempt to examine it as a valid ZIP file zip_file *zip = NULL; zip_error ziperr = zip_file_open(filename, &zip); if (ziperr == ZIPERR_NONE && zip != NULL) { - const zip_file_header *entry; - - /* loop over entries in the ZIP, skipping empty files and directories */ - for (entry = zip_file_first_file(zip); entry; entry = zip_file_next_file(zip)) + // loop over entries in the ZIP, skipping empty files and directories + for (const zip_file_header *entry = zip_file_first_file(zip); entry != NULL; entry = zip_file_next_file(zip)) if (entry->uncompressed_length != 0) { UINT8 *data = global_alloc_array(UINT8, entry->uncompressed_length); if (data != NULL) { - /* decompress data into RAM and identify it */ + // decompress data into RAM and identify it ziperr = zip_file_decompress(zip, data, entry->uncompressed_length); if (ziperr == ZIPERR_NONE) - identify_data(options, entry->filename, data, entry->uncompressed_length, status); + identify_data(entry->filename, data, entry->uncompressed_length); global_free(data); } } - /* close up */ + // close up zip_file_close(zip); } + + // clear out any cached files + zip_file_cache_clear(); } - /* otherwise, identify as a raw file */ + // otherwise, identify as a raw file else - identify_file(options, filename, status); + identify_file(filename); } -/*------------------------------------------------- - identify_file - identify a file; if it is a - ZIP file, scan it and identify all enclosed - files --------------------------------------------------*/ +//------------------------------------------------- +// identify_file - identify a file +//------------------------------------------------- -static void identify_file(emu_options &options, const char *name, romident_status *status) +void media_identifier::identify_file(const char *name) { - file_error filerr; - osd_file *file; - UINT64 length; - + // CHD files need to be parsed and their hashes extracted from the header if (core_filename_ends_with(name, ".chd")) { - chd_file *chd; - chd_error err; + // output the name astring basename; - int found = 0; - - core_filename_extract_base(&basename, name, FALSE); - mame_printf_info("%-20s", basename.cstr()); + m_result.catprintf("%-20s", core_filename_extract_base(&basename, name, FALSE)->cstr()); + m_total++; - status->total++; - - err = chd_open(name, CHD_OPEN_READ, NULL, &chd); + // attempt to open as a CHD; fail if not + chd_file *chd; + chd_error err = chd_open(name, CHD_OPEN_READ, NULL, &chd); if (err != CHDERR_NONE) { - mame_printf_info("NOT A CHD\n"); - status->nonroms++; + m_result.catprintf("NOT A CHD\n"); + m_nonroms++; + return; } - else - { - chd_header header; - - header = *chd_get_header(chd); - if (header.flags & CHDFLAGS_IS_WRITEABLE) - { - mame_printf_info("is a writeable CHD\n"); - } - else - { - static const UINT8 nullhash[20] = { 0 }; - hash_collection hashes; - - /* if there's an MD5 or SHA1 hash, add them to the output hash */ - if (memcmp(nullhash, header.md5, sizeof(header.md5)) != 0) - hashes.add_from_buffer(hash_collection::HASH_MD5, header.md5, sizeof(header.md5)); - if (memcmp(nullhash, header.sha1, sizeof(header.sha1)) != 0) - hashes.add_from_buffer(hash_collection::HASH_SHA1, header.sha1, sizeof(header.sha1)); - length = header.logicalbytes; + // fetch the header and close the file + chd_header header = *chd_get_header(chd); + chd_close(chd); - match_roms(options, hashes, length, &found); - - if (found == 0) - { - mame_printf_info("NO MATCH\n"); - } - - /* if we did find it, count it as a match */ - else - status->matches++; - } - - chd_close(chd); + // error on writable CHDs + if (header.flags & CHDFLAGS_IS_WRITEABLE) + { + m_result.catprintf("is a writeable CHD\n"); + return; } + + // otherwise, get the hash collection for this CHD + static const UINT8 nullhash[20] = { 0 }; + hash_collection hashes; + + if (memcmp(nullhash, header.md5, sizeof(header.md5)) != 0) + hashes.add_from_buffer(hash_collection::HASH_MD5, header.md5, sizeof(header.md5)); + if (memcmp(nullhash, header.sha1, sizeof(header.sha1)) != 0) + hashes.add_from_buffer(hash_collection::HASH_SHA1, header.sha1, sizeof(header.sha1)); + + // determine whether this file exists + int found = find_by_hash(hashes, header.logicalbytes); + if (found == 0) + m_result.catprintf("NO MATCH\n"); + else + m_matches++; } + + // all other files have their hashes computed directly else { - /* open for read and process if it opens and has a valid length */ - filerr = osd_open(name, OPEN_FLAG_READ, &file, &length); - if (filerr == FILERR_NONE && length > 0 && (UINT32)length == length) - { - UINT8 *data = global_alloc_array(UINT8, length); - if (data != NULL) - { - UINT32 bytes; - - /* read file data into RAM and identify it */ - filerr = osd_read(file, data, 0, length, &bytes); - if (filerr == FILERR_NONE) - identify_data(options, name, data, bytes, status); - global_free(data); - } - osd_close(file); - } + // load the file and process if it opens and has a valid length + UINT32 length; + void *data; + file_error filerr = core_fload(name, &data, &length); + if (filerr == FILERR_NONE && length > 0) + identify_data(name, reinterpret_cast<UINT8 *>(data), length); } } -/*------------------------------------------------- - identify_data - identify a buffer full of - data; if it comes from a .JED file, parse the - fusemap into raw data first --------------------------------------------------*/ +//------------------------------------------------- +// identify_data - identify a buffer full of +// data; if it comes from a .JED file, parse the +// fusemap into raw data first +//------------------------------------------------- -static void identify_data(emu_options &options, const char *name, const UINT8 *data, int length, romident_status *status) +void media_identifier::identify_data(const char *name, const UINT8 *data, int length) { + // if this is a '.jed' file, process it into raw bits first UINT8 *tempjed = NULL; - astring basename; - int found = 0; jed_data jed; - - /* if this is a '.jed' file, process it into raw bits first */ if (core_filename_ends_with(name, ".jed") && jed_parse(data, length, &jed) == JEDERR_NONE) { - /* now determine the new data length and allocate temporary memory for it */ + // now determine the new data length and allocate temporary memory for it length = jedbin_output(&jed, NULL, 0); tempjed = global_alloc_array(UINT8, length); - if (tempjed == NULL) - return; - - /* create a binary output of the JED data and use that instead */ jedbin_output(&jed, tempjed, length); data = tempjed; } - /* compute the hash of the data */ + // compute the hash of the data hash_collection hashes; hashes.compute(data, length, hash_collection::HASH_TYPES_CRC_SHA1); - /* output the name */ - status->total++; - core_filename_extract_base(&basename, name, FALSE); - mame_printf_info("%-20s", basename.cstr()); + // output the name + m_total++; + astring basename; + m_result.catprintf("%-20s", core_filename_extract_base(&basename, name, FALSE)->cstr()); - /* see if we can find a match in the ROMs */ - match_roms(options, hashes, length, &found); + // see if we can find a match in the ROMs + int found = find_by_hash(hashes, length); - /* if we didn't find it, try to guess what it might be */ + // if we didn't find it, try to guess what it might be if (found == 0) { - /* if not a power of 2, assume it is a non-ROM file */ + // if not a power of 2, assume it is a non-ROM file if ((length & (length - 1)) != 0) { - mame_printf_info("NOT A ROM\n"); - status->nonroms++; + m_result.catprintf("NOT A ROM\n"); + m_nonroms++; } - /* otherwise, it's just not a match */ + // otherwise, it's just not a match else - mame_printf_info("NO MATCH\n"); + m_result.catprintf("NO MATCH\n"); } - /* if we did find it, count it as a match */ + // if we did find it, count it as a match else - status->matches++; + m_matches++; - /* free any temporary JED data */ + // free any temporary JED data global_free(tempjed); } -/*------------------------------------------------- - match_roms - scan for a matching ROM by hash --------------------------------------------------*/ +//------------------------------------------------- +// find_by_hash - scan for a file in the list +// of drivers by hash +//------------------------------------------------- -static void match_roms(emu_options &options, const hash_collection &hashes, int length, int *found) +int media_identifier::find_by_hash(const hash_collection &hashes, int length) { - /* iterate over drivers */ - for (int drvindex = 0; drivers[drvindex] != NULL; drvindex++) - { - machine_config config(*drivers[drvindex], options); + int found = 0; - /* iterate over sources, regions and files within the region */ - for (const rom_source *source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) - for (const rom_entry *region = rom_first_region(*source); region; region = rom_next_region(region)) - for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) + // iterate over drivers + m_drivlist.reset(); + while (m_drivlist.next()) + { + // iterate over sources, regions and files within the region */ + for (const rom_source *source = rom_first_source(m_drivlist.config()); source != NULL; source = rom_next_source(*source)) + for (const rom_entry *region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) + for (const rom_entry *rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom)) { hash_collection romhashes(ROM_GETHASHDATA(rom)); if (!romhashes.flag(hash_collection::FLAG_NO_DUMP) && hashes == romhashes) { bool baddump = romhashes.flag(hash_collection::FLAG_BAD_DUMP); - /* output information about the match */ - if (*found != 0) + // output information about the match + if (!found) mame_printf_info(" "); - mame_printf_info("= %s%-20s %-10s %s\n", baddump ? "(BAD) " : "", ROM_GETNAME(rom), drivers[drvindex]->name, drivers[drvindex]->description); - (*found)++; + mame_printf_info("= %s%-20s %-10s %s\n", baddump ? "(BAD) " : "", ROM_GETNAME(rom), m_drivlist.driver().name, m_drivlist.driver().description); + found++; } } - // also check any softlists - softlist_match_roms( config, hashes, length, found ); + // next iterate over softlists + for (const device_config *dev = m_drivlist.config().m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) + { + software_list_config *swlist = (software_list_config *)downcast<const legacy_device_config_base *>(dev)->inline_config(); + + for (int listnum = 0; listnum < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; listnum++) + if (swlist->list_name[listnum] != NULL) + { + software_list *list = software_list_open(m_drivlist.options(), swlist->list_name[listnum], FALSE, NULL); + + for (software_info *swinfo = software_list_find(list, "*", NULL); swinfo != NULL; swinfo = software_list_find(list, "*", swinfo)) + for (software_part *part = software_find_part(swinfo, NULL, NULL); part != NULL; part = software_part_next(part)) + for (const rom_entry *region = part->romdata; region != NULL; region = rom_next_region(region)) + for (const rom_entry *rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom)) + { + hash_collection romhashes(ROM_GETHASHDATA(rom)); + if (hashes == romhashes) + { + bool baddump = romhashes.flag(hash_collection::FLAG_BAD_DUMP); + + // output information about the match + if (!found) + mame_printf_info(" "); + mame_printf_info("= %s%-20s %s:%s %s\n", baddump ? "(BAD) " : "", ROM_GETNAME(rom), swlist->list_name[listnum], swinfo->shortname, swinfo->longname); + found++; + } + } + + software_list_close(list); + } + } } + + return found; } diff --git a/src/emu/clifront.h b/src/emu/clifront.h index d240fdf160f..2870309c7a4 100644 --- a/src/emu/clifront.h +++ b/src/emu/clifront.h @@ -80,6 +80,7 @@ // TYPE DEFINITIONS //************************************************************************** +// cli_options wraps the general emu options with CLI-specific additions class cli_options : public emu_options { public: @@ -91,22 +92,75 @@ private: }; +// cli_frontend handles command-line processing and emulator execution +class cli_frontend +{ +public: + // construction/destruction + cli_frontend(cli_options &options, osd_interface &osd); + ~cli_frontend(); + + // execute based on the incoming argc/argv + int execute(int argc, char **argv); + + // direct access to the command operations + void listxml(const char *gamename = "*"); + void listfull(const char *gamename = "*"); + void listsource(const char *gamename = "*"); + void listclones(const char *gamename = "*"); + void listbrothers(const char *gamename = "*"); + void listcrc(const char *gamename = "*"); + void listroms(const char *gamename = "*"); + void listsamples(const char *gamename = "*"); + void listdevices(const char *gamename = "*"); + void listmedia(const char *gamename = "*"); + void verifyroms(const char *gamename = "*"); + void verifysamples(const char *gamename = "*"); + void romident(const char *filename); + +private: + // internal helpers + void execute_commands(const char *exename); + void display_help(); + void display_suggestions(const char *gamename); + + // internal state + cli_options & m_options; + osd_interface & m_osd; + int m_result; +}; + + +// media_identifier class identifies media by hash via a search in +// the driver database +class media_identifier +{ +public: + // construction/destruction + media_identifier(cli_options &options); + + // getters + const char *result() const { return m_result; } + int total() const { return m_total; } + int matches() const { return m_matches; } + int nonroms() const { return m_nonroms; } + + // operations + void reset() { m_total = m_matches = m_nonroms = 0; m_result.reset(); } + void identify(const char *name); + void identify_file(const char *name); + void identify_data(const char *name, const UINT8 *data, int length); + int find_by_hash(const hash_collection &hashes, int length); + +private: + // internal state + driver_enumerator m_drivlist; + astring m_result; + int m_total; + int m_matches; + int m_nonroms; +}; -/*************************************************************************** - FUNCTION PROTOTYPES -***************************************************************************/ -int cli_execute(cli_options &options, osd_interface &osd, int argc, char **argv); - -/* informational functions */ -void cli_info_listxml(emu_options &options, const char *gamename); -void cli_info_listfull(emu_options &options, const char *gamename); -void cli_info_listsource(emu_options &options, const char *gamename); -void cli_info_listclones(emu_options &options, const char *gamename); -void cli_info_listbrothers(emu_options &options, const char *gamename); -void cli_info_listcrc(emu_options &options, const char *gamename); -void cli_info_listroms(emu_options &options, const char *gamename); -void cli_info_listsamples(emu_options &options, const char *gamename); -void cli_info_listdevices(emu_options &options, const char *gamename); #endif /* __CLIFRONT_H__ */ diff --git a/src/emu/config.c b/src/emu/config.c index 3f1b7e18d93..070f3cd4cc7 100644 --- a/src/emu/config.c +++ b/src/emu/config.c @@ -235,13 +235,13 @@ static int config_load_xml(running_machine &machine, emu_file &file, int which_t case CONFIG_TYPE_CONTROLLER: { - const game_driver *clone_of; + int clone_of; /* match on: default, game name, source file name, parent name, grandparent name */ if (strcmp(name, "default") != 0 && strcmp(name, machine.system().name) != 0 && strcmp(name, srcfile) != 0 && - ((clone_of = driver_get_clone(&machine.system())) == NULL || strcmp(name, clone_of->name) != 0) && - (clone_of == NULL || ((clone_of = driver_get_clone(clone_of)) == NULL) || strcmp(name, clone_of->name) != 0)) + ((clone_of = driver_list::clone(machine.system())) == -1 || strcmp(name, driver_list::driver(clone_of).name) != 0) && + (clone_of == -1 || ((clone_of = driver_list::clone(clone_of)) == -1) || strcmp(name, driver_list::driver(clone_of).name) != 0)) continue; break; } diff --git a/src/emu/cpu/mips/dismips.c b/src/emu/cpu/mips/dismips.c index c549cc1b6a5..339ff26ff3b 100644 --- a/src/emu/cpu/mips/dismips.c +++ b/src/emu/cpu/mips/dismips.c @@ -336,6 +336,12 @@ void *malloc_file_line(size_t size, const char *file, int line) return osd_malloc(size); } +void *malloc_array_file_line(size_t size, const char *file, int line) +{ + // allocate the memory and fail if we can't + return osd_malloc_array(size); +} + void free_file_line( void *memory, const char *file, int line ) { osd_free( memory ); diff --git a/src/emu/debug/textbuf.c b/src/emu/debug/textbuf.c index 828887f6b66..08b8fb2214e 100644 --- a/src/emu/debug/textbuf.c +++ b/src/emu/debug/textbuf.c @@ -93,7 +93,7 @@ text_buffer *text_buffer_alloc(UINT32 bytes, UINT32 lines) return NULL; /* allocate memory for the buffer itself */ - text->buffer = (char *)osd_malloc(bytes); + text->buffer = (char *)osd_malloc_array(bytes); if (!text->buffer) { osd_free(text); @@ -101,7 +101,7 @@ text_buffer *text_buffer_alloc(UINT32 bytes, UINT32 lines) } /* allocate memory for the lines array */ - text->lineoffs = (INT32 *)osd_malloc(lines * sizeof(text->lineoffs[0])); + text->lineoffs = (INT32 *)osd_malloc_array(lines * sizeof(text->lineoffs[0])); if (!text->lineoffs) { osd_free(text->buffer); diff --git a/src/emu/devcpu.c b/src/emu/devcpu.c index 4793308c966..cddecf11f7a 100644 --- a/src/emu/devcpu.c +++ b/src/emu/devcpu.c @@ -88,6 +88,7 @@ legacy_cpu_device_config::legacy_cpu_device_config(const machine_config &mconfig // set the real name m_name = get_legacy_config_string(DEVINFO_STR_NAME); m_shortname = get_legacy_config_string(DEVINFO_STR_SHORTNAME); + m_searchpath = m_shortname; } diff --git a/src/emu/devintrf.c b/src/emu/devintrf.c index fa221c86d46..6e424c3f9f8 100644 --- a/src/emu/devintrf.c +++ b/src/emu/devintrf.c @@ -307,6 +307,30 @@ device_config::device_config(const machine_config &mconfig, device_type type, co } +device_config::device_config(const machine_config &mconfig, device_type type, const char *name, const char *shortname, const char *tag, const device_config *owner, UINT32 clock, UINT32 param) + : m_next(NULL), + m_owner(const_cast<device_config *>(owner)), + m_interface_list(NULL), + m_type(type), + m_clock(clock), + m_machine_config(mconfig), + m_static_config(NULL), + m_input_defaults(NULL), + m_name(name), + m_shortname(shortname), + m_searchpath(shortname), + m_tag(tag), + m_config_complete(false) +{ + // derive the clock from our owner if requested + if ((m_clock & 0xff000000) == 0xff000000) + { + assert(m_owner != NULL); + m_clock = m_owner->m_clock * ((m_clock >> 12) & 0xfff) / ((m_clock >> 0) & 0xfff); + } +} + + //------------------------------------------------- // ~device_config - destructor //------------------------------------------------- diff --git a/src/emu/devintrf.h b/src/emu/devintrf.h index f0996ea47fe..3e05c742089 100644 --- a/src/emu/devintrf.h +++ b/src/emu/devintrf.h @@ -262,6 +262,7 @@ class device_config protected: // construction/destruction device_config(const machine_config &mconfig, device_type type, const char *name, const char *tag, const device_config *owner, UINT32 clock, UINT32 param = 0); + device_config(const machine_config &mconfig, device_type type, const char *name, const char *shortname, const char *tag, const device_config *owner, UINT32 clock, UINT32 param = 0); virtual ~device_config(); public: @@ -289,6 +290,7 @@ public: UINT32 clock() const { return m_clock; } const char *name() const { return m_name; } const char *shortname() const { return m_shortname; } + const char *searchpath() const { return m_searchpath; } const char *tag() const { return m_tag; } const void *static_config() const { return m_static_config; } const machine_config &mconfig() const { return m_machine_config; } @@ -336,7 +338,9 @@ protected: const input_device_default *m_input_defaults; // devices input ports default overrides astring m_name; // name of the device - astring m_shortname; // short name of the device, used for potential romload + astring m_shortname; // short name of the device + astring m_searchpath; // search path, used for media loading + private: astring m_tag; // tag for this instance bool m_config_complete; // have we completed our configuration? diff --git a/src/emu/devlegcy.c b/src/emu/devlegcy.c index 638153683e6..0b72a5aeb72 100644 --- a/src/emu/devlegcy.c +++ b/src/emu/devlegcy.c @@ -62,6 +62,7 @@ legacy_device_config_base::legacy_device_config_base(const machine_config &mconf // set the proper name m_name = get_legacy_config_string(DEVINFO_STR_NAME); m_shortname = get_legacy_config_string(DEVINFO_STR_SHORTNAME); + m_searchpath = m_shortname; } diff --git a/src/emu/devlegcy.h b/src/emu/devlegcy.h index f956614bf0c..fc7e2ddd0fb 100644 --- a/src/emu/devlegcy.h +++ b/src/emu/devlegcy.h @@ -126,7 +126,7 @@ enum DEVINFO_STR_FIRST = 0x30000, DEVINFO_STR_NAME = DEVINFO_STR_FIRST, // R/O: name of the device - DEVINFO_STR_SHORTNAME, // R/O: short name of device, used in case of romload + DEVINFO_STR_SHORTNAME, // R/O: search path of device, used for media loading DEVINFO_STR_FAMILY, // R/O: family of the device DEVINFO_STR_VERSION, // R/O: version of the device DEVINFO_STR_SOURCE_FILE, // R/O: file containing the device implementation diff --git a/src/emu/diimage.c b/src/emu/diimage.c index d6200729608..d3c31bb503f 100644 --- a/src/emu/diimage.c +++ b/src/emu/diimage.c @@ -383,7 +383,6 @@ bool device_image_interface::try_change_working_directory(const char *subdir) void device_image_interface::setup_working_directory() { - const game_driver *gamedrv; char *dst = NULL; osd_get_full_path(&dst,"."); @@ -394,10 +393,10 @@ void device_image_interface::setup_working_directory() if (try_change_working_directory("software")) { /* now down to a directory for this computer */ - gamedrv = &device().machine().system(); - while(gamedrv && !try_change_working_directory(gamedrv->name)) + int gamedrv = driver_list::find(device().machine().system()); + while(gamedrv != -1 && !try_change_working_directory(driver_list::driver(gamedrv).name)) { - gamedrv = driver_get_compatible(gamedrv); + gamedrv = driver_list::compatible_with(gamedrv); } } osd_free(dst); diff --git a/src/emu/driver.c b/src/emu/driver.c index 582d643168c..d39633d649a 100644 --- a/src/emu/driver.c +++ b/src/emu/driver.c @@ -2,10 +2,38 @@ driver.c - Driver construction helpers. - - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. + Driver enumeration helpers. + +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ @@ -14,264 +42,332 @@ -/*************************************************************************** - CONSTANTS -***************************************************************************/ - -#define DRIVER_LRU_SIZE 10 +//************************************************************************** +// DRIVER LIST +//************************************************************************** +//------------------------------------------------- +// driver_list - constructor +//------------------------------------------------- +driver_list::driver_list() +{ +} -/*************************************************************************** - GLOBAL VARIABLES -***************************************************************************/ -static int driver_lru[DRIVER_LRU_SIZE]; +//------------------------------------------------- +// find - find a driver by name +//------------------------------------------------- +int driver_list::find(const char *name) +{ + // if no name, bail + if (name == NULL) + return -1; + + // create a dummy item for comparison purposes + game_driver driver; + driver.name = name; + game_driver *driverptr = &driver; + + // binary search to find it + const game_driver **result = reinterpret_cast<const game_driver **>(bsearch(&driverptr, s_drivers_sorted, s_driver_count, sizeof(*s_drivers_sorted), driver_sort_callback)); + return (result == NULL) ? -1 : result - s_drivers_sorted; +} -/*************************************************************************** - FUNCTION PROTOTYPES -***************************************************************************/ +//------------------------------------------------- +// driver_sort_callback - compare two items in +// an array of game_driver pointers +//------------------------------------------------- -static int penalty_compare(const char *source, const char *target); +int driver_list::driver_sort_callback(const void *elem1, const void *elem2) +{ + const game_driver * const *item1 = reinterpret_cast<const game_driver * const *>(elem1); + const game_driver * const *item2 = reinterpret_cast<const game_driver * const *>(elem2); + return mame_stricmp((*item1)->name, (*item2)->name); +} +//------------------------------------------------- +// penalty_compare - compare two strings for +// closeness and assign a score. +//------------------------------------------------- -/*************************************************************************** - MISC FUNCTIONS -***************************************************************************/ +int driver_list::penalty_compare(const char *source, const char *target) +{ + int gaps = 1; + bool last = true; -/*------------------------------------------------- - driver_get_name - return a pointer to a - driver given its name --------------------------------------------------*/ + // scan the strings + for ( ; *source && *target; target++) + { + // do a case insensitive match + bool match = (tolower((UINT8)*source) == tolower((UINT8)*target)); -const game_driver *driver_get_name(const char *name) -{ - int lurnum, drvnum; + // if we matched, advance the source + if (match) + source++; - /* scan the LRU list first */ - for (lurnum = 0; lurnum < DRIVER_LRU_SIZE; lurnum++) - if (mame_stricmp(drivers[driver_lru[lurnum]]->name, name) == 0) + // if the match state changed, count gaps + if (match != last) { - /* if not first, swap with the head */ - if (lurnum != 0) - { - int temp = driver_lru[0]; - driver_lru[0] = driver_lru[lurnum]; - driver_lru[lurnum] = temp; - } - return drivers[driver_lru[0]]; + last = match; + if (!match) + gaps++; } + } - /* scan for a match in the drivers -- slow! */ - for (drvnum = 0; drivers[drvnum] != NULL; drvnum++) - if (mame_stricmp(drivers[drvnum]->name, name) == 0) - { - memmove((void *)&driver_lru[1], (void *)&driver_lru[0], sizeof(driver_lru[0]) * (DRIVER_LRU_SIZE - 1)); - driver_lru[0] = drvnum; - return drivers[drvnum]; - } + // penalty if short string does not completely fit in + for ( ; *source; source++) + gaps++; + + // if we matched perfectly, gaps == 0 + if (gaps == 1 && *source == 0 && *target == 0) + gaps = 0; - return NULL; + return gaps; } -/*------------------------------------------------- - driver_get_clone - return a pointer to the - clone of a game driver. --------------------------------------------------*/ -const game_driver *driver_get_clone(const game_driver *driver) -{ - /* if no clone, easy out */ - if (driver->parent == NULL || (driver->parent[0] == '0' && driver->parent[1] == 0)) - return NULL; +//************************************************************************** +// DRIVER ENUMERATOR +//************************************************************************** - /* convert the name to a game_driver */ - return driver_get_name(driver->parent); +//------------------------------------------------- +// driver_enumerator - constructor +//------------------------------------------------- + +driver_enumerator::driver_enumerator(emu_options &options) + : m_current(-1), + m_filtered_count(0), + m_options(options), + m_included(global_alloc_array(UINT8, s_driver_count)), + m_config(global_alloc_array_clear(machine_config *, s_driver_count)) +{ + include_all(); } -/*------------------------------------------------- - driver_get_searchpath - return a search path - for a given driver --------------------------------------------------*/ +driver_enumerator::driver_enumerator(emu_options &options, const char *string) + : m_current(-1), + m_filtered_count(0), + m_options(options), + m_included(global_alloc_array(UINT8, s_driver_count)), + m_config(global_alloc_array_clear(machine_config *, s_driver_count)) +{ + filter(string); +} + -const char *driver_get_searchpath(const game_driver &driver, astring &string) +driver_enumerator::driver_enumerator(emu_options &options, const game_driver &driver) + : m_current(-1), + m_filtered_count(0), + m_options(options), + m_included(global_alloc_array(UINT8, s_driver_count)), + m_config(global_alloc_array_clear(machine_config *, s_driver_count)) { - // create the search path consisting of gamedrv[;parent[;...]] - string = driver.name; - for (const game_driver *parent = driver_get_clone(&driver); parent != NULL; parent = driver_get_clone(parent)) - string.cat(";").cat(parent->name); - return string; + filter(driver); } -/*------------------------------------------------- - driver_list_get_approx_matches - find the best - n matches to a driver name. --------------------------------------------------*/ +//------------------------------------------------- +// ~driver_enumerator - destructor +//------------------------------------------------- -void driver_list_get_approx_matches(const game_driver * const driverlist[], const char *name, int matches, const game_driver **list) +driver_enumerator::~driver_enumerator() { -#undef rand + // free any configs + for (int index = 0; index < s_driver_count; index++) + global_free(m_config[index]); - int matchnum, drvnum; - int *penalty; + // free the arrays + global_free(m_included); + global_free(m_config); +} - /* if no name, pick random entries */ - if (name == NULL || name[0] == 0) - { - const game_driver **templist; - int driver_count; - int shufnum; - /* allocate a temporary list */ - templist = global_alloc_array(const game_driver *, driver_list_get_count(driverlist)); +//------------------------------------------------- +// config - return a machine_config for the given +// driver, allocating on demand if needed +//------------------------------------------------- - /* build up a list of valid entries */ - for (drvnum = driver_count = 0; driverlist[drvnum] != NULL; drvnum++) - if ((driverlist[drvnum]->flags & GAME_NO_STANDALONE) == 0) - templist[driver_count++] = driverlist[drvnum]; +machine_config &driver_enumerator::config(int index) const +{ + assert(index >= 0 && index < s_driver_count); + if (m_config[index] == NULL) + m_config[index] = global_alloc(machine_config(*s_drivers_sorted[index], m_options)); + return *m_config[index]; +} - /* seed the RNG first */ - srand(osd_ticks()); - /* shuffle */ - for (shufnum = 0; shufnum < 4 * driver_count; shufnum++) - { - int item1 = rand() % driver_count; - int item2 = rand() % driver_count; - const game_driver *temp; +//------------------------------------------------- +// filter - filter the driver list against the +// given string +//------------------------------------------------- - temp = templist[item1]; - templist[item1] = templist[item2]; - templist[item2] = temp; - } +int driver_enumerator::filter(const char *filterstring) +{ + // reset the count + exclude_all(); + + // match name against each driver in the list + for (int index = 0; index < s_driver_count; index++) + if (matches(filterstring, s_drivers_sorted[index]->name)) + include(index); + + return m_filtered_count; +} - /* copy out the first few entries */ - for (matchnum = 0; matchnum < matches; matchnum++) - list[matchnum] = templist[matchnum % driver_count]; - global_free(templist); - return; - } +//------------------------------------------------- +// filter - filter the driver list against the +// given driver +//------------------------------------------------- - /* allocate some temp memory */ - penalty = global_alloc_array(int, matches); +int driver_enumerator::filter(const game_driver &driver) +{ + // reset the count + exclude_all(); + + // match name against each driver in the list + for (int index = 0; index < s_driver_count; index++) + if (s_drivers_sorted[index] == &driver) + include(index); + + return m_filtered_count; +} - /* initialize everyone's states */ - for (matchnum = 0; matchnum < matches; matchnum++) - { - penalty[matchnum] = 9999; - list[matchnum] = NULL; - } - /* scan the entire drivers array */ - for (drvnum = 0; driverlist[drvnum] != NULL; drvnum++) +//------------------------------------------------- +// next - get the next driver matching the given +// filter +//------------------------------------------------- + +bool driver_enumerator::next() +{ + // always advance one + m_current++; + + // if we have a filter, scan forward to the next match + while (m_current < s_driver_count) { - int curpenalty, tmp; + if (m_included[m_current]) + break; + m_current++; + } - /* skip things that can't run */ - if ((driverlist[drvnum]->flags & GAME_NO_STANDALONE) != 0) - continue; + // return true if we end up in range + return (m_current >= 0 && m_current < s_driver_count); +} - /* pick the best match between driver name and description */ - curpenalty = penalty_compare(name, driverlist[drvnum]->description); - tmp = penalty_compare(name, driverlist[drvnum]->name); - curpenalty = MIN(curpenalty, tmp); - /* insert into the sorted table of matches */ - for (matchnum = matches - 1; matchnum >= 0; matchnum--) - { - /* stop if we're worse than the current entry */ - if (curpenalty >= penalty[matchnum]) - break; +//------------------------------------------------- +// next_excluded - get the next driver that is +// not currently included in the list +//------------------------------------------------- - /* as lng as this isn't the last entry, bump this one down */ - if (matchnum < matches - 1) - { - penalty[matchnum + 1] = penalty[matchnum]; - list[matchnum + 1] = list[matchnum]; - } - list[matchnum] = driverlist[drvnum]; - penalty[matchnum] = curpenalty; - } +bool driver_enumerator::next_excluded() +{ + // always advance one + m_current++; + + // if we have a filter, scan forward to the next match + while (m_current < s_driver_count) + { + if (!m_included[m_current]) + break; + m_current++; } - /* free our temp memory */ - global_free(penalty); + // return true if we end up in range + return (m_current >= 0 && m_current < s_driver_count); } -/*------------------------------------------------- - penalty_compare - compare two strings for - closeness and assign a score. --------------------------------------------------*/ +//------------------------------------------------- +// driver_sort_callback - compare two items in +// an array of game_driver pointers +//------------------------------------------------- -static int penalty_compare(const char *source, const char *target) +void driver_enumerator::find_approximate_matches(const char *string, int count, int *results) { - int gaps = 1; - int last = TRUE; +#undef rand - /* scan the strings */ - for ( ; *source && *target; target++) + // if no name, pick random entries + if (string == NULL || string[0] == 0) { - /* do a case insensitive match */ - int match = (tolower((UINT8)*source) == tolower((UINT8)*target)); + // seed the RNG first + srand(osd_ticks()); - /* if we matched, advance the source */ - if (match) - source++; + // allocate a temporary list + int *templist = global_alloc_array(int, m_filtered_count); + int arrayindex = 0; + for (int index = 0; index < s_driver_count; index++) + if (m_included[index]) + templist[arrayindex++] = index; + assert(arrayindex == m_filtered_count); - /* if the match state changed, count gaps */ - if (match != last) + // shuffle + for (int shufnum = 0; shufnum < 4 * s_driver_count; shufnum++) { - last = match; - if (!match) - gaps++; + int item1 = rand() % m_filtered_count; + int item2 = rand() % m_filtered_count; + int temp = templist[item1]; + templist[item1] = templist[item2]; + templist[item2] = temp; } - } - - /* penalty if short string does not completely fit in */ - for ( ; *source; source++) - gaps++; - /* if we matched perfectly, gaps == 0 */ - if (gaps == 1 && *source == 0 && *target == 0) - gaps = 0; + // copy out the first few entries + for (int matchnum = 0; matchnum < count; matchnum++) + results[matchnum] = templist[matchnum % m_filtered_count]; - return gaps; -} + global_free(templist); + return; + } + // allocate memory to track the penalty value + int *penalty = global_alloc_array(int, count); -/*------------------------------------------------- - driver_list_get_count - returns the amount of - drivers --------------------------------------------------*/ + // initialize everyone's states + for (int matchnum = 0; matchnum < count; matchnum++) + { + penalty[matchnum] = 9999; + results[matchnum] = -1; + } -int driver_list_get_count(const game_driver * const driverlist[]) -{ - int count; + // scan the entire drivers array + for (int index = 0; index < s_driver_count; index++) + if (m_included[index]) + { + // skip things that can't run + if ((s_drivers_sorted[index]->flags & GAME_NO_STANDALONE) != 0) + continue; - for (count = 0; driverlist[count] != NULL; count++) ; - return count; -} + // pick the best match between driver name and description + int curpenalty = penalty_compare(string, s_drivers_sorted[index]->description); + int tmp = penalty_compare(string, s_drivers_sorted[index]->name); + curpenalty = MIN(curpenalty, tmp); -/*------------------------------------------------- - driver_get_compatible - return a pointer to the - compatible driver. --------------------------------------------------*/ + // insert into the sorted table of matches + for (int matchnum = count - 1; matchnum >= 0; matchnum--) + { + // stop if we're worse than the current entry + if (curpenalty >= penalty[matchnum]) + break; + + // as long as this isn't the last entry, bump this one down + if (matchnum < count - 1) + { + penalty[matchnum + 1] = penalty[matchnum]; + results[matchnum + 1] = results[matchnum]; + } + results[matchnum] = index; + penalty[matchnum] = curpenalty; + } + } -const game_driver *driver_get_compatible(const game_driver *drv) -{ - if (driver_get_clone(drv)) - drv = driver_get_clone(drv); - else if (drv->compatible_with) - drv = driver_get_name(drv->compatible_with); - else - drv = NULL; - return drv; + // free our temp memory + global_free(penalty); } diff --git a/src/emu/driver.h b/src/emu/driver.h index 47e64ef6564..c920c0ca5e6 100644 --- a/src/emu/driver.h +++ b/src/emu/driver.h @@ -2,10 +2,38 @@ driver.h - Definitions relating to game drivers. - - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. + Driver enumeration helpers. + +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ @@ -81,6 +109,108 @@ struct game_driver }; +// driver_list is a purely static class that wraps the global driver list +class driver_list +{ + DISABLE_COPYING(driver_list); + +protected: + // construction/destruction + driver_list(); + +public: + // getters + static int total() { return s_driver_count; } + + // any item by index + static const game_driver &driver(int index) { assert(index >= 0 && index < s_driver_count); return *s_drivers_sorted[index]; } + static int clone(int index) { return find(driver(index).parent); } + static int non_bios_clone(int index) { int result = find(driver(index).parent); return (result != -1 && (driver(result).flags & GAME_IS_BIOS_ROOT) == 0) ? result : -1; } + static int compatible_with(int index) { int result = clone(index); return (result != -1) ? result : find(driver(index).compatible_with); } + + // any item by driver + static int clone(const game_driver &driver) { int index = find(driver); assert(index != -1); return clone(index); } + static int non_bios_clone(const game_driver &driver) { int index = find(driver); assert(index != -1); return non_bios_clone(index); } + static int compatible_with(const game_driver &driver) { int index = find(driver); assert(index != -1); return compatible_with(index); } + + // general helpers + static int find(const char *name); + static int find(const game_driver &driver) { return find(driver.name); } + + // static helpers + static bool matches(const char *wildstring, const char *string) { return (wildstring == NULL || mame_strwildcmp(wildstring, string) == 0); } + +protected: + // internal helpers + static int driver_sort_callback(const void *elem1, const void *elem2); + static int penalty_compare(const char *source, const char *target); + + // internal state + static int s_driver_count; + static const game_driver * const s_drivers_sorted[]; +}; + + +// driver_enumerator enables efficient iteration through the driver list +class driver_enumerator : public driver_list +{ + DISABLE_COPYING(driver_enumerator); + +public: + // construction/destruction + driver_enumerator(emu_options &options); + driver_enumerator(emu_options &options, const char *filter); + driver_enumerator(emu_options &options, const game_driver &filter); + ~driver_enumerator(); + + // getters + int count() const { return m_filtered_count; } + int current() const { return m_current; } + emu_options &options() const { return m_options; } + + // current item + const game_driver &driver() const { return driver_list::driver(m_current); } + machine_config &config() const { return config(m_current); } + int clone() { return driver_list::clone(m_current); } + int non_bios_clone() { return driver_list::non_bios_clone(m_current); } + int compatible_with() { return driver_list::compatible_with(m_current); } + void include() { include(m_current); } + void exclude() { exclude(m_current); } + + // any item by index + bool included(int index) const { assert(index >= 0 && index < s_driver_count); return m_included[index]; } + bool excluded(int index) const { assert(index >= 0 && index < s_driver_count); return !m_included[index]; } + machine_config &config(int index) const; + void include(int index) { assert(index >= 0 && index < s_driver_count); if (!m_included[index]) { m_included[index] = true; m_filtered_count++; } } + void exclude(int index) { assert(index >= 0 && index < s_driver_count); if (m_included[index]) { m_included[index] = false; m_filtered_count--; } } + using driver_list::driver; + using driver_list::clone; + using driver_list::non_bios_clone; + using driver_list::compatible_with; + + // filtering/iterating + int filter(const char *string = NULL); + int filter(const game_driver &driver); + void include_all() { memset(m_included, 1, sizeof(m_included[0]) * s_driver_count); m_filtered_count = s_driver_count; } + void exclude_all() { memset(m_included, 0, sizeof(m_included[0]) * s_driver_count); m_filtered_count = 0; } + void reset() { m_current = -1; } + bool next(); + bool next_excluded(); + + // general helpers + void set_current(int index) { assert(index >= -1 && index <= s_driver_count); m_current = index; } + void find_approximate_matches(const char *string, int count, int *results); + +private: + // internal state + int m_current; + int m_filtered_count; + emu_options & m_options; + UINT8 * m_included; + machine_config ** m_config; +}; + + /*************************************************************************** MACROS FOR BUILDING GAME DRIVERS @@ -176,24 +306,8 @@ extern const game_driver GAME_NAME(NAME) = \ GLOBAL VARIABLES ***************************************************************************/ -extern const game_driver * const drivers[]; - -GAME_EXTERN(empty); - - - -/*************************************************************************** - FUNCTION PROTOTYPES -***************************************************************************/ - -const game_driver *driver_get_name(const char *name); -const game_driver *driver_get_clone(const game_driver *driver); -const game_driver *driver_get_compatible(const game_driver *drv); - -const char *driver_get_searchpath(const game_driver &driver, astring &string); +GAME_EXTERN(___empty); -void driver_list_get_approx_matches(const game_driver * const driverlist[], const char *name, int matches, const game_driver **list); -int driver_list_get_count(const game_driver * const driverlist[]); #endif diff --git a/src/emu/drivers/empty.c b/src/emu/drivers/empty.c index bea3c2231ab..d4ce7079f31 100644 --- a/src/emu/drivers/empty.c +++ b/src/emu/drivers/empty.c @@ -20,7 +20,7 @@ * *************************************/ -static MACHINE_START( empty ) +static MACHINE_START( ___empty ) { /* force the UI to show the game select screen */ ui_menu_force_game_select(machine, &machine.render().ui_container()); @@ -34,9 +34,9 @@ static MACHINE_START( empty ) * *************************************/ -static MACHINE_CONFIG_START( empty, driver_device ) +static MACHINE_CONFIG_START( ___empty, driver_device ) - MCFG_MACHINE_START(empty) + MCFG_MACHINE_START(___empty) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) @@ -54,8 +54,8 @@ MACHINE_CONFIG_END * *************************************/ -ROM_START( empty ) - ROM_REGION( 0x10, "user1", 0 ) +ROM_START( ___empty ) + ROM_REGION( 0x10, "user1", ROMREGION_ERASEFF ) ROM_END @@ -66,4 +66,4 @@ ROM_END * *************************************/ -GAME( 2007, empty, 0, empty, 0, 0, ROT0, "MAME", "No Driver Loaded", 0 ) +GAME( 2007, ___empty, 0, ___empty, 0, 0, ROT0, "MAME", "No Driver Loaded", GAME_NO_SOUND ) diff --git a/src/emu/emu.mak b/src/emu/emu.mak index d336f113876..73663d48c86 100644 --- a/src/emu/emu.mak +++ b/src/emu/emu.mak @@ -338,5 +338,6 @@ $(EMUOBJ)/rendlay.o: $(EMULAYOUT)/dualhovu.lh \ $(EMULAYOUT)/voffff20.lh \ $(EMULAYOUT)/lcd.lh \ $(EMULAYOUT)/lcd_rot.lh \ + $(EMULAYOUT)/pinball.lh \ $(EMUOBJ)/video.o: $(EMULAYOUT)/snap.lh diff --git a/src/emu/emualloc.c b/src/emu/emualloc.c index 75b972e0eeb..a3164e8e913 100644 --- a/src/emu/emualloc.c +++ b/src/emu/emualloc.c @@ -92,6 +92,7 @@ public: static UINT64 s_curid; // current ID static osd_lock * s_lock; // lock for managing the list static bool s_lock_alloc; // set to true temporarily during lock allocation + static bool s_tracking; // set to true when tracking is live static memory_entry *s_hash[k_hash_prime];// hash table based on pointer static memory_entry *s_freehead; // pointer to the head of the free list @@ -118,9 +119,10 @@ resource_pool global_resource_pool; const zeromem_t zeromem = { }; // globals for memory_entry -UINT64 memory_entry::s_curid = 0; +UINT64 memory_entry::s_curid = 1; osd_lock *memory_entry::s_lock = NULL; bool memory_entry::s_lock_alloc = false; +bool memory_entry::s_tracking = false; memory_entry *memory_entry::s_hash[memory_entry::k_hash_prime] = { NULL }; memory_entry *memory_entry::s_freehead = NULL; @@ -155,6 +157,31 @@ void *malloc_file_line(size_t size, const char *file, int line) //------------------------------------------------- +// malloc_array_file_line - allocate memory with +// file and line number information, and a hint +// that this object is an array +//------------------------------------------------- + +void *malloc_array_file_line(size_t size, const char *file, int line) +{ + // allocate the memory and fail if we can't + void *result = osd_malloc_array(size); + if (result == NULL) + return NULL; + + // add a new entry + memory_entry::allocate(size, result, file, line); + +#ifdef MAME_DEBUG + // randomize the memory + rand_memory(result, size); +#endif + + return result; +} + + +//------------------------------------------------- // free_file_line - free memory with file // and line number information //------------------------------------------------- @@ -189,7 +216,19 @@ void free_file_line(void *memory, const char *file, int line) // memory //------------------------------------------------- -void dump_unfreed_mem(void) +void track_memory(bool track) +{ + memory_entry::s_tracking = track; +} + + +//------------------------------------------------- +// dump_unfreed_mem - called from the exit path +// of any code that wants to check for unfreed +// memory +//------------------------------------------------- + +void dump_unfreed_mem() { #ifdef MAME_DEBUG memory_entry::report_unfreed(); @@ -446,7 +485,7 @@ memory_entry *memory_entry::allocate(size_t size, void *base, const char *file, if (s_freehead == NULL) { // create a new chunk, and fail if we can't - memory_entry *entry = reinterpret_cast<memory_entry *>(osd_malloc(memory_block_alloc_chunk * sizeof(memory_entry))); + memory_entry *entry = reinterpret_cast<memory_entry *>(osd_malloc_array(memory_block_alloc_chunk * sizeof(memory_entry))); if (entry == NULL) { release_lock(); @@ -468,8 +507,8 @@ memory_entry *memory_entry::allocate(size_t size, void *base, const char *file, // populate it entry->m_size = size; entry->m_base = base; - entry->m_file = file; - entry->m_line = line; + entry->m_file = s_tracking ? file : NULL; + entry->m_line = s_tracking ? line : 0; entry->m_id = s_curid++; if (LOG_ALLOCS) fprintf(stderr, "#%06d, alloc %d bytes (%s:%d)\n", (UINT32)entry->m_id, static_cast<UINT32>(entry->m_size), entry->m_file, (int)entry->m_line); @@ -561,5 +600,5 @@ void memory_entry::report_unfreed() release_lock(); if (total > 0) - fprintf(stderr, "a total of %d bytes were not free()'d\n", total); + fprintf(stderr, "a total of %d bytes were not freed\n", total); } diff --git a/src/emu/emualloc.h b/src/emu/emualloc.h index 0a26fcad3ec..e4da24c52a5 100644 --- a/src/emu/emualloc.h +++ b/src/emu/emualloc.h @@ -47,9 +47,25 @@ //************************************************************************** +// DEBUGGING +//************************************************************************** + +// set to 1 to track memory allocated by emualloc.h itself as well +#define TRACK_SELF_MEMORY (0) + + + +//************************************************************************** // MACROS //************************************************************************** +// self-allocation helpers +#if TRACK_SELF_MEMORY +#define EMUALLOC_SELF_NEW new(__FILE__, __LINE__) +#else +#define EMUALLOC_SELF_NEW new +#endif + // pool allocation helpers #define pool_alloc(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__) _type) #define pool_alloc_clear(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__, zeromem) _type) @@ -72,11 +88,13 @@ // allocate memory with file and line number information void *malloc_file_line(size_t size, const char *file, int line); +void *malloc_array_file_line(size_t size, const char *file, int line); // free memory with file and line number information void free_file_line(void *memory, const char *file, int line); // called from the exit path of any code that wants to check for unfreed memory +void track_memory(bool track); void dump_unfreed_mem(); @@ -100,7 +118,7 @@ ATTR_FORCE_INLINE inline void *operator new(std::size_t size) throw (std::bad_al ATTR_FORCE_INLINE inline void *operator new[](std::size_t size) throw (std::bad_alloc) { - void *result = malloc_file_line(size, NULL, 0); + void *result = malloc_array_file_line(size, NULL, 0); if (result == NULL) throw std::bad_alloc(); return result; @@ -130,7 +148,7 @@ ATTR_FORCE_INLINE inline void *operator new(std::size_t size, const char *file, ATTR_FORCE_INLINE inline void *operator new[](std::size_t size, const char *file, int line) throw (std::bad_alloc) { - void *result = malloc_file_line(size, file, line); + void *result = malloc_array_file_line(size, file, line); if (result == NULL) throw std::bad_alloc(); return result; @@ -161,7 +179,7 @@ ATTR_FORCE_INLINE inline void *operator new(std::size_t size, const char *file, ATTR_FORCE_INLINE inline void *operator new[](std::size_t size, const char *file, int line, const zeromem_t &) throw (std::bad_alloc) { - void *result = malloc_file_line(size, file, line); + void *result = malloc_array_file_line(size, file, line); if (result == NULL) throw std::bad_alloc(); memset(result, 0, size); @@ -270,8 +288,8 @@ public: bool contains(void *ptrstart, void *ptrend); void clear(); - template<class T> T *add_object(T* object) { add(*new(__FILE__, __LINE__) resource_pool_object<T>(object)); return object; } - template<class T> T *add_array(T* array, int count) { add(*new(__FILE__, __LINE__) resource_pool_array<T>(array, count)); return array; } + template<class T> T *add_object(T* object) { add(*EMUALLOC_SELF_NEW resource_pool_object<T>(object)); return object; } + template<class T> T *add_array(T* array, int count) { add(*EMUALLOC_SELF_NEW resource_pool_array<T>(array, count)); return array; } private: static const int k_hash_prime = 193; @@ -306,7 +324,7 @@ extern const zeromem_t zeromem; #undef realloc #undef free -#define malloc(x) malloc_file_line(x, __FILE__, __LINE__) +#define malloc(x) malloc_array_file_line(x, __FILE__, __LINE__) #define calloc(x,y) __error_use_auto_alloc_clear_or_global_alloc_clear_instead__ #define realloc(x,y) __error_realloc_is_dangerous__ #define free(x) free_file_line(x, __FILE__, __LINE__) diff --git a/src/emu/emuopts.c b/src/emu/emuopts.c index 69cca4f8b87..7753b8e83ac 100644 --- a/src/emu/emuopts.c +++ b/src/emu/emuopts.c @@ -349,12 +349,12 @@ void emu_options::parse_standard_inis(astring &error_string) } // then parse the grandparent, parent, and system-specific INIs - const game_driver *parent = driver_get_clone(cursystem); - const game_driver *gparent = (parent != NULL) ? driver_get_clone(parent) : NULL; - if (gparent != NULL) - parse_one_ini(gparent->name, OPTION_PRIORITY_GPARENT_INI, &error_string); - if (parent != NULL) - parse_one_ini(parent->name, OPTION_PRIORITY_PARENT_INI, &error_string); + int parent = driver_list::clone(*cursystem); + int gparent = (parent != -1) ? driver_list::clone(parent) : -1; + if (gparent != -1) + parse_one_ini(driver_list::driver(gparent).name, OPTION_PRIORITY_GPARENT_INI, &error_string); + if (parent != -1) + parse_one_ini(driver_list::driver(parent).name, OPTION_PRIORITY_PARENT_INI, &error_string); parse_one_ini(cursystem->name, OPTION_PRIORITY_DRIVER_INI, &error_string); } @@ -367,7 +367,8 @@ void emu_options::parse_standard_inis(astring &error_string) const game_driver *emu_options::system() const { astring tempstr; - return driver_get_name(*core_filename_extract_base(&tempstr, system_name(), TRUE)); + int index = driver_list::find(*core_filename_extract_base(&tempstr, system_name(), TRUE)); + return (index != -1) ? &driver_list::driver(index) : NULL; } diff --git a/src/emu/emutempl.h b/src/emu/emutempl.h index 74fe8501f6c..c4fd064c155 100644 --- a/src/emu/emutempl.h +++ b/src/emu/emutempl.h @@ -245,6 +245,37 @@ private: }; +// ======================> simple_list_wrapper + +// a simple_list_wrapper wraps an existing object with a next pointer so it +// can live in a simple_list without requiring the object to have a next +// pointer +template<class T> +class simple_list_wrapper +{ +public: + // construction/destruction + simple_list_wrapper(T *object) + : m_next(NULL), + m_object(object) { } + + // operators + operator T *() { return m_object; } + operator T *() const { return m_object; } + T *operator *() { return m_object; } + T *operator *() const { return m_object; } + + // getters + simple_list_wrapper *next() const { return m_next; } + T *object() const { return m_object; } + +private: + // internal state + simple_list_wrapper * m_next; + T * m_object; +}; + + // ======================> fixed_allocator // a fixed_allocator is a simple class that maintains a free pool of objects diff --git a/src/emu/hash.c b/src/emu/hash.c index 5d55f26d642..12f94dd1f5f 100644 --- a/src/emu/hash.c +++ b/src/emu/hash.c @@ -593,7 +593,7 @@ bool hash_collection::remove(char type) // crc - return the CRC hash if present //------------------------------------------------- -bool hash_collection::crc(UINT32 &result) +bool hash_collection::crc(UINT32 &result) const { // attempt to find the CRC hash; if we fail, return false hash_base *crchash = hash(HASH_CRC); @@ -601,7 +601,7 @@ bool hash_collection::crc(UINT32 &result) return false; // downcast to a hash_crc and convert to a UINT32 - result = *downcast<hash_crc *>(crchash); + result = *downcast<const hash_crc *>(crchash); return true; } diff --git a/src/emu/hash.h b/src/emu/hash.h index a89c7cee4b2..3f5995edb51 100644 --- a/src/emu/hash.h +++ b/src/emu/hash.h @@ -161,7 +161,7 @@ public: bool remove(char type); // CRC-specific helpers - bool crc(UINT32 &result); + bool crc(UINT32 &result) const; hash_base *add_crc(UINT32 crc); // string conversion diff --git a/src/emu/info.c b/src/emu/info.c index d0e39604249..7ee5c261500 100644 --- a/src/emu/info.c +++ b/src/emu/info.c @@ -4,8 +4,36 @@ Dumps the MAME internal data as an XML file. - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ @@ -19,7 +47,8 @@ #include <ctype.h> -/* MESS/MAME configuration */ + +// MAME vs MESS configuration #ifdef MESS #define XML_ROOT "mess" #define XML_TOP "machine" @@ -30,522 +59,375 @@ -/*************************************************************************** - TYPE DEFINITIONS -***************************************************************************/ - -class parent_info +//************************************************************************** +// GLOBAL VARIABLES +//************************************************************************** + +// DTD string describing the data +const char info_xml_creator::s_dtd_string[] = +"<!DOCTYPE " XML_ROOT " [\n" +"<!ELEMENT " XML_ROOT " (" XML_TOP "+)>\n" +"\t<!ATTLIST " XML_ROOT " build CDATA #IMPLIED>\n" +"\t<!ATTLIST " XML_ROOT " debug (yes|no) \"no\">\n" +"\t<!ATTLIST " XML_ROOT " mameconfig CDATA #REQUIRED>\n" +"\t<!ELEMENT " XML_TOP " (description, year?, manufacturer, biosset*, rom*, disk*, sample*, chip*, display*, sound?, input?, dipswitch*, configuration*, category*, adjuster*, driver?, device*, softwarelist*, ramoption*)>\n" +"\t\t<!ATTLIST " XML_TOP " name CDATA #REQUIRED>\n" +"\t\t<!ATTLIST " XML_TOP " sourcefile CDATA #IMPLIED>\n" +"\t\t<!ATTLIST " XML_TOP " isbios (yes|no) \"no\">\n" +"\t\t<!ATTLIST " XML_TOP " ismechanical (yes|no) \"no\">\n" +"\t\t<!ATTLIST " XML_TOP " runnable (yes|no) \"yes\">\n" +"\t\t<!ATTLIST " XML_TOP " cloneof CDATA #IMPLIED>\n" +"\t\t<!ATTLIST " XML_TOP " romof CDATA #IMPLIED>\n" +"\t\t<!ATTLIST " XML_TOP " sampleof CDATA #IMPLIED>\n" +"\t\t<!ELEMENT description (#PCDATA)>\n" +"\t\t<!ELEMENT year (#PCDATA)>\n" +"\t\t<!ELEMENT manufacturer (#PCDATA)>\n" +"\t\t<!ELEMENT biosset EMPTY>\n" +"\t\t\t<!ATTLIST biosset name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST biosset description CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST biosset default (yes|no) \"no\">\n" +"\t\t<!ELEMENT rom EMPTY>\n" +"\t\t\t<!ATTLIST rom name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST rom bios CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST rom size CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST rom crc CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST rom md5 CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST rom sha1 CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST rom merge CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST rom region CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST rom offset CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST rom status (baddump|nodump|good) \"good\">\n" +"\t\t\t<!ATTLIST rom optional (yes|no) \"no\">\n" +"\t\t<!ELEMENT disk EMPTY>\n" +"\t\t\t<!ATTLIST disk name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST disk md5 CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST disk sha1 CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST disk merge CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST disk region CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST disk index CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST disk status (baddump|nodump|good) \"good\">\n" +"\t\t\t<!ATTLIST disk optional (yes|no) \"no\">\n" +"\t\t<!ELEMENT sample EMPTY>\n" +"\t\t\t<!ATTLIST sample name CDATA #REQUIRED>\n" +"\t\t<!ELEMENT chip EMPTY>\n" +"\t\t\t<!ATTLIST chip name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST chip tag CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST chip type (cpu|audio) #REQUIRED>\n" +"\t\t\t<!ATTLIST chip clock CDATA #IMPLIED>\n" +"\t\t<!ELEMENT display EMPTY>\n" +"\t\t\t<!ATTLIST display type (raster|vector|lcd|unknown) #REQUIRED>\n" +"\t\t\t<!ATTLIST display rotate (0|90|180|270) #REQUIRED>\n" +"\t\t\t<!ATTLIST display flipx (yes|no) \"no\">\n" +"\t\t\t<!ATTLIST display width CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display height CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display refresh CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST display pixclock CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display htotal CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display hbend CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display hbstart CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display vtotal CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display vbend CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST display vbstart CDATA #IMPLIED>\n" +"\t\t<!ELEMENT sound EMPTY>\n" +"\t\t\t<!ATTLIST sound channels CDATA #REQUIRED>\n" +"\t\t<!ELEMENT input (control*)>\n" +"\t\t\t<!ATTLIST input service (yes|no) \"no\">\n" +"\t\t\t<!ATTLIST input tilt (yes|no) \"no\">\n" +"\t\t\t<!ATTLIST input players CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST input buttons CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST input coins CDATA #IMPLIED>\n" +"\t\t\t<!ELEMENT control EMPTY>\n" +"\t\t\t\t<!ATTLIST control type CDATA #REQUIRED>\n" +"\t\t\t\t<!ATTLIST control minimum CDATA #IMPLIED>\n" +"\t\t\t\t<!ATTLIST control maximum CDATA #IMPLIED>\n" +"\t\t\t\t<!ATTLIST control sensitivity CDATA #IMPLIED>\n" +"\t\t\t\t<!ATTLIST control keydelta CDATA #IMPLIED>\n" +"\t\t\t\t<!ATTLIST control reverse (yes|no) \"no\">\n" +"\t\t<!ELEMENT dipswitch (dipvalue*)>\n" +"\t\t\t<!ATTLIST dipswitch name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST dipswitch tag CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST dipswitch mask CDATA #REQUIRED>\n" +"\t\t\t<!ELEMENT dipvalue EMPTY>\n" +"\t\t\t\t<!ATTLIST dipvalue name CDATA #REQUIRED>\n" +"\t\t\t\t<!ATTLIST dipvalue value CDATA #REQUIRED>\n" +"\t\t\t\t<!ATTLIST dipvalue default (yes|no) \"no\">\n" +"\t\t<!ELEMENT configuration (confsetting*)>\n" +"\t\t\t<!ATTLIST configuration name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST configuration tag CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST configuration mask CDATA #REQUIRED>\n" +"\t\t\t<!ELEMENT confsetting EMPTY>\n" +"\t\t\t\t<!ATTLIST confsetting name CDATA #REQUIRED>\n" +"\t\t\t\t<!ATTLIST confsetting value CDATA #REQUIRED>\n" +"\t\t\t\t<!ATTLIST confsetting default (yes|no) \"no\">\n" +"\t\t<!ELEMENT category (item*)>\n" +"\t\t\t<!ATTLIST category name CDATA #REQUIRED>\n" +"\t\t\t<!ELEMENT item EMPTY>\n" +"\t\t\t\t<!ATTLIST item name CDATA #REQUIRED>\n" +"\t\t\t\t<!ATTLIST item default (yes|no) \"no\">\n" +"\t\t<!ELEMENT adjuster EMPTY>\n" +"\t\t\t<!ATTLIST adjuster name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST adjuster default CDATA #REQUIRED>\n" +"\t\t<!ELEMENT driver EMPTY>\n" +"\t\t\t<!ATTLIST driver status (good|imperfect|preliminary) #REQUIRED>\n" +"\t\t\t<!ATTLIST driver emulation (good|imperfect|preliminary) #REQUIRED>\n" +"\t\t\t<!ATTLIST driver color (good|imperfect|preliminary) #REQUIRED>\n" +"\t\t\t<!ATTLIST driver sound (good|imperfect|preliminary) #REQUIRED>\n" +"\t\t\t<!ATTLIST driver graphic (good|imperfect|preliminary) #REQUIRED>\n" +"\t\t\t<!ATTLIST driver cocktail (good|imperfect|preliminary) #IMPLIED>\n" +"\t\t\t<!ATTLIST driver protection (good|imperfect|preliminary) #IMPLIED>\n" +"\t\t\t<!ATTLIST driver savestate (supported|unsupported) #REQUIRED>\n" +"\t\t\t<!ATTLIST driver palettesize CDATA #REQUIRED>\n" +"\t\t<!ELEMENT device (instance*, extension*)>\n" +"\t\t\t<!ATTLIST device type CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST device tag CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST device mandatory CDATA #IMPLIED>\n" +"\t\t\t<!ATTLIST device interface CDATA #IMPLIED>\n" +"\t\t\t<!ELEMENT instance EMPTY>\n" +"\t\t\t\t<!ATTLIST instance name CDATA #REQUIRED>\n" +"\t\t\t\t<!ATTLIST instance briefname CDATA #REQUIRED>\n" +"\t\t\t<!ELEMENT extension EMPTY>\n" +"\t\t\t\t<!ATTLIST extension name CDATA #REQUIRED>\n" +"\t\t<!ELEMENT softwarelist EMPTY>\n" +"\t\t\t<!ATTLIST softwarelist name CDATA #REQUIRED>\n" +"\t\t\t<!ATTLIST softwarelist status (original|compatible) #REQUIRED>\n" +"\t\t<!ELEMENT ramoption (#PCDATA)>\n" +"\t\t\t<!ATTLIST ramoption default CDATA #IMPLIED>\n" +"]>"; + + + +//************************************************************************** +// INFO XML CREATOR +//************************************************************************** + +//------------------------------------------------- +// info_xml_creator - constructor +//------------------------------------------------- + +info_xml_creator::info_xml_creator(driver_enumerator &drivlist) + : m_output(NULL), + m_drivlist(drivlist) { -public: - const game_driver *drv; - machine_config mconfig; - - parent_info(const game_driver *drv, emu_options &options) : mconfig(*drv, options) - { - this->drv = drv; - } -}; - +} -/*************************************************************************** - CORE IMPLEMENTATION -***************************************************************************/ - -/*------------------------------------------------- - print_game_switches - print the DIP switch - settings for a game --------------------------------------------------*/ +//------------------------------------------------- +// output_mame_xml - print the XML information +// for all known games +//------------------------------------------------- -static void print_game_switches(FILE *out, const game_driver *game, const ioport_list &portlist) +void info_xml_creator::output(FILE *out) { - const input_port_config *port; - const input_field_config *field; - - /* iterate looking for DIP switches */ - for (port = portlist.first(); port != NULL; port = port->next()) - for (field = port->fieldlist; field != NULL; field = field->next) - if (field->type == IPT_DIPSWITCH) - { - const input_setting_config *setting; - - /* output the switch name information */ - fprintf(out, "\t\t<dipswitch name=\"%s\"", xml_normalize_string(input_field_name(field))); - fprintf(out, " tag=\"%s\"", xml_normalize_string(field->port->tag)); - fprintf(out, " mask=\"%u\"", field->mask); - fprintf(out, ">\n"); + m_output = out; + + // output the DTD + fprintf(m_output, "<?xml version=\"1.0\"?>\n"); + fprintf(m_output, "%s\n\n", s_dtd_string); + + // top-level tag + fprintf(m_output, "<" XML_ROOT " build=\"%s\" debug=\"" +#ifdef MAME_DEBUG + "yes" +#else + "no" +#endif + "\" mameconfig=\"%d\">\n", + xml_normalize_string(build_version), + CONFIG_VERSION + ); - /* loop over settings */ - for (setting = field->settinglist; setting != NULL; setting = setting->next) - { - fprintf(out, "\t\t\t<dipvalue name=\"%s\"", xml_normalize_string(setting->name)); - fprintf(out, " value=\"%u\"", setting->value); - if (setting->value == field->defvalue) - fprintf(out, " default=\"yes\""); - fprintf(out, "/>\n"); - } + // iterate through the drivers, outputting one at a time + while (m_drivlist.next()) + output_one(); - /* terminate the switch entry */ - fprintf(out, "\t\t</dipswitch>\n"); - } + // close the top level tag + fprintf(m_output, "</" XML_ROOT ">\n"); } -/*------------------------------------------------- - print_game_configs - print the Configuration - settings for a game --------------------------------------------------*/ -static void print_game_configs(FILE *out, const game_driver *game, const ioport_list &portlist) -{ - const input_port_config *port; - const input_field_config *field; +//------------------------------------------------- +// output_one - print the XML information +// for one particular game driver +//------------------------------------------------- - /* iterate looking for configurations */ - for (port = portlist.first(); port != NULL; port = port->next()) - for (field = port->fieldlist; field != NULL; field = field->next) - if (field->type == IPT_CONFIG) - { - const input_setting_config *setting; +void info_xml_creator::output_one() +{ + // no action if not a game + const game_driver &driver = m_drivlist.driver(); + if (driver.flags & GAME_NO_STANDALONE) + return; - /* output the configuration name information */ - fprintf(out, "\t\t<configuration name=\"%s\"", xml_normalize_string(input_field_name(field))); - fprintf(out, " tag=\"%s\"", xml_normalize_string(field->port->tag)); - fprintf(out, " mask=\"%u\"", field->mask); - fprintf(out, ">\n"); + // allocate input ports + machine_config &config = m_drivlist.config(); + ioport_list portlist; + input_port_list_init(portlist, driver.ipt, NULL, 0, FALSE, NULL); + for (device_config *cfg = config.m_devicelist.first(); cfg != NULL; cfg = cfg->next()) + if (cfg->input_ports() != NULL) + input_port_list_init(portlist, cfg->input_ports(), NULL, 0, FALSE, cfg); - /* loop over settings */ - for (setting = field->settinglist; setting != NULL; setting = setting->next) - { - fprintf(out, "\t\t\t<confsetting name=\"%s\"", xml_normalize_string(setting->name)); - fprintf(out, " value=\"%u\"", setting->value); - if (setting->value == field->defvalue) - fprintf(out, " default=\"yes\""); - fprintf(out, "/>\n"); - } + // print the header and the game name + fprintf(m_output, "\t<" XML_TOP); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(driver.name)); - /* terminate the configuration entry */ - fprintf(out, "\t\t</configuration>\n"); - } + // strip away any path information from the source_file and output it + const char *start = strrchr(driver.source_file, '/'); + if (start == NULL) + start = strrchr(driver.source_file, '\\'); + if (start == NULL) + start = driver.source_file - 1; + fprintf(m_output, " sourcefile=\"%s\"", xml_normalize_string(start + 1)); + + // append bios and runnable flags + if (driver.flags & GAME_IS_BIOS_ROOT) + fprintf(m_output, " isbios=\"yes\""); + if (driver.flags & GAME_NO_STANDALONE) + fprintf(m_output, " runnable=\"no\""); + if (driver.flags & GAME_MECHANICAL) + fprintf(m_output, " ismechanical=\"yes\""); + + // display clone information + int clone_of = m_drivlist.find(driver.parent); + if (clone_of != -1 && !(m_drivlist.driver(clone_of).flags & GAME_IS_BIOS_ROOT)) + fprintf(m_output, " cloneof=\"%s\"", xml_normalize_string(m_drivlist.driver(clone_of).name)); + if (clone_of != -1) + fprintf(m_output, " romof=\"%s\"", xml_normalize_string(m_drivlist.driver(clone_of).name)); + + // display sample information and close the game tag + output_sampleof(); + fprintf(m_output, ">\n"); + + // output game description + if (driver.description != NULL) + fprintf(m_output, "\t\t<description>%s</description>\n", xml_normalize_string(driver.description)); + + // print the year only if is a number or another allowed character (? or +) + if (driver.year != NULL && strspn(driver.year, "0123456789?+") == strlen(driver.year)) + fprintf(m_output, "\t\t<year>%s</year>\n", xml_normalize_string(driver.year)); + + // print the manufacturer information + if (driver.manufacturer != NULL) + fprintf(m_output, "\t\t<manufacturer>%s</manufacturer>\n", xml_normalize_string(driver.manufacturer)); + + // now print various additional information + output_bios(); + output_rom(); + output_sample(); + output_chips(); + output_display(); + output_sound(); + output_input(portlist); + output_switches(portlist, IPT_DIPSWITCH, "dipswitch", "dipvalue"); + output_switches(portlist, IPT_CONFIG, "configuration", "confsetting"); + output_categories(portlist); + output_adjusters(portlist); + output_driver(); + output_images(); + output_software_list(); + output_ramoptions(); + + // close the topmost tag + fprintf(m_output, "\t</" XML_TOP ">\n"); } -/*------------------------------------------------- - print_game_adjusters - print the Analog - Adjusters for a game --------------------------------------------------*/ - -static void print_game_adjusters(FILE *out, const game_driver *game, const ioport_list &portlist) -{ - const input_port_config *port; - const input_field_config *field; - /* iterate looking for Adjusters */ - for (port = portlist.first(); port != NULL; port = port->next()) - for (field = port->fieldlist; field != NULL; field = field->next) - if (field->type == IPT_ADJUSTER) - { - /* output the adjuster information */ - fprintf(out, "\t\t<adjuster name=\"%s\" default=\"%d\"/>\n", xml_normalize_string(input_field_name(field)), field->defvalue); - } -} +//------------------------------------------------ +// output_sampleof - print the 'sampleof' +// attribute, if appropriate +//------------------------------------------------- -/*------------------------------------------------- - print_game_input - print a summary of a game's - input --------------------------------------------------*/ - -static void print_game_input(FILE *out, const game_driver *game, const ioport_list &portlist) +void info_xml_creator::output_sampleof() { - /* fix me -- this needs to be cleaned up to match the core style */ - -enum {cjoy, cdoublejoy, cAD_stick, cdial, ctrackball, cpaddle, clightgun, cpedal, ckeypad, ckeyboard, ENDCONTROLTYPES}; - int nplayer = 0; - int nbutton = 0; - int ncoin = 0; - //int controlsyes = 0; - int analogcontrol = 0; - int i; - const char* service = 0; - const char* tilt = 0; - const char* const control_types[] = {"joy", "doublejoy", "stick", "dial", "trackball", "paddle", "lightgun", "pedal", "keypad", "keyboard"}; - static struct _input_info - { - const char * type; /* general type of input */ - const char * Xway; /* 2, 4, or 8 way */ - int analog; - int keyb; - int min; /* analog minimum value */ - int max; /* analog maximum value */ - int sensitivity; /* default analog sensitivity */ - int keydelta; /* default analog keydelta */ - int reverse; /* default analog reverse setting */ - } control[ENDCONTROLTYPES]; - const input_port_config *port; - const input_field_config *field; - - for (i = 0; i < ENDCONTROLTYPES; i++) + // iterate over sample devices + for (const device_config *devconfig = m_drivlist.config().m_devicelist.first(SAMPLES); devconfig != NULL; devconfig = devconfig->typenext()) { - control[i].type = control_types[i]; - control[i].Xway = NULL; - control[i].analog = 0; - control[i].keyb = 0; - control[i].min = 0; - control[i].max = 0; - control[i].sensitivity = 0; - control[i].keydelta = 0; - control[i].reverse = 0; - } - - for (port = portlist.first(); port != NULL; port = port->next()) - for (field = port->fieldlist; field != NULL; field = field->next) - { + const char *const *samplenames = ((const samples_interface *)devconfig->static_config())->samplenames; + if (samplenames != NULL) - if (nplayer < field->player + 1) - nplayer = field->player + 1; - - switch (field->type) + // iterate over sample names + for (int sampnum = 0; samplenames[sampnum] != NULL; sampnum++) { - case IPT_JOYSTICK_LEFT: - case IPT_JOYSTICK_RIGHT: - - /* if control not defined, start it off as horizontal 2-way */ - if (control[cjoy].Xway == NULL) - control[cjoy].Xway = "joy2way"; - else if (strcmp(control[cjoy].Xway,"joy2way") == 0) - ; - /* if already defined as vertical, make it 4 or 8 way */ - else if (strcmp(control[cjoy].Xway,"vjoy2way") == 0) - { - if (field->way == 4) - control[cjoy].Xway = "joy4way"; - else - control[cjoy].Xway = "joy8way"; - } - //controlsyes = 1; - break; - - case IPT_JOYSTICK_UP: - case IPT_JOYSTICK_DOWN: + // only output sampleof if different from the game name + const char *cursampname = samplenames[sampnum]; + if (cursampname[0] == '*' && strcmp(cursampname + 1, m_drivlist.driver().name) != 0) + fprintf(m_output, " sampleof=\"%s\"", xml_normalize_string(cursampname + 1)); - /* if control not defined, start it off as vertical 2-way */ - if (control[cjoy].Xway == NULL) - control[cjoy].Xway = "vjoy2way"; - else if (strcmp(control[cjoy].Xway,"vjoy2way") == 0) - ; - /* if already defined as horiz, make it 4 or 8way */ - else if (strcmp(control[cjoy].Xway,"joy2way") == 0) - { - if (field->way == 4) - control[cjoy].Xway = "joy4way"; - else - control[cjoy].Xway = "joy8way"; - } - //controlsyes = 1; - break; - - case IPT_JOYSTICKRIGHT_UP: - case IPT_JOYSTICKRIGHT_DOWN: - case IPT_JOYSTICKLEFT_UP: - case IPT_JOYSTICKLEFT_DOWN: - - /* if control not defined, start it off as vertical 2way */ - if (control[cdoublejoy].Xway == NULL) - control[cdoublejoy].Xway = "vdoublejoy2way"; - else if (strcmp(control[cdoublejoy].Xway,"vdoublejoy2way") == 0) - ; - /* if already defined as horiz, make it 4 or 8 way */ - else if (strcmp(control[cdoublejoy].Xway,"doublejoy2way") == 0) - { - if (field->way == 4) - control[cdoublejoy].Xway = "doublejoy4way"; - else - control[cdoublejoy].Xway = "doublejoy8way"; - } - //controlsyes = 1; - break; - - case IPT_JOYSTICKRIGHT_LEFT: - case IPT_JOYSTICKRIGHT_RIGHT: - case IPT_JOYSTICKLEFT_LEFT: - case IPT_JOYSTICKLEFT_RIGHT: - - /* if control not defined, start it off as horiz 2-way */ - if (control[cdoublejoy].Xway == NULL) - control[cdoublejoy].Xway = "doublejoy2way"; - else if (strcmp(control[cdoublejoy].Xway,"doublejoy2way") == 0) - ; - /* if already defined as vertical, make it 4 or 8 way */ - else if (strcmp(control[cdoublejoy].Xway,"vdoublejoy2way") == 0) - { - if (field->way == 4) - control[cdoublejoy].Xway = "doublejoy4way"; - else - control[cdoublejoy].Xway = "doublejoy8way"; - } - //controlsyes = 1; - break; - - /* mark as an analog input, and get analog stats after switch */ - case IPT_PADDLE: - analogcontrol = cpaddle; - break; - case IPT_DIAL: - analogcontrol = cdial; - break; - case IPT_TRACKBALL_X: - case IPT_TRACKBALL_Y: - analogcontrol = ctrackball; - break; - case IPT_AD_STICK_X: - case IPT_AD_STICK_Y: - analogcontrol = cAD_stick; - break; - case IPT_LIGHTGUN_X: - case IPT_LIGHTGUN_Y: - analogcontrol = clightgun; - break; - case IPT_PEDAL: - case IPT_PEDAL2: - case IPT_PEDAL3: - analogcontrol = cpedal; - break; - - case IPT_BUTTON1: - case IPT_BUTTON2: - case IPT_BUTTON3: - case IPT_BUTTON4: - case IPT_BUTTON5: - case IPT_BUTTON6: - case IPT_BUTTON7: - case IPT_BUTTON8: - case IPT_BUTTON9: - case IPT_BUTTON10: - case IPT_BUTTON11: - case IPT_BUTTON12: - case IPT_BUTTON13: - case IPT_BUTTON14: - case IPT_BUTTON15: - case IPT_BUTTON16: - nbutton = MAX(nbutton, field->type - IPT_BUTTON1 + 1); - break; - - case IPT_COIN1: - case IPT_COIN2: - case IPT_COIN3: - case IPT_COIN4: - case IPT_COIN5: - case IPT_COIN6: - case IPT_COIN7: - case IPT_COIN8: - ncoin = MAX(ncoin, field->type - IPT_COIN1 + 1); - - case IPT_SERVICE : - service = "yes"; - break; - - case IPT_TILT : - tilt = "yes"; - break; - - case IPT_KEYPAD: - control[ckeypad].keyb = 1; - break; - - case IPT_KEYBOARD: - control[ckeyboard].keyb = 1; - break; - } - - /* get the analog stats */ - if (analogcontrol) - { - //controlsyes = 1; - control[analogcontrol].analog = 1; - - if (field->min) - control[analogcontrol].min = field->min; - if (field->max) - control[analogcontrol].max = field->max; - if (field->sensitivity) - control[analogcontrol].sensitivity = field->sensitivity; - if (field->delta) - control[analogcontrol].keydelta = field->delta; - if (field->flags & ANALOG_FLAG_REVERSE) - control[analogcontrol].reverse = 1; - - analogcontrol = 0; - } - } - - fprintf(out, "\t\t<input"); - fprintf(out, " players=\"%d\"", nplayer); - if (nbutton != 0) - fprintf(out, " buttons=\"%d\"", nbutton); - if (ncoin != 0) - fprintf(out, " coins=\"%d\"", ncoin); - if (service != NULL) - fprintf(out, " service=\"%s\"", xml_normalize_string(service)); - if (tilt != NULL) - fprintf(out, " tilt=\"%s\"", xml_normalize_string(tilt)); - fprintf(out, ">\n"); - - for (i = 0; i < ENDCONTROLTYPES; i++) - { - if (control[i].Xway != NULL) - fprintf(out, "\t\t\t<control type=\"%s\"/>\n", xml_normalize_string(control[i].Xway)); - if (control[i].analog) - { - fprintf(out, "\t\t\t<control type=\"%s\"", xml_normalize_string(control_types[i])); - if (control[i].min || control[i].max) - { - fprintf(out, " minimum=\"%d\"", control[i].min); - fprintf(out, " maximum=\"%d\"", control[i].max); + // must stop here, as there can only be one attribute of the same name + return; } - if (control[i].sensitivity) - fprintf(out, " sensitivity=\"%d\"", control[i].sensitivity); - if (control[i].keydelta) - fprintf(out, " keydelta=\"%d\"", control[i].keydelta); - if (control[i].reverse) - fprintf(out, " reverse=\"yes\""); - - fprintf(out, "/>\n"); - } - if (control[i].keyb) - { - fprintf(out, "\t\t\t<control type=\"%s\"/>\n", xml_normalize_string(control_types[i])); - } } - fprintf(out, "\t\t</input>\n"); } -/*------------------------------------------------- - print_game_bios - print the BIOS set for a - game --------------------------------------------------*/ +//------------------------------------------------- +// output_bios - print the BIOS set for a +// game +//------------------------------------------------- -static void print_game_bios(FILE *out, const game_driver *game) +void info_xml_creator::output_bios() { - const rom_entry *rom; - - /* skip if no ROMs */ - if (game->rom == NULL) + // skip if no ROMs + if (m_drivlist.driver().rom == NULL) return; - /* iterate over ROM entries and look for BIOSes */ - for (rom = game->rom; !ROMENTRY_ISEND(rom); rom++) + // iterate over ROM entries and look for BIOSes + for (const rom_entry *rom = m_drivlist.driver().rom; !ROMENTRY_ISEND(rom); rom++) if (ROMENTRY_ISSYSTEM_BIOS(rom)) { - const char *name = ROM_GETNAME(rom); - const char *description = ROM_GETHASHDATA(rom); - - /* output extracted name and descriptions */ - fprintf(out, "\t\t<biosset"); - fprintf(out, " name=\"%s\"", xml_normalize_string(name)); - fprintf(out, " description=\"%s\"", xml_normalize_string(description)); + // output extracted name and descriptions + fprintf(m_output, "\t\t<biosset"); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(ROM_GETNAME(rom))); + fprintf(m_output, " description=\"%s\"", xml_normalize_string(ROM_GETHASHDATA(rom))); if (ROM_GETBIOSFLAGS(rom) == 1) - fprintf(out, " default=\"yes\""); - fprintf(out, "/>\n"); + fprintf(m_output, " default=\"yes\""); + fprintf(m_output, "/>\n"); } } -/*------------------------------------------------- - get_merge_name - get the rom name from a - parent set --------------------------------------------------*/ - -static const char *get_merge_name(const hash_collection &romhashes, int parents, const parent_info **pinfoarray) -{ - int parent; - const char *merge_name = NULL; - - for (parent = 0; parent < parents; ++parent) - { - const machine_config *pconfig = &pinfoarray[parent]->mconfig; - const rom_source *psource; - const rom_entry *pregion, *prom; - - /* scan the clone_of ROM for a matching ROM entry */ - for (psource = rom_first_source(*pconfig); psource != NULL; psource = rom_next_source(*psource)) - for (pregion = rom_first_region(*psource); pregion != NULL; pregion = rom_next_region(pregion)) - for (prom = rom_first_file(pregion); prom != NULL; prom = rom_next_file(prom)) - { - hash_collection phashes(ROM_GETHASHDATA(prom)); - if (!phashes.flag(hash_collection::FLAG_NO_DUMP) && romhashes == phashes) - { - merge_name = ROM_GETNAME(prom); - break; - } - } - } - - return merge_name; -} +//------------------------------------------------- +// output_rom - print the roms section of +// the XML output +//------------------------------------------------- - -/*------------------------------------------------- - print_game_rom - print the roms section of - the XML output --------------------------------------------------*/ - -static void print_game_rom(FILE *out, const game_driver *game, const machine_config &config) +void info_xml_creator::output_rom() { - const game_driver *clone_of = driver_get_clone(game); - int rom_type; - int parents = 0; - const parent_info *pinfoarray[4]; - - for (; clone_of != NULL; clone_of = driver_get_clone(clone_of)) - { - assert_always(parents < ARRAY_LENGTH(pinfoarray), "too many parents"); - pinfoarray[parents++] = global_alloc(parent_info(clone_of, config.options())); - } - - /* iterate over 3 different ROM "types": BIOS, ROMs, DISKs */ - for (rom_type = 0; rom_type < 3; rom_type++) + // iterate over 3 different ROM "types": BIOS, ROMs, DISKs + for (int rom_type = 0; rom_type < 3; rom_type++) { - const rom_source *source; - const rom_entry *region; - - /* iterate over ROM sources: first the game, then any devices */ - for (source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) - for (region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) + // iterate over ROM sources: first the game, then any devices + for (const rom_source *source = rom_first_source(m_drivlist.config()); source != NULL; source = rom_next_source(*source)) + for (const rom_entry *region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) { - int is_disk = ROMREGION_ISDISKDATA(region); - const rom_entry *rom; + bool is_disk = ROMREGION_ISDISKDATA(region); - /* disk regions only work for disks */ + // disk regions only work for disks if ((is_disk && rom_type != 2) || (!is_disk && rom_type == 2)) continue; - /* iterate through ROM entries */ - for (rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom)) + // iterate through ROM entries + for (const rom_entry *rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom)) { - int is_bios = ROM_GETBIOSFLAGS(rom); + bool is_bios = ROM_GETBIOSFLAGS(rom); const char *name = ROM_GETNAME(rom); int offset = ROM_GETOFFSET(rom); const char *merge_name = NULL; char bios_name[100]; - /* BIOS ROMs only apply to bioses */ + // BIOS ROMs only apply to bioses if ((is_bios && rom_type != 0) || (!is_bios && rom_type == 0)) continue; - /* if we have a valid ROM and we are a clone, see if we can find the parent ROM */ + // if we have a valid ROM and we are a clone, see if we can find the parent ROM hash_collection hashes(ROM_GETHASHDATA(rom)); - if (!hashes.flag(hash_collection::FLAG_NO_DUMP) && parents > 0) - { - merge_name = get_merge_name(hashes, parents, pinfoarray); - } + if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) + merge_name = get_merge_name(hashes); - /* scan for a BIOS name */ + // scan for a BIOS name bios_name[0] = 0; if (!is_disk && is_bios) { - const rom_entry *brom; - - /* scan backwards through the ROM entries */ - for (brom = rom - 1; brom != game->rom; brom--) + // scan backwards through the ROM entries + for (const rom_entry *brom = rom - 1; brom != m_drivlist.driver().rom; brom--) if (ROMENTRY_ISSYSTEM_BIOS(brom)) { strcpy(bios_name, ROM_GETNAME(brom)); @@ -553,281 +435,521 @@ static void print_game_rom(FILE *out, const game_driver *game, const machine_con } } - /* opening tag */ + // opening tag if (!is_disk) - fprintf(out, "\t\t<rom"); + fprintf(m_output, "\t\t<rom"); else - fprintf(out, "\t\t<disk"); + fprintf(m_output, "\t\t<disk"); - /* add name, merge, bios, and size tags */ + // add name, merge, bios, and size tags */ if (name != NULL && name[0] != 0) - fprintf(out, " name=\"%s\"", xml_normalize_string(name)); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(name)); if (merge_name != NULL) - fprintf(out, " merge=\"%s\"", xml_normalize_string(merge_name)); + fprintf(m_output, " merge=\"%s\"", xml_normalize_string(merge_name)); if (bios_name[0] != 0) - fprintf(out, " bios=\"%s\"", xml_normalize_string(bios_name)); + fprintf(m_output, " bios=\"%s\"", xml_normalize_string(bios_name)); if (!is_disk) - fprintf(out, " size=\"%d\"", rom_file_size(rom)); + fprintf(m_output, " size=\"%d\"", rom_file_size(rom)); - /* dump checksum information only if there is a known dump */ + // dump checksum information only if there is a known dump if (!hashes.flag(hash_collection::FLAG_NO_DUMP)) { - /* iterate over hash function types and print out their values */ + // iterate over hash function types and print m_output their values astring tempstr; for (hash_base *hash = hashes.first(); hash != NULL; hash = hash->next()) - fprintf(out, " %s=\"%s\"", hash->name(), hash->string(tempstr)); + fprintf(m_output, " %s=\"%s\"", hash->name(), hash->string(tempstr)); } - /* append a region name */ - fprintf(out, " region=\"%s\"", ROMREGION_GETTAG(region)); + // append a region name + fprintf(m_output, " region=\"%s\"", ROMREGION_GETTAG(region)); - /* add nodump/baddump flags */ + // add nodump/baddump flags if (hashes.flag(hash_collection::FLAG_NO_DUMP)) - fprintf(out, " status=\"nodump\""); + fprintf(m_output, " status=\"nodump\""); if (hashes.flag(hash_collection::FLAG_BAD_DUMP)) - fprintf(out, " status=\"baddump\""); + fprintf(m_output, " status=\"baddump\""); - /* for non-disk entries, print offset */ + // for non-disk entries, print offset if (!is_disk) - fprintf(out, " offset=\"%x\"", offset); - /* for disk entries, add the disk index */ + fprintf(m_output, " offset=\"%x\"", offset); + + // for disk entries, add the disk index else - fprintf(out, " index=\"%x\"", DISK_GETINDEX(rom)); + fprintf(m_output, " index=\"%x\"", DISK_GETINDEX(rom)); - /* add optional flag */ + // add optional flag if ((!is_disk && ROM_ISOPTIONAL(rom)) || (is_disk && DISK_ISOPTIONAL(rom))) - fprintf(out, " optional=\"yes\""); + fprintf(m_output, " optional=\"yes\""); - fprintf(out, "/>\n"); + fprintf(m_output, "/>\n"); } } } - - for (; parents > 0; parents--) - global_free(pinfoarray[parents - 1]); -} - - -/*------------------------------------------------- - print_game_sampleof - print the 'sampleof' - attribute, if appropriate --------------------------------------------------*/ - -static void print_game_sampleof(FILE *out, const game_driver *game, const machine_config &config) -{ - const device_config_sound_interface *sound = NULL; - - for (bool gotone = config.m_devicelist.first(sound); gotone; gotone = sound->next(sound)) - if (sound->devconfig().type() == SAMPLES) - { - const char *const *samplenames = ((const samples_interface *)sound->devconfig().static_config())->samplenames; - if (samplenames != NULL) - { - int sampnum; - - /* iterate over sample names */ - for (sampnum = 0; samplenames[sampnum] != NULL; sampnum++) - { - const char *cursampname = samplenames[sampnum]; - - /* only output sampleof if different from the game name */ - if (cursampname[0] == '*' && strcmp(cursampname + 1, game->name) != 0) - fprintf(out, " sampleof=\"%s\"", xml_normalize_string(cursampname + 1)); - - /* must stop here, as there can only be one attribute of the same name */ - return; - } - } - } } -/*------------------------------------------------- - print_game_sample - print a list of all - samples referenced by a game_driver --------------------------------------------------*/ +//------------------------------------------------- +// output_sample - print a list of all +// samples referenced by a game_driver +//------------------------------------------------- -static void print_game_sample(FILE *out, const game_driver *game, const machine_config &config) +void info_xml_creator::output_sample() { - const device_config_sound_interface *sound = NULL; + // iterate over sample devices + for (const device_config *devconfig = m_drivlist.config().m_devicelist.first(SAMPLES); devconfig != NULL; devconfig = devconfig->typenext()) + { + const char *const *samplenames = ((const samples_interface *)devconfig->static_config())->samplenames; + if (samplenames != NULL) - /* iterate over sound chips looking for samples */ - for (bool gotone = config.m_devicelist.first(sound); gotone; gotone = sound->next(sound)) - if (sound->devconfig().type() == SAMPLES) - { - const char *const *samplenames = ((const samples_interface *)sound->devconfig().static_config())->samplenames; - if (samplenames != NULL) + // iterate over sample names + for (int sampnum = 0; samplenames[sampnum] != NULL; sampnum++) { - int sampnum; - - /* iterate over sample names */ - for (sampnum = 0; samplenames[sampnum] != NULL; sampnum++) - { - const char *cursampname = samplenames[sampnum]; - int dupnum; - - /* ignore the special '*' samplename */ - if (sampnum == 0 && cursampname[0] == '*') - continue; + // ignore the special '*' samplename + const char *cursampname = samplenames[sampnum]; + if (sampnum == 0 && cursampname[0] == '*') + continue; - /* filter out duplicates */ - for (dupnum = 0; dupnum < sampnum; dupnum++) - if (strcmp(samplenames[dupnum], cursampname) == 0) - break; - if (dupnum < sampnum) - continue; + // filter m_output duplicates + int dupnum; + for (dupnum = 0; dupnum < sampnum; dupnum++) + if (strcmp(samplenames[dupnum], cursampname) == 0) + break; + if (dupnum < sampnum) + continue; - /* output the sample name */ - fprintf(out, "\t\t<sample name=\"%s\"/>\n", xml_normalize_string(cursampname)); - } + // output the sample name + fprintf(m_output, "\t\t<sample name=\"%s\"/>\n", xml_normalize_string(cursampname)); } - } + } } /*------------------------------------------------- - print_game_chips - print a list of CPU and + output_chips - print a list of CPU and sound chips used by a game -------------------------------------------------*/ -static void print_game_chips(FILE *out, const game_driver *game, const machine_config &config) +void info_xml_creator::output_chips() { - /* iterate over CPUs */ + // iterate over executable devices const device_config_execute_interface *exec = NULL; - for (bool gotone = config.m_devicelist.first(exec); gotone; gotone = exec->next(exec)) + for (bool gotone = m_drivlist.config().m_devicelist.first(exec); gotone; gotone = exec->next(exec)) { - fprintf(out, "\t\t<chip"); - fprintf(out, " type=\"cpu\""); - fprintf(out, " tag=\"%s\"", xml_normalize_string(exec->devconfig().tag())); - fprintf(out, " name=\"%s\"", xml_normalize_string(exec->devconfig().name())); - fprintf(out, " clock=\"%d\"", exec->devconfig().clock()); - fprintf(out, "/>\n"); + fprintf(m_output, "\t\t<chip"); + fprintf(m_output, " type=\"cpu\""); + fprintf(m_output, " tag=\"%s\"", xml_normalize_string(exec->devconfig().tag())); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(exec->devconfig().name())); + fprintf(m_output, " clock=\"%d\"", exec->devconfig().clock()); + fprintf(m_output, "/>\n"); } - /* iterate over sound chips */ + // iterate over sound devices const device_config_sound_interface *sound = NULL; - for (bool gotone = config.m_devicelist.first(sound); gotone; gotone = sound->next(sound)) + for (bool gotone = m_drivlist.config().m_devicelist.first(sound); gotone; gotone = sound->next(sound)) { - fprintf(out, "\t\t<chip"); - fprintf(out, " type=\"audio\""); - fprintf(out, " tag=\"%s\"", xml_normalize_string(sound->devconfig().tag())); - fprintf(out, " name=\"%s\"", xml_normalize_string(sound->devconfig().name())); + fprintf(m_output, "\t\t<chip"); + fprintf(m_output, " type=\"audio\""); + fprintf(m_output, " tag=\"%s\"", xml_normalize_string(sound->devconfig().tag())); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(sound->devconfig().name())); if (sound->devconfig().clock() != 0) - fprintf(out, " clock=\"%d\"", sound->devconfig().clock()); - fprintf(out, "/>\n"); + fprintf(m_output, " clock=\"%d\"", sound->devconfig().clock()); + fprintf(m_output, "/>\n"); } } -/*------------------------------------------------- - print_game_display - print a list of all the - displays --------------------------------------------------*/ +//------------------------------------------------- +// output_display - print a list of all the +// displays +//------------------------------------------------- -static void print_game_display(FILE *out, const game_driver *game, const machine_config &config) +void info_xml_creator::output_display() { - const screen_device_config *devconfig; - - /* iterate over screens */ - for (devconfig = config.first_screen(); devconfig != NULL; devconfig = devconfig->next_screen()) + // iterate over screens + for (const screen_device_config *devconfig = m_drivlist.config().first_screen(); devconfig != NULL; devconfig = devconfig->next_screen()) { - fprintf(out, "\t\t<display"); + fprintf(m_output, "\t\t<display"); switch (devconfig->screen_type()) { - case SCREEN_TYPE_RASTER: fprintf(out, " type=\"raster\""); break; - case SCREEN_TYPE_VECTOR: fprintf(out, " type=\"vector\""); break; - case SCREEN_TYPE_LCD: fprintf(out, " type=\"lcd\""); break; - default: fprintf(out, " type=\"unknown\""); break; + case SCREEN_TYPE_RASTER: fprintf(m_output, " type=\"raster\""); break; + case SCREEN_TYPE_VECTOR: fprintf(m_output, " type=\"vector\""); break; + case SCREEN_TYPE_LCD: fprintf(m_output, " type=\"lcd\""); break; + default: fprintf(m_output, " type=\"unknown\""); break; } - /* output the orientation as a string */ - switch (game->flags & ORIENTATION_MASK) + // output the orientation as a string + switch (m_drivlist.driver().flags & ORIENTATION_MASK) { case ORIENTATION_FLIP_X: - fprintf(out, " rotate=\"0\" flipx=\"yes\""); + fprintf(m_output, " rotate=\"0\" flipx=\"yes\""); break; case ORIENTATION_FLIP_Y: - fprintf(out, " rotate=\"180\" flipx=\"yes\""); + fprintf(m_output, " rotate=\"180\" flipx=\"yes\""); break; case ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y: - fprintf(out, " rotate=\"180\""); + fprintf(m_output, " rotate=\"180\""); break; case ORIENTATION_SWAP_XY: - fprintf(out, " rotate=\"90\" flipx=\"yes\""); + fprintf(m_output, " rotate=\"90\" flipx=\"yes\""); break; case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X: - fprintf(out, " rotate=\"90\""); + fprintf(m_output, " rotate=\"90\""); break; case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_Y: - fprintf(out, " rotate=\"270\""); + fprintf(m_output, " rotate=\"270\""); break; case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y: - fprintf(out, " rotate=\"270\" flipx=\"yes\""); + fprintf(m_output, " rotate=\"270\" flipx=\"yes\""); break; default: - fprintf(out, " rotate=\"0\""); + fprintf(m_output, " rotate=\"0\""); break; } - /* output width and height only for games that are not vector */ + // output width and height only for games that are not vector if (devconfig->screen_type() != SCREEN_TYPE_VECTOR) { const rectangle &visarea = devconfig->visible_area(); - int dx = visarea.max_x - visarea.min_x + 1; - int dy = visarea.max_y - visarea.min_y + 1; - - fprintf(out, " width=\"%d\"", dx); - fprintf(out, " height=\"%d\"", dy); + fprintf(m_output, " width=\"%d\"", visarea.max_x - visarea.min_x + 1); + fprintf(m_output, " height=\"%d\"", visarea.max_y - visarea.min_y + 1); } - /* output refresh rate */ - fprintf(out, " refresh=\"%f\"", ATTOSECONDS_TO_HZ(devconfig->refresh())); + // output refresh rate + fprintf(m_output, " refresh=\"%f\"", ATTOSECONDS_TO_HZ(devconfig->refresh())); - /* output raw video parameters only for games that are not vector */ - /* and had raw parameters specified */ + // output raw video parameters only for games that are not vector + // and had raw parameters specified if (devconfig->screen_type() != SCREEN_TYPE_VECTOR && !devconfig->oldstyle_vblank_supplied()) { int pixclock = devconfig->width() * devconfig->height() * ATTOSECONDS_TO_HZ(devconfig->refresh()); - fprintf(out, " pixclock=\"%d\"", pixclock); - fprintf(out, " htotal=\"%d\"", devconfig->width()); - fprintf(out, " hbend=\"%d\"", devconfig->visible_area().min_x); - fprintf(out, " hbstart=\"%d\"", devconfig->visible_area().max_x+1); - fprintf(out, " vtotal=\"%d\"", devconfig->height()); - fprintf(out, " vbend=\"%d\"", devconfig->visible_area().min_y); - fprintf(out, " vbstart=\"%d\"", devconfig->visible_area().max_y+1); + fprintf(m_output, " pixclock=\"%d\"", pixclock); + fprintf(m_output, " htotal=\"%d\"", devconfig->width()); + fprintf(m_output, " hbend=\"%d\"", devconfig->visible_area().min_x); + fprintf(m_output, " hbstart=\"%d\"", devconfig->visible_area().max_x+1); + fprintf(m_output, " vtotal=\"%d\"", devconfig->height()); + fprintf(m_output, " vbend=\"%d\"", devconfig->visible_area().min_y); + fprintf(m_output, " vbstart=\"%d\"", devconfig->visible_area().max_y+1); } - fprintf(out, " />\n"); + fprintf(m_output, " />\n"); } } -/*------------------------------------------------- - print_game_sound - print a list of all the - displays --------------------------------------------------*/ +//------------------------------------------------- +// output_sound - print a list of all the +// displays +//------------------------------------------------ -static void print_game_sound(FILE *out, const game_driver *game, const machine_config &config) +void info_xml_creator::output_sound() { - int speakers = config.m_devicelist.count(SPEAKER); + int speakers = m_drivlist.config().m_devicelist.count(SPEAKER); - /* if we have no sound, zero out the speaker count */ + // if we have no sound, zero m_output the speaker count const device_config_sound_interface *sound = NULL; - if (!config.m_devicelist.first(sound)) + if (!m_drivlist.config().m_devicelist.first(sound)) speakers = 0; - fprintf(out, "\t\t<sound channels=\"%d\"/>\n", speakers); + fprintf(m_output, "\t\t<sound channels=\"%d\"/>\n", speakers); } -/*------------------------------------------------- - print_game_driver - print driver status --------------------------------------------------*/ +//------------------------------------------------- +// output_input - print a summary of a game's +// input +//------------------------------------------------- -static void print_game_driver(FILE *out, const game_driver *game, const machine_config &config) +void info_xml_creator::output_input(const ioport_list &portlist) { - fprintf(out, "\t\t<driver"); + // enumerated list of control types + enum + { + ANALOG_TYPE_JOYSTICK, + ANALOG_TYPE_DIAL, + ANALOG_TYPE_TRACKBALL, + ANALOG_TYPE_PADDLE, + ANALOG_TYPE_LIGHTGUN, + ANALOG_TYPE_PEDAL, + ANALOG_TYPE_COUNT + }; + + // directions + const UINT8 DIR_LEFTRIGHT = 0x01; + const UINT8 DIR_UPDOWN = 0x02; + const UINT8 DIR_4WAY = 0x04; + const UINT8 DIR_DUAL = 0x08; + + // initialize the list of control types + struct + { + const char * type; /* general type of input */ + bool analog; + bool keyb; + INT32 min; /* analog minimum value */ + INT32 max; /* analog maximum value */ + INT32 sensitivity; /* default analog sensitivity */ + INT32 keydelta; /* default analog keydelta */ + bool reverse; /* default analog reverse setting */ + } control_info[ANALOG_TYPE_COUNT]; + + memset(&control_info, 0, sizeof(control_info)); + + // tracking info as we iterate + int nplayer = 0; + int nbutton = 0; + int ncoin = 0; + UINT8 joytype = 0; + bool service = false; + bool tilt = false; + bool keypad = false; + bool keyboard = false; + + // iterate over the ports + for (const input_port_config *port = portlist.first(); port != NULL; port = port->next()) + for (const input_field_config *field = port->fieldlist; field != NULL; field = field->next) + { + int analogtype = -1; + + // track the highest player number + if (nplayer < field->player + 1) + nplayer = field->player + 1; + + // switch off of the type + switch (field->type) + { + // map which joystick directions are present + case IPT_JOYSTICKRIGHT_LEFT: + case IPT_JOYSTICKRIGHT_RIGHT: + case IPT_JOYSTICKLEFT_LEFT: + case IPT_JOYSTICKLEFT_RIGHT: + joytype |= DIR_DUAL; + // fall through... + + case IPT_JOYSTICK_LEFT: + case IPT_JOYSTICK_RIGHT: + joytype |= DIR_LEFTRIGHT | ((field->way == 4) ? DIR_4WAY : 0); + break; + + case IPT_JOYSTICKRIGHT_UP: + case IPT_JOYSTICKRIGHT_DOWN: + case IPT_JOYSTICKLEFT_UP: + case IPT_JOYSTICKLEFT_DOWN: + joytype |= DIR_DUAL; + // fall through... + + case IPT_JOYSTICK_UP: + case IPT_JOYSTICK_DOWN: + joytype |= DIR_UPDOWN | ((field->way == 4) ? DIR_4WAY : 0); + break; + + // mark as an analog input, and get analog stats after switch + case IPT_PADDLE: + control_info[analogtype = ANALOG_TYPE_PADDLE].type = "paddle"; + break; + + case IPT_DIAL: + control_info[analogtype = ANALOG_TYPE_DIAL].type = "dial"; + analogtype = ANALOG_TYPE_DIAL; + break; + + case IPT_TRACKBALL_X: + case IPT_TRACKBALL_Y: + control_info[analogtype = ANALOG_TYPE_TRACKBALL].type = "trackball"; + analogtype = ANALOG_TYPE_TRACKBALL; + break; + + case IPT_AD_STICK_X: + case IPT_AD_STICK_Y: + control_info[analogtype = ANALOG_TYPE_JOYSTICK].type = "stick"; + break; + + case IPT_LIGHTGUN_X: + case IPT_LIGHTGUN_Y: + control_info[analogtype = ANALOG_TYPE_LIGHTGUN].type = "lightgun"; + break; + + case IPT_PEDAL: + case IPT_PEDAL2: + case IPT_PEDAL3: + control_info[analogtype = ANALOG_TYPE_PEDAL].type = "pedal"; + break; + + // track maximum button index + case IPT_BUTTON1: + case IPT_BUTTON2: + case IPT_BUTTON3: + case IPT_BUTTON4: + case IPT_BUTTON5: + case IPT_BUTTON6: + case IPT_BUTTON7: + case IPT_BUTTON8: + case IPT_BUTTON9: + case IPT_BUTTON10: + case IPT_BUTTON11: + case IPT_BUTTON12: + case IPT_BUTTON13: + case IPT_BUTTON14: + case IPT_BUTTON15: + case IPT_BUTTON16: + nbutton = MAX(nbutton, field->type - IPT_BUTTON1 + 1); + break; + + // track maximum coin index + case IPT_COIN1: + case IPT_COIN2: + case IPT_COIN3: + case IPT_COIN4: + case IPT_COIN5: + case IPT_COIN6: + case IPT_COIN7: + case IPT_COIN8: + ncoin = MAX(ncoin, field->type - IPT_COIN1 + 1); + break; + + // track presence of these guys + case IPT_KEYPAD: + keypad = true; + break; + + case IPT_KEYBOARD: + keyboard = true; + break; + + // additional types + case IPT_SERVICE: + service = true; + break; + + case IPT_TILT: + tilt = true; + break; + } + + // get the analog stats + if (analogtype != -1) + { + if (field->min != 0) + control_info[analogtype].min = field->min; + if (field->max != 0) + control_info[analogtype].max = field->max; + if (field->sensitivity != 0) + control_info[analogtype].sensitivity = field->sensitivity; + if (field->delta != 0) + control_info[analogtype].keydelta = field->delta; + if ((field->flags & ANALOG_FLAG_REVERSE) != 0) + control_info[analogtype].reverse = true; + } + } + + // output the basic info + fprintf(m_output, "\t\t<input"); + fprintf(m_output, " players=\"%d\"", nplayer); + if (nbutton != 0) + fprintf(m_output, " buttons=\"%d\"", nbutton); + if (ncoin != 0) + fprintf(m_output, " coins=\"%d\"", ncoin); + if (service) + fprintf(m_output, " service=\"yes\""); + if (tilt) + fprintf(m_output, " tilt=\"yes\""); + fprintf(m_output, ">\n"); + + // output the joystick types + if (joytype != 0) + { + const char *vertical = ((joytype & DIR_LEFTRIGHT) == 0) ? "v" : ""; + const char *doubletype = ((joytype & DIR_DUAL) != 0) ? "doublejoy" : "joy"; + const char *way = ((joytype & DIR_LEFTRIGHT) == 0 || (joytype & DIR_UPDOWN) == 0) ? "2way" : ((joytype & DIR_4WAY) != 0) ? "4way" : "8way"; + fprintf(m_output, "\t\t\t<control type=\"%s%s%s\"/>\n", vertical, doubletype, way); + } + + // output analog types + for (int type = 0; type < ANALOG_TYPE_COUNT; type++) + if (control_info[type].type != NULL) + { + fprintf(m_output, "\t\t\t<control type=\"%s\"", xml_normalize_string(control_info[type].type)); + if (control_info[type].min != 0 || control_info[type].max != 0) + { + fprintf(m_output, " minimum=\"%d\"", control_info[type].min); + fprintf(m_output, " maximum=\"%d\"", control_info[type].max); + } + if (control_info[type].sensitivity != 0) + fprintf(m_output, " sensitivity=\"%d\"", control_info[type].sensitivity); + if (control_info[type].keydelta != 0) + fprintf(m_output, " keydelta=\"%d\"", control_info[type].keydelta); + if (control_info[type].reverse) + fprintf(m_output, " reverse=\"yes\""); + + fprintf(m_output, "/>\n"); + } + + // output keypad and keyboard + if (keypad) + fprintf(m_output, "\t\t\t<control type=\"keypad\"/>\n"); + if (keyboard) + fprintf(m_output, "\t\t\t<control type=\"keyboard\"/>\n"); + + fprintf(m_output, "\t\t</input>\n"); +} + + +//------------------------------------------------- +// output_switches - print the configurations or +// DIP switch settings +//------------------------------------------------- + +void info_xml_creator::output_switches(const ioport_list &portlist, int type, const char *outertag, const char *innertag) +{ + // iterate looking for DIP switches + for (const input_port_config *port = portlist.first(); port != NULL; port = port->next()) + for (const input_field_config *field = port->fieldlist; field != NULL; field = field->next) + if (field->type == type) + { + // output the switch name information + fprintf(m_output, "\t\t<%s name=\"%s\"", outertag, xml_normalize_string(input_field_name(field))); + fprintf(m_output, " tag=\"%s\"", xml_normalize_string(field->port->tag)); + fprintf(m_output, " mask=\"%u\"", field->mask); + fprintf(m_output, ">\n"); + + // loop over settings + for (const input_setting_config *setting = field->settinglist; setting != NULL; setting = setting->next) + { + fprintf(m_output, "\t\t\t<%s name=\"%s\"", innertag, xml_normalize_string(setting->name)); + fprintf(m_output, " value=\"%u\"", setting->value); + if (setting->value == field->defvalue) + fprintf(m_output, " default=\"yes\""); + fprintf(m_output, "/>\n"); + } + + // terminate the switch entry + fprintf(m_output, "\t\t</%s>\n", outertag); + } +} + + +//------------------------------------------------- +// output_adjusters - print the Analog +// Adjusters for a game +//------------------------------------------------- + +void info_xml_creator::output_adjusters(const ioport_list &portlist) +{ + // iterate looking for Adjusters + for (const input_port_config *port = portlist.first(); port != NULL; port = port->next()) + for (const input_field_config *field = port->fieldlist; field != NULL; field = field->next) + if (field->type == IPT_ADJUSTER) + fprintf(m_output, "\t\t<adjuster name=\"%s\" default=\"%d\"/>\n", xml_normalize_string(input_field_name(field)), field->defvalue); +} + + +//------------------------------------------------- +// output_driver - print driver status +//------------------------------------------------- + +void info_xml_creator::output_driver() +{ + fprintf(m_output, "\t\t<driver"); /* The status entry is an hint for frontend authors */ /* to select working and not working games without */ @@ -837,444 +959,210 @@ static void print_game_driver(FILE *out, const game_driver *game, const machine_ /* some minor issues, games marked as status=preliminary */ /* don't work or have major emulation problems. */ - if (game->flags & (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_NO_SOUND | GAME_WRONG_COLORS)) - fprintf(out, " status=\"preliminary\""); - else if (game->flags & (GAME_IMPERFECT_COLORS | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS)) - fprintf(out, " status=\"imperfect\""); + if (m_drivlist.driver().flags & (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_NO_SOUND | GAME_WRONG_COLORS)) + fprintf(m_output, " status=\"preliminary\""); + else if (m_drivlist.driver().flags & (GAME_IMPERFECT_COLORS | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS)) + fprintf(m_output, " status=\"imperfect\""); else - fprintf(out, " status=\"good\""); + fprintf(m_output, " status=\"good\""); - if (game->flags & GAME_NOT_WORKING) - fprintf(out, " emulation=\"preliminary\""); + if (m_drivlist.driver().flags & GAME_NOT_WORKING) + fprintf(m_output, " emulation=\"preliminary\""); else - fprintf(out, " emulation=\"good\""); + fprintf(m_output, " emulation=\"good\""); - if (game->flags & GAME_WRONG_COLORS) - fprintf(out, " color=\"preliminary\""); - else if (game->flags & GAME_IMPERFECT_COLORS) - fprintf(out, " color=\"imperfect\""); + if (m_drivlist.driver().flags & GAME_WRONG_COLORS) + fprintf(m_output, " color=\"preliminary\""); + else if (m_drivlist.driver().flags & GAME_IMPERFECT_COLORS) + fprintf(m_output, " color=\"imperfect\""); else - fprintf(out, " color=\"good\""); + fprintf(m_output, " color=\"good\""); - if (game->flags & GAME_NO_SOUND) - fprintf(out, " sound=\"preliminary\""); - else if (game->flags & GAME_IMPERFECT_SOUND) - fprintf(out, " sound=\"imperfect\""); + if (m_drivlist.driver().flags & GAME_NO_SOUND) + fprintf(m_output, " sound=\"preliminary\""); + else if (m_drivlist.driver().flags & GAME_IMPERFECT_SOUND) + fprintf(m_output, " sound=\"imperfect\""); else - fprintf(out, " sound=\"good\""); + fprintf(m_output, " sound=\"good\""); - if (game->flags & GAME_IMPERFECT_GRAPHICS) - fprintf(out, " graphic=\"imperfect\""); + if (m_drivlist.driver().flags & GAME_IMPERFECT_GRAPHICS) + fprintf(m_output, " graphic=\"imperfect\""); else - fprintf(out, " graphic=\"good\""); + fprintf(m_output, " graphic=\"good\""); - if (game->flags & GAME_NO_COCKTAIL) - fprintf(out, " cocktail=\"preliminary\""); + if (m_drivlist.driver().flags & GAME_NO_COCKTAIL) + fprintf(m_output, " cocktail=\"preliminary\""); - if (game->flags & GAME_UNEMULATED_PROTECTION) - fprintf(out, " protection=\"preliminary\""); + if (m_drivlist.driver().flags & GAME_UNEMULATED_PROTECTION) + fprintf(m_output, " protection=\"preliminary\""); - if (game->flags & GAME_SUPPORTS_SAVE) - fprintf(out, " savestate=\"supported\""); + if (m_drivlist.driver().flags & GAME_SUPPORTS_SAVE) + fprintf(m_output, " savestate=\"supported\""); else - fprintf(out, " savestate=\"unsupported\""); + fprintf(m_output, " savestate=\"unsupported\""); - fprintf(out, " palettesize=\"%d\"", config.m_total_colors); + fprintf(m_output, " palettesize=\"%d\"", m_drivlist.config().m_total_colors); - fprintf(out, "/>\n"); + fprintf(m_output, "/>\n"); } -/*------------------------------------------------- - print_game_categories - print the Categories - settings for a system --------------------------------------------------*/ -static void print_game_categories(FILE *out, const game_driver *game, const ioport_list &portlist) -{ - const input_port_config *port; - const input_field_config *field; +//------------------------------------------------- +// output_categories - print the Categories +// settings for a system +//------------------------------------------------- - /* iterate looking for Categories */ - for (port = portlist.first(); port != NULL; port = port->next()) - for (field = port->fieldlist; field != NULL; field = field->next) +void info_xml_creator::output_categories(const ioport_list &portlist) +{ + // iterate looking for Categories + for (const input_port_config *port = portlist.first(); port != NULL; port = port->next()) + for (const input_field_config *field = port->fieldlist; field != NULL; field = field->next) if (field->type == IPT_CATEGORY) { - const input_setting_config *setting; - - /* output the category name information */ - fprintf(out, "\t\t<category name=\"%s\">\n", xml_normalize_string(input_field_name(field))); + // output the category name information + fprintf(m_output, "\t\t<category name=\"%s\">\n", xml_normalize_string(input_field_name(field))); - /* loop over item settings */ - for (setting = field->settinglist; setting != NULL; setting = setting->next) + // loop over item settings + for (const input_setting_config *setting = field->settinglist; setting != NULL; setting = setting->next) { - fprintf(out, "\t\t\t<item name=\"%s\"", xml_normalize_string(setting->name)); + fprintf(m_output, "\t\t\t<item name=\"%s\"", xml_normalize_string(setting->name)); if (setting->value == field->defvalue) - fprintf(out, " default=\"yes\""); - fprintf(out, "/>\n"); + fprintf(m_output, " default=\"yes\""); + fprintf(m_output, "/>\n"); } - /* terminate the category entry */ - fprintf(out, "\t\t</category>\n"); + // terminate the category entry + fprintf(m_output, "\t\t</category>\n"); } } -/*------------------------------------------------- - print_game_images - prints out all info on - image devices --------------------------------------------------*/ -static void print_game_images(FILE *out, const game_driver *game, const machine_config &config) +//------------------------------------------------- +// output_images - prints m_output all info on +// image devices +//------------------------------------------------- + +void info_xml_creator::output_images() { const device_config_image_interface *dev = NULL; - const char *name; - const char *shortname; - - for (bool gotone = config.m_devicelist.first(dev); gotone; gotone = dev->next(dev)) + for (bool gotone = m_drivlist.config().m_devicelist.first(dev); gotone; gotone = dev->next(dev)) { - /* print out device type */ - fprintf(out, "\t\t<device type=\"%s\"", xml_normalize_string(dev->image_type_name())); + // print m_output device type + fprintf(m_output, "\t\t<device type=\"%s\"", xml_normalize_string(dev->image_type_name())); - /* does this device have a tag? */ + // does this device have a tag? if (dev->devconfig().tag()) - fprintf(out, " tag=\"%s\"", xml_normalize_string(dev->devconfig().tag())); + fprintf(m_output, " tag=\"%s\"", xml_normalize_string(dev->devconfig().tag())); - /* is this device mandatory? */ + // is this device mandatory? if (dev->must_be_loaded()) - fprintf(out, " mandatory=\"1\""); + fprintf(m_output, " mandatory=\"1\""); - if (dev->image_interface()[0] ) - fprintf(out, " interface=\"%s\"", xml_normalize_string(dev->image_interface())); + if (dev->image_interface()[0]) + fprintf(m_output, " interface=\"%s\"", xml_normalize_string(dev->image_interface())); - /* close the XML tag */ - fprintf(out, ">\n"); + // close the XML tag + fprintf(m_output, ">\n"); - name = dev->instance_name(); - shortname = dev->brief_instance_name(); + const char *name = dev->instance_name(); + const char *shortname = dev->brief_instance_name(); - fprintf(out, "\t\t\t<instance"); - fprintf(out, " name=\"%s\"", xml_normalize_string(name)); - fprintf(out, " briefname=\"%s\"", xml_normalize_string(shortname)); - fprintf(out, "/>\n"); + fprintf(m_output, "\t\t\t<instance"); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(name)); + fprintf(m_output, " briefname=\"%s\"", xml_normalize_string(shortname)); + fprintf(m_output, "/>\n"); astring extensions(dev->file_extensions()); - char *ext = strtok((char*)extensions.cstr(),","); + char *ext = strtok((char *)extensions.cstr(), ","); while (ext != NULL) { - fprintf(out, "\t\t\t<extension"); - fprintf(out, " name=\"%s\"", xml_normalize_string(ext)); - fprintf(out, "/>\n"); - ext = strtok (NULL, ","); + fprintf(m_output, "\t\t\t<extension"); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(ext)); + fprintf(m_output, "/>\n"); + ext = strtok(NULL, ","); } - fprintf(out, "\t\t</device>\n"); + fprintf(m_output, "\t\t</device>\n"); } } -/*------------------------------------------------- - print_game_software_list - print the information - for all known software lists for this system --------------------------------------------------*/ -static void print_game_software_list(FILE *out, const game_driver *game, const machine_config &config) +//------------------------------------------------- +// output_software_list - print the information +// for all known software lists for this system +//------------------------------------------------- + +void info_xml_creator::output_software_list() { - for (const device_config *dev = config.m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) + for (const device_config *dev = m_drivlist.config().m_devicelist.first(SOFTWARE_LIST); dev != NULL; dev = dev->typenext()) { software_list_config *swlist = (software_list_config *)downcast<const legacy_device_config_base *>(dev)->inline_config(); - for ( int i = 0; i < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; i++ ) - { - if ( swlist->list_name[i] ) + for (int i = 0; i < DEVINFO_STR_SWLIST_MAX - DEVINFO_STR_SWLIST_0; i++) + if (swlist->list_name[i]) { - fprintf(out, "\t\t<softwarelist name=\"%s\" ", swlist->list_name[i] ); - fprintf(out, "status=\"%s\" />\n", (swlist->list_type == SOFTWARE_LIST_ORIGINAL_SYSTEM) ? "original" : "compatible" ); + fprintf(m_output, "\t\t<softwarelist name=\"%s\" ", swlist->list_name[i]); + fprintf(m_output, "status=\"%s\" />\n", (swlist->list_type == SOFTWARE_LIST_ORIGINAL_SYSTEM) ? "original" : "compatible"); } - } } } -/* device iteration helpers */ -#define ram_first(config) (config).m_devicelist.first(RAM) -#define ram_next(previous) ((previous)->typenext()) -/*------------------------------------------------- - print_game_ramoptions - prints out all RAM - options for this system --------------------------------------------------*/ -static void print_game_ramoptions(FILE *out, const game_driver *game, const machine_config &config) -{ - const device_config *device; - for (device = ram_first(config); device != NULL; device = ram_next(device)) +//------------------------------------------------- +// output_ramoptions - prints m_output all RAM +// options for this system +//------------------------------------------------- + +void info_xml_creator::output_ramoptions() +{ + for (const device_config *device = m_drivlist.config().m_devicelist.first(RAM); device != NULL; device = device->typenext()) { ram_config *ram = (ram_config *)downcast<const legacy_device_config_base *>(device)->inline_config(); - fprintf(out, "\t\t<ramoption default=\"1\">%u</ramoption>\n", ram_parse_string(ram->default_size)); + fprintf(m_output, "\t\t<ramoption default=\"1\">%u</ramoption>\n", ram_parse_string(ram->default_size)); + if (ram->extra_options != NULL) { - int j; - int size = strlen(ram->extra_options); - char * const s = mame_strdup(ram->extra_options); - char * const e = s + size; - char *p = s; - for (j=0;j<size;j++) { - if (p[j]==',') p[j]=0; - } - /* try to parse each option */ - while(p <= e) + astring options(ram->extra_options); + for (int start, end = options.chr(0, ','); ; start = end + 1, end = options.chr(start, ',')) { - fprintf(out, "\t\t<ramoption>%u</ramoption>\n", ram_parse_string(p)); - p += strlen(p); - if (p == e) + astring option; + option.cpysubstr(options, start, (end == -1) ? -1 : end - start); + fprintf(m_output, "\t\t<ramoption>%u</ramoption>\n", ram_parse_string(option)); + if (end == -1) break; - p += 1; } - - osd_free(s); } } } -/*------------------------------------------------- - print_game_info - print the XML information - for one particular game driver --------------------------------------------------*/ - -static void print_game_info(FILE *out, const game_driver *game, emu_options &options) -{ - const game_driver *clone_of; - machine_config config(*game, options); - ioport_list portlist; - const char *start; - - /* no action if not a game */ - if (game->flags & GAME_NO_STANDALONE) - return; - /* start tracking resources and allocate the machine and input configs */ - input_port_list_init(portlist, game->ipt, NULL, 0, FALSE, NULL); - for (device_config *cfg = config.m_devicelist.first(); cfg != NULL; cfg = cfg->next()) - { - if (cfg->input_ports() != NULL) - input_port_list_init(portlist, cfg->input_ports(), NULL, 0, FALSE, cfg); - } - - /* print the header and the game name */ - fprintf(out, "\t<" XML_TOP); - fprintf(out, " name=\"%s\"", xml_normalize_string(game->name) ); +//------------------------------------------------- +// get_merge_name - get the rom name from a +// parent set +//------------------------------------------------- - /* strip away any path information from the source_file and output it */ - start = strrchr(game->source_file, '/'); - if (start == NULL) - start = strrchr(game->source_file, '\\'); - if (start == NULL) - start = game->source_file - 1; - fprintf(out, " sourcefile=\"%s\"", xml_normalize_string(start + 1)); - - /* append bios and runnable flags */ - if (game->flags & GAME_IS_BIOS_ROOT) - fprintf(out, " isbios=\"yes\""); - if (game->flags & GAME_NO_STANDALONE) - fprintf(out, " runnable=\"no\""); - if (game->flags & GAME_MECHANICAL) - fprintf(out, " ismechanical=\"yes\""); - - /* display clone information */ - clone_of = driver_get_clone(game); - if (clone_of != NULL && !(clone_of->flags & GAME_IS_BIOS_ROOT)) - fprintf(out, " cloneof=\"%s\"", xml_normalize_string(clone_of->name)); - if (clone_of != NULL) - fprintf(out, " romof=\"%s\"", xml_normalize_string(clone_of->name)); - - /* display sample information and close the game tag */ - print_game_sampleof(out, game, config); - fprintf(out, ">\n"); - - /* output game description */ - if (game->description != NULL) - fprintf(out, "\t\t<description>%s</description>\n", xml_normalize_string(game->description)); - - /* print the year only if is a number or another allowed character (? or +) */ - if (game->year != NULL && strspn(game->year, "0123456789?+") == strlen(game->year)) - fprintf(out, "\t\t<year>%s</year>\n", xml_normalize_string(game->year)); - - /* print the manufacturer information */ - if (game->manufacturer != NULL) - fprintf(out, "\t\t<manufacturer>%s</manufacturer>\n", xml_normalize_string(game->manufacturer)); - - /* now print various additional information */ - print_game_bios(out, game); - print_game_rom(out, game, config); - print_game_sample(out, game, config); - print_game_chips(out, game, config); - print_game_display(out, game, config); - print_game_sound(out, game, config); - print_game_input(out, game, portlist); - print_game_switches(out, game, portlist); - print_game_configs(out, game, portlist); - print_game_categories(out, game, portlist); - print_game_adjusters(out, game, portlist); - print_game_driver(out, game, config); - print_game_images( out, game, config ); - print_game_software_list( out, game, config ); - print_game_ramoptions( out, game, config ); - /* close the topmost tag */ - fprintf(out, "\t</" XML_TOP ">\n"); -} - - -/*------------------------------------------------- - print_mame_xml - print the XML information - for all known games --------------------------------------------------*/ - -void print_mame_xml(FILE *out, const game_driver *const games[], const char *gamename, emu_options &options) +const char *info_xml_creator::get_merge_name(const hash_collection &romhashes) { - int drvnum; - - fprintf(out, - "<?xml version=\"1.0\"?>\n" - "<!DOCTYPE " XML_ROOT " [\n" - "<!ELEMENT " XML_ROOT " (" XML_TOP "+)>\n" - "\t<!ATTLIST " XML_ROOT " build CDATA #IMPLIED>\n" - "\t<!ATTLIST " XML_ROOT " debug (yes|no) \"no\">\n" - "\t<!ATTLIST " XML_ROOT " mameconfig CDATA #REQUIRED>\n" - "\t<!ELEMENT " XML_TOP " (description, year?, manufacturer, biosset*, rom*, disk*, sample*, chip*, display*, sound?, input?, dipswitch*, configuration*, category*, adjuster*, driver?, device*, softwarelist*, ramoption*)>\n" - "\t\t<!ATTLIST " XML_TOP " name CDATA #REQUIRED>\n" - "\t\t<!ATTLIST " XML_TOP " sourcefile CDATA #IMPLIED>\n" - "\t\t<!ATTLIST " XML_TOP " isbios (yes|no) \"no\">\n" - "\t\t<!ATTLIST " XML_TOP " ismechanical (yes|no) \"no\">\n" - "\t\t<!ATTLIST " XML_TOP " runnable (yes|no) \"yes\">\n" - "\t\t<!ATTLIST " XML_TOP " cloneof CDATA #IMPLIED>\n" - "\t\t<!ATTLIST " XML_TOP " romof CDATA #IMPLIED>\n" - "\t\t<!ATTLIST " XML_TOP " sampleof CDATA #IMPLIED>\n" - "\t\t<!ELEMENT description (#PCDATA)>\n" - "\t\t<!ELEMENT year (#PCDATA)>\n" - "\t\t<!ELEMENT manufacturer (#PCDATA)>\n" - "\t\t<!ELEMENT biosset EMPTY>\n" - "\t\t\t<!ATTLIST biosset name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST biosset description CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST biosset default (yes|no) \"no\">\n" - "\t\t<!ELEMENT rom EMPTY>\n" - "\t\t\t<!ATTLIST rom name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST rom bios CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST rom size CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST rom crc CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST rom md5 CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST rom sha1 CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST rom merge CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST rom region CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST rom offset CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST rom status (baddump|nodump|good) \"good\">\n" - "\t\t\t<!ATTLIST rom optional (yes|no) \"no\">\n" - "\t\t<!ELEMENT disk EMPTY>\n" - "\t\t\t<!ATTLIST disk name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST disk md5 CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST disk sha1 CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST disk merge CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST disk region CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST disk index CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST disk status (baddump|nodump|good) \"good\">\n" - "\t\t\t<!ATTLIST disk optional (yes|no) \"no\">\n" - "\t\t<!ELEMENT sample EMPTY>\n" - "\t\t\t<!ATTLIST sample name CDATA #REQUIRED>\n" - "\t\t<!ELEMENT chip EMPTY>\n" - "\t\t\t<!ATTLIST chip name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST chip tag CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST chip type (cpu|audio) #REQUIRED>\n" - "\t\t\t<!ATTLIST chip clock CDATA #IMPLIED>\n" - "\t\t<!ELEMENT display EMPTY>\n" - "\t\t\t<!ATTLIST display type (raster|vector|lcd|unknown) #REQUIRED>\n" - "\t\t\t<!ATTLIST display rotate (0|90|180|270) #REQUIRED>\n" - "\t\t\t<!ATTLIST display flipx (yes|no) \"no\">\n" - "\t\t\t<!ATTLIST display width CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display height CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display refresh CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST display pixclock CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display htotal CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display hbend CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display hbstart CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display vtotal CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display vbend CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST display vbstart CDATA #IMPLIED>\n" - "\t\t<!ELEMENT sound EMPTY>\n" - "\t\t\t<!ATTLIST sound channels CDATA #REQUIRED>\n" - "\t\t<!ELEMENT input (control*)>\n" - "\t\t\t<!ATTLIST input service (yes|no) \"no\">\n" - "\t\t\t<!ATTLIST input tilt (yes|no) \"no\">\n" - "\t\t\t<!ATTLIST input players CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST input buttons CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST input coins CDATA #IMPLIED>\n" - "\t\t\t<!ELEMENT control EMPTY>\n" - "\t\t\t\t<!ATTLIST control type CDATA #REQUIRED>\n" - "\t\t\t\t<!ATTLIST control minimum CDATA #IMPLIED>\n" - "\t\t\t\t<!ATTLIST control maximum CDATA #IMPLIED>\n" - "\t\t\t\t<!ATTLIST control sensitivity CDATA #IMPLIED>\n" - "\t\t\t\t<!ATTLIST control keydelta CDATA #IMPLIED>\n" - "\t\t\t\t<!ATTLIST control reverse (yes|no) \"no\">\n" - "\t\t<!ELEMENT dipswitch (dipvalue*)>\n" - "\t\t\t<!ATTLIST dipswitch name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST dipswitch tag CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST dipswitch mask CDATA #REQUIRED>\n" - "\t\t\t<!ELEMENT dipvalue EMPTY>\n" - "\t\t\t\t<!ATTLIST dipvalue name CDATA #REQUIRED>\n" - "\t\t\t\t<!ATTLIST dipvalue value CDATA #REQUIRED>\n" - "\t\t\t\t<!ATTLIST dipvalue default (yes|no) \"no\">\n" - "\t\t<!ELEMENT configuration (confsetting*)>\n" - "\t\t\t<!ATTLIST configuration name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST configuration tag CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST configuration mask CDATA #REQUIRED>\n" - "\t\t\t<!ELEMENT confsetting EMPTY>\n" - "\t\t\t\t<!ATTLIST confsetting name CDATA #REQUIRED>\n" - "\t\t\t\t<!ATTLIST confsetting value CDATA #REQUIRED>\n" - "\t\t\t\t<!ATTLIST confsetting default (yes|no) \"no\">\n" - "\t\t<!ELEMENT category (item*)>\n" - "\t\t\t<!ATTLIST category name CDATA #REQUIRED>\n" - "\t\t\t<!ELEMENT item EMPTY>\n" - "\t\t\t\t<!ATTLIST item name CDATA #REQUIRED>\n" - "\t\t\t\t<!ATTLIST item default (yes|no) \"no\">\n" - "\t\t<!ELEMENT adjuster EMPTY>\n" - "\t\t\t<!ATTLIST adjuster name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST adjuster default CDATA #REQUIRED>\n" - "\t\t<!ELEMENT driver EMPTY>\n" - "\t\t\t<!ATTLIST driver status (good|imperfect|preliminary) #REQUIRED>\n" - "\t\t\t<!ATTLIST driver emulation (good|imperfect|preliminary) #REQUIRED>\n" - "\t\t\t<!ATTLIST driver color (good|imperfect|preliminary) #REQUIRED>\n" - "\t\t\t<!ATTLIST driver sound (good|imperfect|preliminary) #REQUIRED>\n" - "\t\t\t<!ATTLIST driver graphic (good|imperfect|preliminary) #REQUIRED>\n" - "\t\t\t<!ATTLIST driver cocktail (good|imperfect|preliminary) #IMPLIED>\n" - "\t\t\t<!ATTLIST driver protection (good|imperfect|preliminary) #IMPLIED>\n" - "\t\t\t<!ATTLIST driver savestate (supported|unsupported) #REQUIRED>\n" - "\t\t\t<!ATTLIST driver palettesize CDATA #REQUIRED>\n" - "\t\t<!ELEMENT device (instance*, extension*)>\n" - "\t\t\t<!ATTLIST device type CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST device tag CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST device mandatory CDATA #IMPLIED>\n" - "\t\t\t<!ATTLIST device interface CDATA #IMPLIED>\n" - "\t\t\t<!ELEMENT instance EMPTY>\n" - "\t\t\t\t<!ATTLIST instance name CDATA #REQUIRED>\n" - "\t\t\t\t<!ATTLIST instance briefname CDATA #REQUIRED>\n" - "\t\t\t<!ELEMENT extension EMPTY>\n" - "\t\t\t\t<!ATTLIST extension name CDATA #REQUIRED>\n" - "\t\t<!ELEMENT softwarelist EMPTY>\n" - "\t\t\t<!ATTLIST softwarelist name CDATA #REQUIRED>\n" - "\t\t\t<!ATTLIST softwarelist status (original|compatible) #REQUIRED>\n" - "\t\t<!ELEMENT ramoption (#PCDATA)>\n" - "\t\t\t<!ATTLIST ramoption default CDATA #IMPLIED>\n" - "]>\n\n" - "<" XML_ROOT " build=\"%s\" debug=\"" -#ifdef MAME_DEBUG - "yes" -#else - "no" -#endif - "\" mameconfig=\"%d\">\n", - xml_normalize_string(build_version), - CONFIG_VERSION - ); - - for (drvnum = 0; games[drvnum] != NULL; drvnum++) - if (mame_strwildcmp(gamename, games[drvnum]->name) == 0) - print_game_info(out, games[drvnum], options); + const char *merge_name = NULL; + + // walk the parent chain + for (int clone_of = m_drivlist.find(m_drivlist.driver().parent); clone_of != -1; clone_of = m_drivlist.find(m_drivlist.driver(clone_of).parent)) + + // look in the parent's ROMs + for (const rom_source *psource = rom_first_source(m_drivlist.config(clone_of)); psource != NULL; psource = rom_next_source(*psource)) + for (const rom_entry *pregion = rom_first_region(*psource); pregion != NULL; pregion = rom_next_region(pregion)) + for (const rom_entry *prom = rom_first_file(pregion); prom != NULL; prom = rom_next_file(prom)) + { + hash_collection phashes(ROM_GETHASHDATA(prom)); + if (!phashes.flag(hash_collection::FLAG_NO_DUMP) && romhashes == phashes) + { + // stop when we find a match + merge_name = ROM_GETNAME(prom); + break; + } + } - fprintf(out, "</" XML_ROOT ">\n"); + return merge_name; } diff --git a/src/emu/info.h b/src/emu/info.h index 327354e2d6f..5fd260d05bf 100644 --- a/src/emu/info.h +++ b/src/emu/info.h @@ -4,8 +4,36 @@ Dumps the MAME internal data as an XML file. - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ @@ -15,12 +43,47 @@ #define __INFO_H__ -/*************************************************************************** - FUNCTION PROTOTYPES -***************************************************************************/ +//************************************************************************** +// FUNCTION PROTOTYPES +//************************************************************************** + +// helper class to putput +class info_xml_creator +{ +public: + // construction/destruction + info_xml_creator(driver_enumerator &drivlist); + + // output + void output(FILE *out); + +private: + // internal helper + void output_one(); + void output_sampleof(); + void output_bios(); + void output_rom(); + void output_sample(); + void output_chips(); + void output_display(); + void output_sound(); + void output_input(const ioport_list &portlist); + void output_switches(const ioport_list &portlist, int type, const char *outertag, const char *innertag); + void output_adjusters(const ioport_list &portlist); + void output_categories(const ioport_list &portlist); + void output_driver(); + void output_images(); + void output_software_list(); + void output_ramoptions(); + + const char *get_merge_name(const hash_collection &romhashes); + + // internal state + FILE * m_output; + driver_enumerator & m_drivlist; -/* print the MAME database in XML format */ -void print_mame_xml(FILE* out, const game_driver* const games[], const char *gamename, emu_options &options); + static const char s_dtd_string[]; +}; #endif /* __INFO_H__ */ diff --git a/src/mame/layout/pinball.lay b/src/emu/layout/pinball.lay index 0372a828ac0..0372a828ac0 100644 --- a/src/mame/layout/pinball.lay +++ b/src/emu/layout/pinball.lay diff --git a/src/emu/machine.c b/src/emu/machine.c index a0ed6794f14..7707468d556 100644 --- a/src/emu/machine.c +++ b/src/emu/machine.c @@ -943,8 +943,17 @@ driver_device_config_base::driver_device_config_base(const machine_config &mconf void driver_device_config_base::static_set_game(device_config *device, const game_driver *game) { - downcast<driver_device_config_base *>(device)->m_system = game; - downcast<driver_device_config_base *>(device)->m_shortname = game->name; + driver_device_config_base *base = downcast<driver_device_config_base *>(device); + + base->m_system = game; + + // set the short name to the game's name + base->m_shortname = game->name; + + // and set the search path to include all parents + base->m_searchpath = game->name; + for (int parent = driver_list::clone(*game); parent != -1; parent = driver_list::clone(parent)) + base->m_searchpath.cat(";").cat(driver_list::driver(parent).name); } diff --git a/src/emu/mame.c b/src/emu/mame.c index 65d671b32ef..ea9452ac2de 100644 --- a/src/emu/mame.c +++ b/src/emu/mame.c @@ -157,7 +157,7 @@ int mame_execute(emu_options &options, osd_interface &osd) const game_driver *system = options.system(); if (system == NULL) { - system = &GAME_NAME(empty); + system = &GAME_NAME(___empty); if (firstgame) started_empty = true; } diff --git a/src/emu/render.c b/src/emu/render.c index 654534d3a52..5ca15bd77da 100644 --- a/src/emu/render.c +++ b/src/emu/render.c @@ -1642,10 +1642,10 @@ void render_target::load_layout_files(const char *layoutfile, bool singlefile) load_layout_file(NULL, m_manager.machine().config().m_default_layout); // try to load another file based on the parent driver name - const game_driver *cloneof = driver_get_clone(&system); - if (cloneof != NULL) - if (!load_layout_file(cloneof->name, cloneof->name)) - load_layout_file(cloneof->name, "default"); + int cloneof = driver_list::clone(system); + if (cloneof != -1) + if (!load_layout_file(driver_list::driver(cloneof).name, driver_list::driver(cloneof).name)) + load_layout_file(driver_list::driver(cloneof).name, "default"); // now do the built-in layouts for single-screen games if (m_manager.machine().m_devicelist.count(SCREEN) == 1) diff --git a/src/emu/rendlay.c b/src/emu/rendlay.c index c6e03f1c1d6..c3df4c94c9c 100644 --- a/src/emu/rendlay.c +++ b/src/emu/rendlay.c @@ -117,6 +117,10 @@ #include "lcd.lh" #include "lcd_rot.lh" +// generic dummy pinball layout +#include "pinball.lh" + + //************************************************************************** // CONSTANTS diff --git a/src/emu/romload.c b/src/emu/romload.c index 760cfc46ac0..46cf9c09d81 100644 --- a/src/emu/romload.c +++ b/src/emu/romload.c @@ -614,7 +614,6 @@ static int open_rom_file(rom_load_data *romdata, const char *regiontag, const ro { file_error filerr = FILERR_NOT_FOUND; UINT32 romsize = rom_file_size(romp); - const game_driver *drv; /* update status display */ display_loading_rom_message(romdata, ROM_GETNAME(romp)); @@ -626,9 +625,8 @@ static int open_rom_file(rom_load_data *romdata, const char *regiontag, const ro /* attempt reading up the chain through the parents. It automatically also attempts any kind of load by checksum supported by the archives. */ romdata->file = NULL; - for (drv = &romdata->machine().system(); romdata->file == NULL && drv != NULL; drv = driver_get_clone(drv)) - if (drv->name != NULL && *drv->name != 0) - filerr = common_process_file(romdata->machine().options(), drv->name, has_crc, crc, romp, &romdata->file); + for (int drv = driver_list::find(romdata->machine().system()); romdata->file == NULL && drv != -1; drv = driver_list::clone(drv)) + filerr = common_process_file(romdata->machine().options(), driver_list::driver(drv).name, has_crc, crc, romp, &romdata->file); /* if the region is load by name, load the ROM from there */ if (romdata->file == NULL && regiontag != NULL) @@ -1007,7 +1005,6 @@ static void process_rom_entries(rom_load_data *romdata, const char *regiontag, c chd_error open_disk_image(emu_options &options, const game_driver *gamedrv, const rom_entry *romp, emu_file **image_file, chd_file **image_chd, const char *locationtag) { - const game_driver *drv, *searchdrv; const rom_entry *region, *rom; const rom_source *source; file_error filerr; @@ -1018,8 +1015,8 @@ chd_error open_disk_image(emu_options &options, const game_driver *gamedrv, cons /* attempt to open the properly named file, scanning up through parent directories */ filerr = FILERR_NOT_FOUND; - for (searchdrv = gamedrv; searchdrv != NULL && filerr != FILERR_NONE; searchdrv = driver_get_clone(searchdrv)) - filerr = common_process_file(options, searchdrv->name, ".chd", romp, image_file); + for (int searchdrv = driver_list::find(*gamedrv); searchdrv != -1 && filerr != FILERR_NONE; searchdrv = driver_list::clone(searchdrv)) + filerr = common_process_file(options, driver_list::driver(searchdrv).name, ".chd", romp, image_file); if (filerr != FILERR_NONE) filerr = common_process_file(options, NULL, ".chd", romp, image_file); @@ -1114,9 +1111,9 @@ chd_error open_disk_image(emu_options &options, const game_driver *gamedrv, cons /* otherwise, look at our parents for a CHD with an identical checksum */ /* and try to open that */ hash_collection romphashes(ROM_GETHASHDATA(romp)); - for (drv = gamedrv; drv != NULL; drv = driver_get_clone(drv)) + for (int drv = driver_list::find(*gamedrv); drv != -1; drv = driver_list::clone(drv)) { - machine_config config(*drv, options); + machine_config config(driver_list::driver(drv), options); for (source = rom_first_source(config); source != NULL; source = rom_next_source(*source)) for (region = rom_first_region(*source); region != NULL; region = rom_next_region(region)) if (ROMREGION_ISDISKDATA(region)) @@ -1128,8 +1125,8 @@ chd_error open_disk_image(emu_options &options, const game_driver *gamedrv, cons { /* attempt to open the properly named file, scanning up through parent directories */ filerr = FILERR_NOT_FOUND; - for (searchdrv = drv; searchdrv != NULL && filerr != FILERR_NONE; searchdrv = driver_get_clone(searchdrv)) - filerr = common_process_file(options, searchdrv->name, ".chd", rom, image_file); + for (int searchdrv = drv; searchdrv != -1 && filerr != FILERR_NONE; searchdrv = driver_list::clone(searchdrv)) + filerr = common_process_file(options, driver_list::driver(searchdrv).name, ".chd", rom, image_file); if (filerr != FILERR_NONE) filerr = common_process_file(options, NULL, ".chd", rom, image_file); diff --git a/src/emu/sound/bsmt2000.c b/src/emu/sound/bsmt2000.c index 6293b8b38bd..7e172fc6a98 100644 --- a/src/emu/sound/bsmt2000.c +++ b/src/emu/sound/bsmt2000.c @@ -107,13 +107,12 @@ ROM_END //------------------------------------------------- bsmt2000_device_config::bsmt2000_device_config(const machine_config &mconfig, const char *tag, const device_config *owner, UINT32 clock) - : device_config(mconfig, static_alloc_device_config, "BSMT2000", tag, owner, clock), + : device_config(mconfig, static_alloc_device_config, "BSMT2000", "bsmt2000", tag, owner, clock), device_config_sound_interface(mconfig, *this), device_config_memory_interface(mconfig, *this), m_space_config("samples", ENDIANNESS_LITTLE, 8, 32, 0, NULL, *ADDRESS_MAP_NAME(bsmt2000)), m_ready_callback(NULL) { - m_shortname = "bsmt2000"; } diff --git a/src/emu/sound/wavwrite.c b/src/emu/sound/wavwrite.c index 1d318a08b9e..5cd884d7417 100644 --- a/src/emu/sound/wavwrite.c +++ b/src/emu/sound/wavwrite.c @@ -126,7 +126,7 @@ void wav_add_data_32(wav_file *wav, INT32 *data, int samples, int shift) if (!wav) return; /* allocate temp memory */ - temp = (INT16 *)osd_malloc(samples * sizeof(temp[0])); + temp = (INT16 *)osd_malloc_array(samples * sizeof(temp[0])); if (!temp) return; @@ -154,7 +154,7 @@ void wav_add_data_16lr(wav_file *wav, INT16 *left, INT16 *right, int samples) if (!wav) return; /* allocate temp memory */ - temp = (INT16 *)osd_malloc(samples * 2 * sizeof(temp[0])); + temp = (INT16 *)osd_malloc_array(samples * 2 * sizeof(temp[0])); if (!temp) return; @@ -179,7 +179,7 @@ void wav_add_data_32lr(wav_file *wav, INT32 *left, INT32 *right, int samples, in if (!wav) return; /* allocate temp memory */ - temp = (INT16 *)osd_malloc(samples * 2 * sizeof(temp[0])); + temp = (INT16 *)osd_malloc_array(samples * 2 * sizeof(temp[0])); if (!temp) return; diff --git a/src/emu/ui.c b/src/emu/ui.c index 61110734aca..b29ebddc89d 100644 --- a/src/emu/ui.c +++ b/src/emu/ui.c @@ -280,7 +280,7 @@ int ui_display_startup_screens(running_machine &machine, int first_time, int sho /* disable everything if we are using -str for 300 or fewer seconds, or if we're the empty driver, or if we are debugging */ - if (!first_time || (str > 0 && str < 60*5) || &machine.system() == &GAME_NAME(empty) || (machine.debug_flags & DEBUG_FLAG_ENABLED) != 0) + if (!first_time || (str > 0 && str < 60*5) || &machine.system() == &GAME_NAME(___empty) || (machine.debug_flags & DEBUG_FLAG_ENABLED) != 0) show_gameinfo = show_warnings = show_disclaimer = FALSE; /* initialize the on-screen display system */ @@ -907,8 +907,6 @@ static astring &warnings_string(running_machine &machine, astring &string) GAME_IMPERFECT_GRAPHICS | \ GAME_NO_COCKTAIL) - int i; - string.reset(); /* if no warnings, nothing to return */ @@ -955,10 +953,6 @@ static astring &warnings_string(running_machine &machine, astring &string) /* if there's a NOT WORKING, UNEMULATED PROTECTION or GAME MECHANICAL warning, make it stronger */ if (machine.system().flags & (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_MECHANICAL)) { - const game_driver *maindrv; - const game_driver *clone_of; - int foundworking; - /* add the strings for these warnings */ if (machine.system().flags & GAME_UNEMULATED_PROTECTION) string.cat("The game has protection which isn't fully emulated.\n"); @@ -970,25 +964,25 @@ static astring &warnings_string(running_machine &machine, astring &string) "It is not possible to fully play this " GAMENOUN ".\n"); /* find the parent of this driver */ - clone_of = driver_get_clone(&machine.system()); - if (clone_of != NULL && !(clone_of->flags & GAME_IS_BIOS_ROOT)) + driver_enumerator drivlist(machine.options()); + int maindrv = drivlist.find(machine.system()); + int clone_of = drivlist.non_bios_clone(maindrv); + if (clone_of != -1) maindrv = clone_of; - else - maindrv = &machine.system(); /* scan the driver list for any working clones and add them */ - foundworking = FALSE; - for (i = 0; drivers[i] != NULL; i++) - if (drivers[i] == maindrv || driver_get_clone(drivers[i]) == maindrv) - if ((drivers[i]->flags & (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_MECHANICAL)) == 0) + bool foundworking = false; + while (drivlist.next()) + if (drivlist.current() == maindrv || drivlist.clone() == maindrv) + if ((drivlist.driver().flags & (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_MECHANICAL)) == 0) { /* this one works, add a header and display the name of the clone */ if (!foundworking) string.cat("\n\nThere are working clones of this game: "); else string.cat(", "); - string.cat(drivers[i]->name); - foundworking = TRUE; + string.cat(drivlist.driver().name); + foundworking = true; } if (foundworking) diff --git a/src/emu/uimenu.c b/src/emu/uimenu.c index efd14614b1b..91addf9ba55 100644 --- a/src/emu/uimenu.c +++ b/src/emu/uimenu.c @@ -208,7 +208,7 @@ struct _select_game_state UINT8 error; UINT8 rerandomize; char search[40]; - const game_driver * matchlist[VISIBLE_GAMES_IN_LIST]; + int matchlist[VISIBLE_GAMES_IN_LIST]; const game_driver * driverlist[1]; }; @@ -245,6 +245,9 @@ static const char priortext[] = "Return to Prior Menu"; static const char backtext[] = "Return to " CAPSTARTGAMENOUN; static const char exittext[] = "Exit"; +// temporary hack until this is C++-ified +static driver_enumerator *drivlist; + /*************************************************************************** @@ -299,7 +302,6 @@ static void menu_crosshair_populate(running_machine &machine, ui_menu *menu); static void menu_quit_game(running_machine &machine, ui_menu *menu, void *parameter, void *state); static void menu_select_game(running_machine &machine, ui_menu *menu, void *parameter, void *state); static void menu_select_game_populate(running_machine &machine, ui_menu *menu, select_game_state *menustate); -static int CLIB_DECL menu_select_game_driver_compare(const void *elem1, const void *elem2); static void menu_select_game_build_driver_list(ui_menu *menu, select_game_state *menustate); static void menu_select_game_custom_render(running_machine &machine, ui_menu *menu, void *state, void *selectedref, float top, float bottom, float x, float y, float x2, float y2); @@ -3426,9 +3428,10 @@ static void menu_select_game(running_machine &machine, ui_menu *menu, void *para /* if no state, allocate some */ if (state == NULL) { - state = ui_menu_alloc_state(menu, sizeof(*menustate) + sizeof(menustate->driverlist) * driver_list_get_count(drivers), NULL); + state = ui_menu_alloc_state(menu, sizeof(*menustate) + sizeof(menustate->driverlist) * driver_list::total(), NULL); if (parameter != NULL) strcpy(((select_game_state *)state)->search, (const char *)parameter); + ((select_game_state *)state)->matchlist[0] = -1; } menustate = (select_game_state *)state; @@ -3459,24 +3462,20 @@ static void menu_select_game(running_machine &machine, ui_menu *menu, void *para /* anything else is a driver */ else { - audit_record *audit; - int audit_records; - int audit_result; - - /* audit the game first to see if we're going to work */ - audit_records = audit_images(menu->machine().options(), driver, AUDIT_VALIDATE_FAST, &audit); - audit_result = audit_summary(driver, audit_records, audit, FALSE); - if (audit_records > 0) - global_free(audit); - - /* if everything looks good, schedule the new driver */ - if (audit_result == CORRECT || audit_result == BEST_AVAILABLE) + // audit the game first to see if we're going to work + driver_enumerator enumerator(machine.options(), *driver); + enumerator.next(); + media_auditor auditor(enumerator); + media_auditor::summary summary = auditor.audit_media(AUDIT_VALIDATE_FAST); + + // if everything looks good, schedule the new driver + if (summary == media_auditor::CORRECT || summary == media_auditor::BEST_AVAILABLE) { machine.schedule_new_driver(*driver); ui_menu_stack_reset(machine); } - /* otherwise, display an error */ + // otherwise, display an error else { ui_menu_reset(menu, UI_MENU_RESET_REMEMBER_REF); @@ -3551,18 +3550,19 @@ static void menu_select_game_populate(running_machine &machine, ui_menu *menu, s } /* otherwise, rebuild the match list */ - if (menustate->search[0] != 0 || menustate->matchlist[0] == NULL || menustate->rerandomize) - driver_list_get_approx_matches(menustate->driverlist, menustate->search, matchcount, menustate->matchlist); + assert(drivlist != NULL); + if (menustate->search[0] != 0 || menustate->matchlist[0] == -1 || menustate->rerandomize) + drivlist->find_approximate_matches(menustate->search, matchcount, menustate->matchlist); menustate->rerandomize = FALSE; /* iterate over entries */ for (curitem = 0; curitem < matchcount; curitem++) { - const game_driver *driver = menustate->matchlist[curitem]; - if (driver != NULL) + int curmatch = menustate->matchlist[curitem]; + if (curmatch != -1) { - const game_driver *cloneof = driver_get_clone(driver); - ui_menu_item_append(menu, driver->name, driver->description, (cloneof == NULL || (cloneof->flags & GAME_IS_BIOS_ROOT)) ? 0 : MENU_FLAG_INVERT, (void *)driver); + int cloneof = drivlist->non_bios_clone(curmatch); + ui_menu_item_append(menu, drivlist->driver(curmatch).name, drivlist->driver(curmatch).description, (cloneof == -1) ? 0 : MENU_FLAG_INVERT, (void *)&drivlist->driver(curmatch)); } } @@ -3579,41 +3579,17 @@ static void menu_select_game_populate(running_machine &machine, ui_menu *menu, s /*------------------------------------------------- - menu_select_game_driver_compare - compare the - names of two drivers --------------------------------------------------*/ - -static int CLIB_DECL menu_select_game_driver_compare(const void *elem1, const void *elem2) -{ - const game_driver **driver1_ptr = (const game_driver **)elem1; - const game_driver **driver2_ptr = (const game_driver **)elem2; - const char *driver1 = (*driver1_ptr)->name; - const char *driver2 = (*driver2_ptr)->name; - - while (*driver1 == *driver2 && *driver1 != 0) - driver1++, driver2++; - return *driver1 - *driver2; -} - - -/*------------------------------------------------- menu_select_game_build_driver_list - build a list of available drivers -------------------------------------------------*/ static void menu_select_game_build_driver_list(ui_menu *menu, select_game_state *menustate) { - int driver_count = driver_list_get_count(drivers); - int drivnum, listnum; - UINT8 *found; - - /* create a sorted copy of the main driver list */ - memcpy((void *)menustate->driverlist, drivers, driver_count * sizeof(menustate->driverlist[0])); - qsort((void *)menustate->driverlist, driver_count, sizeof(menustate->driverlist[0]), menu_select_game_driver_compare); - - /* allocate a temporary array to track which ones we found */ - found = (UINT8 *)ui_menu_pool_alloc(menu, (driver_count + 7) / 8); - memset(found, 0, (driver_count + 7) / 8); + // start with an empty list + // hack alert: use new directly here to avoid reporting this one-time static memory as unfreed + if (drivlist == NULL) + drivlist = new driver_enumerator(menu->machine().options()); + drivlist->exclude_all(); /* open a path to the ROMs and find them in the array */ file_enumerator path(menu->machine().options().media_path()); @@ -3622,9 +3598,6 @@ static void menu_select_game_build_driver_list(ui_menu *menu, select_game_state /* iterate while we get new objects */ while ((dir = path.next()) != NULL) { - game_driver tempdriver; - game_driver *tempdriver_ptr; - const game_driver **found_driver; char drivername[50]; char *dst = drivername; const char *src; @@ -3634,23 +3607,16 @@ static void menu_select_game_build_driver_list(ui_menu *menu, select_game_state *dst++ = tolower((UINT8)*src); *dst = 0; - /* find it in the array */ - tempdriver.name = drivername; - tempdriver_ptr = &tempdriver; - found_driver = (const game_driver **)bsearch(&tempdriver_ptr, menustate->driverlist, driver_count, sizeof(*menustate->driverlist), menu_select_game_driver_compare); - - /* if found, mark the corresponding entry in the array */ - if (found_driver != NULL) - { - int index = found_driver - menustate->driverlist; - found[index / 8] |= 1 << (index % 8); - } + int drivnum = drivlist->find(drivername); + if (drivnum != -1) + drivlist->include(drivnum); } /* now build the final list */ - for (drivnum = listnum = 0; drivnum < driver_count; drivnum++) - if (found[drivnum / 8] & (1 << (drivnum % 8))) - menustate->driverlist[listnum++] = menustate->driverlist[drivnum]; + drivlist->reset(); + int listnum = 0; + while (drivlist->next()) + menustate->driverlist[listnum++] = &drivlist->driver(); /* NULL-terminate */ menustate->driverlist[listnum] = NULL; diff --git a/src/emu/validity.c b/src/emu/validity.c index e15082da3c4..2e0fbbb84d1 100644 --- a/src/emu/validity.c +++ b/src/emu/validity.c @@ -314,12 +314,11 @@ static bool validate_inlines(void) information -------------------------------------------------*/ -static bool validate_driver(const machine_config &config, game_driver_map &names, game_driver_map &descriptions) +static bool validate_driver(driver_enumerator &drivlist, game_driver_map &names, game_driver_map &descriptions) { - const game_driver &driver = config.gamedrv(); - const game_driver *clone_of; + const game_driver &driver = drivlist.driver(); + const machine_config &config = drivlist.config(); const char *compatible_with; - const game_driver *other_drv; bool error = FALSE, is_clone; const char *s; @@ -343,27 +342,27 @@ static bool validate_driver(const machine_config &config, game_driver_map &names /* determine the clone */ is_clone = (strcmp(driver.parent, "0") != 0); - clone_of = driver_get_clone(&driver); - if (clone_of && (clone_of->flags & GAME_IS_BIOS_ROOT)) + int clone_of = drivlist.clone(driver); + if (clone_of != -1 && (drivlist.driver(clone_of).flags & GAME_IS_BIOS_ROOT)) is_clone = false; /* if we have at least 100 drivers, validate the clone */ /* (100 is arbitrary, but tries to avoid tiny.mak dependencies) */ - if (driver_list_get_count(drivers) > 100 && !clone_of && is_clone) + if (driver_list::total() > 100 && clone_of == -1 && is_clone) { mame_printf_error("%s: %s is a non-existant clone\n", driver.source_file, driver.parent); error = true; } /* look for recursive cloning */ - if (clone_of == &driver) + if (clone_of != -1 && &drivlist.driver(clone_of) == &driver) { mame_printf_error("%s: %s is set as a clone of itself\n", driver.source_file, driver.name); error = true; } /* look for clones that are too deep */ - if (clone_of != NULL && (clone_of = driver_get_clone(clone_of)) != NULL && (clone_of->flags & GAME_IS_BIOS_ROOT) == 0) + if (clone_of != -1 && (clone_of = drivlist.non_bios_clone(clone_of)) != -1) { mame_printf_error("%s: %s is a clone of a clone\n", driver.source_file, driver.name); error = true; @@ -392,23 +391,23 @@ static bool validate_driver(const machine_config &config, game_driver_map &names compatible_with = NULL; /* check for this driver being compatible with a non-existant driver */ - if ((compatible_with != NULL) && (driver_get_name(driver.compatible_with) == NULL)) + if ((compatible_with != NULL) && (drivlist.find(driver.compatible_with) == -1)) { mame_printf_error("%s: is compatible with %s, which is not in drivers[]\n", driver.name, driver.compatible_with); error = true; } /* check for clone_of and compatible_with being specified at the same time */ - if ((driver_get_clone(&driver) != NULL) && (compatible_with != NULL)) + if ((drivlist.clone(driver) != -1) && (compatible_with != NULL)) { mame_printf_error("%s: both compatible_with and clone_of are specified\n", driver.name); error = true; } /* find any recursive dependencies on the current driver */ - for (other_drv = driver_get_compatible(&driver); other_drv != NULL; other_drv = driver_get_compatible(other_drv)) + for (int other_drv = drivlist.compatible_with(driver); other_drv != -1; other_drv = drivlist.compatible_with(other_drv)) { - if (&driver == other_drv) + if (&driver == &drivlist.driver(other_drv)) { mame_printf_error("%s: recursive compatibility\n", driver.name); error = true; @@ -432,9 +431,10 @@ static bool validate_driver(const machine_config &config, game_driver_map &names validate_roms - validate ROM definitions -------------------------------------------------*/ -static bool validate_roms(const machine_config &config, region_array *rgninfo, game_driver_map &roms) +static bool validate_roms(driver_enumerator &drivlist, region_array *rgninfo, game_driver_map &roms) { - const game_driver &driver = config.gamedrv(); + const game_driver &driver = drivlist.driver(); + const machine_config &config = drivlist.config(); int bios_flags = 0, last_bios = 0; const char *last_rgnname = "???"; const char *last_name = "???"; @@ -579,9 +579,10 @@ static bool validate_roms(const machine_config &config, region_array *rgninfo, g configurations -------------------------------------------------*/ -static bool validate_display(const machine_config &config) +static bool validate_display(driver_enumerator &drivlist) { - const game_driver &driver = config.gamedrv(); + const game_driver &driver = drivlist.driver(); + const machine_config &config = drivlist.config(); bool palette_modes = false; bool error = false; @@ -605,9 +606,10 @@ static bool validate_display(const machine_config &config) configuration -------------------------------------------------*/ -static bool validate_gfx(const machine_config &config, region_array *rgninfo) +static bool validate_gfx(driver_enumerator &drivlist, region_array *rgninfo) { - const game_driver &driver = config.gamedrv(); + const game_driver &driver = drivlist.driver(); + const machine_config &config = drivlist.config(); bool error = false; int gfxnum; @@ -939,12 +941,13 @@ static void validate_dip_settings(const input_field_config *field, const game_dr validate_inputs - validate input configuration -------------------------------------------------*/ -static bool validate_inputs(const machine_config &config, int_map &defstr_map, ioport_list &portlist) +static bool validate_inputs(driver_enumerator &drivlist, int_map &defstr_map, ioport_list &portlist) { const input_port_config *scanport; const input_port_config *port; const input_field_config *field; - const game_driver &driver = config.gamedrv(); + const game_driver &driver = drivlist.driver(); + const machine_config &config = drivlist.config(); int empty_string_found = FALSE; char errorbuf[1024]; bool error = false; @@ -1088,10 +1091,11 @@ static bool validate_inputs(const machine_config &config, int_map &defstr_map, i checks -------------------------------------------------*/ -static bool validate_devices(const machine_config &config, const ioport_list &portlist, region_array *rgninfo) +static bool validate_devices(driver_enumerator &drivlist, const ioport_list &portlist, region_array *rgninfo) { bool error = false; - const game_driver &driver = config.gamedrv(); + const game_driver &driver = drivlist.driver(); + const machine_config &config = drivlist.config(); for (const device_config *devconfig = config.m_devicelist.first(); devconfig != NULL; devconfig = devconfig->next()) { @@ -1126,7 +1130,6 @@ static bool validate_devices(const machine_config &config, const ioport_list &po void validate_drivers(emu_options &options, const game_driver *curdriver) { osd_ticks_t prep = 0; - osd_ticks_t expansion = 0; osd_ticks_t driver_checks = 0; osd_ticks_t rom_checks = 0; osd_ticks_t gfx_checks = 0; @@ -1186,9 +1189,10 @@ void validate_drivers(emu_options &options, const game_driver *curdriver) prep += get_profile_ticks(); /* iterate over all drivers */ - for (int drivnum = 0; drivers[drivnum]; drivnum++) + driver_enumerator drivlist(options); + while (drivlist.next()) { - const game_driver &driver = *drivers[drivnum]; + const game_driver &driver = drivlist.driver(); ioport_list portlist; region_array rgninfo; @@ -1198,39 +1202,34 @@ void validate_drivers(emu_options &options, const game_driver *curdriver) try { - /* expand the machine driver */ - expansion -= get_profile_ticks(); - machine_config config(driver, options); - expansion += get_profile_ticks(); - /* validate the driver entry */ driver_checks -= get_profile_ticks(); - error = validate_driver(config, names, descriptions) || error; + error = validate_driver(drivlist, names, descriptions) || error; driver_checks += get_profile_ticks(); /* validate the ROM information */ rom_checks -= get_profile_ticks(); - error = validate_roms(config, &rgninfo, roms) || error; + error = validate_roms(drivlist, &rgninfo, roms) || error; rom_checks += get_profile_ticks(); /* validate input ports */ input_checks -= get_profile_ticks(); - error = validate_inputs(config, defstr, portlist) || error; + error = validate_inputs(drivlist, defstr, portlist) || error; input_checks += get_profile_ticks(); /* validate the display */ display_checks -= get_profile_ticks(); - error = validate_display(config) || error; + error = validate_display(drivlist) || error; display_checks += get_profile_ticks(); /* validate the graphics decoding */ gfx_checks -= get_profile_ticks(); - error = validate_gfx(config, &rgninfo) || error; + error = validate_gfx(drivlist, &rgninfo) || error; gfx_checks += get_profile_ticks(); /* validate devices */ device_checks -= get_profile_ticks(); - error = validate_devices(config, portlist, &rgninfo) || error; + error = validate_devices(drivlist, portlist, &rgninfo) || error; device_checks += get_profile_ticks(); } catch (emu_fatalerror &err) @@ -1241,7 +1240,6 @@ void validate_drivers(emu_options &options, const game_driver *curdriver) #if (REPORT_TIMES) mame_printf_info("Prep: %8dm\n", (int)(prep / 1000000)); - mame_printf_info("Expansion: %8dm\n", (int)(expansion / 1000000)); mame_printf_info("Driver: %8dm\n", (int)(driver_checks / 1000000)); mame_printf_info("ROM: %8dm\n", (int)(rom_checks / 1000000)); mame_printf_info("CPU: %8dm\n", (int)(cpu_checks / 1000000)); diff --git a/src/lib/util/astring.h b/src/lib/util/astring.h index 86f45ba02d5..6c9deb1128a 100644 --- a/src/lib/util/astring.h +++ b/src/lib/util/astring.h @@ -318,6 +318,7 @@ public: astring(const char *str1, const char *str2, const char *str3, const char *str4) { init().cpy(str1).cat(str2).cat(str3).cat(str4); } astring(const char *str1, const char *str2, const char *str3, const char *str4, const char *str5) { init().cpy(str1).cat(str2).cat(str3).cat(str4).cat(str5); } astring(const astring &string) { init().cpy(string); } + astring(const astring &string, int start, int count = -1) { init().cpysubstr(string, start, count); } astring &operator=(const char *string) { return cpy(string); } astring &operator=(const astring &string) { return cpy(string); } diff --git a/src/lib/util/corestr.c b/src/lib/util/corestr.c index 292320a3311..7c244e8a8bd 100644 --- a/src/lib/util/corestr.c +++ b/src/lib/util/corestr.c @@ -141,7 +141,7 @@ char *core_strdup(const char *str) char *cpy = NULL; if (str != NULL) { - cpy = (char *)osd_malloc(strlen(str) + 1); + cpy = (char *)osd_malloc_array(strlen(str) + 1); if (cpy != NULL) strcpy(cpy, str); } diff --git a/src/mame/machine/gaelco3d.c b/src/mame/machine/gaelco3d.c index 09d0e9eb097..d17dc954181 100644 --- a/src/mame/machine/gaelco3d.c +++ b/src/mame/machine/gaelco3d.c @@ -130,7 +130,7 @@ static osd_shared_mem *osd_sharedmem_alloc(const char *path, int create, size_t if (create) { - char *buf = (char *) osd_malloc(size); + char *buf = (char *) osd_malloc_array(size); memset(buf,0, size); fd = open(path, O_RDWR | O_CREAT, S_IRWXU); @@ -147,7 +147,7 @@ static osd_shared_mem *osd_sharedmem_alloc(const char *path, int create, size_t } os_shmem->creator = 0; } - os_shmem->fn = (char *) osd_malloc(strlen(path)+1); + os_shmem->fn = (char *) osd_malloc_array(strlen(path)+1); strcpy(os_shmem->fn, path); assert(fd != -1); @@ -178,7 +178,7 @@ static osd_shared_mem *osd_sharedmem_alloc(const char *path, int create, size_t os_shmem->creator = 0; - os_shmem->ptr = (void *) osd_malloc(size); + os_shmem->ptr = (void *) osd_malloc_array(size); os_shmem->size = size; return os_shmem; } diff --git a/src/mame/machine/md_cart.c b/src/mame/machine/md_cart.c index 072706210ce..81061c2e1c5 100644 --- a/src/mame/machine/md_cart.c +++ b/src/mame/machine/md_cart.c @@ -1589,7 +1589,7 @@ static int megadrive_load_nonlist(device_image_interface &image) else if ((rawROM[0x2080] == 'E') && (rawROM[0x2081] == 'A') && (rawROM[0x2082] == 'M' || rawROM[0x2082] == 'G')) { - tmpROMnew = (unsigned char *)osd_malloc(length); + tmpROMnew = global_alloc_array(unsigned char, length); secondhalf = &tmpROMnew[length >> 1]; if (!tmpROMnew) @@ -1605,7 +1605,7 @@ static int megadrive_load_nonlist(device_image_interface &image) ROM[ptr] = secondhalf[ptr >> 1]; ROM[ptr + 1] = tmpROMnew[ptr >> 1]; } - free(tmpROMnew); + global_free(tmpROMnew); #ifdef LSB_FIRST for (ptr = 0; ptr < length; ptr += 2) diff --git a/src/mame/mame.lst b/src/mame/mame.lst new file mode 100644 index 00000000000..4ddfca24b1e --- /dev/null +++ b/src/mame/mame.lst @@ -0,0 +1,12225 @@ +/****************************************************************************** + + mame.lst + + List of all enabled drivers in the system. This file is parsed by + makelist.exe, sorted, and output as C code describing the drivers. + +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ + +// "Pacman hardware" games +puckman // (c) 1980 Namco +puckmana // (c) 1980 Namco +puckmanf // hack +puckmanh // hack +pacman // (c) 1980 Midway +pacmanf // hack +puckmod // (c) 1981 Namco +pacmod // (c) 1981 Midway +newpuc2 // hack +newpuc2b // hack +newpuckx // hack +pacheart // hack +bucaner // hack +hangly // hack +hangly2 // hack +hangly3 // hack +popeyeman // hack +piranhah // hack +abscam // hack +crush // (c) 1981 Kural Samno Electric Ltd +crushbl // bootleg +crushbl2 // bootleg 2 +crush2 // (c) 1981 Kural Esco Electric Ltd - bootleg? +crush3 // Kural Electric Ltd - bootleg? +crush4 // Kural TWT +maketrax // (c) 1981 Williams, high score table says KRL (fur Kural) +maketrxb // (c) 1981 [Kural] (Williams license) +korosuke // (c) 1981 Kural Electric +mbrush // 1981 bootleg +paintrlr // 1981 bootleg +crushs // 1981 bootleg +pacplus // (c) 1982 Namco (Midway license) +joyman // hack +ctrpllrp // hack +eyes // (c) 1982 Digitrex Techstar + "Rockola presents" +eyes2 // (c) 1982 Techstar + "Rockola presents" +eyeszac // (c) 1982 Zaccaria / bootleg +mrtnt // (c) 1983 Telko +gorkans // (c) 1984 Techstar +eggor // (c) 1983 Telko +jumpshot // (c) 1985 Bally Midway +jumpshotp // (c) 1985 Bally Midway +shootbul // (c) 1985 Bally Midway +piranha // GL +piranhao // GL +nmouse // (c) 1981 Amenip (Palcom Queen River) +nmouseb // (c) 1981 Amenip Nova Games Ltd. +mspacman // (c) 1981 Midway // made by General Computer +mspacmnf // hack +mspacmat // hack +woodpeck // (c) 1981 Amenip (Palcom Queen River) +woodpeca // (c) 1981 Amenip Nova Games Ltd. +mspacmab // bootleg +mspacmbe // bootleg +pacgal // hack +mspacpls // hack +ponpoko // (c) 1982 Sigma Ent. Inc. +ponpokov // (c) 1982 Sigma Ent. Inc. + Venture Line license +lizwiz // (c) 1985 Techstar + "Sunn presents" +alibaba // (c) 1982 Sega +dremshpr // (c) 1982 Sanritsu +vanvan // (c) 1983 Sanritsu +vanvank // (c) 1983 Karateco (bootleg?) +vanvanb // (c) 1983 Karateco (bootleg?) +bwcasino // (c) 1983 Epos Coropration +acitya // (c) 1983 Epos Corporation +theglobp // (c) 1983 Epos Corporation +sprglobp // (c) 1983 Epos Corporation +sprglbpg // German bootleg +beastf // (c) 1984 Epos Corporation +rocktrv2 // (c) 1986 Triumph Software Inc +bigbucks // (c) 1986 Dynasoft Inc. +mschamp // hack by RAYGLO MFG "Zola-Puc" (c) 1992/1993 +mschamps // hack (hack of the Rayglo hack?) +cannonbp // hack + +// S2650 Pacman Kits +drivfrcp // (c) 1984 Shinkai Inc. (Magic Eletronics Inc. license) +8bpm // (c) 1985 Seatongrove Ltd (Magic Eletronics USA license) +porky // (c) 1985 Shinkai Inc. (Magic Eletronics Inc. license) + +pengo // 834-0386 (c) 1982 Sega +pengo2 // 834-0386 (c) 1982 Sega +pengo2u // 834-0386 (c) 1982 Sega +pengo3u // 834-0386 (c) 1982 Sega +pengo4 // 834-0386 (c) 1982 Sega +pengob // bootleg +penta // bootleg +jrpacmbl // bootleg on Pengo HW + +jrpacman // (c) 1983 Midway + +// Epos games +megadon // (c) 1982 +catapult // (c) 1982 +suprglob // (c) 1983 +theglob // (c) 1983 +theglob2 // (c) 1983 +theglob3 // (c) 1983 +igmo // (c) 1984 +dealer // (c) 198? +revenger // (c) 1984 + +// "Galaxian hardware" games +galaxian // (c) Namco +galaxiana // (c) Namco +galaxianm // (c) Midway +galaxianmo // (c) Midway +galaxiant // (c) Taito +superg // hack +galapx // hack +moonaln // [Nichibutsu] (Karateco license) or hack +galap1 // hack +galap4 // hack +galturbo // hack +swarm // hack +zerotime // hack +starfght // hack +galaxbsf // hack +kamakazi3 // Video Games (UK) Ltd., hack or bootleg? +tst_galx // Galaxian Test ROM +gmgalax // bootleg +pisces // Subelectro +piscesb // bootleg +omni // bootleg +uniwars // (c) Irem +gteikoku // (c) Irem +gteikokb // bootleg +gteikob2 // bootleg +spacbatt // bootleg +spacbat2 // bootleg +spacempr // bootleg +skyraidr // bootleg +batman2 // bootleg +warofbug // (c) 1981 Armenia +warofbugg // German Version +redufo // (c) Artic +redufob // bootleg +exodus // Subelectro - bootleg? +streakng // [1980] Shoei +streaknga // [1980] Shoei +pacmanbl // bootleg +pacmanbla // bootleg +phoenxp2 // bootleg +atlantisb // bootleg +tenspot // (c) 1982 Thomas Automatics +devilfsg // (c) 1984 Vision / Artic (bootleg?) +zigzag // (c) 1982 LAX +zigzag2 // (c) 1982 LAX +jumpbug // (c) 1981 Rock-ola +jumpbugb // (c) 1981 Sega +levers // (c) 1983 Rock-ola +azurian // (c) 1982 Rait Electronics Ltd +orbitron // (c) 1982 Signatron USA (Arcade Tv Game List - P.160, Left, 22 from top) +mooncrgx // bootleg +mooncrst // (c) 1980 Nichibutsu +mooncrstu // (c) 1980 Nichibutsu USA +mooncrsto // (c) 1980 Nichibutsu +mooncrstg // (c) 1980 Gremlin +mooncrstuk // (c) 1980 Nichibutsu UK +smooncrs // Gremlin +sstarcrs // Taito (Brazil) +mooncmw // bootleg +mooncrsb // bootleg +mooncrs2 // bootleg +spcdrag // bootleg +stera // bootleg +spcdraga // bootleg +mooncrs3 // bootleg +fantazia // bootleg +moonqsr // (c) 1980 Nichibutsu +mshuttle // (c) 1981 Nichibutsu +mshuttle2 // (c) 1981 Nichibutsu +mshuttlej // (c) 1981 Nichibutsu +mshuttlej2 // (c) 1981 Nichibutsu +moonal2 // [1980] Nichibutsu +moonal2b // [1980] Nichibutsu +supergx // [1980] Nichibutsu +eagle // [1980] Centuri +eagle2 // [1980] Centuri +eagle3 // [1980] Centuri +spctbird // (c) Fortrek +skybase // (c) 1982 Omori Electric Co., Ltd. +checkman // (c) 1982 Zilec-Zenitone +checkmanj // (c) 1982 Jaleco (Zenitone/Zilec in ROM CM4, and the programmer names) +dingo // (c) 1983 Ashby Computers and Graphics LTD. + Jaleco license +dingoe // (c) 1983 Ashby Computers and Graphics LTD. + Jaleco license +blkhole // TDS (Tokyo Denshi Sekkei) +kingball // (c) 1980 Namco +kingballj // (c) 1980 Namco +scorpionmc // bootleg +frogg // bootleg +4in1 // (c) 1981 Armenia / Food and Fun +bagmanmc // bootleg +dkongjrm // bootleg +ozon1 // (c) 1983 Proma +ladybugg // bootleg +vpool // bootleg +drivfrcg // [1984] Shinkai (Magic Electronics USA license) +drivfrcb // bootleg +bongo // (c) 1983 Jetsoft +hunchbkg // (c) 1983 Century +harem // [1983] I.G.R. +tazzmang // bootleg +racknrol // (c) 1986 Status (Shinkia license) (Senko Kit) +hexpool // (c) 1986 Shinkia (Senko Kit) +hexpoola // (c) 1986 Shinkia (Senko Kit) +trvchlng // [1985] Joyland (Senko license) +luctoday // 1980 Sigma +chewing // ?? unknown +catacomb // 1982 MTM Games +ckongg // 1981 bootleg +ckongmc // 1981 bootleg +porter // 1982 bootleg (Arcade TV Game List - P.98, Left, 15 from bottom) +vstars // 19?? Competitive Video? +tdpgal // 1983 Design Labs / Thomas Automatics + +// Has some similarities with Moon Cresta but Board is very different +rockclim // (c)1981 Taito + +// "Scramble hardware" (and variations) games +scramble // GX387 (c) 1981 Konami +scrambles // GX387 (c) 1981 Stern +scramblebf // bootleg +scramblebb // bootleg? +scramblb // bootleg +scramb2 // bootleg +explorer // bootleg +strfbomb // bootleg +atlantis // (c) 1981 Comsoft +atlantis2 // (c) 1981 Comsoft +theend // (c) 1980 Konami +theends // (c) 1980 Stern +omega // bootleg +ckongs // bootleg +froggers // bootleg +frogf // bootleg +amidars // GX337 (c) 1982 Konami +triplep // (c) 1982 KKI / made by Sanritsu? +knockout // (c) 1982 KKK +mariner // (c) 1981 Amenip +800fath // (c) 1981 Amenip + U.S. Billiards license +mars // (c) 1981 Artic +devilfsh // (c) 1982 Artic +newsin7 // (c) 1983 ATW USA, Inc. +mrkougar // (c) 1984 ATW +mrkougar2 // (c) 1984 ATW +mrkougb // bootleg +mrkougb2 // bootleg +hotshock // (c) 1982 E.G. Felaco (Domino license) +hotshockb // bootleg +conquer // (c) 1982 ???? +hunchbks // (c) 1983 Century +hncholms // (c) 1984 Century +cavelon // (c) 1983 Jetsoft +sfx // (c) 1983 Nichibutsu +skelagon // (c) 1983 Nichibutsu USA +monsterz // (c) 1982 Nihon (Arcade TV Game List - P.102, Left, 20 from top) +mimonscr // (c) 1982 Universal Video Games (US Copyright Office info - http://cocatalog.loc.gov) +mimonkey // (c) 1982 bootleg +mimonsco // (c) 1982 bootleg +scobra // GX316 (c) 1981 Konami +scobras // GX316 (c) 1981 Stern +scobrase // GX316 (c) 1981 Stern +scobrab // GX316 (c) 1981 Karateco (bootleg?) +suprheli // bootleg +stratgyx // GX306 (c) 1981 Konami +stratgys // GX306 (c) 1981 Stern +strongx // bootleg +armorcar // (c) 1981 Stern +armorcar2 // (c) 1981 Stern +moonwar // (c) 1981 Stern +moonwara // (c) 1981 Stern +spdcoin // (c) 1984 Stern +darkplnt // (c) 1982 Stern +tazmania // (c) 1982 Stern +tazmani2 // (c) 1982 Stern +calipso // (c) 1982 Tago +anteater // (c) 1982 Tago +anteaterg // (c) 1983 TV-Tuning (F.E.G. license) +anteateruk // (c) 1983 Free Enterprise Games +rescue // (c) 1982 Stern +aponow // bootleg +minefld // (c) 1983 Stern +losttomb // (c) 1982 Stern +losttombh // (c) 1982 Stern +superbon // bootleg +hustler // GX343 (c) 1981 Konami +hustlerd // GX343 (c) 1981 Konami + Dynamo Games license +billiard // bootleg +hustlerb // bootleg +hustlerb2 // bootleg +frogger // GX392 (c) 1981 Konami +froggers1 // (c) 1981 Sega +froggers2 // 834-0068 (c) 1981 Sega +froggermc // 800-3110 (c) 1981 Sega +amidar // GX337 (c) 1981 Konami +amidaru // GX337 (c) 1982 Konami + Stern license +amidaro // GX337 (c) 1982 Konami + Olympia license +amidarb // bootleg +amigo // bootleg +turtles // (c) 1981 Stern +turpin // (c) 1981 Sega +600 // GX353 (c) 1981 Konami +flyboy // (c) 1982 Kaneko +flyboyb // bootleg +fastfred // 136009 (c) 1982 Atari +jumpcoas // (c) 1983 Kaneko +jumpcoast // (c) 1983 Taito +boggy84 // (c) 1984 Kaneko +boggy84b // bootleg +redrobin // (c) 1986 Elettronolo +imago // (c) 1984 Acom +imagoa // (c) 1983 Acom +scorpion // (c) 1982 Zaccaria +scorpiona // (c) 1982 Zaccaria +scorpionb // (c) 1982 Zaccaria +aracnis // bootleg +ad2083 // (c) 1983 Midcoin +turpins // (c) 1981 bootleg + +// "Crazy Climber hardware" games +cclimber // (c) 1980 Nichibutsu +cclimberj // (c) 1980 Nichibutsu +ccboot // bootleg +ccboot2 // bootleg + +ckong // (c) 1981 (Falcon?) +ckongo // bootleg (Orca) +ckongalc // bootleg (Alca) +bigkong // bootleg +monkeyd // bootleg + +ckongpt2 // (c) 1981 Falcon +ckongpt2a // (c) 1981 Falcon +ckongpt2j // (c) 1981 Falcon +ckongpt2jeu // bootleg (Jeutel) +ckongpt2b // bootleg + +rpatrol // Orca, from a suspicious set +rpatrolb // bootleg +silvland // Falcon +yamato // (c) 1983 Sega +yamato2 // (c) 1983 Sega +toprollr // (c) 1983 Jaleco +swimmer // (c) 1982 Tehkan +swimmera // (c) 1982 Tehkan +swimmerb // (c) 1982 Tehkan +guzzler // (c) 1983 Tehkan +cannonb // (c) 1985 Soft +cannonb2 // (c) 1985 TV Game Gruenberg +cannonb3 // (c) 1985 Soft +bagmanf // bootleg on Falcon FCK-00 (Falcon Crazy Kong) PCB + +// Nichibutsu games +gomoku // (c) 1981 +wiping // (c) 1982 +rugrats // (c) 1983 +dacholer // (c) 1983 +kickboy // (c) 1983 +friskyt // (c) 1981 +friskyta // (c) 1981 +radrad // (c) 1982 Nichibutsu USA +seicross // (c) 1984 + Alice +sectrzon // (c) 1984 + Alice +firebatl // (c) 1984 Taito +clshroad // (c) 1986 Wood Place Inc. +clshroads // (c) 1986 Wood Place Inc. (Status Games license) +clshroadd // (c) 1986 Wood Place Inc. (Data East license) +tubep // (c) 1984 + Fujitek +tubepb // (c) 1984 + bootleg +rjammer // (c) 1984 + Alice +magmax // (c) 1985 +cop01 // (c) 1985 +cop01a // (c) 1985 +mightguy // (c) 1986 +terracre // (c) 1985 +terracreo // (c) 1985 +terracrea // (c) 1985 +terracren // (c) 1985 +amazon // (c) 1986 +amatelas // (c) 1986 +horekid // (c) 1987 +horekidb // bootleg +boobhack // bootleg +galivan // (c) 1985 +galivan2 // (c) 1985 +dangar // (c) 1986 +dangar2 // (c) 1986 +dangarb // bootleg +ninjemak // (c) 1986 (US?) +youma // (c) 1986 (Japan) +youma2 // (c) 1986 (Japan) +youmab // bootleg +youmab2 // bootleg +legion // (c) 1986 +legiono // (c) 1986 +terraf // (c) 1987 +terrafb // (c) 1987 +terrafa // (c) 1987 +terrafu // (c) 1987 Nichibutsu USA +kodure // (c) 1987 (Japan) +armedf // (c) 1988 +armedff // (c) 1988 Fillmore license +cclimbr2 // (c) 1988 (Japan) +cclimbr2a // (c) 1988 (Japan) +skyrobo // (c) 1989 +bigfghtr // (c) 1989 + +// Nichibutsu Mahjong games +hyhoo // (c) 1987 +hyhoo2 // (c) 1987 + +jangou // (c) 1983 +macha // (c) 1983 Logitec +// Jangou Night // (c) 1983 +jngolady // (c) 1984 +cntrygrl // (c) 1984 Royal Denshi +cntrygrla // (c) 1984 +roylcrdn // (c) 1985 +fruitbun // (c) 1984 +luckygrl // (c) 1984 Wing? +nightgal // (c) 1984 +ngtbunny // (c) 1984 +royalngt // (c) 1984 Royal Denshi +royalqn +sexygal // (c) 1985 +sweetgal // (c) 1985 +ngalsumr // (c) 1985 + +pastelg // (c) 1985 +3ds // (c) 1985 +galds // (c) 1985 + +crystalg // (c) 1986 +crystal2 // (c) 1986 +nightlov // (c) 1986 +citylove // (c) 1986 +mcitylov // (c) 1986 +apparel // (c) 1986 Central Denshi +secolove // (c) 1986 +barline // (c) 1986? +housemnq // (c) 1987 +housemn2 // (c) 1987 +livegal // (c) 1987 +seiha // (c) 1987 +seiham // (c) 1987 +mjgaiden // (c) 1987 Central Denshi +bijokkoy // (c) 1987 +iemoto // (c) 1987 +iemotom // (c) 1987 +ryuuha // (c) 1987 +ojousan // (c) 1987 +ojousanm // (c) 1987 +bijokkog // (c) 1988 +orangec // (c) 1988 Daiichi Denshi +orangeci // (c) 1988 Daiichi Denshi +vipclub // (c) 1988 Daiichi Denshi +korinai // (c) 1988 +korinaim // (c) 1988 +kaguya // (c) 1988 MIKI SYOUJI +kaguya2 // (c) 1989 MIKI SYOUJI +kaguya2f // (c) 1989 MIKI SYOUJI +otonano // (c) 1988 Apple +kanatuen // (c) 1988 Panac +kyuhito // (c) 1988 ROLLER TRON +mjsikaku // (c) 1988 +mjsikakb // (c) 1988 +mjsikakc // (c) 1988 +mjsikakd // (c) 1988 +mmsikaku // (c) 1988 +mjcamera // (c) 1988 MIKI SYOUJI +mmcamera // (c) 1988 MIKI SYOUJI + +msjiken // (c) 1988 +hanamomo // (c) 1988 +hanamomb // (c) 1988 +telmahjn // (c) 1988 +taiwanmb // (c) 1988 +gionbana // (c) 1989 +idhimitu // (c) 1989 Digital Soft +mgion // (c) 1989 +mjcamerb // (c) 1989 MIKI SYOUJI +omotesnd // (c) 1989 +abunai // (c) 1989 +mjfocus // (c) 1989 +mjfocusm // (c) 1989 +peepshow // (c) 1989 AC +scandal // (c) 1989 +scandalm // (c) 1989 +mgmen89 // (c) 1989 +mjnanpas // (c) 1989 BROOKS +mjnanpaa // (c) 1989 BROOKS +mjnanpau // (c) 1989 BROOKS +pairsnb // (c) 1989 +pairsten // (c) 1989 System Ten +bananadr // (c) 1989 DIGITAL SOFT +mladyhtr // (c) 1990 +chinmoku // (c) 1990 +maiko // (c) 1990 +mmaiko // (c) 1990 +hnageman // (c) 1990 Nichibutsu/AV Japan +hnxmasev // (c) 1990 Nichibutsu/AV Japan +club90s // (c) 1990 +club90sa // (c) 1990 +lovehous // (c) 1990 +hanaoji // (c) 1991 + +pstadium // (c) 1990 +triplew1 // (c) 1989 +triplew2 // (c) 1990 +ntopstar // (c) 1990 +mjlstory // (c) 1991 +vanilla // (c) 1991 +finalbny // (c) 1991 +qmhayaku // (c) 1991 +mjgottub // (c) 1991 +galkoku // (c) 1989 Nichibutsu/T.R.TEC +hyouban // (c) 1989 Nichibutsu/T.R.TEC +galkaika // (c) 1989 Nichibutsu/T.R.TEC +tokyogal // (c) 1989 +tokimbsj // (c) 1989 +mcontest // (c) 1989 +uchuuai // (c) 1989 +av2mj1bb // (c) 1991 MIKI SYOUJI/AV JAPAN +av2mj2rg // (c) 1991 MIKI SYOUJI/AV JAPAN + +ohpaipee // (c) 1990 Nichibutsu +togenkyo // (c) 1990 Nichibutsu + +mjuraden // (c) 1992 Nichibutsu/Yubis +koinomp // (c) 1992 +patimono // (c) 1992 +janbari // (c) 1992 Nichibutsu/Yubis/AV JAPAN +mjanbari // (c) 1992 Nichibutsu/Yubis/AV JAPAN +ultramhm // (c) 1993 Apple +gal10ren // (c) 1993 FUJIC +renaiclb // (c) 1993 FUJIC +mjlaman // (c) 1993 Nichibutsu/AV JAPAN +mkeibaou // (c) 1993 +pachiten // (c) 1993 Nichibutsu/MIKI SYOUJI/AV JAPAN +sailorws // (c) 1993 +sailorwa // (c) 1993 +sailorwr // (c) 1993 +wcatcher // (c) 1993 +jituroku // (c) 1993 Windom +yosimoto // (c) 1994 Nichibutsu/Yoshimoto Kougyou +psailor1 // (c) 1994 SPHINX +psailor2 // (c) 1994 SPHINX +otatidai // (c) 1995 SPHINX +ngpgal // (c) 1991 +mjgottsu // (c) 1991 +bakuhatu // (c) 1991 +cmehyou // (c) 1992 Nichibutsu/Kawakusu +mmehyou // (c) 1992 Nichibutsu/Kawakusu +mjkoiura // (c) 1992 +mkoiuraa // (c) 1992 +imekura // (c) 1994 SPHINX/AV JAPAN +mscoutm // (c) 1994 SPHINX/AV JAPAN +mjegolf // (c) 1994 FUJIC/AV JAPAN + +mhhonban // (c) 199? +4psimasy // (c) 1994 +musobana // (c) 1995 +niyanpai // (c) 1996 + +jyunai // (c) 1998 +csplayh5 // (c) 1998 +bikiniko // (c) 1999 + +// "Phoenix hardware" (and variations) games +safarir // Shin Nihon Kikaku (SNK) +phoenix // (c) 1980 Amstar +phoenixa // (c) 1980 Amstar + Centuri license +phoenixb // (c) 1980 Amstar + Centuri license +phoenixt // (c) 1980 Taito +phoenixj // (c) 1980 Taito +phoenix3 // bootleg +phoenixc // bootleg +condor // bootleg +fenix // bootleg +falcon // bootleg +vautour // bootleg (Jeutel) +falconz // bootleg +vautourz // bootleg +griffon // bootleg (Videotron) +nextfase // bootleg +pleiads // (c) 1981 Tehkan +pleiadbl // bootleg +pleiadce // (c) 1981 Centuri + Tehkan +capitol // bootleg? +survival // (c) 1982 Rock-ola +naughtyb // (c) 1982 Jaleco +naughtyba // bootleg +naughtybc // (c) 1982 Jaleco + Cinematronics +popflame // (c) 1982 Jaleco +popflamea // (c) 1982 Jaleco +popflameb // (c) 1982 Jaleco +popflamen // (c) 1982 Jaleco +trvmstr // (c) 1985 Enerdyne Technologies Inc. +trvmstra // (c) 1985 Enerdyne Technologies Inc. +trvmstrb // (c) 1985 Enerdyne Technologies Inc. +trvmstrc // (c) 1985 Enerdyne Technologies Inc. +trvgns // bootleg + + + +// Namco games (plus some intruders on similar hardware) +geebee // [1978] Namco +geebeeb // [1978] Namco (F.lli Bertolino license) +geebeeg // [1978] Gremlin +bombbee // [1979] Namco +cutieq // (c) 1979 Namco +navarone // (c) 1980 Namco +kaitein // [1980] Namco +kaitei // [1980] K.K. Tokki +sos // [1980] Namco +tankbatt // (c) 1980 Namco +warpwarp // (c) 1981 Namco +warpwarpr // (c) 1981 [Namco] (Rock-ola license) +warpwarpr2 // (c) 1981 [Namco] (Rock-ola license) +rallyx // (c) 1980 Namco +rallyxa // (c) 1980 Namco +rallyxm // (c) 1980 Midway +nrallyx // (c) 1981 Namco +nrallyxb // (c) 1981 Namco +jungler // GX327 (c) 1981 Konami +junglers // GX327 (c) 1981 Stern +tactcian // GX335 (c) 1982 Sega +tactcian2 // GX335 (c) 1981 Sega +locomotn // GX359 (c) 1982 Konami + Centuri license +gutangtn // GX359 (c) 1982 Konami + Sega license +cottong // bootleg +locoboot // bootleg +commsega // (c) 1983 Sega +// the following ones all have a custom I/O chip +bosco // (c) 1981 +boscoo // (c) 1981 +boscoo2 // (c) 1981 +boscomd // (c) 1981 Midway +boscomdo // (c) 1981 Midway +galaga // (c) 1981 +galagao // (c) 1981 +galagamw // (c) 1981 Midway +galagamk // (c) 1981 Midway +galagamf // (c) 1981 Midway / hack +gallag // bootleg +gatsbee // (c) 1984 Uchida / hack +digdug // (c) 1982 +digdug1 // (c) 1982 +digdugat // 136007 (c) 1982 Atari +digdugat1 // 136007 (c) 1982 Atari +dzigzag // bootleg +digsid // bootleg +xevious // (c) 1982 +xeviousa // 136018 (c) 1982 + Atari license +xeviousb // 136018 (c) 1982 + Atari license +xeviousc // 136018 (c) 1982 + Atari license +xevios // bootleg +battles // bootleg +sxevious // (c) 1984 +sxeviousj // (c) 1984 +superpac // (c) 1982 +superpacm // (c) 1982 Midway +pacnpal // (c) 1983 +pacnpal2 // (c) 1983 +pacnchmp // (c) 1983 +phozon // (c) 1983 +mappy // (c) 1983 +mappyj // (c) 1983 +digdug2 // (c) 1985 +digdug2o // (c) 1985 +todruaga // (c) 1984 +todruagao // (c) 1984 +todruagas // (c) 1984 pcb manufactured by Sidam +motos // (c) 1985 +grobda // (c) 1984 +grobda2 // (c) 1984 +grobda3 // (c) 1984 +gaplus // (c) 1984 +gaplusa // (c) 1984 +gapluso // (c) 1984 +galaga3 // (c) 1984 +galaga3m // (c) 1984 +galaga3a // (c) 1984 +// Libble Rabble board (first Japanese game using a 68000) +liblrabl // (c) 1983 +toypop // (c) 1986 +// Z8000 games +polepos // (c) 1982 +poleposa // 136014 (c) 1982 + Atari license +polepos1 // 136014 (c) 1982 Atari +topracer // bootleg +topracera // bootleg +topracern // bootleg +polepos2 // (c) 1983 +polepos2a // 136014 (c) 1983 + Atari license +polepos2b // bootleg +polepos2bi // bootleg +// no custom I/O in the following, HD63701 (or compatible) microcontroller instead +pacland // (c) 1984 +paclandj // (c) 1984 +paclandjo // (c) 1984 +paclandjo2 // (c) 1984 +paclandm // (c) 1984 Midway +drgnbstr // (c) 1984 +skykid // (c) 1985 +skykido // (c) 1985 +skykidd // (c) 1985 +skykids // (c) 1985 +aliensec // (c) 1985 +baraduke // (c) 1985 +metrocrs // (c) 1985 +metrocrsa // (c) 1985 + +// Namco System 86 games +hopmappy // (c) 1986 +skykiddx // (c) 1986 +skykiddxo // (c) 1986 +roishtar // (c) 1986 +genpeitd // (c) 1986 +rthunder // (c) 1986 new version +rthundero // (c) 1986 old version +wndrmomo // (c) 1987 + +// Thunder Ceptor HW +tceptor // (c) 1986 +tceptor2 // (c) 1986 + +kungfur // (c) 1987 + +// Namco System 1 games +shadowld // (c) 1987 +youkaidk // (c) 1987 (Japan new version) +youkaidko // (c) 1987 (Japan old version) +dspirit // (c) 1987 (Japan new version) +dspirito // (c) 1987 (Japan old version) +dspirita // (c) 1987 (Atari license) +blazer // (c) 1987 (Japan) +quester // (c) 1987 (Japan) +questers // (c) 1987 (Japan) +pacmania // (c) 1987 +pacmaniaj // (c) 1987 (Japan) +galaga88 // (c) 1987 +galaga88j // (c) 1987 (Japan) +ws // (c) 1988 (Japan) +berabohm // (c) 1988 (Japan) +berabohmo // (c) 1988 (Japan) + // 1988 Alice in Wonderland (English version of Marchen maze) +mmaze // (c) 1988 (Japan) +bakutotu // (c) 1988 (Japan) +wldcourt // (c) 1988 (Japan) +splatter // (c) 1988 (World) +splattero // (c) 1988 (World) +splatterj // (c) 1988 (Japan) +faceoff // (c) 1988 (Japan) +rompers // (c) 1989 (Japan) +romperso // (c) 1989 (Japan) +blastoff // (c) 1989 (Japan) +ws89 // (c) 1989 (Japan) +dangseed // (c) 1989 (Japan) +ws90 // (c) 1990 (Japan) +pistoldm // (c) 1990 (Japan) +boxyboy // (c) 1990 (US) +soukobdx // (c) 1990 (Japan) +puzlclub // (c) 1990 (Japan) +tankfrce // (c) 1991 (US, 2 Player) +tankfrce4 // (c) 1991 (US, 4 Player) +tankfrcej // (c) 1991 (Japan) + +// Namco System 2 games +finallap // 87.12 Final Lap +finallapd // 87.12 Final Lap +finallapc // 87.12 Final Lap +finallapjc // 87.12 Final Lap +finallapjb // 87.12 Final Lap +assault // (c) 1988 +assaultj // (c) 1988 (Japan) +assaultp // (c) 1988 (Japan) +metlhawk // (c) 1988 +metlhawkj // (c) 1988 +ordyne // (c) 1988 +ordynej // (c) 1988 +mirninja // (c) 1988 (Japan) +phelios // (c) 1988 (Japan) +dirtfoxj // (c) 1989 (Japan) +fourtrax // 89.11 +valkyrie // (c) 1989 (Japan) +finehour // (c) 1989 (Japan) +burnforc // (c) 1989 (Japan) +burnforco // (c) 1989 (Japan) +marvland // (c) 1989 (US) +marvlandj // (c) 1989 (Japan) +kyukaidk // (c) 1990 (Japan) +kyukaidko // (c) 1990 (Japan) +dsaber // (c) 1990 +dsaberj // (c) 1990 (Japan) +finalap2 // 90.8 Final Lap 2 +finalap2j // 90.8 Final Lap 2 (Japan) +gollygho // 91.7 Golly Ghost +rthun2 // (c) 1990 +rthun2j // (c) 1990 (Japan) +sgunner // (c) 1990 +sgunnerj // (c) 1990 +sgunner2 // (c) 1991 (US) +sgunner2j // (c) 1991 (Japan) +cosmogng // (c) 1991 (US) +cosmogngj // (c) 1991 (Japan) +bubbletr // (c) 1992 +finalap3 // 92.9 Final Lap 3 +finalap3a // 92.9 Final Lap 3 +finalap3j // 92.9 Final Lap 3 +finalap3jc // (c) 1992 +luckywld // (c) 1992 +luckywldj // (c) 1992 +suzuka8h // (c) 1992 (World) +suzuka8hj // (c) 1992 (Japan) +sws // (c) 1992 (Japan) +sws92 // (c) 1992 (Japan) +sws92g // (c) 1992 (Japan) +suzuk8h2 // (c) 1993 (World) +sws93 // (c) 1993 (Japan) + +// Namco FL games +speedrcr // (c) 1995 +finalapr // (c) 1995 +finalaprj // (c) 1995 +finalapro // (c) 1995 + +// Namco NA-1 / NA-2 System games +bkrtmaq // (c) 1992 (Japan) +cgangpzl // (c) 1992 (US) +cgangpzlj // (c) 1992 (Japan) +exvania // (c) 1992 (Japan) +fghtatck // (c) 1992 (US) +fa // (c) 1992 (Japan) +knckhead // (c) 1992 (World) +knckheadj // (c) 1992 (Japan) +swcourt // (c) 1992 (Japan) +swcourtj // (c) 1992 (Japan) +emeralda // (c) 1993 (Japan) +emeraldaj // (c) 1993 (Japan) +emeraldaja // (c) 1993 (Japan) +numanath // (c) 1993 (World) +numanathj // (c) 1993 (Japan) +quiztou // (c) 1993 (Japan) +tinklpit // (c) 1993 (Japan) +xday2 // (c) 1995 (Japan) + +// Namco NB-1 / NB-2 System games +nebulray // (c) 1994 (World) +nebulrayj // (c) 1994 (Japan) +ptblank // (c) 1994 (GN2 World) +gunbuletj // (c) 1994 (GN1 Japan) +gunbuletw // (c) 1994 (GN3 World) +gslugrsj // (c) 1993 (Japan) +gslgr94u // (c) 1994 +gslgr94j // (c) 1994 (Japan) +sws95 // (c) 1995 (Japan) +sws96 // (c) 1996 (Japan) +sws97 // (c) 1997 (Japan) +vshoot // (c) 1994 +outfxies // (c) 1994 (World) +outfxiesj // (c) 1994 (Japan) +machbrkr // (c) 1995 (Japan) + +// Namco ND-1 games +ncv1 // (c) 1995 +ncv1j // (c) 1995 (Japan) +ncv1j2 // (c) 1995 (Japan) +ncv2 // (c) 1996 +ncv2j // (c) 1996 (Japan) + +// Namco System 21 games +winrun // (c) 1988 + // 1989, Winning Run Suzuka Grand Prix +winrun91 // (c) 1991 +solvalou // (c) 1991 (Japan) +starblad // (c) 1991 +driveyes // (c) 1992? + // 1992, ShimDrive +aircomb // (c) 1992 (US) +aircombj // (c) 1992 (Japan) +cybsled // (c) 1993 +cybsledj // (c) 1993 + +// Galaxian 3 HW +gal3 // (c) 1992 (Arcade TV Game List - P.73, Right, 6 from top) + +// Namco System 22 games +ridgerac // (c) 1993 +ridgeracb // (c) 1993 +ridgeracj // (c) 1993 +ridgerac3 // (c) 1993 +rrf // (c) 1993 +acedrvrw // (c) 1994 +alpinerd // (c) 1994 +alpinerc // (c) 1994 +ridgera2 // (c) 1994 +ridgera2j // (c) 1994 +ridgera2ja // (c) 1994 +raveracw // (c) 1995 +raveracj // (c) 1995 +raveracja // (c) 1995 +airco22b // (c) 1995 +alpinr2b // (c) 1995 +alpinr2a // (c) 1995 +cybrcomm // (c) 1995 +cybrcycc // (c) 1995 +timecris // (c) 1995 +timecrisa // (c) 1995 +dirtdash // (c) 1995 +victlapw // (c) 1996 +alpinesa // (c) 1996 +propcycl // (c) 1996 +tokyowar // (c) 1996 +aquajet // (c) 1996 + +// Namco System 23 +finlflng // July 1997 +motoxgo // November 1997 +rapidrvr // December 1997 +rapidrvr2 // December 1997 +downhill // March 1998 +timecrs2 // April 1998 +timecrs2b // April 1998 +timecrs2c // April 1998 +panicprk // May 1998 +raceon // Race On - September 1998 +gunwars // September 1998 + // Angler King - March 1999 +500gp // March 1999 +finfurl2 // March 1999 +finfurl2j // March 1999 + // Guitar Jam - July 1999 +crszone // Crisis Zone - December 1999 +crszonea // Crisis Zone - December 1999 +crszoneb // Crisis Zone - December 1999 + +// Namco System 246 +sys246 +rrvac +dragchrn +netchu02 +scptour +soulclb2 +soulcl2a +soulcl2b +tekken4 +tekken4a +tekken4b +timecrs3 +zgundm +fghtjam +sukuinuf +zgundmdx +gundzaft +soulclb3 + +// Namco System 256 +sys256 +tekken51 +kinniku +taiko9 +taiko10 + +// Misc Namco games +25pacman // (c) 2005 Ver 2.0 - Same hardware as 20pacgal +20pacgal // (c) 2000 Ver 1.08 +20pacgalr4 // (c) 2000 Ver 1.04 +20pacgalr3 // (c) 2000 Ver 1.03 +20pacgalr2 // (c) 2000 Ver 1.02 +20pacgalr1 // (c) 2000 Ver 1.01 +20pacgalr0 // (c) 2000 Ver 1.00 +turrett // (c) 2001 licensed from Dell Electronics + +// Universal games +cosmicg // 7907 (c) 1979 +cosmica // 7910-AII (c) [1979] +cosmica1 // 7910-A (c) [1979] +cosmica2 // 7910 (c) 1979 +nomnlnd // 8003 (c) [1980?] +nomnlndg // 8003 (c) [1980?] + Gottlieb +magspot // ???? (c) [1980] +magspot2 // 8013 (c) [1980] +panic // 8015 (c) 1980 +panic2 // 8015 (c) 1980 +panic3 // 8015 (c) 1980 +panich // 8015 (c) 1980 +panicger // 8015 (c) 1980 +devzone // 8022 (c) [1980] +devzone2 // 8022 (c) [1980] +cheekyms // 8004 (c) [1980?] +zerohour // 8011 (c) Universal +zerohoura // 8011 (c) Universal +redclash // (c) 1981 Tehkan +redclasha // (c) 1981 Tehkan +redclashk // (c) Kaneko (bootleg?) +cavenger // 8106 (c) 1981 +ladybug // 8110 (c) 1981 +ladybugb // bootleg +ladybgb2 // bootleg +snapjack // ???? (c) +sraider // ???? (c) 1982 Universal +dorodon // Falcon +dorodon2 // Falcon +mrdo // 8201 (c) 1982 +mrdoy // 8201 (c) 1982 +mrdot // 8201 (c) 1982 + Taito license +mrdofix // 8201 (c) 1982 + Taito license +mrlo // bootleg +mrdu // bootleg +yankeedo // bootleg +docastle // 8302 (c) 1983 +docastle2 // 8302 (c) 1983 +docastleo // 8302 (c) 1983 +douni // 8302 (c) 1983 +dorunrun // ???? (c) 1984 +dorunrun2 // ???? (c) 1984 +dorunrunc // ???? (c) 1984 +dorunrunca // ???? (c) 1984 +spiero // ???? (c) 1987 +dowild // ???? (c) 1984 +jjack // ???? (c) 1984 +kickridr // ???? (c) 1984 +idsoccer // ???? (c) 1985 +idsoccera // ???? (c) 1985 +asoccer // 8461 (c) 1987 +superdq // ???? (c) 1984 +superdqs // ???? (c) 1984 +superdqa // ???? (c) 1984 + +// Nintendo games +spacefev // (c) 1979 Nintendo +spacefevo // (c) 1979 Nintendo +spacefevo2 // (c) 1979 Nintendo +highsplt // (c) 1979 Nintendo +highsplta // (c) 1979 Nintendo +highspltb // (c) 1979 Nintendo +spacelnc // (c) 1979 Nintendo +sheriff // (c) 1979 Nintendo +bandido // (c) 1980 Exidy +helifire // (c) 1980 Nintendo +helifirea // (c) 1980 Nintendo +radarscp // (c) 1980 Nintendo +radarscp1 // (c) 1980 Nintendo +dkong // (c) 1981 Nintendo of America +dkongo // (c) 1981 Nintendo +dkongj // (c) 1981 Nintendo +dkongjo // (c) 1981 Nintendo +dkongjo1 // (c) 1981 Nintendo +dkongf // hack from Jeff's Romhack +dkongx // hack +dkongx11 // hack +dkongjr // (c) 1982 Nintendo of America +dkongjrj // (c) 1982 Nintendo +dkongjnrj // (c) 1982 Nintendo +dkongjrb // bootleg +jrking // bootleg +dkongjre // (c) 1982 Nintendo of America +dkong3 // (c) 1983 Nintendo of America +dkong3j // (c) 1983 Nintendo +dkong3b // bootleg +mario // (c) 1983 Nintendo of America +marioe // (c) 1983 Nintendo of America +marioo // (c) 1983 Nintendo of America +marioj // (c) 1983 Nintendo +masao // bootleg +pestplce // bootleg on donkey kong hw +spclforc // (c) 1985 Senko Industries (Magic Eletronics Inc. license) +spcfrcii // (c) 1985 Senko Industries (Magic Eletronics Inc. license) +8ballact // (c) 1984 Seatongrove Ltd (Magic Eletronics USA license) +8ballact2 // (c) 1984 Seatongrove Ltd (Magic Eletronics USA license) +shootgal // (c) 1984 Seatongrove Ltd (Zaccaria license) +drakton // (c) 1984 Epos Corporation +drktnjr // (c) 1984 Epos Corporation +strtheat // (c) 1985 Epos Corporation +hunchbkd // (c) 1983 Century +sbdk // (c) 1984 Century +herbiedk // (c) 1984 CVS +herodk // (c) 1984 Seatongrove + Crown license +herodku // (c) 1984 Seatongrove + Crown license +skyskipr // (c) 1981 +popeye // (c) 1982 +popeyeu // (c) 1982 +popeyef // (c) 1982 +popeyebl // bootleg +punchout // (c) 1984 +punchita // bootleg +spnchout // (c) 1984 +spnchoutj // (c) 1984 (Japan) +armwrest // (c) 1985 + +// Nintendo Playchoice 10 games +playch10 +pc_tenis // (c) 1983 Nintendo +pc_mario // (c) 1983 Nintendo +pc_bball // (c) 1984 Nintendo of America +pc_bfght // (c) 1984 Nintendo +pc_ebike // (c) 1984 Nintendo +pc_golf // (c) 1984 Nintendo +pc_kngfu // (c) 1984 Irem (Nintendo license) +pc_1942 // (c) 1985 Capcom +pc_smb // (c) 1985 Nintendo +pc_vball // (c) 1986 Nintendo +pc_duckh // (c) 1984 Nintendo +pc_hgaly // (c) 1984 Nintendo +pc_wgnmn // (c) 1984 Nintendo +pc_grdus // (c) 1986 Konami +pc_grdue // (c) 1986 Konami +pc_tkfld // (c) 1987 Konami (Nintendo of America license) +pc_pwrst // (c) 1986 Nintendo +pc_trjan // (c) 1986 Capcom USA (Nintendo of America license) +pc_cvnia // (c) 1987 Konami (Nintendo of America license) +pc_dbldr // (c) 1987 Konami (Nintendo of America license) +pc_rnatk // (c) 1987 Konami (Nintendo of America license) +pc_rygar // (c) 1987 Tecmo (Nintendo of America license) +pc_cntra // (c) 1988 Konami (Nintendo of America license) +pc_goons // (c) 1986 Konami +pc_mtoid // (c) 1986 Nintendo +pc_radrc // (c) 1987 Square +pc_miket // (c) 1987 Nintendo +pc_rcpam // (c) 1987 Rare +pc_ngaid // (c) 1989 Tecmo (Nintendo of America license) +pc_tmnt // (c) 1989 Konami (Nintendo of America license) +pc_ftqst // (c) 1989 Sunsoft (Nintendo of America license) +pc_bstar // (c) 1989 SNK (Nintendo of America license) +pc_tbowl // (c) 1989 Tecmo (Nintendo of America license) +pc_drmro // (c) 1990 Nintendo +pc_ynoid // (c) 1990 Capcom USA (Nintendo of America license) +pc_rrngr // (c) Capcom USA (Nintendo of America license) +pc_ddrgn // (c) 1988 Technos +pc_gntlt // (c) 1985 Atari/Tengen (Nintendo of America license) +pc_smb2 // (c) 1988 Nintendo +pc_smb3 // (c) 1988 Nintendo +pc_mman3 // (c) 1990 Capcom USA (Nintendo of America license) +pc_radr2 // (c) 1990 Square (Nintendo of America license) +pc_suprc // (c) 1990 Konami (Nintendo of America license) +pc_tmnt2 // (c) 1990 Konami (Nintendo of America license) +pc_wcup // (c) 1990 Technos (Nintendo license) +pc_ngai2 // (c) 1990 Tecmo (Nintendo of America license) +pc_ngai3 // (c) 1991 Tecmo (Nintendo of America license) +pc_pwbld // (c) 1991 Taito (Nintendo of America license) +pc_rkats // (c) 1991 Atlus (Nintendo of America license) +pc_pinbt // (c) 1988 Rare (Nintendo of America license) +pc_cshwk // (c) 1989 Rare (Nintendo of America license) +pc_sjetm // (c) 1990 Rare +pc_moglf // (c) 1991 Nintendo + +// Nintendo VS games +btlecity // (c) 1985 Namco +starlstr // (c) 1985 Namco +cstlevna // (c) 1987 Konami +cluclu // (c) 1984 Nintendo +drmario // (c) 1990 Nintendo +duckhunt // (c) 1985 Nintendo +excitebk // (c) 1984 Nintendo +excitebkj // (c) 1984 Nintendo +goonies // (c) 1986 Konami +hogalley // (c) 1985 Nintendo +iceclimb // (c) 1984 Nintendo +iceclimbj // (c) 1984 Nintendo +ladygolf // (c) 1984 Nintendo +ladygolfe // (c) 1984 Nintendo +machridr // (c) 1985 Nintendo +machridrj // (c) 1985 Nintendo +rbibb // (c) 1987 Namco +rbibba // (c) 1987 Namco +suprmrio // (c) 1986 Nintendo +suprmrioa // (c) 1986 Nintendo +suprmriobl // bootleg +suprmriobl2 // bootleg +skatekds // (c) 1988 (hack) +vsskykid // (c) 1986 Namco +tkoboxng // (c) 1987 Data East +smgolf // (c) 1984 Nintendo +smgolfj // (c) 1984 Nintendo +vspinbal // (c) 1984 Nintendo +vspinbalj // (c) 1984 Nintendo +vsslalom // (c) 1986 Nintendo +vssoccer // (c) 1985 Nintendo +vssoccerj // (c) 1985 Nintendo +vsgradus // (c) 1986 Konami +platoon // (c) 1987 Ocean +vstetris // (c) 1988 Atari +mightybj // (c) 1986 Tecmo +jajamaru // (c) 1985 Jaleco +topgun // (c) 1987 Konami +bnglngby // (c) 1985 Nintendo / Broderbund Software Inc. +vstennis // (c) 1984 Nintendo +vstennisj // (c) 1984 Nintendo +wrecking // (c) 1984 Nintendo +balonfgt // (c) 1984 Nintendo +vsmahjng // (c) 1984 Nintendo +vsbball // (c) 1984 Nintendo +vsbballj // (c) 1984 Nintendo +vsbballja // (c) 1984 Nintendo +vsbballjb // (c) 1984 Nintendo +iceclmrj // (c) 1984 Nintendo +vsgshoe // (c) 1986 Nintendo +supxevs // (c) 1986 Nintendo +vsfdf // (c) 1986 Sunsoft +smgolfb // (c) 1985 Nintendo + +// NES-based hacks +multigam // 1992 +multigmb // 1992 +multigm2 // 1992 +multigm3 // 19?? +multigmt +supergm3 // 1996 +cham24 // 2002 + +// Famicom Box +famibox // 1986 + +// Nintendo Super System Games +nss +nss_ssoc // 1992 Human Inc. +nss_actr // 1992 Enix +nss_con3 // 1992 Konami +nss_adam // 1992 Ocean +nss_aten // 1992 Absolute Entertainment Inc. +nss_rob3 // 1992 Ocean +nss_ncaa // 1992 Sculptured Software Inc. +nss_skin // 1992 Irem +nss_lwep // 1992 Nintendo +nss_smw // 1991 Nintendo +nss_fzer // 1991 Nintendo +nss_sten // 199? Nintendo + +// Super Famicom Box Games +sfcbox +//pss61 - Super Mario Kart / Super Mario Collection / Star Fox +pss62 // 199? T & E Soft / I'Max +//pss63 - Super Donkey Kong / Super Tetris 2 + Bombliss +//pss64 - Super Donkey Kong / Super Bomberman 2 + + + +// SNES-based hacks +kinstb // bootleg +ffight2b // bootleg +sblast2b // bootleg +iron // bootleg +endless // bootleg +denseib // bootleg + + +// Midway 8080 b/w games +seawolf // 596 [1976] +seawolfo // 596 [1976] +gunfight // 597 [1975] +gunfighto // 597 [1975] + // 603 - Top Gun [1976] +tornbase // 605 [1976] +280zzzap // 610 [1976] +maze // 611 [1976] +boothill // 612 [1977] +checkmat // 615 [1977] +desertgu // 618 [1977] +roadrunm // 618 [1977] +dplay // 619 [1977] +lagunar // 622 [1977] +gmissile // 623 [1977] +m4 // 626 [1977] +clowns // 630 [1978] +clowns1 // 630 [1978] +spacwalk // 640 [1978] +einning // 642 [1978] Midway +shuffle // 643 [1978] +dogpatch // 644 [1977] +spcenctr // 645 (c) 1980 Midway +phantom2 // 652 [1979] +bowler // 730 [1978] Midway +invaders // 739 [1979] +blueshrk // 742 [1978] +invad2ct // 851 (c) 1980 Midway +invadpt2 // 852 [1980] Taito +invaddlx // 852 [1980] Midway +vortex // 852 [1980] Zilec Electronics Ltd. +moonbase // Taito +moonbasea // Zeta - Nichibutsu + // 870 - Space Invaders Deluxe cocktail +searthin // bootleg +searthina // bootleg +invadrmr // (c) 1978 Model Racing +modelr // (c) 19?? Model Racing +spaceatt // (c) 1978 Video Games GMBH +spaceat2 // (c) 1980 Zenitone-Microsec Ltd +sinvzen // Zenitone-Microsec Ltd +superinv // bootleg +invasion // Sidam +invasiona // bootleg +invasionb // bootleg +invasionrz // bootleg +invasionrza // bootleg +sstrangr // (c) 1978 Yachiyo Electronics, Ltd. +sstrangr2 // (c) 1979 Yachiyo Electronics, Ltd. +sinvemag // Zenitone-Microsec Ltd. +jspecter // (c) 1979 Jatre +jspecter2 // (c) 1979 Jatre +invrvnge // Zenitone-Microsec Ltd. +invrvngea // Zenitone-Microsec Ltd. (Dutchford license) +galxwars // (c) 1979 Universal +galxwars2 // (c) 1979 Universal +galxwarst // (c) 1979 Taito? +starw // bootleg +lrescue // LR (c) 1979 Taito +mlander // (c) 1980 Leisure Time Electronics +lrescuem // Model Racing bootleg +grescue // bootleg? +desterth // bootleg +cosmicmo // Universal +cosmicm2 // Universal +rollingc // Nichibutsu +ozmawars // Shin Nihon Kikaku (SNK) +ozmawars2 // Shin Nihon Kikaku (SNK) +solfight // bootleg +spaceph // Zilec Games +galactic // (c) 19?? Taito +spacmiss // bootleg? +schaser // RT Taito +schasercv // RT Taito +lupin3 // LP (c) 1980 Taito +lupin3a // LP (c) 1980 Taito +intruder // (c) 1980 GamePlan (Taito) +spclaser // (c) 1980 GamePlan (Taito) +laser // (c) 1980 Leisure Time Electronics Inc. +spcewarl // (c) 1979 Leijac Corporation (Konami) +polaris // PS (c) 1980 Taito +polarisa // PS (c) 1980 Taito +polariso // PS (c) 1980 Taito +ballbomb // TN (c) 1980 Taito +indianbt // (c) 1980 Taito +steelwkr // (c) 1980 Taito +m79amb // (c) 1977 RamTek +alieninv // Margamatics +alieninvp2 // bootleg +tst_invd // Test ROM +sitv // (c) 1979 Taito +sicv // (c) 1979 Taito +sisv // (c) 1978 Taito +sisv2 // (c) 1978 Taito +spacewr3 // bootleg +invaderl // bootleg +invader4 // bootleg +yosakdon // (c) 1979 Yosaku To Donbei +yosakdona // (c) 1979 Yosaku To Donbei +spceking // (c) 1978 Leijac Corporation (Konami) +spcewars // (c) 1978 Sanritsu +astropal // (c) 19?? Sidam +cosmo // TDS+Mints +darthvdr // bootleg + +18w // 653 (c) 1979 Midway +18w2 // 653 (c) 1979 Midway +sspeedr // 1979 Midway + +// Similar but with a M6800 instead of an 8080 +sflush // (c)1979 Taito + +// Meadows S2650 games +lazercmd // [1976?] +bbonk // [1976?] +deadeye // [1978?] +bowl3d // [1978?] +gypsyjug // [1978?] +minferno // [1978?] +medlanes // [1977?] + +// CVS games +cosmos // (c) 1981 Century +darkwar // (c) 1981 Century +spacefrt // (c) 1981 Century +8ball // (c) 1982 Century +8ball1 // (c) 1982 Century +logger // (c) 1982 Century +dazzler // (c) 1982 Century +diggerc // (c) 1982 Century +wallst // (c) 1982 Century +radarzon // (c) 1982 Century +radarzon1 // (c) 1982 Century +radarzont // (c) 1982 Tuni Electro Service +outline // (c) 1982 Century +goldbug // (c) 1982 Century +heartatk // (c) 1983 Century Electronics +hunchbak // (c) 1983 Century +hunchbaka // (c) 1983 Century +superbik // (c) 1983 Century +raiders // (c) 1983 Century Electronics UK +hero // (c) 1983 Seatongrove (c) 1984 CVS +huncholy // (c) 1984 Seatongrove (c) CVS + +// Zaccaria Hardware (similar to CVS) +quasar // (c) 1980 Zelco Games Italy +quasara // (c) 1980 Zelco Games Italy + +// Midway "Astrocade" games +seawolf2 // (c) 1978 +spacezap // (c) 1980 +ebases // (c) 1980 +wow // (c) 1980 +wowg // (c) 1980 +gorf // (c) 1981 +gorfpgm1 // (c) 1981 +gorfpgm1g // (c) 1981 +robby // (c) 1981 Bally Midway +demndrgn // (c) 1982 Bally Midway +profpac // (c) 1983 Bally Midway +tenpindx // (c) 1983 Bally Midway + +// Bally Midway MCR games +// MCR1 +solarfox // (c) 1981 +kick // (c) 1981 +kickman // (c) 1981 +kickc // (c) 1981 +// MCR2 +shollow // (c) 1981 +shollow2 // (c) 1981 +tron // (c) 1982 +tron2 // (c) 1982 +tron3 // (c) 1982 +tron4 // (c) 1982 +kroozr // (c) 1982 +domino // (c) 1982 +wacko // (c) 1982 +twotiger // (c) 1984 +twotigerc // (c) 1984 +// MCR2 + MCR3 sprites +journey // (c) 1983 +// MCR3 +tapper // (c) 1983 +tappera // (c) 1983 +sutapper // (c) 1983 +rbtapper // (c) 1984 +timber // (c) 1984 +dotron // (c) 1983 +dotrona // (c) 1983 +dotrone // (c) 1983 +nflfoot // (c) 1983 + laserdisk +demoderb // (c) 1984 +demoderm // (c) 1984 +sarge // (c) 1985 +rampage // (c) 1986 +rampage2 // (c) 1986 +powerdrv // (c) 1986 +stargrds // (c) 1987 +maxrpm // (c) 1986 +spyhunt // (c) 1983 +spyhuntp // (c) 1983 +turbotag // (c) 1985 +crater // (c) 1984 +// MCR 68000 +zwackery // (c) 1984 +xenophob // (c) 1987 +spyhunt2 // (c) 1987 +spyhunt2a // (c) 1987 +intlaser // (c) 1987 +blasted // (c) 1988 +archrivl // (c) 1989 +archrivl2 // (c) 1989 +trisport // (c) 1989 +pigskin // (c) 1990 +pigskina // (c) 1990 + +// Bally / Sente games +sentetst +cshift // (c) 1984 +gghost // (c) 1984 +hattrick // (c) 1984 +otwalls // (c) 1984 +snakepit // (c) 1984 +snakjack // (c) 1984 +stocker // (c) 1984 +triviag1 // (c) 1984 +trivia12 // (c) 1984 +triviag2 // (c) 1984 +triviasp // (c) 1984 +triviayp // (c) 1984 +triviabb // (c) 1984 +triviaes // (c) 1984 +gimeabrk // (c) 1985 +minigolf // (c) 1985 +minigolf2 // (c) 1985 +toggle // (c) 1985 +nametune // (c) 1986 +nametune2 // (c) 1986 +nstocker // (c) 1986 +nstocker2 // (c) 1986 +sfootbal // (c) 1986 +spiker // (c) 1986 +stompin // (c) 1986 +rescraid // (c) 1987 +rescraida // (c) 1987 +grudge // prototype - Bally/Midway +shrike // (c) 1987 +gridlee // [1983 Videa] prototype - no copyright notice + +// Irem games +// trivia: IREM means "International Rental Electronics Machines" +andromed // (c) 1979 +ipminvad // M10 no copyright notice (Arcade TV Game List - P.67, Left, 26 from top) +ipminvad1 // M10 incomplete dump +ptrmj // M14 (c) 1979 +skychut // Irem [1980] +spacbeam // M15 no copyright notice +greenber // Irem +headoni // Irem no copyright notice (1979 - Arcade TV Game List - P.98, Left, 7 from top + +panther // M27 no copyright notice +redalert // M27 (c) 1981 + "GDI presents" +demoneye // M27 (c) 1981 +ww3 // M27 (c) 1981 + +olibochu // M47 (c) 1981 + "GDI presents" +mpatrol // M52 (c) 1982 +mpatrolw // M52 (c) 1982 + Williams license +alpha1v // Vision Electronics +troangel // (c) 1983 +newtangl // (c) 1983 +10yard // (c) 1983 +10yardj // (c) 1983 +vs10yard // (c) 1983/1984 +vs10yardj // (c) 1983/1984 +vs10yardu // (c) 1983/1984 +10yard85 // (c) 1985 +travrusa // (c) 1983 +motorace // (c) 1983 Williams license +shtrider // (c) 1984 Seibu Kaihatsu +shtridera // (c) 1984 Seibu Kaihatsu +wilytowr // M63 (c) 1984 +atomboy // M63 (c) 1985 Irem + Memetron license +atomboya // M63 (c) 1985 Irem + Memetron license +fghtbskt // (c) 1984 Paradise Co. Ltd. +// M62 +kungfum // (c) 1984 +kungfumd // (c) 1984 + Data East license +spartanx // (c) 1984 (Japan) +kungfub // bootleg +kungfub2 // bootleg +battroad // (c) 1984 +ldrun // (c) 1984 licensed from Broderbund +ldruna // (c) 1984 licensed from Broderbund +ldrun2 // (c) 1984 licensed from Broderbund +ldrun3 // (c) 1985 licensed from Broderbund +ldrun3j // (c) 1985 licensed from Broderbund +ldrun4 // (c) 1986 licensed from Broderbund +lotlot // (c) 1985 licensed from Tokuma Shoten +kidniki // (c) 1986 + Data East USA license +kidnikiu // (c) 1986 + Data East USA license +yanchamr // (c) 1986 (Japan) +lithero // bootleg +spelunkr // (c) 1985 licensed from Broderbund +spelunkrj // (c) 1985 licensed from Broderbund +spelunk2 // (c) 1986 licensed from Broderbund +horizon // (c) 1985 +youjyudn // (c) 1986 (Japan) + +vigilant // (c) 1988 (World) +vigilant1 // (c) 1988 (World) +vigilantu // (c) 1988 (US) +vigilantj // (c) 1988 (Japan) +kikcubic // (c) 1988 (Japan) +kikcubicb // bootleg +buccanrs // (c) 1989 Duintronic +buccanrsa // (c) 1989 Duintronic +// M72 (and derivatives) +rtype // (c) 1987 (Japan) +rtypej // (c) 1987 (Japan) +rtypejp // (c) 1987 (Japan) +rtypeu // (c) 1987 + Nintendo USA license (US) +rtypeb // bootleg +bchopper // (c) 1987 +mrheli // (c) 1987 (Japan) +nspirit // (c) 1988 +nspiritj // (c) 1988 (Japan) +imgfight // (c) 1988 (Japan) +imgfighto // (c) 1988 (Japan) +loht // (c) 1989 +lohtj // (c) 1989 (Japan) +lohtb // (c) 1989 (bootleg) +lohtb2 // (c) 1989 (bootleg) +xmultipl // (c) 1989 (Japan) +xmultiplm72 // (c) 1989 (Japan) +dbreed // (c) 1989 +dbreedm72 // (c) 1989 +rtype2 // (c) 1989 +rtype2j // (c) 1989 (Japan) +rtype2jc // (c) 1989 (Japan) +majtitle // (c) 1990 (World) +majtitlej // (c) 1990 (Japan) +hharry // (c) 1990 (World) +hharryu // (c) 1990 Irem America (US) +dkgensan // (c) 1990 (Japan) +dkgensanm72 // (c) 1990 (Japan) +poundfor // (c) 1990 (World) +poundforj // (c) 1990 (Japan) +poundforu // (c) 1990 Irem America (US) +airduel // (c) 1990 (Japan) +cosmccop // (c) 1991 (World) +gallop // (c) 1991 (Japan) +kengo // (c) 1991 +// not M72, but same sound hardware +sichuan2 // (c) 1989 Tamtex +sichuan2a // (c) 1989 Tamtex +shisen // (c) 1989 Tamtex +matchit // (c) 1989 Tamtex +// M90 +hasamu // (c) 1991 Irem (Japan) +dynablst // (c) 1991 Irem (World) +dynablstb // bootleg +bombrman // (c) 1991 Irem (Japan) +atompunk // (c) 1991 Irem America (licensed from Hudson Soft) +// M97 +bbmanw // (c) 1992 Irem (World) +bbmanwj // (c) 1992 Irem (Japan) +bomblord // bootleg +newapunk // (c) 1992 Irem America (US) +quizf1 // (c) 1992 Irem (Japan) +riskchal // (c) 1993 Irem +gussun // (c) 1993 Irem (Japan) +matchit2 // (c) 1993 Tamtex +shisen2 // (c) 1993 Tamtex +// M92 +gunforce // (c) 1991 Irem (World) +gunforceu // (c) 1991 Irem America (US) +gunforcej // (c) 1991 Irem (Japan) +bmaster // (c) 1991 Irem +crossbld // (c) 1991 Irem (Japan) +lethalth // (c) 1991 Irem (World) +thndblst // (c) 1991 Irem (Japan) +uccops // (c) 1992 Irem (World) +uccopsu // (c) 1992 Irem (US) +uccopsar // (c) 1992 Irem (World) +uccopsj // (c) 1992 Irem (Japan) +mysticri // (c) 1992 Irem (World) +mysticrib // bootleg? +gunhohki // (c) 1992 Irem (Japan) +majtitl2 // (c) 1992 Irem (World) +majtitl2j // (c) 1992 Irem (Japan) +skingame // (c) 1992 Irem America (US) +skingame2 // (c) 1992 Irem America (US) +hook // (c) 1992 Irem (World) +hooku // (c) 1992 Irem America (US) +hookj // (c) 1992 Irem (Japan) +ppan // bootleg +rtypeleo // (c) 1992 Irem (World) +rtypeleoj // (c) 1992 Irem (Japan) +inthunt // (c) 1993 Irem (World) +inthuntu // (c) 1993 Irem (US) +kaiteids // (c) 1993 Irem (Japan) +nbbatman // (c) 1993 Irem America (US) +leaguemn // (c) 1993 Irem (Japan) +ssoldier // (c) 1993 Irem America (US) +psoldier // (c) 1993 Irem (Japan) +dsoccr94j // (c) 1994 Irem (Japan) +gunforc2 // (c) 1994 Irem +geostorm // (c) 1994 Irem (Japan) +// M107 +firebarr // (c) 1993 Irem (Japan) +dsoccr94 // (c) 1994 Irem (Data East Corporation license) +kftgoal // (c) 1994 Jaleco +wpksoc // (c) 1995 Jaleco + +// Gottlieb/Mylstar games (Gottlieb became Mylstar in 1983) +reactor // GV-100 (c) 1982 Gottlieb +mplanets // GV-102 (c) 1983 Gottlieb +mplanetsuk // GV-102 (c) 1983 Gottlieb +qbert // GV-103 (c) 1982 Gottlieb +qberta // GV-103 (c) 1982 Gottlieb +qbertj // GV-103 (c) 1982 Gottlieb + Konami license +myqbert // GV-103?(c) 1982 Gottlieb +qberttst // GV-103 (c) 1982 Gottlieb +qbtrktst // GV-103 (c) 1982 Gottlieb +insector // GV-??? (c) 1982 Gottlieb - never released +tylz // GV-??? (c) 1982 Gottlieb - never released +argusg // GV-??? (c) 1982 Gottlieb - never released +krull // GV-105 (c) 1983 Gottlieb +kngtmare // GV-??? (c) 1983 Gottlieb - never released +sqbert // GV-??? (c) 1983 Mylstar - never released +mach3 // GV-109 (c) 1983 Mylstar +cobram3 // ...... (c) 1984 Data East +usvsthem // GV-??? (c) 198? Mylstar +3stooges // GV-113 (c) 1984 Mylstar +qbertqub // GV-119 (c) 1983 Mylstar +screwloo // GV-123 (c) 1983 Mylstar - never released +curvebal // GV-134 (c) 1984 Mylstar +vidvince // GV-??? (c) 1984 Mylstar - never released +wizwarz // GV-??? (c) 1984 Mylstar - never released + +// Taito "Qix hardware" games +qix // LK (c) 1981 Taito America Corporation +qixa // LK (c) 1981 Taito America Corporation +qixb // LK (c) 1981 Taito America Corporation +qixo // LK (c) 1981 Taito America Corporation +qix2 // ?? (c) 1981 Taito America Corporation +sdungeon // SD (c) 1981 Taito America Corporation +elecyoyo // YY (c) 1982 Taito America Corporation +elecyoyo2 // YY (c) 1982 Taito America Corporation +kram // KS (c) 1982 Taito America Corporation +kram2 // KS (c) 1982 Taito America Corporation +kram3 // KS (c) 1982 Taito America Corporation +zookeep // ZA (c) 1982 Taito America Corporation +zookeep2 // ZA (c) 1982 Taito America Corporation +zookeep3 // ZA (c) 1982 Taito America Corporation +slither // (c) 1982 Century II +slithera // (c) 1982 Century II +complexx // CX (c) 1984 Taito America Corporation + +// Taito SJ System games +spaceskr // EB (c) 1981 Taito Corporation +spacecr // CG (c) 1981 Taito Corporation +junglek // KN (c) 1982 Taito Corporation +junglekj2 // KN (c) 1982 Taito Corporation +jungleh // KN (c) 1982 Taito America Corporation +junglehbr // KN (c) 1982 Taito do Brasil +piratpet // KN (c) 1982 Taito America Corporation +jungleby // bootleg +alpine // RH (c) 1982 Taito Corporation +alpinea // RH (c) 1982 Taito Corporation +timetunl // UN (c) 1982 Taito Corporation +wwestern // WW (c) 1982 Taito Corporation +wwestern1 // WW (c) 1982 Taito Corporation +frontlin // FL (c) 1982 Taito Corporation +elevator // EA (c) 1983 Taito Corporation +elevatorb // bootleg +tinstar // A10 (c) 1983 Taito Corporation +tinstar2 // A10 (c) 1983 Taito Corporation +waterski // A03 (c) 1983 Taito Corporation +bioatack // AA8 (c) 1983 Taito Corporation + Fox Video Games license +hwrace // AC4 (c) 1983 Taito Corporation +sfposeid // A14 (c) 1984 Taito Corporation +kikstart // A20 (c) 1984 Taito Corporation + +// other Taito games +fgoal // TF (c) 1979 Taito Corporation +fgoala // MF (c) 1979 Taito Corporation +crbaloon // CL (c) 1980 Taito Corporation +crbaloon2 // CL (c) 1980 Taito Corporation +sbowling // KB (c) 1982 Taito Corporation +grchamp // GM (c) 1981 Taito Corporation +marinedt // MG (c) 1981 Taito Corporation +changela // ??? (c) 1983 Taito Corporation +fspiderb // bootleg +jollyjgr // KD (c) 1982 Taito Corporation +bking // DM (c) 1982 Taito Corporation +bking2 // AD6 (c) 1983 Taito Corporation +bking3 // A24 (c) 1984 Taito Corporation +chaknpop // A04 (c) 1983 Taito Corporation +josvolly // AA (c) 1983 Taito Corporation +gsword // AC (c) 1984 Taito Corporation +gsword2 // AC (c) 1984 Taito Corporation +cyclemb // P0 (c) 1984 Taito Corporation [+ Seta] +pitnrun // PR (c) 1984 Taito Corporation +pitnruna // PR (c) 1984 Taito Corporation +lkage // A54 (c) 1984 Taito Corporation +lkageo // A54 (c) 1984 Taito Corporation +lkageoo // A54 (c) 1984 Taito Corporation +lkageb // bootleg +lkageb2 // bootleg +lkageb3 // bootleg +bygone // prototype ? A53 (c) 1985 Taito Corporation +msisaac // A34 (c) 1985 Taito Corporation +retofinv // A37 (c) 1985 Taito Corporation +retofinv1 // bootleg +retofinv2 // bootleg +fightrol // (c) 1983 Taito +rollace // (c) 1983 Williams +rollace2 // (c) 1983 Williams +lgp // (c) 1983 Taito +vsgongf // (c) 1984 Kaneko +ringfgt // (c) 1984 Taito +ringfgt2 // (c) 1984 Taito +fieldday // A23 (c) 1984 Taito +undoukai // A17 (c) 1984 Taito +40love // A30 (c) 1984 Taito +tsamurai // A35 (c) 1985 Taito +tsamurai2 // A35 (c) 1985 Taito +tsamuraih // bootleg +ladymstr // A49 (c) 1985 Taito +nunchaku // ??? (c) 1985 Taito +yamagchi // A38 (c) 1985 Taito +m660 // ??? (c) 1986 Taito America Corporation +m660j // ??? (c) 1986 Taito Corporation (Japan) +m660b // bootleg +alphaxz // AZ (c) 1986 Ed/Wood Place +buggychl // A22 (c) 1984 Taito Corporation +buggychlt // A22 (c) 1984 Taito Corporation + Tefri license +ssrj // A40 (c) 1985 Taito Corporation +bigevglf // A67 (c) 1986 Taito America Corporation (US) +bigevglfj // A67 (c) 1986 Taito Corporation (Japan) +flstory // A45 (c) 1985 Taito Corporation +flstoryj // A45 (c) 1985 Taito Corporation (Japan) +onna34ro // A52 (c) 1985 Taito Corporation (Japan) +onna34roa // A52 (c) 1985 Taito Corporation (Japan) +victnine // A16 (c) 1985 Taito Corporation (Japan) +rumba // A23 (c) 1985 Taito Corporation (Japan) +gladiatr // QB (c) 1986 Taito America Corporation (US) +ogonsiro // QB (c) 1986 Taito Corporation (Japan) +greatgur // QB (c) 1986 Taito Corporation (Japan?) +ppking // QO (c) 1985 Taito America Corporation (US) +nycaptor // A50 (c) 1985 Taito Corporation +cyclshtg // A97 (c) 1986 Taito Corporation +bronx // bootleg +colt // bootleg +ksayakyu // ??? (c) 1985 Taito Corporation +benberob // A26 +halleys // A62 (c) 1986 Taito America Corporation + Coin It (US) +halleysc // A62 (c) 1986 Taito Corporation (Japan) +halleycj // A62 (c) 1986 Taito Corporation (Japan) +halley87 // A62 (c) 1986 Taito Corporation (Japan) +lsasquad // A64 (c) 1986 Taito Corporation / Taito America (dip switch) +storming // A64 (c) 1986 Taito Corporation +daikaiju // A74 (c) 1986 Taito +tokio // A71 1986 +tokioo // A71 1986 +tokiou // A71 1986 +tokiob // bootleg +bublbobl // A78 (c) 1986 Taito Corporation +bublbobl1 // A78 (c) 1986 Taito Corporation +bublboblr // A78 (c) 1986 Taito America Corporation + Romstar license +bublboblr1 // A78 (c) 1986 Taito America Corporation + Romstar license +boblbobl // bootleg +sboblboa // bootleg +sboblbob // bootleg +bub68705 // bootleg +dland // bootleg +missb2 // bootleg on enhanced hardware +bublpong // bootleg on enhanced hardware +kikikai // A85 (c) 1986 Taito Corporation +knightb // bootleg +kicknrun // A87 (c) 1986 Taito Corporation +kicknrunu // A87 (c) 1986 Taito Corporation +mexico86 // bootleg (Micro Research) +darius // A96 (c) 1986 Taito Corporation Japan (World) +dariusj // A96 (c) 1986 Taito Corporation (Japan) +dariuso // A96 (c) 1986 Taito Corporation (Japan) +dariuse // A96 (c) 1986 Taito Corporation (Japan) +rastan // B04 (c) 1987 Taito Corporation Japan (World) +rastanu // B04 (c) 1987 Taito America Corporation (US) +rastanu2 // B04 (c) 1987 Taito America Corporation (US) +rastsaga // B04 (c) 1987 Taito Corporation (Japan) +rastsaga1 // B04 (c) 1987 Taito Corporation (Japan) +topspeed // B14 (c) 1987 Taito Corporation Japan (World) +topspeedu // B14 (c) 1987 Taito America Corporation (US) +fullthrl // B14 (c) 1987 Taito Corporation (Japan) +opwolf // B20 (c) 1987 Taito Corporation Japan (World) +opwolfa // B20 (c) 1987 Taito Corporation Japan (World) +opwolfj // B20 (c) 1987 Taito Corporation (Japan) +opwolfu // B20 (c) 1987 Taito America Corporation (US) +opwolfb // bootleg +othunder // B67 (c) 1988 Taito Corporation Japan (World) +othunderu // B67 (c) 1988 Taito America Corporation (US) +othunderuo // B67 (c) 1988 Taito America Corporation (US) +othunderj // B67 (c) 1988 Taito Corporation (Japan) +rainbow // B22 (c) 1987 Taito Corporation +rainbowo // B22 (c) 1987 Taito Corporation +rainbowe // B39 (c) 1988 Taito Corporation +jumping // bootleg +arkanoid // A75 (c) 1986 Taito Corporation Japan (World) +arkanoidu // A75 (c) 1986 Taito America Corporation + Romstar license (US) +arkanoiduo // A75 (c) 1986 Taito America Corporation + Romstar license (US) +arkanoidj // A75 (c) 1986 Taito Corporation (Japan) +arkmcubl // bootleg +ark1ball // bootleg +arkangc // bootleg +arkangc2 // bootleg +arkblock // bootleg +arkbloc2 // bootleg +arkbloc3 // bootleg +arkgcbl // bootleg +arkgcbla // bootleg +paddle2 // bootleg +block2 // bootleg +arkatayt // bootleg +arktayt2 // bootleg +arkatour // ??? (c) 1987 Taito America Corporation + Romstar license (US) +tetrsark // ??? (c) D.R.Korea +hexa // D. R. Korea +sqix // B03 1987 +sqixr1 // B03 1987 +sqixu // B03 1987 +sqixb1 // bootleg? but (c) 1987 +sqixb2 // bootleg? but (c) 1987 +perestro // (c) 1994 Promat +perestrof // (c) 1993 Promat / Fuuki +pbillian // (c) 1986 Taito +hotsmash // B18 (c) 1987 Taito +exzisus // B12 (c) 1987 Taito Corporation (Japan) +exzisusa // B23 (c) 1987 Taito Corporation (Japan) +minivadr // D26 cabinet test board +volfied // C04 (c) 1989 Taito Corporation Japan (World) +volfiedu // C04 (c) 1989 Taito America Corporation (US) +volfiedj // C04 (c) 1989 Taito Corporation (Japan) +volfiedjo // C04 (c) 1989 Taito Corporation (Japan) +bonzeadv // B41 (c) 1988 Taito Corporation Japan (World) +bonzeadvo // B41 (c) 1988 Taito Corporation Japan (World) +bonzeadvu // B41 (c) 1988 Taito America Corporation (US) +jigkmgri // B41 (c) 1988 Taito Corporation (Japan) +asuka // B68 (c) 1988 Taito Corporation (World) +asukaj // B68 (c) 1988 Taito Corporation (Japan) +mofflott // C17 (c) 1989 Taito Corporation (Japan) +cadash // C21 (c) 1989 Taito Corporation Japan +cadashj // C21 (c) 1989 Taito Corporation +cadashu // C21 (c) 1989 Taito America Corporation +cadashi // C21 (c) 1989 Taito Corporation Japan +cadashf // C21 (c) 1989 Taito Corporation Japan +cadashg // C21 (c) 1989 Taito Corporation Japan +parentj // C42 (c) 199? Taito +galmedes // (c) 1992 Visco (Japan) +earthjkr // (c) 1993 Visco (Japan) +eto // (c) 1994 Visco (Japan) +wgp // C32 (c) 1989 Taito America Corporation (US) +wgpj // C32 (c) 1989 Taito Corporation (Japan) +wgpjoy // C32 (c) 1989 Taito Corporation (Japan) +wgpjoya // C32 (c) 1989 Taito Corporation (Japan) +wgp2 // C73 (c) 1990 Taito Corporation (Japan) +galastrm // C99 (c) 1992 Taito Corporation +slapshot // D71 (c) 1994 Taito Corporation (Japan) +opwolf3 // D74 (c) 1994 Taito +opwolf3u // D74 (c) 1994 Taito +scessjoe // ??? (c) 1990 Wave / Taito +ashnojoe // ??? (c) 1990 Wave / Taito + +// Taito multi-screen games +ninjaw // B31 (c) 1987 Taito Corporation Japan (World) +ninjawj // B31 (c) 1987 Taito Corporation (Japan) +darius2 // C07 (c) 1989 Taito Corporation (Japan) +darius2d // C07 (c) 1989 Taito Corporation (Japan) +darius2do // C07 (c) 1989 Taito Corporation (Japan) +warriorb // D24 (c) 1991 Taito Corporation (Japan) + +// Taito "X"-system games +superman // B61 (c) 1988 Taito Corporation +supermanj // B61 (c) 1988 Taito Corporation +twinhawk // B87 (c) 1989 Taito Corporation Japan (World) +twinhawku // B87 (c) 1989 Taito America Corporation (US) +daisenpu // B87 (c) 1989 Taito Corporation (Japan) +gigandes // (c) 1989 East Technology +gigandesj // (c) 1989 East Technology +kyustrkr // (c) 1989 East Technology +ballbros // no copyright notice + +// Taito "tnzs" (Seta) hardware +plumppop // A98 (c) 1987 Taito Corporation (Japan) +jpopnics // (c)1992 NICs, based on Plump Pop code +extrmatn // B06 (c) 1987 Taito Corporation Japan (World) +extrmatnu // B06 (c) 1987 World Games +extrmatnj // B06 (c) 1987 Taito Corporation (Japan) +arknoid2 // B08 (c) 1987 Taito Corporation Japan (World) +arknoid2u // B08 (c) 1987 Taito America Corporation + Romstar license (US) +arknoid2j // B08 (c) 1987 Taito Corporation (Japan) +drtoppel // B19 (c) 1987 Taito Corporation Japan (World) +drtoppelu // B19 (c) 1987 Taito Corporation (US) +drtoppelj // B19 (c) 1987 Taito Corporation (Japan) +kageki // B35 (c) 1988 Taito America Corporation + Romstar license (US) +kagekij // B35 (c) 1988 Taito Corporation (Japan) +kagekih // B35 (c) 1992 (hack) +chukatai // B44 (c) 1988 Taito Corporation Japan (World) +chukataiu // B44 (c) 1988 Taito Corporation (US) +chukataij // B44 (c) 1988 Taito Corporation (Japan) +kabukiz // B50 (c) 1988 Taito Corporation Japan (World) +kabukizj // B50 (c) 1988 Taito Corporation (Japan) +tnzs // B53 (c) 1988 Taito Corporation Japan (World) (new logo) +tnzsj // B53 (c) 1988 Taito Corporation (Japan) (new logo) +tnzsjo // B53 (c) 1988 Taito Corporation (Japan) (new logo) +tnzso // B53 (c) 1988 Taito Corporation Japan (World) (old logo) +tnzsop // B53?(c) 1988 Taito Corporation Japan (World) (old logo) +insectx // B97 (c) 1989 Taito Corporation Japan (World) +insectxj // B97 (c) 1989 Taito Corporation (Japan) +cchance // (c)1987 Taito? +champbwl // (c)1989 Romstar. not Taito, but the same Seta video chips + +// Taito L-System games +raimais // B36 (c) 1988 Taito Corporation (Japan) +raimaisj // B36 (c) 1988 Taito Corporation +raimaisjo // B36 (c) 1988 Taito Corporation +kurikint // B42 (c) 1988 Taito Corporation Japan (World) +kurikintu // B42 (c) 1988 Taito America Corporation (US) +kurikintj // B42 (c) 1988 Taito Corporation (Japan) +kurikinta // B42 (c) 1988 Taito Corporation Japan (World) +evilston // C67 (c) 1990 Spacy Industrial, Ltd +fhawk // B70 (c) 1988 Taito Corporation Japan (World) +fhawkj // B70 (c) 1988 Taito Corporation (Japan) +plotting // B96 (c) 1989 Taito Corporation Japan (World) +plottingu // B96 (c) 1989 Taito Corporation Japan (US) +plottinga // B96 (c) 1989 Taito Corporation Japan (World) +plottingb // B96 (c) 1989 Taito Corporation Japan (World) +flipull // B96 (c) 1989 Taito Corporation Japan (World) +champwr // C01 (c) 1989 Taito Corporation Japan (World) +champwru // C01 (c) 1989 Taito America Corporation (US) +champwrj // C01 (c) 1989 Taito Corporation (Japan) +puzznic // C20 (c) 1989 Taito Corporation (Japan) +puzznicj // C20 (c) 1989 Taito Corporation (Japan) +puzznici // C20 (c) 1989 Taito Corporation (Japan) +horshoes // C47 (c) 1990 Taito America Corporation (US) +palamed // C63 (c) 1990 Taito Corporation (Japan) +cachat // ??? (c) 1993 Taito Corporation (Japan) +tubeit // ??? no copyright message +cubybop // ??? no copyright message +plgirls // (c) 1992 Hot-B. +plgirls2 // (c) 1993 Hot-B. +lagirl // plgirls bootleg? + +// Taito H-System games +syvalion // B51 (c) 1988 Taito Corporation (Japan) +recordbr // B56 (c) 1988 Taito Corporation Japan (World) +gogold // B56 (c) 1988 Taito Corporation (Japan) +dleague // C02 (c) 1990 Taito Corporation (Japan) + +// Taito B-System games +masterw // B72 (c) 1989 Taito Corporation Japan (World) +masterwu // B72 (c) 1989 Taito America Corporation (US) +masterwj // B72 (c) 1989 Taito Corporation (Japan) +nastar // B81 (c) 1988 Taito Corporation Japan (World) +nastarw // B81 (c) 1988 Taito America Corporation (US) +rastsag2 // B81 (c) 1988 Taito Corporation (Japan) +rambo3 // B93 (c) 1989 Taito Europe Corporation (Europe) +rambo3ae // B93 (c) 1989 Taito Europe Corporation (Europe) +rambo3a // B93 (c) 1989 Taito America Corporation (US) +crimec // B99 (c) 1989 Taito Corporation Japan (World) +crimecu // B99 (c) 1989 Taito America Corporation (US) +crimecj // B99 (c) 1989 Taito Corporation (Japan) +tetrist // C12 (c) 1989 Sega Enterprises,Ltd. (Japan) +tetrista // C35 (c) 1989 Sega Enterprises,Ltd. (Japan) +viofight // C16 (c) 1989 Taito Corporation Japan (World) +viofightu // C16 (c) 1989 Taito America Corporation (US) +viofightj // C16 (c) 1989 Taito Corporation (Japan) +ashura // C43 (c) 1990 Taito Corporation Japan (World) +ashuraj // C43 (c) 1990 Taito Corporation (Japan) +ashurau // C43 (c) 1990 Taito America Corporation (US) +hitice // C59 (c) 1990 Williams (US) +hiticej // C59 (c) 1990 Midway/Taito Corporation (Japan) +sbm // C69 (c) 1990 Taito Corporation (Japan) +selfeena // ??? (c) 1991 East Technology +silentd // ??? (c) 1992 Taito Corporation Japan (World) +silentdu // ??? (c) 1992 Taito Corporation Japan (World) +silentdj // ??? (c) 1992 Taito Corporation (Japan) +ryujin // ??? (c) 1993 Taito Corporation (Japan) +qzshowby // D72 (c) 1993 Taito Corporation (Japan) +pbobble // ??? (c) 1994 Taito Corporation (Japan) +spacedx // D89 (c) 1994 Taito Corporation (US) +spacedxj // D89 (c) 1994 Taito Corporation (Japan) +spacedxo // D89 (c) 1994 Taito Corporation (Japan) + +// Taito Z-System games +contcirc // B33 (c) 1987 Taito Corporation Japan (World) +contcircu // B33 (c) 1987 Taito America Corporation (US) +contcircua // B33 (c) 1987 Taito America Corporation (US) +chasehq // B52 (c) 1988 Taito Corporation Japan (World) +chasehqj // B52 (c) 1988 Taito Corporation (Japan) +chasehqu // B52 (c) 1988 Taito America Corporation (US) +enforce // B58 (c) 1988 Taito Corporation (Japan) +nightstr // B91 (c) 1989 Taito Corporation Japan (World) +nightstrj // B91 (c) 1989 Taito Corporation (Japan) +nightstru // B91 (c) 1989 Taito America Corporation (US) +sci // C09 (c) 1989 Taito Corporation Japan (World) +scia // C09 (c) 1989 Taito Corporation Japan (World) +scij // C09 (c) 1989 Taito Corporation Japan (World) +sciu // C09 (c) 1989 Taito America Corporation (US) +scin // C09 (c) 1991 Taito Corporation Japan (Negro Torino hack) +bshark // C34 (c) 1989 Taito America Corporation (US) +bsharkj // C34 (c) 1989 Taito Corporation (Japan) +aquajack // B77 (c) 1990 Taito Corporation Japan (World) +aquajackj // B77 (c) 1990 Taito Corporation (Japan) +spacegun // C57 (c) 1990 Taito Corporation Japan (World) +dblaxle // C78 (c) 1991 Taito America Corporation (US) +pwheelsj // C78 (c) 1991 Taito Corporation (Japan) +racingb // C84 (c) 1991 Taito Coropration .. + +// Taito Air System games +topland // B62 (c) 1988 Taito Coporation Japan (World) +ainferno // C45 (c) 1990 Taito America Corporation (US) + +mlanding // ??? (c) 1990 Taito America Corporation (US) + +// enhanced Z-System hardware games +gunbustr // D27 (c) 1992 Taito Corporation (Japan) +superchs // D46 (c) 1992 Taito America Corporation (US) +groundfx // D51 (c) 1992 Taito Coporation +undrfire // D67 (c) 1993 Taito Coporation Japan (World) +undrfireu // D67 (c) 1993 Taito America Corporation (US) +undrfirej // D67 (c) 1993 Taito Coporation (Japan) +cbombers + +// Taito F2 games +finalb // 1989.?? B82 (c) 1988 Taito Corporation Japan (World) +finalbj // 1989.04 B82 (c) 1988 Taito Corporation (Japan) +finalbu // 1989.06 B82 (c) 1988 Taito America Corporation (US) +dondokod // 1989.?? B95 (c) 1989 Taito Corporation Japan (World) +dondokodu // 1989.?? B95 (c) 1989 Taito America Corporation (US) +dondokodj // 1989.07 B95 (c) 1989 Taito Corporation (Japan) +megablst // 1989.?? C11 (c) 1989 Taito Corporation Japan (World) +megablstu // 1989.?? C11 (c) 1989 Taito America Corporation (US) +megablstj // 1989.11 C11 (c) 1989 Taito Corporation (Japan) +thundfox // 1990.?? C28 (c) 1990 Taito Corporation Japan (World) +thundfoxu // 1990.06 C28 (c) 1990 Taito America Corporation (US) +thundfoxj // 1990.07 C28 (c) 1990 Taito Corporation (Japan) +cameltry // 1990.?? C38 (c) 1989 Taito America Corporation (US) +cameltrya // 1990.?? C38 (c) 1989 Taito America Corporation (US) +cameltryau // 1990.?? C38 (c) 1989 Taito America Corporation (US) +cameltryj // 1990.04 C38 (c) 1989 Taito Corporation (Japan) +qtorimon // 1990.02 C41 (c) 1990 Taito Corporation (Japan) +liquidk // 1990.?? C49 (c) 1990 Taito Corporation Japan (World) +liquidku // 1990.?? C49 (c) 1990 Taito America Corporation (US) +mizubaku // 1990.08 C49 (c) 1990 Taito Corporation (Japan) +quizhq // 1990.07 C53 (c) 1990 Taito Corporation (Japan) +ssi // 1990.?? C64 (c) 1990 Taito Corporation Japan (World) +ssia // 1990.?? C64 (c) 1990 Taito Corporation Japan (World) +majest12 // 1990.11 C64 (c) 1990 Taito Corporation (Japan) + // 1990.12 C64 (US) +gunfront // 1991.?? C71 (c) 1990 Taito Corporation Japan (World) +gunfrontj // 1991.01 C71 (c) 1990 Taito Corporation (Japan) +growl // 1991.?? C74 (c) 1990 Taito Corporation Japan (World) +growlu // 1991.02 C74 (c) 1990 Taito America Corporation (US) +runark // 1991.02 C74 (c) 1990 Taito Corporation (Japan) +mjnquest // 1991.05 C77 (c) 1990 Taito Corporation (Japan) +mjnquestb // 1991.05 C77 (c) 1990 Taito Corporation (Japan) +footchmp // 1991.?? C80 (c) 1990 Taito Corporation Japan (World) +footchmpbl // bootleg +hthero // 1991.03 C80 (c) 1990 Taito Corporation (Japan) +euroch92 // 1991.?? (c) 1992 Taito Corporation Japan (World) +koshien // 1991.04 C81 (c) 1990 Taito Corporation (Japan) +yuyugogo // 1991.03 C83 (c) 1990 Taito Corporation (Japan) +ninjak // 1991.?? C85 (c) 1990 Taito Corporation Japan (World) +ninjakj // 1991.04 C85 (c) 1990 Taito Corporation (Japan) +ninjaku // 1991.03 C85 (c) 1990 Taito Corporation (Japan) +solfigtr // 1991.?? C91 (c) 1991 Taito Corporation Japan (World) +qzquest // 1991.07 C92 (c) 1991 Taito Corporation (Japan) +pulirula // 1991.?? C98 (c) 1991 Taito Corporation Japan (World) +pulirulaj // 1991.11 C98 (c) 1991 Taito Corporation (Japan) +metalb // 1991.?? D16? (c) 1991 Taito Corporation Japan (World) +metalbj // 1991.11 D12 (c) 1991 Taito Corporation (Japan) +qzchikyu // 1992.02 D19 (c) 1991 Taito Corporation (Japan) +yesnoj // 1992.03 D20 (c) 1992 Taito Corporation (Japan) +deadconx // 1992.?? D28 (c) 1992 Taito Corporation Japan (World) +deadconxj // 1992.08 D28 (c) 1992 Taito Corporation (Japan) +dinorex // 1992.?? D39 (c) 1992 Taito Corporation Japan (World) +dinorexj // 1992.11 D39 (c) 1992 Taito Corporation (Japan) +dinorexu // 1992.?? D39 (c) 1992 Taito America Corporation (US) +qjinsei // 1993.03 D48 (c) 1992 Taito Corporation (Japan) +qcrayon // 1993.08 D55 (c) 1993 Taito Corporation (Japan) +qcrayon2 // 1994.01 D63 (c) 1993 Taito Corporation (Japan) +driftout // 1991.10 (c) 1991 Visco +driveout // bootleg + +// Taito F3 games +ringrage // 1992.?? D21 (c) 1992 Taito Corporation Japan (World) +ringragej // 1992.09 D21 (c) 1992 Taito Corporation (Japan) +ringrageu // 1992.02 D21 (c) 1992 Taito America Corporation (US) +arabianm // 1992.?? D29 (c) 1992 Taito Corporation Japan (World) +arabianmj // 1992.09 D29 (c) 1992 Taito Corporation (Japan) +arabianmu // 1992.10 D29 (c) 1992 Taito America Corporation (US) +ridingf // 1992.?? D34 (c) 1992 Taito Corporation Japan (World) +ridingfj // 1992.12 D34 (c) 1992 Taito Corporation (Japan) +ridingfu // 1992.?? D34 (c) 1992 Taito America Corporation (US) +gseeker // 1992.?? D40 (c) 1992 Taito Corporation Japan (World) +gseekerj // 1992.12 D40 (c) 1992 Taito Corporation (Japan) +gseekeru // 1992.?? D40 (c) 1992 Taito America Corporation (US) +hthero93 // 1993.03 D49 (c) 1992 Taito Corporation (Japan) + // 1993.04 D49 (US) +cupfinal // 1993.?? D49 (c) 1993 Taito Corporation Japan (World) +trstar // 1993.?? D53 (c) 1993 Taito Corporation Japan (World) +trstarj // 1993.07 D53 (c) 1993 Taito Corporation (Japan) +prmtmfgt // 1993.08 D53 (c) 1993 Taito Corporation (US) +prmtmfgto // 1993.08 D53 (c) 1993 Taito Corporation (US) +trstaro // 1993.?? D53 (c) 1993 Taito Corporation (World) +trstaroj // 1993.07 D53 (c) 1993 Taito Corporation (Japan) +gunlock // 1994.?? D66 (c) 1993 Taito Corporation Japan (World) +rayforcej // 1994.02 D66 (c) 1993 Taito Corporation (Japan) +rayforce // 1994.?? D66 (c) 1993 Taito America Corporation (US) +scfinals // 1994.?? D68 (c) 1993 Taito Corporation Japan (World) +intcup94 // 1994.?? D78 (c) 1994 Taito (World) +hthero94 // 1994.09 D78 (c) 1994 Taito (US) +lightbr // 1994.03 D69 (c) 1993 Taito Corporation Japan (World) +lightbrj // 1994.03 D69 (c) 1993 Taito Corporation (Japan) +dungeonm // 1994.?? D69 (c) 1993 Taito Corporation Japan (World) +dungeonmu // 1994.?? D69 (c) 1993 Taito America Corporation (US) +kaiserkn // 1994.?? D84 (c) 1994 Taito Corporation Japan (World) +kaiserknj // 1994.08 D84 (c) 1994 Taito Corporation (Japan) +gblchmp // 1994.10 D84 (c) 1994 Taito America Corporation (US) +dankuga // 1994.?? D84? (c) 1994 Taito Corporation (Japan) +dariusg // 1994.?? D87 (c) 1994 Taito Corporation Japan (World) +dariusgj // 1994.09 D87 (c) 1994 Taito Corporation (Japan) +dariusgu // 1994.11 D87 (c) 1994 Taito America Corporation (US) +dariusgx // 1994.?? D87 (c) 1994 Taito Corporation +bublbob2 // 1994.?? D90 (c) 1994 Taito Corporation Japan (World) +bubsymphe // 1994.?? D90 (c) 1994 Taito Corporation Japan (Europe) +bubsymphu // 1994.10 D90 (c) 1994 Taito America Corporation (US) +bubsymphj // 1994.10 D90 (c) 1994 Taito Corporation (Japan) +bubsymphb // bootleg +spcinvdj // 1994.09 D93 (c) 1994 Taito Corporation (Japan) +pwrgoal // 1994.?? D94 (c) 1995 Taito Corporation Japan (World) +hthero95 // 1994.11 D94 (c) 1995 Taito Corporation (Japan) +hthero95u // 1995.05 D94 (c) 1995 Taito America Corporation (US) +qtheater // 1995.01 D95 (c) 1994 Taito Corporation (Japan) +elvactr // 1995.?? E02 (c) 1994 Taito Corporation Japan (World) +elvactrj // 1995.03 E02 (c) 1994 Taito Corporation (Japan) +elvact2u // 1995.05 E02 (c) 1994 Taito America Corporation (US) +spcinv95 // 1995.?? E06 (c) 1995 Taito Corporation Japan (World) +spcinv95u // 1995.05 E06 (c) 1995 Taito America Corporation (US) +akkanvdr // 1995.07 E06 (c) 1995 Taito Corporation (Japan) +twinqix // 1995.03 ??? (c) 1995 Taito America Corporation (US) +quizhuhu // 1995.07 E08 (c) 1995 Taito Corporation (Japan) +pbobble2 // 1995.?? E10 (c) 1995 Taito Corporation Japan (World) +pbobble2o // 1995.?? E10 (c) 1995 Taito Corporation Japan (World) +pbobble2j // 1995.09 E10 (c) 1995 Taito Corporation (Japan) +pbobble2u // 1995.11 E10 (c) 1995 Taito America Corporation (US) +pbobble2x // 1995.12 E10 (c) 1995 Taito Corporation (Japan) +gekiridn // 1995.11 E11 (c) 1995 Taito Corporation Japan (World) +gekiridnj // 1995.11 E11 (c) 1995 Taito Corporation (Japan) +tcobra2 // 1996.?? E15 (c) 1995 Taito Corporation (World) +tcobra2u // 1996.?? E15 (c) 1995 Taito Corporation (US) +ktiger2 // 1996.02 E15 (c) 1995 Taito Corporation (Japan) +bubblem // 1996.?? E21 (c) 1995 Taito Corporation Japan (World) +bubblemj // 1996.04 E21 (c) 1995 Taito Corporation (Japan) +cleopatr // 1996.10 E28 (c) 1996 Taito Corporation (Japan) +pbobble3 // 1996.?? E29 (c) 1996 Taito Corporation (World) +pbobble3u // 1996.11 E29 (c) 1996 Taito Corporation (US) +pbobble3j // 1996.11 E29 (c) 1996 Taito Corporation (Japan) +arkretrn // 1997.03 E36 (c) 1997 Taito Corporation (Japan) +kirameki // 1997.09 E44 (c) 1997 Taito Corporation (Japan) +puchicar // 1997.?? E46 (c) 1997 Taito Corporation (World) +puchicarj // 1997.12 E46 (c) 1997 Taito Corporation (Japan) +pbobble4 // 1998.?? E49 (c) 1997 Taito Corporation (World) +pbobble4j // 1998.02 E49 (c) 1997 Taito Corporation (Japan) +pbobble4u // 1998.?? E49 (c) 1997 Taito Corporation (US) +popnpop // 1998.?? E51 (c) 1997 Taito Corporation (World) +popnpopj // 1998.03 E51 (c) 1997 Taito Corporation (Japan) +popnpopu // 1998.?? E51 (c) 1997 Taito Corporation (US) +landmakr // 1998.08 E61 (c) 1998 Taito Corporation (Japan) +landmakrp // 1998.?? E61 (c) 1998 Taito Corporation (World, prototype) +recalh // prototype +commandw // prototype + +// Taito JC System +dangcurv // 1995.?? E09 (c) 1995 Taito Corporation + // 1995.07 (Japan) + // 1995.10 (US) +landgear // 1996.?? E17 (c) 1995 Taito Corporation Japan (World) + // 1996.03 (Japan) +sidebs // 1996.07 E23 (c) 1996 Taito Corporation (Japan) +dendeg // 1997.03 E35 (c) 1996 Taito Corporation (Japan) +sidebs2j // 1997.07 E38 (c) 1997 Taito Corporation (Japan) +sidebs2 // 1997.?? E38 (c) 1997 Taito Corporation (Japan) +dendegx // 1997.09 E35 (c) 1996 Taito Corporation (Japan) +dendeg2 // 1998.03 E52 (c) 1998 Taito Corporation (Japan) +dendeg2x // 1998.08 E52 (c) 1998 Taito Corporation (Japan) + +// Taito "Wolf" System +pf2012 // E59 (c) 1997 Taito + +// Taito PPC JC System +optiger // 1998.09 E63 (c) 1998 Taito + +// Taito Type-Zero System +taitotz +batlgear // E68 (c) 1999 Taito +landhigh // E82 (c) 1999 Taito +batlgr2 // E87 (c) 2000 Taito + +// Toaplan games +perfrman // (c) 1985 Data East Corporation (Japan) +perfrmanu // (c) 1985 Data East USA (US) +tigerh // A47 (c) 1985 Taito America Corporation GX-551 [not a Konami board!] +tigerhj // A47 (c) 1985 Taito Corporation GX-551 [not a Konami board!] +tigerhb1 // bootleg but (c) 1985 Taito Corporation +tigerhb2 // bootleg but (c) 1985 Taito Corporation +tigerhb3 // bootleg but (c) 1985 Taito Corporation +alcon // A77 / TP-??? +slapfigh // A77 / TP-??? +slapfigha // A76 / TP-??? +slapfighb1 // bootleg but (c) 1986 Taito Corporation +slapfighb2 // bootleg but (c) 1986 Taito Corporation +slapfighb3 // bootleg but (c) 1986 Taito Corporation +getstar // A68 (c) 1986 Taito Corporation +getstarj // A68 (c) 1986 Taito Corporation +gtstarb1 // GX-006 bootleg but (c) 1986 Taito Corporation +gtstarb2 // GX-006 bootleg but (c) 1986 Taito Corporation +mjsister // (c) 1986 Toaplan + +fshark // B02 / TP-007 (c) 1987 Taito Corporation (World) +skyshark // B02 / TP-007 (c) 1987 Taito America Corporation + Romstar license (US) +hishouza // B02 / TP-007 (c) 1987 Taito Corporation (Japan) +fsharkbt // bootleg +wardner // B25 / TP-009 (c) 1987 Taito Corporation Japan (World) +pyros // B25 / TP-009 (c) 1987 Taito America Corporation (US) +wardnerj // B25 / TP-009 (c) 1987 Taito Corporation (Japan) +twincobr // B30 / TP-011 (c) 1987 Taito Corporation (World) +twincobru // B30 / TP-011 (c) 1987 Taito America Corporation + Romstar license (US) +ktiger // B30 / TP-011 (c) 1987 Taito Corporation (Japan) +gulfwar2 // (c) 1991 Comad + +rallybik // B45 / TP-O12 (c) 1988 Taito +truxton // B65 / TP-O13B (c) 1988 Taito +hellfire // B90 / TP-??? (c) 1989 Toaplan + Taito license +hellfire1 // B90 / TP-??? (c) 1989 Toaplan + Taito license +hellfire2 // B90 / TP-??? (c) 1989 Toaplan + Taito license +hellfire3 // B90 / TP-??? (c) 1989 Toaplan + Taito license +zerowing // TP-O15 (c) 1989 Toaplan +zerowing2 // TP-O15 (c) 1989 Toaplan +demonwld // TP-O16 (c) 1990 Toaplan (+ Taito license when set to Japan) +demonwld1 // TP-O16 (c) 1989 Toaplan + Taito license +demonwld2 // TP-O16 (c) 1989 Toaplan +demonwld3 // TP-O16 (c) 1989 Toaplan +demonwld4 // TP-O16 (c) 1989 Toaplan +fireshrk // TP-O17 (c) 1990 Toaplan +fireshrkd // TP-O17 (c) 1990 Toaplan +fireshrkdh // TP-O17 (c) 1990 Toaplan +samesame // TP-O17 (c) 1989 Toaplan +samesame2 // TP-O17 (c) 1989 Toaplan +outzone // TP-O18 (c) 1990 Toaplan +outzonea // TP-O18 (c) 1990 Toaplan +outzoneb // TP-O18 (c) 1990 Toaplan +outzonec // TP-O18 (c) 1990 Toaplan +outzoned // TP-O18 (c) 1990 Toaplan +vimana // TP-O19 (c) 1991 Toaplan (+ Tecmo license when set to Japan) +vimana1 // TP-O19 (c) 1991 Toaplan (+ Tecmo license when set to Japan) +vimanan // TP-O19 (c) 1991 Toaplan (+ Nova Apparate GMBH & Co license) +snowbros // MIN16-02 (c) 1990 Toaplan + Romstar license +snowbrosa // MIN16-02 (c) 1990 Toaplan + Romstar license +snowbrosb // MIN16-02 (c) 1990 Toaplan + Romstar license +snowbrosc // MIN16-02 (c) 1990 Toaplan + Romstar license +snowbrosj // MIN16-02 (c) 1990 Toaplan +snowbrosd // MIN16-02 (c) 1990 Toaplan + Dooyong license +wintbob // bootleg +honeydol // (c) 1995 Barko Corp +twinadv // (c) 1995 Barko Corp +twinadvk // (c) 1995 Barko Corp + // SemiCom games on snowbros like hardware +hyperpac // (c) 1995 SemiCom +hyperpacb // bootleg +toppyrap // (c) 1996 SemiCom +cookbib2 // (c) 1996 SemiCom +cookbib3 // (c) 1997 SemiCom +twinkle // (c) 1997 SemiCom +pzlbreak // (c) 1997 SemiCom +3in1semi // (c) 1998 SemiCom +moremore // (c) 1999 SemiCom + Exit +moremorp // (c) 1999 SemiCom + Exit +4in1boot // (c) 2002 but bootleg of 1999 release? +snowbros3 // (c) 2002 but hack / bootleg of snowbros? +finalttr // (c) 1993 Jeil Computer System + +// More Toaplan Games +tekipaki // TP-020 (c) 1991 Toaplan +ghox // TP-021 (c) 1991 Toaplan +ghoxj // TP-021 (c) 1991 Toaplan +dogyuun // TP-022 (c) 1992 Toaplan +dogyuuna // TP-022 (c) 1992 Toaplan +dogyuunt // TP-022 (c) 1992 Toaplan +kbash // TP-023 (c) 1993 Toaplan +kbash2 // bootleg +truxton2 // TP-024 (c) 1992 Toaplan +pipibibs // TP-025 +pipibibsa // TP-025 +whoopee // TP-025 +pipibibsbl // (c) 1991 Ryouta Kikaku (bootleg) +fixeight // TP-026 (c) 1992 + Taito license +fixeightt +fixeightkt +fixeightk +fixeightht +fixeighth +fixeighttwt +fixeighttw +fixeightat +fixeighta +fixeightu +fixeightut +fixeightj +fixeightjt +fixeightbl // bootleg +grindstm // TP-027 (c) 1993 Toaplan + Unite Trading license (Korea) +grindstma // TP-027 (c) 1993 Toaplan + Unite Trading license (Korea) +vfive // TP-027 (c) 1993 Toaplan (Japan) +batsugun // TP-030 (c) 1993 Toaplan +batsuguna // TP-030 (c) 1993 Toaplan +batsugunsp // TP-??? (c) 1993 Toaplan +snowbro2 // TP-??? (c) 1994 Hanafram +sstriker // (c) 1993 Raizing +sstrikera // (c) 1993 Raizing +mahoudai // (c) 1993 Raizing + Able license +kingdmgp // (c) 1994 Raizing/8ing +shippumd // (c) 1994 Raizing/8ing +bgaregga // (c) 1996 Raizing/8ing +bgareggahk // (c) 1996 Raizing/8ing +bgareggatw // (c) 1996 Raizing/8ing +bgaregganv // (c) 1996 Raizing/8ing +bgareggat2 // (c) 1996 Raizing/8ing +bgareggacn // (c) 1996 Raizing/8ing +batrider // (c) 1998 Raizing/8ing +batrideru // (c) 1998 Raizing/8ing +batriderc // (c) 1998 Raizing/8ing +batriderj // (c) 1998 Raizing/8ing +batriderk // (c) 1998 Raizing/8ing +batriderja // (c) 1998 Raizing/8ing +batridert // (c) 1998 Raizing/8ing +bbakraid // (c) 1999 8ing +bbakraidj // (c) 1999 8ing +bbakraidja // (c) 1999 8ing + +/* +Toa Plan's board list +(translated from http://www.aianet.ne.jp/~eisetu/rom/rom_toha.html) + +Title ROMno. Remark(1) Remark(2) +-------------------------------------------------- +Tiger Heli A47 GX-551 +Hishouzame B02 TP-007 +Kyukyoku Tiger B30 TP-011 +Dash Yarou B45 TP-012 +Tatsujin B65 TP-013B M6100649A +Zero Wing O15 TP-015 +Horror Story O16 TP-016 +Same!Same!Same! O17 TP-017 +Out Zone TP-018 +Vimana TP-019 +Teki Paki O20 TP-020 +Ghox TP-21 TP-021 +Dogyuun TP-022 +Tatsujin Oh TP-024 *1 +Fixeight TP-026 +V-V TP-027 + +*1 There is a doubt this game uses TP-024 board and TP-025 romsets. + +86 Mahjong Sisters Kit 2P 8W+2B HC Mahjong TP- +88 Dash Kit 2P 8W+2B TP- +89 Fire Shark Kit 2P 8W+2B VC Shooter TP-017 +89 Twin Hawk Kit 2P 8W+2B VC Shooter TP- +91 Whoopie Kit 2P 8W+2B HC Action +92 Teki Paki Kit 2P TP-020 +92 Ghox Kit 2P Paddle+1B VC Action TP-021 +10/92 Dogyuun Kit 2P 8W+2B VC Shooter TP-022 +92/93 Knuckle Bash Atari Games Kit 2P 8W+2B HC Action TP-023 +10/92 Tatsujin II/Truxton II Taito Kit 2P 8W+2B VC Shooter TP-024 +10/92 Truxton II/Tatsujin II Taito Kit 2P 8W+2B VC Shooter TP-024 + Pipi & Bipi TP-025 +92 Fix Eight Kit 2P 8W+2B VC Action TP-026 +12/92 V - V (5)/Grind Stormer Kit 2P 8W+2B VC Shooter TP-027 +1/93 Grind Stormer/V - V (Five) Kit 2P 8W+2B VC Shooter TP-027 +2/94 Batsugun Kit 2P 8W+2B VC TP- +4/94 Snow Bros. 2 Kit 2P 8W+2B HC Action TP- +*/ + +// Cave games +// Cave was formed in 1994 from the ruins of Toaplan, like Raizing was. +pwrinst2 // (c) 1994 Atlus +pwrinst2j // (c) 1994 Atlus +plegends // (c) 1994 Atlus +plegendsj // (c) 1994 Atlus +mazinger // (c) 1994 Banpresto (country is in EEPROM) +mazingerj // (c) 1994 Banpresto (country is in EEPROM) +donpachi // (c) 1995 Atlus/Cave +donpachij // (c) 1995 Atlus/Cave +donpachikr // (c) 1995 Atlus/Cave +donpachihk // (c) 1995 Atlus/Cave +metmqstr // (c) 1995 Banpresto / Pandorabox +nmaster // (c) 1995 Banpresto / Pandorabox +sailormn // (c) 1995 Banpresto (country is in EEPROM) +sailormnu // (c) 1995 Banpresto (country is in EEPROM) +sailormnj // (c) 1995 Banpresto (country is in EEPROM) +sailormnk // (c) 1995 Banpresto (country is in EEPROM) +sailormnt // (c) 1995 Banpresto (country is in EEPROM) +sailormnh // (c) 1995 Banpresto (country is in EEPROM) +sailormno // (c) 1995 Banpresto (country is in EEPROM) +sailormnou // (c) 1995 Banpresto (country is in EEPROM) +sailormnoj // (c) 1995 Banpresto (country is in EEPROM) +sailormnok // (c) 1995 Banpresto (country is in EEPROM) +sailormnot // (c) 1995 Banpresto (country is in EEPROM) +sailormnoh // (c) 1995 Banpresto (country is in EEPROM) +agallet // (c) 1996 Banpresto / Gazelle (country is in EEPROM) +agalletu // (c) 1996 Banpresto / Gazelle (country is in EEPROM) +agalletj // (c) 1996 Banpresto / Gazelle (country is in EEPROM) +agalletk // (c) 1996 Banpresto / Gazelle (country is in EEPROM) +agallett // (c) 1996 Banpresto / Gazelle (country is in EEPROM) +agalleth // (c) 1996 Banpresto / Gazelle (country is in EEPROM) +hotdogst // (c) 1996 Marble +pacslot // (c) 1996 Namco +ddonpach // (c) 1997 Atlus/Cave +ddonpachj // (c) 1997 Atlus/Cave +dfeveron // (c) 1998 Cave + Nihon System license +feversos // (c) 1998 Cave + Nihon System license +esprade // (c) 1998 Atlus/Cave +espradej // (c) 1998 Atlus/Cave (Japan) +espradejo // (c) 1998 Atlus/Cave (Japan) +uopoko // (c) 1998 Cave + Jaleco license +uopokoj // (c) 1998 Cave + Jaleco license +guwange // (c) 1999 Atlus/Cave +gaia // (c) 1999 Noise Factory +theroes // (c) 2001 Primetek Investments +korokoro // (c) 1999 Takumi +crusherm // (c) 1999 Takumi +tjumpman // (c) 1999 Namco + +// Kyugo games +// Kyugo only made four games: Repulse, Flash Gal, SRD Mission and Air Wolf. +// Gyrodine was made by Crux. Crux was antecedent of Toa Plan, and spin-off from Orca. +gyrodine // (c) 1984 Crux +gyrodinet // (c) 1984 Crux (Taito Corporation license) +buzzard // (c) 1984 Crux +repulse // (c) 1985 Sega +99lstwar // (c) 1985 Proma +99lstwara // (c) 1985 Proma +99lstwark // (c) 1985 Kyugo +sonofphx // bootleg +flashgal // (c) 1985 Sega +flashgala // (c) 1985 Sega +srdmissn // (c) 1986 Taito Corporation +fx // bootleg +legend // no copyright notice [1986 Sega/Coreland] (Arcade TV Game List - P.104, Left, 14 from top) +legendb // no copyright notice [1986 Sega/Coreland] (Arcade TV Game List - P.104, Left, 14 from top) +airwolf // (c) 1987 Kyugo +airwolfa // (c) 1987 Kyugo +skywolf // bootleg +skywolf2 // bootleg +skywolf3 // bootleg + +// Williams games +defender // (c) 1980 +defenderg // (c) 1980 +defenderb // (c) 1980 +defenderw // (c) 1980 +defndjeu // bootleg +tornado1 // bootleg +tornado2 // bootleg +zero // bootleg +zero2 // bootleg +defcmnd // bootleg +defence // bootleg +startrkd // bootleg +mayday // bootleg +maydaya // bootleg +maydayb // bootleg +colony7 // (c) 1981 Taito +colony7a // (c) 1981 Taito +jin // Falcon bootleg/hack +stargate // (c) 1981 +robotron // (c) 1982 +robotronyo // (c) 1982 +joust // (c) 1982 +joustr // (c) 1982 +joustwr // (c) 1982 +bubbles // (c) 1982 +bubblesr // (c) 1982 +bubblesp // (c) 1982 +splat // (c) 1982 +sinistar // (c) 1982 +sinistar1 // (c) 1982 +sinistar2 // (c) 1982 +playball // (c) 1983 +blaster // (c) 1983 +blaster30 // (c) 1983 +blasterkit // (c) 1983 +spdball // (c) 1985 +alienar // (c) 1985 Duncan Brown +alienaru // (c) 1985 Duncan Brown +mysticm // (c) 1983 +tshoot // (c) 1984 +inferno // (c) 1984 +joust2 // (c) 1986 +lottofun // (c) 1987 H.A.R. Management + +// Capcom games +// The following is a COMPLETE list of the Capcom games up to 1997, as shown on +// their web site. The list is sorted by production date. +// A comprehensive list of Capcom games with board info can be found here: +// http://www.arcadeflyers.com/strider/capcom_list.html +vulgus // 5/1984 (c) 1984 +vulgus2 // 5/1984 (c) 1984 +vulgusj // 5/1984 (c) 1984 +sonson // 7/1984 (c) 1984 +sonsonj // 7/1984 (c) 1984 (Japan) +higemaru // 9/1984 (c) 1984 +1942 // 12/1984 (c) 1984 +1942a // 12/1984 (c) 1984 +1942abl // bootleg +1942b // 12/1984 (c) 1984 +1942w // 12/1984 (c) 1984 + Williams Electronics license (c) 1985 +exedexes // 2/1985 (c) 1985 +savgbees // 2/1985 (c) 1985 + Memetron license +commando // 5/1985 (c) 1985 (World) +commandou // 5/1985 (c) 1985 + Data East license (US) +commandoj // 5/1985 (c) 1985 (Japan) +commandob // bootleg +sinvasn // Europe original? +sinvasnb // bootleg +gng // 9/1985 (c) 1985 +gnga // 9/1985 (c) 1985 +gngbl // bootleg +gngblita // bootleg +gngc // 9/1985 (c) 1985 +gngt // 9/1985 (c) 1985 +makaimur // 9/1985 (c) 1985 +makaimurc // 9/1985 (c) 1985 +makaimurg // 9/1985 (c) 1985 +diamond // (c) 1989 KH Video (NOT A CAPCOM GAME but runs on GnG hardware) +gunsmoke // 11/1985 (c) 1985 (World) +gunsmokeu // 11/1985 (c) 1985 + Romstar (US) +gunsmokeua // 11/1985 (c) 1985 (US) +gunsmokej // 11/1985 (c) 1985 (Japan) +sectionz // 12/1985 (c) 1985 +sectionza // 12/1985 (c) 1985 +trojan // 4/1986 (c) 1986 (US) +trojanr // 4/1986 (c) 1986 + Romstar +trojanj // 4/1986 (c) 1986 (Japan) +srumbler // 9/1986 (c) 1986 +srumbler2 // 9/1986 (c) 1986 +rushcrsh // 9/1986 (c) 1986 +lwings // 11/1986 (c) 1986 +lwings2 // 11/1986 (c) 1986 +lwingsj // 11/1986 (c) 1986 +lwingsb // 11/1986 (c) 1986 (bootleg) +sidearms // 12/1986 (c) 1986 (World) +sidearmsr // 12/1986 (c) 1986 + Romstar license (US) +sidearmsj // 12/1986 (c) 1986 (Japan) +turtship // (c) 1988 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) +turtshipj // (c) 1988 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) +turtshipk // (c) 1988 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) +dyger // (c) 1989 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) +dygera // (c) 1989 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) +twinfalc // (c) 1989 Philko (Poara Enterprises license) (NOT A CAPCOM GAME but runs on modified Sidearms hardware) +whizz // (c) 1989 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) +avengers // 2/1987 (c) 1987 (US) +avengers2 // 2/1987 (c) 1987 (US) +buraiken // 2/1987 (c) 1987 (Japan) +bionicc // 3/1987 (c) 1987 (Euro) +bionicc1 // 3/1987 (c) 1987 (US) +bionicc2 // 3/1987 (c) 1987 (US) +topsecrt // 3/1987 (c) 1987 (Japan) +1943 // 6/1987 (c) 1987 (Euro) +1943u // 6/1987 (c) 1987 (US) +1943j // 6/1987 (c) 1987 (Japan) +1943b // bootleg +blktiger // 8/1987 (c) 1987 (US) +blktigera // 8/1987 (c) 1987 (US) +blktigerb1 // bootleg +blktigerb2 // bootleg +blkdrgon // 8/1987 (c) 1987 (Japan) +blkdrgonb // bootleg, hacked to say Black Tiger +sf // 8/1987 (c) 1987 (World) +sfu // 8/1987 (c) 1987 (US) +sfua // 8/1987 (c) 1987 (US) +sfj // 8/1987 (c) 1987 (Japan) +sfp // 8/1987 (c) 1987 +tigeroad // 11/1987 (c) 1987 + Romstar (US) +toramich // 11/1987 (c) 1987 (Japan) +tigeroadb // bootleg +f1dream // 4/1988 (c) 1988 + Romstar +f1dreamb // bootleg +1943kai // 6/1988 (c) 1987 (Japan) +lastduel // 7/1988 (c) 1988 (US) +lastduelo // 7/1988 (c) 1988 (US) +lastduelj // 7/1988 (c) 1988 (Japan) +lastduelb // bootleg +madgear // 2/1989 (c) 1989 (US) +madgearj // 2/1989 (c) 1989 (Japan) +ledstorm // 1988 (c) 1988 (US) +ledstorm2 // 1988 (c) 1988 (US) +// 3/1989 Dokaben (baseball) - see below among "Mitchell" games +// 8/1989 Dokaben 2 (baseball) - see below among "Mitchell" games +// 10/1989 Capcom Baseball - see below among "Mitchell" games +// 11/1989 Capcom World - see below among "Mitchell" games +// 3/1990 Adventure Quiz 2 Hatena no Dai-Bouken - see below among "Mitchell" games +// 1/1991 Quiz Tonosama no Yabou - see below among "Mitchell" games +// 4/1991 Ashita Tenki ni Naare (golf) - see below among "Mitchell" games +// 5/1991 Ataxx - see below among "Leland" games +// 6/1991 Quiz Sangokushi - see below among "Mitchell" games +// 10/1991 Block Block - see below among "Mitchell" games +// 6/1995 Street Fighter - the Movie - see below among "Incredible Technologies" games + + +// Capcom CPS1 games +forgottn // 7/1988 (c) 1988 (World) +forgottnu // 7/1988 (c) 1988 (USA) +forgottnua // 7/1988 (c) 1988 (USA) +lostwrld // 7/1988 (c) 1988 (Japan) +lostwrldo // 7/1988 (c) 1988 (Japan) +ghouls // 12/1988 (c) 1988 (World) +ghoulsu // 12/1988 (c) 1988 (USA) +daimakai // 12/1988 (c) 1988 (Japan) +daimakair // 12/1988 (c) 1988 (Japan) +strider // 3/1989 (c) 1989 (not explicitly stated but should be USA) +striderua // 3/1989 (c) 1989 (not explicitly stated but should be USA) +striderj // 3/1989 (c) 1989 (Japan) +striderjr // 3/1989 (c) 1989 (Japan) +dynwar // 4/1989 (c) 1989 (USA) +dynwara // 4/1989 (c) 1989 (USA) +dynwarj // 4/1989 (c) 1989 (Japan) +dynwarjr // 4/1989 (c) 1989 (Japan) +willow // 6/1989 (c) 1989 (USA) +willowo // 6/1989 (c) 1989 (USA) +willowj // 6/1989 (c) 1989 (Japan) +unsquad // 8/1989 (c) 1989 (USA) +area88 // 8/1989 (c) 1989 (Japan) +area88r // 8/1989 (c) 1989 (Japan) +ffight // 12/1989 (c) 1989 (World) +ffightu // 12/1989 (c) 1989 (USA) +ffightua // 12/01/1990 (c) 1989 (USA) +ffightub // 13/06/1990 (c) 1989 (USA) +ffightj // 12/1989 (c) 1989 (Japan) +ffightj1 // 12/01/1990 (c) 1989 (Japan) +ffightj2 // 05/03/1990 (c) 1989 (Japan) +ffightjh // hack +1941 // 2/1990 (c) 1990 (World) +1941u // 27/02/1990 (c) 1990 (USA) +1941j // 2/1990 (c) 1990 (Japan) +mercs // 02/03/1990 (c) 1990 (World) +mercsu // 08/06/1990 (c) 1990 (USA) +mercsur1 // 02/03/1990 (c) 1990 (USA) +mercsj // 02/03/1990 (c) 1990 (Japan) +mtwins // 19/06/1990 (c) 1990 (World) +chikij // 19/06/1990 (c) 1990 (Japan) +msword // 25/07/1990 (c) 1990 (World) +mswordr1 // 23/06/1990 (c) 1990 (World) +mswordu // 25/07/1990 (c) 1990 (USA) +mswordj // 23/06/1990 (c) 1990 (Japan) +cawing // 12/10/1990 (c) 1990 (World) +cawingr1 // 09/10/1990 (c) 1990 (World) +cawingu // 12/10/1990 (c) 1990 (USA) +cawingj // 12/10/1990 (c) 1990 (Japan) +nemo // 30/11/1990 (c) 1990 (World) +nemoj // 20/11/1990 (c) 1990 (Japan) +sf2 // 22/05/1991 (c) 1991 (World) +sf2eb // 14/02/1991 (c) 1991 (World) +sf2ee // 28/02/1991 (c) 1991 (World) +sf2ebbl // 14/02/1991 (c) 1991 (World, bootleg) +sf2ua // 06/02/1991 (c) 1991 (USA) +sf2ub // 14/02/1991 (c) 1991 (USA) +sf2ud // 18/03/1991 (c) 1991 (USA) +sf2ue // 28/02/1991 (c) 1991 (USA) +sf2uf // 11/04/1991 (c) 1991 (USA) +sf2ui // 22/05/1991 (c) 1991 (USA) +sf2uk // 01/11/1991 (c) 1991 (USA) +sf2j // 10/12/1991 (c) 1991 (Japan) +sf2ja // 14/02/1991 (c) 1991 (Japan) +sf2jc // 06/03/1991 (c) 1991 (Japan) +sf2qp1 // hack +sf2thndr // hack +3wonders // 20/05/1991 (c) 1991 (World) +3wondersu // 20/05/1991 (c) 1991 (USA) +wonder3 // 20/05/1991 (c) 1991 (Japan) +3wondersh // hack +kod // 05/08/1991 (c) 1991 (World) +kodr1 // 11/07/1991 (c) 1991 (World) +kodu // 10/09/1991 (c) 1991 (USA) +kodj // 05/08/1991 (c) 1991 (Japan) +kodja // 05/08/1991 (c) 1991 (Japan) +kodb // bootleg +captcomm // 02/12/1991 (c) 1991 (World) +captcommr1 // 14/10/1991 (c) 1991 (World) +captcommu // 28/09/1991 (c) 1991 (USA) +captcommj // 02/12/1991 (c) 1991 (Japan) +captcommjr1 // 28/09/1991 (c) 1991 (Japan) +captcommb // bootleg +knights // 27/11/1991 (c) 1991 (World) +knightsu // 27/11/1991 (c) 1991 (USA) +knightsj // 27/11/1991 (c) 1991 (Japan) +knightsja // 27/11/1991 (c) 1991 (Japan) +knightsb // bootleg +sf2ce // 13/05/1992 (c) 1992 (World) +sf2ceea // 13/03/1992 (c) 1992 (World) +sf2ceua // 13/03/1992 (c) 1992 (USA) +sf2ceub // 13/05/1992 (c) 1992 (USA) +sf2ceuc // 03/08/1992 (c) 1992 (USA) +sf2cej // 13/05/1992 (c) 1992 (Japan) +sf2rb // hack +sf2rb2 // hack +sf2rb3 // hack +sf2red // hack +sf2v004 // hack +sf2acc // hack +sf2accp2 // hack +sf2dkot2 // hack +sf2m1 // hack +sf2m2 // hack +sf2m3 // hack +sf2m4 // hack +sf2m5 // hack +sf2m6 // hack +sf2m7 // hack +sf2yyc // hack +sf2koryu // hack +sf2mdt // bootleg +cworld2j // 11/06/1992 (c) 1992 (Japan) +varth // 14/07/1992 (c) 1992 (World) +varthr1 // 12/06/1992 (c) 1992 (World) +varthu // 12/06/1992 (c) 1992 (USA) +varthj // 14/07/1992 (c) 1992 (Japan) +qad // 01/07/1992 (c) 1992 (USA) +qadj // 21/09/1994 (c) 1994 (Japan) +wof // 02/10/1992 (c) 1992 (World) (CPS1 + QSound) +wofu // 31/10/1992 (c) 1992 (USA) (CPS1 + QSound) +wofa // 05/10/1992 (c) 1992 (Asia) (CPS1 + QSound) +wofj // 31/10/1992 (c) 1992 (Japan) (CPS1 + QSound) +wofhfh // bootleg +sf2hf // 09/12/1992 (c) 1992 (World) +sf2hfu // 09/12/1992 (c) 1992 (USA) +sf2hfj // 09/12/1992 (c) 1992 (Japan) +dino // 01/02/1993 (c) 1993 (World) (CPS1 + QSound) +dinou // 01/02/1993 (c) 1993 (USA) (CPS1 + QSound) +dinoj // 01/02/1993 (c) 1993 (Japan) (CPS1 + QSound) +dinopic // bootleg +dinopic2 // bootleg +dinohunt // bootleg +punisher // 22/04/1993 (c) 1993 (World) (CPS1 + QSound) +punisheru // 22/04/1993 (c) 1993 (USA) (CPS1 + QSound) +punisherj // 22/04/1993 (c) 1993 (Japan) (CPS1 + QSound) +punipic // bootleg +punipic2 // bootleg +punipic3 // bootleg +punisherbz // bootleg +slammast // 13/07/1993 (c) 1993 (World) (CPS1 + QSound) +slammastu // 13/07/1993 (c) 1993 (USA) (CPS1 + QSound) +mbomberj // 13/07/1993 (c) 1993 (Japan) (CPS1 + QSound) +mbombrd // 06/12/1993 (c) 1993 (World) (CPS1 + QSound) +mbombrdj // 06/12/1993 (c) 1993 (Japan) (CPS1 + QSound) + // 1994 Ken Sei Mogura (not listed on Capcom's site) +pnickj // 08/06/1994 (c) 1994 Compile + Capcom license (Japan) not listed on Capcom's site +qtono2j // 23/01/1995 (c) 1995 (Japan) +pang3 // 01/06/1995 (c) 1995 Mitchell (Euro) not listed on Capcom's site +pang3n // 11/05/1995 (c) 1995 Mitchell (Euro) not listed on Capcom's site +pang3j // 11/05/1995 (c) 1995 Mitchell (Japan) not listed on Capcom's site +megaman // 06/10/1995 (c) 1995 (USA) +megamana // 06/10/1995 (c) 1995 (Asia) +rockmanj // 22/09/1995 (c) 1995 (Japan) + +fcrash // bootleg of Final Fight + +// Capcom CPS2 games +// list completed by CPS2Shock +// http://cps2shock.retrogames.com +ssf2 // 11/09/1993 (c) 1993 (World) +ssf2u // 11/09/1993 (c) 1993 (USA) +ssf2a // 05/10/1993 (c) 1993 (Asia) +ssf2ar1 // 14/09/1993 (c) 1993 (Asia) +ssf2j // 05/10/1993 (c) 1993 (Japan) +ssf2jr1 // 11/09/1993 (c) 1993 (Japan) +ssf2jr2 // 10/09/1993 (c) 1993 (Japan) +ssf2h // 11/09/1993 (c) 1993 (Hispanic) +ssf2tb // 11/19/1993 (c) 1993 (World) +ssf2tbr1 // 11/09/1993 (c) 1993 (World) +ssf2tbj // 11/09/1993 (c) 1993 (Japan) +ecofghtr // 03/12/1993 (c) 1994 (World) +ecofghtru // 15/02/1994 (c) 1994 (USA) +ecofghtru1 // 03/12/1993 (c) 1994 (USA) +ecofghtra // 03/12/1993 (c) 1994 (Asia) +ecofghtrh // 03/12/1993 (c) 1994 (Hispanic) +uecology // 03/12/1993 (c) 1994 (Japan) +ddtod // 12/04/1994 (c) 1993 (Euro) +ddtodr1 // 13/01/1994 (c) 1993 (Euro) +ddtodu // 25/01/1994 (c) 1993 (USA) +ddtodur1 // 13/01/1994 (c) 1993 (USA) +ddtodj // 12/04/1994 (c) 1993 (Japan) +ddtodjr1 // 25/01/1994 (c) 1993 (Japan) +ddtodjr2 // 13/01/1994 (c) 1993 (Japan) +ddtoda // 13/01/1994 (c) 1993 (Asia) +ddtodh // 12/04/1994 (c) 1993 (Hispanic) +ddtodhr1 // 25/01/1994 (c) 1993 (Hispanic) +ddtodhr2 // 13/01/1994 (c) 1993 (Hispanic) +ssf2t // 23/02/1994 (c) 1994 (World) +ssf2tu // 23/03/1994 (c) 1994 (USA) +ssf2tur1 // 23/02/1994 (c) 1994 (USA) +ssf2ta // 23/02/1994 (c) 1994 (Asia) +ssf2xj // 23/02/1994 (c) 1994 (Japan) +avsp // 20/05/1994 (c) 1994 (Euro) +avspu // 20/05/1994 (c) 1994 (USA) +avspj // 20/05/1994 (c) 1994 (Japan) +avspa // 20/05/1994 (c) 1994 (Asia) +avsph // 20/05/1994 (c) 1994 (Hispanic) + // 06/1994? Galum Pa! (not listed on Capcom's site) +dstlk // 05/07/1994 (c) 1994 (Euro) +dstlku // 18/08/1994 (c) 1994 (USA) +dstlkur1 // 05/07/1994 (c) 1994 (USA) +dstlka // 05/07/1994 (c) 1994 (Asia) +dstlkh // 18/08/1994 (c) 1994 (Hispanic) +vampj // 05/07/1994 (c) 1994 (Japan) +vampja // 05/07/1994 (c) 1994 (Japan) +vampjr1 // 30/06/1994 (c) 1994 (Japan) +ringdest // 02/09/1994 (c) 1994 (Euro) +ringdesta // 31/08/1994 (c) 1994 (Asia) +smbomb // 31/08/1994 (c) 1994 (Japan) +smbombr1 // 08/08/1994 (c) 1994 (Japan) +armwar // 24/10/1994 (c) 1994 (Euro) +armwarr1 // 11/10/1994 (c) 1994 (Euro) +armwaru // 24/10/1994 (c) 1994 (USA) +armwaru1 // 20/09/1994 (c) 1994 (USA) +pgear // 24/10/1994 (c) 1994 (Japan) +pgearr1 // 16/09/1994 (c) 1994 (Japan) +armwara // 20/09/1994 (c) 1994 (Asia) +xmcota // 05/01/1995 (c) 1994 (Euro) +xmcotau // 05/01/1995 (c) 1994 (USA) +xmcotah // 31/03/1995 (c) 1994 (Hispanic) +xmcotahr1 // 05/01/1995 (c) 1994 (Hispanic) +xmcotaj // 05/01/1995 (c) 1994 (Japan) +xmcotaj1 // 22/12/1994 (c) 1994 (Japan) +xmcotaj2 // 19/12/1994 (c) 1994 (Japan) +xmcotaj3 // 17/12/1994 (c) 1994 (Japan) +xmcotaa // 05/01/1995 (c) 1994 (Asia) +xmcotaar1 // 17/12/1994 (c) 1994 (Asia) +xmcotajr // 08/12/1994 (c) 1994 (Japan Rent) +nwarr // 16/03/1995 (c) 1995 (Euro) +nwarru // 06/04/1995 (c) 1995 (USA) +nwarrh // 03/04/1995 (c) 1995 (Hispanic) +nwarrb // 03/04/1995 (c) 1995 (Brazil) +nwarra // 02/03/1995 (c) 1995 (Asia) +vhuntj // 02/03/1995 (c) 1995 (Japan) +vhuntjr1 // 07/03/1995 (c) 1995 (Japan) +vhuntjr2 // 02/03/1995 (c) 1995 (Japan) +cybots // 24/04/1995 (c) 1995 (Euro) +cybotsu // 24/04/1995 (c) 1995 (USA) +cybotsj // 20/04/1995 (c) 1995 (Japan) +sfa // 27/07/1995 (c) 1995 (Euro) +sfar1 // 18/07/1995 (c) 1995 (Euro) +sfar2 // 27/06/1995 (c) 1995 (Euro) +sfar3 // 05/06/1995 (c) 1995 (Euro) +sfau // 27/06/1995 (c) 1995 (USA) +sfza // 27/06/1995 (c) 1995 (Asia) +sfzj // 27/07/1995 (c) 1995 (Japan) +sfzjr1 // 27/06/1995 (c) 1995 (Japan) +sfzjr2 // 05/06/1995 (c) 1995 (Japan) +sfzh // 18/07/1995 (c) 1995 (Hispanic) +sfzhr1 // 27/06/1995 (c) 1995 (Hispanic) +sfzb // 09/11/1995 (c) 1995 (Brazil) +sfzbr1 // 27/07/1995 (c) 1995 (Brazil) +mmancp2u // 06/10/1995 (c) 1995 (Japan) +rmancp2j // 22/09/1995 (c) 1995 (Japan) +msh // 24/10/1995 (c) 1995 (Euro) +mshu // 24/10/1995 (c) 1995 (USA) +mshj // 17/11/1995 (c) 1995 (Japan) +mshjr1 // 24/10/1995 (c) 1995 (Japan) +msha // 24/10/1995 (c) 1995 (Asia) +mshh // 17/11/1995 (c) 1995 (Hispanic) +mshb // 17/11/1995 (c) 1995 (Brazil) +19xx // 07/12/1995 (c) 1996 (USA) +19xxj // 25/12/1995 (c) 1996 (Japan) +19xxjr1 // 07/12/1995 (c) 1996 (Japan) +19xxa // 07/12/1995 (c) 1996 (Asia) +19xxh // 18/12/1995 (c) 1996 (Hispanic) +19xxb // 18/12/1995 (c) 1996 (Brazil) +ddsom // 19/06/1996 (c) 1996 (Euro) +ddsomr1 // 23/02/1996 (c) 1996 (Euro) +ddsomr2 // 09/02/1996 (c) 1996 (Euro) +ddsomr3 // 08/02/1996 (c) 1996 (Euro) +ddsomu // 19/06/1996 (c) 1996 (USA) +ddsomur1 // 09/02/1996 (c) 1996 (USA) +ddsomjr1 // 06/02/1996 (c) 1996 (Japan) +ddsomj // 19/06/1996 (c) 1996 (Japan) +ddsoma // 19/06/1996 (c) 1996 (Asia) +ddsomh // 23/02/1996 (c) 1996 (Hispanic) +ddsomb // 23/02/1996 (c) 1996 (Brazil) +sfa2 // 06/03/1996 (c) 1996 (Euro) +sfa2u // 30/04/1996 (c) 1996 (USA) +sfa2ur1 // 06/03/1996 (c) 1996 (USA) +sfz2j // 27/02/1996 (c) 1996 (Japan) +sfz2a // 27/02/1996 (c) 1996 (Asia) +sfz2b // 31/05/1996 (c) 1996 (Brazil) +sfz2br1 // 04/03/1996 (c) 1996 (Brazil) +sfz2h // 04/03/1996 (c) 1996 (Hispanic) +sfz2n // 29/02/1996 (c) 1996 (Oceania) +spf2t // 20/06/1996 (c) 1996 (USA) +spf2xj // 31/05/1996 (c) 1996 (Japan) +spf2ta // 29/05/1996 (c) 1996 (Asia) +spf2th // 31/05/1996 (c) 1996 (Hispanic) +megaman2 // 08/07/1996 (c) 1996 (USA) +megaman2a // 08/07/1996 (c) 1996 (Asia) +rockman2j // 08/07/1996 (c) 1996 (Japan) +megaman2h // 12/07/1996 (c) 1996 (Hispanic) +gigamn2 // bootleg +sfz2al // 26/08/1996 (c) 1996 (Asia) +sfz2alj // 05/08/1996 (c) 1996 (Japan) +sfz2alh // 13/08/1996 (c) 1996 (Hispanic) +sfz2alb // 13/08/1996 (c) 1996 (Brazil) +qndream // 26/08/1996 (c) 1996 (Japan) +xmvsf // 04/10/1996 (c) 1996 (Euro) +xmvsfr1 // 10/09/1996 (c) 1996 (Euro) +xmvsfu // 23/10/1996 (c) 1996 (USA) +xmvsfur1 // 04/10/1996 (c) 1996 (USA) +xmvsfj // 04/10/1996 (c) 1996 (Japan) +xmvsfjr1 // 10/09/1996 (c) 1996 (Japan) +xmvsfjr2 // 09/09/1996 (c) 1996 (Japan) +xmvsfa // 23/10/1996 (c) 1996 (Asia) +xmvsfar1 // 19/09/1996 (c) 1996 (Asia) +xmvsfar2 // 10/09/1996 (c) 1996 (Asia) +xmvsfh // 04/10/1996 (c) 1996 (Hispanic) +xmvsfb // 23/10/1996 (c) 1996 (Brazil) +batcir // 19/03/1997 (c) 1997 (Euro) +batcirj // 19/03/1997 (c) 1997 (Japan) +batcira // 19/03/1997 (c) 1997 (Asia) +vsav // 19/05/1997 (c) 1997 (Euro) +vsavu // 19/05/1997 (c) 1997 (USA) +vsavj // 19/05/1997 (c) 1997 (Japan) +vsava // 19/05/1997 (c) 1997 (Asia) +vsavh // 19/05/1997 (c) 1997 (Hispanic) +mshvsf // 25/06/1997 (c) 1997 (Euro) +mshvsfu // 27/08/1997 (c) 1997 (USA) +mshvsfu1 // 25/06/1997 (c) 1997 (USA) +mshvsfj // 07/07/1997 (c) 1997 (Japan) +mshvsfj1 // 02/07/1997 (c) 1997 (Japan) +mshvsfj2 // 25/06/1997 (c) 1997 (Japan) +mshvsfh // 25/06/1997 (c) 1997 (Hispanic) +mshvsfa // 25/06/1997 (c) 1997 (Asia) +mshvsfa1 // 20/06/1997 (c) 1997 (Asia) +mshvsfb // 27/08/1997 (c) 1997 (Brazil) +mshvsfb1 // 25/06/1997 (c) 1997 (Brazil) +csclub // 17/10/1997 (c) 1997 (Euro) +csclub1 // 22/07/1997 (c) 1997 (Euro) +csclubj // 22/07/1997 (c) 1997 (Japan) +cscluba // 22/07/1997 (c) 1997 (Asia) +csclubh // 22/07/1997 (c) 1997 (Hispanic) +sgemf // 04/09/1997 (c) 1997 (USA) +pfghtj // 04/09/1997 (c) 1997 (Japan) +sgemfa // 04/09/1997 (c) 1997 (Asia) +sgemfh // 04/09/1997 (c) 1997 (Hispanic) +vhunt2r1 // 13/09/1997 (c) 1997 (Japan) +vhunt2 // 29/09/1997 (c) 1997 (Japan) +vsav2 // 13/09/1997 (c) 1997 (Japan) +mvsc // 23/01/1998 (c) 1998 (Euro) +mvscr1 // 12/01/1998 (c) 1998 (Euro) +mvscu // 23/01/1998 (c) 1998 (USA) +mvscur1 // 23/01/1998 (c) 1998 (USA) +mvscj // 23/01/1998 (c) 1998 (Japan) +mvscjr1 // 12/01/1998 (c) 1998 (Japan) +mvsca // 23/01/1998 (c) 1998 (Asia) +mvscar1 // 12/01/1998 (c) 1998 (Asia) +mvsch // 23/01/1998 (c) 1998 (Hispanic) +mvscb // 23/01/1998 (c) 1998 (Brazil) +sfa3 // 04/09/1998 (c) 1998 (USA) +sfa3u // 04/09/1998 (c) 1998 (USA) +sfa3ur1 // 29/06/1998 (c) 1998 (USA) +sfa3h // 04/09/1998 (c) 1998 (Hispanic) +sfa3hr1 // 29/06/1998 (c) 1998 (Hispanic) +sfa3b // 29/06/1998 (c) 1998 (Brazil) +sfz3j // 04/09/1998 (c) 1998 (Japan) +sfz3jr1 // 27/07/1998 (c) 1998 (Japan) +sfz3jr2 // 29/06/1998 (c) 1998 (Japan) +sfz3a // 04/09/1998 (c) 1998 (Asia) +sfz3ar1 // 01/07/1998 (c) 1998 (Asia) +gigawing // 22/02/1999 (c) 1999 Takumi (USA) +gigawingj // 23/02/1999 (c) 1999 Takumi (Japan) +gigawinga // 22/02/1999 (c) 1999 Takumi (Asia) +gigawingh // 22/02/1999 (c) 1999 Takumi (Hispanic) +gigawingb // 22/02/1999 (c) 1999 Takumi (Brazil) +jyangoku // 27/05/1999 (c) 1999 (Japan) +dimahoo // 21/01/2000 (c) 2000 Eighting/Raizing (USA) +dimahoou // 21/01/2000 (c) 2000 Eighting/Raizing (USA) +gmahou // 21/01/2000 (c) 2000 Eighting/Raizing (Japan) +mmatrix // 12/04/2000 (c) 2000 Takumi (USA) +mmatrixj // 12/04/2000 (c) 2000 Takumi (Japan) +1944 // 20/06/2000 (c) 2000 Eighting/Raizing (USA) +1944j // 20/06/2000 (c) 2000 Eighting/Raizing (Japan) +mpang // 10/10/2000 (c) 2000 Mitchell (Euro) +mpangr1 // 25/09/2000 (c) 2000 Mitchell (Euro) +mpangu // 10/10/2000 (c) 2000 Mitchell (USA) +mpangj // 11/10/2000 (c) 2000 Mitchell (Japan) +progear // 17/01/2001 (c) 2001 Cave (USA) +progearj // 17/01/2001 (c) 2001 Cave (Japan) +progeara // 17/01/2001 (c) 2001 Cave (Asia) +pzloop2 // 02/03/2001 (c) 2001 Mitchell (Euro) +pzloop2j // 05/02/2001 (c) 2001 Mitchell (Japan) +choko // 20/08/2001 (c) 2001 Mitchell (Japan) +hsf2 // 02/02/2004 (c) 2003, 2004 (USA) +hsf2j // 22/12/2003 (c) 2003, 2004 (Japan) +hsf2a // 02/02/2004 (c) 2003, 2004 (Asia) + +// CPS2 'Phoenix' bootlegs +ssf2ud +ddtodd +ecofghtrd +avspd +dstlku1d +ringdstd +xmcotad +nwarrud +sfad +mshud +19xxd +sfz2ad +sfz2jd +spf2td +spf2xjd +ddsomud +megamn2d +sfz2ald +xmvsfu1d +batcird +vsavd +mvscud +sfa3ud +gigawingd +gigawingjd +1944d +progearud +progearjd +progearjbl +hsf2d +ssf2tbd +ssf2xjd +sgemfd +armwar1d +dimahoud +mmatrixd +vhunt2d +vsav2d +csclub1d +cybotsud +mshvsfu1d +sfz3jr2d + +// Capcom CPS3 games +redearth // 21/11/1996 (c) 1996 (Euro) +redeartha // 23/10/1996 (c) 1996 (Euro) +warzard // 21/11/1996 (c) 1996 (Japan) +warzarda // 23/10/1996 (c) 1996 (Japan) +sfiii // 04/02/1997 (c) 1997 (USA) +sfiiij // 04/02/1997 (c) 1997 (Japan) +sfiiih // 04/02/1997 (c) 1997 (Hispanic) +sfiii2 // 30/09/1997 (c) 1997 (USA) +sfiii2j // 30/09/1997 (c) 1997 (Japan) +jojo // 08/01/1999 (c) 1998 (USA) +jojoa // 02/12/1998 (c) 1998 (USA) +jojoj // 08/01/1999 (c) 1998 (Japan) +jojoaj // 02/12/1998 (c) 1998 (Japan) +sfiii3 // 08/06/1999 (c) 1999 (USA) +sfiii3a // 12/05/1999 (c) 1999 (USA) +jojoba // 13/09/1999 (c) 1999 (Japan) + +sfiiin // 04/02/1997 (c) 1997 (Asia) +sfiii2n // 30/09/1997 (c) 1997 (Asia) +jojon // 08/01/1999 (c) 1998 (Asia) +jojoan // 02/12/1998 (c) 1998 (Asia) +sfiii3n // 08/06/1999 (c) 1999 (Japan) +sfiii3an // 12/05/1999 (c) 1999 (Japan) +jojoban // 13/09/1999 (c) 1999 (Japan) +jojobane // 13/09/1999 (c) 1999 (Euro) + +// Capcom ZN1 +cpzn1 +ts2 // Battle Arena Toshinden 2 (USA 951124) +ts2j // Battle Arena Toshinden 2 (JAPAN 951124) +starglad // Star Gladiator (USA 960627) +stargladj // Star Gladiator (JAPAN 960627) +sfex // Street Fighter EX (EURO 961219) +sfexu // Street Fighter EX (USA 961219) +sfexa // Street Fighter EX (ASIA 961219) +sfexj // Street Fighter EX (JAPAN 961130) +glpracr // Gallop Racer (JAPAN Ver 9.01.12) +sfexp // Street Fighter EX Plus (USA 970407) +sfexpu1 // Street Fighter EX Plus (USA 970311) +sfexpj // Street Fighter EX Plus (JAPAN 970311) + +// Capcom ZN2 +cpzn2 +rvschool // Rival Schools (USA 971117) +rvschoola // Rival Schools (ASIA 971117) +jgakuen // Justice Gakuen (JAPAN 971117) +sfex2 // Street Fighter EX 2 (USA 980526) +sfex2j // Street Fighter EX 2 (JAPAN 980312) +sfex2a // Street Fighter EX 2 (ASIA 980312) +sfex2h // Street Fighter EX 2 (HISPANIC 980312) +plsmaswd // Plasma Sword (USA 980316) +stargld2 // Star Gladiator 2 (JAPAN 980316) +plsmaswda // Plasma Sword (ASIA 980316) +tgmj // Tetris The Grand Master (JAPAN 980710) +techromn // Tech Romancer (EURO 980914) +techromnu // Tech Romancer (USA 980914) +kikaioh // Kikaioh (JAPAN 980914) +sfex2p // Street Fighter EX 2 Plus (USA 990611) +sfex2pa // Street Fighter EX 2 Plus (ASIA 990611) +sfex2pj // Street Fighter EX 2 Plus (JAPAN 990611) +strider2 // Strider 2 (USA 991213) +strider2a // Strider 2 (ASIA 991213) +shiryu2 // Strider Hiryu 2 (JAPAN 991213) + +alien // (c) 2005 +// Alien Danger + +// Tecmo ZN1 +tps +glpracr2 // Gallop Racer 2 (USA) +glpracr2j // Gallop Racer 2 (JAPAN) +glpracr2l // Gallop Racer 2 Link HW (JAPAN) +doapp // Dead Or Alive ++ (JAPAN) +cbaj // Cool Boaders Arcade Jam +shngmtkb // Shanghai Matekibuyuu +tondemo // Tondemo Crisis (JAPAN) +glpracr3 // Gallop Racer 3 (JAPAN) +flamegun // Flame Gunner (USA) +flamegunj // Flame Gunner (JAPAN) +lpadv // Logic Pro Adventure (JAPAN) +tblkkuzu // The Block Kuzushi (JAPAN) +1on1gov // 1 on 1 Government (JAPAN) +tecmowcm // Tecmo World Cup Millenium (JAPAN) +mfjump // Monster Farm Jump (JAPAN) + +// Atlus ZN1 +atluspsx +hvnsgate // Heaven's Gate (JAPAN) + +// PS Arcade 95 +psarc95 +beastrzr // Beastorizer (USA) +bldyroar // Bloody Roar (JAPAN) +beastrzb // Beastorizer (USA Bootleg) +bldyror2 // Bloody Roar 2 (WORLD) +bldyror2u // Bloody Roar 2 (USA) +bldyror2a // Bloody Roar 2 (ASIA) +bldyror2j // Bloody Roar 2 (JAPAN) +brvblade // Brave Blade (WORLD) +brvbladeu // Brave Blade (USA) +brvbladea // Brave Blade (ASIA) +brvbladej // Brave Blade (JAPAN) +bam2 // Bust a Move 2 (JAPANESE ROM ver. 1999/07/17 10:00:00) + +// Atari PSX +atpsx +primrag2 // Primal Rage 2 + +// Acclaim PSX +acpsx +nbajamex // NBA Jam Extreme +jdredd // Judge Dredd (Rev C) +jdreddb // Judge Dredd (Rev B) + +// Video System ZN1 +vspsx +aerofgts // Aero Fighters Special (TAIWAN) +sncwgltd // Sonic Wings Limited (JAPAN) + +// Taito FX1a +taitofx1 +sfchamp // Super Football Champ (Ver 2.5O) +sfchamp24o // Super Football Champ (Ver 2.4O) +sfchampj // Super Football Champ (Ver 2.4J) +psyforce // Psychic Force (Ver 2.4O) +psyforcej // Psychic Force (Ver 2.4J) +psyforcex // Psychic Force EX (Ver 2.0J) +mgcldate // Magical Date (JAPAN Ver 2.02J) +mgcldtex // Magical Date EX (JAPAN Ver 2.01J) + +// Taito FX1b +raystorm // Ray Storm (Ver 2.06A) +raystormj // Ray Storm (Ver 2.05J) +ftimpact // Fighters' Impact (Ver 2.02O) +ftimpactj // Fighters' Impact (Ver 2.02J) +ftimpcta // Fighters' Impact A (Ver 2.00J) +gdarius // G-Darius (Ver 2.01J) +gdariusb // G-Darius (Ver 2.02A) +gdarius2 // G-Darius Ver.2 (Ver 2.03J) + +// Taito GNET +taitogn +chaoshea // 1998.10 Chaos Heat (V2.09O) +chaosheaj // 1998.10 Chaos Heat (V2.08J) +raycris // 1998.12 Ray Crisis (V2.03J) +otenamih // 1999.02 Otenami Haiken (Success) +otenamhf // 2005.04 Otenami Haiken Final (V2.07JC) +spuzboblj // 1999.03 Super Puzzle Bobble (Japan) +spuzbobl // 1999.?? Super Puzzle Bobble (V2.05O) +gobyrc // 1999.?? Go By RC (V2.03O) +rcdego // 1999.06 RC De Go (V2.03J) +flipmaze // 1999.09 Flip Maze (V2.04J) +mahjngoh // 1999.12 Mahjong Oh (V2.06J) +psyvaria // 2000.03 Psyvariar -Medium Unit- (V2.04J) +shanghss // 2000.07 Shanghai Shoryu Sairin (V2.03J) +psyvarrv // 2000.09 Psyvariar -Revision- (V2.04J) +zokuoten // 2000.12 Zoku Otenamihaiken (V2.03J) + // 2000.?? Taito Classic (Success, not released?) +soutenry // 2001.02 Soutenryu (V2.07J) +nightrai // 2001.05 Night Raid (V2.03J) +shikigam // 2001.09 Shikigami no Shiro +otenki // 2001.10 Otenki Kororin +usagi // 2001.12 Usagi (V2.02J) +shangtou // 2002.02 Shanghai Sangokuhaitougi +xiistag // 2002.07 XII Stag (V2.01J) +sianniv // 2003.10 Space Invaders Anniversary (V2.02J) +kollon // 2003.11 Kollon (V2.04J) +kollonc // 2003.11 Kollon (V2.04JC, Compact Flash version) +zooo // 2004.05 Zooo + +// Namco System 11 +tekken // 1994.?? Tekken (TE4/VER.C) +tekkena // 1994.?? Tekken (TE2/VER.C) +tekkenb // 1994.?? Tekken (TE2/VER.B) +tekkenc // 1994.12 Tekken (TE1/VER.B, Japan) +tekken2 // 1995.?? Tekken 2 Ver.B (TES3/VER.B) +tekken2a // 1995.?? Tekken 2 Ver.B (TES2/VER.B) + // 1995.10 Tekken 2 Ver.B (TES1/VER.B, Japan) +tekken2b // 1995.?? Tekken 2 (TES2/VER.A) + // 1995.08 Tekken 2 (TES1, Japan) +souledge1 // 1996.?? Soul Edge (SO3/VER.A) +souledge1j // 1996.02 Soul Edge (SO1/VER.A, Japan) +primglex // 1996.03 Prime Goal EX (PG1/VER.A, Japan) +xevi3dg // 1996.05 Xevious 3D/G (XV31/VER.A, Japan) +souledge // 1996.?? Soul Edge Ver. II (SO4/VER.C) +souledgea // 1996.?? Soul Edge Ver. II (SO3/VER.C) + // 1996.05 Soul Edge Ver. II (SO1, Japan) +dunkmnia // 1996.?? Dunk Mania (DM1/VER.C) +dunkmniaj // 1996.05 Dunk Mania (DM1/VER.C, Japan) +danceyes // 1996.09 Dancing Eyes (DC1/VER.A, Japan) +pocketrc // 1997.03 Pocket Racer (PKR1/VER.B, Japan) +starswep // 1997.07 Star Sweep (STP1/VER.A, Japan) +myangel3 // 1998.03 Kosodate Quiz My Angel 3 (KQT1/VER.A, Japan) +ptblank2a // 1999.?? Point Blank 2 (GNB3/VER.A) + // 1999.02 Gunbaarl (GNB1, Japan) + +// Namco System 12 +tekken3 // 1997.03 Tekken 3 (TET1/VER.E1, Japan) +tekken3a // 1997.?? Tekken 3 (TET2/VER.B) +tekken3b // 1997.?? Tekken 3 (TET3/VER.A) +tekken3c // 1997.?? Tekken 3 (TET2/VER.A) +lbgrande // 1997.?? Libero Grande (LG2/VER.A) + // 1997.12 Libero Grande (LG1, Japan) +toukon3 // 1997.12 Shin Nihon Pro Wrestling Toukon Retsuden 3 Arcade Edition (TR1/VER.A, Japan) +ehrgeiz // 1998.?? Ehrgeiz (EG3/VER.A) +ehrgeiza // 1998.?? Ehrgeiz (EG2/VER.A) +ehrgeizj // 1998.05 Ehrgeiz (EG1, Japan) +sws98 // 1998.06 Super World Stadium '98 (SS81/VER.A, Japan) +soulclbr // 1998.?? Soul Calibur (SOC14/VER.C) +soulclbrb // 1998.?? Soul Calibur (SOC14/VER.B) +soulclbrj // 1998.07 Soul Calibur (SOC11/VER.C, Japan) +soulclbrb2 // 1998.?? Soul Calibur (SOC13/VER.B) +soulclbrjb // 1998.?? Soul Calibur (SOC11/VER.B, Japan) +soulclbrja // 1998.?? Soul Calibur (SOC11/VER.A2, Japan) + // 1998.07 Techno Drive +mdhorse // 1998.11 Derby Quiz My Dream Horse (MDH1/VER.A2, Japan) + // 1998.12 Attack Pla Rail +tenkomor // 1998.?? Tenkomori Shooting (TKM2/VER.A1) +tenkomorj // 1998.12 Tenkomori Shooting (TKM1/VER.A1, Japan) +pacapp // 1998.12 Paca Paca Passion (PPP1/VER.A2, Japan) +fgtlayer // 1998.12 Fighting Layer (FTL0/VER.A, Japan) + // 1999.01 Bust A Move (Metro) +ptblank2 // 1999.?? Point Blank 2 (GNB5/VER.A) +sws99 // 1999.05 Super World Stadium '99 (SS91/VER.A3, Japan) +ghlpanic // 1999.?? Ghoul Panic (OB2/VER.A) + // 1999.07 Oh Bakyuun (OB1, Japan) +pacapp2 // 1999.07 Paca Paca Passion 2 (PKS1/VER.A, Japan) + // 1999.07 Bust A Move 2 (Metro) +tektagt // 1999.?? Tekken Tag Tournament (TEG3/VER.C1) +tektagta // 1999.?? Tekken Tag Tournament (TEG3/VER.B) +tektagtb // 1999.07 Tekken Tag Tournament (TEG1/VER.B, Japan) +tektagtc // 1999.07 Tekken Tag Tournament (TEG1/VER.A, Japan) +mrdrillr // 1999.11 Mr Driller (DRI1/VER.A2, Japan) + // 1999.12 UmJammer Lammy NOW! (Japan) + // 1999.12 Quest for Fame (Japan) +pacappsp // 1999.12 Paca Paca Passion Special (PSP1/VER.A, Japan) +kaiunqz // 1999.12 Kaiun Quiz (KW1/VER.A, Japan) +aquarush // 2000.02 Aqua Rush (AQ1/VER.A1, Japan) +golgo13 // 2000.03 Golgo 13 (GLG1/VER.A, Japan) +sws2000 // 2000.03 Super World Stadium 2000 (SS01/VER.A, Japan) +truckk // 2000.06 Truck Kyousoukyoku (Metro) + // 2000.07 Kart Duel + // 2000.08 Teknowerk +g13knd // 2000.10 Golgo 13 Kiseki no Dandou (GLS1/VER.A, Japan) +sws2001 // 2001.04 Super World Stadium 2001 (SS11/VER.A, Japan) + +// Namco System 10 +mrdrilr2 // 2000.07 Mr Driller 2 (DR21 Ver.A) +mrdrlr2a // 2000.?? Mr Driller 2 (DR22 Ver.A) +ptblank3 // 2000.12 Point Blank 3 / Gunbalina + // 2001.02 Photo Battole + // 2001.02 Taiko no Tatsujin + // 2001.03 Gahaha Ippatsudou +mrdrilrg // 2001.03 Mr. Driller G (DRG1 Ver.A) + // 2001.07 Golgo 13 Juusei no Requiem + // 2001.08 Taiko no Tatsujin 2 + // 2001.09 Gahaha Ippatsudou 2 + // 2001.11 Knock Down 2001 +knpuzzle // 2001.12 Kotoba no Puzzle Mojipittan (KPM1 Ver.A) +gjspace // 2001.12 Gekitoride-Jong Space (10011 Ver.A) + // 2002.03 Panicuru Panekuru + // 2002.03 Taiko no Tatsujin 3 +startrgn // 2002.07 Star Trigon (STT1 Ver.A) + // 2002.07 Tsukkomi Yousei Gips Nice Tsukkomi +gamshara // 2002.08 Gamshara (10021 Ver.A) +chocovdr // 2002.10 Uchuu Daisakusen : Chocovader Contactee + // 2002.12 Taiko no Tatsujin 4 + // 2003.04 Seisyun Quiz Colorful High School + // 2003.10 Taiko no Tatsujin 5 + // 2004.07 Taiko no Tatsujin 6 + +// Konami GQ +cryptklr // Crypt Killer (GQ420 UAA) + +// Konami GV +konamigv +kdeadeye // GV054, UA01 +pbball96 // GV017, Japan 1.03 +hyperath // GV021, Japan 1.00 +susume // GV027, Japan 1.20 +btchamp // GV053, UAA01 +weddingr // GX624, JAA +tokimosh // GE755, JAA +tokimosp // GE756, JAB +nagano98 // GX720, EAA +simpbowl // GQ829, UAA + +// Konami System 573 +sys573 +darkhleg // 1998 - Dark Horse Legend (GX706 VER. JAA) +fbaitbc // 1998 - Fisherman's Bait - A Bass Challenge (GE765 VER. UAB) +bassangl // 1998 - Bass Angler (GE765 VER. JAA) +pbballex // 1998 - Powerful Pro Baseball EX (GX802 VER. JAB) +konam80s // 1998 - Konami 80's AC Special (GC826 VER. EAA) +konam80u // 1998 - Konami 80's AC Special (GC826 VER. UAA) +konam80j // 1998 - Konami 80's Gallery (GC826 VER. JAA) +konam80a // 1998 - Konami 80's AC Special (GC826 VER. AAA) +konam80k // 1998 - Konami 80's AC Special (GC826 VER. KAA) +dstage // 1999 - Dancing Stage (GN845 VER. EAA) +ddru // 1999 - Dance Dance Revolution (GN845 VER. UAA) +ddrj // 1998 - Dance Dance Revolution - Internet Ranking Ver (GC845 VER. JBA) +ddrja // 1998 - Dance Dance Revolution (GC845 VER. JAA) +ddrjb // 1998 - Dance Dance Revolution (GC845 VER. JAB) +ddra // 1999 - Dance Dance Revolution (GN845 VER. AAA) +fbait2bc // 1998 - Fisherman's Bait 2 - A Bass Challenge (GE865 VER. UAB) +bassang2 // 1998 - Bass Angler 2 (GE865 VER. JAA) +drmn // 1999 - DrumMania (GQ881 VER. JAD) +gtrfrks // 1999 - Guitar Freaks (GQ886 VER. EAC) +gtrfrksu // 1999 - Guitar Freaks (GQ886 VER. UAC) +gtrfrksj // 1999 - Guitar Freaks (GQ886 VER. JAC) +gtrfrksa // 1999 - Guitar Freaks (GQ886 VER. AAC) +fbaitmc // 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. EA) +fbaitmcu // 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. UA) +fbaitmcj // 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. JA) +fbaitmca // 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. AA) +ddr2m // 1999 - Dance Dance Revolution 2nd Mix (GN895 VER. JAA) +ddr2ml // 1999 - Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAB) +ddr2mla // 1999 - Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAA) +ddrbocd // 1999 - Dance Dance Revolution Best of Cool Dancers (GE892 VER. JAA) +ddr2mc // 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX CLUB VERSiON (GE896 VER. JAA) +ddr2mc2 // 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX substream CLUB VERSiON 2 (GE984 VER. JAA) +gtrfrk2m // 1999 - Guitar Freaks 2nd Mix Ver 1.01 (GQ883 VER. JAD) +dsftkd // 1999 - Dancing Stage featuring TRUE KiSS DESTiNATiON (G*884 VER. JAA) +cr589fw // 1999 - CR-589 Firmware (700B04) +cr589fwa // 1999 - CR-589 Firmware (700A04) +ddr3mk // 2000 - Dance Dance Revolution 3rd Mix - Ver.Korea2 (GN887 VER. KBA) +ddr3mka // 2000 - Dance Dance Revolution 3rd Mix - Ver.Korea (GN887 VER. KAA) +ddr3ma // 1999 - Dance Dance Revolution 3rd Mix (GN887 VER. AAA) +ddr3mj // 1999 - Dance Dance Revolution 3rd Mix (GN887 VER. JAA) +ddrsbm // 1999 - Dance Dance Revolution Solo Bass Mix (GQ894 VER. JAA) +ddrs2k // 1999 - Dance Dance Revolution Solo 2000 (GC905 VER. AAA) +ddrs2kj // 1999 - Dance Dance Revolution Solo 2000 (GC905 VER. JAA) +hyperbbc // 1999 - Hyper Bishi Bashi Champ (GX908 1999/08/24 VER. JAA) +hyperbbck // 1999 - Hyper Bishi Bashi Champ (GX908 1999/08/24 VER. KAA) +dsfdct // 1999 - Dancing Stage featuring Dreams Come True (GC910 VER. JCA) +dsfdcta // 1999 - Dancing Stage featuring Dreams Come True (GC910 VER. JAA) +drmn2m // 1999 - DrumMania 2nd Mix (GE912 VER. JAB) +drmn2mpu // 1999 - DrumMania 2nd Mix Session Power Up Kit (GE912 VER. JAB) +dncfrks // 2000 - Dance Freaks (G*874 VER. KAA) +dmx // 2000 - Dance Maniax (G*874 VER. JAA) +gunmania // 2000 - GunMania (GL906 VER. JAA) +fghtmn // 2000 - Fighting Mania (QG918 VER. EAA) +fghtmna // 2000 - Fighting Mania (QG918 VER. AAA) +pnchmn // 2000 - Punch Mania: Hokuto No Ken (GQ918 VER. JAB) +pnchmna // 2000 - Punch Mania: Hokuto No Ken (GQ918 VER. JAB, ALT CD) +fghtmnk // 2000 - Fighting Mania (QG918 VER. KAA) +fghtmnu // 2000 - Fighting Mania (QG918 VER. IAA) +dsem // 2000 - Dancing Stage Euro Mix (G*936 VER. EAA) +gtrfrk3m // 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAC) +gtfrk3ma // 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAB) +gtfrk3mb // 2000 - Guitar Freaks 3rd Mix - security cassette versionup (949JAZ02) +pnchmn2 // 2000 - Punch Mania 2: Hokuto No Ken (GQA09 JAA) +salarymc // 2000 - Salary Man Champ (G*A18 VER. JAA) +ddr3mp // 2000 - Dance Dance Revolution 3rd Mix Plus (G*A22 VER. JAA) +pcnfrk3m // 2000 - Percussion Freaks 3rd Mix (G*A23 VER. KAA) +drmn3m // 2000 - DrumMania 3rd Mix (G*A23 VER. JAA) +gtrfrk4m // 2000 - Guitar Freaks 4th Mix (G*A24 VER. JAA) +drmn4m // 2000 - DrumMania 4th Mix (G*A25 VER. JAA) +ddr4m // 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. AAA) +ddr4mj // 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. JAA) +ddr4ms // 2000 - Dance Dance Revolution Solo 4th Mix (G*A33 VER. ABA) +ddr4msj // 2000 - Dance Dance Revolution Solo 4th Mix (G*A33 VER. JBA) +dsfdr // 2000 - Dancing Stage Featuring Disney's Rave (GCA37JAA) +ddrusa // 2000 - Dance Dance Revolution USA (G*A44 VER. UAA) +ddr4mp // 2000 - Dance Dance Revolution 4th Mix Plus (G*A34 VER. JAA) +ddr4mps // 2000 - Dance Dance Revolution 4th Mix Plus Solo (G*A34 VER. JAA) +dmx2m // 2000 - Dance Maniax 2nd Mix (G*A39 VER. JAA) +gtrfrk5m // 2001 - Guitar Freaks 5th Mix (G*A26 VER. JAA) +ddr5m // 2001 - Dance Dance Revolution 5th Mix (G*A27 VER. JAA) +dmx2majp // 2001 - Dance Maniax 2nd Mix Append J-Paradise (G*A38 VER. JAA +mamboagg // 2001 - Mambo A Go-Go (GQA40 VER. JAB) +drmn5m // 2001 - DrumMania 5th Mix (G*B05 VER. JAA) +gtrfrk6m // 2001 - Guitar Freaks 6th Mix (G*B06 VER. JAA) +drmn6m // 2001 - DrumMania 6th Mix (G*B16 VER. JAA) +gtrfrk7m // 2001 - Guitar Freaks 7th Mix (G*B17 VER. JAA) +ddrmax // 2001 - DDR Max - Dance Dance Revolution 6th Mix (G*B19 VER. JAA) +ddrmax2 // 2002 - DDR Max 2 - Dance Dance Revolution 7th Mix (G*B20 VER. JAA) +mrtlbeat // 2002 - Martial Beat (Martial Beat (G*B47 VER. JBA) +drmn7m // 2002 - DrumMania 7th Mix power-up ver. (G*C07 VER. JBA) +drmn7ma // 2002 - DrumMania 7th Mix (G*C07 VER. JAA) +gtrfrk8m // 2002 - Guitar Freaks 8th Mix power-up ver. (G*C08 VER. JBA) +gtrfrk8ma // 2002 - Guitar Freaks 8th Mix (G*C08 VER. JAA) +dsem2 // 2002 - Dancing Stage Euro Mix 2 (G*C23 VER. EAA) +ddrextrm // 2002 - Dance Dance Revolution Extreme (G*C36 VER. JAA) +drmn8m // 2003 - DrumMania 8th Mix (G*C38 VER. JAA) +gtrfrk9m // 2003 - Guitar Freaks 9th Mix (G*C39 VER. JAA) +drmn9m // 2003 - DrumMania 9th Mix (G*D09 VER. JAA) +gtfrk10m // 2003 - Guitar Freaks 10th Mix (G*D10 VER. JAB) +gtfrk10ma // 2003 - Guitar Freaks 10th Mix (G*D10 VER. JAA) +gtfrk10mb // 2003 - Guitar Freaks 10th Mix eAmusement (G*D10 VER. JBA) +gtfrk11m // 2004 - Guitar Freaks 11th Mix (G*D39 VER. JAA) +drmn10m // 2004 - DrumMania 10th Mix (G*D40 VER. JAA) + +// Konami Twinkle games +gq863 +bmiidx +bmiidxc +bmiidxca +bmiidxc2 +bmiidx3 +bmiidx4 +bmiidx6 +bmiidx7 +bmiidx8 + +// Konami Viper games +kviper // 1999 +ppp2nd // 2001 +boxingm // 2001 +code1d // 2000 +code1db // 2000 +gticlub2 // 2001 +gticlub2ea // 2001 +jpark3 // 2001 +mocapglf // 2001 +mocapb // 2001 +mocapbj // 2001 +p911 // 2001 +p911uc // 2001 +p911kc // 2001 +p911e // 2001 +p911j // 2001 +p9112 // 2001 +popn9 // 2003 +sscopex // 2001 +sogeki // 2001 +thrild2 // 2001 +thrild2a // 2001 +thrild2c // 2001 +tsurugi // 2001 +tsurugij // 2001 +wcombat // 2002 +wcombatk // 2002 +wcombatj // 2002 +xtrial // 2002 +mfightc // 2002 +mfightcc // 2002 + +// Mitchell games +mgakuen // (c) 1988 Yuga +7toitsu // (c) 1988 Yuga +mgakuen2 // (c) 1989 Face +pkladies // (c) 1989 Mitchell +pkladiesl // (c) 1989 Leprechaun +pkladiesla // (c) 1989 Leprechaun +pkladiesbl // bootleg +dokaben // 3/1989 (c) 1989 Capcom (Japan) + // 8/1989 Dokaben 2 (baseball) +pang // (c) 1989 Mitchell (World) +pangb // bootleg +pangbold // bootleg +pangba // bootleg +bbros // (c) 1989 Capcom (US) not listed on Capcom's site +pompingw // (c) 1989 Mitchell (Japan) +cbasebal // 10/1989 (c) 1989 Capcom (Japan) (different hardware) +cworld // 11/1989 (QUIZ 1) (c) 1989 Capcom +hatena // 28/02/1990 (QUIZ 2) (c) 1990 Capcom (Japan) +spang // 14/09/1990 (c) 1990 Mitchell (World) +spangj // --/--/1990 (c) 1990 Mitchell (Japan) +spangbl // bootleg +sbbros // 01/10/1990 (c) 1990 Mitchell + Capcom (US) not listed on Capcom's site +marukin // 17/10/1990 (c) 1990 Yuga (Japan) +qtono1 // 25/12/1990 (QUIZ 3) (c) 1991 Capcom (Japan) + // 4/1991 Ashita Tenki ni Naare (golf) +qsangoku // 07/06/1991 (QUIZ 4) (c) 1991 Capcom (Japan) +block // 10/09/1991 (c) 1991 Capcom (World) +blockj // 10/09/1991 (c) 1991 Capcom (Japan) +blockjoy // 06/11/1991 (c) 1991 Capcom (World) (Joystick version, bad dump?) +blockbl // bootleg + +// Incredible Technologies games +// http://www.itsgames.com +capbowl // (c) 1988 Incredible Technologies +capbowl2 // (c) 1988 Incredible Technologies +capbowl3 // (c) 1988 Incredible Technologies +capbowl4 // (c) 1989 Incredible Technologies +clbowl // (c) 1989 Incredible Technologies +bowlrama // (c) 1991 P & P Marketing +wfortune // (c) 1989 GameTek +wfortunea // (c) 1989 GameTek +grmatch // (c) 1989 GameTek +stratab // (c) 1990 Strata/Incredible Technologies +stratab1 // (c) 1990 Strata/Incredible Technologies +sstrike // (c) 1990 Strata/Incredible Technologies +gtg // (c) 1990 Strata/Incredible Technologies +gtgt // (c) 1990 Strata/Incredible Technologies +gtgt1 // (c) 1990 Strata/Incredible Technologies +hstennis // (c) 1990 Strata/Incredible Technologies +hstennis10 // (c) 1990 Strata/Incredible Technologies +slikshot // (c) 1990 Grand Products/Incredible Technologies +slikshot17 // (c) 1990 Grand Products/Incredible Technologies +slikshot16 // (c) 1990 Grand Products/Incredible Technologies +dynobop // (c) 1990 Grand Products/Incredible Technologies +arlingtn // (c) 1991 Strata/Incredible Technologies +peggle // (c) 1991 Strata/Incredible Technologies +pegglet // (c) 1991 Strata/Incredible Technologies +pokrdice // (c) 1991 Strata/Incredible Technologies +rimrockn // (c) 1991 Strata/Incredible Technologies +rimrockn20 // (c) 1991 Strata/Incredible Technologies +rimrockn16 // (c) 1991 Strata/Incredible Technologies +rimrockn12 // (c) 1991 Strata/Incredible Technologies +ninclown // (c) 1991 Strata/Incredible Technologies +gpgolf // (c) 1992 Strata/Incredible Technologies +gtg2 // (c) 1992 Strata/Incredible Technologies +gtg2t // (c) 1989 Strata/Incredible Technologies +gtg2j // (c) 1991 Strata/Incredible Technologies +neckneck // (c) 1992 Bundra Games/Incredible Technologies +timekill // (c) 1992 Strata/Incredible Technologies +timekill131 // (c) 1992 Strata/Incredible Technologies +timekill121 // (c) 1992 Strata/Incredible Technologies +hardyard // (c) 1993 Strata/Incredible Technologies +hardyard10 // (c) 1993 Strata/Incredible Technologies +bloodstm // (c) 1994 Strata/Incredible Technologies +bloodstm22 // (c) 1994 Strata/Incredible Technologies +bloodstm21 // (c) 1994 Strata/Incredible Technologies +bloodstm11 // (c) 1994 Strata/Incredible Technologies +pairs // (c) 1994 Strata/Incredible Technologies +pairsa // (c) 1994 Strata/Incredible Technologies +hotmemry // (c) 1994 Tuning/Incredible Technologies +hotmemry11 // (c) 1994 Tuning/Incredible Technologies +drivedge // (c) 1994 Strata/Incredible Technologies +wcbowl // (c) 1995 Incredible Technologies +wcbowl165 // (c) 1995 Incredible Technologies +wcbowl161 // (c) 1995 Incredible Technologies +wcbowl16 // (c) 1995 Incredible Technologies +wcbowl140 // (c) 1995 Incredible Technologies +wcbowl15 // (c) 1995 Incredible Technologies +wcbowl14 // (c) 1995 Incredible Technologies +wcbowl13 // (c) 1995 Incredible Technologies +wcbowl12 // (c) 1995 Incredible Technologies +sftm // (c) 1995 Capcom/Incredible Technologies +sftm110 // (c) 1995 Capcom/Incredible Technologies +sftm111 // (c) 1995 Capcom/Incredible Technologies +sftmj // (c) 1995 Capcom/Incredible Technologies +shufshot // (c) Strata/Incredible Technologies +shufshot139 // (c) Strata/Incredible Technologies +shufshot137 // (c) Strata/Incredible Technologies +wcbowldx // (c) 1999 Incredible Technologies + +gt3d // (c) 1995 Incredible Technologies +gt3dl192 // (c) 1995 Incredible Technologies +gt3dl191 // (c) 1995 Incredible Technologies +gt3ds192 // (c) 1995 Incredible Technologies +gt3dv18 // (c) 1995 Incredible Technologies +gt3dv17 // (c) 1995 Incredible Technologies +gt3dv16 // (c) 1995 Incredible Technologies +gt3dv15 // (c) 1995 Incredible Technologies +gt3dv14 // (c) 1995 Incredible Technologies +gt3dt231 // (c) 1995 Incredible Technologies +gt3dt211 // (c) 1995 Incredible Technologies +gt97 // (c) 1997 Incredible Technologies +gt97v122 // (c) 1997 Incredible Technologies +gt97v121 // (c) 1997 Incredible Technologies +gt97s121 // (c) 1997 Incredible Technologies +gt97v120 // (c) 1997 Incredible Technologies +gt97t240 // (c) 1997 Incredible Technologies +gt97t243 // (c) 1997 Incredible Technologies +gt98 // (c) 1998 Incredible Technologies +gt98v100 // (c) 1998 Incredible Technologies +gt98s100 // (c) 1998 Incredible Technologies +gt98t303 // (c) 1998 Incredible Technologies +gt99 // (c) 1999 Incredible Technologies +gt99s100 // (c) 1999 Incredible Technologies +gt99t400 // (c) 1999 Incredible Technologies +gtroyal // (c) 1999 Incredible Technologies +gt2k // (c) 2000 Incredible Technologies +gt2kp100 // (c) 2000 Incredible Technologies +gt2ks100 // (c) 2000 Incredible Technologies +gt2kt500 // (c) 2000 Incredible Technologies +gtsuprem // (c) 2000 Incredible Technologies +gtclassc // (c) 2001 Incredible Technologies +gtclasscp // (c) 2001 Incredible Technologies +gtclasscs // (c) 2001 Incredible Technologies + +// Leland games +cerberus // (c) 1985 Cinematronics +mayhem // (c) 1985 Cinematronics +powrplay // (c) 1985 Cinematronics +wseries // (c) 1985 Cinematronics +alleymas // (c) 1986 Cinematronics +upyoural // (c) 1987 Cinematronics +dangerz // (c) 1986 Cinematronics USA +basebal2 // (c) 1987 Cinematronics +dblplay // (c) 1987 Tradewest / Leland +strkzone // (c) 1988 Leland +redlin2p // (c) 1987 Cinematronics + Tradewest license +quarterb // (c) 1987 Leland +quarterba // (c) 1987 Leland +viper // (c) 1988 Leland +teamqb // (c) 1988 Leland +teamqb2 // (c) 1988 Leland +aafb // (c) 1989 Leland +aafbd2p // (c) 1989 Leland +aafbc // (c) 1989 Leland +aafbb // (c) 1989 Leland +offroad // (c) 1989 Leland +offroadt // (c) 1989 Leland +offroadt2p // (c) 1989 Leland +pigout // (c) 1990 Leland +pigouta // (c) 1990 Leland +ataxx // (c) 1990 Leland +ataxxa // (c) 1990 Leland +ataxxe // (c) 1990 Leland +ataxxj // (c) 1990 Leland +wsf // (c) 1990 Leland +indyheat // (c) 1991 Leland +brutforc // (c) 1991 Leland +asylum // (c) 1991 Leland + +// Gremlin 8080 games +// the numbers listed are the range of ROM part numbers +blockade // 1-4 [1977 Gremlin] +comotion // 5-7 [1977 Gremlin] +hustle // 16-21 [1977 Gremlin] +blasto // [1978 Gremlin] +mineswpr // [1977 Amutech] +mineswpr4 // [1977 Amutech] + +// Gremlin/Sega "VIC dual game board" games +// the numbers listed are the range of ROM part numbers +depthch // 50-55 [1977 Gremlin?] +depthcho // ? [1977 Gremlin?] +subhunt // ? [1977 Taito] +safari // 57-66 [1977 Gremlin?] +safaria // bootleg? +frogs // 112-119 [1978 Gremlin?] +sspaceat // 155-162 (c) +sspaceat2 // 155-162 (c) 1979 Sega +sspaceat3 // 155-162 (c) 1979 Sega +sspaceatc // 139-146 (c) +sspacaho // ? epr00001.bin - epr00008.bin +headon // 163-167/192-193 (c) Gremlin +headonb // 163-167/192-193 (c) Gremlin +headons // Sidam bootleg +headonsa // Sidam bootleg +supcrash // bootleg +headon2 // ???-??? (c) 1979 Sega +headon2s // Sidam bootleg +car2 // bootleg + // ???-??? Fortress + // ???-??? Gee Bee + // 255-270 Head On 2 / Deep Scan +invho2 // 271-286 (c) 1979 Sega +nsub // 268-275 (c) 1980 Sega +samurai // 289-302 + upgrades (c) 1980 Sega +invinco // 310-318 (c) 1979 Sega +invds // 367-382 (c) 1979 Sega +tranqgun // 413-428 (c) 1980 Sega + // 450-465 Tranquilizer Gun (different version?) + // ???-??? Car Hunt / Deep Scan +spacetrk // 630-645 (c) 1980 Sega +spacetrkc // (c) 1980 Sega +carnival // 651-666 (c) 1980 Sega +carnivalc // 501-516 (c) 1980 Sega +carnivalh +carnivalha +brdrline // (c) 1980 Sega +starrkr // (c) 1981 Sega +brdrlins // Sidam bootleg +brdrlinb // Karateco bootleg +digger // 684-691 no copyright notice +pulsar // 790-805 (c) 1981 Sega +heiankyo // (c) [1979?] Denki Onkyo +alphaho // Data East + +// Sega G-80 vector games +spacfury // (c) 1981 +spacfurya // no copyright notice +spacfuryb // no copyright notice +zektor // (c) 1982 +tacscan // (c) 1982 +elim2 // (c) 1981 Gremlin +elim2a // (c) 1981 Gremlin +elim2c // (c) 1981 Gremlin +elim4 // (c) 1981 Gremlin +elim4p // (c) 1981 Gremlin +startrek // (c) 1982 + +// Sega G-80 raster games +astrob // (c) 1981 +astrob2 // (c) 1981 +astrob2a // (c) 1981 +astrob1 // (c) 1981 +astrobg // (c) 1981 +005 // (c) 1981 +monsterb // (c) 1982 +monsterb2 // (c) 1982 +spaceod // (c) 1981 +spaceod2 // (c) 1981 +pignewt // (c) 1983 +pignewta // (c) 1983 +sindbadm // 834-5244 (c) 1983 Sega + +// Sega "Zaxxon hardware" games +zaxxon // (c) 1982 +zaxxonj // (c) 1982 +zaxxon2 // (c) 1982 +zaxxon3 // (c) 1982 +zaxxonb // bootleg +szaxxon // (c) 1982 +futspy // (c) 1984 +razmataz // modified 834-0213, 834-0214 (c) 1983 +ixion // (c) 1983 +congo // 605-5167 (c) 1983 +tiptop // 605-5167 (c) 1983 + +// Sega "LaserDisc hardware" games +astron // (c) 1983 +astronp // (c) 1983 +galaxyr // (c) 1983 +galaxyrp // (c) 1983 +sblazerp // (c) 1983 +cobraseg // (c) ???? +gpworld // (c) 1984 +timetrv // (c) 1991.10 Virtual Image Productions + +// Sega SG1000 based games +chboxing // (c) 1984 +chwrestl // (c) 1985 +dokidoki // (c) 1985 + +// Sega System 1 / System 2 games +starjack // 834-5191 (c) 1983 (S1) +starjacks // (c) 1983 Stern (S1) +regulus // 834-5328?(c) 1983 (S1) +reguluso // 834-5328?(c) 1983 (S1) +regulusu // 834-5328?(c) 1983 (S1) +upndown // (c) 1983 (S1) +upndownu // (c) 1983 (S1) +mrviking // 834-5383 (c) 1984 (S1) +mrvikingj // 834-5383 (c) 1984 (S1) +swat // 834-5388 (c) 1984 Coreland / Sega (S1) +flicky // (c) 1984 (S1) +flickys2 // (c) 1984 (S1) +flickyo // (c) 1984 (S1) +flickys1 // (c) 1984 (S1) +wmatch // (c) 1984 (S1) +bullfgt // 834-5478 (c) 1984 Sega / Coreland (S1) +thetogyu // 834-5478 (c) 1984 Sega / Coreland (S1) +spatter // 834-5583 (c) 1984 (S1) +ssanchan // 834-5583 (c) 1984 (S1) +pitfall2 // 834-5627 [1985?] reprogrammed, (c) 1984 Activision (S1) +pitfall2a // 834-5627 [1985?] reprogrammed, (c) 1984 Activision (S1) +pitfall2u // 834-5627 [1985?] reprogrammed, (c) 1984 Activision (S1) +seganinj // 834-5677 (c) 1985 (S1) +seganinju // 834-5677 (c) 1985 (S1) +ninja // 834-5677 (c) 1985 (S1) +nprinces // 834-5677 (c) 1985 (S1) +nprinceso // 834-5677 (c) 1985 (S1) +nprincesu // 834-5677 (c) 1985 (S1) +nprincesb // bootleg? (S1) +imsorry // 834-5707 (c) 1985 Coreland / Sega (S1) +imsorryj // 834-5707 (c) 1985 Coreland / Sega (S1) +teddybb // 834-5712 (c) 1985 (S1) +teddybbo // 834-5712 (c) 1985 (S1) +hvymetal // 834-5745 (c) 1985 (S2?) +myhero // 834-5755 (c) 1985 (S1) +sscandal // 834-5755 (c) 1985 Coreland / Sega (S1) +myherok // 834-5755 (c) 1985 Coreland / Sega (S1) +shtngmst // 834-5719/5720 (c) 1985 (S2) +shtngmste // 834-5719/5720 (c) 1985 (S2) +choplift // 834-5795 (c) 1985, (c) 1982 Dan Gorlin (S2) +chopliftu // 834-5795 (c) 1985, (c) 1982 Dan Gorlin (S2) +chopliftbl // bootleg (S2) +4dwarrio // 834-5918 (c) 1985 Coreland / Sega (S1) +brain // (c) 1986 Coreland / Sega (S2?) +raflesia // 834-5753 (c) 1985 Coreland / Sega (S1) +wboy // 834-5984 (c) 1986 + Escape license (S1) +wboyo // 834-5984 (c) 1986 + Escape license (S1) +wboy2 // 834-5984 (c) 1986 + Escape license (S1) +wboy2u // 834-5984 (c) 1986 + Escape license (S1) +wboy3 // 834-5984 (c) 1986 + Escape license (S1) +wboy4 // 834-5984 (c) 1986 + Escape license (S1) +wboyu // 834-5753 (? maybe a conversion) (c) 1986 + Escape license (S1) +wbdeluxe // (c) 1986 + Escape license (S1) +wboysys2 // 834-5984 (c) 1986 + Escape license (S1) +gardia // 834-6119 (S2?) +gardiab // bootleg +nob // (c) Data East +nobb // bootleg +blockgal // 834-6303 (S1) +blockgalb // bootleg +tokisens // (c) 1987 (from a bootleg board) (S2) +wbml // bootleg (S2) +wbmljo // (c) 1987 Sega/Westone (S2) +wbmljb // (c) 1987 Sega/Westone (S2) +wbmlb // bootleg? (S2) +wbmlbg // bootleg (Galaxy Electronics) +dakkochn // 836-6483? (S2) +ufosensi // 834-6659 (S2) +ufosensib // bootleg +/* +other System 1 / System 2 games: + +WarBall +DokiDoki Penguin Land *not confirmed +*/ + +// Sega System E games (Master System hardware) +hangonjr // (c) 1985 +transfrm // 834-5803 (c) 1986 +astrofl // 834-5803 (c) 1986 +ridleofp // (c) 1986 Sega / Nasco +fantzn2 // (c) 1988 +opaopa +tetrisse // (c) 1988 + +// other Sega 8-bit games +turbo // (c) 1981 Sega +turboa // (c) 1981 Sega +turbob // (c) 1981 Sega +subroc3d // (c) 1982 Sega +buckrog // (c) 1982 Sega +buckrogn // (c) 1982 Sega +buckrogn2 // (c) 1982 Sega +zoom909 // (c) 1982 Sega +kopunch // 834-0103 (c) 1981 Sega +suprloco // (c) 1982 Sega +suprlocoa // (c) 1982 Sega +dotrikun // cabinet test board +dotrikun2 // cabinet test board +spcpostn // (c) 1986 Sega / Nasco" +angelkds // 833-6599 (c) 1988 Sega / Nasco? +calorie // (c) 1986 Sega +calorieb // (c) 1986 Sega (but bootleg) + +// Bingo-based games +bingoc // (c) 1989 Sega +// Bingo Fantasy // (c) 19?? Sega +// Bingo Star // (c) 19?? Sega +// Bingo Party // (c) 1993 Sega +// BP Phoenix // (c) 1998 Sega +// BP Special // (c) 2000 Sega +// BP Multicards // (c) 2002 Sega +// BP Splash // (c) 2002 Sega +// Bingo Planet // (c) 1997 Sega + +// Enduro Racer / Space Harrier / Hang On +enduror // (c) 1985 (FD1089B, decrypted) +enduror1 // (c) 1985 (FD1089B, decrypted) +endurob2 // (c) 1985 (Beta bootleg) +endurobl // (c) 1985 (Herb bootleg) +hangon // (c) 1985 (Rev A) +hangon1 // (c) 1985 +sharrier // (c) 1985 +sharrier1 // (c) 1985 +shangonro // (c) 1987 (FD1094, decrypted) +shangonrb // (c) 1992 (but bootleg, hangon hw?) + +// Pre-16 +aliensynjo // (c) 1987 (FD1089A, decrypted) +aliensyn2 // (c) 1987 (FD1089A, decrypted) +aliensyn5 // (c) 1987 (FD1089B) +bodyslam // (c) 1986 (8751) +dumpmtmt // (c) 1986 (Japan) +mjleague // (c) 1985 +quartet // (c) 1986 (8751) +quarteta // (c) 1986 (8751) +quartet2 // (c) 1986 (8751) +quartet2a // (c) 1986 + +// System 16A +aceattaca // (c) 1988 (FD1094, decrypted) +afighter // (c) 1986 (FD1089A, decrypted) +alexkidd // (c) 1986 (FD1089A, decrypted) +alexkidd1 // (c) 1986 +fantzone // (c) 1986 (Unprotected Rev A) +fantzone1 // (c) 1986 (Unprotected) +fantzonep // (c) 1986 (NEC 0317-5000, encrypted) +sdi // (c) 1987 (FD1089B, decrypted) +shinobi // (c) 1987 +shinobi1 // (c) 1987 (FD1094, decrypted) +shinobls // (c) 1987 (Star bootleg) +sjryuko1 // (c) 1988 White Board (FD1089B, decrypted) +tetris // (c) 1988 (FD1094, decrypted) S16A +tetris3 // (c) 1988 (FD1094, decrypted) S16A +timescan1 // (c) 1987 (FD1089B, decrypted) +wb31 // (c) 1988 Sega / Westone (FD1094, decrypted) +wb35 // (c) 1988 Sega / Westone (FD1089A, decrypted) +wb35a // (c) 1988 Sega / Westone (FD1089A, decrypted) +passsht16a // (c) 1988 + +// System 16B +aceattac // (c) 1988 (protected) +aliensyn // (c) 1987 +aliensyn3 // (c) 1987 (FD1089A, decrypted) +aliensynj // (c) 1987 (FD1089A, decrypted) +altbeast // (c) 1988 (8751) +altbeastj // (c) 1988 (8751) +altbeast5 // (c) 1988 (8751) +altbeast4 // (c) 1988 (MC-8123B) +altbeast2 // (c) 1988 (MC-8123B) +altbeastj1 // (c) 1988 (protected) +altbeastj2 // (c) 1988 (protected) +altbeastj3 // (c) 1988 (FD1094, decrypted) +aurail // (c) 1990 Sega / Westone +aurail1 // (c) 1990 Sega / Westone (FD1089B, decrypted) +aurailj // (C) 1990 Sega / Westone (FD1089A, decrypted) +bayroute // (c) 1989 Sunsoft / Sega (FD1094, decrypted) +bayroutej // (c) 1989 Sunsoft / Sega (FD1094, decrypted) +bayroute1 // (c) 1989 Sunsoft / Sega +bullet // (c) 1987 (protected) +cotton // (c) 1990 (FD1094, decrypted) +cottonu // (c) 1990 (FD1094, decrypted) +cottonj // (c) 1990 (FD1094, decrypted) +ddux // (c) 1989 (FD1094, decrypted) +ddux1 // (c) 1989 (8751) +dunkshot // (c) 1986 (FD1094, decrypted) +eswat // (c) 1989 (FD1094, decrypted) +eswatu // (c) 1989 (FD1094, decrypted) +eswatj // (c) 1989 (FD1094, decrypted) +exctleag // (protected) +fpoint // (c) 1989 (Japan, FD1094, decrypted) +fpoint1 // (c) 1989 (Japan, FD1094, decrypted) +goldnaxe // (c) 1989 (8751) +goldnaxeu // (c) 1989 (protected) +goldnaxej // (c) 1989 (FD1094, decrypted) +goldnaxe3 // (c) 1989 (FD1094, decrypted) +goldnaxe2 // (c) 1989 (8751) +goldnaxe1 // (c) 1989 (FD1094, decrypted) +hwchamp // (c) 1987 +hwchampj // (c) 1987 (FD1094, decrypted) +mvp // (c) 1989 (FD1094, decrypted) +mvpj // (c) 1989 (FD1094, decrypted) +passsht // (c) 1988 (FD1094, decrypted) +passshta // (c) 1988 (FD1094, decrypted) +passshtj // (c) 1988 (FD1094, decrypted) +riotcity // (c) 1991 Sega / Westone +ryukyu // (c) 1990 (FD1094, decrypted) +sdib // (c) 1987 (FD1089A, decrypted) +sdibl // (c) 1987 bootleg +defense // (c) 1987 (FD1094, decrypted) +shinobi5 // (c) 1987 +shinobi4 // (c) 1987 (MC-8123B) +shinobi3 // (c) 1987 (MC-8123B) +shinobi2 // (c) 1987 (FD1094, decrypted) +sonicbom // (c) 1987 (FD1094, decrypted) +sjryuko // (c) 1988 White Board (FD1094, decrypted) +suprleag // (c) 1987 (protected) +tetris2 // (c) 1988 (FD1094, decrypted) S16B +tetris1 // (c) 1988 (FD1094, decrypted) S16B +timescan // (c) 1987 +toryumon // (c) 1995 +tturf // (c) 1989 Sega / Sunsoft (8751) +tturfu // (c) 1989 Sega / Sunsoft (8751) +wb3 // (c) 1988 Sega / Westone (8751) +wb34 // (c) 1988 Sega / Westone (FD1094, decrypted) +wb33 // (c) 1988 Sega / Westone (FD1094, decrypted) +wb32 // (c) 1988 Sega / Westone (FD1094, decrypted) +wrestwar // (c) 1989 (8751) +wrestwar2 // (c) 1989 (FD1094, decrypted) +wrestwar1 // (c) 1989 (FD1094, decrypted) + +// Philko Boards +atomicp // (c) 1990 Philko - korean clone board +snapper // (c) 1990 Philko - korean clone board + +// S16 Bootlegs +bayrouteb1 // (c) 1989 (protected) (bootleg) +bayrouteb2 // (c) 1989 (protected) (bootleg) +dduxbl // (c) 1989 (Datsu bootleg) +eswatbl // BOOTLEG +fpointbl // (c) 1989 (Datsu bootleg) +fpointbj // (c) 1989 (Datsu bootleg, Japan) +goldnaxeb1 // BOOTLEG +goldnaxeb2 // BOOTLEG +passht4b // bootleg +passshtb // bootleg +shinoblb // (c) 1987 (but bootleg) +shinobld // (c) 1987 (but bootleg) +tetrisbl // (c) 1988 (but bootleg) +beautyb // (c) 1991 AMT +iqpipe // (c) 1991 AMT +tturfbl // (c) 1989 (Datsu bootleg) +wb3bbl // BOOTLEG + +// ISG S16 bootleg system +isgsm +tetrbx +shinfz + +// System 18 +shdancer // 1989.05 Shadow Dancer (US) +shdancerj // 1989.11 Shadow Dancer (Japan) +shdancer1 // 1989.?? Shadow Dancer (World) +bloxeed // 1989.12 Bloxeed (Japan, FD1094, decrypted) + // 1990.04 Bloxeed (US) +astormu // 1990.04 Alien Storm (US, FD1094, decrypted) +astormj // 1990.05 Alien Storm (Japan, FD1094, decrypted) +astorm // 1990.?? Alien Storm (World, protected 2 Players) +astorm3 // 1990.?? Alien Storm (World, FD1094, decrypted) +mwalku // 1990.08 Micheal Jackson's Moonwalker (US, FD1094+8751, decrypted) +mwalkj // 1990.08 Micheal Jackson's Moonwalker (Japan, FD1094+8751, decrypted) +mwalk // 1990.?? Micheal Jackson's Moonwalker (World, FD1094+8751, decrypted) +lghost // 1990.?? Laser Ghost (World, FD1094, decrypted) + // 1990.12 Laser Ghost (Japan) +lghostu // 1991.01 Laser Ghost (US, FD1094, decrypted) +cltchitr // 1991.02 Clutch Hitter (US, FD1094, decrypted) +cltchitrj // 1991.05 Clutch Hitter (Japan, FD1094, decrypted) +ddcrewj // 1991.07 D.D.Crew (Japan, FD1094, decrypted) +ddcrewu // 1991.09 D.D.Crew (US, FD1094, decrypted) +ddcrew // 1991.?? D.D.Crew (World, FD1094, decrypted) +ddcrew2 // 1991.?? D.D.Crew (World, FD1094, decrypted) +ddcrew1 // 1991.?? D.D.Crew (World, FD1094, decrypted) +wwallyj // 1992.06 Wally wo Sagase! (Japan, FD1094, decrypted) +wwallyja // 1992.06 Wally wo Sagase! (Japan, FD1094, decrypted) +desertbr // 1993.?? Desert Breaker (World, FD1094, decrypted) +desertbrj // 1992.10 Desert Breaker (Japan) +pontoon + +// System18 Bootlegs +astormbl // BOOTLEG +astormb2 // BOOTLEG +shdancbl // BOOTLEG +mwalkbl // BOOTLEG + + +// Outrun Hardware + // 1986.09 Outrun (Japan) + // 1986.11 Outrun (US) + // 1986.?? Outrun (World) +outrun // Revision B +outrunra // Revision A +outruno // First version +outrundx // Deluxe version +outrunb // 1986 (protected beta bootleg) + // 1987.04 Super Hang-On (Japan) + // 1987.06 Super Hang-On (US) + // 1987.?? Super Hang-On (World) +shangon // 1987 (protected) +shangon3 // 1987 (FD1089B, decrypted) +shangon2 // 1987 (FD1089B, decrypted) +shangon1 // 1987 (FD1089B, decrypted) +shangonle // 1991 + // 1989.02 Turbo Outrun (Japan) + // 1989.04 Turbo Outrun (US) + // 1989.?? Turbo Outrun (World) +toutrun // 1987 (FD1094, decrypted) +toutrun3 // 1987 (FD1094, decrypted) +toutrun2 // 1987 (protected) +toutrun1 // 1987 (FD1094, decrypted) + +// X Board +aburner // 1987.07 After Burner (Japan) +aburner2 // 1987.09 After Burner II (Japan) +thndrbld1 // 1987.12 Thunder Blade (Japan, deluxe/standard) +thndrbld // 1988.02 Thunder Blade (US?, upright, FD1094, decrypted) + // 1989.01 Last Survivor (Japan) +smgpj // 1989.06 Super Monaco GP (Japan, FD1094, decrypted) +smgpja // 1989.06 Super Monaco GP (Japan, FD1094, decrypted) +smgp // 1989.?? Super Monaco GP (World, FD1094, decrypted) +smgp6 // 1989.?? Super Monaco GP (World, FD1094, decrypted) +smgp5 // 1989.?? Super Monaco GP (World, FD1094, decrypted) +smgpu // 1989.08 Super Monaco GP (US, FD1094, decrypted) +smgpu3 // 1989.08 Super Monaco GP (US, FD1094, decrypted) +smgpu2 // 1989.08 Super Monaco GP (US, FD1094, decrypted) +smgpu1 // 1989.08 Super Monaco GP (US, FD1094, decrypted) +loffirej // 1989.12 Line of Fire (Japan, FD1094, decrypted) +loffire // 1989.?? Line of Fire (World, FD1094, decrypted) +loffireu // 1990.04 Line of Fire (US, FD1094, decrypted) + // 1990.03 Racing Hero (Japan) +rachero // 1990.?? Racing Hero (World, FD1094, decrypted) +abcop // 1990.?? A.B.Cop (World, FD1094, decrypted) + // 1991.01 A.B.Cop (Japan) + // 1990.10 GP Rider (Japan) +gprider // 1990.?? GP Rider (World, protected) +gprider1 // 1990.12 GP Rider (US, FD1094, decrypted) + +// Y-Board + // 1988.05 Galaxy Force (Japan) + // 1988.08 Galaxy Force (US) +gforce2j // 1988.07 Galaxy Force II (Japan) +gforce2ja // 1988.07 Galaxy Force II (Japan) +gforce2 // 1988.?? Galaxy Force II (World) + // 1988.12 Galaxy Force II (US) + // 1988.08 Power Drift (US) +pdriftj // 1988.09 Power Drift (Japan) +pdrift // 1988.?? Power Drift (World) +pdrifta +pdrifte +gloc // 1990.04 G-LOC Air Battle (US) + // 1990.05 G-LOC Air Battle (Japan) +glocr360 // 1990.?? G-LOC (R360, World?) +strkfgtr // 1991.06 Strike Fighter (Japan) +rchase // 1991.09 Rail Chase (World) +rchasej // 1991.09 Rail Chase (Japan) + // 1991.09 Rail Chase (US) + +// Sega System 24 games +// disk based +hotrodj // 1988.03 Hot Rod (Japan) +hotrod // 1988.?? Hot Rod (World) +hotroda + // 1988.07 Hot Rod (US) +sspiritj // 1988.10 Scramble Spirits (Japan) +sspirits // 1988.?? Scramble Spirits (World) +sspirtfc // 1988.?? Scramble Spirits (protected) + // 1988.11 Scramble Spirits (US) +ggroundj // 1988.11 Gain Ground (Japan, FD1094, decrypted) +gground // 1989.?? Gain Ground (World, FD1094, decrypted) + // 1989.03 Gain Ground (US) +crkdownj // 1989.03 Crack Down (Japan, FD1094, decrypted) +crkdown // 1989.?? Crack Down (World, FD1094, decrypted) +crkdownu // 1989.06 Crack Down (US, FD1094, decrypted) +sgmastj // 1989.06 Jumbo Ozaki Super Masters (Japan, FD1094, decrypted) +sgmast // 1989.?? Super Masters Golf (World, protected) +sgmastc // 1989.?? Jumbo Ozaki Super Masters Golf (World, FD1094, decrypted) + // 1989.09 Super Masters Golf (US) +roughrac // 1990.03 Rough Racer (Japan, FD1094, decrypted) +bnzabrosj // 1990.06 Bonanza Bros. (Japan) +bnzabros // 1990.08 Bonanza Bros. (US) +qsww // 1991.02 Quiz Syukudai wo Wasuremashita! (Japan) +dcclubfd // 1991.07 Dynamic Country Club (US) + +// ROM based +dcclubj // 1991.06 Dynamic Country Club (Japan) +dcclub // 1991.?? Dynamic Country Club (World) +qrouka // 1991.12 Quiz Rouka ni Tattenasai! (Japan) +mahmajn // 1992.12 Tokorosan no Mahmahjong (Japan) +quizmeku // 1993.05 Quiz Mekurumeku Story (Japan) +mahmajn2 // 1994.05 Tokorosan no Mahmahjong 2 (Japan) +qgh // 1994.09 Quiz Ghost Hunter + +// Sega System 32 games +radm // 1991.?? Rad Mobile (World) +radmu // 1991.03 Rad Mobile (US) + // 1991.02 Rad Mobile (Japan) +radr // 1991.?? Rad Rally (World) +radru // 1991.09 Rad Rally (US) + // 1991.07 Rad Rally (Japan) +spidman // 1991.?? Spiderman (World) +spidmanu // 1991.09 Spiderman (US) + // 1991.09 Spiderman (Japan) +f1en // 1991.?? F-1 Exhaust Note (World) + // 1992.01 F-1 Exhaust Note (US) + // 1991.11 F-1 Exhaust Note (Japan) +arabfgt // 1992.?? Arabian Fight (World) +arabfgtu // 1992.03 Arabian Fight (US) +arabfgtj // 1992.03 Arabian Fight (Japan) +arescue // 1992.03 Air Rescur (US) + // 1992.04 Air Rescue (Japan) +ga2 // 1992.?? Golden Axe II (World) +ga2u // 1992.09 Golden Axe II (US) +ga2j // 1992.10 Golden Axe Death Adder no Fukusyuu (Japan) +holo // 1992.?? Hologram Holosseum (US) + // 1992.11 Hologram Holosseum (Japan) +darkedge // 1993.?? Dark Edge (World) + // 1993.?? Dark Edge (US) +darkedgej // 1993.03 Dark Edge (Japan) +brival // 1993.?? Burning Rival (World) +brivalj // 1993.08 Burning Rival (Japan) +f1lap // 1993.?? F-1 Super Lap (World) + // 1993.09 F-1 Super Lap (Japan) +alien3 // 1993.?? Aliens 3 (World) +alien3u // 1993.11 Aliens 3 (US) + // 1993.09 Aliens 3 the Gun (Japan) +sonic // 1993.09 Sonic the Hedgehog (Japan) +sonicp // 1993.?? Sonic the Hedgehog (proto, Japan) +kokoroj2 // 1993.12 Soreike! Kokoroji 2 (Japan) +jpark // 1994.?? Jurassic Park (World) + // 1994.?? Jurassic Park (US) + // 1994.02 Jurassic Park (Japan) +dbzvrvs // 1994.03 Dragon Ball Z V.R.V.S. (Japan) +jleague // 1994.07 The J League 1994 (Japan) +svf // 1994.?? Super Visual Football +svs // 1994.?? Super Visual Soccer +slipstrm // 1995.?? Slip Stream (Capcom) +slipstrmh + +// Sega Multi System 32 games + // 1993.05 Outrunners (Japan) +orunners // 1993.?? Outrunners (World) +orunnersu // 1993.06 Outrunners (US) +harddunkj // 1994.04 Hard Dunk 3on3 (Japan) +harddunk // 1994.?? Hard Dunk 3on3 (World) + // 1993.03 Title Fight (Japan) +titlef // 1993.?? Title Fight (World) +titlefu // 1993.04 Title Fight (US) + // 1992.07 Stadium Cross (Japan) +scross // 1992.?? Stadium Cross (World) +scrossu // 1992.09 Stadium Cross (US) + +// Model 1 Games +vr // 1992.08 Virtua Racing +vf // 1993.12 Virtua Fighter +vformula // 1993.?? Virtua Formula +swa // 1994.04 Star Wars Arcade +wingwar // 1994.06 Wing War +wingwarj // 1994.06 Wing War (Japan) +wingwaru // 1994.09 Wing War (US) + +// Sega H1 games +coolridr // 1995.04 Cool Riders + +// Sega ST-V games +stvbios + // 1994.07 Sports Fishing +gaxeduel // 1995.02 Golden Axe the Duel +suikoenb // 1995.03 Suiko Enbu (Data East) +bakubaku // 1995.04 Bakubaku Animal +vfremix // 1995.06 Virtua Fighter Remix +ejihon // 1995.07 Ejihon Tantei Jimusyo +finlarch // 1995.07 Final Arch +sfish2j // 1995.08 Sports Fishing 2 (Japan) +shanhigw // 1995.08 Shanghai Banri no Choujou +sandor // 1995.11 Nido Aru Koto wa Sando-R +kiwames // 1995.11 Pro Mahjong Kiwame S (Athena) +sfish2 // 1995.11 Sports Fishing 2 (Export) +critcrsh // 1995.?? Critter Crusher + // 1995.12 Tatakott +batmanfr // 1996.02 Batman Forever (Acclaim) +fhboxers // 1996.02 Funky Head Boxers +vfkids // 1996.03 Virtua Fighter Kids +pblbeach // 1996.03 Pebble Beach the Great Shot (T&E Soft) +introdon // 1996.04 Karaoke Quiz Intro Dondon (Sunsoft / Success) +smleague // 1996.04 Super Major League +decathlt // 1996.05 Decathlete +decathlto +dnmtdeka // 1996.07 Dynamite Deka +mausuke // 1996.07 Mausuke no Ojama the World (Data East) +diehard // 1996.08 Die Hard Arcade +sokyugrt // 1996.09 Soukyuu Gurentai (Raizing / 8ing) +prikura // 1996.10 Prikura Daisakusen (Atlus) +magzun // 1996.11 Magical Zunou Power +puyosun // 1996.12 Puyo Puyo SUN (Compile) +colmns97 // 1997.01 Columns 97 +shienryu // 1997.02 Shienryu (Warashi) +vmahjong // 1997.02 Virtual Mahjong (Micronet) +groovef // 1997.05 Groove on Fight (Atlus) +nclubv3 // 1997.07 Name Club Ver. 3 +pclub2 // 1997.09 Print Club 2 +thunt // 1997.09 Puzzle & Action Treasure Hunt (Sega (Deniam License)) +thuntk +winterht // 1997.10 Winter Heat (Data East) +cotton2 // 1997.11 Cotton 2 (Success) +hanagumi // 1997.11 Sakura Taisen Hanagumi Taisen Columns +findlove // 1997.12 Find Love (Daiki / FCF) +maruchan // 1997.12 Maruchan de Goo!!! +techbowl // 1997.12 Technical Bowling +znpwfv // 1997.12 Zen Nippon Pro Wrestling featuring Virtua +seabass // 1998.02 Sea Bass Fishing (A wave Inc (Able License)) +sasissu // 1998.02 Taisen Tanto-R Sasissu!! + // 1998.03 Bass Master Challenge +twcup98 // 1998.04 Tecmo World Cup '98 (Tecmo) +grdforce // 1998.05 Guardian Force (Success) +rsgun // 1998.05 Radient Silver Gun (Treasure) +astrass // 1998.06 Astra Super Stars (Sunsoft) +myfairld // 1998.07 My Fair Lady (Micronet) +othellos // 1998.07 Othello Shiyouyo (Success) +cottonbm // 1998.09 Cotton Boomerang (Success) +stress // 1998.10 Stress Busters +elandore // 1998.11 Touryuu Densetsu Elandore (Sai-Mate) +sss // 1998.12 Steep Slope Sliders (Capcom / Cave / Victor) +micrombc // 1999.03 Microman Battle Charge +pclub2v3 // 1999.03 Print Club 2 Vol. 3 +sanjeon // 1999.04 Sanjun Sujun (Sega / Deniam) +danchih // 1999.06 Danchi de Hanafuda Okusan Komeya Desuyo! (Altron (Tecmo License)) +ffreveng // 1999.09 Final Fight Revenge (Capcom) +pclubpok // 1999.11 Print Club Pokemon +danchiq // 2000.12 Danchi de Quiz Okusan Yontaku Desuyo! (Altron) + +// Sega Model 2 Games + +// Model 2 (TGPs, Model 1 sound board) +daytona // 1994.03 Daytona USA +daytona93 +daytonas +daytonat // 1993, hack +daytonam // 1993, hack +desert // 1994.07 Desert Tank +vcop // 1994.09 Virtua Cop + +// Model 2A-CRX (TGPs, SCSP sound board) +vf2o // 1994.11 Virtua Fighter 2 +vf2a // 1995.?? +vf2b // 1995.?? +srallyc // 1995.02 Sega Rally Championship - Rev C +srallycb // 1995.02 Sega Rally Championship - Rev B +vcop2 // 1995.09 Virtua Cop 2 +vf2 // 1995.09 Virtua Fighter 2.1 + // 1995.10 Sky Target +manxtt // 1995.11 Manx T.T. + // 1996.08 Dynamite Baseball +doaa // 1996.11 Dead or Alive + // 1997.04 Dynamite Baseball '97 +motoraid // 1997.10 Motor Raid +zeroguna // 1997.12 Zero Gunner +dyndeka2 // 1998.05 Dynamite Deka 2 +dynamcop // 1998.09 Dynamic Cop +pltkidsa // 1999.03 Pilot Kids + +// Model 2B-CRX (SHARC, SCSP sound board) +vstriker // 1995.05 virtua Striker +vstrikero // 1995.05 virtua Striker +rchase2 // 1995.06 Rail Chase 2 (Arcade TV Game List - P.104, Left, 12 from top) +indy500 // 1995.07 Indy 500 +indy500d // 1995.07 Indy 500 +indy500to // 1995.07 Indy 500 +skytargt // 1995.10 Sky Target +fvipers // 1995.11 Fighting Vipers +von // 1996.01 Dennou Senki Virtual-On (USA) +vonj // 1996.01 Dennou Senki Virtual-On (Japan) +gunblade // 1996.04 Gunblade N.Y. +schamp // 1996.05 Sonic Championship +sfight // 1996.05 Sonic the Fighters +lastbrnx // 1996.06 Last Bronx +lastbrnxj // 1996.06 Last Bronx (Japan) +sgt24h // 1996.07 Super GT 24h +dynabb // 1996.08 Dynamite Baseball +doa // 1996.11 Dead or Alive + // 1997.04 Dynamite Baseball '97 +zerogun // 1997.12 Zero Gunner +zerogunj // 1997.12 Zero Gunner (Japan) +dyndeka2b // 1998.05 Dynamite Deka 2 +dynamcopb // 1998.09 Dynamite Cop +pltkids // 1999.03 Pilot Kids + +// Model 2C-CRX (TGPx4, SCSP sound board) +skisuprg // 1996.12 Sega Ski Super G +stcc // 1996.09 Sega Touring Car Championship +stcca // 1996.09 Sega Touring Car Championship +stccb // 1996.09 Sega Touring Car Championship +waverunr // 1996.10 Wave Runner +hotd // 1997.03 The House of the Dead +topskatr // 1997.05 Top Skater +topskatru // 1997.05 Top Skater (USA) +topskatrj // 1997.05 Top Skater (Japan) +overrev // 1997.09 Overrev +segawski // 1997.09 Sega Water Ski +dynamcopc // 1998.09 Dynamite Cop +bel // 1998.12 Behind Enemy Lines + +// Sega Model 3 Games + +// Step 1.0 +vf3 // 1996.09 Virtua Fighter 3 +vf3a +vf3tb // 1997.10 Virtua Fighter 3tb +bass // 1997.12 Get Bass +getbass + // 1998.03 Get Bass Brast + +// Step 1.5 +scud // 1996.12 Scud Race +scudj +scuda +vs215 // 1997.06 Virtua Striker 2 +lostwsga // 1997.07 Lost World Jurassic Park +scudp // 1997.09 Scud Race Plus +lemans24 // 1997.09 Le Mans 24 +vs29815 // 1998.05 Virtua Striker 2 ver.98 + +// Step 2.0 +vs2 // 1997.06 Virtua Striker 2 +harley // 1997.12 Harley Davidson & L.A.Riders +skichamp // 1998.01 Ski Champ +srally2 // 1998.02 Sega Rally 2 Championship +srally2x +von2 // 1998.03 Dennou Senki Virtual-On Oratorio Tangram +fvipers2 // 1998.04 Fighting Vipers 2 +vs298 // 1998.05 Virtua Striker 2 ver.98 +vs299 // 1998.12 Virtual Striker 2 ver.99 +vs299b // 1999.?? Virtual Striker 2 ver.99 (rev B) +vs299a // 1999.?? Virtual Striker 2 ver.99 (rev A) +vs2v991 // 1999.?? Virtual Striker 2 ver.99.1 +von254g // 1999.05 Dennou Senki Virtual-On Oratorio Tangram ver.5.4 + +// Step 2.1 +daytona2 // 1998.06 Daytona USA 2 +oceanhun // 1998.09 Ocean Hunter +spikeout // 1998.09 Spikeout +dirtdvls // 1998.10 Dirt Devils +dirtdvlsa +swtrilgy // 1998.11 Star Wars Trilogy Arcade +swtrilgya + // 1998.11 Magical Torokko Adventure (Japan) +lamachin // 1998.12 L.A. Machine Guns +dayto2pe // 1998.12 Daytone USA 2 Power Edition + // 1998.12 Virtua Striker 2 ver.99 +spikeofe // 1999.01 Spikeout Final Edition +magtruck // 1999.03 Magical Truck Adventure (US) +eca // 1999.10 Kyukyuusya Emergency Call Ambulance +ecax + + +// Deniam games +// they run on Sega System 16 video hardware +logicpro // (c) 1996 Deniam +croquis // (c) 1996 Deniam (Germany) +karianx // (c) 1996 Deniam +logicpr2 // (c) 1997 Deniam (Japan) + + +/* +Deniam is a Korean company (http://deniam.co.kr). + +Game list: +Title System Date +---------------- ---------- ---------- +GO!GO! deniam-16b 1995/10/11 +Logic Pro deniam-16b 1996/10/20 +Karian Cross deniam-16b 1997/04/17 +LOTTERY GAME deniam-16c 1997/05/21 +Logic Pro 2 deniam-16c 1997/06/20 +Propose deniam-16c 1997/06/21 +BOMULEUL CHAJARA SEGA ST-V 1997/04/11 +*/ + +// System C games +bloxeedc // (c) 1989 Sega / Elorg +bloxeedu // (c) 1989 Sega / Elorg +columns // (c) 1990 Sega +columnsu // (c) 1990 Sega +columnsj // (c) 1990 Sega +columns2 // (c) 1990 Sega +column2j // (c) 1990 Sega + +// System C-2 games +borench // (c) 1990 Sega +tfrceac // (c) 1990 Sega / Technosoft +tfrceacj // (c) 1990 Sega / Technosoft +tfrceacb // bootleg +twinsqua // (c) 1991 Sega +ribbit // (c) 1991 Sega +tantr // (c) 1992 Sega +tantrkor // (c) 1992 Sega +tantrbl // bootleg +tantrbl2 // bootleg +tantrbl3 // bootleg +puyo // (c) 1992 Sega / Compile +puyobl // bootleg +puyoj // (c) 1992 Sega / Compile +puyoja // (c) 1992 Sega / Compile +ichir // (c) 1994 Sega +ichirk // (c) 1994 Sega +ichirj // (c) 1994 Sega +ichirjbl // bootleg +stkclmns // (c) 1994 Sega +stkclmnsj // (c) 1994 Sega +puyopuy2 // (c) 1994 Compile + Sega license +potopoto // (c) 1994 Sega +zunkyou // (c) 1994 Sega + +// Atlus Print Club 'Games' C-2 board +pclubj +pclubjv2 +pclubjv4 +pclubjv5 + +// Genie Hardware (uses Genesis VDP) also has 'Sun Mixing Co' put into tile ram +puckpkmn // (c) 2000 Genie +puckpkmna // (c) 2000 IBS +topshoot // (c) 1995 Sun Mixing + +// Sega MegaTech, the number shown is on the label of the instruction rom +megatech +mt_beast // 01 +mt_shar2 // 02 +mt_stbld // 03 +mt_ggolf // 04 +mt_gsocr // 05 +mt_orun // 06 +mt_asyn // 07 +mt_shnbi // 08 +mt_fz // 09 +mt_aftrb // 10 +mt_tfor2 // 11 + // 12 +mt_astro // 13 + // 14 + // 15 + // 16 + // 17 + // 18 +mt_gfoot // 19 +mt_lastb // 20 +mt_wcsoc // 21 +mt_tetri // 22 +mt_gng // 23 +mt_shang // 24 +mt_gaxe // 25 +mt_fwrld // 26 +mt_mystd // 27 +mt_revsh // 28 +mt_parlg // 29 + // 30 +mt_tgolf // 31 +mt_srbb // 32 + // 33 + // 34 +mt_tlbba // 35 +mt_cols // 36 + // 37 +mt_eswat // 38 +mt_smgp // 39 +mt_mwalk // 40 +mt_crack // 41 + // 42 +mt_shado // 43 +mt_arrow // 44 + // 45 + // 46 +mt_astrm // 47 +mt_wwar // 48 +mt_bbros // 49 + // 50 +mt_srage // 51 +mt_sonic // 52 +mt_sonia // ^^ +mt_fshrk // 53 +mt_spman // 54 +mt_calga // 55 + // 56 +mt_gaxe2 // 57 +mt_stf // 58 +mt_mlh // 59 +mt_kcham // 60 +mt_tout // 61 +mt_soni2 // 62 + +// Sega MegaPlay +megaplay +mp_sonic // 01 +mp_gaxe2 // 02 +mp_gslam // 03 +mp_twc // 04 +mp_sor2 // 05 +mp_bio // 06 +mp_soni2 // 07 + // 08 +mp_shnb3 // 09 + // 10 +mp_mazin // 11 +mp_col3 // ?? + +ssf2mdb // MegaDrive-based hack +aladmdb // MegaDrive-based hack +mk3mdb // MegaDrive-based hack +srmdb // MegaDrive-based hack + +// Sega Naomi-based (Dreamcast) systems +naomi +naomigd +naomi2 + +hod2bios // 1998.11 The House of the Dead 2 +hotd2 // 1998.11 The House of the Dead 2 +hotd2o // 1998.11 The House of the Dead 2 +dybbnao // 1998.12 Dynamite Baseball NAOMI +smlg99 // 1999.?? Super Major League '99 +pstone // 1999.02 Power Stone +crzytaxi // 1999.02 Crazy Taxi +zombrvn // 1999.02 Zombie Revenge +airlbios // 1999.03 Airline Pilots +alpiltdx +alpilota +ggram2 // 1999.04 Giant Gram Zen Nippon Pro-wres 2 + // 1999.05 Taisen Puzzle Kurutto Stone +ringout // 1999.06 Ringout 4x4 +f355bios // 1999.07 F355 Challenge +f355 +f355twin // 1999.07 F355 Challenge Twin +shangril // 1999.08 Dengen Tenshi Taisen Janshi Shangri-la + // 1999.08 Unou Nouryoku Check Machine Touch de UNO! +vs2_2k // 1999.08 Virtua Striker 2 version 2000 +suchie3 // 1999.09 Idol Janshi Su-Chi-Pi 3 +toyfight // 1999.09 Toy Fighter +jambo // 1999.09 Jambo! Safari + // 1999.09 Super Major League 99 +sgtetris // 1999.10 Sega Tetris +derbyoc // 1999.10 Derby Owners Club +doa2 // 1999.11 Dead or Alive 2 +otrigger // 1999.11 Out Trigger +dybb99 // 1999.11 Dynamite Baseball '99 + // 1999.12 Mars TV +samba // 1999.12 Samba de Amigo +vtennis // 1999.12 Virtua Tennis / Power Smash (ROM) +vtennisg // 1999.12 Virtua Tennis / Power Smash (GD-ROM) +puyoda // 1999.12 Puyopuyo DA! + +18wheelr // 2000.01 18 Wheeler +totd // 2000.01 The Typing of the Dead +spawn // 2000.01 Spawn +doa2m // 2000.01 Dead or Alive 2 Millenium + // 2000.02 Touch de UNO! 2 +virnba // 2000.02 Virtua NBA +virnbao +mvsc2 // 2000.03 Marvel vs. Capcom 2 +smarinef // 2000.03 Sega Marine Fishing +wldkicks // 2000.03 World Kicks + // 2000.04 Shin Nippon Pro-wres Toukon Retsuden 4 +pstone2 // 2000.04 Power Stone 2 +qmegamis // 2000.05 Quiz Ah Megamisama +vonot // 2000.06 Virtual-on Oratorio Tangram M.S.B.S. ver.5.66 2000 edition +derbyo2k // 2000.06 Derby Owners Club 2000 +ggx // 2000.07 Guilty Gear X +slasho // 2000.07 Slashout +slashout +capsnka // 2000.08 Capcom vs. SNK Millenium Fight 2000 + // 2000.08 Tokyo Bus Annai +capsnk // 2000.09 Capcom vs. SNK Millenium Fight 2000 +gram2000 // 2000.09 Giant Gram 2000 Zen Nippon Pro-wres 3 + // 2000.09 Nittere Shiki! Mirai Yosou Studio +crackndj // 2000.10 Crackin' DJ +cspike // 2000.10 Gun Spike +sstrkfgt // 2000.10 Sega Strike Fighter +deathcox // 2000.10 Death Crimson OX + // 2000.11 Ninja Assault +confmiss // 2000.11 Confidential Mission // First GD-ROM game? +shaktamb // 2000.11 Shakatto Tambourine +wwfroyal // 2000.11 WWF Royal Rumble +pjustic // 2000.12 Moero Justice Gakuen +samba2k // 2000.12 Samba de Amigo ver.2000 +sprtjam // 2000.12 Sports Jam + // 2000.12 Derby Owners Club 2000 ver.2 + // 2000.?? World Kicks New ver. +derbyocw // 2001.?? Derby Owners Club World Edition (Rev. D) +drbyocwc // 2001.?? Derby Owners Club World Edition (Rev. C) +f355twn2 // 2001.01 F355 Challenge 2 +gwing2 // 2001.01 Giga Wing 2 +csmash // 2001.01 Cosmic Smash +csmasho +sfz3ugd // 2001.02 Street Fighter ZERO3 Upper +gundmgd // 2001.03 Kidou Senshi Gundam Renpou vs. Zeon +gundmct // 2001.03 Mobile Suit Gundam: Federation vs. Zeon (cartridge) + // 2001.04 Shakatto Tambourine Motto Norinori Shinkyoku Tsuika +dygolf // 2001.04 Dynamic Golf +zerogu2 // 2001.05 Zero Gunner 2 +monkeyba // 2001.05 Monkey Ball +cvsgd // 2001.06 Capcom vs. SNK Pro + // 2001.06 Crackin' DJ Part2 +wsbbgd // 2001.06 Super Major League +spkrbtl // 2001.07 Spikers Battle +gunsur2 // 2001.07 Gun Survivor 2: Bio Hazard Code Veronica +starseek // 2001.07 Dokidoki Idol Star Seeker +cvs2gd // 2001.08 Capcom vs. SNK 2 +wrungp // 2001.08 Wave Runner GP +gundmxgd // 2001.09 Kidou Senshi Gundam Renpou vs. Zeon DX + // 2001.09 Alien Front +hmgeo // 2001.09 Heavy Metal Geo Matrix +inunoos // 2001.10 Inu no Osanpo +derbyoc2 // 2001.10 Derby Owners Club 2 +vtennis2 // 2001.10 Power Smash 2 / Virtua Tennis 2 +vtenis2c // Power Smash 2 / Virtua Tennis 2 (cartridge) + // 2001.11 Shakatto Tambourine Cho Powerup Chu +keyboard // 2001.11 La Keyboardxyu +ikaruga // 2001.12 Ikaruga +lupinsho // 2001.12 Lupin the Third: the Shooting +vathlete // 2002.03 Virtua Athlete +luptype // 2002.04 Lupin the Third: the Typing +ggxx // 2002.05 Guilty Gear XX +mok // 2002.05 The Maze of the Kings +cleoftp // 2002.05 Cleopatra Fortune + +chocomk // 2002.06 Musapey no Choco Marker + // 2002.07 Mazan + // 2002.09 Yonin Uchi Mahjong MJ +azumanga // 2002.12 Azumanga Daiou Puzzle Bobble +moeru // 2002.12 Moeru Casinyo +quizqgd // 2003.01 Quiz Keitai Q mode + // 2003.03 Yonin Uchi Mahjong MJ Network Taisen ver. +ggxxrl // 2003.03 Guilty Gear XX # Reload +shikgam2 // 2003.04 Shikigami no Shiro 2 +bdrdown // 2003.04 Border Down +usagui // 2003.06 Usagi Yamashiro Mahjong Hen + // 2003.07 Yonin Uchi Mahjong MJ Network Taisen ver. NEW +oinori // 2003.08 Oinori-daimyoujin Matsuri +psyvar2 // 2003.11 Psyvariar 2 +puyofev // 2003.11 Puyopuyo Fever +shootopl // Shootout Pool +shootpl // 2003.xx Shootout Pool / Shootout Pool Prize +shootplm // Shootout Pool Medal +kick4csh // 2004.xx Kick '4' Cash +tetkiwam // 2004.06 Tetris Kiwamemichi (Arcade TV Game List - P.88, Right, 11 from bottom) +cfield // 2004.06 Chaos Field +trizeal // 2004.09 Trizeal + // 2005.03 Melty Blood Act Cadenza +ss2005 // 2005.03 Super Shanghai 2005 +ss2005a // 2005.04 Super Shanghai 2005 +senkoo // 2005.04 Senkou no Rondo +senko // 2005.08 Senkou no Rondo NEW ver. +meltybld // 2005.08 Melty Blood Act Cadenza ver.A +ggxxsla // 2005.09 Guilty Gear XX Slash +radirgy // 2005.10 Radirgy +undefeat // 2005.10 Under Defeat + // 2005.12 Radirgy (Rev. A) +kurucham // 2006.03 Kurukuru Chameleon +trgheart // 2006.05 Trigger Heart Exelica + // 2006.07 Touch de Zunou +senkosp // 2006.08 Senkou no Rondo SP +jingystm // 2006.09 Jingi Storm +karous // 2006.11 Karous +ggxxac // 2006.11 Guilty Gear XX Accent Core +meltyb // 2006.12 Melty Blood Act Cadenza ver.B +meltyba // 2006.12 Melty Blood Act Cadenza ver.B (Rev A) +takoron // 2006.12.16 Noukone Puzzle Takoron + // 2007.03 Melty Blood Act Cadenza ver.B Syuuseiban(ver.B2) + +ngdup23a // DIMM Firmware Updater +ngdup23c + + // Releases below use flash/mask ROMs like older NAOMI titles, not GD-ROM as GD-ROM Hardware (Drives and Discs) were no longer being produced + + // 2007.07 Pokasuka Ghost! + // 2007.07 Shooting Love + // 2007.07 Dynamite Deka EX - Asian dynamite + // 2007.09 Rhythm Tengoku + // 2008.02 Akatsuki Denkou Senki Ausf.Achse + // 2008.06 Illvelo (Illmatic Envelope) + // 2008.07 Mamoru Kun wa Norowarete Shimatta! + // 2008.09 Melty Blood Actress Again + // 2008.12 Melty Blood Actress Again ver.A + // 2009.06 Radirgy Noah + // 2009.?? Project Cerberus (planned to be released in 2009) + + + +// NAOMI based (System SP) + // 2003.02 Kouchuu Ouja Mushiking + // 2004.10 Oshare Majo Love & Berry + // 2005.09 Kodai Ouja Kyouryuu King + // 2007.06 Issyo ni Wanwan + // 2007.06 Konchuu Dash!! + // 2007.07 Marine Marine + // 2007.11 Magical Dance on Dream Stage + // 2008.02 Marine Marine ver.2 + // 2008.04 Issyo ni Wanwan Waiwai Puppy + // 2008.07 Issyo ni Turbo Drive + +// NAOMI 2 +vstrik3c // 2001.04 Virtua Striker 3 (rev. C) +vstrik3cb // 2001.04 Virtua Striker 3 (rev. B) +vstrik3 +wldrider // 2001.05 Wild Riders + // 2001.06 Club Kart +beachspi // 2001.07 Beach Spikers +vf4cart // 2001.08.02 Virtua Fighter 4 (cartridge) +vf4 // 2001.08.02 Virtua Fighter 4 (GD-ROM) +vf4b // 2001.08.20 Virtua Fighter 4 ver.B +vf4c // 2002.01.31 Virtua Fighter 4 ver.C +kingrt66 // 2002.02 The King of Route 66 +initd // 2002.03 Initial D Arcade Stage +initdexp // 200?.?? Initial D Export Version +clubkrte // 2002.?? Club Kart: European Session + // 2002.06 WCCF SERIE A 2001-2002 + // 2002.07 Soul Surfer +vf4evoct // 2002.08 Virtua Fighter 4 Evolution (cartridge) +vf4evoa // 2002.08 Virtua Fighter 4 Evolution + // 2002.11 WCCF SERIE A 2001-2002 ver.1.2 +initdv2j // 2002.12 Initial D Arcade Stage ver.2 rev. B +initdv2jo // 2002.12 Initial D Arcade Stage ver.2 +initdv2e // 2002.12 Initial D Arcade Stage ver.2 +vf4evo // 2002.12 Virtua Fighter 4 Evolution ver.B + // 2003.03 WCCF SERIE A 2001-2002 ver.2.0 + // 2003.09 WCCF 2002-2003 SERIE A + // 2003.?? CYCRAFT Club Kart ver. +initdv3j // 2004.01 Initial D Arcade Stage ver.3 rev. C +initdv3jb // 2004.01 Initial D Arcade Stage ver.3 rev. B + // 2004.?? Initial D Arcade Stage ver.3 for CYCRAFT + // 2004.06 WCCF 2002-2003 SERIE A ver.2.0 + // 2004.07 Virtua Fighter 4 Final Tuned +vf4tuneda // 2004.09 Virtua Fighter 4 Final Tuned ver.A + // 2004.12 WCCF 2002-2003 ver.2.1 + // 2005.01 Virtua Fighter 4 final Tuned ver.B + // 2005.04 Menkyo no Tetsujin + // 2005.06 WCCF European Clubs 2004-2005 + // 2006.01 WCCF European Clubs 2004-2005 ver.1.1 + // 2006.03 WCCF European Clubs 2004-2005 ver.1.2 + // 2006.08 WCCF European Clubs 2005-2006 + // 2006.10 WCCF European Clubs 2005-2006 bugfix ver. +vf4tunedd +vf4tuned // 200?.?? Virtual fighter 4 Final Tuned ver.F + + +// Atomiswave (Dreamcast-based) games +awbios +maxspeed // 2002.12 Maximum Speed +sprtshot // 2002.12 Sports Shooting USA +ggx15 // 2003.03 Guilty Gear X ver.1.5 +demofist // 2003.06 Demolish Fist +dolphin // 2003.08 Dolphin Blue +ggisuka // 2003.12 Guilty Gear Isuka + // 2003.12 Sangoku Senki Shichisei Tensei (IGS) +rumblef // 2004.03 The Rumble Fish +rangrmsn // 2004.03 Ranger Mission +salmankt // 2004.06 Salary Man Kintarou Net Select +kofnw // 2004.07 The King of Fighters Neo Wave +kofnwj // 2004.07 The King of Fighters Neo Wave (Japan) +xtrmhunt // 2004.09 Extreme Hunting +dirtypig // 2004.09 Dirty Pig Skin Football +ftspeed // 2004.09 Faster than Speed +kov7sprt // 2004.?? Knights of Valour - The Seven Sprits +vfurlong // 2005.03 Net Select Keiba Victory Furlong +rumblef2 // 2005.03 The Rumble Fish 2 +ngbc // 2005.07 NeoGeo Battle Colloseum +samsptk // 2005.09 Samurai Spirits Tenkaichi Kenkakuden +kofxi // 2005.10 The King of Fighters XI +fotns // 2005.12 Hokuto no Ken +mslug6 // 2006.02 Metal Slug 6 +xtrmhnt2 // 2006.09 Extreme Hunting 2 Tournament Edition + // 2008.?? Sega Clay Challenge + +// Hikaru +hikaru // BIOS (c)2000 +braveff // 1999.06 Syouboushi Brave Fire Fighters +podrace // 2000.06 Star Wars: Racer Arcade +sgnascar // 2000.09 Nascar Arcade +pharrier // 2000.12 Planet Harriers +airtrix // 2001.02 Air Trix + // 2001.10 Dennou Senki Virtual-On Force + // 2002.04 Dennou Senki Virtual-On Force ver.7.7 + +// Triforce (GameCube based) +triforce +vs2002j // 2002.10 Virtua Striker 2002 +vs2002ex + // 2003.06 F-ZERO AX +avalons // 2003.07 Avalon no Kagi + // 2003.08 Avalon no Kagi ver.1.00 + // 2003.10 Avalon no Kagi ver.1.01 +gekpurya // 2003.10 Gekitou Pro Yakyuu Mizushima Shinji All Stars vs. Pro Yakyuu + // 2003.12 Avalon no Kagi ver.1.10 + // 2003.?? CYCRAFT F-ZERO AX Monster Ride + // 2004.04 Avalon no Kagi ver.1.20 Aratanaru Syoukan +avalon13 // 2004.07 Avalon no Kagi ver.1.30 Konton no Utage +vs4 // 2004.10 Virtua Striker 4 +vs4j // 2004.10 Virtua Striker 4 +avalon20 // 2004.11 Avalon no Kagi ver.2.0 Chitsujo to Kairitsu + // 2005.04 Virtua Striker 4 ver.A + // 2005.08 Avalon no Kagi ver.2.5 Kagi Seisen + // 2005.12 Mario Kart Arcade Grand Prix +vs42006 // 2006.05 Virtua Striker 4 ver.2006 + // 2007.03 Mario Kart Arcade Grand Prix 2 + +tfupdate // Triforce GDROM Boot Update (GDT-0011) + +// Chihiro (X-Box based) +chihiro +hotd3 // 2002.12 The House of the Dead III +crtaxihr // 2003.03 Crazy Taxi High Roller +vcop3 // 2003.04 Virtua Cop 3 +outr2 // 2003.12 Outrun 2 + // 2004.03 Sega Network Taisen Mahjong MJ 2 +ollie // 2004.03 Ollie King + // 2004.04 Sega Network Taisen Mahjong MJ 2 ver.B +wangmid // 2004.07 Wangan Midnight Maximum Tune +mj2 // 2004.07 Sega Network Taisen Mahjong MJ 2 ver.C + // 2004.09 Quest of D + // 2004.11 Sega Golf Club Network Pro Tour + // 2004.12 Sega Network Taisen Mahjong MJ 2 ver.D + // 2004.12 Quest of D ver.1.02 +outr2st // 2004.12 Outrun 2 Special Tours + // 2004.12 Quest of D ver.1.10 +ghostsqu // 2004.12 Ghost Squad + // 2004.12 Quest of D ver.1.10a + // 2005.03 Sangokushi Taisen +gundamos // 2005.03 Kidou Senshi Gundam Battle Operating Simulator + // 2005.04 Quest of D ver.1.20 + // 2005.04 Sega Network Taisen Mahjong MJ 2 ver.E +wangmid2 // 2005.04 Wangan Midnight Maximum Tune 2 + // 2005.06 Sangokushi Taisen ver.1.003 + // 2005.06 Sega Golf Club Network Pro Tour 2005 + // 2005.06 Quest of D ver.1.20a + // 2005.09 Quest of D ver.1.21 + // 2005.10 Sangokushi Taisen Ranse no Gunrou ver.1.100 +wangmd2b // 2005.10 Wangan Midnight Maximum Tune 2 ver.B + // 2005.11 Sangokushi Taisen Ranse no Gunrou ver.1.110 + // 2005.12 Quest of D Gofu no Keisyousya ver.2.00 + // 2005.12 Kidou Senshi Gundam 0079 Card Builder +mj3 // 2005.12 Sega Network Taisen Mahjong MJ 3 + // 2005.12 Quest of D Gofu no Keisyousya ver.2.01 +scg06nt // 2005.12 Sega Golf Club 2006 Next Tours + // 2006.02 Sangokushi Taisen Ranse no Gunrou ver.1.12 + // 2006.03 Kidou Senshi Gundam 0079 Card Builder ver.1.007 + // 2006.03 Quest of D Gofu no Keisyousya ver.2.02b + // 2006.04 Sega Network Taisen Mahjong MJ 3 ver.A+ + // 2006.05 Sangokushi Taisen 2 + // 2006.07 Kidou Senshi Gundam 0079 Card Builder ver.2.00 + // 2006.09 Sangokushi Taisen 2 ver.2.01 + // 2006.09 Sega Network Taisen Mahjong MJ 3 ver.B + // 2006.09 Kidou Senshi Gundam 0079 Card Builder ver.2.01 + // 2006.10 Quest of D ver.3.00 Oukoku no Syugosya + // 2006.11 Quest of D ver.3.01 Oukoku no Syugosya + // 2006.11 Kidou Senshi Gundam 0079 Card Builder ver.2.02 + // 2007.03 Kidou Senshi Gundam 0083 Card Builder + // 2007.03 Sega Network Taisen Mahjong MJ 3 Evolution + // 2007.10 Kidou Senshi Gundam 0083 Card Builder Ryouyuu Gekitotsu + // 2007.11 Quest of D The Battle Kingdom ver.4.00 + // 2008.01 Quest of D The Battle Kingdom ver.4.00b + // 2008.02 Quest of D The Battle Kingdom ver.4.00c + // 2008.06 Quest of D The Battle Kingdom ver.4.01 + +hshavoc // (c) 1993 Data East + +// Data East "Burger Time hardware" games +lnc // (c) 1981 +zoar // (c) 1982 +btime // (c) 1982 +btime2 // (c) 1982 +btimem // (c) 1982 + Midway +tisland // (c) 1982 +protennb // bootleg +cookrace // bootleg +wtennis // bootleg 1982 +brubber // (c) 1982 +bnj // (c) 1982 + Midway +caractn // bootleg +disco // (c) 1982 +discof // (c) 1982 +sdtennis // (c) 1983 +mmonkey // (c) 1982 Technos Japan + Roller Tron + + // cassette system, parent is decocass +decocass +ctsttape // ? +chwy // 01 1980.12 Highway Chase + // 02 1980.12 Sengoku Ninjatai + // 03 1981.01 Manhattan +cterrani // 04 1981.02 Terranian + // 05 1981.?? Missile Sprinter + // 06 1980.12 Nebbler +castfant // 07 1981.02 Astro Fantasia + // 08 1981.03 The Tower +csuperas // 09 1981.05 Super Astro Fighter + // 10 1981.?? Ocean to Ocean (medal) +clocknch // 11 1981.04 Rock'n Chase + // 12 1981.08 Flash Boy/DECO Kid +cprogolf // 13 1981.08 Pro Golf + // 14 1981.06 DS Telejan +cluckypo // 15 1981.?? Lucky Poker +ctisland // 16 1982.02 Treasure Island +ctisland2 // 16 +ctisland3 // 16 + // 17 1981.10 Bobbit +cexplore // 18 1982.02 Explorer +cdiscon1 // 19 1982.04 Disco No.1 +csweetht // 19 +ctornado // 20 1982.05 Tornado +cmissnx // 21 1982.04 Mission X/Zoar +cptennis // 22 1982.06 Pro Tennis + // 23 1982.?? 18 Hole Pro Golf + // 24 1982.07 Tsumego Kaisyou + // 25 1982.10 Fishing +cbtime // 26 1982.08 Hamburger/Burger Time +cburnrub // 27 1982.11 Burnin' Rubber/Bump'n Jump +cburnrub2 // 27 +cbnj // 27 +cgraplop // 28 1982.11 Grapelop +cgraplop2 // 28 +clapapa // 29 1982.11 Lapapa/Rootin' Tootin' +clapapa2 // 29 // this one doesn't display lapapa anywhere + // 30 1983.03 Skater +cprobowl // 31 1983.03 Pro Bowling +cnightst // 32 1983.04 Night Star +cnightst2 // 32 +cprosocc // 33 1982.08 Pro Soccer + // 34 1983.09 Super Doubles Tennis +cflyball // 35 1983.?? Bampoline/Flying Ball + // 36 1984.04 Genesis/Boomer Rang'r +czeroize // 37 1983.10 Zeroize // doesn't work at all +cscrtry // 38 1984.03 Scrum Try +cscrtry2 // 38 +cppicf // 39 1984.02 Peter Pepper's Ice Cream Factory +cppicf2 // 39 +cfghtice // 40 1984.04 Fighting Ice Hockey + // 41 1984.05 Oozumou/The Grand Sumo + // 42 1984.08 Hellow Gateball // not a typo, this is official spelling + // 43 1984.08 Yellow Cab +cbdash // 44 1985.08 Boulder Dash + // UX7 1984.12 Tokyo Mie Shinryoujo + // UX8 1985.01 Tokyo Mie Shinryoujo Part 2 + // UX9 1985.05 Geinoujin Shikaku Shiken + +// Data East LD games +begas // (c) 1983 +begas1 // (c) 1983 +cobra // (c) 1984 +rblaster // (c) 1985 + +// other Data East games +madalien // (c) 1980 +madaliena // (c) 1980 +astrof // (c) [1980?] +astrof2 // (c) [1980?] +astrof3 // (c) [1980?] +abattle // Sidam +abattle2 // Sidam +afire // Rene Pierre +acombat // bootleg +acombato // bootleg +sstarbtl // bootleg +spfghmk2 // (c) [1979] Data East Corporation +spfghmk22 // (c) [1979] Data East Corporation +tomahawk // (c) 1980 Data East, Inc. +tomahawk1 // (c) 1980 Data East, Inc. +progolf // (c) 1981 +progolfa // (c) 1981 +deshoros // (c) 1983 +prosoccr // (c) 1983 +prosport // (c) 1983 +prosporta // (c) 1983 +boomrang // (c) 1983 +boomranga // (c) 1983 +kamikcab // (c) 1984 +yellowcbj // (c) 1984 +yellowcbb // bootleg +liberate // (c) 1984 Data East Corporation +dualaslt // (c) 1984 Data East USA (US) +liberateb // bootleg +bwings // (c) 1984 +bwingso // (c) 1984 +bwingsa // (c) 1984 +zaviga // (c) +zavigaj // (c) +kchamp // (c) 1984 Data East USA (US) +karatedo // (c) 1984 Data East Corporation (Japan) +kchampvs // (c) 1984 Data East USA (US) +kchampvs2 // (c) 1984 Data East USA (US) +karatevs // (c) 1984 Data East Corporation (Japan) +compgolf // (c) 1985 Data East Corporation (Japan) +compgolfo // (c) 1985 Data East Corporation (Japan) +cntsteer // (c) 1985 Data East Corporation +zerotrgt // (c) 1985 Data East Corporation +zerotrgta // (c) 1985 Data East Corporation +gekitsui // (c) 1985 Data East Corporation (Japan) +tryout // (c) 1985 Data East Corporation (Japan) +firetrap // (c) 1986 Data East USA (US) +firetrapj // (c) 1986 Wood Place Inc. (Japan) +firetrapbl // bootleg +metlclsh // (c) 1985 Data East +chanbara // (c) 1985 Data East +brkthru // (c) 1986 Data East USA (US) +brkthruj // (c) 1986 Data East Corporation (Japan) +forcebrk // (c) 1986 Data East Corporation (Japan) +darwin // (c) 1986 Data East Corporation (Japan) +shootout // (c) 1985 Data East USA (US) +shootoutj // (c) 1985 Data East USA (Japan) +shootoutb // bootleg +sidepckt // (c) 1986 Data East Corporation +sidepcktj // (c) 1986 Data East Corporation +sidepcktb // bootleg +exprraid // (c) 1986 Data East USA (US) +exprraida // (c) 1986 Data East USA (US) +wexpress // (c) 1986 Data East Corporation (World?) +wexpressb // bootleg +wexpressb2 // bootleg +pcktgal // (c) 1987 Data East Corporation (Japan) +pcktgalb // bootleg +pcktgal2 // (c) 1989 Data East Corporation (World?) +pcktgal2j // (c) 1989 Data East Corporation (World?) +pokechmp // Korean hack of Pocket Gal +spool3 // (c) 1989 Data East Corporation (World?) +spool3i // (c) 1990 Data East Corporation + I-Vics license +battlera // (c) 1988 Data East Corporation (World) +bldwolf // (c) 1988 Data East USA (US) +bldwolfj // (c) 1988 Data East Corporation (Japan) +actfancr // (c) 1989 Data East Corporation (World) +actfancr1 // (c) 1989 Data East Corporation (World) +actfancrj // (c) 1989 Data East Corporation (Japan) +triothep // (c) 1989 Data East Corporation (World) +triothepj // (c) 1989 Data East Corporation (Japan) + +// Data East 8-bit games +lastmisn // (c) 1986 Data East USA (US) +lastmisno // (c) 1986 Data East USA (US) +lastmisnj // (c) 1986 Data East Corporation (Japan) +shackled // (c) 1986 Data East USA (US) +breywood // (c) 1986 Data East Corporation (Japan) +csilver // (c) 1987 Data East Corporation (Japan) +csilverj // (c) 1987 Data East Corporation (Japan) +ghostb // (c) 1987 Data East USA (US) +ghostb3 // (c) 1987 Data East USA (US) +meikyuh // (c) 1987 Data East Corporation (Japan) +meikyuha // (c) 1987 Data East Corporation (Japan) +srdarwin // (c) 1987 Data East Corporation (World) +srdarwinj // (c) 1987 Data East Corporation (Japan) +gondo // (c) 1987 Data East USA (US) +makyosen // (c) 1987 Data East Corporation (Japan) +garyoret // (c) 1987 Data East Corporation (Japan) +cobracom // (c) 1988 Data East Corporation (World) +cobracomj // (c) 1988 Data East Corporation (Japan) +oscar // (c) 1988 Data East Corporation (World) +oscaru // (c) 1987 Data East USA (US) +oscarj1 // (c) 1987 Data East Corporation (Japan) +oscarj2 // (c) 1987 Data East Corporation (Japan) + +// Data East 16-bit games +karnov // (c) 1987 Data East USA (US) +karnovj // (c) 1987 Data East Corporation (Japan) +wndrplnt // (c) 1987 Data East Corporation (Japan) +chelnov // (c) 1988 Data East USA (World) +chelnovu // (c) 1988 Data East USA (US) +chelnovj // (c) 1988 Data East Corporation (Japan) + // the following ones all run on similar hardware +hbarrel // (c) 1987 Data East USA (US) +hbarrelw // (c) 1987 Data East Corporation (World) +baddudes // EI (c) 1988 Data East USA (US) +drgninja // EG (c) 1988 Data East Corporation (Japan) +birdtry // (c) 1988 Data East Corporation (Japan) +robocop // EP? (c) 1988 Data East Corporation (World) +robocopw // EP? (c) 1988 Data East Corporation (World) +robocopj // EM (c) 1988 Data East Corporation (Japan) +robocopu // (c) 1988 Data East USA (US) +robocopu0 // (c) 1988 Data East USA (US) +robocopb // bootleg +automat // bootleg +hippodrm // EW (c) 1989 Data East USA (US) +ffantasy // EV (c) 1989 Data East Corporation (Japan) +ffantasya // EV (c) 1989 Data East Corporation (Japan) +ffantasybl // bootleg +slyspy // (c) 1989 Data East USA (US) +slyspy2 // (c) 1989 Data East USA (US) +secretag // (c) 1989 Data East Corporation (World) +secretab // bootleg +midres // (c) 1989 Data East Corporation (World) +midresu // (c) 1989 Data East USA (US) +midresj // (c) 1989 Data East Corporation (Japan) +midresb // (c) 1989 Data East Corporation (Japan) +bouldash // (c) 1990 Data East Corporation (World) +bouldashj // (c) 1990 Data East Corporation (Japan) + // end of similar hardware +stadhero // (c) 1988 Data East Corporation (Japan) +madmotor // (c) [1989] Mitchell + // All these games have a unique code stamped on the mask roms +vaportra // MAA (c) 1989 Data East Corporation (World) +vaportra3 // MAA (c) 1989 Data East Corporation (World) +vaportrau // MAA (c) 1989 Data East Corporation (US) +kuhga // MAA (c) 1989 Data East Corporation (Japan) +cbuster // MAB (c) 1990 Data East Corporation (World) +cbusterw // MAB (c) 1990 Data East Corporation (World) +cbusterj // MAB (c) 1990 Data East Corporation (Japan) +twocrude // MAB (c) 1990 Data East USA (US) +darkseal // MAC (c) 1990 Data East Corporation (World) +darkseal1 // MAC (c) 1990 Data East Corporation (World) +darksealj // MAC (c) 1990 Data East Corporation (Japan) +gatedoom // MAC (c) 1990 Data East Corporation (US) +gatedoom1 // MAC (c) 1990 Data East Corporation (US) +edrandy // MAD (c) 1990 Data East Corporation (World) +edrandy2 // MAD (c) 1990 Data East Corporation (World) +edrandy1 // MAD (c) 1990 Data East Corporation (World) +edrandyj // MAD (c) 1990 Data East Corporation (Japan) +supbtime // MAE (c) 1990 Data East Corporation (World) +supbtimea // MAE (c) 1990 Data East Corporation (World) +supbtimej // MAE (c) 1990 Data East Corporation (Japan) +mutantf // MAF (c) 1992 Data East Corporation (World) +mutantf4 // MAF (c) 1992 Data East Corporation (World) +mutantf3 // MAF (c) 1992 Data East Corporation (World) +deathbrd // MAF (c) 1992 Data East Corporation (Japan) +cninja // MAG (c) 1991 Data East Corporation (World) +cninja1 // MAG (c) 1991 Data East Corporation (World) +cninjau // MAG (c) 1991 Data East Corporation (US) +joemac // MAG (c) 1991 Data East Corporation (Japan) +cninjabl // bootleg +stoneage // bootleg +robocop2 // MAH (c) 1991 Data East Corporation (World) +robocop2u // MAH (c) 1991 Data East Corporation (US) +robocop2j // MAH (c) 1991 Data East Corporation (Japan) +thndzone // MAJ (c) 1991 Data East Corporation (World) +dassault // MAJ (c) 1991 Data East Corporation (US) +dassault4 // MAJ (c) 1991 Data East Corporation (US) +chinatwn // MAK (c) 1991 Data East Corporation (Japan) +rohga // MAM (c) 1991 Data East Corporation (Asia/Euro) +rohga1 // MAM (c) 1991 Data East Corporation (Asia/Euro) +rohga2 // MAM (c) 1991 Data East Corporation (Asia/Euro) +rohgah // MAM (c) 1991 Data East Corporation (Hong Kong) +rohgau // MAM (c) 1991 Data East Corporation (US) +wolffang // MAM (c) 1991 Data East Corporation (Japan) +schmeisr // (c) 1993 Hot B +captaven // MAN (c) 1991 Data East Corporation (Asia) +captavena // MAN (c) 1991 Data East Corporation (Asia) +captavene // MAN (c) 1991 Data East Corporation (UK) +captavenu // MAN (c) 1991 Data East Corporation (US) +captavenuu // MAN (c) 1991 Data East Corporation (US) +captavenua // MAN (c) 1991 Data East Corporation (US) +captavenj // MAN (c) 1991 Data East Corporation (Japan) + // MAO ?? +tumblep // MAP (c) 1991 Data East Corporation (World) +tumblepj // MAP (c) 1991 Data East Corporation (Japan) +tumbleb // bootleg +tumbleb2 // bootleg +jumpkids // (c) 1993 Comad +jumppop // (c) 2001 ESD +pangpang // (c) 1994 Dong Gue La Mi Ltd. +sdfight // (c) 1996 SemiCom +wlstar // (c) 1995 Mijin +wondl96 // (c) 1996 SemiCom +fncywld // (c) 1996 Unico +htchctch // (c) 1995 SemiCom +cookbib // (c) 1995 SemiCom +chokchok // (c) 1995 SemiCom +metlsavr // (c) 1994 +bcstry // (c) 1997 SemiCom +bcstrya // (c) 1997 SemiCom +semibase // (c) 1997 SemiCom +dquizgo // (c) 1998 SemiCom +suprtrio // (c) 1994 GameAce +lemmings // prototype (c) 1991 Data East USA (US) + // MAQ ?? +dragngun // MAR (c) 1992 Data East Corporation (US) +wizdfire // MAS (c) 1992 Data East Corporation (Over Sea) +wizdfireu // MAS (c) 1992 Data East Corporation (US) +darkseal2 // MAS (c) 1992 Data East Corporation (Japan) +funkyjet // MAT (c) 1992 Mitchell +funkyjetj // MAT (c) 1992 Mitchell + // MAU ?? +nitrobal // MAV (c) 1992 Data East Corporation (US) +gunball // MAV (c) 1992 Data East Corporation (Japan) + // MAW ?? + // MAX ?? +dietgo // MAY (c) 1993 +dietgoe // MAY (c) 1993 +dietgou // MAY (c) 1993 +dietgoj // MAY (c) 1993 +pktgaldx // MAZ (c) 1993 Data East (Euro v3.00) +pktgaldxj // MAZ (c) 1993 +pktgaldxb // bootleg + // MBA ?? + // MBB ?? + // MBC ?? +boogwing // MBD (c) 1992 (Euro) +boogwinga // MBD (c) 1992 (Asia) +ragtime // MBD (c) 1992 (Japan) +ragtimea // MBD (c) 1992 (Japan) +dblewing // MBE (c) 1993 Mitchell +fghthist // MBF (c) 1993 Data East Corporation (World) +fghthistu // MBF (c) 1993 Data East Corporation (US) +fghthista // MBF (c) 1993 Data East Corporation (US) +fghthistj // MBF (c) 1993 Data East Corporation (Japan) +hvysmsh // MBG (c) 1993 Data East Corporation (World) +hvysmsha // MBG (c) 1993 Data East Corporation (Asia) +hvysmshj // MBG (c) 1993 Data East Corporation (Japan) +nslasher // MBH (c) 1993 Data East Corporation +nslasherj // MBH (c) 1993 Data East Corporation (Japan) +nslashers // MBH (c) 1993 Data East Corporation (Japan) + // MBI ?? + // MBJ ?? + // MBK ?? + // MBL ?? +lockload // MBM (c) 1994 Data East Corporation (US) +lockloadu // MBM (c) 1994 Data East Corporation (US) +joemacr // MBN (c) 1994 +joemacra // MBN (c) 1994 + // MBO ?? + // MBP ?? + // MBQ ?? +tattass // prototype (c) 1994 Data East Pinball (US) +tattassa // prototype (c) 1994 Data East Pinball (Asia) +charlien // MBR (c) 1994 Mitchell + // MBS ?? + // MBT ?? + // MBU ?? + // MBV ?? + // MBW ?? +wcvol95 // MBX (c) 1993 Data East + // MBY ?? +backfire // MBZ (c) 1995 +backfirea // MBZ (c) 1995 + // MCA ?? +prtytime // MCB (c) 1995 Mitchell +gangonta // MCB (c) 1995 Mitchell +chainrec // MCC (c) 1994 +magdrop // MCC (c) 1995 Data East +magdropp // MCC (c) 1995 Data East + // MCD ?? +// MCE Dunk Dream 95/Hoops96 See MLC games below +osman // MCF (c) 1996 Mitchell +candance // MCF (c) 1996 Mitchell +sotsugyo // (c) 1995 Mitchell (Atlus license) +sshangha // (c) 1992 Hot-B +sshanghab // bootleg + +// Data East MLC Games +hoops96 // MCE (c) 1996 Data East Corporation +ddream95 // MCE (c) 1996 Data East Corporation +hoops95 // MCE (c) 1996 Data East Corporation +avengrgs // MCG (c) 1995 Data East Corporation (World) +avengrgsj // MCG (c) 1995 Data East Corporation (Japan) +skullfng // MCH (c) 1996 Data East Corporation (World) +skullfngj // MCH (c) 1996 Data East Corporation (Japan) +stadhr96 // MCM (c) 1996 Data East +stadhr96j // MCM (c) 1996 Data East + +// Tehkan / Tecmo games (Tehkan became Tecmo in 1986) +senjyo // (c) 1983 Tehkan +starforc // (c) 1984 Tehkan +starforce // (c) 1984 Tehkan +starforcb // (c) 1984 Tehkan +starforca // (c) 1984 Tehkan +megaforc // (c) 1985 Tehkan + Video Ware license +baluba // (c) 1986 Able Corp. +bombjack // (c) 1984 Tehkan +bombjack2 // (c) 1984 Tehkan +pbaction // (c) 1985 Tehkan +pbaction2 // (c) 1985 Tehkan +pbaction3 // (c) 1985 Tehkan +pbaction4 // (c) 1985 Tehkan +pbaction5 // (c) 1985 Tehkan + // 6009 Tank Busters +ponttehk // 6011 - (c) 1985 Tehkan +lvpoker // ???? - (c) 1985 Tehkan +lvcards // (c) 1985 Tehkan +tehkanwc // (c) 1985 Tehkan +tehkanwcb // bootleg +tehkanwcc // bootleg +gridiron // (c) 1985 Tehkan +teedoff // 6102 - (c) 1986 Tecmo +solomon // (c) 1986 Tecmo +solomonj // (c) 1986 Tecmo +rygar // 6002 - (c) 1986 Tecmo +rygar2 // 6002 - (c) 1986 Tecmo +rygar3 // 6002 - (c) 1986 Tecmo +rygarj // 6002 - (c) 1986 Tecmo +gemini // (c) 1987 Tecmo +silkworm // 6217 - (c) 1988 Tecmo +silkworm2 // 6217 - (c) 1988 Tecmo +backfirt // bootleg [(c) 1988 Tecmo] +tbowl // 6206 - (c) 1987 Tecmo +tbowlj // 6206 - (c) 1987 Tecmo +shadoww // 6215 - (c) 1988 Tecmo (World) +shadowwa // 6215 - (c) 1988 Tecmo (World) +gaiden // 6215 - (c) 1988 Tecmo (US) +ryukendn // 6215 - (c) 1989 Tecmo (Japan) +ryukendna // 6215 - (c) 1989 Tecmo (Japan) +mastninj // bootleg +wildfang // (c) 1989 Tecmo +wildfangs // (c) 1989 Tecmo +tknight // (c) 1989 Tecmo +stratof // (c) 1991 Tecmo +raiga // (c) 1991 Tecmo +drgnbowl // (c) 1992 Nics +wc90 // (c) 1989 Tecmo +wc90a // (c) 1989 Tecmo +wc90b // (c) 1989 Tecmo +wc90t // (c) 1989 Tecmo +wc90b1 // bootleg +wc90b2 // bootleg +spbactn // 9002 - (c) 1991 Tecmo +spbactnj // 9002 - (c) 1991 Tecmo +fstarfrc // (c) 1992 Tecmo +fstarfrcj // (c) 1992 Tecmo +ginkun // (c) 1995 Tecmo +deroon // (c) 1996 Tecmo +tkdensho // (c) 1996 Tecmo +tkdenshoa // (c) 1996 Tecmo + +// Konami bitmap games +tutankhm // GX350 (c) 1982 Konami +tutankhms // GX350 (c) 1982 Stern +junofrst // GX310 (c) 1983 Konami +junofrstg // GX310 (c) 1983 Konami + Gottlieb license + +// Konami games +pooyan // GX320 (c) 1982 +pooyans // GX320 (c) 1982 Stern +pootan // bootleg +timeplt // GX393 (c) 1982 +timepltc // GX393 (c) 1982 + Centuri license +timeplta // GX393 (c) 1982 + Atari license +spaceplt // bootleg +psurge // (c) 1988 unknown (NOT Konami) +megazone // GX319 (c) 1983 +megazonea // GX319 (c) 1983 +megazoneb // GX319 (c) 1983 + Kosuka +megazonec // GX319 (c) 1983 + Kosuka +megazonei // GX319 (c) 1983 + Interlogic / Kosuka +pandoras // GX328 (c) 1984 + Interlogic +gyruss // GX347 (c) 1983 +gyrussce // GX347 (c) 1983 + Centuri license +gyrussb // bootleg or actual Taito NZ license? +venus // bootleg +trackfld // GX361 (c) 1983 +trackfldc // GX361 (c) 1983 + Centuri license +trackfldnz // (c) 1982 Goldberg Enterprizes Inc. +hyprolym // GX361 (c) 1983 +hyprolymb // bootleg +atlantol // bootleg +wizzquiz // (c) 1985 Konami +wizzquiza // (c) 1985 Zilec-Zenitone +reaktor // (c) 1985 Zilec +mastkin // (c) 1988 Du Tech +rocnrope // GX364 (c) 1983 +rocnropek // GX364 (c) 1983 + Kosuka +ropeman // (c) 1983 bootleg +circusc // GX380 (c) 1984 +circusc2 // GX380 (c) 1984 +circusc3 // GX380 (c) 1984 +circuscc // GX380 (c) 1984 + Centuri license +circusce // GX380 (c) 1984 + Centuri license +tp84 // GX388 (c) 1984 +tp84a // GX388 (c) 1984 +tp84b // GX388 (c) 1984 +hyperspt // GX330 (c) 1984 + Centuri +hypersptb // bootleg +hpolym84 // GX330 (c) 1984 +sbasketb // GX405 (c) 1984 (Version I, Encrypted) +sbasketh // GX405 (c) 1984 (Version H, Unprotected) +sbasketg // GX405 (c) 1984 (Version G, Encrypted) +sbaskete // GX405 (c) 1984 (Version E, Encrypted) +mikie // GX469 (c) 1984 +mikiej // GX469 (c) 1984 +mikiehs // GX469 (c) 1984 +roadf // GX461 (c) 1984 +roadf2 // GX461 (c) 1984 +yiear // GX407 (c) 1985 +yiear2 // GX407 (c) 1985 +yieartf // GX361 (c) 1985 +kicker // GX477 (c) 1985 +shaolins // GX477 (c) 1985 +shaolinb // bootleg +pingpong // GX555 (c) 1985 +merlinmm // (c) 1986 Zilec-Zenitone +cashquiz // (c) 1986 Zilec-Zenitone +gberet // GX577 (c) 1985 +rushatck // GX577 (c) 1985 +gberetb // bootleg on different hardware +mrgoemon // GX621 (c) 1986 (Japan) +jailbrek // GX507 (c) 1986 +manhatan // GX507 (c) 1986 (Japan) +jailbrekb // bootleg +scotrsht // GX545 (c) 1985 +finalizr // GX523 (c) 1985 +finalizrb // bootleg +ironhors // GX560 (c) 1986 +dairesya // GX560 (c) 1986 (Japan) +farwest // bootleg +jackal // GX631 (c) 1986 (World) +topgunr // GX631 (c) 1986 (US) +jackalj // GX631 (c) 1986 (Japan) +topgunbl // bootleg +ddribble // GX690 (c) 1986 +ddribblep // GX690 (c) 1986 +contra // GX633 (c) 1987 +contra1 // GX633 (c) 1987 +contrab // bootleg +contraj // GX633 (c) 1987 (Japan) +contrajb // bootleg +gryzor // GX633 (c) 1987 +gryzora // GX633 (c) 1987 +combatsc // GX611 (c) 1988 +combatsct // GX611 (c) 1987 +combatscj // GX611 (c) 1987 (Japan) +bootcamp // GX611 (c) 1987 +combatscb // bootleg +rockrage // GX620 (c) 1986 (World?) +rockragea // GX620 (c) 1986 (Prototype?) +rockragej // GX620 (c) 1986 (Japan) +mx5000 // GX669 (c) 1987 +flkatck // GX669 (c) 1987 (Japan) +fastlane // GX752 (c) 1987 +tricktrp // GX771 (c) 1987 +labyrunr // GX771 (c) 1987 (Japan) +labyrunrk // GX771 (c) 1987 (Japan) +thehustl // GX765 (c) 1987 (Japan) +thehustlj // GX765 (c) 1987 (Japan) +rackemup // GX765 (c) 1987 +battlnts // GX777 (c) 1987 +battlntsj // GX777 (c) 1987 (Japan) +bladestl // GX797 (c) 1987 +bladestll // GX797 (c) 1987 +bladestle // GX797 (c) 1987 +hcastle // GX768 (c) 1988 +hcastleo // GX768 (c) 1988 +hcastlej // GX768 (c) 1988 (Japan) +hcastljo // GX768 (c) 1988 (Japan) +ajax // GX770 (c) 1987 +typhoon // GX770 (c) 1987 +ajaxj // GX770 (c) 1987 (Japan) +scontra // GX775 (c) 1988 +scontraj // GX775 (c) 1988 (Japan) +thunderx // GX873 (c) 1988 +thunderxa // GX873 (c) 1988 +thunderxb // GX873 (c) 1988 +thunderxj // GX873 (c) 1988 (Japan) +mainevt // GX799 (c) 1988 +mainevto // GX799 (c) 1988 +mainevt2p // GX799 (c) 1988 +ringohja // GX799 (c) 1988 (Japan) +devstors // GX890 (c) 1988 +devstors2 // GX890 (c) 1988 +devstors3 // GX890 (c) 1988 +garuka // GX890 (c) 1988 (Japan) +88games // GX861 (c) 1988 +konami88 // GX861 (c) 1988 +hypsptsp // GX861 (c) 1988 (Japan) +gbusters // GX878 (c) 1988 +gbustersa // GX878 (c) 1988 +crazycop // GX878 (c) 1988 (Japan) +crimfght // GX821 (c) 1989 (US) +crimfght2 // GX821 (c) 1989 (World) +crimfghtj // GX821 (c) 1989 (Japan) +spy // GX857 (c) 1989 (World) +spyu // GX857 (c) 1989 (US) +bottom9 // GX891 (c) 1989 +bottom9n // GX891 (c) 1989 +mstadium // GX891 (c) 1989 (Japan) +blockhl // GX973 (c) 1989 +quarth // GX973 (c) 1989 (Japan) +aliens // GX875 (c) 1990 (World) +aliens2 // GX875 (c) 1990 (World) +aliens3 // GX875 (c) 1990 (World) +aliensu // GX875 (c) 1990 (US) +aliensj // GX875 (c) 1990 (Japan) +aliensj2 // GX875 (c) 1990 (Japan) +aliensa // GX875 (c) 1990 (Asia) +suratk // GX911 (c) 1990 (World) +suratka // GX911 (c) 1990 (Asia) +suratkj // GX911 (c) 1990 (Japan) +parodius // GX955 (c) 1990 (World) +parodiusa // GX955 (c) 1990 (World) +parodiusj // GX955 (c) 1990 (Japan) +rollerg // GX999 (c) 1991 (US) +rollergj // GX999 (c) 1991 (Japan) +simpsons // GX072 (c) 1991 +simpsons4pa // GX072 (c) 1991 +simpsons2p // GX072 (c) 1991 +simpsons2p2 // GX072 (c) 1991 +simpsons2pa // GX072 (c) 1991 (Asia) +simpsons2pj // GX072 (c) 1991 (Japan) +esckids // GX975 (c) 1991 (Asia) +esckidsj // GX975 (c) 1991 (Japan) +vendetta // GX081 (c) 1991 (World) +vendettar // GX081 (c) 1991 (World) +vendetta2p // GX081 (c) 1991 (World) +vendetta2pu // GX081 (c) 1991 (Asia) +vendetta2pd // GX081 (c) 1991 (Asia) +vendettaj // GX081 (c) 1991 (Japan) +mogura // GX141 (c) 1991 +wecleman // GX602 (c) 1986 +hotchase // GX763 (c) 1988 +chqflag // GX717 (c) 1988 +chqflagj // GX717 (c) 1988 (Japan) +ultraman // GX910 (c) 1991 Banpresto/Bandai +hexion // GX122 (c) 1992 +lethalen // GX191 (c) 1992 +lethalenua // GX191 (c) 1992 +lethalenux // GX191 (c) 1992 +lethaleneab // GX191 (c) 1992 +lethaleneae // GX191 (c) 1992 +lethalenj // GX191 (c) 1992 +tgtpanic // GX601 (c) 1996 + +// Konami "Nemesis hardware" games +nemesis // GX456 (c) 1985 +nemesisuk // GX456 (c) 1985 +konamigt // GX561 (c) 1985 +salamand // GX587 (c) 1986 +salamandj // GX587 (c) 1986 +lifefrce // GX587 (c) 1986 (US) +lifefrcej // GX587 (c) 1986 (Japan) +blkpnthr // GX604 (c) 1987 (Japan) +citybomb // GX787 (c) 1987 (World) +citybombj // GX787 (c) 1987 (Japan) +kittenk // GX712 (c) 1988 +nyanpani // GX712 (c) 1988 (Japan) +hcrash // GX790 (c) 1987 +hcrashc // GX790 (c) 1987 + +// GX400 BIOS based games +rf2 // GX561 (c) 1985 +twinbee // GX412 (c) 1985 +gradius // GX456 (c) 1985 +gwarrior // GX578 (c) 1985 + +// Konami "Twin 16" games +devilw // GX687 (c) 1987 +darkadv // GX687 (c) 1987 +majuu // GX687 (c) 1987 (Japan) +vulcan // GX785 (c) 1988 +vulcana // GX785 (c) 1988 +vulcanb // GX785 (c) 1988 +gradius2 // GX785 (c) 1988 (Japan) +gradius2a // GX785 (c) 1988 (Japan) +gradius2b // GX785 (c) 1988 (Japan) +cuebrickj // GX903 (c) 1989 (Japan) +fround // GX870 (c) 1988 +froundl // GX870 (c) 1988 +hpuncher // GX870 (c) 1988 (Japan) +miaj // GX808 (c) 1989 (Japan) + +// (some) Konami 68000 games +cuebrick // GX903 (c) 1989 +mia // GX808 (c) 1989 +mia2 // GX808 (c) 1989 +tmnt // GX963 (c) 1989 (World) +tmntu // GX963 (c) 1989 (US) +tmntua // GX963 (c) 1989 (US) +tmht // GX963 (c) 1989 (UK) +tmhta // GX963 (c) 1989 (UK) +tmntj // GX963 (c) 1990 (Japan) +tmht2p // GX963 (c) 1989 (UK) +tmht2pa // GX963 (c) 1989 (UK) +tmnt2pj // GX963 (c) 1990 (Japan) +tmnt2po // GX963 (c) 1989 (Oceania) +punkshot // GX907 (c) 1990 (US) +punkshot2 // GX907 (c) 1990 (US) +punkshotj // GX907 (c) 1990 (Japan) +lgtnfght // GX939 (c) 1990 (World) +lgtnfghta // GX939 (c) 1990 (Asia) +lgtnfghtu // GX939 (c) 1990 (US) +trigon // GX939 (c) 1990 (Japan) +blswhstl // GX060 (c) 1991 +detatwin // GX060 (c) 1991 (Japan) +glfgreat // GX061 (c) 1991 +glfgreatj // GX061 (c) 1991 (Japan) +tmnt2 // GX063 (c) 1991 (US) +tmnt2a // GX063 (c) 1991 (Asia) +tmht22pe // GX063 (c) 1991 (UK) +tmnt22pu // GX063 (c) 1991 (US) +ssriders // GX064 (c) 1991 (World) +ssridersebd // GX064 (c) 1991 (World) +ssridersebc // GX064 (c) 1991 (World) +ssridersuda // GX064 (c) 1991 (US) +ssriderseaa // GX064 (c) 1991 (US) +ssridersuac // GX064 (c) 1991 (US) +ssridersubc // GX064 (c) 1991 (US) +ssridersabd // GX064 (c) 1991 (Asia) +ssridersadd // GX064 (c) 1991 (Asia) +ssridersjbd // GX064 (c) 1991 (Japan) +ssridersb // bootleg +ssriders2 // bootleg +xmen // GX065 (c) 1992 (US) +xmenj // GX065 (c) 1992 (Japan) +xmene // GX065 (c) 1992 (Europe) +xmen2pe // GX065 (c) 1992 (World) +xmen2pa // GX065 (c) 1992 (Asia) +xmen2pj // GX065 (c) 1992 (Japan) +xmen6p // GX065 (c) 1992 +xmen6pu // GX065 (c) 1992 +xexex // GX067 (c) 1991 (World) +xexexa // GX067 (c) 1991 (AAA) +xexexj // GX067 (c) 1991 (Japan) +asterix // GX068 (c) 1992 (World) +asterixeac // GX068 (c) 1992 (World) +asterixeaa // GX068 (c) 1992 (World) +asterixaad // GX068 (c) 1992 (Asia) +asterixj // GX068 (c) 1992 (Japan) +gijoe // GX069 (c) 1991 (World) +gijoea // GX069 (c) 1991 (World) +gijoeu // GX069 (c) 1991 (US) +gijoej // GX069 (c) 1991 (Japan) +thndrx2 // GX073 (c) 1991 (World) +thndrx2a // GX073 (c) 1991 (Asia) +thndrx2j // GX073 (c) 1991 (Japan) +prmrsocr // GX101 (c) 1993 (Europe) +prmrsocrj // GX101 (c) 1993 (Japan) +qgakumon // GX248 (c) 1993 (Japan) +moomesa // GX151 (c) 1992 (World) +moomesau // GX151 (c) 1992 (US) +moomesaua // GX151 (c) 1992 (US) +moomesaa // GX151 (c) 1992 (Asia) +moomesabl // bootleg +bucky // GX173 (c) 1992 (World) +buckyua // GX173 (c) 1992 (US) +buckyaa // GX173 (c) 1992 (Asia) +gaiapols // GX123 (c) 1993 (Europe) +gaiapolsu // GX123 (c) 1993 (US) +gaiapolsj // GX123 (c) 1993 (Japan) +mystwarr // GX128 (c) 1993 (World) +mystwarru // GX128 (c) 1993 (US) +mystwarrj // GX128 (c) 1993 (Japan) +mystwarra // GX128 (c) 1993 (Asia) +viostorm // GX168 (c) 1993 (Europe) +viostormu // GX168 (c) 1993 (US) +viostormub // GX168 (c) 1993 (US) +viostormj // GX168 (c) 1993 (Japan) +viostorma // GX168 (c) 1993 (Asia) +viostormab // GX168 (c) 1993 (Asia) +mmaulers // GX170 (c) 1993 (Europe) +dadandrn // GX170 (c) 1993 (Japan) +metamrph // GX224 (c) 1993 (Europe) +metamrphu // GX224 (c) 1993 (US) +metamrphj // GX224 (c) 1993 (Japan) +mtlchamp // GX234 (c) 1993 (World) +mtlchamp1 // GX234 (c) 1993 (World) +mtlchampu // GX234 (c) 1993 (US) +mtlchampj // GX234 (c) 1993 (Japan) +mtlchampa // GX234 (c) 1993 (Japan) +rungun // GX247 (c) 1993 (World) +runguna // GX247 (c) 1993 (World) +rungunu // GX247 (c) 1993 (US) +rungunua // GX247 (c) 1993 (US) +slmdunkj // GX247 (c) 1993 (Japan) +dbz // (c) 1993 Banpresto +dbz2 // (c) 1994 Banpresto +bishi // GX575 (c) 1996 (Japan) +sbishi // GX675 (c) 1998 (Japan) +sbishik // GX675 (c) 1998 (Korea) + +// Konami dual 68000 games +overdriv // GX789 (c) 1990 +gradius3 // GX945 (c) 1989 (Japan) +gradius3a // GX945 (c) 1989 (Asia) +gradius3e // GX945 (c) 1989 (World?) + +// Konami 68020 games +plygonet // GX305 (c) 1993 +polynetw // GX305 too? (c) 1993 + +// Konami System GX games +konamigx + +// GX Type 1 +racinfrc // 1994.?? GX250 (Europe) +racinfrcu // 1994.03 GX250 (US) + // 1994.02 (Japan) +opengolf // 1994.?? GX218 (Europe) +opengolf2 // 1994.?? GX218 (Europe) +ggreats2 // 1994.03 GX218 (Japan) + // 1995.03 GX218 (US) + +// GX Type 2 +le2 // 1994.?? GX312 (Europe) +le2u // 1994.04 GX312 (US) +le2j // 1994.06 GX312 (Japan) +puzldama // 1994.07 GX315 (Japan) +gokuparo // 1994.04 GX321 (Japan) +fantjour // 1994.?? GX321 (Euro) +fantjoura // 1994.?? GX321 (Asia) +dragoona // 1995.?? GX417 (Asia) +dragoonj // 1995.08 GX417 (Japan) +tbyahhoo // 1995.04 GX424 (Japan) +tkmmpzdm // 1995.12 GX515 (Japan) +salmndr2 // 1996.01 GX521 (Japan) +salmndr2a // 1996.?? GX521 (Asia) +sexyparo // 1996.02 GX533 (Japan) +sexyparoa // 1996.02 GX533 (Asia) +daiskiss // 1996.03 GX535 (Japan) +tokkae // 1996.10 GX615 (Japan) +winspike // 1997.?? GX705 (Europe) +winspikej // 1997.07 GX705 (Japan) + +// GX Type 3 +soccerss // 1994.?? GX427 (Europe) +soccerssj // 1994.12 GX427 (Japan) +soccerssja // 1994.12 GX427 (Japan) +soccerssa // 1994.?? GX427 (Asia) + // 1995.04 GX427 (US) + +// GX Type 4 +vsnetscr // 1996.?? GX627 (Europe) +vsnetscreb // 1996.?? GX627 (Europe) +vsnetscru // 1996.?? GX627 (US) +vsnetscra // 1996.?? GX627 (Asia) +vsnetscrj // 1996.12 GX627 (Japan) +rungun2 // 1996.03 GX505 (US) +slamdnk2 // 1996.03 GX505 (Japan) +rushhero // 1997.10 GX605 (US) + +// 68k + HD +qdrmfgp // 1994.12 GQ460 (Japan) +qdrmfgp2 // 1995.09 GE557 (Japan) + +// 68000-based gambling games +kingtut +moneybnk + +// DJ Main +bm1stmix // GQ753 (c) 1997 (Japan) +bm2ndmix // GX853 (c) 1998 (Japan) +bm2ndmxa // GX853 (c) 1998 (Japan) +bm3rdmix // GX853 (c) 1998 (Japan) +//bm3rdmxb // GX853 (c) 1998 (Japan) +bmcompmx // GX858 (c) 1999 (Japan) +hmcompmx // GX858 (c) 1999 +bm4thmix // GX847 (c) 1999 (Japan) +bm5thmix // GX981 (c) 1999 (Japan) +bmclubmx // GX993 (c) 2000 (Japan) +bmcorerm // GXA05 (c) 1999 (Japan) +bmdct // GX995 (c) 2000 (Japan) +bmcompm2 // GX988 (c) 2000 (Japan) +hmcompm2 // GX988 (c) 2000 +bm6thmix // GXA21 (c) 2001 (Japan) +bm7thmix // GXB07 (c) 2001 (Japan) +bmfinal // GXC01 (c) 2002 (Japan) + +//popn1 // GX803 (c) 1998 (Japan) +popn2 // GX831 (c) 1998 (Japan) +//popn3 // GX980 (c) 1999 (Japan) +//popnstex // GX970 (c) 1999 (Japan) + +// Firebeat games +ppp // GQ977 (c) 2000 +ppd // GQ977 (c) 2000 (Korea) +ppp11 // GQ977 (c) 2000 +kbm // GQ974 (c) 2000 +kbm2nd // GCA01 (c) 2000 +kbm3rd // GCA12 (c) 2001 +popn5 // GCA04 (c) 2000 +popn7 // not sure, doesn't boot yet (c) 2001 + +// PowerPC based Konami games +fiveside // GX479 (c)1995 +thunderh // GX680 (c)1996 Euro EAA +thunderhu // GX680 (c)1996 USA UAA +slrasslt // GX792 (c)1996 +gticlub // GX688 (c)1996 Euro EAA +gticluba // GX688 (c)1996 Asia AAA +gticlubj // GX688 (c)1996 Japan JAA +hangplt // GX685 (c)1997 +nbapbp // GX778 (c)1998 +terabrst // GX715 (c)1998 USA UEL 1998/07/17 +terabrsta // GX715 (c)1998 Asia AAA 1998/02/25 +gradius4 // GX837 (c)1999 +sscope // GX830 (c)1999 +sscopea // GX830 (c)1999 +sscopeb // GX830 (c)1999 +sscopec // GX830 (c)1999 +sscope2 // GX931 (c)2000 +racingj // GX676 (c)1998 +racingj2 // GX888 (c)1999 (EAE) +racingj2j // GX888 (c)1999 (JAE) +thrilld // GX713 (c)1998 Japan JAE +thrilldb // GX713 (c)1998 Japan JAB +thrilldae // GX713 (c)1998 Europe EAA +midnrun // GX476 (c)1995 +windheat // GX677 (c)1996 +windheatu // GX677 (c)1996 +windheatj // GX677 (c)1996 +waveshrk // GX678 (c)1996 + +// Konami M2 games +polystar // GX623 (c)1997 +totlvice // GX639 (c)1997 +totlvicj // GX639 (c)1997 +btltryst // GX636 (c)1998 +heatof11 // GX703 (c)1998 +evilngt // GX810 (c)1998 +evilngte // GX810 (c)1998 +hellngt // GX810 (c)1998 + +// Exidy games +carpolo // (c) 1977 +sidetrac // (c) 1979 +targ // (c) 1980 +targc // (c) 1980 +spectar // (c) 1980 +spectar1 // (c) 1980 +rallys // (c) 1980 Novar (bootleg) +panzer // (c) 1980 Proel (bootleg) +phantoma // (c) 1980 Jeutel (bootleg) +phantom // (c) 1980 Proel (bootleg) +venture // (c) 1981 +venture2 // (c) 1981 +venture4 // (c) 1981 +teetert // (c) 1981 +mtrap // (c) 1981 +mtrap3 // (c) 1981 +mtrap4 // (c) 1981 +pepper2 // (c) 1982 +hardhat // (c) 1982 +fax // (c) 1983 +fax2 // (c) 1983 +circus // no copyright notice [1977?] +circusse // bootleg +robotbwl // no copyright notice +crash // Exidy [1979?] +smash // bootleg +ripcord // Exidy [1977?] +starfire // Exidy [1979?] +starfirea // Exidy [1979?] +fireone // (c) 1979 Exidy +starfir2 // (c) 1979 Exidy +victory // (c) 1982 +victorba // (c) 1982 +topgunnr // (c) 1986 + +// Exidy 440 games +crossbow // (c) 1983 +cheyenne // (c) 1984 +combat // (c) 1985 +catch22 // (c) 1985 +cracksht // (c) 1985 +claypign // (c) 1986 +chiller // (c) 1986 +topsecex // (c) 1986 +hitnmiss // (c) 1987 +hitnmiss2 // (c) 1987 +whodunit // (c) 1988 +showdown // (c) 1988 +yukon // (c) 1989 +yukon1 // (c) 1989 + +// Exidy Max-A-Flex +maxaflex +mf_achas // (c) 1982 Exidy / First Star Software +mf_brist // (c) 1983 Exidy / First Star Software +mf_flip // (c) 1983 Exidy / First Star Software +mf_bdash // (c) 1984 Exidy / First Star Software + +// Atari b/w games +tank8 // ?????? 1976/04 [6800] +tank8a // ?????? 1976/04 [6800] +tank8b // ?????? 1976/04 [6800] +tank8c // ?????? 1976/04 [6800] +tank8d // ?????? 1976/04 [6800] +cball // ?????? prototype 1976/?? [6800] +copsnrob // 005625 1976/07 [6502] +flyball // 005629 1976/07 [6502] +sprint2 // 005922 1976/11 [6502] +sprint2a // 005922 1976/11 [6502] +sprint4 // 008716 1977/12 [6502] +sprint4a // 008716 1977/12 [6502] +nitedrvr // 006321 1976/10 [6502] +dominos // 007305 1977/01 [6502] +triplhnt // 008422-008791 1977/04 [6800] +sprint8 // ?????? 1977/05 [6800] +sprint8a // ?????? 1977/05 [6800] +dragrace // 008505-008521 1977/06 [6800] +poolshrk // 006281 1977/06 [6800] +starshp1 // 007513-007531 1977/07 [6502] +starshpp // 007513-007531 1977/07 [6502] +superbug // 009115-009467 1977/09 [6800] +canyon // 009493-009504 1977/10 [6502] +canyonp // 009493-009504 1977/10 [6502] +destroyr // 030131-030136 1977/10 [6800] +destroyr1 // 030131-030136 1977/10 [6800] +catchp // 008837 prototype 1977/?? [6502] +sprint1 // 006443 1978/01 [6502] +ultratnk // 009801 1978/02 [6502] +skyraid // 009709 1978/03 [6502] +tourtabl // 030170 1978/03 [6507] +tourtab2 // 030170 1978/03 [6507] +avalnche // 030574 1978/04 [6502] +cascade // bootleg +firetrk // 030926 1978/06 [6808] +skydiver // 009787 1978/06 [6800] +// Smokey Joe // 030926 1978/07 [6502] +sbrkout3 // 033442-033452 1978/09 [6502] +sbrkout // 033453-033455 1978/09 [6502] +atarifb // 033xxx 1978/10 [6502] +atarifb1 // 033xxx 1978/10 [6502] +orbit // 033689-033702 1978/11 [6800] +boxer // ?????? prototype 1978 [6502] +wolfpack // ?????? prototype [6502] +mgolf // ?????? prototype 1978 [6502] +videopin // 034253-034267 1979/02 [6502] +atarifb4 // 034754 1979/04 [6502] +subs // 033714 1979/05 [6502] +bsktball // 034756-034766 1979/05 [6502] +abaseb // 034711-034738 1979/06 [6502] +abaseb2 // 034711-034738 1979/06 [6502] +montecar // 035763-035780 1980/04 [6502] +soccer // 035222-035260 1980/04 [6502] + +// Atari "Missile Command hardware" games +missile // 035820-035825 (c) 1980 +missile2 // 035820-035825 (c) 1980 +suprmatk // (c) 1980 + (c) 1981 Gencomp +suprmatkd // (c) 1980 + (c) 1981 Gencomp +mcombat +mcombata + +// Atari vector games +llander // 0345xx no copyright notice +llander1 // 0345xx no copyright notice +asteroid // 035127-035145 (c) 1979 +asteroid2 // 035127-035145 (c) 1979 +asteroid1 // 035127-035145 no copyright notice +asteroidb // (bootleg) +asterock // Sidam bootleg (c) 1979 +meteorts // VCC bootleg (c) 1979 +meteorho // Hoei? bootleg (c) 1980 +astdelux // 0351xx (c) 1980 +astdelux2 // 0351xx (c) 1980 +astdelux1 // 0351xx (c) 1980 +bzone // 0364xx (c) 1980 +bzone2 // 0364xx (c) 1980 +bzonec // 0364xx (c) 1980 +bradley // ?? (c) 1980 +redbaron // 036995-037007 (c) 1980 +tempest // 136002 (c) 1980 +tempest1 // 136002 (c) 1980 +tempest2 // 136002 (c) 1980 +tempest3 // 136002 (c) 1980 +temptube // (hack) +spacduel // 136006 (c) 1980 +gravitar // 136010 (c) 1982 +gravitar2 // 136010 (c) 1982 +gravp // (proto) (c) 1982 +lunarbat // (proto) (c) 1982 +lunarba1 // (proto) (c) 1982 +quantum // 136016 (c) 1982 // made by Gencomp +quantum1 // 136016 (c) 1982 // made by Gencomp +quantump // 136016 (c) 1982 // made by Gencomp +bwidow // 136017 (c) 1982 +starwars // 136021 (c) 1983 +starwars1 // 136021 (c) 1983 +tomcatsw // (proto) (c) 1983 +mhavoc // 136025 (c) 1983 +mhavoc2 // 136025 (c) 1983 +mhavocp // 136025 (c) 1983 +mhavocrv // (hack) +alphaone // (proto) (c) 1983 +alphaonea // (proto) (c) 1983 +esb // 136031 (c) 1985 +tomcat // (proto) (c) 1985 + +// Atari "Centipede hardware" games +warlords // 037153-037159 (c) 1980 +centiped // 136001 (c) 1980 +centiped2 // 136001 (c) 1980 +centtime // 136001 (c) 1980 +centipdb // (bootleg) +centipdd // hack by Two Bit Score +caterplr // (bootleg) +millpac // Valadon +magworm // (bootleg) +mazeinv // (proto) (c) 1982 +milliped // 136013 (c) 1982 +millipdd // hack by Two Bit Score +qwak // (proto) (c) 1982 +runaway // (proto) (c) 1982 +bullsdrt // (c) 1985 Shinkai +cmmb162 + +// misc Atari games +tunhunt // 136000 (c) 1979 +tunhuntc // 136000 (c) 1981 // licensed to / distributed by Centuri +liberatr // 136012 (c) 1982 +liberatr2 // 136012 (c) 1982 +foodf // 136020 (c) 1982 // made by Gencomp +foodf2 // 136020 (c) 1982 // made by Gencomp +foodfc // 136020 (c) 1982 // made by Gencomp +ccastles // 136022 (c) 1983 +ccastlesg // 136022 (c) 1983 +ccastlesp // 136022 (c) 1983 +ccastlesf // 136022 (c) 1983 +ccastles3 // 136022 (c) 1983 +ccastles2 // 136022 (c) 1983 +ccastles1 // 136022 (c) 1983 +ccastlesj // 136022 (c) 1983 +cloak // 136023 (c) 1983 +cloaksp // 136023 (c) 1983 +cloakfr // 136023 (c) 1983 +cloakgr // 136023 (c) 1983 +agentx4 // 136023 (c) 1983 +agentx3 // 136023 (c) 1983 +agentx2 // 136023 (c) 1983 +agentx1 // 136023 (c) 1983 +cloud9 // (proto) (c) 1983 +firebeas // (proto) (c) 1983 +barbball // (proto) (c) 1983 +firefox // 136026 (c) 1984 +firefoxa // 136026 (c) 1984 +jedi // 136030 (c) 1984 + +// Atari System 1 games +atarisy1 // 136033 (c) 1984 +peterpak // 136028 (c) 1984 +// Marble Madness +marble // 136033 (c) 1984 +marble2 // 136033 (c) 1984 +marble3 // 136033 (c) 1984 +marble4 // 136033 (c) 1984 +marble5 // 136033 (c) 1984 (LSI Cartridge) +// Indiana Jones and the Temple of Doom +indytemp // 136036 (c) 1985 +indytemp2 // 136036 (c) 1985 +indytemp3 // 136036 (c) 1985 +indytemp4 // 136036 (c) 1985 +indytempd // 136036 (c) 1985 +indytempc // 136036 (c) 1985 +// Road Runner +roadrunn // 136040 (c) 1985 +roadrunn2 // 136040 (c) 1985 +roadrunn1 // 136040 (c) 1985 +// Road Blasters +roadblst // 136048 (c) 1986, 1987 +roadblstg // 136048 (c) 1986, 1987 +roadblst3 // 136048 (c) 1986, 1987 +roadblstg2 // 136048 (c) 1986, 1987 +roadblst2 // 136048 (c) 1986, 1987 +roadblstg1 // 136048 (c) 1986, 1987 +roadblst1 // 136048 (c) 1986, 1987 +roadblstc // 136048 (c) 1986, 1987 +roadblstcg // 136048 (c) 1986, 1987 +roadblstc1 // 136048 (c) 1986, 1987 + +// Atari System 2 games +// Paperboy +paperboy // 136034 (c) 1984 +paperboyr2 // 136034 (c) 1984 +paperboyr1 // 136034 (c) 1984 +// Super Sprint +ssprint // 136042 (c) 1986 +ssprint3 // 136042 (c) 1986 +ssprint1 // 136042 (c) 1986 +ssprintg // 136042 (c) 1986 +ssprintg1 // 136042 (c) 1986 +ssprintf // 136042 (c) 1986 +ssprints // 136042 (c) 1986 +// Championship Sprint +csprint // 136045 (c) 1986 +csprint2 // 136045 (c) 1986 +csprint1 // 136045 (c) 1986 +csprintg // 136045 (c) 1986 +csprintg1 // 136045 (c) 1986 +csprintf // 136045 (c) 1986 +csprints // 136045 (c) 1986 +csprints1 // 136045 (c) 1986 +// 720 Degrees +720 // 136047 (c) 1986 +720r3 // 136047 (c) 1986 +720r2 // 136047 (c) 1986 +720r1 // 136047 (c) 1986 +720g // 136047 (c) 1986 +720gr1 // 136047 (c) 1986 +// APB. +apb // 136051 (c) 1987 +apb6 // 136051 (c) 1987 +apb5 // 136051 (c) 1987 +apb4 // 136051 (c) 1987 +apb3 // 136051 (c) 1987 +apb2 // 136051 (c) 1987 +apb1 // 136051 (c) 1987 +apbg // 136051 (c) 1987 +apbf // 136051 (c) 1987 + +// Atari polygon games +irobot // 136029 (c) 1983 +// Atari System IV +laststar // (proto) (c) 1984 +airrace // (proto) (c) 1985 +// Hard Drivin' +harddriv // 136052 (c) 1988 +harddrivb // 136052 (c) 1988 +harddrivg // 136052 (c) 1988 +harddrivj // 136052 (c) 1988 +harddrivb6 // 136052 (c) 1988 +harddrivj6 // 136052 (c) 1988 +harddrivb5 // 136052 (c) 1988 +harddrivg4 // 136052 (c) 1988 +harddriv3 // 136052 (c) 1988 +harddriv2 // 136052 (c) 1988 +harddriv1 // 136052 (c) 1988 +// Hard Drivin' Compact +harddrivc // 136068 (c) 1990 +harddrivcg // 136068 (c) 1990 +harddrivcb // 136068 (c) 1990 +harddrivc1 // 136068 (c) 1990 +// Stun Runner +stunrun // 136070 (c) 1989 +stunrunj // 136070 (c) 1989 +stunrun5 // 136070 (c) 1989 +stunrune // 136070 (c) 1989 +stunrun4 // 136070 (c) 1989 +stunrun3 // 136070 (c) 1989 +stunrun3e // 136070 (c) 1989 +stunrun2 // 136070 (c) 1989 +stunrun2e // 136070 (c) 1989 +stunrun0 // 136070 (c) 1989 +stunrunp // (proto) (c) 1989 +// Race Drivin' +racedriv // 136077 (c) 1990 +racedrivb // 136077 (c) 1990 +racedrivg // 136077 (c) 1990 +racedriv4 // 136077 (c) 1990 +racedrivb4 // 136077 (c) 1990 +racedrivg4 // 136077 (c) 1990 +racedriv3 // 136077 (c) 1990 +racedriv2 // 136077 (c) 1990 +racedriv1 // 136077 (c) 1990 +racedrivb1 // 136077 (c) 1990 +racedrivg1 // 136077 (c) 1990 +// Race Drivin' Compact +racedrivc // 136077 (c) 1990 +racedrivcb // 136077 (c) 1990 +racedrivcg // 136077 (c) 1990 +racedrivc4 // 136077 (c) 1990 +racedrivcb4 // 136077 (c) 1990 +racedrivcg4 // 136077 (c) 1990 +racedrivc2 // 136077 (c) 1990 +racedrivc1 // 136077 (c) 1990 +// Race Drivin' Panorama +racedrivpan // 136077 (c) 1990 + // 136086 - BMX Heat (proto) +// Steel Talons +steeltal // 136087 (c) 1990 +steeltalg // 136087 (c) 1990 +steeltal1 // 136087 (c) 1990 +steeltalp // 136087 (c) 1990 + // 136088 - Race Drivin' Panorama +// Street Drivin' +strtdriv // 136091 (proto) +// Hard Drivin' Airbourne +hdrivair // 136098 (proto) +hdrivairp // 136098 (proto) + +// later Atari games + +// Gauntlet Hardware +// Gauntlet +gauntlet // 136037 (c) 1985 +gauntlets // 136037 (c) 1985 +gauntletj // 136037 (c) 1985 +gauntletg // 136037 (c) 1985 +gauntletj12 // 136037 (c) 1985 +gauntletr9 // 136037 (c) 1985 +gauntletgr8 // 136037 (c) 1985 +gauntletr7 // 136037 (c) 1985 +gauntletgr6 // 136037 (c) 1985 +gauntletr5 // 136037 (c) 1985 +gauntletr4 // 136037 (c) 1985 +gauntletgr3 // 136037 (c) 1985 +gauntletr2 // 136037 (c) 1985 +gauntletr1 // 136037 (c) 1985 +// Gauntlet - 2 Player +gauntlet2p // 136037 (c) 1985 +gauntlet2pj // 136037 (c) 1985 +gauntlet2pg // 136037 (c) 1985 +gauntlet2pr3 // 136037 (c) 1985 +gauntlet2pj2 // 136037 (c) 1985 +gauntlet2pg1 // 136037 (c) 1985 +// Gauntlet 2 +gaunt2 // 136043 (c) 1986 +gaunt2g // 136043 (c) 1986 +// Gauntlet 2 - 2 Player +gaunt22p // 136043 (c) 1986 +gaunt22p1 // 136043 (c) 1986 +gaunt22pg // 136043 (c) 1986 +// Vindicators Part II +vindctr2 // 136059 (c) 1988 +vindctr2r2 // 136059 (c) 1988 +vindctr2r1 // 136059 (c) 1988 + +// Other Hardware + +// Xybots +xybots // 136054 (c) 1987 +xybotsg // 136054 (c) 1987 +xybotsf // 136054 (c) 1987 +xybots1 // 136054 (c) 1987 +xybots0 // 136054 (c) 1987 +// Blasteroids +blstroid // 136057 (c) 1987 +blstroid3 // 136057 (c) 1987 +blstroid2 // 136057 (c) 1987 +blstroidg // 136057 (c) 1987 +blstroidh // (proto) (c) 1987 +// Vindicators +vindictr // 136059 (c) 1988 +vindictre // 136059 (c) 1988 +vindictrg // 136059 (c) 1988 +vindictre4 // 136059 (c) 1988 +vindictr4 // 136059 (c) 1988 +vindictre3 // 136059 (c) 1988 +vindictr2 // 136059 (c) 1988 +vindictr1 // 136059 (c) 1988 +// Toobin +toobin // 136061 (c) 1988 +toobine // 136061 (c) 1988 +toobing // 136061 (c) 1988 +toobin2 // 136061 (c) 1988 +toobin2e // 136061 (c) 1988 +toobin1 // 136061 (c) 1988 +// Cyberball +cyberbal // 136064 (c) 1989 +cyberbal2 // 136064 (c) 1989 +cyberbalp // 136064 (c) 1989 +// Atari Tetris +atetrisc // 136066 (c) 1989 +atetrisc2 // 136066 (c) 1989 +atetris // 136066 (c) 1988 +atetrisa // 136066 (c) 1988 +atetrisb // (bootleg) +atetrisb2 // (bootleg) +// Escape from the Planet of Robot Monsters +eprom // 136069 (c) 1989 +eprom2 // 136069 (c) 1989 +guts // prototype +// Cyberball 2 Player +cyberbal2p // 136071 (c) 1989 +cyberbal2p3 // 136071 (c) 1989 +cyberbal2p2 // 136071 (c) 1989 +cyberbal2p1 // 136071 (c) 1989 +// Skull and Crossbones +skullxbo // 136072 (c) 1989 +skullxbo4 // 136072 (c) 1989 +skullxbo3 // 136072 (c) 1989 +skullxbo2 // 136072 (c) 1989 +skullxbo1 // 136072 (c) 1989 +// Cyberball Tournament +cyberbalt // 136073 (c) 1989 +cyberbalt1 // 136073 (c) 1989 + +badlands // 136074 (c) 1989 +badlandsb // bootleg +klax // 136075 (c) 1989 +klax2 // 136075 (c) 1989 +klax3 // 136075 (c) 1989 +klaxj // 136075 (c) 1989 (Japan) +klaxd // 136075 (c) 1989 (Germany) +klaxp1 // prototype +klaxp2 // prototype +thunderj // 136076 (c) 1990 + +hydra // 136079 (c) 1990 +hydrap // (proto) (c) 1990 +hydrap2 // (proto) (c) 1990 +pitfight // 136081 (c) 1990 +pitfight7 // 136081 (c) 1990 +pitfight6 // 136081 (c) 1990 +pitfight5 // 136081 (c) 1990 +pitfight4 // 136081 (c) 1990 +pitfight3 // 136081 (c) 1990 +pitfightj // Japan +pitfightb // bootleg +rampart // 136082 (c) 1990 +rampart2p // 136082 (c) 1990 +rampartj // 136082 (c) 1990 (Japan) +shuuz // 136083 (c) 1990 +shuuz2 // 136083 (c) 1990 + // 136084 - Marble Man (proto) +batman // 136085 (c) 1991 +roadriot // 136089 (c) 1991 +roadrioto // 136089 (c) 1991 +offtwall // 136090 (c) 1991 +offtwallc // 136090 (c) 1991 +guardian // 136092 (c) 1992 +relief // 136093 (c) 1992 +relief2 // 136093 (c) 1992 +relief3 // 136093 (c) 1992 +arcadecl // (proto) (c) 1992 +sparkz // (proto) (c) 1992 +motofren // 136094 (c) 1992 +motofrenmd // 136094 (c) 1992 +motofrenft // 136094 (c) 1992 +motofrenmf // 136094 (c) 1992 +spclords // 136095 (c) 1992 +spclordsb // 136095 (c) 1992 +spclordsa // 136095 (c) 1992 +spclordsg // 136095 (c) 1992 +rrreveng // ?? (c) 1993 +rrrevenga // ?? (c) 1993 +rrrevengb // ?? (c) 1993 +beathead // (proto) (c) 1993 +tmek // 136100 (c) 1994 +tmek51p // 136100 (c) 1994 +tmek45 // 136100 (c) 1994 +tmek44 // 136100 (c) 1994 +tmek20 // 136100 (c) 1994 +primrage // 136102 (c) 1994 +primrage20 // 136102 (c) 1994 +metalmx // 136103? (c) 1994 +area51 // 136105 (c) 1995 +area51t // 136105 (c) 1995 +area51a // 136105 (c) 1995 +fishfren // (proto) (c) 1995 +freezeat // (proto) (c) 1996 +freezeatjp // (proto) (c) 1996 +freezeat2 // (proto) (c) 1996 +freezeat3 // (proto) (c) 1996 +freezeat4 // (proto) (c) 1996 +freezeat5 // (proto) (c) 1996 +freezeat6 // (proto) (c) 1996 +area51mx // 136105 (c) 1998 +a51mxr3k // ?? (c) 1998 +maxforce // ?? (c) 1996 +maxf_102 // ?? (c) 1996 +maxf_ng // ?? (c) 1996 +vcircle // (proto) (c) 1996 +a51site4 // ?? (c) 1998 + +// SNK / Rock-ola games +sasuke // [1980] Shin Nihon Kikaku (SNK) +satansat // (c) 1981 SNK +satansata // (c) 1981 SNK +zarzon // (c) 1981 Taito, gameplay says SNK +vanguard // (c) 1981 SNK +vanguardc // (c) 1981 SNK + Centuri +vanguardj // (c) 1981 SNK +fantasy // (c) 1981 SNK +fantasyu // (c) 1981 Rock-Ola +fantasyj // (c) 1981 SNK +pballoon // (c) 1982 SNK +pballoonr // (c) 1982 SNK (Rock-Ola license) +nibbler // (c) 1982 Rock-ola +nibblera // (c) 1982 Rock-ola +nibblerb // (c) 1982 Rock-ola +nibblero // (c) 1982 Olympia + +// later SNK games, each game can be identified by PCB code and ROM +// code, the ROM code is the same between versions, and usually based +// upon the Japanese title. +lasso // 'WM' (c) 1982 +chameleo // (c) 1983 Jaleco +wwjgtin // (c) 1984 Jaleco / Casio +photof // (c) 1984 Jaleco / Casio +pinbo // (c) 1984 Jaleco +pinboa // (c) 1984 Jaleco +pinbos // (c) 1985 Strike +joyfulr // A2001 (c) 1983 +mnchmobl // A2001 (c) 1983 + Centuri license +marvins // A2003 (c) 1983 +madcrash // A2005 (c) 1984 +madcrush // A2005 (c) 1984 +vangrd2 // A2005 (c) 1984 +mainsnk // (c) 1984 +canvas // A3008 (c) 1985 +jcross // A3006 (c) 1984 +sgladiat // A3006 (c) 1984 +hal21 // A4031 (c) 1985 +hal21j // (c) 1985 (Japan) +aso // (c) 1985 +alphamis // (c) 1985 +arian // (c) 1985 +tnk3 // A5001 (c) 1985 +tnk3j // A5001 (c) 1985 +athena // 'UP' (c) 1986 +fitegolf // 'GU' (c) 1988 +fitegolfu // 'GU' (c) 1988 +countryc // A7004 'CC' (c) 1988 +ikari // A5004 'IW' (c) 1986 +ikaria // A5004 'IW' (c) 1986 +ikarinc // A5004 'IW' (c) 1986 +ikarijp // A5004 'IW' (c) 1986 (Japan) +ikarijpb // bootleg +victroad // A6002 (c) 1986 +dogosoke // A6002 (c) 1986 +dogosokb // bootleg +gwar // A7003 'GV' (c) 1987 +gwarj // A7003 'GV' (c) 1987 (Japan) +gwara // A7003 'GV' (c) 1987 +gwarb // bootleg +bermudat // (c) 1987 +bermudatj // (c) 1987 +bermudata // A6004 'WW' (c) 1987 +worldwar // A6004 'WW' (c) 1987 +psychos // 'PS' (c) 1987 +psychosj // 'PS' (c) 1987 (Japan) +chopper // A7003 'KK' (c) 1988 +choppera // A7003 'KK' (c) 1988 +chopperb // A7003 'KK' (c) 1988 +legofair // A7003 'KK' (c) 1988 +fsoccer // A6006 'FS' (c) 1988 +fsoccerj // A6006 'FS' (c) 1988 +fsoccerb // (c) 1988 +tdfever // A6006 'TD' (c) 1987 +tdfeverj // A6006 'TD' (c) 1987 +tdfever2 // A6006 'TD'?(c) 1988 +ikari3 // A7007 'IK3'(c) 1989 +ikari3nr // A7007 'IK3'(c) 1989 +pow // A7008 'DG' (c) 1988 +powj // A7008 'DG' (c) 1988 +searchar // A8007 'BH' (c) 1989 +searcharu // A8007 'BH' (c) 1989 +searcharj // A8007 'BH' (c) 1989 +streetsm // A8007 'S2' (c) 1989 +streetsm1 // A7008 'S2' (c) 1989 +streetsmw // (c) 1989 +streetsmj // A8007 'S2' (c) 1989 +prehisle // A8003 'GT' (c) 1989 +prehisleu // A8003 'GT' (c) 1989 +prehislek // A8003 'GT' (c) 1989 +gensitou // A8003 'GT' (c) 1989 +mechatt // A8002 'MA' (c) 1989 +mechattu // A8002 'MA' (c) 1989 +bbusters // A9003 'BB' (c) 1989 +bbustersu // A9003 'BB' (c) 1989 + +// Electrocoin on early SNK hardware +dmndrby // G4001 'DD' (c) 1986 +dmndrbya // G4001 'DD' (c) 1986 + +// Neo Geo games +// the four digits number is the game ID stored at address 0x0108 of the program ROM +// info on prototypes taken from http://www.members.tripod.com/fresa/proto/puzzle.htm +neogeo +nam1975 // 0001 (c) 1990 SNK +bstars // 0002 (c) 1990 SNK +bstarsh // 0002 (c) 1990 SNK +tpgolf // 0003 (c) 1990 SNK +mahretsu // 0004 (c) 1990 SNK +maglord // 0005 (c) 1990 Alpha Denshi Co. +maglordh // 0005 (c) 1990 Alpha Denshi Co. +ridhero // 0006 (c) 1990 SNK +ridheroh // 0006 (c) 1990 SNK +alpham2 // 0007 (c) 1991 SNK + // 0008 Sunshine (prototype) 1990 SNK +ncombat // 0009 (c) 1990 Alpha Denshi Co. +ncombath // 0009 (c) 1990 Alpha Denshi Co. +cyberlip // 0010 (c) 1990 SNK +superspy // 0011 (c) 1990 SNK + // 0012 + // 0013 +mutnat // 0014 (c) 1992 SNK + // 0015 +kotm // 0016 (c) 1991 SNK +kotmh // 0016 (c) 1991 SNK +sengoku // 0017 (c) 1991 SNK +sengokuh // 0017 (c) 1991 SNK +burningf // 0018 (c) 1991 SNK +burningfh // 0018 (c) 1991 SNK +lbowling // 0019 (c) 1990 SNK +gpilots // 0020 (c) 1991 SNK +gpilotsh // 0020 (c) 1991 SNK +joyjoy // 0021 (c) 1990 SNK +bjourney // 0022 (c) 1990 Alpha Denshi Co. +quizdais // 0023 (c) 1991 SNK +quizdaisk // 0123 (c) 1991 SNK +lresort // 0024 (c) 1992 SNK +eightman // 0025 (c) 1991 SNK / Pallas + // 0026 Fun Fun Brothers (prototype) 1991 Alpha +minasan // 0027 (c) 1990 Monolith Corp. + // 0028 Dunk Star (prototype) Sammy +legendos // 0029 (c) 1991 SNK +2020bb // 0030 (c) 1991 SNK / Pallas +2020bba // 0030 (c) 1991 SNK / Pallas +2020bbh // 0030 (c) 1991 SNK / Pallas +socbrawl // 0031 (c) 1991 SNK +socbrawlh // 0031 (c) 1991 SNK +roboarmy // 0032 (c) 1991 SNK +fatfury1 // 0033 (c) 1991 SNK +fbfrenzy // 0034 (c) 1992 SNK + // 0035 Mystic Wand (prototype) 1991 Alpha +bakatono // 0036 (c) 1991 Monolith Corp. +crsword // 0037 (c) 1991 Alpha Denshi Co. +trally // 0038 (c) 1991 Alpha Denshi Co. +kotm2 // 0039 (c) 1992 SNK +sengoku2 // 0040 (c) 1993 SNK +bstars2 // 0041 (c) 1992 SNK +quizdai2 // 0042 (c) 1992 SNK +3countb // 0043 (c) 1993 SNK +aof // 0044 (c) 1992 SNK +samsho // 0045 (c) 1993 SNK +samshoh // 0045 (c) 1993 SNK +tophuntr // 0046 (c) 1994 SNK +tophuntrh // 0046 (c) 1994 SNK +fatfury2 // 0047 (c) 1992 SNK +janshin // 0048 (c) 1994 Aicom +androdun // 0049 (c) 1992 Visco +ncommand // 0050 (c) 1992 Alpha Denshi Co. +viewpoin // 0051 (c) 1992 Sammy +ssideki // 0052 (c) 1992 SNK +wh1 // 0053 (c) 1992 Alpha Denshi Co. +wh1h // 0053 (c) 1992 Alpha Denshi Co. +wh1ha // 0053 (c) 1992 Alpha Denshi Co. + // 0054 Crossed Swords 2 (CD only? not confirmed, MVS might exist) +kof94 // 0055 (c) 1994 SNK +aof2 // 0056 (c) 1994 SNK +aof2a // 0056 (c) 1994 SNK +wh2 // 0057 (c) 1993 ADK +fatfursp // 0058 (c) 1993 SNK +fatfurspa // 0058 (c) 1993 SNK +savagere // 0059 (c) 1995 SNK +fightfev // 0060 (c) 1994 Viccom +fightfeva // 0060 (c) 1994 Viccom +ssideki2 // 0061 (c) 1994 SNK +spinmast // 0062 (c) 1993 Data East Corporation +samsho2 // 0063 (c) 1994 SNK +samsho2k // 0063 (c) 1994 SNK (Korean hack) +wh2j // 0064 (c) 1994 ADK / SNK +wjammers // 0065 (c) 1994 Data East Corporation +karnovr // 0066 (c) 1994 Data East Corporation +gururin // 0067 (c) 1994 Face +pspikes2 // 0068 (c) 1994 Video System Co. + // Super Volley '94 was once released in Mar.1994, and recalled. Then released as Power Spikes 2 (with some tweaks). +fatfury3 // 0069 (c) 1995 SNK +zupapa // 0070 Zupapa - released in 2001, 1994 prototype probably exists + // 0071 Bang Bang Busters (prototype) 1994 Visco + // 0072 Last Odyssey Pinball Fantasia (prototype) 1995 Monolith +panicbom // 0073 (c) 1994 Eighting / Hudson +aodk // 0074 (c) 1994 ADK / SNK +sonicwi2 // 0075 (c) 1994 Video System Co. +zedblade // 0076 (c) 1994 NMK + // 0077 The Warlocks of the Fates (prototype) 1995 Astec +galaxyfg // 0078 (c) 1995 Sunsoft +strhoop // 0079 (c) 1994 Data East Corporation +quizkof // 0080 (c) 1995 Saurus +quizkofk // 0080 (c) 1995 Saurus +ssideki3 // 0081 (c) 1995 SNK +doubledr // 0082 (c) 1995 Technos +pbobblen // 0083 (c) 1994 Taito +pbobblenb // bootleg +kof95 // 0084 (c) 1995 SNK +kof95h // 0084 (c) 1995 SNK + // 0085 Shinsetsu Samurai Spirits Bushidoretsuden / Samurai Shodown RPG (CD only) +tws96 // 0086 (c) 1996 Tecmo +samsho3 // 0087 (c) 1995 SNK +samsho3h // 0087 (c) 1995 SNK +fswords // 0187 Korean hack of samsho3 +stakwin // 0088 (c) 1995 Saurus +pulstar // 0089 (c) 1995 Aicom +whp // 0090 (c) 1995 ADK / SNK + // 0091 +kabukikl // 0092 (c) 1995 Hudson +neobombe // 0093 (c) 1997 Hudson +gowcaizr // 0094 (c) 1995 Technos +rbff1 // 0095 (c) 1995 SNK +rbff1a // 0095 (c) 1995 SNK +aof3 // 0096 (c) 1996 SNK +aof3k // 0196 Censored Korean release of aof3 +sonicwi3 // 0097 (c) 1995 Video System Co. + // 0098 Idol Mahjong - final romance 2 (CD only? not confirmed, MVS might exist) + // 0099 Neo Pool Masters +turfmast // 0200 (c) 1996 Nazca +mslug // 0201 (c) 1996 Nazca +puzzledp // 0202 (c) 1995 Taito (Visco license) +mosyougi // 0203 (c) 1995 ADK / SNK + // 0204 QP (prototype) + // 0205 Neo-Geo CD Special (CD only) +marukodq // 0206 (c) 1995 Takara +neomrdo // 0207 (c) 1996 Visco +sdodgeb // 0208 (c) 1996 Technos +goalx3 // 0209 (c) 1995 Visco + // 0210 Karate Ninja Sho (prototype) 1995 Yumekobo + // 0211 Oshidashi Zintrick (CD only? not confirmed, MVS might exist) 1996 SNK/ADK +zintrckb // 0211 hack - this is not a genuine MVS proto, its a bootleg made from the CD version +overtop // 0212 (c) 1996 ADK +neodrift // 0213 (c) 1996 Visco +kof96 // 0214 (c) 1996 SNK +kof96h // 0214 (c) 1996 SNK +ssideki4 // 0215 (c) 1996 SNK +kizuna // 0216 (c) 1996 SNK + // Fu-un Super Tag Battle Special Version (4-player battle available) exists +ninjamas // 0217 (c) 1996 ADK / SNK +ragnagrd // 0218 (c) 1996 Saurus +pgoal // 0219 (c) 1996 Saurus + // 0220 (c) 1996 Saurus - Choutetsu Brikin'ger - Iron clad (undumped protoype) +magdrop2 // 0221 (c) 1996 Data East Corporation +samsho4 // 0222 (c) 1996 SNK +samsho4k // Censored Korean release of samsho4 +rbffspec // 0223 (c) 1996 SNK +rbffspeck // 0124 (c) 1996 SNK +twinspri // 0224 (c) 1996 ADK +wakuwak7 // 0225 (c) 1996 Sunsoft + // 0226 Pair Pair Wars (prototype) 1996 Sunsoft? +stakwin2 // 0227 (c) 1996 Saurus +ghostlop // 0228 GhostLop (prototype) 1996? Data East + // 0229 King of Fighters '96 CD Collection (CD only) +breakers // 0230 (c) 1996 Visco +miexchng // 0231 (c) 1997 Face +kof97 // 0232 (c) 1997 SNK +kof97h // 0232 (c) 1997 SNK +kof97pls // bootleg of kof97 +kog // bootleg of kof97 +magdrop3 // 0233 (c) 1997 Data East Corporation +lastblad // 0234 (c) 1997 SNK +lastbladh // 0234 (c) 1997 SNK +lastsold // 0196 Censored Korean release of lastblad +puzzldpr // 0235 (c) 1997 Taito (Visco license) +irrmaze // 0236 (c) 1997 SNK / Saurus +popbounc // 0237 (c) 1997 Video System Co. +shocktro // 0238 (c) 1997 Saurus +shocktroa // 0238 (c) 1997 Saurus +blazstar // 0239 (c) 1998 Yumekobo +rbff2 // 0240 (c) 1998 SNK +rbff2h // 0240 (c) 1998 SNK +rbff2k // 0140 Censored Korean release of rbff2 +mslug2 // 0241 (c) 1998 SNK +kof98 // 0242 (c) 1998 SNK +kof98k // 0242 (c) 1998 SNK +kof98ka // 0242 (c) 1998 SNK +kof98h // 0242 (c) 1998 SNK +lastbld2 // 0243 (c) 1998 SNK +neocup98 // 0244 (c) 1998 SNK +breakrev // 0245 (c) 1998 Visco +shocktr2 // 0246 (c) 1998 Saurus +lans2004 // bootleg of shocktr2 +flipshot // 0247 (c) 1998 Visco +pbobbl2n // 0248 (c) 1999 Taito (SNK license) +ctomaday // 0249 (c) 1999 Visco +mslugx // 0250 (c) 1999 SNK +kof99 // 0251 (c) 1999 SNK +kof99h // 0251 (c) 1999 SNK +kof99e // 0251 (c) 1999 SNK +kof99k // 0152 (c) 1999 SNK +kof99p // 0251 (c) 1999 SNK +ganryu // 0252 (c) 1999 Visco +garou // 0253 (c) 1999 SNK +garouo // 0253 (c) 1999 SNK +garoup // 0253 (c) 1999 SNK +garoubl // bootleg +s1945p // 0254 (c) 1999 Psikyo +preisle2 // 0255 (c) 1999 Yumekobo +mslug3 // 0256 (c) 2000 SNK +mslug3h // 0256 (c) 2000 SNK +mslug3b6 // bootleg +kof2000 // 0257 (c) 2000 SNK +kof2000n // 0257 (c) 2000 SNK + // 0258 SNK vs. Capcom? +bangbead // 0259 (c) 2000 Visco +nitd // 0260 (c) 2000 Eleven / Gavaking +nitdbl // bootleg +sengoku3 // 0261 (c) 2001 Noise Factory / SNK +kof2001 // 0262 (c) 2001 Eolith / SNK +kof2001h // 0262 (c) 2001 Eolith / SNK +cthd2003 // bootleg of kof2001 +ct2k3sp // bootleg of kof2001 +ct2k3sa // bootleg of kof2001 +mslug4 // 0263 (c) 2002 Mega Enterprise +mslug4h // 0263 (c) 2002 Mega Enterprise +ms4plus // bootleg +rotd // 0264 (c) 2002 Evoga +kof2002 // 0265 (c) 2002 Eolith / Playmore +kof2002b // bootleg +kf2k2pls // bootleg +kf2k2pla // bootleg +kf2k2mp // bootleg +kf2k2mp2 // bootleg +kof10th // bootleg of kof2002 +kf2k5uni // bootleg of kof2002 +kf10thep // bootleg of kof2002 +kof2k4se // bootleg of kof2002 +matrim // 0266 (c) 2002 Atlus +matrimbl // bootleg +pnyaa // 0267 (c) 2003 Aiky / Taito +ms5pcb // 0268 (c) 2003 Playmore +mslug5 // 0268 (c) 2003 Playmore +mslug5h // 0268 (c) 2003 Playmore +ms5plus // bootleg +svcpcb // 0269 (c) 2003 Playmore / Capcom - JAMMA PCB +svcpcba // 0269 (c) 2003 Playmore / Capcom - JAMMA PCB +svc // 0269 (c) 2003 Playmore / Capcom +svcboot // bootleg +svcplus // bootleg +svcplusa // bootleg +svcsplus // bootleg +samsho5 // 0270 (c) 2003 Playmore +samsho5h // 0270 (c) 2003 Playmore +samsho5b // bootleg +kf2k3pcb // 0271 (c) 2003 Playmore - JAMMA PCB +kof2003 // 0271 (c) 2003 Playmore +kof2003h // 0271 (c) 2003 Playmore +kf2k3bl // bootleg +kf2k3bla // bootleg +kf2k3pl // bootleg +kf2k3upl // bootleg +samsh5sp // 0272 (c) 2004 Playmore +samsh5sph // 0272 (c) 2004 Playmore +samsh5spn // 0272 (c) 2004 Playmore + +// The BrezzaSoft games don't have proper ID codes +jockeygp +jockeygpa +vliner +vlinero + +// Nor does Digger Man +diggerma // No Game ID (unlicensed), (c) 2000 Kyle Hodgetts, prototype + +// Hyper NeoGeo 64 uses a 3 digit rom code? + +hng64 +roadedge // 001 1997/09/10 Roads Edge / Round Trip RV +sams64 // 002 1997/12/19 Samurai Shodown 64 / Samurai Spirits 64 +xrally // 003 1998/05/13 Xtreme Rally / Off Beat Racer! +bbust2 // 004 1998/09/11 Beast Busters: Second Nightmare +sams64_2 // 005 1998/10/16 Samurai Shodown: Warrior's Rage / Samurai Spirits: Asura Zanmaden +fatfurwa // 006 1999/01/28 Fatal Fury: Wild Ambition / Garou Densetsu: Wild Ambition +buriki // 007 1999/05/21 Buriki One + +// Neo Print +npcartv1 +98best44 +nprsp + +// Alpha Denshi games +shougi // (c) 1982 (Arcade TV Game List - P.80, Left, 9 from top) +shougi2 // (c) 1982 (Arcade TV Game List - P.80, Left, 10 from top) +champbas // (c) 1983 Sega +champbasj // (c) 1983 Alpha Denshi Co. +champbasja // (c) 1983 Alpha Denshi Co. +champbb2 // (c) 1983 Sega +champbb2a // (c) 1983 ? +champbb2j // (c) 1983 ? +exctsccr // (c) 1983 Alpha Denshi Co. +exctsccra // (c) 1983 Alpha Denshi Co. +exctsccrj // (c) 1983 Alpha Denshi Co. +exctsccrj2 // (c) 1983 Alpha Denshi Co. +exctsccrb // bootleg +exctscc2 // (c) 1984 Alpha Denshi Co. +talbot // Volt Electronics +equites // (c) 1984 Alpha Denshi Co. +equitess // (c) 1984 Alpha Denshi Co./Sega +gekisou // (c) 1985 Eastern +bullfgtr // (c) 1984 Alpha Denshi Co. +bullfgtrs // (c) 1984 Alpha Denshi Co./Sega +kouyakyu // (c) 1985 Alpha Denshi Co. +splndrbt // (c) 1985 Alpha Denshi Co. +hvoltage // (c) 1985 Alpha Denshi Co. + +// SNK / Alpha 68K games +sstingry // (c) 1986 Alpha Denshi Co. +kyros // (c) 1987 World Games +kyrosj // (c) 1986 Alpha Denshi Co. +jongbou // (c) 1987 SNK +paddlema // Alpha-68K96I 'PM' (c) 1988 SNK +timesold // Alpha-68K96II 'BT' (c) 1987 SNK / Romstar +timesold1 // Alpha-68K96II 'BT' (c) 1987 +btlfield // Alpha-68K96II 'BT' (c) 1987 +btlfieldb // bootleg +skysoldr // Alpha-68K96II 'SS' (c) 1988 SNK (Romstar with dip switch) +goldmedl // Alpha-68K96II 'GM' (c) 1988 SNK +goldmedla // Alpha-68K96II 'GM' (c) 1988 SNK +goldmedlb // Alpha-68K96II bootleg +skyadvnt // Alpha-68K96V 'SA' (c) 1989 Alpha Denshi Co. +skyadvntu // Alpha-68K96V 'SA' (c) 1989 SNK of America licensed from Alpha +skyadvntj // Alpha-68K96V 'SA' (c) 1989 Alpha Denshi Co. +gangwars // Alpha-68K96V (c) 1989 Alpha Denshi Co. +gangwarsu // Alpha-68K96V (c) 1989 Alpha Denshi Co. +sbasebal // Alpha-68K96V (c) 1989 SNK of America licensed from Alpha +tnextspc // A8003 'NS' (c) 1989 +tnextspcj // A8003 'NS' (c) 1989 + +meijinsn // (c) 1986 SNK + +// Technos games +scregg // TA-0001 (c) 1983 +eggs // TA-0002 (c) 1983 Universal USA +dommy // TA-00?? (c) 1983 (Arcade TV Game List - P.90, Left, 13 from top) +bigprowr // TA-0007 (c) 1983 +tagteam // TA-0007 (c) 1983 + Data East license +ssozumo // TA-0008 (c) 1984 +mystston // TA-0010 (c) 1984 +myststono // TA-0010 (c) 1984 +dogfgt // TA-0011 (c) 1984 +dogfgtu // TA-0011 (c) 1985 Data East USA, Inc. +dogfgtj // TA-0011 (c) 1984 +bogeyman // -0204-0 (Data East part number) (c) 1985 (Arcade TV Game List - P.96, Right, 8 from top) +matmania // TA-0015 (c) 1985 + Taito America license +excthour // TA-0015 (c) 1985 + Taito license +maniach // TA-0017 (c) 1986 + Taito America license +maniach2 // TA-0017 (c) 1986 + Taito America license +renegade // TA-0018 (c) 1986 + Taito America license +kuniokun // TA-0018 (c) 1986 +kuniokunb // bootleg +xsleena // TA-0019 (c) 1986 +xsleenab // bootleg +solarwar // TA-0019 (c) 1986 Taito + Memetron license +battlane // -0215, -0216 (Data East part number) (c) 1986 + Taito license +battlane2 // -0215, -0216 (Data East part number) (c) 1986 + Taito license +battlane3 // -0215, -0216 (Data East part number) (c) 1986 + Taito license +ddragon // TA-0021 (c) 1987 +ddragonu // TA-0021 (c) 1987 Taito America +ddragonua // TA-0021 (c) 1987 Taito America +ddragonub // TA-0021 (c) 1987 Taito America +ddragonw // TA-0021 (c) 1987 Taito +ddragonw1 // TA-0021 (c) 1987 Taito +ddragonb // bootleg +ddragonba // bootleg +ddragon6809 // bootleg +ddragon6809a // bootleg +ddragonb2 // bootleg +spdodgeb // TA-0022 (c) 1987 +nkdodge // TA-0022 (c) 1987 (Japan) +nkdodgeb // TA-0022 (c) 1987 (Japan) +chinagat // TA-0023 (c) 1988 Taito + Romstar license (US) +saiyugou // TA-0023 (c) 1988 (Japan) +saiyugoub1 // bootleg +saiyugoub2 // bootleg +wwfsstar // TA-0024 (c) 1989 (Europe) +wwfsstara // TA-0024 (c) 1989 (US, newer) +wwfsstaru // TA-0024 (c) 1989 (US) +wwfsstarj // TA-0024 (c) 1989 (Japan) +vball // TA-0025 (c) 1988 (US) +vball2pj // TA-0025 (c) 1988 (Japan) +vballb // TA-0025 (c) 1988 +ddragon2 // TA-0026 (c) 1988 (World) +ddragon2u // TA-0026 (c) 1988 (US) +toffy // (c) 1993 Midas +stoffy // (c) 1994 Midas + Unico +ddungeon // Game Room +ddungeone // East Coast Coin Company (Melbourne) +darktowr // Game Room +tstrike // East Coast Coin Company (Melbourne) +tstrikea // Game Room +ctribe // TA-0028 (c) 1990 (US) +ctribe1 // TA-0028 (c) 1990 (US) - Set 1? +ctribej // TA-0028 (c) 1990 (Japan) +ctribeb // bootleg +ctribeb2 // bootleg +blockout // TA-0029 (c) 1989 + California Dreams +blockout2 // TA-0029 (c) 1989 + California Dreams +blockoutj // TA-0029 (c) 1989 + California Dreams (Japan) +agress // TA-0029 (c) 1991 Palco +agressb // TA-0029 (c) 1991 Palco +ddragon3 // TA-0030 (c) 1990 +ddragon3p // TA-0030 (c) 1990 +ddragon3j // TA-0030 (c) 1990 (Japan) +ddragon3b // bootleg +wwfwfest // TA-0031 (c) 1991 (US) +wwfwfesta // TA-0031 (c) 1991 + Tecmo license (US) +wwfwfestb // bootleg +wwfwfestj // TA-0031 (c) 1991 (Japan) +shadfrce // TA-0032 (c) 1993 (US) +shadfrcej // TA-0032 (c) 1993 (Japan) +shadfrcejv2 // TA-0032 (c) 1993 (Japan) + +// Stern "Berzerk hardware" games +berzerk // (c) 1980 +berzerk1 // (c) 1980 +berzerkg // (c) 1980 +frenzy // (c) 1982 +moonwarp // (c) 1982 - prototype + +// Stern 'Mazer Blazer hardware' games +mazerbla // (c) 1983 +mazerblaa // (c) 1983 +greatgun // (c) 1983 + +// Other Stern +cliffhgr // (c) 1983 +cliffhgra // (c) 1983 +goaltogo // (c) 1983 + +// GamePlan games +toratora // (c) 1980 Game Plan +megatack // (c) 1980 Centuri +killcom // (c) 1980 Centuri +challeng // (c) 1981 Centuri +kaos // (c) 1981 + +// Zaccaria games +sia2650 // (c) 1978 +tinv2650 // (c) 1978 +dodgem // (c) 1979 +galaxia // (c) 1979 +astrowar // (c) 1980 +laserbat // (c) 1981 +lazarian // (c) 1981 +catnmous // (c) 1982 +catnmousa // (c) 1982 +monymony // (c) 1983 +jackrabt // (c) 1984 +jackrabt2 // (c) 1984 +jackrabts // (c) 1984 + +// UPL games +mouser // UPL-83001 (c) 1983 +mouserc // UPL-83001 (c) 1983 +nova2001 // UPL-83005 (c) 1983 +nova2001u // UPL-83005 (c) [1983] + Universal license +ninjakun // UPL-84003 (c) 1984 Taito Corporation +raiders5 // UPL-85004 (c) 1985 +raiders5t // UPL-85004 (c) 1985 Taito license +pkunwar // UPL-????? (c) 1985 (Arcade Game TV List - P.98, Left, 22 from top) +pkunwarj // UPL-????? (c) 1985 (Arcade Game TV List - P.98, Left, 22 from top) +xxmissio // UPL-86001 [1986] +ninjakd2 // UPL-????? (c) 1987 +ninjakd2a // UPL-????? (c) 1987 +ninjakd2b // UPL-????? (c) 1987 +rdaction // UPL-87003?(c) 1987 + World Games license +mnight // UPL-????? (c) 1987 distributed by Kawakus +arkarea // UPL-87007 (c) 1988 (Arcade TV Game List - P.67, Right, 2 from top) +robokid // UPL-88013 (c) 1988 +robokidj // UPL-88013 (c) 1988 +robokidj2 // UPL-88013 (c) 1988 +omegaf // UPL-89016 (c) 1989 +omegafs // UPL-89016 (c) 1989 + +// UPL/NMK/Banpresto games +urashima // UPL-89052 +tharrier // UPL-89053 (c) 1989 UPL + American Sammy license +tharrierj // UPL-89053 (c) 1989 UPL (Japan) +mustang // UPL-90058 (c) 1990 UPL +mustangs // UPL-90058 (c) 1990 UPL + Seoul Trading +bioship // UPL-90062 (c) 1990 UPL + American Sammy license +sbsgomo // UPL-90062 (c) 1990 UPL +vandyke // UPL-90064 (c) UPL +vandykejal // UPL-90064 (c) Jaleco +vandykejal2 // UPL-90064 (c) Jaleco +vandykeb // bootleg +blkheart // UPL-91069 +blkheartj // UPL-91069 +acrobatm // UPL-91073 (c) 1991 UPL + Taito license +strahl // UPL-91074 (c) 1992 UPL (Japan) +strahla // UPL-91074 (c) 1992 UPL (Japan) +bjtwin // UPL-93087 (c) 1993 NMK +bjtwina // UPL-93087 (c) 1993 NMK +bjtwinp // UPL-93087 (c) 1993 NMK +tdragon2 // UPL-93091 (c) 1993 NMK +tdragon2a // UPL-93091 (c) 1993 NMK +bigbang // UPL-93091 (c) 1993 NMK +tdragon // (c) 1991 NMK / Tecmo +tdragon1 // (c) 1991 NMK / Tecmo +hachamf // (c) 1991 NMK +macross // (c) 1992 Banpresto +riot // (c) 1992 NMK +gunnail // (c) 1993 NMK / Tecmo +macross2 // (c) 1993 Banpresto +sabotenb // (c) 1992 NMK / Tecmo +sabotenba // (c) 1992 NMK / Tecmo +cactus // bootleg +nouryoku // (c) 1995 Tecmo +raphero // (c) 1994 Media Trading Corp + +// nmk16.c bootlegs using the Seibu Sound System +mustangb // bootleg +mustangb2 // TAB Austria bootleg +tdragonb // bootleg + +// Comad games on unofficial hardware based on nmk16.c +ssmissin // (c) 1992 Comad +airattck // (c) 1996 Comad +airattcka // (c) 1996 Comad + +// Bee-Oh games on unofficial hardware based on nmk16.c +manybloc // (c) 1991 Bee-Oh + +// Jaleco Mahjong Games, Similar Hardware to the NMK ones above? +daireika // (c) 1989 Jaleco/NMK +mjzoomin // (c) 1990 +kakumei // (c) 1990 +kakumei2 // (c) 1992 +suchipi // (c) 1993 + +// NMK Double Dealer, Similar Hardware to Jaleco Mahjong games above +ddealer // (c) 1991 NMK + +// Based on nmk16? +quizpani // (c) 1993 NMK +acommand // (c) 1990 + +// don't know what hardare Banpresto used for these games +macrossp // (c) 1996 Banpresto +quizmoon // (c) 1997 Banpresto + +// Face/NMK games +gakupara // (c) 1991 NMK +quizdna // (c) 1992 Face +gekiretu // (c) 1992 Face +cultures // (c) 1994 Face + +// Williams/Midway TMS games +narc // (c) 1988 Williams +narc3 // (c) 1988 Williams +narc2 // (c) 1988 Williams +trog // (c) 1990 Midway +trog4 // (c) 1990 Midway +trog3 // (c) 1990 Midway +trogpa6 // (c) 1990 Midway +trogpa4 // (c) 1990 Midway +smashtv // (c) 1990 Williams +smashtv6 // (c) 1990 Williams +smashtv5 // (c) 1990 Williams +smashtv4 // (c) 1990 Williams +smashtv3 // (c) 1990 Williams +hiimpact // (c) 1990 Williams +hiimpact4 // (c) 1990 Williams +hiimpact3 // (c) 1990 Williams +hiimpact2 // (c) 1990 Williams +hiimpact1 // (c) 1990 Williams +hiimpactp // (c) 1990 Williams +shimpact // (c) 1991 Midway +shimpactp6 // (c) 1991 Midway +shimpactp5 // (c) 1991 Midway +shimpactp4 // (c) 1991 Midway +strkforc // (c) 1991 Midway +mk // (c) 1992 Midway +mkr4 // (c) 1992 Midway +mktturbo // hack +mkyturbo // hack +mkprot4 // (c) 1992 Midway +mkprot8 // (c) 1992 Midway +mkprot9 // (c) 1992 Midway +mkla1 // (c) 1992 Midway +mkla2 // (c) 1992 Midway +mkla3 // (c) 1992 Midway +mkla4 // (c) 1992 Midway +mkyawdim // bootleg +term2 // (c) 1992 Midway +term2la3 // (c) 1992 Midway +term2la2 // (c) 1992 Midway +term2la1 // (c) 1992 Midway +totcarn // (c) 1992 Midway +totcarnp // (c) 1992 Midway +mk2 // (c) 1993 Midway +mk2r31e // (c) 1993 Midway +mk2r32 // (c) 1993 Midway +mk2r30 // (c) 1993 Midway +mk2r21 // (c) 1993 Midway +mk2r14 // (c) 1993 Midway +mk2r11 // (c) 1993 Midway +mk2r42 // hack +mk2r91 // hack +mk2chal // hack +jdreddp // (c) 1993 Midway +nbajam // (c) 1993 Midway +nbajamr2 // (c) 1993 Midway +nbajamte // (c) 1994 Midway +nbajamt1 // (c) 1994 Midway +nbajamt2 // (c) 1994 Midway +nbajamt3 // (c) 1994 Midway +revx // (c) 1994 Midway +mk3 // (c) 1994 Midway +mk3r20 // (c) 1994 Midway +mk3r10 // (c) 1994 Midway +mk3p40 // (c) 1994 Midway +umk3 // (c) 1994 Midway +umk3r11 // (c) 1994 Midway +umk3r10 // (c) 1994 Midway +wwfmania // (c) 1995 Midway +wwfmaniab // (c) 1995 Midway +openice // (c) 1995 Midway +nbahangt // (c) 1996 Midway +nbamht // (c) 1996 Midway +nbamht1 // (c) 1996 Midway +rmpgwt // (c) 1997 Midway +rmpgwt11 // (c) 1997 Midway + +// Midway V-unit games +crusnusa // (c) 1994 Midway +crusnusa40 // (c) 1994 Midway +crusnusa21 // (c) 1994 Midway +crusnwld // (c) 1996 Midway +crusnwld23 // (c) 1996 Midway +crusnwld20 // (c) 1996 Midway +crusnwld17 // (c) 1996 Midway +crusnwld13 // (c) 1996 Midway +offroadc // (c) 1997 Midway (v1.63) +offroadc4 // (c) 1997 Midway (v1.40) +offroadc3 // (c) 1997 Midway (v1.30) +offroadc1 // (c) 1997 Midway (v1.10) +wargods // (c) 1996 Midway + +// Midway Zeus games +mk4 // (c) 1997 Midway (v3.0) Latest offical release +mk4a // (c) 1997 Midway (v2.1) +mk4b // (c) 1997 Midway (v1.0) +invasnab // (c) 1999 Midway (v5.0) Latest offical release +invasnv4 // (c) 1999 Midway (v4.0) +crusnexo // (c) 1999 Midway (v2.4) Latest offical release +crusnexoa // (c) 1999 Midway (v2.0) +crusnexob // (c) 1999 Midway (v1.6) +thegrid // (c) 2001 Midway (v1.2) Latest offical release +thegrida // (c) 2001 Midway (v1.1) + +// Midway / Atari Voodoo based Hardware (Seattle, Flagstaff) +wg3dh // (c) 1996 Atari Games +mace // (c) 1996 Atari Games +macea // (c) 1996 Atari Games +sfrush // (c) 1996 Atari Games +sfrushrk // (c) 1996 Atari Games +calspeed // (c) 1996 Atari Games +calspeeda // (c) 1996 Atari Games +vaportrx // (c) 1998 Atari Games +vaportrxp // (c) 1998 Atari Games +carnevil // (c) 1998 Midway Games (v1.0.3) +carnevil1 // (c) 1998 Midway Games (v1.0.1) +biofreak // (c) 1997 Midway Games (prototype) +blitz // (c) 1997 Midway Games +blitz11 // (c) 1997 Midway Games +blitz99 // (c) 1998 Midway Games +blitz2k // (c) 1999 Midway Games +hyprdriv // (c) 1998 Midway Games + +// Midway / Atari Voodoo 2 & 3 - based Hardware (Vegas, Denver, Durango) +gauntleg // (c) 1998 Atari Games +gauntleg12 // (c) 1998 Atari Games +tenthdeg // (c) 1998 Atari Games (prototype) +roadburn // (c) 1999 Atari Games +sf2049 // (c) 1999 Atari Games +sf2049se // (c) 1999 Atari Games +sf2049te // (c) 1999 Atari Games +warfa // (c) 1999 Atari Games +nbashowt // (c) 1998 Midway Games +nbanfl // (c) 1999 Midway Games +gauntdl // (c) 1999 Midway Games +gauntdl24 // (c) 1999 Midway Games +cartfury // (c) 2000 Midway Games + +// Midway Quicksilver +hydrthnd // (c) 1999 Midway Games +offrthnd // (c) 2000 Midway Games + +// Midway Touchmaster / Galaxy Games +tm // (c) 1996 Midway Games +tmdo // (c) 1996 Midway Games +tm2k // (c) 1996 Midway Games +tm2ka // (c) 1996 Midway Games +tm2kb // (c) 1996 Midway Games +tm3k // (c) 1997 Midway Games +tm3ka // (c) 1997 Midway Games +tm4k // (c) 1998 Midway Games +tm4ka // (c) 1998 Midway Games +tm4kb // (c) 1998 Midway Games +tm5k // (c) 1998 Midway Games +tm5kca // (c) 1998 Midway Games +tm5ka // (c) 1998 Midway Games +tm7k // (c) 1999 Midway Games +tm7ka // (c) 1999 Midway Games +tm7keval // (c) 1999 Midway Games +tm8k // (c) 2000 Midway Games +tm8k902 // (c) 2000 Midway Games +galgbios // (c) 1998 Creative Electronics & Software (CES) +galgame2 // (c) 1998 Creative Electronics & Software (CES) / Namco + +// Creative Electronics & Software +hrclass +ccclass +tsclass + +// Cinematronics raster games +embargo +tripool // (c) 1981 Noma (Casino Tech license) +tripoola // (c) 1981 Noma (Costal Games license) +unclepoo // (c) 1983 Diatec +joinem // (c) 1986 Global +loverboy // (c) 1983 Global +striv // (c) 1985 Hara Industries +jack // (c) 1982 Cinematronics +jack2 // (c) 1982 Cinematronics +jack3 // (c) 1982 Cinematronics +treahunt // (c) 1982 Hara Ind. +zzyzzyxx // (c) 1982 Cinematronics + Advanced Microcomputer Systems +zzyzzyxx2 // (c) 1982 Cinematronics + Advanced Microcomputer Systems +brix // (c) 1982 Cinematronics + Advanced Microcomputer Systems +freeze // Cinematronics +sucasino // (c) 1982 Data Amusement + +// Cinematronics vector games +spacewar // (c) 1977 +spaceshp // (c) 1978 Cinematronics (Sega licence) +barrier // (c) 1979 Vectorbeam +starcas // (c) 1980 +starcas1 // (c) 1980 +starcasp // (c) 1980 prototype +starcase // (c) 1980 Cinematronics (Mottoeis license) +stellcas // bootleg +spaceftr // (c) 1981 Zaccaria +tailg // (c) 1979 +ripoff // (c) 1980 +armora // (c) 1980 +armorap // (c) 1980 +armorar // (c) 1980 Cinematronics (Rock-ola license) +wotw // (c) 1981 +wotwc // (c) 1981 +warrior // (c) 1979 Vectorbeam +starhawk // (c) 1979 +solarq // (c) 1981 +boxingb // (c) 1981 +speedfrk // (c) 1979 Vectorbeam +sundance // (c) 1979 +demon // (c) 1982 Rock-ola +qb3 // (c) 1982 Rock-ola - prototype +// this one uses 68000+Z80 instead of the Cinematronics CPU +cchasm +cchasm1 // (c) 1983 Cinematronics / GCE + +// "The Pit hardware" games +roundup // (c) 1981 Amenip/Centuri +fitter // (c) 1981 Taito +fitterbl // bootleg +thepit // (c) 1982 Zilec +thepitu1 // (c) 1982 Centuri (licensed) +thepitu2 // (c) 1982 Centuri (licensed) +thepitj // (c) 1982 Taito (licensed) +thepitm // bootleg +dockman // (c) 1982 Taito Corp. +portman // (c) 1982 Nova Games Ltd. +suprmous // (c) 1982 Taito +funnymou // (c) 1982 Chuo Co. Ltd +machomou // (c) 1982 Techstar +intrepid // (c) 1983 Nova Games Ltd. +intrepid2 // (c) 1983 Nova Games Ltd. +zaryavos // (c) 1983 Nova Games of Canada (prototype) +timelimt // (c) 1983 Chuo Co. Ltd +progress // (c) 1984 Chuo Co. Ltd +koroleva // (c) 1988 Terminal +rtriv // (c) 198? Romar + +// TIA-MC1 hardware games +konek // (c) 1988 Terminal +sosterm // (c) 1988 Terminal +bilyard // (c) 1988 Terminal + +// Photon hardware games +phtetris +phpython +phklad + +// Photon IK2 hardware +kok +black +brod + +// Valadon Automation games +bagman // (c) 1982 +bagnard // (c) 1982 +bagnarda // (c) 1982 +bagmans // (c) 1982 + Stern license +bagmans2 // (c) 1982 + Stern license +pickin // (c) 1983 +supdrapo // (c) 1983 + Stern license +supdrapoa // (c) 1983 + Jeutel license? +supdrapob // bootleg +sbagman // (c) 1984 +sbagmans // (c) 1984 + Stern license +botanic // (c) 1985 +squaitsa // (c) 1985 +tankbust // (c) 1985 + +// Seibu Denshi / Seibu Kaihatsu games +stinger // (c) 1983 Seibu Denshi +stinger2 // (c) 1983 Seibu Denshi +scion // (c) 1984 Seibu Denshi +scionc // (c) 1984 Seibu Denshi + Cinematronics license +kungfut // (c) 1984 Seibu Kaihatsu +kungfuta // (c) 1984 Seibu Kaihatsu +wiz // (c) 1985 Seibu Kaihatsu +wizt // (c) 1985 Taito Corporation +wizta // (c) 1985 Taito Corporation +kncljoe // (c) 1985 Taito Corporation +kncljoea // (c) 1985 Taito Corporation +bcrusher // bootleg +empcity // (c) 1986 Seibu Kaihatsu (bootleg?) +empcityu // (c) 1986 Taito (Romstar License) +empcityj // (c) 1986 Taito Corporation (Japan) +empcityi // (c) 1986 Seibu Kaihatsu (Eurobed license) +stfight // (c) 1986 Seibu Kaihatsu (Germany) (bootleg?) +stfighta // (c) 1986 Seibu Kaihatsu (bootleg?) +darkmist // (c) 1986 Taito +mustache // (c) 1987 March +cshooter // (c) 1987 Taito +cshootere // (c) 1987 JKH (bootleg) +airraid // (c) 1987 Seibu Kaihatsu +panicr // Seibu / Taito +deadang // (c) 1988 Seibu Kaihatsu +leadang // (c) 1988 Seibu Kaihatsu +ghunter // (c) 1988 Seibu Kaihatsu + Segasa/Sonic license +dynduke // (c) 1989 Seibu Kaihatsu + Fabtek license +dyndukef // (c) 1989 Seibu Kaihatsu + Fabtek license +dbldyn // (c) 1989 Seibu Kaihatsu + Fabtek license +dbldynf // (c) 1989 Seibu Kaihatsu + Fabtek license +raiden // (c) 1990 Seibu Kaihatsu +raidena // (c) 1990 Seibu Kaihatsu +raidenk // (c) 1990 Seibu Kaihatsu + IBL Corporation license +raident // (c) 1990 Seibu Kaihatsu + Liang HWA Electronics license +raidenu // (c) 1990 Seibu Kaihatsu + Fabtek license +raidenua // (c) 1990 Seibu Kaihatsu + Fabtek license +sdgndmps // (c) Banpresto / Bandai (Japan) +dcon // (c) 1992 Success +sengokmj // (c) 1991 Sigma +totmejan // (c) 1991 Seibu/Tecmo +goodejan // (c) 1991 Seibu/Tecmo +goodejana // (c) 1991 Seibu/Tecmo + + +raiden2 // (c) 1993 Seibu Kaihatsu + Fabtek license +raiden2a // (c) 1993 Seibu Kaihatsu + Metrotainment license +raiden2b // (c) 1993 Seibu Kaihatsu +raiden2c // (c) 1993 Seibu Kaihatsu +raiden2d // (c) 1993 Seibu Kaihatsu +raiden2e // (c) 1993 Seibu Kaihatsu +raiden2f // (c) 1993 Seibu Kaihatsu +raidndx // (c) 1994 Seibu Kaihatsu +raidndxj // (c) 1994 Seibu Kaihatsu +raidndxu // (c) 1994 Seibu Kaihatsu + Fabtek license +raidndxa1 // (c) 1994 Seibu Kaihatsu + Metrotainment license +raidndxa2 // (c) 1994 Seibu Kaihatsu + Metrotainment license +raidndxg // (c) 1994 Seibu Kaihatsu + Tuning license +zeroteam // (c) 1993 Seibu Kaihatsu +zeroteama // (c) 1993 Seibu Kaihatsu +zeroteamb // (c) 1993 Seibu Kaihatsu +zeroteamc // (c) 1993 Seibu Kaihatsu +zeroteams // (c) 1993 Seibu Kaihatsu +zeroteamsr // (c) 1993 Seibu Kaihatsu +xsedae // (c) 1995 Dream Island + +// Newer V33 PCB with COP3 protection +r2dx_v33 // (c) 1996 Seibu Kaihatsu +nzerotea // (c) 1997 Seibu Kaihatsu + +// Seibu SPI System games + +senkyu // (c) 1995 Seibu Kaihatsu +senkyua // (c) 1995 Seibu Kaihatsu +batlball // (c) 1995 Seibu Kaihatsu (Tuning License) +batlballa // (c) 1995 Seibu Kaihatsu (Metrotainment License) +batlballu // (c) 1995 Seibu Kaihatsu (Metrotainment License) + +viprp1 // (c) 1995 Seibu Kaihatsu +viprp1u // (c) 1995 Seibu Kaihatsu (Fabtek license) +viprp1j // (c) 1995 Seibu Kaihatsu +viprp1s // (c) 1995 Seibu Kaihatsu +viprp1oj // (c) 1995 Seibu Kaihatsu +viprp1ot // (c) 1995 Seibu Kaihatsu (Tuning License) +viprp1hk // (c) 1995 Seibu Kaihatsu (Metrotainment License) + +ejanhs // (c) 1996 Seibu Kaihatsu + +rdft // (c) 1996 Seibu Kaihatsu +rdftu // (c) 1996 Seibu Kaihatsu (Fabtek license) +rdftau // (c) 1996 Seibu Kaihatsu +rdftj // (c) 1996 Seibu Kaihatsu +rdftadi // (c) 1996 Seibu Kaihatsu (Dream Island license) +rdftam // (c) 1996 Seibu Kaihatsu (Metrotainment license) +rdftit // (c) 1996 Seibu Kaihatsu +rdfta // (c) 1996 Seibu Kaihatsu + +rdft2 // (c) 1997 Seibu Kaihatsu (Tuning License) +rdft2a // (c) 1997 Seibu Kaihatsu (Metrotainment license) +rdft2a2 // (c) 1997 Seibu Kaihatsu (Dream Island license) +rdft2j // (c) 1997 Seibu Kaihatsu +rdft2j2 // (c) 1997 Seibu Kaihatsu +rdft2t // (c) 1997 Seibu Kaihatsu +rdft2u // (c) 1997 Seibu Kaihatsu (Fabtek license) +rdft2us // (c) 1997 Seibu Kaihatsu (Fabtek license) +rdft22kc // (c) 2000 Seibu Kaihatsu + +rfjet // (c) 1998 Seibu Kaihatsu (Tuning License) +rfjetu // (c) 1998 Seibu Kaihatsu (Fabtek license) +rfjeta // (c) 1998 Seibu Kaihatsu (Dream Island license) +rfjetj // (c) 1998 Seibu Kaihatsu +rfjets // (c) 1998 Seibu Kaihatsu +rfjet2kc // (c) 2000 Seibu Kaihatsu + +ejsakura // (c) 1999 Seibu Kaihatsu +ejsakura12 // (c) 1999 Seibu Kaihatsu + +// Seibu System SH2B games +feversoc // (c) 2000 + +// Tad games (Tad games run on Seibu hardware) +cabal // (c) 1988 Tad + Fabtek license +cabala // (c) 1988 Tad + Fabtek license +cabalbl // bootleg +cabalbl2 // bootleg +cabalus // (c) 1988 Tad + Fabtek license +cabalus2 // (c) 1988 Tad + Fabtek license +toki // (c) 1989 Tad (World) +tokia // (c) 1989 Tad (World) +tokiu // (c) 1989 Tad + Fabtek license (US) +tokiua // (c) 1989 Tad + Fabtek license (US) +tokib // bootleg +juju // (c) 1989 Tad (Japan) +jujub // (c) 1989 Tad (Japan) +bloodbro // (c) 1990 Tad +bloodbroa // (c) 1990 Tad +bloodbrob // (c) 1990 Tad +weststry // bootleg +skysmash // (c) 1990 Nihon System Inc. +legionna // (c) 1992 Tad (World) +legionnau // (c) 1992 Tad + Fabtek license (US) +heatbrl // (c) 1992 Tad (World version 3) +heatbrl2 // (c) 1992 Tad (World version 2) +heatbrlo // (c) 1992 Tad (World) +heatbrlu // (c) 1992 Tad (US) +godzilla // (c) 1993 Banpresto +denjinmk // (c) 199? Banpresto +grainbow // (c) 1993 Banpresto +cupsoc // (c) 1992 Seibu +cupsoca // (c) 1992 Seibu +cupsocs // (c) 1992 Seibu +cupsocs2 // (c) 1992 Seibu +cupsocsb // bootleg +cupsocsb2 // bootleg +olysoc92 // (c) 1992 Seibu +goal92 // bootleg + +// Jaleco games +exerion // (c) 1983 Jaleco +exeriont // (c) 1983 Jaleco + Taito America license +exerionb // bootleg +fcombat // (c) 1985 Jaleco +pturn // (c) 1984 Jaleco +ddayjlc // (c) 1984 Jaleco +ddayjlca // (c) 1984 Jaleco +formatz // (c) 1984 Jaleco +aeroboto // (c) 1984 Williams +citycon // (c) 1985 Jaleco +citycona // (c) 1985 Jaleco +cruisin // (c) 1985 Jaleco/Kitkorp +momoko // (c) 1986 Jaleco +argus // (c) 1986 Jaleco +valtric // (c) 1986 Jaleco +butasan // (c) 1987 Jaleco +psychic5 // (c) 1987 Jaleco +psychic5a // (c) 1987 Jaleco +bombsa // (c) 1988 Jaleco +ginganin // (c) 1987 Jaleco +ginganina // (c) 1987 Jaleco +skyfox // (c) 1987 Jaleco + Nichibutsu USA license +exerizer // (c) 1987? Jaleco +exerizerb // bootleg +homerun // (c) 1988 Jaleco +dynashot // (c) 1988 Jaleco +bigrun // (c) 1989 Jaleco +cischeat // (c) 1990 Jaleco +f1gpstar // (c) 1991 Jaleco +armchmp2 // (c) 1992 Jaleco +armchmp2o // (c) 1992 Jaleco +wildplt // (c) 1992 Jaleco +f1gpstr2 // (c) 1993 Jaleco +scudhamm // (c) 1994 Jaleco +tetrisp2 // (c) 1997 Jaleco +tetrisp2j // (c) 1997 Jaleco +tetrisp2ja // (c) 1997 Jaleco +nndmseal // (c) 1997 I'Max/Jaleco +stepstag // (c) 1999 Jaleco +step3 // (c) 1999 Jaleco +rockn // (c) 1999 Jaleco +rockna // (c) 1999 Jaleco +rockn2 // (c) 1999 Jaleco +rocknms // (c) 1999 Jaleco +rockn3 // (c) 1999 Jaleco +rockn4 // (c) 2000 Jaleco + +// Jaleco Mega System 1 games +lomakai // (c) 1988 (World) +makaiden // (c) 1988 (Japan) +p47 // (c) 1988 +p47j // (c) 1988 (Japan) +kickoff // (c) 1988 (Japan) +tshingen // (c) 1988 (Japan) +tshingena // (c) 1988 (Japan) +kazan // (c) 1988 (World) +iganinju // (c) 1988 (Japan) +astyanax // (c) 1989 +lordofk // (c) 1989 (Japan) +hachoo // (c) 1989 +jitsupro // (c) 1989 (Japan) +plusalph // (c) 1989 +stdragon // (c) 1989 +rodland // (c) 1990 +rodlandj // (c) 1990 (Japan) +rodlandjb // bootleg +avspirit // (c) 1991 +phantasm // (c) 1991 (Japan) +monkelf // bootleg +edf // (c) 1991 +edfu // (c) 1991 +edfbl // (c) 1991 +64street // (c) 1991 +64streetj // (c) 1991 (Japan) +soldam // (c) 1992 +soldamj // (c) 1992 (Japan) +bigstrik // (c) 1992 +bigstrkb // bootleg on different hardware +bestleag // bootleg, by Playmark? +bestleaw // bootleg +chimerab // (c) 1993 +cybattlr // (c) 1993 +hayaosi1 // (c) 1993 +peekaboo // (c) 1993 + +// Jaleco Mega System 32 games +hayaosi2 // (c) 1993 +hayaosi3 // (c) 1994 +bbbxing // (c) 1994 +47pie2 // (c) 1994 +47pie2o // (c) 1994 +desertwr // (c) 1995 +gametngk // (c) 1995 +tetrisp // (c) 1995 Jaleco / BPS +p47aces // (c) 1995 +akiss // (c) 1995 +gratia // (c) 1996 +gratiaa // (c) 1996 +kirarast // (c) 1996 +tp2m32 // (c) 1997 +bnstars // (c) 1997 +wpksocv2 // (c) 1997 + +f1superb // (c) 1994 + +bnstars1 // (c) 1994 + +// Video System Co. games +rabiolep // (c) 1987 V-System Co. (Japan) +rpunch // (c) 1987 V-System Co. + Bally/Midway/Sente license (US) +svolley // (c) 1989 V-System Co. (Japan) +svolleyk // (c) 1989 V-System Co. (Korea) +svolleyu // (c) 1989 V-System Co. + Data East license (US) +tail2nos // [1989] V-System Co. +sformula // [1989] V-System Co. (Japan) +ojankoc // [1986] V-System Co. (Japan) +ojankoy // [1986] V-System Co. (Japan) +ojanko2 // [1987] V-System Co. (Japan) +ccasino // [1987] V-System Co. (Japan) +ojankohs // [1988] V-System Co. (Japan) +nekkyoku // [1988] Video System Co. (Japan) +idolmj // [1988] (c) System Service (Japan) +mjnatsu // [1989] Video System presents (Japan) +natsuiro // [1989] Video System presents (Japan) +mfunclub // [1989] V-System (Japan) +daiyogen // [1990] Video System Co. (Japan) +nmsengen // (c) 1991 Video System (Japan) +fromance // (c) 1991 Video System Co. (Japan) +pipedrm // (c) 1990 Video System Co. (World) +pipedrmu // (c) 1990 Video System Co. (US) +pipedrmj // (c) 1990 Video System Co. (Japan) +hatris // (c) 1990 Video System Co. (US) +hatrisj // (c) 1990 Video System Co. (Japan) +spinlbrk // (c) 1990 V-System Co. (World) +spinlbrku // (c) 1990 V-System Co. (US) +spinlbrkj // (c) 1990 V-System Co. (Japan) +pspikes // (c) 1991 Video System Co. (World) +pspikesk // (c) 1991 Video System Co. (Korea) +svolly91 // (c) 1991 Video System Co. (Japan) +pspikesb // bootleg +spikes91 // bootleg +pspikesc // bootleg +karatblz // (c) 1991 Video System Co. +karatblzu // (c) 1991 Video System Co. (US) +karatblzj // (c) 1991 Video System / Tecmo (Japan) +turbofrc // (c) 1991 Video System Co. +aerofgt // (c) 1992 Video System Co. +aerofgtb // (c) 1992 Video System Co. +aerofgtc // (c) 1992 Video System Co. +sonicwi // (c) 1992 Video System Co. (Japan) +aerfboot // bootleg +aerfboo2 // bootleg +wbbc97 // (c) 1997 Comad +welltris // (c) 1991 Video System Co. (Japan) +welltrisj // (c) 1991 Video System Co. (Japan) +quiz18k // (c) 1992 EIM (Welltris hardware) +f1gp // (c) 1991 Video System Co. +f1gpb // bootleg +f1gp2 // (c) 1992 Video System Co. +crshrace // (c) 1993 Video System Co. +crshrace2 // (c) 1993 Video System Co. +taotaido // (c) 1993 Video System Co. +taotaidoa // (c) 1993 Video System Co. +gstriker // (c) [1993] Human +gstrikera // (c) [1993] Human +vgoalsoc // (c) 199? Temco +vgoalsca // (c) 199? Temco +twrldc94 // (c) 1994 Tecmo +twrldc94a // (c) 1994 Tecmo +suprslam // (c) 1995 Banpresto +fromanc2 // (c) 1995 Video System Co. (Japan) +fromancr // (c) 1995 Video System Co. (Japan) +fromanc4 // (c) 1998 Video System Co. (Japan) +inufuku // (c) 1998 Video System Co. (Japan) + +// Psikyo games +samuraia // (c) 1993 (World) +sngkace // (c) 1993 (Japan) +gunbird // (c) 1994 +gunbirdk // (c) 1994 +gunbirdj // (c) 1994 +btlkroad // (c) 1994 +s1945 // (c) 1995 +s1945a // (c) 1995 +s1945j // (c) 1995 +s1945jn // (c) 1995 +s1945bl // (c) 1995 (Hong Kong bootleg) +s1945k // (c) 1995 +tengai // (c) 1996 +tengaij // (c) 1996 +s1945ii // (c) 1997 +soldivid // (c) 1997 +sbomber // (c) 1998 +sbombera // (c) 1998 +daraku // (c) 1998 +gunbird2 // (c) 1998 +s1945iii // (c) 1999 +dragnblz // (c) 2000 +tgm2 // (c) 2000 +tgm2p // (c) 2000 +gnbarich // (c) 2001 +mjgtaste // (c) 2002 +hotgmck // (c) 1997 +hgkairak // (c) 1998 +hotgmck3 // (c) 1999 +hotgm4ev // (c) 2000 +hotgmcki // (c) 2001 +loderndf // (c) 2000 +loderndfa // (c) 2000 +hotdebut // (c) 2000 + +// Orca games +marineb // (c) 1982 Orca +changes // (c) 1982 Orca +changesa // (c) 1982 Orca + Eastern Micro Electronics license +looper // (c) 1982 Orca +springer // (c) 1982 Orca +hoccer // (c) 1983 Eastern Micro Electronics, Inc. +hoccer2 // (c) 1983 Eastern Micro Electronics, Inc. +bcruzm12 // (c) 1983 Sigma Ent. Inc. +hopprobo // (c) 1983 Sega +wanted // (c) 1984 Sigma Ent. Inc. +funkybee // (c) 1982 Orca +funkybeeb // (c) 1982 Orca +skylancr // (c) 1983 Orca +skylancre // (c) 1983 Orca + Esco Trading Co license +zodiack // (c) 1983 Orca + Esco Trading Co license +dogfight // (c) 1983 Thunderbolt +moguchan // (c) 1982 Orca + Eastern Commerce Inc. license (doesn't appear on screen) +percuss // (c) 1981 Orca +bounty // (c) 1982 Orca +espial // (c) 1983 Thunderbolt, Orca logo is hidden in title screen +espialu // (c) 1983 Thunderbolt, Orca logo is hidden in title screen +netwars // (c) 1983 Orca + Esco Trading Co license +// Vastar was made by Orca, but when it was finished, Orca had already bankrupted. +// So they sold this game as "Made by Sesame Japan" because they couldn't use +// the name "Orca" +vastar // (c) 1983 Sesame Japan +vastar2 // (c) 1983 Sesame Japan +/* +other Orca games: +82 Battle Cross Kit 2P +82 River Patrol Empire Mfg/Kerstens Ind Ded 2P HC Action +82 Slalom Kit 2P HC Action +83 Net Wars 2P +83 Super Crush Kit 2P Action +*/ + +// Gaelco 2D games +mastboy // (c) 1987 - No Ref on the PCB +mastboyi // (c) 1987 - No Ref on the PCB +xorworld // (c) 1990 - prototype +bigkarnk // (c) 1991 - Ref 901112-1 +// Master Boy 2 // (c) 1991 - Ref ??? +splash // (c) 1992 - Ref 922804 +splash10 // (c) 1992 - Ref 922804 +paintlad // (c) 1992 - ver 1.3 +roldfrog // not a gaelco game but based on splash code +roldfroga // not a gaelco game but based on splash code +rebus // not a gaelco game but on similar hw to splash +funystrp // not a gaelco game but on similar hw to splash +puckpepl // not a gaelco game but on similar hw to splash +thoop // (c) 1992 - Ref 922804/1 +squash // (c) 1992 - Ref 922804/2 +wrally // (c) 1993 - Ref 930705 +wrallya // (c) 1993 - Ref 930705 +wrallyb // (c) 1993 - Ref 930217 +glass // (c) 1993 - Ref 931021 +glass10 // (c) 1993 - Ref 931021 +glassbrk // (c) 1993 - Ref 931021 shows "Break Edition" on a real PCB +targeth // (c) 1994 - Ref 940531 +targetha // (c) 1994 - Ref 940531 +thoop2 // (c) 1994 - Ref ??? +aligator // (c) 1994 - Ref 940411 +aligatorun // (c) 1994 - Ref 940411 (unprotected) +biomtoy // (c) 1995 - Ref 922804/2 - (unprotected) +touchgo // (c) 1995 - Ref 950906 +touchgon // (c) 1995 - Ref 950906 +touchgoe // (c) 1995 - Ref 950510-1 +wrally2 // (c) 1995 - Ref 950510 +maniacsp // (c) 1996 - Ref 922804/2 - (prototype) +maniacsq // (c) 1996 - Ref ??? - (unprotected) +snowboar // (c) 1996 - Ref 960419/1 +snowboara // (c) 1996 - Ref 960419/1 +bang // (c) 1998 - Ref ??? +bangj // (c) 1999 - Ref ??? +grtesoro // (c) 1999 - Ref ??? +grtesoro4 // (c) 1999 - Ref ??? + +// Gaelco 3D games +speedup // (c) 1996 - Ref ??? +surfplnt // (c) 1997 - Ref 971223 +surfplnt40 // (c) 1997 - Ref 970514 +radikalb // (c) 1998 - Ref ??? + +// SH-4 hardware +atvtrack // (c) 2002 - Ref 020419 +atvtracka // (c) 2002 - Ref 020419 + +/* +Remaining Gaelco Games: +======================= +1999: Rolling Extreme +2000: Football Power +2001: Smashing Drive +*/ + +// Galeco PC based games +tokyocop // (c) 2003 (Arcade TV Game List - P.168, Right, 19 from bottom) + +// Kaneko games +hvyunit // (c) 1988 Kaneko +hvyunitj // (c) 1988 Kaneko +hvyunitjo // (c) 1988 Kaneko +hvyunitu // (c) 1988 Kaneko +djboy // (c) 1989 Kaneko +djboyj // (c) 1989 Kaneko +djboya // (c) 1989 Kaneko +airbustr // (c) 1990 Kaneko + Namco +airbustrj // (c) 1990 Kaneko + Namco (Japan) +airbustrb // bootleg +galpanic // (c) 1990 Kaneko +galpanica // (c) 1990 Kaneko +galsnew // (c) 1990 Kaneko +galsnewa // (c) 1990 Kaneko +galsnewj // (c) 1990 Kaneko +galsnewk // (c) 1990 Kaneko +galpani2 // (c) 1993 Kaneko +galpani2g // (c) 1993 Kaneko +galpani2t // (c) 1993 Kaneko +galpani2i // (c) 1993 Kaneko +galpani2j // (c) 1993 Kaneko +gp2quiz // (c) 1993 Kaneko +gp2se // (c) 1994 Kaneko +jchan // (c) 1995 Kaneko +jchan2 // (c) 1995 Kaneko +galpani3 // (c) 1995 Kaneko + +// Kaneko "AX System" games +berlwall // (c) 1991 Kaneko +berlwallt // (c) 1991 Kaneko +mgcrystl // (c) 1991 Kaneko (World) +mgcrystlo // (c) 1991 Kaneko (World) +mgcrystlj // (c) 1991 Kaneko + distributed by Atlus (Japan) +blazeon // (c) 1992 Atlus +sandscrp // (c) 1992 Face +sandscrpa // (c) 1992 Face +sandscrpb // (c) 1992 Face +explbrkr // (c) 1992 Kaneko +bakubrkr // (c) 1992 Kaneko +shogwarr // (c) 1992 Kaneko +shogwarru // (c) 1992 Kaneko +fjbuster // (c) 1992 Kaneko +brapboys // (c) 1992 Kaneko +brapboysj // (c) 1992 Kaneko +bloodwar // (c) 1994 Kaneko +oedfight // (c) 1994 Kaneko +bonkadv // (c) 1994 Kaneko +gtmr // (c) 1994 Kaneko +gtmra // (c) 1994 Kaneko +gtmre // (c) 1994 Kaneko +gtmrusa // (c) 1994 Kaneko (US) +gtmr2 // (c) 1995 Kaneko +gtmr2a // (c) 1995 Kaneko +gtmr2u // (c) 1995 Kaneko + +// Kaneko "Super Nova System" games +skns +galpani4 // 1996.09 (c) 1996 Kaneko (Japan) +galpani4k // 1996.09 (c) 1996 Kaneko (Korea) +jjparads // 1996.12 (c) 1996 Electro Design Co. (Japan) +sarukani // 1997.01 (c) 1997 Kaneko / Mediaworks (Japan) +vblokbrk // 1997.?? (c) 1997 Kaneko / Mediaworks (Asia) +galpanis // 1997.04 (c) 1997 Kaneko (Japan) +galpanisk // 1997.04 (c) 1997 Kaneko (Korea) +sengekis // 1997.?? (c) 1997 Kaneko / Warashi (Asia) +sengekisj // 1997.07 (c) 1997 Kaneko / Warashi (Japan) +jjparad2 // 1997.12 (c) 1997 Electro Design Co. (Japan) +cyvern // 1998.02 (c) 1998 Kaneko (US) +cyvernj // 1998.02 (c) 1998 Kaneko (Japan) +ryouran // 1998.07 (c) 1998 Electro Design Co. (Japan) +puzzloop // 1998.?? (c) 1998 Mitchell (Europe) +puzzloopj // 1998.12 (c) 1998 Mitchell (Japan) +puzzloopa // 1998.?? (c) 1998 Mitchell (Asia) +puzzloopk // 1998.?? (c) 1998 Mitchell (Korea) +puzzloopu // 1999.05 (c) 1998 Mitchell (USA) +galpans2 // 1999.02 (c) 1999 Kaneko (Japan) +galpans2a // 1999.?? (c) 1999 Kaneko (Asia) +galpansu // 1999.?? (c) 1999 Kaneko (Korea) +senknow // 1999.04 (c) 1999 Kaneko / Kouyousha (Japan) +panicstr // 1999.09 (c) 1999 Kaneko (Japan) +teljan // 1999.11 (c) 1999 Electro Design Co. (Japan) +gutsn // 2000.06 (c) 2000 Kaneko / Kouyousha (Japan) +galpans3 // 2002.07 (c) 2002 Kaneko (Japan) + +// Seta games +hanaawas // (c) SetaKikaku +speedatk // CB-0 (c) SetaKikaku +srmp1 // UB or UC?? (c) 1987 +srmp2 // UB or UC?? (c) 1987 +srmp3 // ZA-0? (c) 1988 +rmgoldyh // ZF-0? (c) 1988 +mjyuugi // (c) 1990 Visco +mjyuugia // (c) 1990 Visco +ponchin // (c) 1991 Visco +ponchina // (c) 1991 Visco + +// Seta 1st Generation HW (seta.c) +tndrcade // UA-0 (c) 1987 Taito +tndrcadej // UA-0 (c) 1987 Taito +twineagl // UA-2 (c) 1988 + Taito license +downtown // UD-2 (c) 1989 + Romstar or Taito license (DSW) +downtown2 // UD-2 (c) 1989 + Romstar or Taito license (DSW) +downtownj // UD-2 (c) 1989 + Romstar or Taito license (DSW) +downtownp // UD-2 (c) 1989 + Romstar or Taito license (DSW) +usclssic // UE (c) 1989 + Romstar or Taito license (DSW) +calibr50 // UH (c) 1989 + Romstar or Taito license (DSW) +arbalest // UK (c) 1989 + Jordan, Romstar or Taito license (DSW) +metafox // UP (c) 1989 + Jordan, Romstar or Taito license (DSW) +setaroul // UF (c) 19?? Seta / Visco +drgnunit // (c) 1989 Athena / Seta + Romstar or Taito license (DSW) +wits // (c) 1989 Athena (Visco license) +thunderl // (c) 1990 Seta + Romstar or Visco license (DSW) +thunderlbl // (c) 1990 Seta + Romstar or Visco license (DSW) - bootleg with Tetris sound +wiggie // (c) 1994 Promat (not genuine seta hardware, but based on thunderl code) +superbar // (c) 1994 Promat (not genuine seta hardware, but based on thunderl code) +jockeyc // (c) 1990 [Seta] (Visco license) +rezon // (c) 1991 Allumer +rezont // (c) 1991 Allumer / Taito +stg // (c) 1991 Athena / Tecmo +pairlove // (c) 1991 Athena +blandia // (c) 1992 Allumer +blandiap // (c) 1992 Allumer +blockcar // (c) 1992 Visco +qzkklogy // (c) 1992 Tecmo +neobattl // (c) 1992 Banpresto / Sotsu Agency. Sunrise +umanclub // (c) 1992 Tsuburaya Prod. / Banpresto +zingzip // UY (c) 1992 Allumer + Tecmo +zingzipbl // bootleg +atehate // (C) 1993 Athena +jjsquawk // (c) 1993 Athena / Able +jjsquawkb // bootleg +kamenrid // (c) 1993 Toei / Banpresto +madshark // (c) 1993 Allumer +msgundam // (c) 1993 Banpresto +msgundam1 // (c) 1993 Banpresto +daioh // (C) 1993 Athena +oisipuzl // (c) 1993 SunSoft / Atlus +triplfun // bootleg +utoukond // (c) 1993 Banpresto + Tsuburaya Prod. +qzkklgy2 // (c) 1993 Tecmo +wrofaero // (c) 1993 Yang Cheng +eightfrc // (c) 1994 Tecmo +kiwame // (c) 1994 Athena +krzybowl // (c) 1994 American Sammy +orbs // (c) 1994 American Sammy +keroppi // (c) 1993 Sammy +extdwnhl // (c) 1995 Sammy Japan +gundhara // (c) 1995 Banpresto +sokonuke // (c) 1995 Sammy Industries +zombraid // (c) 1995 American Sammy +crazyfgt // (c) 1998 Subsino +inttoote // (c) 1998 Coinmaster +inttootea // (c) 1998 Coinmaster + +// Seta 2nd Generation HW (seta2.c) +gundamex // (c) 1994 Banpresto +grdians // (c) 1995 Banpresto +mj4simai // (c) 1996 Maboroshi Ware +myangel // (c) 1996 Namco +myangel2 // (c) 1997 Namco +pzlbowl // (c) 1999 Nihon System / Moss +penbros // (c) 2000 Subsino +deerhunt // (c) 2000 Sammy USA Corporation +deerhunta // (c) 2000 Sammy USA Corporation +deerhuntb // (c) 2000 Sammy USA Corporation +deerhuntc // (c) 2000 Sammy USA Corporation +turkhunt // (c) 2001 Sammy USA Corporation +wschamp // (c) 2001 Sammy USA Corporation +wschampa // (c) 2001 Sammy USA Corporation +funcube2 // (c) 2001 Namco +funcube4 // (c) 2001 Namco +trophyh // (c) 2002 Sammy USA Corporation +reelquak // (c) ???? <unknown> + +// SSV System (Seta, Sammy, Visco) games +srmp4 // (c) 1993 Seta +srmp4o // (c) 1993 Seta +twineag2 // (c) 1994 Seta +srmp7 // (c) 1997 Seta +dynagear // (c) 1993 Sammy +survarts // (c) 1993 Sammy +survartsu // (c) 1993 Sammy (American) +eaglshot // (c) 1994 Sammy +hypreact // (c) 1995 Sammy +meosism // (c) 1996?Sammy +hypreac2 // (c) 1997 Sammy +sxyreact // (c) 1998 Sammy +sxyreac2 // (c) 1999 Sammy +cairblad // (c) 1999 Sammy +keithlcy // (c) 1993 Visco +drifto94 // (c) 1994 Visco +janjans1 // (c) 1996 Visco +stmblade // (c) 1996 Visco +jsk // (c) 1997 Visco +koikois2 // (c) 1997 Visco +mslider // (c) 1997 Visco / Datt Japan +ryorioh // (c) 1998 Visco +janjans2 // (c) 2000 Visco +vasara // (c) 2000 Visco +vasara2 // (c) 2001 Visco +vasara2a // (c) 2001 Visco + +ultrax // (c) 1995 Banpresto +gdfs // (c) 1995 Banpresto + +jclub2 // (c) 199? Seta +jclub2o // (c) 199? Seta +darkhors // bootleg of Jockey Club II + +// ST-0016 based games (ST-0016 is a SoC Z80-based HW) +// plain ST-0016 +renju // (c) 1994 Visco +koikois // (c) 1995 Seta +nratechu // (c) 1996 Seta +dcrown // 199? unknown +// R3000 + ST-0016 +srmp5 // (c) 199? Seta +speglsht // (c) 1994 Seta +// V810 + ST-0016 +mayjinsn // (c) 1994 Seta +mayjisn2 // (c) 1994 Seta + +// Seta System S12 +srmp6 // (c) 1996 Seta (Japan) + +// Seta Aleck64 and similar (N64 based) +aleck64 // (c) 1998 Nintendo/Seta +11beat // (c) 1998 Hudson +mtetrisc // (c) 1998 Capcom +starsldr // (c) 1998 Hudson/Seta +vivdolls // (c) 1998 Visco +srmvs // (c) 1999 Seta +twrshaft // (c) 2003 Aruze +hipai // (c) 2003 Seta/Aruze (Arcade TV Game List - P.92, Right, 16 from top) +doncdoon // (c) 2003 Aruze (Arcade TV Game List - P.90, Right, 8 from bottom) +kurufev // (c) 2003 Aruze (Arcade TV Game List - P.75, Right, 1st entry on top) +mayjin3 // (c) 2000 Seta (Arcade TV Game List - P.101, Right, 9 from top) + + +// Atlus games +powerins // (c) 1993 Atlus (USA) +powerinsj // (c) 1993 Atlus (Japan) +powerinsa // (c) 1993 Atlus (bootleg of USA version) +powerinsb // (c) 1993 Atlus (bootleg of USA version) +ohmygod // (c) 1993 Atlus (Japan) +naname // (c) 1994 Atlus (Japan) +blmbycar // (c) 1994 ABM & Gecas - uses same gfx chip as powerins? +blmbycaru // (c) 1994 ABM & Gecas - uses same gfx chip as powerins? +watrball // (c) 1996 ABM + +// Sun Electronics / SunSoft games +dai3wksi // 1979.09 Dai San Wakusei (The Third Planet) +speakres // [Sun Electronics] +speakresb // bootleg +stratvox // [1980 Sun Electronics] Taito +stratvoxb // bootleg +spacecho // bootleg +spacecho2 // bootleg +route16 // (c) 1981 Tehkan/Sun + Centuri license +route16a // (c) 1981 Tehkan/Sun + Centuri license +route16b // bootleg +routex // bootleg +ttmahjng // Taito +fnkyfish // (c) 1981 Sun Electronics +kangaroo // (c) 1982 Sun Electronics +kangarooa // 136008 (c) 1982 Atari +kangaroob // (bootleg) +arabian // TVG13 (c) 1983 Sun Electronics +arabiana // 136019 (c) 1983 Atari +markham // TVG14 (c) 1983 Sun Electronics +strnskil // TVG15 (c) 1984 Sun Electronics +guiness // TVG15 (c) 1984 Sun Electronics +pettanp // TVG16 (c) 1984 Sun Electronics (Japan) +banbam // TVG16 (c) 1984 Sun Electronics +ikki // TVG17 (c) 1985 Sun Electronics (Japan) +farmer // TVG17 (c) 1985 Sun Electronics +shanghai // (c) 1988 Sunsoft (Sun Electronics) +shangha2 // (c) 1989 Sunsoft (Sun Electronics) +kothello // (c) 1990 Success +shangha3 // (c) 1993 Sunsoft +heberpop // (c) 1994 Sunsoft / Atlus +blocken // (c) 1994 KID / Visco +/* +Other Sun games +1978.11 (GT)Block Perfect +1978.12 (GT)Block Challenger +1979.04 Galaxy Force +1979.07 Run Away +1979.12 Warp 1 +1980.10 Cosmo Police (Cosmopolis?) +*/ + +// SunA games +goindol // (c) 1987 Sun a Electronics +goindolu // (c) 1987 Sun a Electronics +goindolk // (c) 1987 Sun a Electronics +rranger // (c) 1988 SunA + Sharp Image license +sranger // (c) 1988 +srangerb // bootleg +srangerw // (c) 1988 SunA (WDK License) +hardhead // (c) 1988 SunA +hardheadb // bootleg +pop_hh // bootleg +sparkman // (c) 1989 SunA +sparkmana // (c) 1989 SunA +starfigh // (c) 1990 SunA +hardhea2 // (c) 1991 SunA +brickzn // (c) 1992 SunA +brickzn3 // (c) 1992 SunA +bestbest // (c) 1994 SunA +sunaq // (c) 1994 SunA +bssoccer // (c) 1996 SunA +uballoon // (c) 1996 SunA + +// Dooyong games +gundealr // (c) 1990 Dooyong +gundealra // (c) 1990 Dooyong +gundealrt // (c) 1990 Tecmo +yamyam // (c) 1990 Dooyong +wiseguy // (c) 1990 Dooyong +lastday // (c) 1990 Dooyong +lastdaya // (c) 1990 Dooyong +gulfstrm // (c) 1991 Dooyong +gulfstrmm // (c) 1991 Dooyong + distributed by Media Shoji +pollux // (c) 1991 Dooyong +polluxa // (c) 1991 Dooyong +polluxa2 // (c) 1991 Dooyong +flytiger // (c) 1992 Dooyong +bluehawk // (c) 1993 Dooyong +bluehawkn // (c) 1993 NTC +sadari // (c) 1993 NTC +gundl94 // (c) 1994 Dooyong +primella // (c) 1994 NTC +superx // (c) 1994 NTC +superxm // (c) 1994 Mitchell +rshark // (c) 1995 Dooyong +popbingo // (c) 1996 Dooyong + +// Tong Electronic games +leprechn // (c) 1982 +potogold // (c) 1982 +leprechp // (c) 1982 +piratetr // (c) 1982 +beezer // (c) 1982 +beezer1 // (c) 1982 + +// Comad games +pushman // (c) 1990 Comad +pushmana // (c) 1990 Comad +pushmans // (c) 1990 Comad + American Sammy license +pushmant // (c) 1990 Comad + Top Tronic license +bballs // (c) 1991 Comad +zerozone // (c) 1993 Comad +lvgirl94 // (c) 1994 Comad +hotpinbl // (c) 1995 Comad & New Japan System +galspnbl // (c) 1996 Comad + // the following ones run on modified Gals Panic hardware +fantasia // (c) 1994 Comad & New Japan System +supmodel // (c) 1994 Comad & New Japan System +newfant // (c) 1995 Comad & New Japan System +fantsy95 // (c) 1995 Hi-max Technology Inc. +zipzap // (c) 1995 Barko Corp +missw96 // (c) 1996 Comad +missmw96 // (c) 1996 Comad +fantsia2 // (c) 1997 Comad +fantsia2a // (c) 1997 Comad +wownfant // (c) 2002 Comad +galhustl // (c) 1997 ACE International + +// Playmark games +sslam // (c) 1993 - hack of Namco's Super World Court +sslama // (c) 1993 - hack of Namco's Super World Court +powerbal // (c) 1994 +powerbals // (c) 1994 +magicstk // (c) 1995 +hotminda // (c) 1995 +bigtwin // (c) 1995 +bigtwinb // (c) 1995 +wbeachvl // (c) 1995 +wbeachvl2 // (c) 1995 +excelsr // (c) 1995 +hotmind // (c) 1995 +hrdtimes // (c) 1994 +hrdtimesa // (c) 1994 +drtomy // (c) 1993 no copyright message (1993 on pcb), some code taken from 'Big Karnak' +sderby // (c) 1996 +pmroulet +spacewin + +// Pacific Novelty games +sharkatt // (c) 1980 +thief // (c) 1981 +natodef // (c) 1982 +natodefa // (c) 1982 +mrflea // (c) 1982 + +// Tecfri games +ambush // (c) 1983 +ambushj // (c) 1983 Nippon Amuse license +ambushv // (c) 1983 Volt Electronics license +holeland // (c) 1984 +crzrally // (c) 1985 +crzrallya // (c) 1985 +crzrallyg // (c) 1985 +speedbal // (c) 1987 +sauro // (c) 1987 +trckydoc // (c) 1987 +trckydoca // (c) 1987 + +// Metro games +karatour // (c) 1992 Mitchell +ladykill // (c) 1993 Yanyaka + Mitchell license - (Arcade TV Game List - P.101, Right, 2 from Bottom) +moegonta // (c) 1993 Yanyaka (Japan) (Arcade TV Game List - P.101, Right, 2 from Bottom) +pangpoms // (c) 1992 +pangpomsm // (c) 1992 Mitchell / Metro +skyalert // (c) 1992 +poitto // (c) 1993 Metro / Able Corp. +dharma // (c) 1994 +dharmak // (c) 1994 +lastfort // (c) 1994 +lastforte // (c) 1994 +lastfortk // (c) 1994 +lastfortg // (c) 1994 +toride2g // (c) 1994 +toride2gg // (c) 1994 +toride2j // (c) 1994 +gunmast // (c) 1994 +daitorid // (c) 1995 +daitoa // (c) 1995 +dokyusei // (c) 1995 Make Software / Elf / Media Trading +dokyusp // (c) 1995 Make Software / Elf / Media Trading +msgogo // (c) 1995 Metro +puzzli // (c) 1995 Metro / Banpresto +3kokushi // (c) 1996 Mitchell +pururun // (c) 1995 Metro / Banpresto +balcube // (c) 1996 +mouja // (c) 1996 Etona (Japan) +bangball // (c) 1996 Banpresto / Kunihiko Tashiro+Goodhouse +batlbubl // (c) 1996 Banpresto / Kunihiko Tashiro+Goodhouse +gakusai // (c) 1997 MakeSoft +gakusai2 // (c) 1998 MakeSoft +blzntrnd // (c) 1994 Human Amusement +gstrik2 // (c) 1996 Human Amusement +gstrik2j +hyprduel // (c) 1993 Technosoft (Japan) +hyprduel2 // (c) 1993 Technosoft (Japan) +magerror // (c) 1994 Technosoft (Japan) (Arcade TV Game List - P.100, Left, 13 from Bottom) +puzzlet // (c) 2000 Yunizu Corporation (Japan) + +// Venture Line games +spcforce // (c) 1980 Venture Line +spcforc2 // bootleg +meteor // (c) 1981 Venture Line +looping // (c) 1982 Video Games GMBH +loopingv // (c) 1982 Video Games GMBH (Venture Line license) +loopingva // (c) 1982 Video Games GMBH (Venture Line license) +skybump // (c) 1982 Venture Line +suprridr // (c) 1983 Venture Line + Taito license + +// Yun Sung games +paradise // (c) >1994 Yun Sung +paradlx // (c) >1994 Yun Sung +para2dx // (c) >1994 Yun Sung +tgtball // (c) 1995 Yun Sung +tgtballa // (c) 1995 Yun Sung +torus // (c) 1996 Yun Sung +paprazzi // (c) 1996 Yun Sung +madball // (c) 1998 Yun Sung +madballn // (c) 1998 Yun Sung +cannball // (c) 1995 Yun Sung / Soft Visio +cannballv // (c) 1995 Yun Sung / T&K +magix // (c) 1995 Yun Sung +rocktris // (c) 1994? Yun Sung +magicbub // (c) Yun Sung +magicbuba // (c) Yun Sung +shocking // (c) 1997 Yun Sung +bombkick // (c) 1998 Yun Sung +nmg5 // (c) 1998 Yun Sung +nmg5e // (c) 1998 Yun Sung +searchey // (c) 1999 Yun Sung +searchp2 // (c) 1999 Yun Sung +pclubys // (c) 2000 Yun Sung +pclubysa // (c) 2000 Yun Sung +garogun // (c) 2000 Yun Sung +7ordi // (c) 2002 Yun Sung +wondstck // (c) ???? Yun Sung + +// Zilec games +blueprnt // (c) 1982 Bally Midway (Zilec in ROM 3U, and the programmer names) +blueprntj // (c) 1982 Jaleco (Zilec in ROM 3U, and the programmer names) +saturnzi // (c) 1983 Jaleco (Zilec in ROM R6, and the programmer names) + +// Fuuki FG-2 games +gogomile // (c) 1995 +gogomilej // (c) 1995 (Japan) +pbancho // (c) 1996 (Japan) + +// Fuuki FG-3 games +asurabld // (c) 1998 (Japan) +asurabus // (c) 2000 (Japan) + +// Unico games +drgnmst // (c) 1994 +burglarx // (c) 1997 +zeropnt // (c) 1998 +zeropnta // (c) 1998 +zeropnt2 // (c) 1999 +silkroad // (c) 1999 +aoh // (c) 2001 + +// Afega games +twinactn // (c) 1996 - bootleg of US AFF Mustang +stagger1 // (c) 1998 +redhawk // (c) 1997 +redhawke // (c) 1997 Excellent Co., Ltd license +redhawki // (c) 1997 Haedong Corp. license +redhawkb // (c) 1997 +grdnstrm // (c) 1998 +grdnstrmk // (c) 1998 +bubl2000 // (c) 1998 Tuning +hotbubl // (c) 1998 Pandora +popspops // (c) 1999 +firehawk // (c) 2001 ESD +mangchi // (c) 2000 +spec2k // (c) 2000 Yonatech + +// ESD games +// http://www.esdgame.co.kr/english/ +multchmp // (c) 1998 (World) +multchmpk // (c) 1998 (Korea) +mchampdx // (c) 1999 ESD +mchampdxa // (c) 1999 ESD +mchampdxb // (c) 1999 ESD +hedpanic // (c) 2000 ESD +hedpanicf // (c) 2000 ESD + Fuuki, Co. Ltd. +hedpanico // (c) 1999 ESD +tangtang // (c) 2000 ESD +swatpolc // (c) 2001 ESD + +// Dyna Electronics / Dynax / Nakanihon games +royalmj // (c) 1982 Nichibutsu +openmj // (c) 1982 Nichibutsu +royalmah // Falcon bootleg +janyoup2 // Falcon bootleg +janputer // (c) 1982 Taito +janoh // (c) 1984 Toaplan +janoha // (c) 1984 Toaplan +jansou // (c) 1985 Dyna +jansoua // (c) 1985 Dyna +mjsiyoub // (c) 1986 Visco +mjsenka // (c) 1986 Visco +mjyarou // (c) 1986 Visco / Video System +mjclub // (c) 1986 Xex +daisyari // (c) 1989 Best System +suzume // ?? (c) 1986 Dyna Electronics +hnayayoi // "02" (c) 1987 Dyna Electronics +dondenmj // "03" (c) 1986 Dyna Electronics +ippatsu // ?? (c) 1986 Dyna Electronics +hnfubuki // "06" (c) 1987 Dynax +mjdiplob // "07" (c) 1987 Dynax +untoucha // "08" (c) 1987 Dynax +tontonb // "09" (c) 1987 Dynax +makaijan // ?? (c) 1987 Dynax +hanamai // "16" (c) 1988 Dynax +majs101b // "17" (c) [1988] Dynax +mjapinky // 1988 Dynax +mjdejavu // 1989 Dynax +mjdejav2 // 1989 Dynax +hnkochou // "20" (c) 1989 Dynax +mjderngr // "22" (c) 1989 Dynax +hnoridur // "23" (c) 1989 Dynax +drgpunch // "24" (c) 1989 Dynax +mjfriday // "26" (c) [1989] Dynax +jantouki // "27" Jantouki 1989 Dynax +gekisha // "28" 1989 Dynax +mjifb // "29" 1990 Dynax +mjifb2 // "29" 1990 Dynax +mjifb3 // "29" 1990 Dynax +mjvegas // 1991 Dynax +mjvegasa // 1991 Dynax +cafetime // 1992 Dynax +cafedoll // 1993 Dynax +janptr96 // 1996 Dynax +janptrsp // 1997 Dynax +sprtmtch // "31" (c) 1989 Dynax + Fabtek license +maya // (c) 1994 Promat +mayaa // (c) 1994 Promat +inca // (c) 199? ???? +blktouch // (c) Yang Gi Co Ltd. +mcnpshnt // "33" Mahjong Campus Hunting 1990 Dynax +7jigen // "37" 7jigen no Youseitachi 1990 Dynax +neruton // "45" Mahjong Neruton Haikujiradan 1990 Dynax +nerutona // "45" Mahjong Neruton Haikujiradan 1990 Dynax +mjcomv1 // 1991 Dynax +shpeng // (c) 1995 WSAC Systems +tenkai // 1991 Dynax +tenkai2b // 1991 Dynax +tenkaibb // 1991 Dynax +tenkaicb // 1991 Dynax +tenkaid // 1991 Dynax +tenkaie // 1991 Dynax +htengoku // 1992 Dynax +mjreach // 1994 Dynax +mjdialq2 // "52" (c) 1991 Dynax +yarunara // "55" Mahjong Yarunara 1991 Dynax +mjangels // "61" Mahjong Angels 1991 Dynax +quiztvqq // "64" Quiz TV Gassyuukoku Q&Q 1992 Dynax +mmpanic // "70" 1992 Nakanihon/Taito +quizchq // "73" (c) 1993 Nakanihon +quizchql // "73" (c) 1993 Laxan +funkyfig // "74" (c) 1993 Nakanihon + East Technology +animaljr // "75" 1993 Nakanihon/Taito (USA) +animaljrs // "75" 1993 Nakanihon/Taito (Spanish version) +animaljrj // "75" 1993 Nakanihon/Taito (Japan) +hginga // 1994 Dynax +mjmyster // "?7" 1994 Dynax +mjmywrld // "?7" 1994 Dynax +mjmyornt // 1994 Dynax +mjmyuniv // 1994 Dynax +quiz365 // "78" (c) 1994 Nakanihon +quiz365t // "78" (c) 1994 Nakanihon (Taiwan) +rongrong // "80" (c) 1994 Nakanihon +rongrongj // "80" (c) 1994 Nakanihon +rongrongg // "80" (c) 1994 Nakanihon +hparadis // (c) 1994 Nakanihon +hgokou // (c) 1995 Nakanihon +mjdchuka // (c) 1995 Nakanihon +mjtensin // "100" 1995 Dynax +nettoqc // "103" (c) 1995 Nakanihon +majrjhdx // "105" 1996 Dynax +ddenlovj // "113" (c) 1995 Dynax (Japan) +ddenlovrk // "113" (c) 1995 Dynax (Korea) +ddenlovr // "113" (c) 1996 Dynax (Hong Kong) +ddenlovrb // bootleg +hanakanz // "507" 1996 Dynax +akamaru // "501" 1996 Dynax +sryudens // "502" 1996 Dynax / Face +mjflove // 1996 Dynax +hkagerou // "510" Hana Kagerou 1996 Nakanihon +realbrk // "600" Billiard Academy Real Break 1998 (Europe) +realbrkk // "600" Billiard Academy Real Break 1998 (Korea) +realbrkj // "523" Billiard Academy Real Break 1998 (Japan) +dai2kaku // "522" DaiDaiKakumei (Japan) +mjchuuka // "???" (c) 1998 Dynax +mjreach1 // "526" Mahjong Reach Ippatsu 1998 Nihon System/Dynax +cafebrk // "528" Mahjong Cafe Break (C) 1999 Nakanihon / Dynax +jongtei // "532" Mahjong Jong-Tei (C) 1999 Dynax +daimyojn // 2002 Dynax / Techno-Top + +pkgnsh // "505" Pachinko Gindama Shoubu 1998 (Japan) +pkgnshdx // "522" Pachinko Gindama Shoubu DX 1998 (Japan) + +hjingi // "???" 1990 Dynax +hanayara // "???" +mjelctrn // "???" Mahjong Electron Base parts 2 & 4 +mjelct3 // "???" Mahjong Electron Base parts 2 & 3 +mjelct3a // "???" Mahjong Electron Base parts 2 & 3 +mjelctrb // (c) 1993 Dynax Mahjong Electron Base parts 4 +majxtal7 // "???" + +// Sigma games +nyny // (c) 1980 Sigma Ent. Inc. +nynyg // (c) 1980 Sigma Ent. Inc. + Gottlieb +warcadia // (c) 1982 Sigma Ent. Inc. +r2dtank // (c) 1980 Sigma Ent. Inc. +spiders // (c) 1981 Sigma Ent. Inc. +spiders2 // (c) 1981 Sigma Ent. Inc. +spiders3 // (c) 1981 Sigma Ent. Inc. +spinner // bootleg +sub // (c) 1985 Sigma Ent. Inc. + +// Sigma B52 +jwildb52 // (c) 199? Sigma +jwildb52a // (c) 199? Sigma +jwildb52h // (c) 199? Sigma + +// Sigma B98 / Sammy Medal Games +gegege // (c) 1997 Banpresto / Sigma +sammymdl // (c) 2000-2003 Sammy +animalc // (c) 2000 Sammy +itazuram // (c) 2000 Sammy +pyenaget // (c) 2000 Sammy +tdoboon // (c) 2000 Sammy +haekaka // (c) 2001 Sammy + +// IGS games ( www.igs.com.tw +goldstar // (c) 198? IGS +goldstbl // (c) 198? IGS +moonlght // bootleg +chry10 // bootleg +chrygld // bootleg +cabaret // (c) 1992 AMT +cpoker // (c) 1993? IGS +cpokert // (c) 1993? Tuning +csk227it // (c) 198? IGS +csk234it // (c) 198? IGS +igs_ncs // (c) 198? IGS +igs_ncs2 // (c) 2000 IGS +spk115it // (c) 199? IGS +spk116it // (c) 199? IGS +jackie // (c) 1993 IGS +pktet346 // (c) 199? IGS +chleague // (c) 199? IGS +chleagul // (c) 199? IGS +number10 // (c) IGS (Board labeled Playmark Srl) +numbr10l // (c) IGS (Board labeled Playmark Srl) +cpokerpk // (c) SGS (bootleg blue board) +cpokerpkg // (c) SGS (bootleg green board) +citalcup // (c) SGS (bootleg of IGS v220it) +stellecu // (c) 1998 +iqblock // (c) 1993 +grndtour // (c) 1993 +5clown // (c) IGS 1993 +5clowna // (c) IGS 1993 +5clownsp // (c) IGS 1993 + +// IGS005 + IGS006 + IGS007 + IGS008 Games +lordgun // (c) 1994 +aliencha // (c) 1994 +alienchac // (c) 1994 + +// IGS009 Games +jingbell // (c) 1995? +gp98 // (c) 1998 + +// IGS011 Games +lhb // (c) 1995 +lhbv33c // (c) 1995 +ryukobou // (c) 1995 +dbc // (c) 199? +lhb2 // (c) 1996 +xymg // (c) 1996 +wlcc // (c) 1996 +vbowl // (c) 1996 +vbowlj // (c) 1996 +drgnwrld // (c) 1997 +drgnwrldv30 // (c) 1995 +drgnwrldv21 // (c) 1995 +drgnwrldv21j // (c) 1995 +drgnwrldv20j // (c) 1995 +drgnwrldv10c // (c) 1995 +drgnwrldv11h // (c) 1995 +nkishusp // (c) 1998 + +// IGS017 / IGS031 Games +iqblocka // (c) 1996 +iqblockf // (c) 1996 +tjsb // (c) 1997 +sdmg2 // (c) 1997 +mgdh // (c) 1997 +mgdha // (c) 1997 +mgcs // (c) 1998 +lhzb2 // (c) 1998 +lhzb2a // (c) 1998 +slqz2 // (c) 1998 +tarzan // (c) 1999? +tarzana // (c) 1999? +starzan // (c) 2000? + +// IGS027A Games +bigd2 // (c) 2000 +sdwx // (c) 2002 +sddz // (c) 200? +lhzb3 // (c) 200? +lhzb4 // (c) 200? +klxyj // (c) 200? +mgfx // (c) 200? + +// IGS PGM System Games +pgm +orlegend // (c) 1997 +orlegende // (c) 1997 +orlegendc // (c) 1997 +orlegendca // (c) 1997 +orlegend111c // (c) 1997 +orlegend105k // (c) 1997 +drgw2 // (c) 1997 +dw2v100x // (c) 1997 +drgw2c // (c) 1997 +drgw2j // (c) 1997 +drgw3 // (c) 1998 +drgw3105 // (c) 1998 +drgw3100 // (c) 1998 +dwex // (c) 1998 +killbld // (c) 1998 +killbld104 // (c) 1998 +kov // (c) 1999 +kovplus // (c) 1999 +kovplusa // (c) 1999 +kov115 // (c) 1999 +kov100 // (c) 1999 +kovsh // (c) 1999 +kovsh103 // (c) 1999 +kovqhsgs // bootleg +kovlsqh2 // bootleg +kovlsjb // bootleg +kovlsjba // bootleg +photoy2k // (c) 1999 +photoy2k102 // (c) 1999 +photoy2k104 // (c) 1999 +puzlstar // (c) 1999 +olds // (c) 1999 +olds100 // (c) 1999 +olds100a // (c) 1999 +kov2 // (c) 2000 +kov2106 // (c) 2000 +kov2103 // (c) 2000 +kov2102 // (c) 2000 +kov2101 // (c) 2000 +kov2100 // (c) 2000 +kov2p // (c) 2000 +kov2p205 // (c) 2000 +ddp2 // (c) 2001 +ddp2100 // (c) 2001 +ddp2101 // (c) 2001 +puzzli2 // (c) 2001 +martmast // (c) 2001 +martmastc // (c) 2001 +martmastc102 // (c) 2001 +theglad // (c) 2001 +theglada // (c) 2001 +dw2001 // (c) 2001 +py2k2 // (c) 2001 +dmnfrnt // (c) 2002 +dmnfrnta // (c) 2002 +kovshp +oldsplus +killbldp +happy6 +svg +ket +keta +ketb +ddp3 +ddp3a +ddp3b +ddp3blk +espgal +orleg2 // (c) 2007 + +// Spirit Tech. Corp. +dunhuang // (c) 1995 + +// RamTek games +hitme // (c) 05/1976 Ramtek +hitme1 // (c) 05/1976 Ramtek +m21 // (c) 08/1976 Mirco +barricad // (c) 1976 Ramtek +brickyrd // (c) 1976 Ramtek +starcrus // (c) 1977 Ramtek +super21 // (c) 1978 Mirco + +// Omori games +shuttlei // (c) 1979 Omori (Arcade Tv Game List - P.79, Left, 6 from bottom) +skylove // (c) 1979 Omori +battlex // (c) 1982 Omori E. Co., Ltd. +carjmbre // (c) 1983 Omori Electric Co., Ltd. +popper // (c) 1983 Omori Electric Co., Ltd. + +// TCH games +speedspn // (c) 1994 +mstworld // (c) 1994 + +kickgoal // (c) 1995 +actionhw // (c) 1995 + +// U.S. Games games +usg32 // (c) 1987 +usg82 // (c) 1988 +usg83 // (c) 1988 +usg83x // (c) 1988 +usg182 // (c) 1989 +usg185 // (c) 1991 +usg252 // (c) 1992 + +// Sanritsu games +mermaid // (c) 1982 Rock-ola, made by Sanritsu +yachtmn // (c) 1982 [Sanritsu] Esco +rougien // (c) 1982 Sanritsu +drmicro // (c) 1983 Sanritsu +jantotsu // (c) 1983 Sanritsu +appoooh // (c) 1984 Sega, made by Sanritsu +robowres // (c) 1986 Sega +robowresb // bootleg +bankp // (c) 1984 Sega, made by Sanritsu +combh // (c) 1987 Sega, made by Sanritsu +mjkjidai // (c) 1986 Sanritsu +chinsan // (c) 1987 Sanritsu +mayumi // (c) 1988 Victory L.L.C., made by Sanritsu + +// Rare games +xtheball // (c) 1991 Rare +btoads // (c) 1994 Rare +kinst // (c) 1994 Rare +kinst14 // (c) 1994 Rare +kinst13 // (c) 1994 Rare +kinstp // (c) 1994 Rare +kinst2 // (c) 1995 Rare +kinst2k4 // (c) 1995 Rare +kinst213 // (c) 1995 Rare +kinst2k3 // (c) 1995 Rare +kinst211 // (c) 1995 Rare +kinst210 // (c) 1995 Rare + +// Nihon System games +gigas // (c) 1986 Sega +gigasb // (c) 1986 bootleg +gigasm2b // (c) 1986 bootleg +oigas // (c) 1986 bootleg +pbillrd // (c) 1987 Nihon System +pbillrds // (c) 1988 Nihon System (+ optional Sega) +freekick // (c) 1988 Nihon System (+ optional Sega) +freekickb // (c) 1987 bootleg +freekickb2 // (c) 1987 bootleg +countrun // (c) 1988 Nihon System (+ optional Sega) +countrunb // (c) 1988 bootleg +countrunb2 // (c) 1988 bootleg + +// Alba games +rmhaihai // (c) 1985 Alba +rmhaihib // (c) 1985 Alba +rmhaijin // (c) 1986 Alba +rmhaisei // (c) 1986 Visco +themj // (c) 1987 Visco +hanaroku // (c) 1988 Alba +yumefuda // (c) 198? Alba + +// Home Data games +hourouki // (c) 1987 Home Data +mhgaiden // (c) 1987 Home Data +mirderby // (c) 1988 Home Data? +mjhokite // (c) 1988 Home Data +mjclinic // (c) 1988 Home Data +mrokumei // (c) 1988 Home Data +reikaids // (c) 1988 Home Data +mjkojink // (c) 1989 Home Data +vitaminc // (c) 1989 Home Data +mjyougo // (c) 1989 Home Data +lemnangl // (c) 1990 Home Data +mjkinjas // (c) 1991 Home Data +battlcry // (c) 1991 Home Data +jogakuen // (c) 1992 Windom corporation +mjikaga // (c) 1991 Mitchell +mjprivat // (c) 1991 Matoba + +// Art & Magic games +ultennis // (c) 1993 +ultennisj // (c) 1993 +cheesech // (c) 1994 +stonebal // (c) 1994 +stonebal2 // (c) 1994 + +shtstar // (c) 1994 Nova + +// Dynamo games +skeetsht // (c) 1991 +toursol // (c) 1995 Dynamo +toursol1 // (c) 1995 Dynamo + +// Taiyo games +dynamski // (c) 1984 Taiyo +chinhero // (c) 1984 Taiyo +chinhero2 // (c) 1984 Taiyo +chinherot // (c) 1984 Taiyo +shangkid // (c) 1985 Taiyo + Data East license +hiryuken // (c) 1985 Taito + +// Tatsumi Games +kingdrby // (c) 1981 Tatsumi +tx1 // (c) 1983 Tatsumi +tx1a // (c) 1983 Tatsumi +// TX-1 V8 // (c) 1984 Tatsumi +buggyboy // (c) 1985 Tatsumi +buggyboyjr // (c) 1986 Tatsumi +lockon // (c) 1986 Tatsumi +lockonc // (c) 1986 Tatsumi +// Gray-Out // (c) 1987 Tatsumi +apache3 // (c) 1988 Tatsumi +apache3a // (c) 1988 Tatsumi + Kana Corporation license +roundup5 // (c) 1989 Tatsumi +// Round Up 5 cockpit +cyclwarr // (c) 1991 Tatsumi +bigfight // (c) 1992 Tatsumi +// Life // (c) 1997 Tatsumi + +// Electronic Devices +mugsmash // (c) Electronic Devices (Italy) / 3D Games (England) +stlforce // (c) 1994 Electronic Devices (Italy) / Ecogames S.L. (Spain) +fantland // (c) 198? Electronic Devices Italy +fantlanda // (c) 198? Electronic Devices Italy +wheelrun // (c) 1988? International Games +galaxygn // (c) 1989 Electronic Devices Italy +borntofi // (c) International Games? +diverboy // (c) 1992 Electronic Devices +twinbrat // (c) 1995 +twinbrata // (c) 1995 +ppmast93 // (c) 1993 Electronic Devices S.R.L. +twins // (c) 1994 +twinsa // (c) 1994 +mwarr +pzletime + +// Arcadia System +ar_bios +ar_airh // (c) 1988 +ar_airh2 // (c) 1988 +ar_bowl // (c) 1988 +ar_dart // (c) 1987 +ar_dart2 // (c) 1987 +ar_fast // (c) 1988 +ar_ldrb // (c) 1988 +ar_ldrba // (c) 1988 +ar_ninj // (c) 1987 +ar_ninj2 // (c) 1987 +ar_rdwr // (c) 1988 +ar_sdwr // (c) 1988 +ar_sdwr2 // (c) 1988 +ar_socc // (c) 1989 +ar_spot // (c) 1990 +ar_sprg // (c) 1987 +ar_xeon // (c) 1988 + +// Sente Super System +mquake // (c) 1987 + +// Other Amiga-based games +upscope // (c) 1986 Grand products + +cd32 // (c) 1993 +cndypuzl // (c) 1995 +haremchl // (c) 1995 +lsrquiz // (c) 1995 +lsrquiz2 // (c) 1995 +mgprem11 // (c) 1995 +lasstixx // (c) 1995 +mgnumber // (c) 1995 +odeontw2 // (c) 1999 + +// American Laser Games +alg_bios +maddoga // (c) 1990 +wsjr // (c) 1991 +wsjr15 // (c) 1991 +maddog // (c) 1990 +maddog2 // (c) 1992 +maddog22 // (c) 1992 +maddog21 // (c) 1992 +spacepir // (c) 1992 +gallgall // (c) 1992 +crimepat // (c) 1993 +crimep211 // (c) 1993 +crimep2 // (c) 1993 +lastbh // (c) 1994 +fastdraw // (c) 1995 +aplatoon // (c) 199? Nova? +zortonbr // (c) 1993 Web Picmatic + +// Crystal System +crysbios +crysking // 2001 Brezzasoft. Crystal of the kings +evosocc // 2001 Evoga. Evolution Soccer +topbladv // 2002 Sonokong. Top Blade V +officeye + +ddz // (c) 200? + +psattack // 2004 Uniana + +// Bell Fruit Cobra Hardware +inquiztr // 1989 BFM +escounts // 1990 BFM +trebltop // 1991 BFM +beeline // 1991 BFM +quizvadr // 1991 BFM +qos // 1992 BFM +qosa // 1992 BFM +qosb // 1992 BFM + +// Scorpion 2+Video Board Games +qntoondo // 1993 +quintoon // 1993 +quintond // 1993 +quintono // 1993 +qntoond // 1993 +pokio // 1994 +slotsnl // 1995 +paradice // 1995 +pyramid // 1996 +sltblgtk // 1996 +sltblgpo // 1996 +sltblgp1 // 1996 +gldncrwn // 1997 + +// MPU4 Diagnostic ROMs +mpu4utst +mpu4tst2 +mpu4met0 + +// MPU4 Non-Video SWPs +connect4 // Dolbeck Systems + +// MPU4+Video Board Games +bctvidbs +dealem // 1987 +adders // 1989 +timemchn // 1990 +turnover // 199? +skiltrek // 1990 +crmaze // 1994 +crmazed // 1993 +crmazea // 1993 +crmaze2 // 1993 +crmaze2d // 1993 +crmaze2a // 1993 +crmaze3 // 1993 +crmaze3d // 1993 +crmaze3a // 1993 + +mating // 199? +matingd // 199? + +strikeit // 199? +strikeitd // 199? +strikeit2 // 199? +strikeit2d // 199? + +quidgrid // 199? +quidgridd // 199? +quidgrid2 // 199? +quidgrid2d // 199? + +eyesdown // 199? +eyesdownd // 199? + +// BwB games +blox // 199? +bloxd // 199? +bwbtetrs // 199? +prizeinv // 199? +vgpoker // 199? +renoreel // 199? +redhtpkr // 199? + +// ADP games +backgamn // (c) 1990 +quickjac // (c) 1993 +skattv // (c) 1994 +skattva // (c) 1995 +fashiong // (c) 1997 +fashiong2 // (c) 1997 +fstation // (c) 2000 + +// Other games on adp hardware +funlddlx // (c) 1999 + +// JPM Give us a Break hardware +guab // (c) 1986 +guab3a // (c) 1986 +guab4 // (c) 1986 +guab6 // (c) 1986 +guab6a // (c) 1986 +guab7 // (c) 1986 +guab21 // (c) 1986 +guab43 // (c) 1986 +crisscrs // (c) 1986 +tenup // (c) 1988 +tenup3 // (c) 1988 + +// JPM System 5 + video expansion 2 Games +monopoly // (c) 1994 +monoplcl // (c) 1995 +monopldx // (c) 1995 + +// JPM Impact Games +cluedo // (c) 1995 +cluedo2c // (c) 1995 +cluedo2 // (c) 1995 +trivialp // (c) 1996 +scrabble // (c) 1997 +hngmnjpm // (c) 1998 +coronatn // (c) 1999 + +// Other Games +vega // (c) 19?? Olympia? +astinvad // (c) 1980 Stern +kosmokil // bootleg +kamikaze // Leijac Corporation +spcking2 // (c) 1979 Konami +spaceint // [1980] Shoei +spaceintj // [1980] Shoei +spacefb // (c) [1980?] Nintendo +spacefbu // (c) [1980?] Nintendo +spacefbe // (c) [1980?] Nintendo +spacefbg // 834-0031 (c) 1980 Gremlin +spacefbb // bootleg +spacebrd // bootleg +spacedem // (c) 1980 Fortrek + made by Nintendo +omegrace // (c) 1981 Midway +omegrace2 // (c) 1981 Midway +deltrace // bootleg +monzagp // (c) 1981 Olympia +dday // (c) 1982 Olympia +ddayc // (c) 1982 Olympia + Centuri license +stactics // [1981 Sega] +exterm // (c) 1989 Premier Technology - a Gottlieb game +flower // (c) 1986 Komax license +flowerj // 834-5998 (c) 1986 Sega / Alpha license? +kingofb // (c) 1985 Wood Place Inc. +ringking // (c) 1985 Data East USA +ringking2 // (c) 1985 Data East USA +ringking3 // (c) 1985 Data East USA +ringkingw // (c) 1985 Wood Place Inc. +homo // bootleg +dlair // (c) 1983 Cinematronics +dlairf // (c) 1983 Cinematronics +dlaire // (c) 1983 Cinematronics +dlaird // (c) 1983 Cinematronics +dlairc // (c) 1983 Cinematronics +dlairb // (c) 1983 Cinematronics +dlaira // (c) 1983 Cinematronics +dleuro // (c) 1983 Atari +dlital // (c) 1983 Sidam +spaceace // (c) 1983 Cinematronics +spaceaa2 // (c) 1983 Cinematronics +spaceaa // (c) 1983 Cinematronics +saeuro // (c) 1983 Atari +aztarac // (c) 1983 Centuri (vector game) +mole // (c) 1982 Yachiyo Electronics, Ltd. +thehand // (c) 1981 T.I.C. +mrjong // (c) 1983 Kiwako +crazyblk // (c) 1983 Kiwako + ECI license +blkbustr // (c) 1983 Kiwako + ECI license +polyplay +amspdwy // no copyright notice, but (c) 1987 Enerdyne Technologies, Inc. +amspdwya // no copyright notice, but (c) 1987 Enerdyne Technologies, Inc. +othldrby // (c) 1995 Sunwise +quizpun2 // (c) 1989 Space Computer System of Korea +mosaic // (c) 1990 Space +mosaica // (c) 1990 Space + Fuuki license +gfire2 // (c) 1992 Topis Corp +sprcros2 // (c) 1986 GM Shoji +sprcros2a // (c) 1986 GM Shoji +d9final // (c) 1992 Excellent System +lastbank // (c) 1994 Excellent System +gcpinbal // (c) 1994 Excellent System +vmetal // (c) 1995 Excellent System? +vmetaln // (c) 1995 Excellent System? +aquarium // (c) 1996 Excellent System +policetr // (c) 1996 P&P Marketing +policetr11 // (c) 1996 P&P Marketing +policetr10 // (c) 1996 P&P Marketing +policetr13a // (c) 1996 P&P Marketing +policetr13b // (c) 1996 P&P Marketing +sshooter // (c) 1998 P&P Marketing +sshooter12 // (c) 1998 P&P Marketing +sshooter11 // (c) 1998 P&P Marketing +pass // (c) 1992 Oksan +news // "Virus"??? ((c) 1993 Poby in ROM VIRUS.4) +newsa // "Jeansole / Poby +taxidrvr // [1984 Graphic Techno] +xyonix // [1989 Philko] +gt507uk // (c) 1986 Grayhound Electronics +gt5 // (c) 1984 Grayhound Electronics +gtsers8 // (c) 1984 Greyhound Electronics +gtsers9 // (c) 1984 Greyhound Electronics +gtsers10 // (c) 1984 Greyhound Electronics +gtsers11 // (c) 1984 Greyhound Electronics +gt103a1 // (c) 1984 Greyhound Electronics +gt103a2 // (c) 1984 Greyhound Electronics +gt103a3 // (c) 1984 Greyhound Electronics +gt103aa // (c) 1984 Greyhound Electronics +gt103asx // (c) 1984 Greyhound Electronics +reelfun // (c) 1986 Grayhound Electronics +reelfun1 // (c) 1986 Grayhound Electronics +findout // (c) 1987 [Elettronolo] +quizvid // (c) 1986 Greyhound Electronics +quiz // (c) 1986 Italian bootleg +quiz211 // (c) 1986 Italian bootleg +jokpoker // (c) 1982 Greyhound Electronics +jokpokera // (c) 1982 Greyhound Electronics +jokpokerb +jokpokerc +superbwl // (c) 1982 Greyhound Electronics +amuse // (c) 1982 Greyhound Electronics +amuse1 // (c) 1982 Greyhound Electronics +gs4002 // (c) 1982 G.E.I. +gs4002a // (c) 1982 G.E.I. +gepoker // (c) 1984 Greyhound Electronics +gepoker1 // (c) 1984 Greyhound Electronics +gepoker2 // (c) 1984 Greyhound Electronics +gtsers1 // (c) 1984 Greyhound Electronics +gtsers2 // (c) 1984 Greyhound Electronics +gtsers3 // (c) 1984 Greyhound Electronics +gtsers4 // (c) 1984 Greyhound Electronics +gtsers5 // (c) 1985 Greyhound Electronics +gtsers7 // (c) 1985 Greyhound Electronics +gtsersa // (c) 1985 Greyhound Electronics +gtsersb // (c) 1985 Greyhound Electronics +sextriv1 // (c) 1985 Kinky Kit and Game Co. +sextriv2 // (c) 1985 Kinky Kit and Game Co. +geimulti // (c) 1992 Grayhound Electronics +sprtauth // (c) 1982 Classic Games +suprpokr // (c) 1986 Grayhound Electronics +suprpkr1 // (c) 1986 Grayhound Electronics +dribling // (c) 1983 Model Racing +driblingo // (c) 1983 Olympia +ace // [1976 Allied Leisure] +clayshoo // [1979 Allied Leisure] +pirates // (c) 1994 NIX +genix // (c) 199? NIX +fitfight // bootleg of Art of Fighting +histryma // bootleg of Fighter's History +bbprot // unfinished prototype +beaminv // (c) 1979 Tekunon Kougyou (Arcade TV Game List - P.95, Left, 9 from top) +beaminva // (c) 1979 Tekunon Kougyou (Arcade TV Game List - P.95, Left, 9 from top) +mcatadv // (c) 1993 Wintechno +mcatadvj // (c) 1993 Wintechno +catt // (c) 1993 Wintechno +nost // (c) 1993 Face +nostj // (c) 1993 Face +nostk // (c) 1993 Face +4enraya // (c) 1990 IDSA +oneshot // no copyright notice +maddonna // (c) 1995 Tuning +maddonnb // (c) 1995 Tuning +tugboat // (c) 1982 ETM +noahsark // (c) 1983 Enter-Tech +berenstn // (c) 1984 Enter-Tech +gotcha // (c) 1997 Dongsung + "presented by Para" +ppchamp // (c) 1997 Dongsung + "presented by Para" +amerdart // (c) 1989 Ameri Corporation +amerdart2 // (c) 1989 Ameri Corporation +amerdart3 // (c) 1989 Ameri Corporation +coolpool // (c) 1992 Catalina Games +9ballsht // (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" +9ballsht2 // (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" +9ballsht3 // (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" +9ballshtc // (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" +gumbo // (c) 1994 Min Corp. +mspuzzleg // (c) 1994 Min Corp. +mspuzzle // (c) 1994 Min Corp. +mspuzzlen // (c) 1994 Min Corp. +msbingo // (C) 1994 Min Corp. +dblpoint // (c) 1995 Min Corp. +dblpointd // (c) 1995 Dong Bang Electron +statusbj // (c) 1981 Status Games +tripdraw // (c) 1981 Status Games +funcsino // (c) 1981 Status Games +hangman // (c) 1984 Status Games +trivquiz // (c) 1984 Status Games +statriv2 // (c) 1984 Status Games +statriv2v // (c) 1984 Status Games +statriv4 // (c) 1985 Status Games +sextriv // (c) 1985 Status Games +quaquiz2 // (c) 1985 Status Games +supertr2 // (c) 1986 Status Games +supertr3 // (c) 1986 Status Games +cstripxi // (c) 1981 Status Games +tickee // (c) 1994 Raster Elite +ghoshunt // (c) 1995? Hanaho Games +tutstomb // (c) 199?? Island Design +mouseatk // (c) 1996 ICE +rapidfir // (c) 1998 Hanaho Games +rapidfire // (c) 1998 Hanaho Games +maletmad // (c) 1999 Hanaho Games, licensed to Capcom +crgolf // (c) 1984 Nasco Japan +crgolfa // (c) 1984 Nasco Japan +crgolfb // (c) 1984 Nasco Japan +crgolfc // (c) 1984 Nasco Japan +crgolfbt // bootleg +crgolfhi // (c) 1984 Nasco Japan +truco // (c) 198? Playtronic SRL +thedeep // (c) 1987 Wood Place +rundeep // (c) 1988 Cream (bootleg?) +wallc // (c) 1984 Midcoin +wallca // (c) 1984 Midcoin +wink // (c) 1985 Midcoin +winka // (c) 1985 Midcoin +skyarmy // (c) 1982 Shoei +lethalj // (c) 1996 The Game Room +eggventr // (c) 1997 The Game Room +eggventr8 // (c) 1997 The Game Room +eggventr7 // (c) 1997 The Game Room +eggventra // (c) 1997 The Game Room (Allied Leisure license) +eggventrd // (c) 1997 The Game Room +calchase // (c) 1999 The Game Room +ripribit // (c) 1997 LAI Games +cfarm // (c) 1999 LAI Games +cclownz // (c) 1999 LAI Games +rotaryf +portrait // (c) 1983 Olympia +portraita // (c) 1983 Olympia +enigma2 // (c) 1981 Game Plan (Zilec Electronics license) +enigma2a // (c) 1984 Zilec Electronics (bootleg?) +enigma2b // (c) 1981 Zilec Electronics +ltcasino // (c) 1982 Digital Controls Inc +mv4in1 // (c) 1983 Entertainment Enterprises +ltcasinn // (c) 1984 Digital Controls Inc +coolmini // (c) 1999 SemiCom +luplup // (c) 1999 Omega System +luplup29 // (c) 1999 Omega System +puzlbang // (c) 1999 Omega System +suplup // (c) 1999 Omega System +jmpbreak // (c) 1999 F2 System +vamphalf // (c) 1999 DanBi & F2 System +vamphalfk // (c) 1999 DanBi & F2 System +dquizgo2 // (c) 2000 Semicom +misncrft // (c) 2000 Sun +mrdig // (c) 2000 Sun +hidnctch // (c) 1998 Eolith +ironfort // (c) 1998 Eolith +ironfortj // (c) 1998 Eolith +puzzlekg // (c) 1998 Eolith +hidctch2 // (c) 1999 Eolith +hidctch2a // (c) 1999 Eolith +nhidctch // (c) 1999 Eolith +landbrk // (c) 1999 Eolith +landbrka // (c) 1999 Eolith +penfan // (c) 1999 Eolith +raccoon // (c) 1999 Eolith +fort2b // (c) 2001 Eolith +fort2ba // (c) 2001 Eolith +klondkp // (c) 1999 Eolith +hidctch3 // (c) 2000 Eolith +crazywar // (c) 2002 Eolith +bballoon // (c) 2003 Eolith +hapytour // (c) 2005 GAV Company (on Eolith's Ghost hardware) +funkball // (c) 1998 dgPIX Entertainment Inc +xfiles // (c) 1999 dgPIX Entertainment Inc +kdynastg // (c) 1999 EZ Graphics +fmaniac3 // (c) 2002 Saero Entertainment +promutrv // (c) 1985 Enerdyne Technologies Inc +promutrva // (c) 1985 Enerdyne Technologies Inc +promutrvb // (c) 1985 Enerdyne Technologies Inc +promutrvc // (c) 1985 Enerdyne Technologies Inc +strvmstr // (c) 1986 Enerdyne Technologies Inc +dorachan // (c) 1980 Craul Denshi +ladyfrog // (c) 1990 Mondial Games +toucheme +rabbit // (c) 1997 Electronic Arts +tmmjprd // (c) 1997 Media / Sonnet +tmpdoki // (c) 1998 Media Syouji +malzak // (c) 1980? Kitronix +malzak2 // (c) 1980? Kitronix +supertnk // (c) 1981 VIDEO GAMES GmbH, W.-GERMANY +crospang // (c) 1998 F2 System +heuksun // (c) 1998 Oksan / F2 System +bestri // (c) F2 System +funybubl // (c) 1999 In Chang Electronic Co +funybublc // (c) 1999 Comad Industries +dcheese // (c) 1993 HAR +lottof2 // (c) 1993 HAR +fredmem // (c) 1994 Coastal Amusements +fredmemus // (c) 1994 Coastal Amusements +fredmemuk // (c) 1994 Coastal Amusements +fredmemj // (c) 1994 Coastal Amusements +fredmemc // (c) 1994 Coastal Amusements +fredmesp // (c) 1994 Coastal Amusements +cecmatch // (c) 1993 Coastal Amusements +f15se // (c) 1991 Microprose Games Inc. +f15se21 // (c) 1991 Microprose Games Inc. +botss // (c) 1992 Microprose Games Inc. +botssa // (c) 1992 Microprose Games Inc. +tankbatl // (c) 1992 Microprose Games Inc. +dynadice // ? +atamanot // (c) 1983 Yachiyo Denki / Uni Enterprize +ssingles // Yachiyo? +tcl // (c) 1995 Uniwang +othello // (c) 1984 Success +sothello // (c) 1986 Success / Fujiwara +quake // (c) 19?? Lazer-Tron / iD Software +majorpkr // (c) 1994 PAL System. + +// Multi Amenity Cassette System +macsbios +mac2bios +kisekaem // (c) 1995 I'Max +kisekaeh // (c) 1995 I'Max +cultname // (c) 1995 I'Max +yuka // (c) 1999 Yubis +yujan // (C) 1999 Yubis + +onetwo // (c) 1997 Barko +onetwoe // (c) 1997 Barko +1945kiii // (c) 2000 Oriental +witch // (c) 1992 Sega / Vic Tokai / Excellent Systems +pbchmp95 // (c) 1995 Veltmeijer Automaten +cardline // (c) 199? Veltmeijer +bmcbowl // (c) 1994 BMC +koftball // (c) 1995 BMC +mpoker // (c) 1983 Merit +pitboss // (c) 1983 Merit +pitbossa // (c) 1983 Merit +pitbossb // (c) 1983 Merit +pitbossc // (c) 1983 Merit +casino5 // (c) 1983 Merit +trvwzh // (c) 1985 Merit +trvwzha // (c) 1985 Merit +trvwzhb // (c) 1985 Merit +trvwzv // (c) 1985 Merit +trvwzva // (c) 1985 Merit +trvwz2 // (c) 1985 Merit +trvwz2a // (c) 1985 Merit +trvwz3h // (c) 1985 Merit +trvwz3ha // (c) 1985 Merit +trvwz3v // (c) 1985 Merit +trvwz4 // (c) 1985 Merit +trvwz4a // (c) 1985 Merit +dtrvwz5 // (c) 1987 Merit +tictac // (c) 1985 Merit +tictacv // (c) 1985 Merit +phrcraze // (c) 1986 Merit +phrcrazea // (c) 1986 Merit +phrcrazeb // (c) 1986 Merit +phrcrazec // (c) 1986 Merit +phrcrazev // (c) 1986 Merit +bigappg // (c) 1986 Merit +dodge // (c) 1986 Merit +couple // (c) 1988 Merit +couplep // (c) 1988 Merit +couplei // (c) 1988 Merit +pitboss2 // (c) 1988 Merit +spitboss // (c) 1988 Merit +pitbosss // (c) 1990 Merit +pitbossm // (c) 1994 Merit +pitbossma // (c) 1994 Merit +pbst30 // (c) 1994 Merit +pbst30b // (c) 1993 Merit +megat2 // (c) 1994 Merit +megat2ca // (c) 1994 Merit +megat3 // (c) 1996 Merit +megat3a // (c) 1996 Merit +megat3ca // (c) 1996 Merit +megat3cb // (c) 1995 Merit +megat3nj // (c) 1995 Merit +megat3te // (c) 1996 Merit +megat4 // (c) 1996 Merit +megat4a // (c) 1996 Merit +megat4b // (c) 1996 Merit +megat4s // (c) 1996 Merit +megat4sn // (c) 1996 Merit +megat4te // (c) 1996 Merit +megat4tea // (c) 1996 Merit +megat4st // (c) 1996 Merit +megat4stg // (c) 1996 Merit +megat5 // (c) 1997 Merit +megat5a // (c) 1997 Merit +megat5nj // (c) 1997 Merit +megat5tg // (c) 1997 Merit +megat6 // (c) 1998 Merit +suprgolf // (c) 1989 Nasco +hotblock // (c) 1993 Nics? / Nix? +pntnpuzl // Century? +trucocl // (c) 1991 Miky SRL +ertictac // (c) 1992 Sisteme +poizone // (c) 1990 Sisteme +ssfindo // (c) 1999 Icarus +ppcar // (c) 1999 Icarus +tetfight // (c) 2001 Sego +imolagp // (c) 1981 Leante Games +dambustr // (c) 1981 South West Research +dambustra // (c) 1981 South West Research +dambustruk // (c) 1981 South West Research +gunpey // (c) 2000 Banpresto +spaceg // (c) 19?? +wldarrow // (c) 1982 +unkmeyco // (c) 198? +mdrawpkr // (c) 19?? +mdrawpkra // (c) 19?? +laserbas // (c) 1981 Amstar/HOEI +laserbasa // (c) 1981 Amstar/HOEI +futflash // (c) 1981 HOEI (Arcade TV Game List - P.96, Right, 18 from top) +turbosub // (c) 1985 Entertainment Sciences +turbosub7 // (c) 1985 Entertainment Sciences +turbosub6 // (c) 1985 Entertainment Sciences +pipeline // (c) 1990 Daehyun Electronics +ttchamp +ttchampa +dreamwld // (c) 2000 SemiCom +cybertnk // (c) 1990 Coreland +cubeqst // (c) 1983 Simutrek Inc. +cubeqsta // (c) 1983 Simutrek Inc. +pkscram // (c) 1993 Cosmo Electronics Corporation + +// Impera CD-I based +magicard // (c) 199? Impera +magicarda // (c) 199? Impera +magicardb // (c) 199? Impera +magicardj // (c) 1998 Impera +magicle // (c) 1998 Impera + +// Funworld +jollycrd // (c) 1985 TAB-Austria +jolyc3x3 // (c) 1985 TAB-Austria +jolycmzs // (c) 1993 MZS Tech +jolyc980 // (c) 2000 Spale-Soft +jolycdev // (c) 1998 TAB/Evona +jolyccra // (c) 1985 TAB-Austria +jolyccrb // (c) 1993 Soft Design +jolycdit // 199? bootleg +jolycdib // 1990 bootleg +sjcd2kx3 // (c) 1985 M.P. +jolycdab // (c) 1986 Inter Games +bigdeal // (c) 1986 Funworld +bigdealb // (c) 1986 Funworld +jolycdat // (c) 1986 Funworld +cuoreuno // (c) 1996 C.M.C. +elephfam // (c) 1997 C.M.C. +elephfmb // (c) 1996 C.M.C. +pool10 // (c) 1996 C.M.C. +pool10b // (c) 1996 C.M.C. +pool10c // (c) 1996 C.M.C. +pool10d // (c) 1997 C.M.C. +tortufam // (c) 1997 C.M.C. +potgame // (c) 1996 C.M.C. +bottle10 // (c) 1996 C.M.C. +bottl10b // (c) 1996 C.M.C. +royalcrd // (c) 1991 TAB-Austria +royalcrda // (c) 1991 TAB-Austria +royalcrdb // (c) 1991 TAB-Austria +royalcrdc // (c) 1991 TAB-Austria +royalcrdd // (c) 1991 TAB-Austria +royalcrde // (c) 1991 TAB-Austria +royalcrdf // (c) 1991 Evona Electronic +royalcrdt // (c) 1991 TAB-Austria orig +royalcrdp // (c) 1993 Digital Dreams +lluck3x3 // (c) 1991 TAB-Austria +lluck4x1 // (c) 1991 TAB-Austria +magicrd2 // (c) 1996 Impera +magicd2a // (c) 1996 Impera +magicd2b // (c) 1996 Impera +vegasslw // (c) 1993 Funworld +vegasfst // (c) 1993 Soft Design +vegasfte // (c) 1993 Soft Design +vegasmil // (c) 1993 Mile +jolyjokr // (c) 198? Impera +jolyjokra // (c) 198? Impera +jolyjokrb // (c) 198? Impera +multiwin // (c) 1992 Funworld +jokercrd // (c) 1993 Vesely Svet +mongolnw // 199? bootleg +soccernw // 199? bootleg +saloon // 199? unknown +funquiz // (c) 198? Funworld +witchryl // (c) 199? Video Klein +photoply + +// Sandii' +snookr10 // (c) 1998 Sandii' +apple10 // (c) 1998 Sandii' +tenballs // 1997 unknown + +// Game-A-Tron +gotya // (c) 1981 Game-A-Tron +sbugger // (c) 1981 Game-A-Tron +sbuggera // (c) 1981 Game-A-Tron +poker41 // (c) 1983 Game-A-Tron +pulltabs // (c) 1983 Game-A-Tron + +vroulet // (c) 1989 World Game +rcasino // (c) 1984 Dyna Electronics +ampoker2 // (c) 1990 Novomatic +piccolop // (c) 1990 Admiral - Novomatic +ampkr2b1 // 1990 bootleg +ampkr2b2 // 1990 bootleg +ampkr2b3 // 1994 bootleg +ampkr2b4 // 1994 bootleg +ampkr228 // 1990 bootleg +pkrdewin // 1990 bootleg +ampkr95 // 1995 bootleg +videomat // 1990 bootleg +rabbitpk // 1990 bootleg +sigmapkr // (c) 1995 Sigma +sigma2k // (c) 2000 Sigma +sidewndr // (c) 1981? ACE +spellbnd // (c) 1981? ACE +starspnr // (c) 1982? ACE +acefruit // (c) 1982? ACE +attckufo // (c) 1980 Ryoto Electric Co. +fortecar +jackpool // (c) 1997 Electronic Projects +murogem // ??? +murogema // ??? +murogmbl // ??? +lasvegas // hack +quizmstr // (c) 1985 Coinmaster +trailblz // (c) 1987 Coinmaster +supnudg2 // (c) 1989 Coinmaster +pokeroul // (c) 1990 Coinmaster +egghunt // (c) 1995 Invi Image +magic10 // (c) 1995 A.W.P. Games +magic10a // (c) 1995 A.W.P. Games +magic10b // (c) 1995 A.W.P. Games +magic102 // (c) 1997 ABM Games +suprpool // (c) 1997 ABM Games +hotslot // (c) 1996 ABM Electronics +mcolors // 1999 unknown +sgsafari // (c) 1996 New Impeuropex Corp. +musicsrt // (c) 1995 ABM Games +galaxi // (c) 2000 BRL S.R.L. Bologna +magjoker // (c) 2000 BRL S.R.L. Bologna +dwarfd // (c) 198? Electro-Sports +quarterh // (c) 1983 Electro-Sports +quarterha // (c) 1983 Electro-Sports +quarterhb // (c) 1983 Electro-Sports +qc // (c) 1995 ArJay Exports/Prestige Games +trvquest // (c) 1984 Sunn / Techstar +wheelfir // (c) 199? TCH +littlerb // (c) 1993 TCH +tattack // (c) 198? Shonan +mosaicf2 // (c) 1999 F2 System +finalgdr // (c) 2001 Semicom +mrkicker // (c) 2001 Semicom +wyvernwg // (c) 2001 Semicom / Game Vision +rbmk // (c) 1995 GMS +go2000 // (c) 2000 SA +mirax // (c) 1985 Current Technologies +miraxa // (c) 1985 Current Technologies + +// Subsino +victor5 // (c) 1990 Subsino +victor21 // (c) 1990 Subsino +crsbingo // (c) 1991 Subsino +tisub // (c) 1992 Subsino +tisuba // (c) 1992 Subsino +stisub // (c) 1995 Subsino (Alpha license) +victor6 // (c) 1995 Subsino (Alpha license) +victor6a // (c) 1995 Subsino (Alpha license) +victor6b // (c) 1995 Subsino (Alpha license) +mtrain // (c) 1996 Subsino +mtrainnv // (c) 1996 Subsino +sharkpy // (c) 1996 Subsino +sharkpya // (c) 1996 Subsino +sharkpye // (c) 1996 Subsino (Alpha license) +smoto20 // (c) 1996 Subsino +smoto16 // (c) 1996 Subsino +wtrnymph // (c) 1996 Subsino +expcard // (c) 1998 American Alpha +saklove // (c) 1998 Subsino +bishjan // (c) 1999 Subsino +xtrain // (c) 1999 Subsino +lastfght // (c) 2000 Subsino +xplan // (c) 2006 Subsino + +sliver // (c) 1996 Hollow Corp +intrscti // ???? +pasha2 // (c) 1998 Dong Sung +trvmadns // (c) 1985 Thunderhead Inc. +rcorsair // (c) 1984 Nakasawa +pzlestar // (c) 199? Sang Ho Soft +sexyboom // (c) 1992 Sang Ho Soft +sfkick // (c) 1988 Haesung/HJ Corp +sfkicka // (c) 198? Haesung +spinkick // (c) 1988 Haesung/Seojin +7mezzo // (c) 198? Unknown +magicfly // (c) 198? P&A GAMES +dynabomb // (c) 2000 Limenko +legendoh // (c) 2000 Limenko +sb2003 // (c) 2003 Limenko +sb2003a // (c) 2003 Limenko +spotty // (c) 2001 Prince Co. +carrera // (c) 19?? BS Electronics + +// Golden Poker / Potten's Poker / Witch Card hardware +goldnpkr // (c) 1981 Bonanza +goldnpkb // (c) 1981 Bonanza +pottnpkr // Bootleg +potnpkra // Bootleg in Coinmaster H/W +potnpkrb // Bootleg +potnpkrc // Bootleg +potnpkrd // Bootleg +potnpkre // Bootleg +goodluck // Unknown +superdbl // 198? Karateco +ngold // 198? Unknown +ngolda // 198? Unknown +ngoldb // 198? Unknown +witchcrd // (c) 1991, Video Klein +witchcda // 1991, Unknown +witchcdb // 1991, Unknown +witchcdc // 1991, Unknown +witchcdd // 1991, Unknown +witchcdf // (c) 1991, PlayMan +witchcdg // (c) 199?, Falcon +witchcdh // (c) 1991, TV Game Elektronik - Proma +witchgme // (c) 1991 Video Klein +witchjol // 1994, Unknown +wldwitch // 1994, Video Klein +falcnwld // 1991, TVG +falcnwlda // (c) 1990, Video Klein +falcnwldb // (c) 1983, Falcon +bsuerte // 1990, Unknown +bsuertea // 1991, Unknown +bsuerteb // 1991, Unknown +bsuertec // 1991, Unknown +bsuerted // 1991, Unknown +bsuertee // 1991, Unknown +bsuertef // 1991, Unknown +bsuerteg // 1991, Unknown +bsuerteh // 1991, Unknown +bsuertei // 1991, Unknown +bsuertej // 1991, Unknown +bsuertek // 1991, Unknown +bsuertel // 1991, Unknown +bsuertem // 1991, Unknown +bsuerten // 1991, Unknown +bsuerteo // 1991, Unknown +bsuertep // 1991, Unknown +bsuerteq // 1991, Unknown +bsuerter // 1991, Unknown +bsuertes // 1991, Unknown +bsuertet // 1991, Unknown +bsuerteu // 1991, Unknown +pmpoker // (c) 1981 PlayMan +royale // Unknown +royalea // Unknown +sloco93 // 1993, Unknown +sloco93a // 1993, Unknown +maverik // 198?, Unknown +brasil86 // 1986, Unknown +brasil87 // 1987, Unknown +brasil89 // 1989, Unknown +brasil89a // 1989, Unknown +brasil93 // 1993, Unknown +poker91 // 1991, Unknown +genie // (c) 198? Video Fun Games Ltd. +silverga // 1983, Unknown +pokerdub // 198?, Unknown +pokerduc // 198?, Unknown + +// Cal Omega +comg074 // (c) 1981 Cal Omega Inc. +comg076 // (c) 1981 Cal Omega Inc. +comg079 // (c) 1981 Cal Omega Inc. +comg080 // (c) 1981 Cal Omega Inc. +comg094 // (c) 1981 Cal Omega Inc. +comg107 // (c) 1982 Cal Omega Inc. +comg123 // (c) 1982 Cal Omega Inc. +comg125 // (c) 1982 Cal Omega Inc. +comg127 // (c) 1982 Cal Omega Inc. +comg128 // (c) 1982 Cal Omega Inc. +comg134 // (c) 1982 Cal Omega Inc. +comg145 // (c) 1982 Cal Omega Inc. +comg157 // (c) 1983 Cal Omega Inc. +comg159 // (c) 1983 Cal Omega Inc. +comg164 // (c) 1983 Cal Omega Inc. +comg168 // (c) 1983 Cal Omega Inc. +comg172 // (c) 1983 Cal Omega Inc. +comg175 // (c) 1984 Cal Omega / Casino Electronics Inc. +comg176 // (c) 1982 Cal Omega Inc. +comg181 // (c) 1983 Cal Omega Inc. +comg183 // (c) 1983 Cal Omega Inc. +comg185 // (c) 1983 Cal Omega Inc. +comg186 // (c) 1983 Cal Omega Inc. +comg187 // (c) 1983 Cal Omega Inc. +comg204 // (c) 1984 Cal Omega Inc. +comg208 // (c) 1984 Cal Omega Inc. +comg227 // (c) 1984 Cal Omega Inc. +comg230 // (c) 1984 Cal Omega Inc. +comg236 // (c) 1984 Cal Omega Inc. +comg239 // (c) 1985 Cal Omega / Casino Electronics Inc. +comg240 // (c) 1985 Cal Omega / Casino Electronics Inc. +comg246 // (c) 1985 Cal Omega Inc. +comg272a // (c) 1985 Cal Omega Inc. +comg272b // (c) 1985 Cal Omega Inc. +comg5108 // (c) 1985 Cal Omega Inc. +comg903d // (c) 198? Cal Omega Inc. +comg905d // (c) 198? Cal Omega Inc. +elgrande // (c) 1982 Tuni Electro Service / E.T. Marketing +jjpoker // (c) 1983 Enter-Tech +jjpokerb // (c) 1983 Enter-Tech +ssipkr24 // (c) 1988 SSI +ssipkr30 // (c) 1988 SSI +ssipkr40 // (c) 1990 SSI + +altair // (c) 1981 Cidelsa +destryer // (c) 1981 Cidelsa +destryera // (c) 1981 Cidelsa +draco // (c) 1981 Cidelsa +rockduck // (c) 1983 Datel SAS +tetriskr // (c) 1988? bootleg +trvhang // (c) 1984 SMS MFG CORP +trvhanga // (c) 1984 SMS MFG CORP +sureshot // (c) 1985 SMS MFG CORP +secondch // (c) 1985 SMS MFG CORP +skylncr // (c) 1995 Bordun International +butrfly // (c) 1995 Bordun International +madzoo // (c) 1995 Bordun International +leader // Bootleg? +livequiz // (c) 1999 Andamiro +hammer // (c) 2000 Andamiro +cowrace // (c) 20?? hack +kingdrbb // (c) 199? hack +discoboy // (c) 1993 Soft Art Co. +pangofun // (c) 1995 InfoCube +2mindril // (c) 1993 Taito +koikoi // (c) 1983 Kiwako +good // (c) 1983 Kiwako +filetto // (c) 1990 Novamatic +quizo // (c) 1985 Seoul Coin Corp. +quizoa // (c) 1985 Seoul Coin Corp. +gstream // (c) 2002, Oriental Soft Japan +miniboy7 // (c) 1983, Bonanza Enterprises +miniboy7a // (c) 1983, Bonanza Enterprises +39in1 // MAME based bootleg +48in1 // MAME based bootleg +48in1a // MAME based bootleg +kingpin // (c) 1983 American Communications Laboratories Inc. +kingpinm // (c) 1983 American Communications Laboratories Inc. +thayers // (c) 1983 RDI Video Systems +thayersa // (c) 1983 RDI Video Systems +istellar // (c) 1983 Funai / Gakken +esh // (c) 1984 Funai / Gakken +esha // (c) 1984 Funai / Gakken +eshb // (c) 1984 Funai / Gakken +comebaby // (c) 2000 ExPotato +peset038 // (c) 1987 IGT - International Gaming Technology +pepp0043 // (c) 1987 IGT - International Gaming Technology +pepp0065 // (c) 1987 IGT - International Gaming Technology +pepp0158 // (c) 1987 IGT - International Gaming Technology +pepp0188 // (c) 1987 IGT - International Gaming Technology +pepp0250 // (c) 1987 IGT - International Gaming Technology +pepp0447 // (c) 1987 IGT - International Gaming Technology +pepp0516 // (c) 1987 IGT - International Gaming Technology +pebe0014 // (c) 1994 IGT - International Gaming Technology +peke1012 // (c) 1994 IGT - International Gaming Technology +peps0014 // (c) 1996 IGT - International Gaming Technology +peps0022 // (c) 1996 IGT - International Gaming Technology +peps0043 // (c) 1996 IGT - International Gaming Technology +peps0045 // (c) 1996 IGT - International Gaming Technology +peps0308 // (c) 1996 IGT - International Gaming Technology +peps0615 // (c) 1996 IGT - International Gaming Technology +peps0716 // (c) 1996 IGT - International Gaming Technology +pex2069p // (c) 1995 IGT - International Gaming Technology +pexp0019 // (c) 1995 IGT - International Gaming Technology +pexp0112 // (c) 1995 IGT - International Gaming Technology +pexs0006 // (c) 1997 IGT - International Gaming Technology +pexmp006 // (c) 1997 IGT - International Gaming Technology +pexmp017 // (c) 1997 IGT - International Gaming Technology +pexmp024 // (c) 1997 IGT - International Gaming Technology +mirage // (c) 1994 Mitchell +dominob // (c) 1996 Wonwoo Systems +dominobv2 // (c) 1996 Wonwoo Systems +jongkyo // (c) 1985 Kiwako +gamecstl // MAME based bootleg +gamecst2 // MAME based bootleg, version 2.613 +drw80pkr // (c) 1982 IGT +drw80pk2 // (c) 1983 IGT +fortune1 // (c) 1984 IGT +blazlaz // (c) 1989 Hudson Soft +ggconnie // (c) ???? Capcom +paranoia // (c) 1990 Naxat Soft +vcombat // (c) 1993 VR8 Inc. +shadfgtr // (c) 1993 DUTECH Inc. +skimaxx // (c) 1996 Kyle Hodgetts/ICE +blackt96 // (c) 1996 D.G.R.M. of Korea +magictg // (c) 199? Acclaim +magictga // (c) 199? Acclaim +re900 // (c) 1993 Entretenimientos GEMINIS +bs94 // (c) 1994 Entretenimientos GEMINIS +jokrwild // (c) 1988 Sigma +pesadelo // (c) 1989 Forte II Games +pengadvb // (c) 1988 Screen +spool99 // (c) 1998 Electronic Projects +spool99a // (c) 1998 Electronic Projects +vcarn // (c) 1999 Electronic Projects +4roses // (c) 1999 Unknown +4rosesa // (c) 1999 Unknown +big10 // (c) 198? Unknown +bingor1 // (c) 2002 Unknown +bingor2 // (c) 2002 Unknown +bingor3 // (c) 2002 Unknown +bingor4 // (c) 2002 Unknown +bingor5 // (c) 2002 Unknown + +// InterFlip / Recreativos Franco +videopkr // (c) 1984 InterFlip +blckjack // (c) 1984 InterFlip +videodad // (c) 1987 InterFlip +videocba // (c) 1987 InterFlip +babypkr // (c) 1987 Recreativos Franco +babydad // (c) 1987 Recreativos Franco + +// H8/3048 italian gambling games +laperla // (c) 2002 Nazionale Elettronica +laperlag // (c) 2001 Nazionale Elettronica +capunc // (c) 2000 Nazionale Elettronica +capcor // (c) 2001 Nazionale Elettronica +euro2k2 // (c) 2001 Nazionale Elettronica +euro2k2a // (c) 2001 Nazionale Elettronica +euro2k2s // (c) 2002 Nazionale Elettronica +mnumber // (c) 200? M.M. - B.R.L. +abacus // (c) 200? unknown +bookthr // (c) 200? unknown + +// H8/3337 italian gambling games +ntcash // (c) 1999 unknown +wizard // (c) 1999 A.A. +trstar2k // (c) 1999 A.M. +laser2k1 // (c) 2001 unknown +mdrink // (c) 2001 unknown +te0144 // (c) 2001 unknown +cmagica // (c) 200? unknown +millsun // (c) 200? unknown +sspac2k1 // (c) 200? unknown +elvis // (c) 200? unknown +sstar // (c) 200? unknown +pirati // (c) 2001 Cin +mnumitg // (c) 200? unknown +mclass // (c) 200? unknown +europass // (c) 200? unknown + +// Intel 8086-based italian gambling games +newmcard // (c) 19?? unknown +brasil // (c) 2000 unknown +fashion // (c) 2000 unknown +ciclone // (c) 2000 unknown + +// V30-based italian gambling games +tour4000 // (c) 2000 High Video +cfever40 // (c) 2000 High Video +cfever50 // (c) 2000 High Video +tour4010 // (c) 2000 High Video +cfever51 // (c) 2000 High Video +cfever61 // (c) 2000 High Video +cfever1k // (c) 2000 High Video +girotutt // (c) 2000 High Video + +// Sure games +mil4000 // (c) 2000 Sure Milano +mil4000a // (c) 2000 Sure Milano +mil4000b // (c) 2000 Sure Milano +mil4000c // (c) 2000 Sure Milano + +// Mitsubishi/Renesas M16/62A italian gambling games +ejollyx5 // (c) 200? Solar Games +grandprx // (c) 200? 4fun +supjolly // (c) 200? unknown +x5jokers // (c) 200? Electronic Projects + +// Astro Corp. +showhand // (c) 2000 Astro Corp. +showhanc // (c) 2000 Astro Corp. +skilldrp // (c) 2002 Astro Corp. +speeddrp // (c) 2003 Astro Corp. +winbingo // (c) 2005? Astro Corp. +winbingoa // (c) 2005? Astro Corp. +zoo // (c) 2005? Astro Corp. +westvent // (c) 2007? Astro Corp. + +// Dyna +ncb3 // (c) 199? Dyna Electronics +cb3a // (c) 199? Dyna Electronics +cb3 // (c) 199? Dyna Electronics +cb3b // (c) 199? Dyna Electronics +cb3c // (c) 199? Dyna Electronics +cb3d // (c) 199? Dyna Electronics +chryangl // (c) 199? Dyna Electronics +cmv801 // (c) 198? Corsica +cmv4 // (c) 1992 Dyna Electronics +cmv4a // (c) 1992 Dyna Electronics +cmwm // (c) 199? Dyna Electronics +cmfun // (c) 1995 Dyna Electronics +cmaster // (c) 1991 Dyna Electronics +cmasterb // (c) 1991 Dyna Electronics +cmezspin // (c) 1991 Dyna Electronics +cmasterc // (c) 1991 Dyna Electronics +cmasterbv // (c) 1991 Dyna Electronics / Gerald Duhamel? +cmasterd // (c) 1991 Dyna Electronics +cmastere // (c) 1991 Dyna Electronics +cmasterf // (c) 1991 Dyna Electronics +cmast91 // (c) 1991 Dyna Electronics +cmast92 // (c) 1992 Dyna Electronics + +tonypok // (c) 1991 Corsica +jkrmast // (c) 199? unknown +pkrmast // (c) 199? unknown +pkrmasta // (c) 199? unknown + +cb2001 // (c) 2001 Dyna Electronics +scherrym // (c) 2001? Dyna Electronics + +// STG? +queen + +// Aristocrat +86lions // (c) 1985? +caswin // (c) 1985 + +// Aristocrat Mk4 hardware +gtroppo // (c) 1986 Ainsworth Nominees P.L. +clkwise // (c) 1986 Ainsworth Nominees P.L. +gldnpkr // (c) 1986 Ainsworth Nominees P.L. +3bagflvt // (c) 1994 +3bagflnz // (c) 1994 +eforest // (c) 1994 +eforesta // (c) 1995 +eforestb // (c) 1996 +cgold2 // (c) 1995 +blkrhino // (c) 1996 +goldenc // (c) 1996 +kgbird // (c) 1996 +kgbirda // (c) 1996 +topgear // (c) 1996 +wtigernz // (c) 1996 +fhunter // (c) 1996 +fhuntera // (c) 1996 +arcwins // (c) 1996 +wildone // (c) 1997 +phantomp // (c) 1998 +swtht2nz // (c) 1998 +ffortune // (c) 1998 +autmoon // (c) 1999 +coralr2 // (c) 2002 + +// Aristocrat Mk5 hardware +aristmk5 // (c) 1995 + +swthrt2v // (c) 1995 +enchfrst // (c) 1995 +dolphntr // (c) 1996 +dolphtra // (c) 1996 +dmdtouch // (c) 1997 +goldprmd // (c) 1997 +qotn // (c) 1997 +adonis // (c) 1998 +reelrock // (c) 1998 +indiandr // (c) 1998 +magicmsk // (c) 2000 +margmgc // (c) 2000 +geishanz // (c) 2001 +wtiger // (c) 2001 + +// Eagle +janshi +ronjan +pinkiri8 + +// Wing +slotcarn // (c) 1985 Wing Co. Ltd +lucky74 // (c) 1988 Wing Co. Ltd +lucky74a // (c) 1988 Wing Co. Ltd +lucky8 // (c) 1989 Wing Co. Ltd +lucky8a // (c) 1989 Wing Co. Ltd +lucky8b // (c) 1989 Wing Co. Ltd +luckgrln // (c) 1991 Wing Co. Ltd +luckylad // (c) 1985 Wing Co. Ltd + +skill98 // (c) 1998 Amcoe +match98 // (c) 1998 Amcoe +schery97 // (c) 1998 Amcoe +schery97a // (c) 1998 Amcoe +roypok96 // (c) 1996 Amcoe +roypok96a // (c) 1996 Amcoe +roypok96b // (c) 1996 Amcoe +pokonl97 // (c) 1997 Amcoe +nc96 // (c) 1996 Amcoe +nc96a // (c) 1996 Amcoe +nc96b // (c) 1996 Amcoe +nc96c // (c) 1996 Amcoe +nc96txt // (c) 2000 Amcoe +nfb96 // (c) 1996 Amcoe +nfb96a // (c) 1996 Amcoe +nfb96b // (c) 1996 Amcoe +nfb96c // (c) 1996 Amcoe +nfb96txt // (c) 2000 Amcoe +nfb96se // bootleg +nfb96sea // bootleg +nfb96seb // bootleg +carb2002 // bootleg +carb2003 // bootleg +nfm // bootleg +unkch1 // bootleg +unkch2 // bootleg +unkch3 // bootleg +unkch4 // bootleg + +ns8lines // unknown +ns8linew // unknown +ladylinr // (c) 198? TAB Austria +kkojnoli // 198? south korean hack +wcat3 +magodds // 198? (c) Micro Manufacturing Ltd. +magoddsa // 198? (c) Micro Manufacturing Ltd. +magoddsb // 198? (c) Micro Manufacturing Ltd. +magoddsc // 198? (c) Micro Manufacturing Ltd. +magoddsd // 198? (c) Micro Manufacturing Ltd. + +sfbonus // (c) 2003 Amcoe - Skill Fruit Bonus +sfbonusd1 // (c) 2003 Amcoe +sfbonusv1 // (c) 2003 Amcoe +sfbonuso // (c) 2003 Amcoe +sfbonuso2 // (c) 2003 Amcoe +parrot3 // (c) 2003 Amcoe - Parrot Poker III +parrot3b1 // (c) 2004 Amcoe +parrot3d1 // (c) 2004 Amcoe +parrot3v1 // (c) 2004 Amcoe +parrot3o // (c) 2004 Amcoe +hldspin1 // (c) 2000 Amcoe - Hold & Spin I +hldspin1dt // (c) 2000 Amcoe +hldspin1vt // (c) 2000 Amcoe +hldspin1o // (c) 2000 Amcoe +hldspin2 // (c) 2000 Amcoe - Hold & Spin II +hldspin2d1 // (c) 2000 Amcoe +hldspin2v1 // (c) 2000 Amcoe +hldspin2o // (c) 2000 Amcoe +fcnudge // (c) 2003 Amcoe - Fruit Carnival Nudge +fcnudgeo // (c) 2003 Amcoe +fcnudgeo2 // (c) 2003 Amcoe +fcnudgeo3 // (c) 2003 Amcoe +pickwin // (c) 2001 Amcoe - Pick 'n Win +pickwinb1 // (c) 2001 Amcoe +pickwind1 // (c) 2001 Amcoe +pickwinv1 // (c) 2001 Amcoe +pickwinbt // (c) 2001 Amcoe +pickwindt // (c) 2001 Amcoe +pickwinvt // (c) 2001 Amcoe +pickwino // (c) 2001 Amcoe +pickwino2 // (c) 2001 Amcoe +tighook // (c) 2004 Amcoe - Tiger Hook +tighookc1 // (c) 2004 Amcoe +tighookd1 // (c) 2004 Amcoe +tighookv1 // (c) 2004 Amcoe +tighookc2 // (c) 2004 Amcoe +tighookd2 // (c) 2004 Amcoe +tighookv2 // (c) 2004 Amcoe +tighooko // (c) 2004 Amcoe +tighooko2 // (c) 2004 Amcoe +robadv // (c) 2004 Amcoe - Robin's Adventure +robadvc1 // (c) 2004 Amcoe +robadvd1 // (c) 2004 Amcoe +robadvv1 // (c) 2004 Amcoe +robadvo // (c) 2004 Amcoe +robadv2 // (c) 2004 Amcoe - Robin's Adventure 2 +robadv2c1 // (c) 2004 Amcoe +robadv2d1 // (c) 2004 Amcoe +robadv2v1 // (c) 2004 Amcoe +robadv2c2 // (c) 2004 Amcoe +robadv2d2 // (c) 2004 Amcoe +robadv2v2 // (c) 2004 Amcoe +robadv2c3 // (c) 2004 Amcoe +robadv2d3 // (c) 2004 Amcoe +robadv2v3 // (c) 2004 Amcoe +robadv2o // (c) 2004 Amcoe +robadv2o2 // (c) 2004 Amcoe +pirpok2 // (c) 2003 Amcoe - Pirate Poker II +pirpok2b1 // (c) 2003 Amcoe +pirpok2d1 // (c) 2003 Amcoe +pirpok2v1 // (c) 2003 Amcoe +pirpok2o // (c) 2003 Amcoe +anibonus // (c) 2003 Amcoe - Animal Bonus +anibonusv1 // (c) 2003 Amcoe +anibonusv2 // (c) 2003 Amcoe +anibonusb1 // (c) 2003 Amcoe +anibonusd1 // (c) 2003 Amcoe +anibonusb2 // (c) 2003 Amcoe +anibonusd2 // (c) 2003 Amcoe +anibonuso // (c) 2003 Amcoe +anibonuso2 // (c) 2003 Amcoe +anibonuso3 // (c) 2003 Amcoe +anibonusxo // (c) 2003 Amcoe +anibonusxo2 // (c) 2003 Amcoe +anibonusxo3 // (c) 2003 Amcoe +abnudge // (c) 2003 Amcoe - Animal Bonus Nudge +abnudgeb // (c) 2003 Amcoe +abnudged // (c) 2003 Amcoe +abnudgeo // (c) 2003 Amcoe +dblchal // (c) 2003 Amcoe - Double Challenge +dblchalc1 // (c) 2003 Amcoe +dblchald1 // (c) 2003 Amcoe +dblchalv1 // (c) 2003 Amcoe +dblchalo // (c) 2003 Amcoe +anithunt // (c) 2003 Amcoe - Animal Treasure Hunt +anithuntd1 // (c) 2003 Amcoe +anithuntv1 // (c) 2003 Amcoe +anithunto // (c) 2003 Amcoe +anithunto2 // (c) 2003 Amcoe +sfruitb // (c) 2002 Amcoe - Super Fruit Bonus +sfruitbb1 // (c) 2002 Amcoe +sfruitbd1 // (c) 2002 Amcoe +sfruitbv1 // (c) 2002 Amcoe +sfruitbb2 // (c) 2002 Amcoe +sfruitbd2 // (c) 2002 Amcoe +sfruitbv2 // (c) 2002 Amcoe +sfruitbo // (c) 2002 Amcoe +sfruitbo2 // (c) 2002 Amcoe +sfruitbh // (c) 2002 Amcoe +sfruitbbh // (c) 2002 Amcoe +sfruitbdh // (c) 2002 Amcoe +sfruitbvh // (c) 2002 Amcoe +sfruitboh // (c) 2002 Amcoe +fb2gen // (c) 2004 Amcoe - Fruit Bonus 2nd Generation +fb2genc1 // (c) 2004 Amcoe +fb2gend1 // (c) 2004 Amcoe +fb2genv1 // (c) 2004 Amcoe +fb2genc2 // (c) 2004 Amcoe +fb2gend2 // (c) 2004 Amcoe +fb2genv2 // (c) 2004 Amcoe +fb2geno // (c) 2004 Amcoe +fb2geno2 // (c) 2004 Amcoe +fb2nd // (c) 2004 Amcoe - Fruit Bonus 2nd Edition +fb2ndd1 // (c) 2004 Amcoe +fb2ndv1 // (c) 2004 Amcoe +fb2ndc2 // (c) 2004 Amcoe +fb2ndd2 // (c) 2004 Amcoe +fb2ndv2 // (c) 2004 Amcoe +fb2ndo // (c) 2004 Amcoe +fb4 // (c) 2004 Amcoe - Fruit Bonus 2004 +fb4c1 // (c) 2004 Amcoe +fb4d1 // (c) 2004 Amcoe +fb4v1 // (c) 2004 Amcoe +fb4exp // (c) 2004 Amcoe +fb4b2 // (c) 2004 Amcoe +fb4c2 // (c) 2004 Amcoe +fb4d2 // (c) 2004 Amcoe +fb4v2 // (c) 2004 Amcoe +fb4o // (c) 2004 Amcoe +fb4o2 // (c) 2004 Amcoe +fb5 // (c) 2005 Amcoe - Fruit Bonus 2005 +fb5c // (c) 2005 Amcoe +fb5d // (c) 2005 Amcoe +fb5v // (c) 2005 Amcoe +fb6 // (c) 2006 Amcoe - Fruit Bonus '06 - 10th anniversary +fb6v // (c) 2006 Amcoe +fb6d1 // (c) 2006 Amcoe +fb6s1 // (c) 2006 Amcoe +fb6v1 // (c) 2006 Amcoe +fb6d2 // (c) 2006 Amcoe +fb6s2 // (c) 2006 Amcoe +fb6v2 // (c) 2006 Amcoe +fb6s3 // (c) 2006 Amcoe +fb6se // (c) 2006 Amcoe - Fruit Bonus 2006 Special Edition +fb6sev // (c) 2006 Amcoe +fb6sed1 // (c) 2006 Amcoe +fb6sev1 // (c) 2006 Amcoe +fb6sed2 // (c) 2006 Amcoe +fb6sev2 // (c) 2006 Amcoe +version4 // (c) 2006 Amcoe - Version 4 ? +bugfever // (c) 2006 Amcoe - Bug Fever +bugfevero // (c) 2006 Amcoe +bugfeverd // (c) 2006 Amcoe +bugfeverv // (c) 2006 Amcoe +bugfeverv2 // (c) 2006 Amcoe +funriver // (c) 2005 Amcoe - Fun River +funriverv // (c) 2005 Amcoe +dvisland // (c) 2006 Amcoe - Devil's Island +dvislando // (c) 2006 Amcoe +atworld // (c) 2007 Amcoe - Around The World +atworldd1 // (c) 2007 Amcoe +amclink // (c) 200? Amcoe - Amcoe Link Control Box? +fbdeluxe // (c) 200? Amcoe - Amcoe Link Control Box? + +act2000 // (c) 1999 Amcoe - Action 2000 +act2000v1 // (c) 1999 Amcoe +act2000d1 // (c) 1999 Amcoe +act2000b1 // (c) 1999 Amcoe +act2000vx // (c) 1999 Amcoe +act2000dx // (c) 1999 Amcoe +act2000bx // (c) 1999 Amcoe +act2000o // (c) 1999 Amcoe +act2000o2 // (c) 1999 Amcoe +act2000o3 // (c) 1999 Amcoe +ch2000 // (c) 2000 Amcoe - Fruit Bonus 2000 / New Cherry 2000 +ch2000b1 // (c) 2000 Amcoe +ch2000c1 // (c) 2000 Amcoe +ch2000d1 // (c) 2000 Amcoe +ch2000v1 // (c) 2000 Amcoe +ch2000b2 // (c) 2000 Amcoe +ch2000c2 // (c) 2000 Amcoe +ch2000d2 // (c) 2000 Amcoe +ch2000v2 // (c) 2000 Amcoe +ch2000o // (c) 2000 Amcoe +ch2000o2 // (c) 2000 Amcoe +ch2000o3 // (c) 2000 Amcoe +pir2001 // (c) 2001 Amcoe - Pirate 2001 +pir2001b1 // (c) 2001 Amcoe +pir2001d1 // (c) 2001 Amcoe +pir2001v1 // (c) 2001 Amcoe +pir2001bx // (c) 2001 Amcoe +pir2001dx // (c) 2001 Amcoe +pir2001vx // (c) 2001 Amcoe +pir2001o // (c) 2001 Amcoe +pir2001o2 // (c) 2001 Amcoe +pir2001o3 // (c) 2001 Amcoe +pir2002 // (c) 2001 Amcoe - Pirate 2002 +pir2002b1 // (c) 2001 Amcoe +pir2002d1 // (c) 2001 Amcoe +pir2002v1 // (c) 2001 Amcoe +pir2002bx // (c) 2001 Amcoe +pir2002dx // (c) 2001 Amcoe +pir2002vx // (c) 2001 Amcoe +pir2002o // (c) 2001 Amcoe +pir2002o2 // (c) 2001 Amcoe +pir2002o3 // (c) 2001 Amcoe +classice // (c) 2004 Amcoe - Classic Edition +classicev // (c) 2004 Amcoe +classice1 // (c) 2004 Amcoe +classiced1 // (c) 2004 Amcoe +classicev1 // (c) 2004 Amcoe +classice2 // (c) 2004 Amcoe +classiced2 // (c) 2004 Amcoe +classicev2 // (c) 2004 Amcoe +seawld // (c) 200? Amcoe - Sea World +seawldd1 // (c) 200? Amcoe +moneymac // (c) 200? Amcoe - Money Machine +moneymacd1 // (c) 200? Amcoe +moneymacv1 // (c) 200? Amcoe +moneymacd2 // (c) 200? Amcoe +moneymacv2 // (c) 200? Amcoe + + +chsuper3 // unknown +chsuper2 // unknown +chmpnum // unknown +3super8 // unknown +buster // (c) 1987 Marian Electronics Ltd. +spielbud // (c) 1985 ADP + +// Hi-Soft +himesiki // (c) 1989 Hi-Soft + +// Draw Poker HI-LO based (z80) +norautp // (c) 1988 Noraut Ltd. +norautdx // (c) 198? Noraut Ltd. +norautpn // (c) 199? unknown +norautjo // (c) 198? Noraut Ltd. +norautpl // (c) 198? Prologic / Noraut Ltd. +norautjp // (c) 198? Noraut Ltd. +norautrh // (c) 198? Noraut Ltd. +norautra // (c) 198? Noraut Ltd. +norautu // (c) 198? Noraut Ltd. +noraut3a // (c) 2002 Noraut Ltd. +noraut3b // (c) 2003 Noraut Ltd. +norautua // (c) 198? Noraut Ltd. +norautub // (c) 198? Noraut Ltd. +mainline // (c) Mainline London +df_djpkr // (c) DellFern Ltd. +ndxron10 // 2005, unknown +cgip30cs // (c) 1999, CGI +kimblz80 // (c) 198?, Kimble Ireland +pma // 1983, PMA +bjpoker // (c) M. Kramer Inc. + +// Draw Poker HI-LO based (8080) +dphl // (c) 1983 M. Kramer Inc. +dphla // unknown +dphljp // unknown +kimbldhl // (c) 198?, Kimble Ireland +gtipoker // (c) 1983 GTI Inc +smshilo // (c) 1983 SMS Manufacturing Corp. +drhl // (c) 1986 Drew, Inc. +drhla // (c) 1986 Drew, Inc. +tpoker2 // (c) 1993 Micro Manufacturing, Inc. +ssjkrpkr // (c) 1982 Southern Systems & Assembly, Ltd. +fastdrwp // Stern? +dphlunka // SMS Manufacturing Corp? +dphlunkb // SMS Manufacturing Corp? + + +// Sanki Denshi Kogyo +pachifev // (c) 1983? + +// New Image Technologies +bonanza // (c) 1993 +bonanzar2 // (c) 1993 +streetg // (c) 1993 +streetgr3 // (c) 1993 +streetg2 // (c) 1993 +streetg2r5 // (c) 1993 + +// Micro Manufacturing +magtouch // (c) 1995 + +// Coinmaster-Gaming VGA based +colorama // (c) 2001 Coinmaster-Gaming, Ltd. +cmrltv75 // (c) 2001 Coinmaster-Gaming, Ltd. +cmkenosp // (c) 2000 Coinmaster-Gaming, Ltd. +cmkenospa // (c) 2000 Coinmaster-Gaming, Ltd. + +// Igrosoft Original sets +// Multifish +//mfish // (c) 2002 +//mfish_2 // (c) 2002 +//mfish_4 // (c) 2002 +//mfish_5 // (c) 2002 +//mfish_7 // (c) 2002 +//mfish_8 // (c) 2002 +//mfish_9 // (c) 2002 +//mfish_10 // (c) 2002 +//mfish_13 // (c) 2002 +mfish_3 // (c) 2002 +mfish_6 // (c) 2002 +mfish_11 // (c) 2002 +mfish_12 // (c) 2002 +mfish_13 // (c) 2002 + +// Crazy Monkey +//crzmon // (c) 2003 +//crzmon_2 // (c) 2003 +//crzmon_3 // (c) 2003 +//crzmon_4 // (c) 2003 +//crzmon_5 // (c) 2003 +//crzmon_6 // (c) 2003 +crzmon_5 // (c) 2003 +crzmon_7 // (c) 2003 +crzmon_8 // (c) 2003 +crzmon_9 // (c) 2003 + +// Fruit Cocktail +//fcockt // (c) 2003 +//fcockt_2 // (c) 2003 +fcockt_3 // (c) 2003 +//fcockt_4 // (c) 2003 +fcockt_5 // (c) 2003 +fcockt_6 // (c) 2003 +fcockt_7 // (c) 2003 +fcockt_8 // (c) 2003 +fcockt_9 // (c) 2003 +fcockt_10 // (c) 2003 +fcockt_11 // (c) 2003 +fcockt_12 // (c) 2003 + +// Lucky Haunter +//lhaunt // (c) 2003 +lhaunt_2 // (c) 2003 +//lhaunt_3 // (c) 2003 +lhaunt_4 // (c) 2003 +lhaunt_5 // (c) 2003 +lhaunt_6 // (c) 2003 +lhaunt_7 // (c) 2003 +lhaunt_8 // (c) 2003 + +// Rollfruit +//rollfr // (c) 2003 +rollfr_2 // (c) 2003 + +// Garage +//garage // (c) 2004 +//garage_2 // (c) 2004 +//garage_3 // (c) 2004 +garage_4 // (c) 2004 +garage_5 // (c) 2004 +garage_6 // (c) 2004 +garage_7 // (c) 2004 + +// Rock Climber +//rclimb_2 // (c) 2004 +rclimb // (c) 2004 +rclimb_3 // (c) 2004 +rclimb_4 // (c) 2004 +rclimb_5 // (c) 2004 + +// Sweet Life +sweetl // (c) 2004 +sweetl_2 // (c) 2004 + +// Resident +resdnt // (c) 2004 +resdnt_2 // (c) 2004 +resdnt_3 // (c) 2004 + +// Island +island // (c) 2005 +island_2 // (c) 2005 + +// Pirate +//pirate // (c) 2005 +pirate_2 // (c) 2005 +pirate_3 // (c) 2005 +pirate_4 // (c) 2005 + +// Island 2 +island2 // (c) 2006 +island2_3 // (c) 2006 +island2_4 // (c) 2006 + +// Pirate 2 +pirate2 // (c) 2006 +pirate2_2 // (c) 2006 + +// Keks +keks // (c) 2006 +keks_2 // (c) 2006 +keks_3 // (c) 2006 + +// Gnome +gnome // (c) 2007 +gnome_2 // (c) 2007 + +// Sweet Life 2 +sweetl2 // (c) 2007 + +// Igrosoft bootleg sets + +mfish_3a // bootleg - Multifish +mfish_12a // bootleg +crzmon_7a // bootleg - Crazy Monkey +crzmon_7b // bootleg +crzmon_8a // bootleg +crzmon_8b // bootleg +crzmon_8c // bootleg +crzmon_8d // bootleg +crzmon_8e // bootleg +crzmon_8f // bootleg +crzmon_9a // bootleg +crzmon_9b // bootleg +crzmon_9c // bootleg +fcockt_6a // bootleg - Fruit Cocktail +fcockt_6b // bootleg +fcockt_6c // bootleg +fcockt_6d // bootleg +fcockt_7a // bootleg +fcockt_7b // bootleg +fcockt_7c // bootleg +fcockt_7d // bootleg +fcockt_7e // bootleg +fcockt_7f // bootleg +fcockt_7g // bootleg +fcockt_7h // bootleg +fcockt_8a // bootleg +fcockt_8b // bootleg +lhaunt_4a // bootleg - Lucky Haunter +lhaunt_5a // bootleg +lhaunt_6a // bootleg +lhaunt_6b // bootleg +lhaunt_6c // bootleg +lhaunt_6d // bootleg +lhaunt_6e // bootleg +lhaunt_6f // bootleg +garage_4a // bootleg - Garage +garage_4b // bootleg +garage_4c // bootleg +garage_5a // bootleg +garage_5b // bootleg +garage_5c // bootleg +garage_5d // bootleg +garage_5e // bootleg +rclimb_3a // bootleg - Rock Climber +rclimb_3b // bootleg +rclimb_3c // bootleg +rclimb_3d // bootleg +rclimb_3e // bootleg +sweetla // bootleg - Sweet Life +sweetlb // bootleg +resdnt_2a // bootleg - Resident +resdnt_2b // bootleg +resdnt_2c // bootleg +resdnt_2d // bootleg +resdnt_2e // bootleg +resdnt_2f // bootleg +resdnt_2g // bootleg +islanda // bootleg - Island +islandb // bootleg +islandc // bootleg +island2a // bootleg - Island 2 +island2b // bootleg +island2c // bootleg +island2_3a // bootleg +island2_4a // bootleg +pirate2a // bootleg - Pirate 2 +pirate2b // bootleg +pirate2c // bootleg +pirate2d // bootleg +pirate2e // bootleg +pirate2f // bootleg +pirate2g // bootleg +pirate2h // bootleg +pirate2_2a // bootleg +keksa // bootleg - Keks +keksb // bootleg +keksc // bootleg +keks_2a // bootleg +keks_2b // bootleg +keks_2c // bootleg +keks_2d // bootleg +keks_2e // bootleg +keks_2f // bootleg +keks_2g // bootleg +keks_3a // bootleg +keks_3b // bootleg +gnomea // bootleg - Gnome +gnomeb // bootleg +gnomec // bootleg +gnomed // bootleg +gnomee // bootleg +gnome_2a // bootleg + +// Disney +cdimono1 // Base unit +quizard // (c) Disney 1996 +quizrd22 // (c) Disney 1995 +quizrd17 // (c) Disney 1996 +quizrd12 // (c) Disney 1996 +quizrr42 // (c) Disney 1998 +quizrr41 // (c) Disney 1998 + +/* Drivers below are mechanical games, usually with no video display, requiring external artwork to function. + These are currently mostly 'fruit machine' style games, although this may later be extended to system logic + emulation for pinball machiens. + + the m_ prefix is used to identify them as many have very generic names. + +*/ + +// Scorpion 2 +m_brkfst +m_brkfs1 +m_brkfs2 +m_brkfs3 +m_brkfs4 +m_brkfs5 + +m_bdrwho +m_bdrwh1 +m_bdrwh2 +m_bdrwh3 +m_bdrwh4 +m_bdrwh5 +m_bdrwh6 +m_bdrwh7 +m_bdrwh8 +m_bdrwh9 +m_bdrw10 +m_bdrw11 +m_bdrw12 +m_bdrw13 +m_bdrw14 +m_bdrw15 +m_bdrw16 +m_bdrw17 + +m_bfocus +m_bcgslm +m_luvjub +m_cpeno1 + +// System85 games +m_supcrd // (c) 198? BFM + +// JPM Impact games +m_tbirds + +// Scorpion1 games +m_lotsse // (c) 198? BFM Dutch ROMS, prelim +m_roulet // (c) 198? BFM Dutch ROMS, prelim +m_clattr // (c) 1990 BFM, Game Card 39-370-196 +m_tppokr // (c) 1996 BFM/ELAM,Game Card 95-750-899, uses Adder board for feature gfx + +// Maygay Machines Ltd. +m_sptlgt + +screenpl +screenp1 +screenp2 + +// MPU4 +m_oldtmr // Barcrest - highly prelim +m_ccelbr +m_gmball +m_grtecp // 199? +m_blsbys // BwB + +// MPU5 +m_honmon + +// Leisure Ent. +roul // (c) 1990 + +// Accept LTD. +hitpoker // (c) 1997 + +// Videotronics +vpoker // (c) 198? +5acespkr // (c) 198? + +// Play Mechanix +jnero // (c) 2004 + +// Amatic Trading GMBH +am_uslot // (c) 1996 Amatic +am_mg24 // (c) 2000 Amatic +am_mg3 // (c) 2000 Amatic + +neptunp2 +rgum + +// Extrema Systems International Ltd. +poker72 + +chkun + +// Blitz System Inc. +megadpkr // (c) 1990 Blitz System Inc +megadpkrb // (c) 1990 Blitz System Inc + +// Blitz System Inc. 68k + Blitter Hardware +megadblj // (c) 1990 Blitz Systems Inc. +megadble // (c) 1990 Blitz Systems Inc. +maxidbl // (c) 1992 Blitz Systems Inc. +bankrob // (c) 1993 Entertainment Technology Corp. +bankroba // (c) 1993 Entertainment Technology Corp. +poker52 // (c) 1993 Blitz Systems Inc. ? +steaser // (c) 1993 unknown +dualgame // (c) 1995 Labtronix Technologies +hermit // (c) 1995 Dugamex +deucesw2 // (c) 1997 +cjffruit // (c) 1998 Cadillac Jack +ilpag // (c) 199? unknown + +// Olympic Video Gaming +hotstuff + +// Interactive Light +savquest + +// Jamie System Development +xtom3d + +// Jubilee +jubileep + +// Golden Games / C+M Technics AG +swisspkr // (c) 1990 Golden Games +moviecrd // (c) 1998 Golden Games + +// NSM +nsmpoker + +// Advanced Video Technologies +avtsym14 // (c) 1985 AVT +avtsym25 // (c) 1985 AVT +avtbingo // (c) 1985 AVT +avtnfl // (c) 1989 AVT + +// Corona hardware +winner81 // (c) 1981 Corona Co, Ltd. +winner81b // (c) 1981 Corona Co, Ltd. +winner82 // (c) 1982 Corona Co, Ltd. +re800ea // (c) 1991 Entretenimientos GEMINIS +re800v1 // (c) 1991 Entretenimientos GEMINIS +re800v3 // (c) 1992 Entretenimientos GEMINIS +rcirulet // (c) 199? Entretenimientos GEMINIS +luckyrlt // (c) 1990 unknown + +dfruit + +// allied.c +allied +suprpick +royclark +thndbolt +hoedown +takefive +heartspd +foathens +disco79 +erosone +circa33 +starshot + + +// alvg.c +agsoccer +wrldtour +wrldtour2 +usafootb +mystcast +pstlpkr +punchy +dinoeggs + +/* + Atari Generation/System 1 +*/ +atarians +time2000 +aavenger +midearth +spcrider +/* + Atari Generation/System 2 +*/ +supermap +hercules +/* + Atari Generation/System 3 +*/ +roadrunr + +// bingo.c +cntinntl +goldgame +goldgam2 + +/* + Bally MPU AS-2518-17 +*/ +blackjck +bowarrow +eightbll +evelknie +freedom +matahari +nightrdr +nightr20 +pwerplay +stk_sprs + +/* + Bally MPU AS-2518-35 +*/ +bullseye +blakpyra +bmx +centaur +cosflash +cybrnaut +dollyptn +eballdlx +eballd14 +elektra +embryon +fathom +fbclass +fball_ii +flashgdn +flashgdnf +flashgdnv +frontier +futurspa +goldball +goldballn +granslam +granslam4 +hglbtrtr +hotdoggn +kosteel +kiss +lostwrlp +medusa +m_mpac +mystic +myststar +newwave +ngndshkr +paragon +playboy +rapidfip +rollston +saturn2 +slbmania +skatebll +spacehaw +spaceinv +speakesy +speakesy4p +spectrm +spectrm4 +spyhuntr +startrep +sst +smman +tigerrag +vector +viking +voltan +xsandos +xenon +xenonf +worlddef +darkshad +skflight +cobrap +futrquen +f1gpp +toppin +uboat65 +bbbowlin +monrobwl +mdntmrdr +blbeauty +suprbowl + +/* + Bally Kiss 8035 prototype +*/ +kissp + +/* + Bally MPU A084-91786-AH06 (6803) +*/ +atlantip +beatclck +blackblt +black100 +black100s +cityslck +dungdrag +eballchp +esclwrld +esclwrldg +hardbody +hardbodyg +hvymetap +ladyluck +motrdome +prtyanim +specforc +strngsci +trucksp3 +trucksp2 + +/* + Bally MPU AS-2518-133 +*/ +babypac +granny + +// by68701.c +flashgdnp1 +flashgdnp2 +eballdlxp1 +eballdlxp2 +eballdlxp3 +eballdlxp4 + +// capcom.c +abv106 +abv106r +bbb109 +bbb108 +bsv103 +bsv100r +bsv102r +bsb105 +ffv104 +ffv101 +kpv106 +pmv112 +pmv112r +ghv101 + + +// de_1.c +lwar_a83 +lwar_e90 + + +// de_2.c +mnfb_c27 +poto_a32 +play_a24 +robo_a34 +ssvc_a26 +tmac_a24 +tmac_a18 +torp_e21 + + +// de_3.c +rab_320 +rab_130 +rab_103 +aar_101 +bttf_a27 +bttf_a20 +bttf_a21 +bttf_g27 +btmn_103 +btmn_101 +btmn_g13 +btmn_106 +ckpt_a17 +gnr_300 +hook_408 +hook_401 +hook_404 +jupk_513 +jupk_501 +jupk_g51 +lah_112 +lah_l104 +lah_l108 +lah_110 +lw3_208 +lw3_207 +lw3_205 +lw3_200 +trek_201 +trek_200 +trek_120 +trek_110 +trek_11a +stwr_103 +stwr_g11 +stwr_a14 +stwr_102 +stwr_e12 +tftc_303 +tftc_300 +tftc_200 +tftc_104 +tmnt_104 +tmnt_103 +simp_a27 +simp_a20 +tomy_400 +tomy_h30 +wwfr_106 +wwfr_103 + + +// de_3b.c +batmanf +batmanf3 +bmf_uk +bmf_cn +bmf_no +bmf_sv +bmf_at +bmf_ch +bmf_de +bmf_be +bmf_fr +bmf_nl +bmf_it +bmf_sp +bmf_jp +bmf_time +baywatch +frankst +frankstg +mav_402 +mav_401 +mav_400 +mav_100 +detest +ctcheese + + +// flicker.c +flicker + + +// g627.c +rotation + + +// gp_1.c +gp_110 +blvelvet +camlight +chucklck +famlyfun +foxylady +real +rio +startrip + + +// gp_2.c +agent777 +andromep +andromepa +attila +cpthook +cyclopes +gwarfare +ladyshot +mbossy +coneyis +lizard +sshootr2 +sshootep +suprnova +vegasgp + + +// gts1.c +gts1 +gts1s +astannie +buckrgrs +charlies +cleoptra +closeenc +countdwn +dragon +geniep +jokrpokr +pinpool +roldisco +sinbad +sinbadn +solaride +hulk +torch +totem +hexagone +sys1test + + +// gts3.c +barbwire +bellring +brooks +cactjack +carhop +ccruise +clas1812 +cueball +deadweap +bighurt +freddy +freddy4 +gladiatp +hoops +lca +lca2 +andretti +andretti4 +nudgeit +opthund +rescu911 +shaqattq +shaqattq2 +silvslug +stargatp +stargatp1 +stargatp2 +stargatp3 +stargatp4 +sfight2 +sfight2a +sfight2b +smb +smb1 +smb2 +smb3 +smbmush +surfnsaf +teedoffp +teedoffp1 +teedoffp3 +tfight +vegas +waterwld +waterwld2 +wipeout +wcsoccer +wcsoccerd2 +tt_game +snspares +snspares1 + + +// gts80.c +blckhole +blckhole2 +blckhols +circusp +cntforce +eclipse +forceii +hh +hh_1 +jamesb +jamesb2 +marsp +panthera +pnkpnthr +starrace +spidermn +timeline +vlcno_ax +vlcno_1b +vlcno_1a +s80tst + + +// gts80a.c +alienstr +amazonh +caveman +cavemana +dvlsdre +dvlsdre2 +eldorado +goinnuts +icefever +jack2opn +krullp +punk +qbquest +rackempp +raimfire +rocky +rflshdlx +spirit +striker +sorbit +thegames +touchdn + + +// gts80b.c +arena +badgirls +bighouse +bonebstr +bountyh +triplay +diamondp +excalibr +genesisp +goldwing +hlywoodh +hotshots +mntecrlo +nmoves +raven +robowars +rock +rock_enc +sprbreak +sprbreaks +tagteamp +tagteamp2 +txsector +victoryp + + +// hankin.c +fjholden +howzat +orbit1 +shark +empsback + + +// icecold.c +icecold + +// inder.c +ind250cc +atleta +brvteam +canasta +pinclown +corsario +lapbylap + + +// jp.c +america +aqualand +faeton +lortium +petaco +petaco2 +olympus + + +// jvh.c +escape +movmastr + + +// ltd.c +alcapone +atla_ltd +bhol_ltd +columbia +cowboy +pecmen +zephy + +// micropin.c +pentacup +pentacup2 + +// mephisto.c +mephistp +mephistp1 + +// mrgame.c +dakar +motrshow +motrshowa +macattck +wcup90 + + +// nsm.c +firebird + + +// peyper.c +odisea +wolfman +odin_dlx +solarwap +poleposn +sonstwar + + +// play_1.c +bigtown +chance +lastlap +spcgambl +party + + +// play_2.c +antar +antar2 +evlfight +attack +blkfever +cerberup +madrace + + +// play_3.c +megaaton + + +// play_5.c +spain82 +ufo_x +kz26 +rock2500 +starfirp +trailer + +// rowamet.c +heavymtl + + +// s11.c +gmine_l2 +grand_l4 +hs_l4 +hs_l3 +rdkng_l4 +rdkng_l1 +rdkng_l2 +rdkng_l3 +tdawg_l1 +shfin_l1 + + +// s11a.c +f14_l1 +f14_p3 +f14_p4 +fire_l3 +milln_l3 +pb_l5 +pb_l2 +pb_l3 + + +// s11b.c +bcats_l5 +bcats_l2 +bnzai_l3 +bnzai_g3 +bnzai_l1 +bnzai_pa +bguns_l8 +bguns_l7 +bguns_la +bguns_p1 +bk2k_l4 +bk2k_lg1 +bk2k_lg3 +bk2k_pu1 +cycln_l5 +cycln_l4 +esha_la3 +esha_ma3 +esha_pr4 +esha_lg1 +esha_lg2 +esha_la1 +esha_pa1 +eatpm_l4 +eatpm_l1 +eatpm_l2 +eatpm_4g +eatpm_4u +eatpm_p7 +jokrz_l6 +jokrz_l3 +mousn_l4 +mousn_l1 +mousn_lu +mousn_lx +polic_l4 +polic_l3 +polic_l2 +spstn_l5 +swrds_l2 +taxi_l4 +taxi_l3 +taxi_lg1 +tsptr_l3 +whirl_l3 +whirl_l2 +whirl_lg3 + + +// s11c.c +bbnny_l2 +bbnny_lu +diner_l4 +diner_l3 +diner_l1 +dd_l2 +dd_p6 +pool_l7 +pool_l6 +pool_le2 +pool_p7 +radcl_l1 +radcl_g1 +radcl_p3 +rvrbt_l3 +rollr_l2 +rollr_ex +rollr_e1 +rollr_p2 +rollr_l3 +rollr_g3 +gs_l3 +gs_l4 +strax_p7 + + +// s3.c +httip_l1 +lucky_l1 +wldcp_l1 +cntct_l1 +disco_l1 + + +// s4.c +flash_l1 +flash_t1 +phnix_l1 +pkrno_l1 +stlwr_l2 +pomp_l1 +arist_l1 +topaz_l1 +taurs_l1 +kingt_l1 +omni_l1 +bstrk_l1 +tstrk_l1 + + +// s6.c +blkou_l1 +blkou_t1 +blkou_f1 +frpwr_l6 +frpwr_t6 +frpwr_l2 +grgar_l1 +grgar_t1 +lzbal_l2 +lzbal_t2 +tmwrp_l2 +tmwrp_t2 +scrpn_l1 +scrpn_t1 +trizn_l1 +trizn_t1 + + +// s6a.c +algar_l1 +alpok_l6 +alpok_l2 +alpok_f6 + + +// s7.c +vrkon_l1 +barra_l1 +bk_l4 +bk_f4 +bk_l3 +csmic_l1 +dfndr_l4 +fpwr2_l2 +hypbl_l4 +jst_l2 +jngld_l2 +lsrcu_l2 +pharo_l2 +solar_l2 +strlt_l1 +tmfnt_l5 +wrlok_l3 +thund_p1 +ratrc_l1 + + +// s8.c +pfevr_l2 +pfevr_p3 + + +// s9.c +comet_l4 +comet_l5 +sorcr_l1 +sorcr_l2 +sshtl_l7 +alcat_l7 +szone_l5 +szone_l2 + + +// sleic.c +sleicpin + + +// spinb.c +bushido +bushidoa +jolypark +mach2 + + +// st_mp100.c +princess +dracula +hothand +lectrono +magic +memlane +nugent +pinball +stars +stingray +trident +wildfyre + + +// st_mp200.c +ali +biggame +catacomp +cheetah +dragfist +flight2k +freefall +galaxypi +ironmaid +lazrlord +lightnin +meteorp +nineball +orbitor1 +quicksil +seawitch +splitsec +stargzr +viperp +gamatron +blkshpsq +st_game + + +// taito.c +taitest +cavnegro +cavnegro1 +cavnegro2 +cosmic +drakor +fireact +fireactd +gemini2k +gemini2k1 +gork +hawkman +hawkman1 +ladylukt +lunelle +meteort +mrblack +mrblack1 +obaoba +obaoba1 +polar +rally +sharkt +shock +snake +sshuttle +sshuttle1 +stest +sureshop +titan +titan1 +vegast +voleybal +vortexp +zarza +zarza1 +mrblkz80 + + +// techno.c +xforce + + +// vd.c +break + + +// whitestar.c +apollo13 +aust301 +aust300 +aust201 +austin +austnew +austinf +austing +austini +godzillp +gldneye +goldcue +harl_a13 +harl_a10 +harl_f13 +harl_g13 +harl_i13 +harl_l13 +harl_a30 +harl_f30 +harl_g30 +harl_i30 +harl_l30 +harl_a18 +harl_f18 +harl_g18 +harl_i18 +harl_l18 +hirolcas +hirolcas_210 +hironew +hirolcat +hirol_fr +hirol_gr +hirol_gr_210 +hirol_it +id4 +lostspc +monopolp +monop303 +monop301 +monop251 +monop233 +monopolf +monopolg +monopoli +monopoll +mononew +nfl +playboys +playboys_401 +playboys_303 +playboys_300 +playboys_203 +playnew +playboyf +playboyf_401 +playboyf_303 +playboyf_300 +playboyf_203 +playboyg +playboyg_401 +playboyg_303 +playboyg_300 +playboyg_203 +playboyi +playboyi_401 +playboyi_303 +playboyi_300 +playboyi_203 +playboyl +playboyl_401 +playboyl_303 +playboyl_300 +playboyl_203 +rctycn +rctycn_701 +rctycn_600 +rctycn_400 +rctnew +rctycng +rctycng_701 +rctycng_400 +rctycnf +rctycnf_701 +rctycnf_600 +rctycnf_400 +rctycni +rctycni_701 +rctycni_600 +rctycni_400 +rctycnl +rctycnl_701 +rctycnl_600 +rctycnl_400 +shrkysht +shrky_207 +shrknew +shrkygr +shrkygr_207 +shrkyfr +shrkyfr_207 +shrkyit +shrkyit_207 +sprk_103 +sprk_090 +spacejam +spacejmg +spacejmf +spacejmi +swtril43 +swtril41 +startrp +strikext +strknew +strxt_uk +strxt_gr +strxt_fr +strxt_it +strxt_sp +term3 +term3_205 +t3new +term3g +term3l +term3l_205 +term3f +term3f_205 +term3i +term3i_205 +jplstw22 +jplstw20 +simpprty +simpprty_400 +simpprty_204 +simpnew +simpprtg +simpprtg_400 +simpprtl +simpprtl_400 +simpprtl_204 +simpprtf +simpprtf_400 +simpprtf_204 +simpprti +simpprti_400 +simpprti_204 +xfilesp +xfiles2 +twst_405 +twst_404 +twst_300 +viprsega +ctchzdlx +titanic +monopred +wackadoo + + +// white_mod.c +elvisp +elvisp4 +elvisp303 +elvisp302 +elvisl +elvisl4 +elvisl303 +elvisl302 +elvisg +elvisg4 +elvisg303 +elvisg302 +elvisf +elvisf4 +elvisf303 +elvisf302 +elvisi +elvisi4 +elvisi303 +elvisi302 +gprix +gprix_400 +gprix_340 +gprix_301 +gprixg +gprixg_400 +gprixg_340 +gprixg_301 +gprixl +gprixl_400 +gprixl_340 +gprixl_301 +gprixf +gprixf_400 +gprixf_340 +gprixf_301 +gprixi +gprixi_400 +gprixi_340 +gprixi_301 +nascar +nascar_400 +nascar_350 +nascar_340 +nascar_301 +nascarl +nascarl_400 +nascarl_340 +nascarl_301 +ripleys +rip310 +rip302 +rip300 +ripleysf +ripf310 +ripf302 +ripf300 +ripleysg +ripg310 +ripg302 +ripg300 +ripleysi +ripi310 +ripi302 +ripi300 +ripleysl +ripl310 +ripl302 +ripl300 +lotr +lotr9 +lotr8 +lotr7 +lotr401 +lotr_le +lotr_sp +lotr_sp9 +lotr_sp8 +lotr_sp7 +lotr_sp401 +lotr_gr +lotr_gr9 +lotr_gr8 +lotr_gr7 +lotr_gr401 +lotr_fr +lotr_fr9 +lotr_fr8 +lotr_fr7 +lotr_fr401 +lotr_it +lotr_it9 +lotr_it8 +lotr_it7 +lotr_it401 +sopranos +sopranos_300 +sopranos_204 +sopranog +sopranog_300 +sopranog_107 +sopranof +sopranof_300 +sopranof_107 +sopranol +sopranol_300 +sopranol_107 +sopranoi +sopranoi_300 +sopranoi_107 + + +// wico.c +aftor + + +// wpc_95.c +tf95_12 +afm_113 +afm_113b +afm_11 +afm_11u +afm_10 +cc_12 +cc_13 +cv_14 +cv_20h +cv_10 +cv_11 +cv_13 +congo_21 +congo_20 +jy_12 +jy_11 +jy_03 +mm_10 +mm_10u +mm_109 +mm_109b +mm_109c +mm_05 +mb_10 +mb_106 +mb_106b +nbaf_31 +nbaf_31a +nbaf_11s +nbaf_11 +nbaf_11a +nbaf_115 +nbaf_21 +nbaf_22 +nbaf_23 +ngg_13 +ngg_p06 +ngg_10 +sc_18 +sc_18n +sc_18s2 +sc_17 +sc_17n +sc_14 +ss_15 +ss_14 +ss_12 +ss_03 +totan_14 +totan_13 +totan_12 +totan_04 +cp_16 +cp_15 +ttt_10 + + +// wpc_an.c +tfa_13 +dd_p7 +dd_p06 +fh_l9 +fh_l9b +fh_905h +fh_l3 +fh_l4 +fh_l5 +hd_l3 +hd_l1 +bop_l7 +bop_l6 +bop_l5 +bop_l4 +bop_l3 +bop_l2 + + +// wpc_dcs.c +dm_lx4 +dm_pa2 +dm_px5 +dm_la1 +dm_lx3 +dm_h5 +dm_h6 +ij_l7 +ij_lg7 +ij_l6 +ij_l5 +ij_l4 +ij_l3 +jd_l7 +jd_l1 +jd_l6 +pop_lx5 +pop_pa3 +sttng_l7 +sttng_x7 +sttng_p5 +sttng_s7 +sttng_g7 +sttng_l1 +sttng_l2 +afv_l4 + + +// wpc_dot.c +tfdmd_l3 +gi_l9 +gi_l3 +gi_l4 +gi_l6 +hshot_p8 +hurr_l2 +pz_f4 +pz_l1 +pz_l2 +pz_l3 +sf_l1 +t2_l8 +t2_l6 +t2_p2f +t2_l4 +t2_l3 +t2_l2 + + +// wpc_flip1.c +taf_l5 +taf_p2 +taf_l1 +taf_l2 +taf_l3 +taf_l4 +taf_l7 +taf_l6 +taf_h4 + + +// wpc_flip2.c +br_l4 +br_p17 +br_l1 +br_l3 +drac_l1 +drac_p11 +cftbl_l3 +cftbl_l4 +dw_l2 +dw_l1 +dw_p5 +ft_l5 +ft_l3 +ft_l4 +ft_p4 +tafg_lx3 +tafg_h3 +tafg_la2 +tafg_la3 +gw_l5 +gw_pc +gw_l1 +gw_l2 +gw_l3 +gw_p7 +tz_92 +tz_94h +tz_94ch +tz_pa1 +tz_p3 +tz_p4 +tz_l1 +tz_l2 +tz_ifpa +tz_l3 +tz_l4 +tz_h7 +tz_h8 +ww_l5 +ww_lh6 +ww_lh5 +ww_l4 +ww_l3 +ww_l2 +ww_p8 +ww_p1 +strik_l4 +lc_11 + + +// wpc_s.c +corv_21 +corv_px4 +corv_lx1 +dh_lx2 +i500_11r +i500_11b +jb_10r +jb_10b +jm_12r +jm_12b +nf_23x +nf_23 +nf_23f +nf_22 +nf_20 +rs_l6 +rs_la5 +rs_lx5 +rs_la4 +rs_lx4 +rs_lx3 +rs_lx2 +fs_lx5 +fs_lx2 +fs_sp2 +fs_lx4 +ts_lx5 +ts_lh6 +ts_lx4 +ts_la4 +ts_la2 +ts_pa1 +ts_lf6 +ts_lm6 +tom_13 +tom_14h +tom_12 +tom_06 +wd_12 +wd_12g +wd_11 +wd_10r +wd_10g +wd_10f +wd_03r +wd_048r +wcs_l2 +wcs_p2 +wcs_p3 +tfs_12 + + +// zac_1.c +ewf +firemntn +futurwld +hotwheel +hod +locomotp +strapids +sshtlzac +stargod +stargoda +wsports + + +// zac_2.c +bbeltzac +clown +dvlrider +dvlrideri +dvlriderg +farfalla +farfallai +farfallag +mcastle +mcastlei +mcastleg +mcastlef +mexico +nstrphnx +pinchamp +pinchampg +pinchampi +pinchamp7 +pinchamp7g +pinchamp7i +poolcham +poolchami +poolchama +robot +roboti +robotg +robotf +scram_tp +socrking +socrkingi +socrkingg +spookyp +spookyi +strsphnx +tmachzac +tmachzacg +tmachzacf +zankor + + +// zac_proto.c +skijump +spacecty +strike diff --git a/src/mame/mame.mak b/src/mame/mame.mak index 1af71a30831..befdd3d3fe6 100644 --- a/src/mame/mame.mak +++ b/src/mame/mame.mak @@ -235,11 +235,6 @@ SOUNDS += MAS3507D # the list of drivers #------------------------------------------------- -ifeq ($(TARGET),mame) -DRVLIBS += \ - $(MAMEOBJ)/mamedriv.o -endif - DRVLIBS += \ $(MAMEOBJ)/alba.a \ $(MAMEOBJ)/alliedl.a \ diff --git a/src/mame/mamedriv.c b/src/mame/mamedriv.c deleted file mode 100644 index 17610a1ed76..00000000000 --- a/src/mame/mamedriv.c +++ /dev/null @@ -1,12225 +0,0 @@ -/****************************************************************************** - - mamedriv.c - - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. - - The list of all available drivers. Drivers have to be included here to be - recognized by the executable. - - To save some typing, we use a hack here. This file is recursively #included - twice, with different definitions of the DRIVER() macro. The first one - declares external references to the drivers; the second one builds an array - storing all the drivers. - -******************************************************************************/ - -#include "emu.h" - -#ifndef DRIVER_RECURSIVE -#include "pinball.lh" - -#define DRIVER_RECURSIVE - -/* step 1: declare all external references */ -#define DRIVER(NAME) GAME_EXTERN(NAME); -#include "mamedriv.c" - -/* step 2: define the drivers[] array */ -#undef DRIVER -#define DRIVER(NAME) &GAME_NAME(NAME), -const game_driver * const drivers[] = -{ -#include "mamedriv.c" - 0 /* end of array */ -}; - -#else /* DRIVER_RECURSIVE */ - - /* "Pacman hardware" games */ - DRIVER( puckman ) /* (c) 1980 Namco */ - DRIVER( puckmana ) /* (c) 1980 Namco */ - DRIVER( puckmanf ) /* hack */ - DRIVER( puckmanh ) /* hack */ - DRIVER( pacman ) /* (c) 1980 Midway */ - DRIVER( pacmanf ) /* hack */ - DRIVER( puckmod ) /* (c) 1981 Namco */ - DRIVER( pacmod ) /* (c) 1981 Midway */ - DRIVER( newpuc2 ) /* hack */ - DRIVER( newpuc2b ) /* hack */ - DRIVER( newpuckx ) /* hack */ - DRIVER( pacheart ) /* hack */ - DRIVER( bucaner ) /* hack */ - DRIVER( hangly ) /* hack */ - DRIVER( hangly2 ) /* hack */ - DRIVER( hangly3 ) /* hack */ - DRIVER( popeyeman ) /* hack */ - DRIVER( piranhah ) /* hack */ - DRIVER( abscam ) /* hack */ - DRIVER( crush ) /* (c) 1981 Kural Samno Electric Ltd */ - DRIVER( crushbl ) /* bootleg */ - DRIVER( crushbl2 ) /* bootleg 2*/ - DRIVER( crush2 ) /* (c) 1981 Kural Esco Electric Ltd - bootleg? */ - DRIVER( crush3 ) /* Kural Electric Ltd - bootleg? */ - DRIVER( crush4 ) /* Kural TWT */ - DRIVER( maketrax ) /* (c) 1981 Williams, high score table says KRL (fur Kural) */ - DRIVER( maketrxb ) /* (c) 1981 [Kural] (Williams license) */ - DRIVER( korosuke ) /* (c) 1981 Kural Electric */ - DRIVER( mbrush ) /* 1981 bootleg */ - DRIVER( paintrlr ) /* 1981 bootleg */ - DRIVER( crushs ) /* 1981 bootleg */ - DRIVER( pacplus ) /* (c) 1982 Namco (Midway license) */ - DRIVER( joyman ) /* hack */ - DRIVER( ctrpllrp ) /* hack */ - DRIVER( eyes ) /* (c) 1982 Digitrex Techstar + "Rockola presents" */ - DRIVER( eyes2 ) /* (c) 1982 Techstar + "Rockola presents" */ - DRIVER( eyeszac ) /* (c) 1982 Zaccaria / bootleg */ - DRIVER( mrtnt ) /* (c) 1983 Telko */ - DRIVER( gorkans ) /* (c) 1984 Techstar */ - DRIVER( eggor ) /* (c) 1983 Telko */ - DRIVER( jumpshot ) /* (c) 1985 Bally Midway */ - DRIVER( jumpshotp ) /* (c) 1985 Bally Midway */ - DRIVER( shootbul ) /* (c) 1985 Bally Midway */ - DRIVER( piranha ) /* GL */ - DRIVER( piranhao ) /* GL */ - DRIVER( nmouse ) /* (c) 1981 Amenip (Palcom Queen River) */ - DRIVER( nmouseb ) /* (c) 1981 Amenip Nova Games Ltd. */ - DRIVER( mspacman ) /* (c) 1981 Midway */ /* made by General Computer */ - DRIVER( mspacmnf ) /* hack */ - DRIVER( mspacmat ) /* hack */ - DRIVER( woodpeck ) /* (c) 1981 Amenip (Palcom Queen River) */ - DRIVER( woodpeca ) /* (c) 1981 Amenip Nova Games Ltd. */ - DRIVER( mspacmab ) /* bootleg */ - DRIVER( mspacmbe ) /* bootleg */ - DRIVER( pacgal ) /* hack */ - DRIVER( mspacpls ) /* hack */ - DRIVER( ponpoko ) /* (c) 1982 Sigma Ent. Inc. */ - DRIVER( ponpokov ) /* (c) 1982 Sigma Ent. Inc. + Venture Line license */ - DRIVER( lizwiz ) /* (c) 1985 Techstar + "Sunn presents" */ - DRIVER( alibaba ) /* (c) 1982 Sega */ - DRIVER( dremshpr ) /* (c) 1982 Sanritsu */ - DRIVER( vanvan ) /* (c) 1983 Sanritsu */ - DRIVER( vanvank ) /* (c) 1983 Karateco (bootleg?) */ - DRIVER( vanvanb ) /* (c) 1983 Karateco (bootleg?) */ - DRIVER( bwcasino ) /* (c) 1983 Epos Coropration */ - DRIVER( acitya ) /* (c) 1983 Epos Corporation */ - DRIVER( theglobp ) /* (c) 1983 Epos Corporation */ - DRIVER( sprglobp ) /* (c) 1983 Epos Corporation */ - DRIVER( sprglbpg ) /* German bootleg */ - DRIVER( beastf ) /* (c) 1984 Epos Corporation */ - DRIVER( rocktrv2 ) /* (c) 1986 Triumph Software Inc */ - DRIVER( bigbucks ) /* (c) 1986 Dynasoft Inc. */ - DRIVER( mschamp ) /* hack by RAYGLO MFG "Zola-Puc" (c) 1992/1993 */ - DRIVER( mschamps ) /* hack (hack of the Rayglo hack?) */ - DRIVER( cannonbp ) /* hack */ - - /* S2650 Pacman Kits */ - DRIVER( drivfrcp ) /* (c) 1984 Shinkai Inc. (Magic Eletronics Inc. license) */ - DRIVER( 8bpm ) /* (c) 1985 Seatongrove Ltd (Magic Eletronics USA license) */ - DRIVER( porky ) /* (c) 1985 Shinkai Inc. (Magic Eletronics Inc. license) */ - - DRIVER( pengo ) /* 834-0386 (c) 1982 Sega */ - DRIVER( pengo2 ) /* 834-0386 (c) 1982 Sega */ - DRIVER( pengo2u ) /* 834-0386 (c) 1982 Sega */ - DRIVER( pengo3u ) /* 834-0386 (c) 1982 Sega */ - DRIVER( pengo4 ) /* 834-0386 (c) 1982 Sega */ - DRIVER( pengob ) /* bootleg */ - DRIVER( penta ) /* bootleg */ - DRIVER( jrpacmbl ) /* bootleg on Pengo HW */ - - DRIVER( jrpacman ) /* (c) 1983 Midway */ - - /* Epos games */ - DRIVER( megadon ) /* (c) 1982 */ - DRIVER( catapult ) /* (c) 1982 */ - DRIVER( suprglob ) /* (c) 1983 */ - DRIVER( theglob ) /* (c) 1983 */ - DRIVER( theglob2 ) /* (c) 1983 */ - DRIVER( theglob3 ) /* (c) 1983 */ - DRIVER( igmo ) /* (c) 1984 */ - DRIVER( dealer ) /* (c) 198? */ - DRIVER( revenger ) /* (c) 1984 */ - - /* "Galaxian hardware" games */ - DRIVER( galaxian ) /* (c) Namco */ - DRIVER( galaxiana ) /* (c) Namco */ - DRIVER( galaxianm ) /* (c) Midway */ - DRIVER( galaxianmo )/* (c) Midway */ - DRIVER( galaxiant ) /* (c) Taito */ - DRIVER( superg ) /* hack */ - DRIVER( galapx ) /* hack */ - DRIVER( moonaln ) /* [Nichibutsu] (Karateco license) or hack */ - DRIVER( galap1 ) /* hack */ - DRIVER( galap4 ) /* hack */ - DRIVER( galturbo ) /* hack */ - DRIVER( swarm ) /* hack */ - DRIVER( zerotime ) /* hack */ - DRIVER( starfght ) /* hack */ - DRIVER( galaxbsf ) /* hack */ - DRIVER( kamakazi3 ) /* Video Games (UK) Ltd., hack or bootleg? */ - DRIVER( tst_galx ) /* Galaxian Test ROM */ - DRIVER( gmgalax ) /* bootleg */ - DRIVER( pisces ) /* Subelectro */ - DRIVER( piscesb ) /* bootleg */ - DRIVER( omni ) /* bootleg */ - DRIVER( uniwars ) /* (c) Irem */ - DRIVER( gteikoku ) /* (c) Irem */ - DRIVER( gteikokb ) /* bootleg */ - DRIVER( gteikob2 ) /* bootleg */ - DRIVER( spacbatt ) /* bootleg */ - DRIVER( spacbat2 ) /* bootleg */ - DRIVER( spacempr ) /* bootleg */ - DRIVER( skyraidr ) /* bootleg */ - DRIVER( batman2 ) /* bootleg */ - DRIVER( warofbug ) /* (c) 1981 Armenia */ - DRIVER( warofbugg ) /* German Version */ - DRIVER( redufo ) /* (c) Artic */ - DRIVER( redufob ) /* bootleg */ - DRIVER( exodus ) /* Subelectro - bootleg? */ - DRIVER( streakng ) /* [1980] Shoei */ - DRIVER( streaknga ) /* [1980] Shoei */ - DRIVER( pacmanbl ) /* bootleg */ - DRIVER( pacmanbla ) /* bootleg */ - DRIVER( phoenxp2 ) /* bootleg */ - DRIVER( atlantisb ) /* bootleg */ - DRIVER( tenspot ) /* (c) 1982 Thomas Automatics */ - DRIVER( devilfsg ) /* (c) 1984 Vision / Artic (bootleg?) */ - DRIVER( zigzag ) /* (c) 1982 LAX */ - DRIVER( zigzag2 ) /* (c) 1982 LAX */ - DRIVER( jumpbug ) /* (c) 1981 Rock-ola */ - DRIVER( jumpbugb ) /* (c) 1981 Sega */ - DRIVER( levers ) /* (c) 1983 Rock-ola */ - DRIVER( azurian ) /* (c) 1982 Rait Electronics Ltd */ - DRIVER( orbitron ) /* (c) 1982 Signatron USA (Arcade Tv Game List - P.160, Left, 22 from top) */ - DRIVER( mooncrgx ) /* bootleg */ - DRIVER( mooncrst ) /* (c) 1980 Nichibutsu */ - DRIVER( mooncrstu ) /* (c) 1980 Nichibutsu USA */ - DRIVER( mooncrsto ) /* (c) 1980 Nichibutsu */ - DRIVER( mooncrstg ) /* (c) 1980 Gremlin */ - DRIVER( mooncrstuk )/* (c) 1980 Nichibutsu UK */ - DRIVER( smooncrs ) /* Gremlin */ - DRIVER( sstarcrs ) /* Taito (Brazil) */ - DRIVER( mooncmw ) /* bootleg */ - DRIVER( mooncrsb ) /* bootleg */ - DRIVER( mooncrs2 ) /* bootleg */ - DRIVER( spcdrag ) /* bootleg */ - DRIVER( stera ) /* bootleg */ - DRIVER( spcdraga ) /* bootleg */ - DRIVER( mooncrs3 ) /* bootleg */ - DRIVER( fantazia ) /* bootleg */ - DRIVER( moonqsr ) /* (c) 1980 Nichibutsu */ - DRIVER( mshuttle ) /* (c) 1981 Nichibutsu */ - DRIVER( mshuttle2 ) /* (c) 1981 Nichibutsu */ - DRIVER( mshuttlej ) /* (c) 1981 Nichibutsu */ - DRIVER( mshuttlej2 )/* (c) 1981 Nichibutsu */ - DRIVER( moonal2 ) /* [1980] Nichibutsu */ - DRIVER( moonal2b ) /* [1980] Nichibutsu */ - DRIVER( supergx ) /* [1980] Nichibutsu */ - DRIVER( eagle ) /* [1980] Centuri */ - DRIVER( eagle2 ) /* [1980] Centuri */ - DRIVER( eagle3 ) /* [1980] Centuri */ - DRIVER( spctbird ) /* (c) Fortrek */ - DRIVER( skybase ) /* (c) 1982 Omori Electric Co., Ltd. */ - DRIVER( checkman ) /* (c) 1982 Zilec-Zenitone */ - DRIVER( checkmanj ) /* (c) 1982 Jaleco (Zenitone/Zilec in ROM CM4, and the programmer names) */ - DRIVER( dingo ) /* (c) 1983 Ashby Computers and Graphics LTD. + Jaleco license */ - DRIVER( dingoe ) /* (c) 1983 Ashby Computers and Graphics LTD. + Jaleco license */ - DRIVER( blkhole ) /* TDS (Tokyo Denshi Sekkei) */ - DRIVER( kingball ) /* (c) 1980 Namco */ - DRIVER( kingballj ) /* (c) 1980 Namco */ - DRIVER( scorpionmc )/* bootleg */ - DRIVER( frogg ) /* bootleg */ - DRIVER( 4in1 ) /* (c) 1981 Armenia / Food and Fun */ - DRIVER( bagmanmc ) /* bootleg */ - DRIVER( dkongjrm ) /* bootleg */ - DRIVER( ozon1 ) /* (c) 1983 Proma */ - DRIVER( ladybugg ) /* bootleg */ - DRIVER( vpool ) /* bootleg */ - DRIVER( drivfrcg ) /* [1984] Shinkai (Magic Electronics USA license) */ - DRIVER( drivfrcb ) /* bootleg */ - DRIVER( bongo ) /* (c) 1983 Jetsoft */ - DRIVER( hunchbkg ) /* (c) 1983 Century */ - DRIVER( harem ) /* [1983] I.G.R. */ - DRIVER( tazzmang ) /* bootleg */ - DRIVER( racknrol ) /* (c) 1986 Status (Shinkia license) (Senko Kit) */ - DRIVER( hexpool ) /* (c) 1986 Shinkia (Senko Kit) */ - DRIVER( hexpoola ) /* (c) 1986 Shinkia (Senko Kit) */ - DRIVER( trvchlng ) /* [1985] Joyland (Senko license) */ - DRIVER( luctoday ) /* 1980 Sigma */ - DRIVER( chewing ) /* ?? unknown */ - DRIVER( catacomb ) /* 1982 MTM Games */ - DRIVER( ckongg ) /* 1981 bootleg */ - DRIVER( ckongmc ) /* 1981 bootleg */ - DRIVER( porter ) /* 1982 bootleg (Arcade TV Game List - P.98, Left, 15 from bottom) */ - DRIVER( vstars ) /* 19?? Competitive Video? */ - DRIVER( tdpgal ) /* 1983 Design Labs / Thomas Automatics */ - - /* Has some similarities with Moon Cresta but Board is very different */ - DRIVER( rockclim ) /* (c)1981 Taito */ - - /* "Scramble hardware" (and variations) games */ - DRIVER( scramble ) /* GX387 (c) 1981 Konami */ - DRIVER( scrambles ) /* GX387 (c) 1981 Stern */ - DRIVER( scramblebf )/* bootleg */ - DRIVER( scramblebb )/* bootleg? */ - DRIVER( scramblb ) /* bootleg */ - DRIVER( scramb2 ) /* bootleg */ - DRIVER( explorer ) /* bootleg */ - DRIVER( strfbomb ) /* bootleg */ - DRIVER( atlantis ) /* (c) 1981 Comsoft */ - DRIVER( atlantis2 ) /* (c) 1981 Comsoft */ - DRIVER( theend ) /* (c) 1980 Konami */ - DRIVER( theends ) /* (c) 1980 Stern */ - DRIVER( omega ) /* bootleg */ - DRIVER( ckongs ) /* bootleg */ - DRIVER( froggers ) /* bootleg */ - DRIVER( frogf ) /* bootleg */ - DRIVER( amidars ) /* GX337 (c) 1982 Konami */ - DRIVER( triplep ) /* (c) 1982 KKI */ /* made by Sanritsu? */ - DRIVER( knockout ) /* (c) 1982 KKK */ - DRIVER( mariner ) /* (c) 1981 Amenip */ - DRIVER( 800fath ) /* (c) 1981 Amenip + U.S. Billiards license */ - DRIVER( mars ) /* (c) 1981 Artic */ - DRIVER( devilfsh ) /* (c) 1982 Artic */ - DRIVER( newsin7 ) /* (c) 1983 ATW USA, Inc. */ - DRIVER( mrkougar ) /* (c) 1984 ATW */ - DRIVER( mrkougar2 ) /* (c) 1984 ATW */ - DRIVER( mrkougb ) /* bootleg */ - DRIVER( mrkougb2 ) /* bootleg */ - DRIVER( hotshock ) /* (c) 1982 E.G. Felaco (Domino license) */ - DRIVER( hotshockb ) /* bootleg */ - DRIVER( conquer ) /* (c) 1982 ???? */ - DRIVER( hunchbks ) /* (c) 1983 Century */ - DRIVER( hncholms ) /* (c) 1984 Century */ - DRIVER( cavelon ) /* (c) 1983 Jetsoft */ - DRIVER( sfx ) /* (c) 1983 Nichibutsu */ - DRIVER( skelagon ) /* (c) 1983 Nichibutsu USA */ - DRIVER( monsterz ) /* (c) 1982 Nihon (Arcade TV Game List - P.102, Left, 20 from top) */ - DRIVER( mimonscr ) /* (c) 1982 Universal Video Games (US Copyright Office info - http://cocatalog.loc.gov)*/ - DRIVER( mimonkey ) /* (c) 1982 bootleg */ - DRIVER( mimonsco ) /* (c) 1982 bootleg */ - DRIVER( scobra ) /* GX316 (c) 1981 Konami */ - DRIVER( scobras ) /* GX316 (c) 1981 Stern */ - DRIVER( scobrase ) /* GX316 (c) 1981 Stern */ - DRIVER( scobrab ) /* GX316 (c) 1981 Karateco (bootleg?) */ - DRIVER( suprheli ) /* bootleg */ - DRIVER( stratgyx ) /* GX306 (c) 1981 Konami */ - DRIVER( stratgys ) /* GX306 (c) 1981 Stern */ - DRIVER( strongx ) /* bootleg */ - DRIVER( armorcar ) /* (c) 1981 Stern */ - DRIVER( armorcar2 ) /* (c) 1981 Stern */ - DRIVER( moonwar ) /* (c) 1981 Stern */ - DRIVER( moonwara ) /* (c) 1981 Stern */ - DRIVER( spdcoin ) /* (c) 1984 Stern */ - DRIVER( darkplnt ) /* (c) 1982 Stern */ - DRIVER( tazmania ) /* (c) 1982 Stern */ - DRIVER( tazmani2 ) /* (c) 1982 Stern */ - DRIVER( calipso ) /* (c) 1982 Tago */ - DRIVER( anteater ) /* (c) 1982 Tago */ - DRIVER( anteaterg ) /* (c) 1983 TV-Tuning (F.E.G. license) */ - DRIVER( anteateruk )/* (c) 1983 Free Enterprise Games */ - DRIVER( rescue ) /* (c) 1982 Stern */ - DRIVER( aponow ) /* bootleg */ - DRIVER( minefld ) /* (c) 1983 Stern */ - DRIVER( losttomb ) /* (c) 1982 Stern */ - DRIVER( losttombh ) /* (c) 1982 Stern */ - DRIVER( superbon ) /* bootleg */ - DRIVER( hustler ) /* GX343 (c) 1981 Konami */ - DRIVER( hustlerd ) /* GX343 (c) 1981 Konami + Dynamo Games license */ - DRIVER( billiard ) /* bootleg */ - DRIVER( hustlerb ) /* bootleg */ - DRIVER( hustlerb2 ) /* bootleg */ - DRIVER( frogger ) /* GX392 (c) 1981 Konami */ - DRIVER( froggers1 ) /* (c) 1981 Sega */ - DRIVER( froggers2 ) /* 834-0068 (c) 1981 Sega */ - DRIVER( froggermc ) /* 800-3110 (c) 1981 Sega */ - DRIVER( amidar ) /* GX337 (c) 1981 Konami */ - DRIVER( amidaru ) /* GX337 (c) 1982 Konami + Stern license */ - DRIVER( amidaro ) /* GX337 (c) 1982 Konami + Olympia license */ - DRIVER( amidarb ) /* bootleg */ - DRIVER( amigo ) /* bootleg */ - DRIVER( turtles ) /* (c) 1981 Stern */ - DRIVER( turpin ) /* (c) 1981 Sega */ - DRIVER( 600 ) /* GX353 (c) 1981 Konami */ - DRIVER( flyboy ) /* (c) 1982 Kaneko */ - DRIVER( flyboyb ) /* bootleg */ - DRIVER( fastfred ) /* 136009 (c) 1982 Atari */ - DRIVER( jumpcoas ) /* (c) 1983 Kaneko */ - DRIVER( jumpcoast ) /* (c) 1983 Taito */ - DRIVER( boggy84 ) /* (c) 1984 Kaneko */ - DRIVER( boggy84b ) /* bootleg */ - DRIVER( redrobin ) /* (c) 1986 Elettronolo */ - DRIVER( imago ) /* (c) 1984 Acom */ - DRIVER( imagoa ) /* (c) 1983 Acom */ - DRIVER( scorpion ) /* (c) 1982 Zaccaria */ - DRIVER( scorpiona ) /* (c) 1982 Zaccaria */ - DRIVER( scorpionb ) /* (c) 1982 Zaccaria */ - DRIVER( aracnis ) /* bootleg */ - DRIVER( ad2083 ) /* (c) 1983 Midcoin */ - DRIVER( turpins ) /* (c) 1981 bootleg */ - - /* "Crazy Climber hardware" games */ - DRIVER( cclimber ) /* (c) 1980 Nichibutsu */ - DRIVER( cclimberj ) /* (c) 1980 Nichibutsu */ - DRIVER( ccboot ) /* bootleg */ - DRIVER( ccboot2 ) /* bootleg */ - - DRIVER( ckong ) /* (c) 1981 (Falcon?) */ - DRIVER( ckongo ) /* bootleg (Orca) */ - DRIVER( ckongalc ) /* bootleg (Alca) */ - DRIVER( bigkong ) /* bootleg */ - DRIVER( monkeyd ) /* bootleg */ - - DRIVER( ckongpt2 ) /* (c) 1981 Falcon */ - DRIVER( ckongpt2a ) /* (c) 1981 Falcon */ - DRIVER( ckongpt2j ) /* (c) 1981 Falcon */ - DRIVER( ckongpt2jeu ) /* bootleg (Jeutel) */ - DRIVER( ckongpt2b ) /* bootleg */ - - DRIVER( rpatrol ) /* Orca, from a suspicious set */ - DRIVER( rpatrolb ) /* bootleg */ - DRIVER( silvland ) /* Falcon */ - DRIVER( yamato ) /* (c) 1983 Sega */ - DRIVER( yamato2 ) /* (c) 1983 Sega */ - DRIVER( toprollr ) /* (c) 1983 Jaleco */ - DRIVER( swimmer ) /* (c) 1982 Tehkan */ - DRIVER( swimmera ) /* (c) 1982 Tehkan */ - DRIVER( swimmerb ) /* (c) 1982 Tehkan */ - DRIVER( guzzler ) /* (c) 1983 Tehkan */ - DRIVER( cannonb ) /* (c) 1985 Soft */ - DRIVER( cannonb2 ) /* (c) 1985 TV Game Gruenberg */ - DRIVER( cannonb3 ) /* (c) 1985 Soft */ - DRIVER( bagmanf ) /* bootleg on Falcon FCK-00 (Falcon Crazy Kong) PCB */ - - /* Nichibutsu games */ - DRIVER( gomoku ) /* (c) 1981 */ - DRIVER( wiping ) /* (c) 1982 */ - DRIVER( rugrats ) /* (c) 1983 */ - DRIVER( dacholer ) /* (c) 1983 */ - DRIVER( kickboy ) /* (c) 1983 */ - DRIVER( friskyt ) /* (c) 1981 */ - DRIVER( friskyta ) /* (c) 1981 */ - DRIVER( radrad ) /* (c) 1982 Nichibutsu USA */ - DRIVER( seicross ) /* (c) 1984 + Alice */ - DRIVER( sectrzon ) /* (c) 1984 + Alice */ - DRIVER( firebatl ) /* (c) 1984 Taito */ - DRIVER( clshroad ) /* (c) 1986 Wood Place Inc. */ - DRIVER( clshroads ) /* (c) 1986 Wood Place Inc. (Status Games license) */ - DRIVER( clshroadd ) /* (c) 1986 Wood Place Inc. (Data East license) */ - DRIVER( tubep ) /* (c) 1984 + Fujitek */ - DRIVER( tubepb ) /* (c) 1984 + bootleg */ - DRIVER( rjammer ) /* (c) 1984 + Alice */ - DRIVER( magmax ) /* (c) 1985 */ - DRIVER( cop01 ) /* (c) 1985 */ - DRIVER( cop01a ) /* (c) 1985 */ - DRIVER( mightguy ) /* (c) 1986 */ - DRIVER( terracre ) /* (c) 1985 */ - DRIVER( terracreo ) /* (c) 1985 */ - DRIVER( terracrea ) /* (c) 1985 */ - DRIVER( terracren ) /* (c) 1985 */ - DRIVER( amazon ) /* (c) 1986 */ - DRIVER( amatelas ) /* (c) 1986 */ - DRIVER( horekid ) /* (c) 1987 */ - DRIVER( horekidb ) /* bootleg */ - DRIVER( boobhack ) /* bootleg */ - DRIVER( galivan ) /* (c) 1985 */ - DRIVER( galivan2 ) /* (c) 1985 */ - DRIVER( dangar ) /* (c) 1986 */ - DRIVER( dangar2 ) /* (c) 1986 */ - DRIVER( dangarb ) /* bootleg */ - DRIVER( ninjemak ) /* (c) 1986 (US?) */ - DRIVER( youma ) /* (c) 1986 (Japan) */ - DRIVER( youma2 ) /* (c) 1986 (Japan) */ - DRIVER( youmab ) /* bootleg */ - DRIVER( youmab2 ) /* bootleg */ - DRIVER( legion ) /* (c) 1986 */ - DRIVER( legiono ) /* (c) 1986 */ - DRIVER( terraf ) /* (c) 1987 */ - DRIVER( terrafb ) /* (c) 1987 */ - DRIVER( terrafa ) /* (c) 1987 */ - DRIVER( terrafu ) /* (c) 1987 Nichibutsu USA */ - DRIVER( kodure ) /* (c) 1987 (Japan) */ - DRIVER( armedf ) /* (c) 1988 */ - DRIVER( armedff ) /* (c) 1988 Fillmore license */ - DRIVER( cclimbr2 ) /* (c) 1988 (Japan) */ - DRIVER( cclimbr2a ) /* (c) 1988 (Japan) */ - DRIVER( skyrobo ) /* (c) 1989 */ - DRIVER( bigfghtr ) /* (c) 1989 */ - - /* Nichibutsu Mahjong games */ - DRIVER( hyhoo ) /* (c) 1987 */ - DRIVER( hyhoo2 ) /* (c) 1987 */ - - DRIVER( jangou ) /* (c) 1983 */ - DRIVER( macha ) /* (c) 1983 Logitec */ - /* Jangou Night *//* (c) 1983 */ - DRIVER( jngolady ) /* (c) 1984 */ - DRIVER( cntrygrl ) /* (c) 1984 Royal Denshi */ - DRIVER( cntrygrla ) /* (c) 1984 */ - DRIVER( roylcrdn ) /* (c) 1985 */ - DRIVER( fruitbun ) /* (c) 1984 */ - DRIVER( luckygrl ) /* (c) 1984 Wing? */ - DRIVER( nightgal ) /* (c) 1984 */ - DRIVER( ngtbunny ) /* (c) 1984 */ - DRIVER( royalngt ) /* (c) 1984 Royal Denshi */ - DRIVER( royalqn ) - DRIVER( sexygal ) /* (c) 1985 */ - DRIVER( sweetgal ) /* (c) 1985 */ - DRIVER( ngalsumr ) /* (c) 1985 */ - - DRIVER( pastelg ) /* (c) 1985 */ - DRIVER( 3ds ) /* (c) 1985 */ - DRIVER( galds ) /* (c) 1985 */ - - DRIVER( crystalg ) /* (c) 1986 */ - DRIVER( crystal2 ) /* (c) 1986 */ - DRIVER( nightlov ) /* (c) 1986 */ - DRIVER( citylove ) /* (c) 1986 */ - DRIVER( mcitylov ) /* (c) 1986 */ - DRIVER( apparel ) /* (c) 1986 Central Denshi */ - DRIVER( secolove ) /* (c) 1986 */ - DRIVER( barline ) /* (c) 1986?*/ - DRIVER( housemnq ) /* (c) 1987 */ - DRIVER( housemn2 ) /* (c) 1987 */ - DRIVER( livegal ) /* (c) 1987 */ - DRIVER( seiha ) /* (c) 1987 */ - DRIVER( seiham ) /* (c) 1987 */ - DRIVER( mjgaiden ) /* (c) 1987 Central Denshi */ - DRIVER( bijokkoy ) /* (c) 1987 */ - DRIVER( iemoto ) /* (c) 1987 */ - DRIVER( iemotom ) /* (c) 1987 */ - DRIVER( ryuuha ) /* (c) 1987 */ - DRIVER( ojousan ) /* (c) 1987 */ - DRIVER( ojousanm ) /* (c) 1987 */ - DRIVER( bijokkog ) /* (c) 1988 */ - DRIVER( orangec ) /* (c) 1988 Daiichi Denshi */ - DRIVER( orangeci ) /* (c) 1988 Daiichi Denshi */ - DRIVER( vipclub ) /* (c) 1988 Daiichi Denshi */ - DRIVER( korinai ) /* (c) 1988 */ - DRIVER( korinaim ) /* (c) 1988 */ - DRIVER( kaguya ) /* (c) 1988 MIKI SYOUJI */ - DRIVER( kaguya2 ) /* (c) 1989 MIKI SYOUJI */ - DRIVER( kaguya2f ) /* (c) 1989 MIKI SYOUJI */ - DRIVER( otonano ) /* (c) 1988 Apple */ - DRIVER( kanatuen ) /* (c) 1988 Panac */ - DRIVER( kyuhito ) /* (c) 1988 ROLLER TRON */ - DRIVER( mjsikaku ) /* (c) 1988 */ - DRIVER( mjsikakb ) /* (c) 1988 */ - DRIVER( mjsikakc ) /* (c) 1988 */ - DRIVER( mjsikakd ) /* (c) 1988 */ - DRIVER( mmsikaku ) /* (c) 1988 */ - DRIVER( mjcamera ) /* (c) 1988 MIKI SYOUJI */ - DRIVER( mmcamera ) /* (c) 1988 MIKI SYOUJI */ - - DRIVER( msjiken ) /* (c) 1988 */ - DRIVER( hanamomo ) /* (c) 1988 */ - DRIVER( hanamomb ) /* (c) 1988 */ - DRIVER( telmahjn ) /* (c) 1988 */ - DRIVER( taiwanmb ) /* (c) 1988 */ - DRIVER( gionbana ) /* (c) 1989 */ - DRIVER( idhimitu ) /* (c) 1989 Digital Soft */ - DRIVER( mgion ) /* (c) 1989 */ - DRIVER( mjcamerb ) /* (c) 1989 MIKI SYOUJI */ - DRIVER( omotesnd ) /* (c) 1989 */ - DRIVER( abunai ) /* (c) 1989 */ - DRIVER( mjfocus ) /* (c) 1989 */ - DRIVER( mjfocusm ) /* (c) 1989 */ - DRIVER( peepshow ) /* (c) 1989 AC */ - DRIVER( scandal ) /* (c) 1989 */ - DRIVER( scandalm ) /* (c) 1989 */ - DRIVER( mgmen89 ) /* (c) 1989 */ - DRIVER( mjnanpas ) /* (c) 1989 BROOKS */ - DRIVER( mjnanpaa ) /* (c) 1989 BROOKS */ - DRIVER( mjnanpau ) /* (c) 1989 BROOKS */ - DRIVER( pairsnb ) /* (c) 1989 */ - DRIVER( pairsten ) /* (c) 1989 System Ten */ - DRIVER( bananadr ) /* (c) 1989 DIGITAL SOFT */ - DRIVER( mladyhtr ) /* (c) 1990 */ - DRIVER( chinmoku ) /* (c) 1990 */ - DRIVER( maiko ) /* (c) 1990 */ - DRIVER( mmaiko ) /* (c) 1990 */ - DRIVER( hnageman ) /* (c) 1990 Nichibutsu/AV Japan */ - DRIVER( hnxmasev ) /* (c) 1990 Nichibutsu/AV Japan */ - DRIVER( club90s ) /* (c) 1990 */ - DRIVER( club90sa ) /* (c) 1990 */ - DRIVER( lovehous ) /* (c) 1990 */ - DRIVER( hanaoji ) /* (c) 1991 */ - - DRIVER( pstadium ) /* (c) 1990 */ - DRIVER( triplew1 ) /* (c) 1989 */ - DRIVER( triplew2 ) /* (c) 1990 */ - DRIVER( ntopstar ) /* (c) 1990 */ - DRIVER( mjlstory ) /* (c) 1991 */ - DRIVER( vanilla ) /* (c) 1991 */ - DRIVER( finalbny ) /* (c) 1991 */ - DRIVER( qmhayaku ) /* (c) 1991 */ - DRIVER( mjgottub ) /* (c) 1991 */ - DRIVER( galkoku ) /* (c) 1989 Nichibutsu/T.R.TEC */ - DRIVER( hyouban ) /* (c) 1989 Nichibutsu/T.R.TEC */ - DRIVER( galkaika ) /* (c) 1989 Nichibutsu/T.R.TEC */ - DRIVER( tokyogal ) /* (c) 1989 */ - DRIVER( tokimbsj ) /* (c) 1989 */ - DRIVER( mcontest ) /* (c) 1989 */ - DRIVER( uchuuai ) /* (c) 1989 */ - DRIVER( av2mj1bb ) /* (c) 1991 MIKI SYOUJI/AV JAPAN */ - DRIVER( av2mj2rg ) /* (c) 1991 MIKI SYOUJI/AV JAPAN */ - - DRIVER( ohpaipee ) /* (c) 1990 Nichibutsu */ - DRIVER( togenkyo ) /* (c) 1990 Nichibutsu */ - - DRIVER( mjuraden ) /* (c) 1992 Nichibutsu/Yubis */ - DRIVER( koinomp ) /* (c) 1992 */ - DRIVER( patimono ) /* (c) 1992 */ - DRIVER( janbari ) /* (c) 1992 Nichibutsu/Yubis/AV JAPAN */ - DRIVER( mjanbari ) /* (c) 1992 Nichibutsu/Yubis/AV JAPAN */ - DRIVER( ultramhm ) /* (c) 1993 Apple */ - DRIVER( gal10ren ) /* (c) 1993 FUJIC */ - DRIVER( renaiclb ) /* (c) 1993 FUJIC */ - DRIVER( mjlaman ) /* (c) 1993 Nichibutsu/AV JAPAN */ - DRIVER( mkeibaou ) /* (c) 1993 */ - DRIVER( pachiten ) /* (c) 1993 Nichibutsu/MIKI SYOUJI/AV JAPAN */ - DRIVER( sailorws ) /* (c) 1993 */ - DRIVER( sailorwa ) /* (c) 1993 */ - DRIVER( sailorwr ) /* (c) 1993 */ - DRIVER( wcatcher ) /* (c) 1993 */ - DRIVER( jituroku ) /* (c) 1993 Windom */ - DRIVER( yosimoto ) /* (c) 1994 Nichibutsu/Yoshimoto Kougyou */ - DRIVER( psailor1 ) /* (c) 1994 SPHINX */ - DRIVER( psailor2 ) /* (c) 1994 SPHINX */ - DRIVER( otatidai ) /* (c) 1995 SPHINX */ - DRIVER( ngpgal ) /* (c) 1991 */ - DRIVER( mjgottsu ) /* (c) 1991 */ - DRIVER( bakuhatu ) /* (c) 1991 */ - DRIVER( cmehyou ) /* (c) 1992 Nichibutsu/Kawakusu */ - DRIVER( mmehyou ) /* (c) 1992 Nichibutsu/Kawakusu */ - DRIVER( mjkoiura ) /* (c) 1992 */ - DRIVER( mkoiuraa ) /* (c) 1992 */ - DRIVER( imekura ) /* (c) 1994 SPHINX/AV JAPAN */ - DRIVER( mscoutm ) /* (c) 1994 SPHINX/AV JAPAN */ - DRIVER( mjegolf ) /* (c) 1994 FUJIC/AV JAPAN */ - - DRIVER( mhhonban ) /* (c) 199? */ - DRIVER( 4psimasy ) /* (c) 1994 */ - DRIVER( musobana ) /* (c) 1995 */ - DRIVER( niyanpai ) /* (c) 1996 */ - - DRIVER( jyunai ) /* (c) 1998 */ - DRIVER( csplayh5 ) /* (c) 1998 */ - DRIVER( bikiniko ) /* (c) 1999 */ - - /* "Phoenix hardware" (and variations) games */ - DRIVER( safarir ) /* Shin Nihon Kikaku (SNK) */ - DRIVER( phoenix ) /* (c) 1980 Amstar */ - DRIVER( phoenixa ) /* (c) 1980 Amstar + Centuri license */ - DRIVER( phoenixb ) /* (c) 1980 Amstar + Centuri license */ - DRIVER( phoenixt ) /* (c) 1980 Taito */ - DRIVER( phoenixj ) /* (c) 1980 Taito */ - DRIVER( phoenix3 ) /* bootleg */ - DRIVER( phoenixc ) /* bootleg */ - DRIVER( condor ) /* bootleg */ - DRIVER( fenix ) /* bootleg */ - DRIVER( falcon ) /* bootleg */ - DRIVER( vautour ) /* bootleg (Jeutel) */ - DRIVER( falconz ) /* bootleg */ - DRIVER( vautourz ) /* bootleg */ - DRIVER( griffon ) /* bootleg (Videotron) */ - DRIVER( nextfase ) /* bootleg */ - DRIVER( pleiads ) /* (c) 1981 Tehkan */ - DRIVER( pleiadbl ) /* bootleg */ - DRIVER( pleiadce ) /* (c) 1981 Centuri + Tehkan */ - DRIVER( capitol ) /* bootleg? */ - DRIVER( survival ) /* (c) 1982 Rock-ola */ - DRIVER( naughtyb ) /* (c) 1982 Jaleco */ - DRIVER( naughtyba ) /* bootleg */ - DRIVER( naughtybc ) /* (c) 1982 Jaleco + Cinematronics */ - DRIVER( popflame ) /* (c) 1982 Jaleco */ - DRIVER( popflamea ) /* (c) 1982 Jaleco */ - DRIVER( popflameb ) /* (c) 1982 Jaleco */ - DRIVER( popflamen ) /* (c) 1982 Jaleco */ - DRIVER( trvmstr ) /* (c) 1985 Enerdyne Technologies Inc. */ - DRIVER( trvmstra ) /* (c) 1985 Enerdyne Technologies Inc. */ - DRIVER( trvmstrb ) /* (c) 1985 Enerdyne Technologies Inc. */ - DRIVER( trvmstrc ) /* (c) 1985 Enerdyne Technologies Inc. */ - DRIVER( trvgns ) /* bootleg */ - - - - /* Namco games (plus some intruders on similar hardware) */ - DRIVER( geebee ) /* [1978] Namco */ - DRIVER( geebeeb ) /* [1978] Namco (F.lli Bertolino license) */ - DRIVER( geebeeg ) /* [1978] Gremlin */ - DRIVER( bombbee ) /* [1979] Namco */ - DRIVER( cutieq ) /* (c) 1979 Namco */ - DRIVER( navarone ) /* (c) 1980 Namco */ - DRIVER( kaitein ) /* [1980] Namco */ - DRIVER( kaitei ) /* [1980] K.K. Tokki */ - DRIVER( sos ) /* [1980] Namco */ - DRIVER( tankbatt ) /* (c) 1980 Namco */ - DRIVER( warpwarp ) /* (c) 1981 Namco */ - DRIVER( warpwarpr ) /* (c) 1981 [Namco] (Rock-ola license) */ - DRIVER( warpwarpr2 )/* (c) 1981 [Namco] (Rock-ola license) */ - DRIVER( rallyx ) /* (c) 1980 Namco */ - DRIVER( rallyxa ) /* (c) 1980 Namco */ - DRIVER( rallyxm ) /* (c) 1980 Midway */ - DRIVER( nrallyx ) /* (c) 1981 Namco */ - DRIVER( nrallyxb ) /* (c) 1981 Namco */ - DRIVER( jungler ) /* GX327 (c) 1981 Konami */ - DRIVER( junglers ) /* GX327 (c) 1981 Stern */ - DRIVER( tactcian ) /* GX335 (c) 1982 Sega */ - DRIVER( tactcian2 ) /* GX335 (c) 1981 Sega */ - DRIVER( locomotn ) /* GX359 (c) 1982 Konami + Centuri license */ - DRIVER( gutangtn ) /* GX359 (c) 1982 Konami + Sega license */ - DRIVER( cottong ) /* bootleg */ - DRIVER( locoboot ) /* bootleg */ - DRIVER( commsega ) /* (c) 1983 Sega */ - /* the following ones all have a custom I/O chip */ - DRIVER( bosco ) /* (c) 1981 */ - DRIVER( boscoo ) /* (c) 1981 */ - DRIVER( boscoo2 ) /* (c) 1981 */ - DRIVER( boscomd ) /* (c) 1981 Midway */ - DRIVER( boscomdo ) /* (c) 1981 Midway */ - DRIVER( galaga ) /* (c) 1981 */ - DRIVER( galagao ) /* (c) 1981 */ - DRIVER( galagamw ) /* (c) 1981 Midway */ - DRIVER( galagamk ) /* (c) 1981 Midway */ - DRIVER( galagamf ) /* (c) 1981 Midway / hack */ - DRIVER( gallag ) /* bootleg */ - DRIVER( gatsbee ) /* (c) 1984 Uchida / hack */ - DRIVER( digdug ) /* (c) 1982 */ - DRIVER( digdug1 ) /* (c) 1982 */ - DRIVER( digdugat ) /* 136007 (c) 1982 Atari */ - DRIVER( digdugat1 ) /* 136007 (c) 1982 Atari */ - DRIVER( dzigzag ) /* bootleg */ - DRIVER( digsid ) /* bootleg */ - DRIVER( xevious ) /* (c) 1982 */ - DRIVER( xeviousa ) /* 136018 (c) 1982 + Atari license */ - DRIVER( xeviousb ) /* 136018 (c) 1982 + Atari license */ - DRIVER( xeviousc ) /* 136018 (c) 1982 + Atari license */ - DRIVER( xevios ) /* bootleg */ - DRIVER( battles ) /* bootleg */ - DRIVER( sxevious ) /* (c) 1984 */ - DRIVER( sxeviousj ) /* (c) 1984 */ - DRIVER( superpac ) /* (c) 1982 */ - DRIVER( superpacm ) /* (c) 1982 Midway */ - DRIVER( pacnpal ) /* (c) 1983 */ - DRIVER( pacnpal2 ) /* (c) 1983 */ - DRIVER( pacnchmp ) /* (c) 1983 */ - DRIVER( phozon ) /* (c) 1983 */ - DRIVER( mappy ) /* (c) 1983 */ - DRIVER( mappyj ) /* (c) 1983 */ - DRIVER( digdug2 ) /* (c) 1985 */ - DRIVER( digdug2o ) /* (c) 1985 */ - DRIVER( todruaga ) /* (c) 1984 */ - DRIVER( todruagao ) /* (c) 1984 */ - DRIVER( todruagas ) /* (c) 1984 pcb manufactured by Sidam */ - DRIVER( motos ) /* (c) 1985 */ - DRIVER( grobda ) /* (c) 1984 */ - DRIVER( grobda2 ) /* (c) 1984 */ - DRIVER( grobda3 ) /* (c) 1984 */ - DRIVER( gaplus ) /* (c) 1984 */ - DRIVER( gaplusa ) /* (c) 1984 */ - DRIVER( gapluso ) /* (c) 1984 */ - DRIVER( galaga3 ) /* (c) 1984 */ - DRIVER( galaga3m ) /* (c) 1984 */ - DRIVER( galaga3a ) /* (c) 1984 */ - /* Libble Rabble board (first Japanese game using a 68000) */ - DRIVER( liblrabl ) /* (c) 1983 */ - DRIVER( toypop ) /* (c) 1986 */ - /* Z8000 games */ - DRIVER( polepos ) /* (c) 1982 */ - DRIVER( poleposa ) /* 136014 (c) 1982 + Atari license */ - DRIVER( polepos1 ) /* 136014 (c) 1982 Atari */ - DRIVER( topracer ) /* bootleg */ - DRIVER( topracera ) /* bootleg */ - DRIVER( topracern ) /* bootleg */ - DRIVER( polepos2 ) /* (c) 1983 */ - DRIVER( polepos2a ) /* 136014 (c) 1983 + Atari license */ - DRIVER( polepos2b ) /* bootleg */ - DRIVER( polepos2bi )/* bootleg */ - /* no custom I/O in the following, HD63701 (or compatible) microcontroller instead */ - DRIVER( pacland ) /* (c) 1984 */ - DRIVER( paclandj ) /* (c) 1984 */ - DRIVER( paclandjo ) /* (c) 1984 */ - DRIVER( paclandjo2 )/* (c) 1984 */ - DRIVER( paclandm ) /* (c) 1984 Midway */ - DRIVER( drgnbstr ) /* (c) 1984 */ - DRIVER( skykid ) /* (c) 1985 */ - DRIVER( skykido ) /* (c) 1985 */ - DRIVER( skykidd ) /* (c) 1985 */ - DRIVER( skykids ) /* (c) 1985 */ - DRIVER( aliensec ) /* (c) 1985 */ - DRIVER( baraduke ) /* (c) 1985 */ - DRIVER( metrocrs ) /* (c) 1985 */ - DRIVER( metrocrsa ) /* (c) 1985 */ - - /* Namco System 86 games */ - DRIVER( hopmappy ) /* (c) 1986 */ - DRIVER( skykiddx ) /* (c) 1986 */ - DRIVER( skykiddxo ) /* (c) 1986 */ - DRIVER( roishtar ) /* (c) 1986 */ - DRIVER( genpeitd ) /* (c) 1986 */ - DRIVER( rthunder ) /* (c) 1986 new version */ - DRIVER( rthundero ) /* (c) 1986 old version */ - DRIVER( wndrmomo ) /* (c) 1987 */ - - /* Thunder Ceptor HW */ - DRIVER( tceptor ) /* (c) 1986 */ - DRIVER( tceptor2 ) /* (c) 1986 */ - - DRIVER( kungfur ) /* (c) 1987 */ - - /* Namco System 1 games */ - DRIVER( shadowld ) /* (c) 1987 */ - DRIVER( youkaidk ) /* (c) 1987 (Japan new version) */ - DRIVER( youkaidko ) /* (c) 1987 (Japan old version) */ - DRIVER( dspirit ) /* (c) 1987 (Japan new version) */ - DRIVER( dspirito ) /* (c) 1987 (Japan old version) */ - DRIVER( dspirita ) /* (c) 1987 (Atari license) */ - DRIVER( blazer ) /* (c) 1987 (Japan) */ - DRIVER( quester ) /* (c) 1987 (Japan) */ - DRIVER( questers ) /* (c) 1987 (Japan) */ - DRIVER( pacmania ) /* (c) 1987 */ - DRIVER( pacmaniaj ) /* (c) 1987 (Japan) */ - DRIVER( galaga88 ) /* (c) 1987 */ - DRIVER( galaga88j ) /* (c) 1987 (Japan) */ - DRIVER( ws ) /* (c) 1988 (Japan) */ - DRIVER( berabohm ) /* (c) 1988 (Japan) */ - DRIVER( berabohmo ) /* (c) 1988 (Japan) */ - /* 1988 Alice in Wonderland (English version of Marchen maze) */ - DRIVER( mmaze ) /* (c) 1988 (Japan) */ - DRIVER( bakutotu ) /* (c) 1988 (Japan) */ - DRIVER( wldcourt ) /* (c) 1988 (Japan) */ - DRIVER( splatter ) /* (c) 1988 (World) */ - DRIVER( splattero ) /* (c) 1988 (World) */ - DRIVER( splatterj ) /* (c) 1988 (Japan) */ - DRIVER( faceoff ) /* (c) 1988 (Japan) */ - DRIVER( rompers ) /* (c) 1989 (Japan) */ - DRIVER( romperso ) /* (c) 1989 (Japan) */ - DRIVER( blastoff ) /* (c) 1989 (Japan) */ - DRIVER( ws89 ) /* (c) 1989 (Japan) */ - DRIVER( dangseed ) /* (c) 1989 (Japan) */ - DRIVER( ws90 ) /* (c) 1990 (Japan) */ - DRIVER( pistoldm ) /* (c) 1990 (Japan) */ - DRIVER( boxyboy ) /* (c) 1990 (US) */ - DRIVER( soukobdx ) /* (c) 1990 (Japan) */ - DRIVER( puzlclub ) /* (c) 1990 (Japan) */ - DRIVER( tankfrce ) /* (c) 1991 (US, 2 Player) */ - DRIVER( tankfrce4 ) /* (c) 1991 (US, 4 Player) */ - DRIVER( tankfrcej ) /* (c) 1991 (Japan) */ - - /* Namco System 2 games */ - DRIVER( finallap ) /* 87.12 Final Lap */ - DRIVER( finallapd ) /* 87.12 Final Lap */ - DRIVER( finallapc ) /* 87.12 Final Lap */ - DRIVER( finallapjc )/* 87.12 Final Lap */ - DRIVER( finallapjb )/* 87.12 Final Lap */ - DRIVER( assault ) /* (c) 1988 */ - DRIVER( assaultj ) /* (c) 1988 (Japan) */ - DRIVER( assaultp ) /* (c) 1988 (Japan) */ - DRIVER( metlhawk ) /* (c) 1988 */ - DRIVER( metlhawkj ) /* (c) 1988 */ - DRIVER( ordyne ) /* (c) 1988 */ - DRIVER( ordynej ) /* (c) 1988 */ - DRIVER( mirninja ) /* (c) 1988 (Japan) */ - DRIVER( phelios ) /* (c) 1988 (Japan) */ - DRIVER( dirtfoxj ) /* (c) 1989 (Japan) */ - DRIVER( fourtrax ) /* 89.11 */ - DRIVER( valkyrie ) /* (c) 1989 (Japan) */ - DRIVER( finehour ) /* (c) 1989 (Japan) */ - DRIVER( burnforc ) /* (c) 1989 (Japan) */ - DRIVER( burnforco ) /* (c) 1989 (Japan) */ - DRIVER( marvland ) /* (c) 1989 (US) */ - DRIVER( marvlandj ) /* (c) 1989 (Japan) */ - DRIVER( kyukaidk ) /* (c) 1990 (Japan) */ - DRIVER( kyukaidko ) /* (c) 1990 (Japan) */ - DRIVER( dsaber ) /* (c) 1990 */ - DRIVER( dsaberj ) /* (c) 1990 (Japan) */ - DRIVER( finalap2 ) /* 90.8 Final Lap 2 */ - DRIVER( finalap2j ) /* 90.8 Final Lap 2 (Japan) */ - DRIVER( gollygho ) /* 91.7 Golly Ghost */ - DRIVER( rthun2 ) /* (c) 1990 */ - DRIVER( rthun2j ) /* (c) 1990 (Japan) */ - DRIVER( sgunner ) /* (c) 1990 */ - DRIVER( sgunnerj ) /* (c) 1990 */ - DRIVER( sgunner2 ) /* (c) 1991 (US) */ - DRIVER( sgunner2j ) /* (c) 1991 (Japan) */ - DRIVER( cosmogng ) /* (c) 1991 (US) */ - DRIVER( cosmogngj ) /* (c) 1991 (Japan) */ - DRIVER( bubbletr ) /* (c) 1992 */ - DRIVER( finalap3 ) /* 92.9 Final Lap 3 */ - DRIVER( finalap3a ) /* 92.9 Final Lap 3 */ - DRIVER( finalap3j ) /* 92.9 Final Lap 3 */ - DRIVER( finalap3jc )/* (c) 1992 */ - DRIVER( luckywld ) /* (c) 1992 */ - DRIVER( luckywldj ) /* (c) 1992 */ - DRIVER( suzuka8h ) /* (c) 1992 (World) */ - DRIVER( suzuka8hj ) /* (c) 1992 (Japan) */ - DRIVER( sws ) /* (c) 1992 (Japan) */ - DRIVER( sws92 ) /* (c) 1992 (Japan) */ - DRIVER( sws92g ) /* (c) 1992 (Japan) */ - DRIVER( suzuk8h2 ) /* (c) 1993 (World) */ - DRIVER( sws93 ) /* (c) 1993 (Japan) */ - - /* Namco FL games */ - DRIVER( speedrcr ) /* (c) 1995 */ - DRIVER( finalapr ) /* (c) 1995 */ - DRIVER( finalaprj ) /* (c) 1995 */ - DRIVER( finalapro ) /* (c) 1995 */ - - /* Namco NA-1 / NA-2 System games */ - DRIVER( bkrtmaq ) /* (c) 1992 (Japan) */ - DRIVER( cgangpzl ) /* (c) 1992 (US) */ - DRIVER( cgangpzlj ) /* (c) 1992 (Japan) */ - DRIVER( exvania ) /* (c) 1992 (Japan) */ - DRIVER( fghtatck ) /* (c) 1992 (US) */ - DRIVER( fa ) /* (c) 1992 (Japan) */ - DRIVER( knckhead ) /* (c) 1992 (World) */ - DRIVER( knckheadj ) /* (c) 1992 (Japan) */ - DRIVER( swcourt ) /* (c) 1992 (Japan) */ - DRIVER( swcourtj ) /* (c) 1992 (Japan) */ - DRIVER( emeralda ) /* (c) 1993 (Japan) */ - DRIVER( emeraldaj ) /* (c) 1993 (Japan) */ - DRIVER( emeraldaja ) /* (c) 1993 (Japan) */ - DRIVER( numanath ) /* (c) 1993 (World) */ - DRIVER( numanathj ) /* (c) 1993 (Japan) */ - DRIVER( quiztou ) /* (c) 1993 (Japan) */ - DRIVER( tinklpit ) /* (c) 1993 (Japan) */ - DRIVER( xday2 ) /* (c) 1995 (Japan) */ - - /* Namco NB-1 / NB-2 System games */ - DRIVER( nebulray ) /* (c) 1994 (World) */ - DRIVER( nebulrayj ) /* (c) 1994 (Japan) */ - DRIVER( ptblank ) /* (c) 1994 (GN2 World) */ - DRIVER( gunbuletj ) /* (c) 1994 (GN1 Japan) */ - DRIVER( gunbuletw ) /* (c) 1994 (GN3 World) */ - DRIVER( gslugrsj ) /* (c) 1993 (Japan) */ - DRIVER( gslgr94u ) /* (c) 1994 */ - DRIVER( gslgr94j ) /* (c) 1994 (Japan) */ - DRIVER( sws95 ) /* (c) 1995 (Japan) */ - DRIVER( sws96 ) /* (c) 1996 (Japan) */ - DRIVER( sws97 ) /* (c) 1997 (Japan) */ - DRIVER( vshoot ) /* (c) 1994 */ - DRIVER( outfxies ) /* (c) 1994 (World) */ - DRIVER( outfxiesj ) /* (c) 1994 (Japan) */ - DRIVER( machbrkr ) /* (c) 1995 (Japan) */ - - /* Namco ND-1 games */ - DRIVER( ncv1 ) /* (c) 1995 */ - DRIVER( ncv1j ) /* (c) 1995 (Japan) */ - DRIVER( ncv1j2 ) /* (c) 1995 (Japan) */ - DRIVER( ncv2 ) /* (c) 1996 */ - DRIVER( ncv2j ) /* (c) 1996 (Japan) */ - - /* Namco System 21 games */ - DRIVER( winrun ) /* (c) 1988 */ - /* 1989, Winning Run Suzuka Grand Prix */ - DRIVER( winrun91 ) /* (c) 1991 */ - DRIVER( solvalou ) /* (c) 1991 (Japan) */ - DRIVER( starblad ) /* (c) 1991 */ - DRIVER( driveyes ) /* (c) 1992? */ - /* 1992, ShimDrive */ - DRIVER( aircomb ) /* (c) 1992 (US) */ - DRIVER( aircombj ) /* (c) 1992 (Japan) */ - DRIVER( cybsled ) /* (c) 1993 */ - DRIVER( cybsledj ) /* (c) 1993 */ - - /* Galaxian 3 HW */ - DRIVER( gal3 ) /* (c) 1992 (Arcade TV Game List - P.73, Right, 6 from top) */ - - /* Namco System 22 games */ - DRIVER( ridgerac ) /* (c) 1993 */ - DRIVER( ridgeracb ) /* (c) 1993 */ - DRIVER( ridgeracj ) /* (c) 1993 */ - DRIVER( ridgerac3 ) /* (c) 1993 */ - DRIVER( rrf ) /* (c) 1993 */ - DRIVER( acedrvrw ) /* (c) 1994 */ - DRIVER( alpinerd ) /* (c) 1994 */ - DRIVER( alpinerc ) /* (c) 1994 */ - DRIVER( ridgera2 ) /* (c) 1994 */ - DRIVER( ridgera2j ) /* (c) 1994 */ - DRIVER( ridgera2ja )/* (c) 1994 */ - DRIVER( raveracw ) /* (c) 1995 */ - DRIVER( raveracj ) /* (c) 1995 */ - DRIVER( raveracja ) /* (c) 1995 */ - DRIVER( airco22b ) /* (c) 1995 */ - DRIVER( alpinr2b ) /* (c) 1995 */ - DRIVER( alpinr2a ) /* (c) 1995 */ - DRIVER( cybrcomm ) /* (c) 1995 */ - DRIVER( cybrcycc ) /* (c) 1995 */ - DRIVER( timecris ) /* (c) 1995 */ - DRIVER( timecrisa ) /* (c) 1995 */ - DRIVER( dirtdash ) /* (c) 1995 */ - DRIVER( victlapw ) /* (c) 1996 */ - DRIVER( alpinesa ) /* (c) 1996 */ - DRIVER( propcycl ) /* (c) 1996 */ - DRIVER( tokyowar ) /* (c) 1996 */ - DRIVER( aquajet ) /* (c) 1996 */ - - /* Namco System 23 */ - DRIVER( finlflng ) /* July 1997 */ - DRIVER( motoxgo ) /* November 1997 */ - DRIVER( rapidrvr ) /* December 1997 */ - DRIVER( rapidrvr2 ) /* December 1997 */ - DRIVER( downhill ) /* March 1998 */ - DRIVER( timecrs2 ) /* April 1998 */ - DRIVER( timecrs2b ) /* April 1998 */ - DRIVER( timecrs2c ) /* April 1998 */ - DRIVER( panicprk ) /* May 1998 */ - DRIVER( raceon ) /* Race On - September 1998 */ - DRIVER( gunwars ) /* September 1998 */ - /* Angler King - March 1999 */ - DRIVER( 500gp ) /* March 1999 */ - DRIVER( finfurl2 ) /* March 1999 */ - DRIVER( finfurl2j ) /* March 1999 */ - /* Guitar Jam - July 1999 */ - DRIVER( crszone ) /* Crisis Zone - December 1999 */ - DRIVER( crszonea ) /* Crisis Zone - December 1999 */ - DRIVER( crszoneb ) /* Crisis Zone - December 1999 */ - - /* Namco System 246 */ - DRIVER( sys246 ) - DRIVER( rrvac ) - DRIVER( dragchrn ) - DRIVER( netchu02 ) - DRIVER( scptour ) - DRIVER( soulclb2 ) - DRIVER( soulcl2a ) - DRIVER( soulcl2b ) - DRIVER( tekken4 ) - DRIVER( tekken4a ) - DRIVER( tekken4b ) - DRIVER( timecrs3 ) - DRIVER( zgundm ) - DRIVER( fghtjam ) - DRIVER( sukuinuf ) - DRIVER( zgundmdx ) - DRIVER( gundzaft ) - DRIVER( soulclb3 ) - - /* Namco System 256 */ - DRIVER( sys256 ) - DRIVER( tekken51 ) - DRIVER( kinniku ) - DRIVER( taiko9 ) - DRIVER( taiko10 ) - - /* Misc Namco games */ - DRIVER( 25pacman ) /* (c) 2005 Ver 2.0 - Same hardware as 20pacgal */ - DRIVER( 20pacgal ) /* (c) 2000 Ver 1.08 */ - DRIVER( 20pacgalr4 ) /* (c) 2000 Ver 1.04 */ - DRIVER( 20pacgalr3 ) /* (c) 2000 Ver 1.03 */ - DRIVER( 20pacgalr2 ) /* (c) 2000 Ver 1.02 */ - DRIVER( 20pacgalr1 ) /* (c) 2000 Ver 1.01 */ - DRIVER( 20pacgalr0 ) /* (c) 2000 Ver 1.00 */ - DRIVER( turrett ) /* (c) 2001 licensed from Dell Electronics */ - - /* Universal games */ - DRIVER( cosmicg ) /* 7907 (c) 1979 */ - DRIVER( cosmica ) /* 7910-AII (c) [1979] */ - DRIVER( cosmica1 ) /* 7910-A (c) [1979] */ - DRIVER( cosmica2 ) /* 7910 (c) 1979 */ - DRIVER( nomnlnd ) /* 8003 (c) [1980?] */ - DRIVER( nomnlndg ) /* 8003 (c) [1980?] + Gottlieb */ - DRIVER( magspot ) /* ???? (c) [1980] */ - DRIVER( magspot2 ) /* 8013 (c) [1980] */ - DRIVER( panic ) /* 8015 (c) 1980 */ - DRIVER( panic2 ) /* 8015 (c) 1980 */ - DRIVER( panic3 ) /* 8015 (c) 1980 */ - DRIVER( panich ) /* 8015 (c) 1980 */ - DRIVER( panicger ) /* 8015 (c) 1980 */ - DRIVER( devzone ) /* 8022 (c) [1980] */ - DRIVER( devzone2 ) /* 8022 (c) [1980] */ - DRIVER( cheekyms ) /* 8004 (c) [1980?] */ - DRIVER( zerohour ) /* 8011 (c) Universal */ - DRIVER( zerohoura ) /* 8011 (c) Universal */ - DRIVER( redclash ) /* (c) 1981 Tehkan */ - DRIVER( redclasha ) /* (c) 1981 Tehkan */ - DRIVER( redclashk ) /* (c) Kaneko (bootleg?) */ - DRIVER( cavenger ) /* 8106 (c) 1981 */ - DRIVER( ladybug ) /* 8110 (c) 1981 */ - DRIVER( ladybugb ) /* bootleg */ - DRIVER( ladybgb2 ) /* bootleg */ - DRIVER( snapjack ) /* ???? (c) */ - DRIVER( sraider ) /* ???? (c) 1982 Universal */ - DRIVER( dorodon ) /* Falcon */ - DRIVER( dorodon2 ) /* Falcon */ - DRIVER( mrdo ) /* 8201 (c) 1982 */ - DRIVER( mrdoy ) /* 8201 (c) 1982 */ - DRIVER( mrdot ) /* 8201 (c) 1982 + Taito license */ - DRIVER( mrdofix ) /* 8201 (c) 1982 + Taito license */ - DRIVER( mrlo ) /* bootleg */ - DRIVER( mrdu ) /* bootleg */ - DRIVER( yankeedo ) /* bootleg */ - DRIVER( docastle ) /* 8302 (c) 1983 */ - DRIVER( docastle2 ) /* 8302 (c) 1983 */ - DRIVER( docastleo ) /* 8302 (c) 1983 */ - DRIVER( douni ) /* 8302 (c) 1983 */ - DRIVER( dorunrun ) /* ???? (c) 1984 */ - DRIVER( dorunrun2 ) /* ???? (c) 1984 */ - DRIVER( dorunrunc ) /* ???? (c) 1984 */ - DRIVER( dorunrunca )/* ???? (c) 1984 */ - DRIVER( spiero ) /* ???? (c) 1987 */ - DRIVER( dowild ) /* ???? (c) 1984 */ - DRIVER( jjack ) /* ???? (c) 1984 */ - DRIVER( kickridr ) /* ???? (c) 1984 */ - DRIVER( idsoccer ) /* ???? (c) 1985 */ - DRIVER( idsoccera ) /* ???? (c) 1985 */ - DRIVER( asoccer ) /* 8461 (c) 1987 */ - DRIVER( superdq ) /* ???? (c) 1984 */ - DRIVER( superdqs ) /* ???? (c) 1984 */ - DRIVER( superdqa ) /* ???? (c) 1984 */ - - /* Nintendo games */ - DRIVER( spacefev ) /* (c) 1979 Nintendo */ - DRIVER( spacefevo ) /* (c) 1979 Nintendo */ - DRIVER( spacefevo2 )/* (c) 1979 Nintendo */ - DRIVER( highsplt ) /* (c) 1979 Nintendo */ - DRIVER( highsplta ) /* (c) 1979 Nintendo */ - DRIVER( highspltb ) /* (c) 1979 Nintendo */ - DRIVER( spacelnc ) /* (c) 1979 Nintendo */ - DRIVER( sheriff ) /* (c) 1979 Nintendo */ - DRIVER( bandido ) /* (c) 1980 Exidy */ - DRIVER( helifire ) /* (c) 1980 Nintendo */ - DRIVER( helifirea ) /* (c) 1980 Nintendo */ - DRIVER( radarscp ) /* (c) 1980 Nintendo */ - DRIVER( radarscp1 ) /* (c) 1980 Nintendo */ - DRIVER( dkong ) /* (c) 1981 Nintendo of America */ - DRIVER( dkongo ) /* (c) 1981 Nintendo */ - DRIVER( dkongj ) /* (c) 1981 Nintendo */ - DRIVER( dkongjo ) /* (c) 1981 Nintendo */ - DRIVER( dkongjo1 ) /* (c) 1981 Nintendo */ - DRIVER( dkongf ) /* hack from Jeff's Romhack */ - DRIVER( dkongx ) /* hack */ - DRIVER( dkongx11 ) /* hack */ - DRIVER( dkongjr ) /* (c) 1982 Nintendo of America */ - DRIVER( dkongjrj ) /* (c) 1982 Nintendo */ - DRIVER( dkongjnrj ) /* (c) 1982 Nintendo */ - DRIVER( dkongjrb ) /* bootleg */ - DRIVER( jrking ) /* bootleg */ - DRIVER( dkongjre ) /* (c) 1982 Nintendo of America */ - DRIVER( dkong3 ) /* (c) 1983 Nintendo of America */ - DRIVER( dkong3j ) /* (c) 1983 Nintendo */ - DRIVER( dkong3b ) /* bootleg */ - DRIVER( mario ) /* (c) 1983 Nintendo of America */ - DRIVER( marioe ) /* (c) 1983 Nintendo of America */ - DRIVER( marioo ) /* (c) 1983 Nintendo of America */ - DRIVER( marioj ) /* (c) 1983 Nintendo */ - DRIVER( masao ) /* bootleg */ - DRIVER( pestplce ) /* bootleg on donkey kong hw */ - DRIVER( spclforc ) /* (c) 1985 Senko Industries (Magic Eletronics Inc. license) */ - DRIVER( spcfrcii ) /* (c) 1985 Senko Industries (Magic Eletronics Inc. license) */ - DRIVER( 8ballact ) /* (c) 1984 Seatongrove Ltd (Magic Eletronics USA license) */ - DRIVER( 8ballact2 ) /* (c) 1984 Seatongrove Ltd (Magic Eletronics USA license) */ - DRIVER( shootgal ) /* (c) 1984 Seatongrove Ltd (Zaccaria license) */ - DRIVER( drakton ) /* (c) 1984 Epos Corporation */ - DRIVER( drktnjr ) /* (c) 1984 Epos Corporation */ - DRIVER( strtheat ) /* (c) 1985 Epos Corporation */ - DRIVER( hunchbkd ) /* (c) 1983 Century */ - DRIVER( sbdk ) /* (c) 1984 Century */ - DRIVER( herbiedk ) /* (c) 1984 CVS */ - DRIVER( herodk ) /* (c) 1984 Seatongrove + Crown license */ - DRIVER( herodku ) /* (c) 1984 Seatongrove + Crown license */ - DRIVER( skyskipr ) /* (c) 1981 */ - DRIVER( popeye ) /* (c) 1982 */ - DRIVER( popeyeu ) /* (c) 1982 */ - DRIVER( popeyef ) /* (c) 1982 */ - DRIVER( popeyebl ) /* bootleg */ - DRIVER( punchout ) /* (c) 1984 */ - DRIVER( punchita ) /* bootleg */ - DRIVER( spnchout ) /* (c) 1984 */ - DRIVER( spnchoutj ) /* (c) 1984 (Japan) */ - DRIVER( armwrest ) /* (c) 1985 */ - - /* Nintendo Playchoice 10 games */ - DRIVER( playch10 ) - DRIVER( pc_tenis ) /* (c) 1983 Nintendo */ - DRIVER( pc_mario ) /* (c) 1983 Nintendo */ - DRIVER( pc_bball ) /* (c) 1984 Nintendo of America */ - DRIVER( pc_bfght ) /* (c) 1984 Nintendo */ - DRIVER( pc_ebike ) /* (c) 1984 Nintendo */ - DRIVER( pc_golf ) /* (c) 1984 Nintendo */ - DRIVER( pc_kngfu ) /* (c) 1984 Irem (Nintendo license) */ - DRIVER( pc_1942 ) /* (c) 1985 Capcom */ - DRIVER( pc_smb ) /* (c) 1985 Nintendo */ - DRIVER( pc_vball ) /* (c) 1986 Nintendo */ - DRIVER( pc_duckh ) /* (c) 1984 Nintendo */ - DRIVER( pc_hgaly ) /* (c) 1984 Nintendo */ - DRIVER( pc_wgnmn ) /* (c) 1984 Nintendo */ - DRIVER( pc_grdus ) /* (c) 1986 Konami */ - DRIVER( pc_grdue ) /* (c) 1986 Konami */ - DRIVER( pc_tkfld ) /* (c) 1987 Konami (Nintendo of America license) */ - DRIVER( pc_pwrst ) /* (c) 1986 Nintendo */ - DRIVER( pc_trjan ) /* (c) 1986 Capcom USA (Nintendo of America license) */ - DRIVER( pc_cvnia ) /* (c) 1987 Konami (Nintendo of America license) */ - DRIVER( pc_dbldr ) /* (c) 1987 Konami (Nintendo of America license) */ - DRIVER( pc_rnatk ) /* (c) 1987 Konami (Nintendo of America license) */ - DRIVER( pc_rygar ) /* (c) 1987 Tecmo (Nintendo of America license) */ - DRIVER( pc_cntra ) /* (c) 1988 Konami (Nintendo of America license) */ - DRIVER( pc_goons ) /* (c) 1986 Konami */ - DRIVER( pc_mtoid ) /* (c) 1986 Nintendo */ - DRIVER( pc_radrc ) /* (c) 1987 Square */ - DRIVER( pc_miket ) /* (c) 1987 Nintendo */ - DRIVER( pc_rcpam ) /* (c) 1987 Rare */ - DRIVER( pc_ngaid ) /* (c) 1989 Tecmo (Nintendo of America license) */ - DRIVER( pc_tmnt ) /* (c) 1989 Konami (Nintendo of America license) */ - DRIVER( pc_ftqst ) /* (c) 1989 Sunsoft (Nintendo of America license) */ - DRIVER( pc_bstar ) /* (c) 1989 SNK (Nintendo of America license) */ - DRIVER( pc_tbowl ) /* (c) 1989 Tecmo (Nintendo of America license) */ - DRIVER( pc_drmro ) /* (c) 1990 Nintendo */ - DRIVER( pc_ynoid ) /* (c) 1990 Capcom USA (Nintendo of America license) */ - DRIVER( pc_rrngr ) /* (c) Capcom USA (Nintendo of America license) */ - DRIVER( pc_ddrgn ) /* (c) 1988 Technos */ - DRIVER( pc_gntlt ) /* (c) 1985 Atari/Tengen (Nintendo of America license) */ - DRIVER( pc_smb2 ) /* (c) 1988 Nintendo */ - DRIVER( pc_smb3 ) /* (c) 1988 Nintendo */ - DRIVER( pc_mman3 ) /* (c) 1990 Capcom USA (Nintendo of America license) */ - DRIVER( pc_radr2 ) /* (c) 1990 Square (Nintendo of America license) */ - DRIVER( pc_suprc ) /* (c) 1990 Konami (Nintendo of America license) */ - DRIVER( pc_tmnt2 ) /* (c) 1990 Konami (Nintendo of America license) */ - DRIVER( pc_wcup ) /* (c) 1990 Technos (Nintendo license) */ - DRIVER( pc_ngai2 ) /* (c) 1990 Tecmo (Nintendo of America license) */ - DRIVER( pc_ngai3 ) /* (c) 1991 Tecmo (Nintendo of America license) */ - DRIVER( pc_pwbld ) /* (c) 1991 Taito (Nintendo of America license) */ - DRIVER( pc_rkats ) /* (c) 1991 Atlus (Nintendo of America license) */ - DRIVER( pc_pinbt ) /* (c) 1988 Rare (Nintendo of America license) */ - DRIVER( pc_cshwk ) /* (c) 1989 Rare (Nintendo of America license) */ - DRIVER( pc_sjetm ) /* (c) 1990 Rare */ - DRIVER( pc_moglf ) /* (c) 1991 Nintendo */ - - /* Nintendo VS games */ - DRIVER( btlecity ) /* (c) 1985 Namco */ - DRIVER( starlstr ) /* (c) 1985 Namco */ - DRIVER( cstlevna ) /* (c) 1987 Konami */ - DRIVER( cluclu ) /* (c) 1984 Nintendo */ - DRIVER( drmario ) /* (c) 1990 Nintendo */ - DRIVER( duckhunt ) /* (c) 1985 Nintendo */ - DRIVER( excitebk ) /* (c) 1984 Nintendo */ - DRIVER( excitebkj ) /* (c) 1984 Nintendo */ - DRIVER( goonies ) /* (c) 1986 Konami */ - DRIVER( hogalley ) /* (c) 1985 Nintendo */ - DRIVER( iceclimb ) /* (c) 1984 Nintendo */ - DRIVER( iceclimbj ) /* (c) 1984 Nintendo */ - DRIVER( ladygolf ) /* (c) 1984 Nintendo */ - DRIVER( ladygolfe ) /* (c) 1984 Nintendo */ - DRIVER( machridr ) /* (c) 1985 Nintendo */ - DRIVER( machridrj ) /* (c) 1985 Nintendo */ - DRIVER( rbibb ) /* (c) 1987 Namco */ - DRIVER( rbibba ) /* (c) 1987 Namco */ - DRIVER( suprmrio ) /* (c) 1986 Nintendo */ - DRIVER( suprmrioa ) /* (c) 1986 Nintendo */ - DRIVER( suprmriobl ) /* bootleg */ - DRIVER( suprmriobl2 )/* bootleg */ - DRIVER( skatekds ) /* (c) 1988 (hack) */ - DRIVER( vsskykid ) /* (c) 1986 Namco */ - DRIVER( tkoboxng ) /* (c) 1987 Data East */ - DRIVER( smgolf ) /* (c) 1984 Nintendo */ - DRIVER( smgolfj ) /* (c) 1984 Nintendo */ - DRIVER( vspinbal ) /* (c) 1984 Nintendo */ - DRIVER( vspinbalj ) /* (c) 1984 Nintendo */ - DRIVER( vsslalom ) /* (c) 1986 Nintendo */ - DRIVER( vssoccer ) /* (c) 1985 Nintendo */ - DRIVER( vssoccerj ) /* (c) 1985 Nintendo */ - DRIVER( vsgradus ) /* (c) 1986 Konami */ - DRIVER( platoon ) /* (c) 1987 Ocean */ - DRIVER( vstetris ) /* (c) 1988 Atari */ - DRIVER( mightybj ) /* (c) 1986 Tecmo */ - DRIVER( jajamaru ) /* (c) 1985 Jaleco */ - DRIVER( topgun ) /* (c) 1987 Konami */ - DRIVER( bnglngby ) /* (c) 1985 Nintendo / Broderbund Software Inc. */ - DRIVER( vstennis ) /* (c) 1984 Nintendo */ - DRIVER( vstennisj ) /* (c) 1984 Nintendo */ - DRIVER( wrecking ) /* (c) 1984 Nintendo */ - DRIVER( balonfgt ) /* (c) 1984 Nintendo */ - DRIVER( vsmahjng ) /* (c) 1984 Nintendo */ - DRIVER( vsbball ) /* (c) 1984 Nintendo */ - DRIVER( vsbballj ) /* (c) 1984 Nintendo */ - DRIVER( vsbballja ) /* (c) 1984 Nintendo */ - DRIVER( vsbballjb ) /* (c) 1984 Nintendo */ - DRIVER( iceclmrj ) /* (c) 1984 Nintendo */ - DRIVER( vsgshoe ) /* (c) 1986 Nintendo */ - DRIVER( supxevs ) /* (c) 1986 Nintendo */ - DRIVER( vsfdf ) /* (c) 1986 Sunsoft */ - DRIVER( smgolfb ) /* (c) 1985 Nintendo */ - - /* NES-based hacks */ - DRIVER( multigam ) /* 1992 */ - DRIVER( multigmb ) /* 1992 */ - DRIVER( multigm2 ) /* 1992 */ - DRIVER( multigm3 ) /* 19?? */ - DRIVER( multigmt ) - DRIVER( supergm3 ) /* 1996 */ - DRIVER( cham24 ) /* 2002 */ - - /* Famicom Box */ - DRIVER( famibox ) /* 1986 */ - - /* Nintendo Super System Games */ - DRIVER( nss ) - DRIVER( nss_ssoc ) /* 1992 Human Inc. */ - DRIVER( nss_actr ) /* 1992 Enix */ - DRIVER( nss_con3 ) /* 1992 Konami */ - DRIVER( nss_adam ) /* 1992 Ocean */ - DRIVER( nss_aten ) /* 1992 Absolute Entertainment Inc. */ - DRIVER( nss_rob3 ) /* 1992 Ocean */ - DRIVER( nss_ncaa ) /* 1992 Sculptured Software Inc. */ - DRIVER( nss_skin ) /* 1992 Irem */ - DRIVER( nss_lwep ) /* 1992 Nintendo */ - DRIVER( nss_smw ) /* 1991 Nintendo */ - DRIVER( nss_fzer ) /* 1991 Nintendo */ - DRIVER( nss_sten ) /* 199? Nintendo */ - - /* Super Famicom Box Games */ - DRIVER( sfcbox ) - //pss61 - Super Mario Kart / Super Mario Collection / Star Fox - DRIVER( pss62 ) /* 199? T & E Soft / I'Max */ - //pss63 - Super Donkey Kong / Super Tetris 2 + Bombliss - //pss64 - Super Donkey Kong / Super Bomberman 2 - - /* SNES-based hacks */ - DRIVER( kinstb ) /* bootleg */ - DRIVER( ffight2b ) /* bootleg */ - DRIVER( sblast2b ) /* bootleg */ - DRIVER( iron ) /* bootleg */ - DRIVER( endless ) /* bootleg */ - DRIVER( denseib ) /* bootleg */ - - - /* Midway 8080 b/w games */ - DRIVER( seawolf ) /* 596 [1976] */ - DRIVER( seawolfo ) /* 596 [1976] */ - DRIVER( gunfight ) /* 597 [1975] */ - DRIVER( gunfighto ) /* 597 [1975] */ - /* 603 - Top Gun [1976] */ - DRIVER( tornbase ) /* 605 [1976] */ - DRIVER( 280zzzap ) /* 610 [1976] */ - DRIVER( maze ) /* 611 [1976] */ - DRIVER( boothill ) /* 612 [1977] */ - DRIVER( checkmat ) /* 615 [1977] */ - DRIVER( desertgu ) /* 618 [1977] */ - DRIVER( roadrunm ) /* 618 [1977] */ - DRIVER( dplay ) /* 619 [1977] */ - DRIVER( lagunar ) /* 622 [1977] */ - DRIVER( gmissile ) /* 623 [1977] */ - DRIVER( m4 ) /* 626 [1977] */ - DRIVER( clowns ) /* 630 [1978] */ - DRIVER( clowns1 ) /* 630 [1978] */ - DRIVER( spacwalk ) /* 640 [1978] */ - DRIVER( einning ) /* 642 [1978] Midway */ - DRIVER( shuffle ) /* 643 [1978] */ - DRIVER( dogpatch ) /* 644 [1977] */ - DRIVER( spcenctr ) /* 645 (c) 1980 Midway */ - DRIVER( phantom2 ) /* 652 [1979] */ - DRIVER( bowler ) /* 730 [1978] Midway */ - DRIVER( invaders ) /* 739 [1979] */ - DRIVER( blueshrk ) /* 742 [1978] */ - DRIVER( invad2ct ) /* 851 (c) 1980 Midway */ - DRIVER( invadpt2 ) /* 852 [1980] Taito */ - DRIVER( invaddlx ) /* 852 [1980] Midway */ - DRIVER( vortex ) /* 852 [1980] Zilec Electronics Ltd. */ - DRIVER( moonbase ) /* Taito */ - DRIVER( moonbasea ) /* Zeta - Nichibutsu */ - /* 870 - Space Invaders Deluxe cocktail */ - DRIVER( searthin ) /* bootleg */ - DRIVER( searthina ) /* bootleg */ - DRIVER( invadrmr ) /* (c) 1978 Model Racing */ - DRIVER( modelr ) /* (c) 19?? Model Racing */ - DRIVER( spaceatt ) /* (c) 1978 Video Games GMBH */ - DRIVER( spaceat2 ) /* (c) 1980 Zenitone-Microsec Ltd */ - DRIVER( sinvzen ) /* Zenitone-Microsec Ltd */ - DRIVER( superinv ) /* bootleg */ - DRIVER( invasion ) /* Sidam */ - DRIVER( invasiona ) /* bootleg */ - DRIVER( invasionb ) /* bootleg */ - DRIVER( invasionrz ) /* bootleg */ - DRIVER( invasionrza )/* bootleg */ - DRIVER( sstrangr ) /* (c) 1978 Yachiyo Electronics, Ltd. */ - DRIVER( sstrangr2 ) /* (c) 1979 Yachiyo Electronics, Ltd. */ - DRIVER( sinvemag ) /* Zenitone-Microsec Ltd. */ - DRIVER( jspecter ) /* (c) 1979 Jatre */ - DRIVER( jspecter2 ) /* (c) 1979 Jatre */ - DRIVER( invrvnge ) /* Zenitone-Microsec Ltd. */ - DRIVER( invrvngea ) /* Zenitone-Microsec Ltd. (Dutchford license) */ - DRIVER( galxwars ) /* (c) 1979 Universal */ - DRIVER( galxwars2 ) /* (c) 1979 Universal */ - DRIVER( galxwarst ) /* (c) 1979 Taito? */ - DRIVER( starw ) /* bootleg */ - DRIVER( lrescue ) /* LR (c) 1979 Taito */ - DRIVER( mlander ) /* (c) 1980 Leisure Time Electronics */ - DRIVER( lrescuem ) /* Model Racing bootleg */ - DRIVER( grescue ) /* bootleg? */ - DRIVER( desterth ) /* bootleg */ - DRIVER( cosmicmo ) /* Universal */ - DRIVER( cosmicm2 ) /* Universal */ - DRIVER( rollingc ) /* Nichibutsu */ - DRIVER( ozmawars ) /* Shin Nihon Kikaku (SNK) */ - DRIVER( ozmawars2 ) /* Shin Nihon Kikaku (SNK) */ - DRIVER( solfight ) /* bootleg */ - DRIVER( spaceph ) /* Zilec Games */ - DRIVER( galactic ) /* (c) 19?? Taito */ - DRIVER( spacmiss ) /* bootleg? */ - DRIVER( schaser ) /* RT Taito */ - DRIVER( schasercv ) /* RT Taito */ - DRIVER( lupin3 ) /* LP (c) 1980 Taito */ - DRIVER( lupin3a ) /* LP (c) 1980 Taito */ - DRIVER( intruder ) /* (c) 1980 GamePlan (Taito) */ - DRIVER( spclaser ) /* (c) 1980 GamePlan (Taito) */ - DRIVER( laser ) /* (c) 1980 Leisure Time Electronics Inc. */ - DRIVER( spcewarl ) /* (c) 1979 Leijac Corporation (Konami) */ - DRIVER( polaris ) /* PS (c) 1980 Taito */ - DRIVER( polarisa ) /* PS (c) 1980 Taito */ - DRIVER( polariso ) /* PS (c) 1980 Taito */ - DRIVER( ballbomb ) /* TN (c) 1980 Taito */ - DRIVER( indianbt ) /* (c) 1980 Taito */ - DRIVER( steelwkr ) /* (c) 1980 Taito */ - DRIVER( m79amb ) /* (c) 1977 RamTek */ - DRIVER( alieninv ) /* Margamatics */ - DRIVER( alieninvp2 ) /* bootleg */ - DRIVER( tst_invd ) /* Test ROM */ - DRIVER( sitv ) /* (c) 1979 Taito */ - DRIVER( sicv ) /* (c) 1979 Taito */ - DRIVER( sisv ) /* (c) 1978 Taito */ - DRIVER( sisv2 ) /* (c) 1978 Taito */ - DRIVER( spacewr3 ) /* bootleg */ - DRIVER( invaderl ) /* bootleg */ - DRIVER( invader4 ) /* bootleg */ - DRIVER( yosakdon ) /* (c) 1979 Yosaku To Donbei */ - DRIVER( yosakdona ) /* (c) 1979 Yosaku To Donbei */ - DRIVER( spceking ) /* (c) 1978 Leijac Corporation (Konami) */ - DRIVER( spcewars ) /* (c) 1978 Sanritsu */ - DRIVER( astropal ) /* (c) 19?? Sidam */ - DRIVER( cosmo ) /* TDS+Mints */ - DRIVER( darthvdr ) /* bootleg */ - - DRIVER( 18w ) /* 653 (c) 1979 Midway */ - DRIVER( 18w2 ) /* 653 (c) 1979 Midway */ - DRIVER( sspeedr ) /* 1979 Midway */ - - /* Similar but with a M6800 instead of an 8080 */ - DRIVER( sflush ) /* (c)1979 Taito */ - - /* Meadows S2650 games */ - DRIVER( lazercmd ) /* [1976?] */ - DRIVER( bbonk ) /* [1976?] */ - DRIVER( deadeye ) /* [1978?] */ - DRIVER( bowl3d ) /* [1978?] */ - DRIVER( gypsyjug ) /* [1978?] */ - DRIVER( minferno ) /* [1978?] */ - DRIVER( medlanes ) /* [1977?] */ - - /* CVS games */ - DRIVER( cosmos ) /* (c) 1981 Century */ - DRIVER( darkwar ) /* (c) 1981 Century */ - DRIVER( spacefrt ) /* (c) 1981 Century */ - DRIVER( 8ball ) /* (c) 1982 Century */ - DRIVER( 8ball1 ) /* (c) 1982 Century */ - DRIVER( logger ) /* (c) 1982 Century */ - DRIVER( dazzler ) /* (c) 1982 Century */ - DRIVER( diggerc ) /* (c) 1982 Century */ - DRIVER( wallst ) /* (c) 1982 Century */ - DRIVER( radarzon ) /* (c) 1982 Century */ - DRIVER( radarzon1 ) /* (c) 1982 Century */ - DRIVER( radarzont ) /* (c) 1982 Tuni Electro Service */ - DRIVER( outline ) /* (c) 1982 Century */ - DRIVER( goldbug ) /* (c) 1982 Century */ - DRIVER( heartatk ) /* (c) 1983 Century Electronics */ - DRIVER( hunchbak ) /* (c) 1983 Century */ - DRIVER( hunchbaka ) /* (c) 1983 Century */ - DRIVER( superbik ) /* (c) 1983 Century */ - DRIVER( raiders ) /* (c) 1983 Century Electronics UK */ - DRIVER( hero ) /* (c) 1983 Seatongrove (c) 1984 CVS */ - DRIVER( huncholy ) /* (c) 1984 Seatongrove (c) CVS */ - - /* Zaccaria Hardware (similar to CVS) */ - DRIVER( quasar ) /* (c) 1980 Zelco Games Italy */ - DRIVER( quasara ) /* (c) 1980 Zelco Games Italy */ - - /* Midway "Astrocade" games */ - DRIVER( seawolf2 ) /* (c) 1978 */ - DRIVER( spacezap ) /* (c) 1980 */ - DRIVER( ebases ) /* (c) 1980 */ - DRIVER( wow ) /* (c) 1980 */ - DRIVER( wowg ) /* (c) 1980 */ - DRIVER( gorf ) /* (c) 1981 */ - DRIVER( gorfpgm1 ) /* (c) 1981 */ - DRIVER( gorfpgm1g ) /* (c) 1981 */ - DRIVER( robby ) /* (c) 1981 Bally Midway */ - DRIVER( demndrgn ) /* (c) 1982 Bally Midway */ - DRIVER( profpac ) /* (c) 1983 Bally Midway */ - DRIVER( tenpindx ) /* (c) 1983 Bally Midway */ - - /* Bally Midway MCR games */ - /* MCR1 */ - DRIVER( solarfox ) /* (c) 1981 */ - DRIVER( kick ) /* (c) 1981 */ - DRIVER( kickman ) /* (c) 1981 */ - DRIVER( kickc ) /* (c) 1981 */ - /* MCR2 */ - DRIVER( shollow ) /* (c) 1981 */ - DRIVER( shollow2 ) /* (c) 1981 */ - DRIVER( tron ) /* (c) 1982 */ - DRIVER( tron2 ) /* (c) 1982 */ - DRIVER( tron3 ) /* (c) 1982 */ - DRIVER( tron4 ) /* (c) 1982 */ - DRIVER( kroozr ) /* (c) 1982 */ - DRIVER( domino ) /* (c) 1982 */ - DRIVER( wacko ) /* (c) 1982 */ - DRIVER( twotiger ) /* (c) 1984 */ - DRIVER( twotigerc ) /* (c) 1984 */ - /* MCR2 + MCR3 sprites */ - DRIVER( journey ) /* (c) 1983 */ - /* MCR3 */ - DRIVER( tapper ) /* (c) 1983 */ - DRIVER( tappera ) /* (c) 1983 */ - DRIVER( sutapper ) /* (c) 1983 */ - DRIVER( rbtapper ) /* (c) 1984 */ - DRIVER( timber ) /* (c) 1984 */ - DRIVER( dotron ) /* (c) 1983 */ - DRIVER( dotrona ) /* (c) 1983 */ - DRIVER( dotrone ) /* (c) 1983 */ - DRIVER( nflfoot ) /* (c) 1983 + laserdisk */ - DRIVER( demoderb ) /* (c) 1984 */ - DRIVER( demoderm ) /* (c) 1984 */ - DRIVER( sarge ) /* (c) 1985 */ - DRIVER( rampage ) /* (c) 1986 */ - DRIVER( rampage2 ) /* (c) 1986 */ - DRIVER( powerdrv ) /* (c) 1986 */ - DRIVER( stargrds ) /* (c) 1987 */ - DRIVER( maxrpm ) /* (c) 1986 */ - DRIVER( spyhunt ) /* (c) 1983 */ - DRIVER( spyhuntp ) /* (c) 1983 */ - DRIVER( turbotag ) /* (c) 1985 */ - DRIVER( crater ) /* (c) 1984 */ - /* MCR 68000 */ - DRIVER( zwackery ) /* (c) 1984 */ - DRIVER( xenophob ) /* (c) 1987 */ - DRIVER( spyhunt2 ) /* (c) 1987 */ - DRIVER( spyhunt2a ) /* (c) 1987 */ - DRIVER( intlaser ) /* (c) 1987 */ - DRIVER( blasted ) /* (c) 1988 */ - DRIVER( archrivl ) /* (c) 1989 */ - DRIVER( archrivl2 ) /* (c) 1989 */ - DRIVER( trisport ) /* (c) 1989 */ - DRIVER( pigskin ) /* (c) 1990 */ - DRIVER( pigskina ) /* (c) 1990 */ - - /* Bally / Sente games */ - DRIVER( sentetst ) - DRIVER( cshift ) /* (c) 1984 */ - DRIVER( gghost ) /* (c) 1984 */ - DRIVER( hattrick ) /* (c) 1984 */ - DRIVER( otwalls ) /* (c) 1984 */ - DRIVER( snakepit ) /* (c) 1984 */ - DRIVER( snakjack ) /* (c) 1984 */ - DRIVER( stocker ) /* (c) 1984 */ - DRIVER( triviag1 ) /* (c) 1984 */ - DRIVER( trivia12 ) /* (c) 1984 */ - DRIVER( triviag2 ) /* (c) 1984 */ - DRIVER( triviasp ) /* (c) 1984 */ - DRIVER( triviayp ) /* (c) 1984 */ - DRIVER( triviabb ) /* (c) 1984 */ - DRIVER( triviaes ) /* (c) 1984 */ - DRIVER( gimeabrk ) /* (c) 1985 */ - DRIVER( minigolf ) /* (c) 1985 */ - DRIVER( minigolf2 ) /* (c) 1985 */ - DRIVER( toggle ) /* (c) 1985 */ - DRIVER( nametune ) /* (c) 1986 */ - DRIVER( nametune2 ) /* (c) 1986 */ - DRIVER( nstocker ) /* (c) 1986 */ - DRIVER( nstocker2 ) /* (c) 1986 */ - DRIVER( sfootbal ) /* (c) 1986 */ - DRIVER( spiker ) /* (c) 1986 */ - DRIVER( stompin ) /* (c) 1986 */ - DRIVER( rescraid ) /* (c) 1987 */ - DRIVER( rescraida ) /* (c) 1987 */ - DRIVER( grudge ) /* prototype - Bally/Midway */ - DRIVER( shrike ) /* (c) 1987 */ - DRIVER( gridlee ) /* [1983 Videa] prototype - no copyright notice */ - - /* Irem games */ - /* trivia: IREM means "International Rental Electronics Machines" */ - DRIVER( andromed ) /* (c) 1979 */ - DRIVER( ipminvad ) /* M10 no copyright notice (Arcade TV Game List - P.67, Left, 26 from top) */ - DRIVER( ipminvad1 ) /* M10 incomplete dump */ - DRIVER( ptrmj ) /* M14 (c) 1979 */ - DRIVER( skychut ) /* Irem [1980] */ - DRIVER( spacbeam ) /* M15 no copyright notice */ - DRIVER( greenber ) /* Irem */ - DRIVER( headoni ) /* Irem no copyright notice (1979 - Arcade TV Game List - P.98, Left, 7 from top ) */ - - DRIVER( panther ) /* M27 no copyright notice */ - DRIVER( redalert ) /* M27 (c) 1981 + "GDI presents" */ - DRIVER( demoneye ) /* M27 (c) 1981 */ - DRIVER( ww3 ) /* M27 (c) 1981 */ - - DRIVER( olibochu ) /* M47 (c) 1981 + "GDI presents" */ - DRIVER( mpatrol ) /* M52 (c) 1982 */ - DRIVER( mpatrolw ) /* M52 (c) 1982 + Williams license */ - DRIVER( alpha1v ) /* Vision Electronics */ - DRIVER( troangel ) /* (c) 1983 */ - DRIVER( newtangl ) /* (c) 1983 */ - DRIVER( 10yard ) /* (c) 1983 */ - DRIVER( 10yardj ) /* (c) 1983 */ - DRIVER( vs10yard ) /* (c) 1983/1984 */ - DRIVER( vs10yardj ) /* (c) 1983/1984 */ - DRIVER( vs10yardu ) /* (c) 1983/1984 */ - DRIVER( 10yard85 ) /* (c) 1985 */ - DRIVER( travrusa ) /* (c) 1983 */ - DRIVER( motorace ) /* (c) 1983 Williams license */ - DRIVER( shtrider ) /* (c) 1984 Seibu Kaihatsu */ - DRIVER( shtridera ) /* (c) 1984 Seibu Kaihatsu */ - DRIVER( wilytowr ) /* M63 (c) 1984 */ - DRIVER( atomboy ) /* M63 (c) 1985 Irem + Memetron license */ - DRIVER( atomboya ) /* M63 (c) 1985 Irem + Memetron license */ - DRIVER( fghtbskt ) /* (c) 1984 Paradise Co. Ltd. */ - /* M62 */ - DRIVER( kungfum ) /* (c) 1984 */ - DRIVER( kungfumd ) /* (c) 1984 + Data East license */ - DRIVER( spartanx ) /* (c) 1984 (Japan) */ - DRIVER( kungfub ) /* bootleg */ - DRIVER( kungfub2 ) /* bootleg */ - DRIVER( battroad ) /* (c) 1984 */ - DRIVER( ldrun ) /* (c) 1984 licensed from Broderbund */ - DRIVER( ldruna ) /* (c) 1984 licensed from Broderbund */ - DRIVER( ldrun2 ) /* (c) 1984 licensed from Broderbund */ - DRIVER( ldrun3 ) /* (c) 1985 licensed from Broderbund */ - DRIVER( ldrun3j ) /* (c) 1985 licensed from Broderbund */ - DRIVER( ldrun4 ) /* (c) 1986 licensed from Broderbund */ - DRIVER( lotlot ) /* (c) 1985 licensed from Tokuma Shoten */ - DRIVER( kidniki ) /* (c) 1986 + Data East USA license */ - DRIVER( kidnikiu ) /* (c) 1986 + Data East USA license */ - DRIVER( yanchamr ) /* (c) 1986 (Japan) */ - DRIVER( lithero ) /* bootleg */ - DRIVER( spelunkr ) /* (c) 1985 licensed from Broderbund */ - DRIVER( spelunkrj ) /* (c) 1985 licensed from Broderbund */ - DRIVER( spelunk2 ) /* (c) 1986 licensed from Broderbund */ - DRIVER( horizon ) /* (c) 1985 */ - DRIVER( youjyudn ) /* (c) 1986 (Japan) */ - - DRIVER( vigilant ) /* (c) 1988 (World) */ - DRIVER( vigilant1 ) /* (c) 1988 (World) */ - DRIVER( vigilantu ) /* (c) 1988 (US) */ - DRIVER( vigilantj ) /* (c) 1988 (Japan) */ - DRIVER( kikcubic ) /* (c) 1988 (Japan) */ - DRIVER( kikcubicb ) /* bootleg */ - DRIVER( buccanrs ) /* (c) 1989 Duintronic */ - DRIVER( buccanrsa ) /* (c) 1989 Duintronic */ - /* M72 (and derivatives) */ - DRIVER( rtype ) /* (c) 1987 (Japan) */ - DRIVER( rtypej ) /* (c) 1987 (Japan) */ - DRIVER( rtypejp ) /* (c) 1987 (Japan) */ - DRIVER( rtypeu ) /* (c) 1987 + Nintendo USA license (US) */ - DRIVER( rtypeb ) /* bootleg */ - DRIVER( bchopper ) /* (c) 1987 */ - DRIVER( mrheli ) /* (c) 1987 (Japan) */ - DRIVER( nspirit ) /* (c) 1988 */ - DRIVER( nspiritj ) /* (c) 1988 (Japan) */ - DRIVER( imgfight ) /* (c) 1988 (Japan) */ - DRIVER( imgfighto ) /* (c) 1988 (Japan) */ - DRIVER( loht ) /* (c) 1989 */ - DRIVER( lohtj ) /* (c) 1989 (Japan) */ - DRIVER( lohtb ) /* (c) 1989 (bootleg) */ - DRIVER( lohtb2 ) /* (c) 1989 (bootleg) */ - DRIVER( xmultipl ) /* (c) 1989 (Japan) */ - DRIVER( xmultiplm72 ) /* (c) 1989 (Japan) */ - DRIVER( dbreed ) /* (c) 1989 */ - DRIVER( dbreedm72 ) /* (c) 1989 */ - DRIVER( rtype2 ) /* (c) 1989 */ - DRIVER( rtype2j ) /* (c) 1989 (Japan) */ - DRIVER( rtype2jc ) /* (c) 1989 (Japan) */ - DRIVER( majtitle ) /* (c) 1990 (World) */ - DRIVER( majtitlej ) /* (c) 1990 (Japan) */ - DRIVER( hharry ) /* (c) 1990 (World) */ - DRIVER( hharryu ) /* (c) 1990 Irem America (US) */ - DRIVER( dkgensan ) /* (c) 1990 (Japan) */ - DRIVER( dkgensanm72 ) /* (c) 1990 (Japan) */ - DRIVER( poundfor ) /* (c) 1990 (World) */ - DRIVER( poundforj ) /* (c) 1990 (Japan) */ - DRIVER( poundforu ) /* (c) 1990 Irem America (US) */ - DRIVER( airduel ) /* (c) 1990 (Japan) */ - DRIVER( cosmccop ) /* (c) 1991 (World) */ - DRIVER( gallop ) /* (c) 1991 (Japan) */ - DRIVER( kengo ) /* (c) 1991 */ - /* not M72, but same sound hardware */ - DRIVER( sichuan2 ) /* (c) 1989 Tamtex */ - DRIVER( sichuan2a ) /* (c) 1989 Tamtex */ - DRIVER( shisen ) /* (c) 1989 Tamtex */ - DRIVER( matchit ) /* (c) 1989 Tamtex */ - /* M90 */ - DRIVER( hasamu ) /* (c) 1991 Irem (Japan) */ - DRIVER( dynablst ) /* (c) 1991 Irem (World) */ - DRIVER( dynablstb ) /* bootleg */ - DRIVER( bombrman ) /* (c) 1991 Irem (Japan) */ - DRIVER( atompunk ) /* (c) 1991 Irem America (licensed from Hudson Soft) */ - /* M97 */ - DRIVER( bbmanw ) /* (c) 1992 Irem (World) */ - DRIVER( bbmanwj ) /* (c) 1992 Irem (Japan) */ - DRIVER( bomblord ) /* bootleg */ - DRIVER( newapunk ) /* (c) 1992 Irem America (US) */ - DRIVER( quizf1 ) /* (c) 1992 Irem (Japan) */ - DRIVER( riskchal ) /* (c) 1993 Irem */ - DRIVER( gussun ) /* (c) 1993 Irem (Japan) */ - DRIVER( matchit2 ) /* (c) 1993 Tamtex */ - DRIVER( shisen2 ) /* (c) 1993 Tamtex */ - /* M92 */ - DRIVER( gunforce ) /* (c) 1991 Irem (World) */ - DRIVER( gunforceu ) /* (c) 1991 Irem America (US) */ - DRIVER( gunforcej ) /* (c) 1991 Irem (Japan) */ - DRIVER( bmaster ) /* (c) 1991 Irem */ - DRIVER( crossbld ) /* (c) 1991 Irem (Japan) */ - DRIVER( lethalth ) /* (c) 1991 Irem (World) */ - DRIVER( thndblst ) /* (c) 1991 Irem (Japan) */ - DRIVER( uccops ) /* (c) 1992 Irem (World) */ - DRIVER( uccopsu ) /* (c) 1992 Irem (US) */ - DRIVER( uccopsar ) /* (c) 1992 Irem (World) */ - DRIVER( uccopsj ) /* (c) 1992 Irem (Japan) */ - DRIVER( mysticri ) /* (c) 1992 Irem (World) */ - DRIVER( mysticrib ) /* bootleg? */ - DRIVER( gunhohki ) /* (c) 1992 Irem (Japan) */ - DRIVER( majtitl2 ) /* (c) 1992 Irem (World) */ - DRIVER( majtitl2j ) /* (c) 1992 Irem (Japan) */ - DRIVER( skingame ) /* (c) 1992 Irem America (US) */ - DRIVER( skingame2 ) /* (c) 1992 Irem America (US) */ - DRIVER( hook ) /* (c) 1992 Irem (World) */ - DRIVER( hooku ) /* (c) 1992 Irem America (US) */ - DRIVER( hookj ) /* (c) 1992 Irem (Japan) */ - DRIVER( ppan ) /* bootleg */ - DRIVER( rtypeleo ) /* (c) 1992 Irem (World) */ - DRIVER( rtypeleoj ) /* (c) 1992 Irem (Japan) */ - DRIVER( inthunt ) /* (c) 1993 Irem (World) */ - DRIVER( inthuntu ) /* (c) 1993 Irem (US) */ - DRIVER( kaiteids ) /* (c) 1993 Irem (Japan) */ - DRIVER( nbbatman ) /* (c) 1993 Irem America (US) */ - DRIVER( leaguemn ) /* (c) 1993 Irem (Japan) */ - DRIVER( ssoldier ) /* (c) 1993 Irem America (US) */ - DRIVER( psoldier ) /* (c) 1993 Irem (Japan) */ - DRIVER( dsoccr94j ) /* (c) 1994 Irem (Japan) */ - DRIVER( gunforc2 ) /* (c) 1994 Irem */ - DRIVER( geostorm ) /* (c) 1994 Irem (Japan) */ - /* M107 */ - DRIVER( firebarr ) /* (c) 1993 Irem (Japan) */ - DRIVER( dsoccr94 ) /* (c) 1994 Irem (Data East Corporation license) */ - DRIVER( kftgoal ) /* (c) 1994 Jaleco */ - DRIVER( wpksoc ) /* (c) 1995 Jaleco */ - - /* Gottlieb/Mylstar games (Gottlieb became Mylstar in 1983) */ - DRIVER( reactor ) /* GV-100 (c) 1982 Gottlieb */ - DRIVER( mplanets ) /* GV-102 (c) 1983 Gottlieb */ - DRIVER( mplanetsuk )/* GV-102 (c) 1983 Gottlieb */ - DRIVER( qbert ) /* GV-103 (c) 1982 Gottlieb */ - DRIVER( qberta ) /* GV-103 (c) 1982 Gottlieb */ - DRIVER( qbertj ) /* GV-103 (c) 1982 Gottlieb + Konami license */ - DRIVER( myqbert ) /* GV-103?(c) 1982 Gottlieb */ - DRIVER( qberttst ) /* GV-103 (c) 1982 Gottlieb */ - DRIVER( qbtrktst ) /* GV-103 (c) 1982 Gottlieb */ - DRIVER( insector ) /* GV-??? (c) 1982 Gottlieb - never released */ - DRIVER( tylz ) /* GV-??? (c) 1982 Gottlieb - never released */ - DRIVER( argusg ) /* GV-??? (c) 1982 Gottlieb - never released */ - DRIVER( krull ) /* GV-105 (c) 1983 Gottlieb */ - DRIVER( kngtmare ) /* GV-??? (c) 1983 Gottlieb - never released */ - DRIVER( sqbert ) /* GV-??? (c) 1983 Mylstar - never released */ - DRIVER( mach3 ) /* GV-109 (c) 1983 Mylstar */ - DRIVER( cobram3 ) /* ...... (c) 1984 Data East */ - DRIVER( usvsthem ) /* GV-??? (c) 198? Mylstar */ - DRIVER( 3stooges ) /* GV-113 (c) 1984 Mylstar */ - DRIVER( qbertqub ) /* GV-119 (c) 1983 Mylstar */ - DRIVER( screwloo ) /* GV-123 (c) 1983 Mylstar - never released */ - DRIVER( curvebal ) /* GV-134 (c) 1984 Mylstar */ - DRIVER( vidvince ) /* GV-??? (c) 1984 Mylstar - never released */ - DRIVER( wizwarz ) /* GV-??? (c) 1984 Mylstar - never released */ - - /* Taito "Qix hardware" games */ - DRIVER( qix ) /* LK (c) 1981 Taito America Corporation */ - DRIVER( qixa ) /* LK (c) 1981 Taito America Corporation */ - DRIVER( qixb ) /* LK (c) 1981 Taito America Corporation */ - DRIVER( qixo ) /* LK (c) 1981 Taito America Corporation */ - DRIVER( qix2 ) /* ?? (c) 1981 Taito America Corporation */ - DRIVER( sdungeon ) /* SD (c) 1981 Taito America Corporation */ - DRIVER( elecyoyo ) /* YY (c) 1982 Taito America Corporation */ - DRIVER( elecyoyo2 ) /* YY (c) 1982 Taito America Corporation */ - DRIVER( kram ) /* KS (c) 1982 Taito America Corporation */ - DRIVER( kram2 ) /* KS (c) 1982 Taito America Corporation */ - DRIVER( kram3 ) /* KS (c) 1982 Taito America Corporation */ - DRIVER( zookeep ) /* ZA (c) 1982 Taito America Corporation */ - DRIVER( zookeep2 ) /* ZA (c) 1982 Taito America Corporation */ - DRIVER( zookeep3 ) /* ZA (c) 1982 Taito America Corporation */ - DRIVER( slither ) /* (c) 1982 Century II */ - DRIVER( slithera ) /* (c) 1982 Century II */ - DRIVER( complexx ) /* CX (c) 1984 Taito America Corporation */ - - /* Taito SJ System games */ - DRIVER( spaceskr ) /* EB (c) 1981 Taito Corporation */ - DRIVER( spacecr ) /* CG (c) 1981 Taito Corporation */ - DRIVER( junglek ) /* KN (c) 1982 Taito Corporation */ - DRIVER( junglekj2 ) /* KN (c) 1982 Taito Corporation */ - DRIVER( jungleh ) /* KN (c) 1982 Taito America Corporation */ - DRIVER( junglehbr ) /* KN (c) 1982 Taito do Brasil */ - DRIVER( piratpet ) /* KN (c) 1982 Taito America Corporation */ - DRIVER( jungleby ) /* bootleg */ - DRIVER( alpine ) /* RH (c) 1982 Taito Corporation */ - DRIVER( alpinea ) /* RH (c) 1982 Taito Corporation */ - DRIVER( timetunl ) /* UN (c) 1982 Taito Corporation */ - DRIVER( wwestern ) /* WW (c) 1982 Taito Corporation */ - DRIVER( wwestern1 ) /* WW (c) 1982 Taito Corporation */ - DRIVER( frontlin ) /* FL (c) 1982 Taito Corporation */ - DRIVER( elevator ) /* EA (c) 1983 Taito Corporation */ - DRIVER( elevatorb ) /* bootleg */ - DRIVER( tinstar ) /* A10 (c) 1983 Taito Corporation */ - DRIVER( tinstar2 ) /* A10 (c) 1983 Taito Corporation */ - DRIVER( waterski ) /* A03 (c) 1983 Taito Corporation */ - DRIVER( bioatack ) /* AA8 (c) 1983 Taito Corporation + Fox Video Games license */ - DRIVER( hwrace ) /* AC4 (c) 1983 Taito Corporation */ - DRIVER( sfposeid ) /* A14 (c) 1984 Taito Corporation */ - DRIVER( kikstart ) /* A20 (c) 1984 Taito Corporation */ - - /* other Taito games */ - DRIVER( fgoal ) /* TF (c) 1979 Taito Corporation */ - DRIVER( fgoala ) /* MF (c) 1979 Taito Corporation */ - DRIVER( crbaloon ) /* CL (c) 1980 Taito Corporation */ - DRIVER( crbaloon2 ) /* CL (c) 1980 Taito Corporation */ - DRIVER( sbowling ) /* KB (c) 1982 Taito Corporation */ - DRIVER( grchamp ) /* GM (c) 1981 Taito Corporation */ - DRIVER( marinedt ) /* MG (c) 1981 Taito Corporation */ - DRIVER( changela ) /* ??? (c) 1983 Taito Corporation */ - DRIVER( fspiderb ) /* bootleg */ - DRIVER( jollyjgr ) /* KD (c) 1982 Taito Corporation */ - DRIVER( bking ) /* DM (c) 1982 Taito Corporation */ - DRIVER( bking2 ) /* AD6 (c) 1983 Taito Corporation */ - DRIVER( bking3 ) /* A24 (c) 1984 Taito Corporation */ - DRIVER( chaknpop ) /* A04 (c) 1983 Taito Corporation */ - DRIVER( josvolly ) /* AA (c) 1983 Taito Corporation */ - DRIVER( gsword ) /* AC (c) 1984 Taito Corporation */ - DRIVER( gsword2 ) /* AC (c) 1984 Taito Corporation */ - DRIVER( cyclemb ) /* P0 (c) 1984 Taito Corporation [+ Seta] */ - DRIVER( pitnrun ) /* PR (c) 1984 Taito Corporation */ - DRIVER( pitnruna ) /* PR (c) 1984 Taito Corporation */ - DRIVER( lkage ) /* A54 (c) 1984 Taito Corporation */ - DRIVER( lkageo ) /* A54 (c) 1984 Taito Corporation */ - DRIVER( lkageoo ) /* A54 (c) 1984 Taito Corporation */ - DRIVER( lkageb ) /* bootleg */ - DRIVER( lkageb2 ) /* bootleg */ - DRIVER( lkageb3 ) /* bootleg */ - DRIVER( bygone ) /* prototype ? A53 (c) 1985 Taito Corporation */ - DRIVER( msisaac ) /* A34 (c) 1985 Taito Corporation */ - DRIVER( retofinv ) /* A37 (c) 1985 Taito Corporation */ - DRIVER( retofinv1 ) /* bootleg */ - DRIVER( retofinv2 ) /* bootleg */ - DRIVER( fightrol ) /* (c) 1983 Taito */ - DRIVER( rollace ) /* (c) 1983 Williams */ - DRIVER( rollace2 ) /* (c) 1983 Williams */ - DRIVER( lgp ) /* (c) 1983 Taito */ - DRIVER( vsgongf ) /* (c) 1984 Kaneko */ - DRIVER( ringfgt ) /* (c) 1984 Taito */ - DRIVER( ringfgt2 ) /* (c) 1984 Taito */ - DRIVER( fieldday ) /* A23 (c) 1984 Taito */ - DRIVER( undoukai ) /* A17 (c) 1984 Taito */ - DRIVER( 40love ) /* A30 (c) 1984 Taito */ - DRIVER( tsamurai ) /* A35 (c) 1985 Taito */ - DRIVER( tsamurai2 ) /* A35 (c) 1985 Taito */ - DRIVER( tsamuraih ) /* bootleg */ - DRIVER( ladymstr ) /* A49 (c) 1985 Taito */ - DRIVER( nunchaku ) /* ??? (c) 1985 Taito */ - DRIVER( yamagchi ) /* A38 (c) 1985 Taito */ - DRIVER( m660 ) /* ??? (c) 1986 Taito America Corporation */ - DRIVER( m660j ) /* ??? (c) 1986 Taito Corporation (Japan) */ - DRIVER( m660b ) /* bootleg */ - DRIVER( alphaxz ) /* AZ (c) 1986 Ed/Wood Place */ - DRIVER( buggychl ) /* A22 (c) 1984 Taito Corporation */ - DRIVER( buggychlt ) /* A22 (c) 1984 Taito Corporation + Tefri license */ - DRIVER( ssrj ) /* A40 (c) 1985 Taito Corporation */ - DRIVER( bigevglf ) /* A67 (c) 1986 Taito America Corporation (US) */ - DRIVER( bigevglfj ) /* A67 (c) 1986 Taito Corporation (Japan) */ - DRIVER( flstory ) /* A45 (c) 1985 Taito Corporation */ - DRIVER( flstoryj ) /* A45 (c) 1985 Taito Corporation (Japan) */ - DRIVER( onna34ro ) /* A52 (c) 1985 Taito Corporation (Japan) */ - DRIVER( onna34roa ) /* A52 (c) 1985 Taito Corporation (Japan) */ - DRIVER( victnine ) /* A16 (c) 1985 Taito Corporation (Japan) */ - DRIVER( rumba ) /* A23 (c) 1985 Taito Corporation (Japan) */ - DRIVER( gladiatr ) /* QB (c) 1986 Taito America Corporation (US) */ - DRIVER( ogonsiro ) /* QB (c) 1986 Taito Corporation (Japan) */ - DRIVER( greatgur ) /* QB (c) 1986 Taito Corporation (Japan?) */ - DRIVER( ppking ) /* QO (c) 1985 Taito America Corporation (US) */ - DRIVER( nycaptor ) /* A50 (c) 1985 Taito Corporation */ - DRIVER( cyclshtg ) /* A97 (c) 1986 Taito Corporation */ - DRIVER( bronx ) /* bootleg */ - DRIVER( colt ) /* bootleg */ - DRIVER( ksayakyu ) /* ??? (c) 1985 Taito Corporation */ - DRIVER( benberob ) /* A26 */ - DRIVER( halleys ) /* A62 (c) 1986 Taito America Corporation + Coin It (US) */ - DRIVER( halleysc ) /* A62 (c) 1986 Taito Corporation (Japan) */ - DRIVER( halleycj ) /* A62 (c) 1986 Taito Corporation (Japan) */ - DRIVER( halley87 ) /* A62 (c) 1986 Taito Corporation (Japan) */ - DRIVER( lsasquad ) /* A64 (c) 1986 Taito Corporation / Taito America (dip switch) */ - DRIVER( storming ) /* A64 (c) 1986 Taito Corporation */ - DRIVER( daikaiju ) /* A74 (c) 1986 Taito */ - DRIVER( tokio ) /* A71 1986 */ - DRIVER( tokioo ) /* A71 1986 */ - DRIVER( tokiou ) /* A71 1986 */ - DRIVER( tokiob ) /* bootleg */ - DRIVER( bublbobl ) /* A78 (c) 1986 Taito Corporation */ - DRIVER( bublbobl1 ) /* A78 (c) 1986 Taito Corporation */ - DRIVER( bublboblr ) /* A78 (c) 1986 Taito America Corporation + Romstar license */ - DRIVER( bublboblr1 )/* A78 (c) 1986 Taito America Corporation + Romstar license */ - DRIVER( boblbobl ) /* bootleg */ - DRIVER( sboblboa ) /* bootleg */ - DRIVER( sboblbob ) /* bootleg */ - DRIVER( bub68705 ) /* bootleg */ - DRIVER( dland ) /* bootleg */ - DRIVER( missb2 ) /* bootleg on enhanced hardware */ - DRIVER( bublpong ) /* bootleg on enhanced hardware */ - DRIVER( kikikai ) /* A85 (c) 1986 Taito Corporation */ - DRIVER( knightb ) /* bootleg */ - DRIVER( kicknrun ) /* A87 (c) 1986 Taito Corporation */ - DRIVER( kicknrunu ) /* A87 (c) 1986 Taito Corporation */ - DRIVER( mexico86 ) /* bootleg (Micro Research) */ - DRIVER( darius ) /* A96 (c) 1986 Taito Corporation Japan (World) */ - DRIVER( dariusj ) /* A96 (c) 1986 Taito Corporation (Japan) */ - DRIVER( dariuso ) /* A96 (c) 1986 Taito Corporation (Japan) */ - DRIVER( dariuse ) /* A96 (c) 1986 Taito Corporation (Japan) */ - DRIVER( rastan ) /* B04 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( rastanu ) /* B04 (c) 1987 Taito America Corporation (US) */ - DRIVER( rastanu2 ) /* B04 (c) 1987 Taito America Corporation (US) */ - DRIVER( rastsaga ) /* B04 (c) 1987 Taito Corporation (Japan)*/ - DRIVER( rastsaga1 ) /* B04 (c) 1987 Taito Corporation (Japan)*/ - DRIVER( topspeed ) /* B14 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( topspeedu ) /* B14 (c) 1987 Taito America Corporation (US) */ - DRIVER( fullthrl ) /* B14 (c) 1987 Taito Corporation (Japan) */ - DRIVER( opwolf ) /* B20 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( opwolfa ) /* B20 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( opwolfj ) /* B20 (c) 1987 Taito Corporation (Japan) */ - DRIVER( opwolfu ) /* B20 (c) 1987 Taito America Corporation (US) */ - DRIVER( opwolfb ) /* bootleg */ - DRIVER( othunder ) /* B67 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( othunderu ) /* B67 (c) 1988 Taito America Corporation (US) */ - DRIVER( othunderuo ) /* B67 (c) 1988 Taito America Corporation (US) */ - DRIVER( othunderj ) /* B67 (c) 1988 Taito Corporation (Japan) */ - DRIVER( rainbow ) /* B22 (c) 1987 Taito Corporation */ - DRIVER( rainbowo ) /* B22 (c) 1987 Taito Corporation */ - DRIVER( rainbowe ) /* B39 (c) 1988 Taito Corporation */ - DRIVER( jumping ) /* bootleg */ - DRIVER( arkanoid ) /* A75 (c) 1986 Taito Corporation Japan (World) */ - DRIVER( arkanoidu ) /* A75 (c) 1986 Taito America Corporation + Romstar license (US) */ - DRIVER( arkanoiduo ) /* A75 (c) 1986 Taito America Corporation + Romstar license (US) */ - DRIVER( arkanoidj ) /* A75 (c) 1986 Taito Corporation (Japan) */ - DRIVER( arkmcubl ) /* bootleg */ - DRIVER( ark1ball ) /* bootleg */ - DRIVER( arkangc ) /* bootleg */ - DRIVER( arkangc2 ) /* bootleg */ - DRIVER( arkblock ) /* bootleg */ - DRIVER( arkbloc2 ) /* bootleg */ - DRIVER( arkbloc3 ) /* bootleg */ - DRIVER( arkgcbl ) /* bootleg */ - DRIVER( arkgcbla ) /* bootleg */ - DRIVER( paddle2 ) /* bootleg */ - DRIVER( block2 ) /* bootleg */ - DRIVER( arkatayt ) /* bootleg */ - DRIVER( arktayt2 ) /* bootleg */ - DRIVER( arkatour ) /* ??? (c) 1987 Taito America Corporation + Romstar license (US) */ - DRIVER( tetrsark ) /* ??? (c) D.R.Korea */ - DRIVER( hexa ) /* D. R. Korea */ - DRIVER( sqix ) /* B03 1987 */ - DRIVER( sqixr1 ) /* B03 1987 */ - DRIVER( sqixu ) /* B03 1987 */ - DRIVER( sqixb1 ) /* bootleg? but (c) 1987 */ - DRIVER( sqixb2 ) /* bootleg? but (c) 1987 */ - DRIVER( perestro ) /* (c) 1994 Promat */ - DRIVER( perestrof ) /* (c) 1993 Promat / Fuuki */ - DRIVER( pbillian ) /* (c) 1986 Taito */ - DRIVER( hotsmash ) /* B18 (c) 1987 Taito */ - DRIVER( exzisus ) /* B12 (c) 1987 Taito Corporation (Japan) */ - DRIVER( exzisusa ) /* B23 (c) 1987 Taito Corporation (Japan) */ - DRIVER( minivadr ) /* D26 cabinet test board */ - DRIVER( volfied ) /* C04 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( volfiedu ) /* C04 (c) 1989 Taito America Corporation (US) */ - DRIVER( volfiedj ) /* C04 (c) 1989 Taito Corporation (Japan) */ - DRIVER( volfiedjo ) /* C04 (c) 1989 Taito Corporation (Japan) */ - DRIVER( bonzeadv ) /* B41 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( bonzeadvo ) /* B41 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( bonzeadvu ) /* B41 (c) 1988 Taito America Corporation (US) */ - DRIVER( jigkmgri ) /* B41 (c) 1988 Taito Corporation (Japan)*/ - DRIVER( asuka ) /* B68 (c) 1988 Taito Corporation (World) */ - DRIVER( asukaj ) /* B68 (c) 1988 Taito Corporation (Japan) */ - DRIVER( mofflott ) /* C17 (c) 1989 Taito Corporation (Japan) */ - DRIVER( cadash ) /* C21 (c) 1989 Taito Corporation Japan */ - DRIVER( cadashj ) /* C21 (c) 1989 Taito Corporation */ - DRIVER( cadashu ) /* C21 (c) 1989 Taito America Corporation */ - DRIVER( cadashi ) /* C21 (c) 1989 Taito Corporation Japan */ - DRIVER( cadashf ) /* C21 (c) 1989 Taito Corporation Japan */ - DRIVER( cadashg ) /* C21 (c) 1989 Taito Corporation Japan */ - DRIVER( parentj ) /* C42 (c) 199? Taito */ - DRIVER( galmedes ) /* (c) 1992 Visco (Japan) */ - DRIVER( earthjkr ) /* (c) 1993 Visco (Japan) */ - DRIVER( eto ) /* (c) 1994 Visco (Japan) */ - DRIVER( wgp ) /* C32 (c) 1989 Taito America Corporation (US) */ - DRIVER( wgpj ) /* C32 (c) 1989 Taito Corporation (Japan) */ - DRIVER( wgpjoy ) /* C32 (c) 1989 Taito Corporation (Japan) */ - DRIVER( wgpjoya ) /* C32 (c) 1989 Taito Corporation (Japan) */ - DRIVER( wgp2 ) /* C73 (c) 1990 Taito Corporation (Japan) */ - DRIVER( galastrm ) /* C99 (c) 1992 Taito Corporation */ - DRIVER( slapshot ) /* D71 (c) 1994 Taito Corporation (Japan) */ - DRIVER( opwolf3 ) /* D74 (c) 1994 Taito */ - DRIVER( opwolf3u ) /* D74 (c) 1994 Taito */ - DRIVER( scessjoe ) /* ??? (c) 1990 Wave / Taito */ - DRIVER( ashnojoe ) /* ??? (c) 1990 Wave / Taito */ - - /* Taito multi-screen games */ - DRIVER( ninjaw ) /* B31 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( ninjawj ) /* B31 (c) 1987 Taito Corporation (Japan) */ - DRIVER( darius2 ) /* C07 (c) 1989 Taito Corporation (Japan) */ - DRIVER( darius2d ) /* C07 (c) 1989 Taito Corporation (Japan) */ - DRIVER( darius2do ) /* C07 (c) 1989 Taito Corporation (Japan) */ - DRIVER( warriorb ) /* D24 (c) 1991 Taito Corporation (Japan) */ - - /* Taito "X"-system games */ - DRIVER( superman ) /* B61 (c) 1988 Taito Corporation */ - DRIVER( supermanj ) /* B61 (c) 1988 Taito Corporation */ - DRIVER( twinhawk ) /* B87 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( twinhawku ) /* B87 (c) 1989 Taito America Corporation (US) */ - DRIVER( daisenpu ) /* B87 (c) 1989 Taito Corporation (Japan) */ - DRIVER( gigandes ) /* (c) 1989 East Technology */ - DRIVER( gigandesj ) /* (c) 1989 East Technology */ - DRIVER( kyustrkr ) /* (c) 1989 East Technology */ - DRIVER( ballbros ) /* no copyright notice */ - - /* Taito "tnzs" (Seta) hardware */ - DRIVER( plumppop ) /* A98 (c) 1987 Taito Corporation (Japan) */ - DRIVER( jpopnics ) /* (c)1992 NICs, based on Plump Pop code */ - DRIVER( extrmatn ) /* B06 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( extrmatnu ) /* B06 (c) 1987 World Games */ - DRIVER( extrmatnj ) /* B06 (c) 1987 Taito Corporation (Japan)*/ - DRIVER( arknoid2 ) /* B08 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( arknoid2u ) /* B08 (c) 1987 Taito America Corporation + Romstar license (US) */ - DRIVER( arknoid2j ) /* B08 (c) 1987 Taito Corporation (Japan) */ - DRIVER( drtoppel ) /* B19 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( drtoppelu ) /* B19 (c) 1987 Taito Corporation (US) */ - DRIVER( drtoppelj ) /* B19 (c) 1987 Taito Corporation (Japan) */ - DRIVER( kageki ) /* B35 (c) 1988 Taito America Corporation + Romstar license (US) */ - DRIVER( kagekij ) /* B35 (c) 1988 Taito Corporation (Japan) */ - DRIVER( kagekih ) /* B35 (c) 1992 (hack) */ - DRIVER( chukatai ) /* B44 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( chukataiu ) /* B44 (c) 1988 Taito Corporation (US) */ - DRIVER( chukataij ) /* B44 (c) 1988 Taito Corporation (Japan) */ - DRIVER( kabukiz ) /* B50 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( kabukizj ) /* B50 (c) 1988 Taito Corporation (Japan) */ - DRIVER( tnzs ) /* B53 (c) 1988 Taito Corporation Japan (World) (new logo) */ - DRIVER( tnzsj ) /* B53 (c) 1988 Taito Corporation (Japan) (new logo) */ - DRIVER( tnzsjo ) /* B53 (c) 1988 Taito Corporation (Japan) (new logo) */ - DRIVER( tnzso ) /* B53 (c) 1988 Taito Corporation Japan (World) (old logo) */ - DRIVER( tnzsop ) /* B53?(c) 1988 Taito Corporation Japan (World) (old logo) */ - DRIVER( insectx ) /* B97 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( insectxj ) /* B97 (c) 1989 Taito Corporation (Japan) */ - DRIVER( cchance ) /* (c)1987 Taito? */ - DRIVER( champbwl ) /* (c)1989 Romstar. not Taito, but the same Seta video chips */ - - /* Taito L-System games */ - DRIVER( raimais ) /* B36 (c) 1988 Taito Corporation (Japan) */ - DRIVER( raimaisj ) /* B36 (c) 1988 Taito Corporation */ - DRIVER( raimaisjo ) /* B36 (c) 1988 Taito Corporation */ - DRIVER( kurikint ) /* B42 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( kurikintu ) /* B42 (c) 1988 Taito America Corporation (US) */ - DRIVER( kurikintj ) /* B42 (c) 1988 Taito Corporation (Japan) */ - DRIVER( kurikinta ) /* B42 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( evilston ) /* C67 (c) 1990 Spacy Industrial, Ltd */ - DRIVER( fhawk ) /* B70 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( fhawkj ) /* B70 (c) 1988 Taito Corporation (Japan) */ - DRIVER( plotting ) /* B96 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( plottingu ) /* B96 (c) 1989 Taito Corporation Japan (US) */ - DRIVER( plottinga ) /* B96 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( plottingb ) /* B96 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( flipull ) /* B96 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( champwr ) /* C01 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( champwru ) /* C01 (c) 1989 Taito America Corporation (US) */ - DRIVER( champwrj ) /* C01 (c) 1989 Taito Corporation (Japan) */ - DRIVER( puzznic ) /* C20 (c) 1989 Taito Corporation (Japan) */ - DRIVER( puzznicj ) /* C20 (c) 1989 Taito Corporation (Japan) */ - DRIVER( puzznici ) /* C20 (c) 1989 Taito Corporation (Japan) */ - DRIVER( horshoes ) /* C47 (c) 1990 Taito America Corporation (US) */ - DRIVER( palamed ) /* C63 (c) 1990 Taito Corporation (Japan) */ - DRIVER( cachat ) /* ??? (c) 1993 Taito Corporation (Japan) */ - DRIVER( tubeit ) /* ??? no copyright message */ - DRIVER( cubybop ) /* ??? no copyright message */ - DRIVER( plgirls ) /* (c) 1992 Hot-B. */ - DRIVER( plgirls2 ) /* (c) 1993 Hot-B. */ - DRIVER( lagirl ) /* plgirls bootleg? */ - - /* Taito H-System games */ - DRIVER( syvalion ) /* B51 (c) 1988 Taito Corporation (Japan) */ - DRIVER( recordbr ) /* B56 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( gogold ) /* B56 (c) 1988 Taito Corporation (Japan) */ - DRIVER( dleague ) /* C02 (c) 1990 Taito Corporation (Japan) */ - - /* Taito B-System games */ - DRIVER( masterw ) /* B72 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( masterwu ) /* B72 (c) 1989 Taito America Corporation (US) */ - DRIVER( masterwj ) /* B72 (c) 1989 Taito Corporation (Japan) */ - DRIVER( nastar ) /* B81 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( nastarw ) /* B81 (c) 1988 Taito America Corporation (US) */ - DRIVER( rastsag2 ) /* B81 (c) 1988 Taito Corporation (Japan) */ - DRIVER( rambo3 ) /* B93 (c) 1989 Taito Europe Corporation (Europe) */ - DRIVER( rambo3ae ) /* B93 (c) 1989 Taito Europe Corporation (Europe) */ - DRIVER( rambo3a ) /* B93 (c) 1989 Taito America Corporation (US) */ - DRIVER( crimec ) /* B99 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( crimecu ) /* B99 (c) 1989 Taito America Corporation (US) */ - DRIVER( crimecj ) /* B99 (c) 1989 Taito Corporation (Japan) */ - DRIVER( tetrist ) /* C12 (c) 1989 Sega Enterprises,Ltd. (Japan) */ - DRIVER( tetrista ) /* C35 (c) 1989 Sega Enterprises,Ltd. (Japan) */ - DRIVER( viofight ) /* C16 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( viofightu ) /* C16 (c) 1989 Taito America Corporation (US) */ - DRIVER( viofightj ) /* C16 (c) 1989 Taito Corporation (Japan) */ - DRIVER( ashura ) /* C43 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( ashuraj ) /* C43 (c) 1990 Taito Corporation (Japan) */ - DRIVER( ashurau ) /* C43 (c) 1990 Taito America Corporation (US) */ - DRIVER( hitice ) /* C59 (c) 1990 Williams (US) */ - DRIVER( hiticej ) /* C59 (c) 1990 Midway/Taito Corporation (Japan) */ - DRIVER( sbm ) /* C69 (c) 1990 Taito Corporation (Japan) */ - DRIVER( selfeena ) /* ??? (c) 1991 East Technology */ - DRIVER( silentd ) /* ??? (c) 1992 Taito Corporation Japan (World) */ - DRIVER( silentdu ) /* ??? (c) 1992 Taito Corporation Japan (World) */ - DRIVER( silentdj ) /* ??? (c) 1992 Taito Corporation (Japan) */ - DRIVER( ryujin ) /* ??? (c) 1993 Taito Corporation (Japan) */ - DRIVER( qzshowby ) /* D72 (c) 1993 Taito Corporation (Japan) */ - DRIVER( pbobble ) /* ??? (c) 1994 Taito Corporation (Japan) */ - DRIVER( spacedx ) /* D89 (c) 1994 Taito Corporation (US) */ - DRIVER( spacedxj ) /* D89 (c) 1994 Taito Corporation (Japan) */ - DRIVER( spacedxo ) /* D89 (c) 1994 Taito Corporation (Japan) */ - - /* Taito Z-System games */ - DRIVER( contcirc ) /* B33 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( contcircu ) /* B33 (c) 1987 Taito America Corporation (US) */ - DRIVER( contcircua ) /* B33 (c) 1987 Taito America Corporation (US) */ - DRIVER( chasehq ) /* B52 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( chasehqj ) /* B52 (c) 1988 Taito Corporation (Japan) */ - DRIVER( chasehqu ) /* B52 (c) 1988 Taito America Corporation (US) */ - DRIVER( enforce ) /* B58 (c) 1988 Taito Corporation (Japan) */ - DRIVER( nightstr ) /* B91 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( nightstrj ) /* B91 (c) 1989 Taito Corporation (Japan) */ - DRIVER( nightstru ) /* B91 (c) 1989 Taito America Corporation (US) */ - DRIVER( sci ) /* C09 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( scia ) /* C09 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( scij ) /* C09 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( sciu ) /* C09 (c) 1989 Taito America Corporation (US) */ - DRIVER( scin ) /* C09 (c) 1991 Taito Corporation Japan (Negro Torino hack) */ - DRIVER( bshark ) /* C34 (c) 1989 Taito America Corporation (US) */ - DRIVER( bsharkj ) /* C34 (c) 1989 Taito Corporation (Japan) */ - DRIVER( aquajack ) /* B77 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( aquajackj ) /* B77 (c) 1990 Taito Corporation (Japan) */ - DRIVER( spacegun ) /* C57 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( dblaxle ) /* C78 (c) 1991 Taito America Corporation (US) */ - DRIVER( pwheelsj ) /* C78 (c) 1991 Taito Corporation (Japan) */ - DRIVER( racingb ) /* C84 (c) 1991 Taito Coropration .. */ - - /* Taito Air System games */ - DRIVER( topland ) /* B62 (c) 1988 Taito Coporation Japan (World) */ - DRIVER( ainferno ) /* C45 (c) 1990 Taito America Corporation (US) */ - - DRIVER( mlanding ) /* ??? (c) 1990 Taito America Corporation (US) */ - - /* enhanced Z-System hardware games */ - DRIVER( gunbustr ) /* D27 (c) 1992 Taito Corporation (Japan) */ - DRIVER( superchs ) /* D46 (c) 1992 Taito America Corporation (US) */ - DRIVER( groundfx ) /* D51 (c) 1992 Taito Coporation */ - DRIVER( undrfire ) /* D67 (c) 1993 Taito Coporation Japan (World) */ - DRIVER( undrfireu ) /* D67 (c) 1993 Taito America Corporation (US) */ - DRIVER( undrfirej ) /* D67 (c) 1993 Taito Coporation (Japan) */ - DRIVER( cbombers ) - - /* Taito F2 games */ - DRIVER( finalb ) /* 1989.?? B82 (c) 1988 Taito Corporation Japan (World) */ - DRIVER( finalbj ) /* 1989.04 B82 (c) 1988 Taito Corporation (Japan) */ - DRIVER( finalbu ) /* 1989.06 B82 (c) 1988 Taito America Corporation (US) */ - DRIVER( dondokod ) /* 1989.?? B95 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( dondokodu ) /* 1989.?? B95 (c) 1989 Taito America Corporation (US) */ - DRIVER( dondokodj ) /* 1989.07 B95 (c) 1989 Taito Corporation (Japan) */ - DRIVER( megablst ) /* 1989.?? C11 (c) 1989 Taito Corporation Japan (World) */ - DRIVER( megablstu ) /* 1989.?? C11 (c) 1989 Taito America Corporation (US) */ - DRIVER( megablstj ) /* 1989.11 C11 (c) 1989 Taito Corporation (Japan) */ - DRIVER( thundfox ) /* 1990.?? C28 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( thundfoxu ) /* 1990.06 C28 (c) 1990 Taito America Corporation (US) */ - DRIVER( thundfoxj ) /* 1990.07 C28 (c) 1990 Taito Corporation (Japan) */ - DRIVER( cameltry ) /* 1990.?? C38 (c) 1989 Taito America Corporation (US) */ - DRIVER( cameltrya ) /* 1990.?? C38 (c) 1989 Taito America Corporation (US) */ - DRIVER( cameltryau ) /* 1990.?? C38 (c) 1989 Taito America Corporation (US) */ - DRIVER( cameltryj ) /* 1990.04 C38 (c) 1989 Taito Corporation (Japan) */ - DRIVER( qtorimon ) /* 1990.02 C41 (c) 1990 Taito Corporation (Japan) */ - DRIVER( liquidk ) /* 1990.?? C49 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( liquidku ) /* 1990.?? C49 (c) 1990 Taito America Corporation (US) */ - DRIVER( mizubaku ) /* 1990.08 C49 (c) 1990 Taito Corporation (Japan) */ - DRIVER( quizhq ) /* 1990.07 C53 (c) 1990 Taito Corporation (Japan) */ - DRIVER( ssi ) /* 1990.?? C64 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( ssia ) /* 1990.?? C64 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( majest12 ) /* 1990.11 C64 (c) 1990 Taito Corporation (Japan) */ - /* 1990.12 C64 (US) */ - DRIVER( gunfront ) /* 1991.?? C71 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( gunfrontj ) /* 1991.01 C71 (c) 1990 Taito Corporation (Japan) */ - DRIVER( growl ) /* 1991.?? C74 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( growlu ) /* 1991.02 C74 (c) 1990 Taito America Corporation (US) */ - DRIVER( runark ) /* 1991.02 C74 (c) 1990 Taito Corporation (Japan) */ - DRIVER( mjnquest ) /* 1991.05 C77 (c) 1990 Taito Corporation (Japan) */ - DRIVER( mjnquestb ) /* 1991.05 C77 (c) 1990 Taito Corporation (Japan) */ - DRIVER( footchmp ) /* 1991.?? C80 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( footchmpbl )/* bootleg */ - DRIVER( hthero ) /* 1991.03 C80 (c) 1990 Taito Corporation (Japan) */ - DRIVER( euroch92 ) /* 1991.?? (c) 1992 Taito Corporation Japan (World) */ - DRIVER( koshien ) /* 1991.04 C81 (c) 1990 Taito Corporation (Japan) */ - DRIVER( yuyugogo ) /* 1991.03 C83 (c) 1990 Taito Corporation (Japan) */ - DRIVER( ninjak ) /* 1991.?? C85 (c) 1990 Taito Corporation Japan (World) */ - DRIVER( ninjakj ) /* 1991.04 C85 (c) 1990 Taito Corporation (Japan) */ - DRIVER( ninjaku ) /* 1991.03 C85 (c) 1990 Taito Corporation (Japan) */ - DRIVER( solfigtr ) /* 1991.?? C91 (c) 1991 Taito Corporation Japan (World) */ - DRIVER( qzquest ) /* 1991.07 C92 (c) 1991 Taito Corporation (Japan) */ - DRIVER( pulirula ) /* 1991.?? C98 (c) 1991 Taito Corporation Japan (World) */ - DRIVER( pulirulaj ) /* 1991.11 C98 (c) 1991 Taito Corporation (Japan) */ - DRIVER( metalb ) /* 1991.?? D16? (c) 1991 Taito Corporation Japan (World) */ - DRIVER( metalbj ) /* 1991.11 D12 (c) 1991 Taito Corporation (Japan) */ - DRIVER( qzchikyu ) /* 1992.02 D19 (c) 1991 Taito Corporation (Japan) */ - DRIVER( yesnoj ) /* 1992.03 D20 (c) 1992 Taito Corporation (Japan) */ - DRIVER( deadconx ) /* 1992.?? D28 (c) 1992 Taito Corporation Japan (World) */ - DRIVER( deadconxj ) /* 1992.08 D28 (c) 1992 Taito Corporation (Japan) */ - DRIVER( dinorex ) /* 1992.?? D39 (c) 1992 Taito Corporation Japan (World) */ - DRIVER( dinorexj ) /* 1992.11 D39 (c) 1992 Taito Corporation (Japan) */ - DRIVER( dinorexu ) /* 1992.?? D39 (c) 1992 Taito America Corporation (US) */ - DRIVER( qjinsei ) /* 1993.03 D48 (c) 1992 Taito Corporation (Japan) */ - DRIVER( qcrayon ) /* 1993.08 D55 (c) 1993 Taito Corporation (Japan) */ - DRIVER( qcrayon2 ) /* 1994.01 D63 (c) 1993 Taito Corporation (Japan) */ - DRIVER( driftout ) /* 1991.10 (c) 1991 Visco */ - DRIVER( driveout ) /* bootleg */ - - /* Taito F3 games */ - DRIVER( ringrage ) /* 1992.?? D21 (c) 1992 Taito Corporation Japan (World) */ - DRIVER( ringragej ) /* 1992.09 D21 (c) 1992 Taito Corporation (Japan) */ - DRIVER( ringrageu ) /* 1992.02 D21 (c) 1992 Taito America Corporation (US) */ - DRIVER( arabianm ) /* 1992.?? D29 (c) 1992 Taito Corporation Japan (World) */ - DRIVER( arabianmj ) /* 1992.09 D29 (c) 1992 Taito Corporation (Japan) */ - DRIVER( arabianmu ) /* 1992.10 D29 (c) 1992 Taito America Corporation (US) */ - DRIVER( ridingf ) /* 1992.?? D34 (c) 1992 Taito Corporation Japan (World) */ - DRIVER( ridingfj ) /* 1992.12 D34 (c) 1992 Taito Corporation (Japan) */ - DRIVER( ridingfu ) /* 1992.?? D34 (c) 1992 Taito America Corporation (US) */ - DRIVER( gseeker ) /* 1992.?? D40 (c) 1992 Taito Corporation Japan (World) */ - DRIVER( gseekerj ) /* 1992.12 D40 (c) 1992 Taito Corporation (Japan) */ - DRIVER( gseekeru ) /* 1992.?? D40 (c) 1992 Taito America Corporation (US) */ - DRIVER( hthero93 ) /* 1993.03 D49 (c) 1992 Taito Corporation (Japan) */ - /* 1993.04 D49 (US) */ - DRIVER( cupfinal ) /* 1993.?? D49 (c) 1993 Taito Corporation Japan (World) */ - DRIVER( trstar ) /* 1993.?? D53 (c) 1993 Taito Corporation Japan (World) */ - DRIVER( trstarj ) /* 1993.07 D53 (c) 1993 Taito Corporation (Japan) */ - DRIVER( prmtmfgt ) /* 1993.08 D53 (c) 1993 Taito Corporation (US) */ - DRIVER( prmtmfgto ) /* 1993.08 D53 (c) 1993 Taito Corporation (US) */ - DRIVER( trstaro ) /* 1993.?? D53 (c) 1993 Taito Corporation (World) */ - DRIVER( trstaroj ) /* 1993.07 D53 (c) 1993 Taito Corporation (Japan) */ - DRIVER( gunlock ) /* 1994.?? D66 (c) 1993 Taito Corporation Japan (World) */ - DRIVER( rayforcej ) /* 1994.02 D66 (c) 1993 Taito Corporation (Japan) */ - DRIVER( rayforce ) /* 1994.?? D66 (c) 1993 Taito America Corporation (US) */ - DRIVER( scfinals ) /* 1994.?? D68 (c) 1993 Taito Corporation Japan (World) */ - DRIVER( intcup94 ) /* 1994.?? D78 (c) 1994 Taito (World) */ - DRIVER( hthero94 ) /* 1994.09 D78 (c) 1994 Taito (US) */ - DRIVER( lightbr ) /* 1994.03 D69 (c) 1993 Taito Corporation Japan (World) */ - DRIVER( lightbrj ) /* 1994.03 D69 (c) 1993 Taito Corporation (Japan) */ - DRIVER( dungeonm ) /* 1994.?? D69 (c) 1993 Taito Corporation Japan (World) */ - DRIVER( dungeonmu ) /* 1994.?? D69 (c) 1993 Taito America Corporation (US) */ - DRIVER( kaiserkn ) /* 1994.?? D84 (c) 1994 Taito Corporation Japan (World) */ - DRIVER( kaiserknj ) /* 1994.08 D84 (c) 1994 Taito Corporation (Japan) */ - DRIVER( gblchmp ) /* 1994.10 D84 (c) 1994 Taito America Corporation (US) */ - DRIVER( dankuga ) /* 1994.?? D84? (c) 1994 Taito Corporation (Japan) */ - DRIVER( dariusg ) /* 1994.?? D87 (c) 1994 Taito Corporation Japan (World) */ - DRIVER( dariusgj ) /* 1994.09 D87 (c) 1994 Taito Corporation (Japan) */ - DRIVER( dariusgu ) /* 1994.11 D87 (c) 1994 Taito America Corporation (US) */ - DRIVER( dariusgx ) /* 1994.?? D87 (c) 1994 Taito Corporation */ - DRIVER( bublbob2 ) /* 1994.?? D90 (c) 1994 Taito Corporation Japan (World) */ - DRIVER( bubsymphe ) /* 1994.?? D90 (c) 1994 Taito Corporation Japan (Europe) */ - DRIVER( bubsymphu ) /* 1994.10 D90 (c) 1994 Taito America Corporation (US) */ - DRIVER( bubsymphj ) /* 1994.10 D90 (c) 1994 Taito Corporation (Japan) */ - DRIVER( bubsymphb ) /* bootleg */ - DRIVER( spcinvdj ) /* 1994.09 D93 (c) 1994 Taito Corporation (Japan) */ - DRIVER( pwrgoal ) /* 1994.?? D94 (c) 1995 Taito Corporation Japan (World) */ - DRIVER( hthero95 ) /* 1994.11 D94 (c) 1995 Taito Corporation (Japan) */ - DRIVER( hthero95u ) /* 1995.05 D94 (c) 1995 Taito America Corporation (US) */ - DRIVER( qtheater ) /* 1995.01 D95 (c) 1994 Taito Corporation (Japan) */ - DRIVER( elvactr ) /* 1995.?? E02 (c) 1994 Taito Corporation Japan (World) */ - DRIVER( elvactrj ) /* 1995.03 E02 (c) 1994 Taito Corporation (Japan) */ - DRIVER( elvact2u ) /* 1995.05 E02 (c) 1994 Taito America Corporation (US) */ - DRIVER( spcinv95 ) /* 1995.?? E06 (c) 1995 Taito Corporation Japan (World) */ - DRIVER( spcinv95u ) /* 1995.05 E06 (c) 1995 Taito America Corporation (US) */ - DRIVER( akkanvdr ) /* 1995.07 E06 (c) 1995 Taito Corporation (Japan) */ - DRIVER( twinqix ) /* 1995.03 ??? (c) 1995 Taito America Corporation (US) */ - DRIVER( quizhuhu ) /* 1995.07 E08 (c) 1995 Taito Corporation (Japan) */ - DRIVER( pbobble2 ) /* 1995.?? E10 (c) 1995 Taito Corporation Japan (World) */ - DRIVER( pbobble2o ) /* 1995.?? E10 (c) 1995 Taito Corporation Japan (World) */ - DRIVER( pbobble2j ) /* 1995.09 E10 (c) 1995 Taito Corporation (Japan) */ - DRIVER( pbobble2u ) /* 1995.11 E10 (c) 1995 Taito America Corporation (US) */ - DRIVER( pbobble2x ) /* 1995.12 E10 (c) 1995 Taito Corporation (Japan) */ - DRIVER( gekiridn ) /* 1995.11 E11 (c) 1995 Taito Corporation Japan (World) */ - DRIVER( gekiridnj ) /* 1995.11 E11 (c) 1995 Taito Corporation (Japan) */ - DRIVER( tcobra2 ) /* 1996.?? E15 (c) 1995 Taito Corporation (World) */ - DRIVER( tcobra2u ) /* 1996.?? E15 (c) 1995 Taito Corporation (US) */ - DRIVER( ktiger2 ) /* 1996.02 E15 (c) 1995 Taito Corporation (Japan) */ - DRIVER( bubblem ) /* 1996.?? E21 (c) 1995 Taito Corporation Japan (World) */ - DRIVER( bubblemj ) /* 1996.04 E21 (c) 1995 Taito Corporation (Japan) */ - DRIVER( cleopatr ) /* 1996.10 E28 (c) 1996 Taito Corporation (Japan) */ - DRIVER( pbobble3 ) /* 1996.?? E29 (c) 1996 Taito Corporation (World) */ - DRIVER( pbobble3u ) /* 1996.11 E29 (c) 1996 Taito Corporation (US) */ - DRIVER( pbobble3j ) /* 1996.11 E29 (c) 1996 Taito Corporation (Japan) */ - DRIVER( arkretrn ) /* 1997.03 E36 (c) 1997 Taito Corporation (Japan) */ - DRIVER( kirameki ) /* 1997.09 E44 (c) 1997 Taito Corporation (Japan) */ - DRIVER( puchicar ) /* 1997.?? E46 (c) 1997 Taito Corporation (World) */ - DRIVER( puchicarj ) /* 1997.12 E46 (c) 1997 Taito Corporation (Japan) */ - DRIVER( pbobble4 ) /* 1998.?? E49 (c) 1997 Taito Corporation (World) */ - DRIVER( pbobble4j ) /* 1998.02 E49 (c) 1997 Taito Corporation (Japan) */ - DRIVER( pbobble4u ) /* 1998.?? E49 (c) 1997 Taito Corporation (US) */ - DRIVER( popnpop ) /* 1998.?? E51 (c) 1997 Taito Corporation (World) */ - DRIVER( popnpopj ) /* 1998.03 E51 (c) 1997 Taito Corporation (Japan) */ - DRIVER( popnpopu ) /* 1998.?? E51 (c) 1997 Taito Corporation (US) */ - DRIVER( landmakr ) /* 1998.08 E61 (c) 1998 Taito Corporation (Japan) */ - DRIVER( landmakrp ) /* 1998.?? E61 (c) 1998 Taito Corporation (World, prototype) */ - DRIVER( recalh ) /* prototype */ - DRIVER( commandw ) /* prototype */ - - /* Taito JC System */ - DRIVER( dangcurv ) /* 1995.?? E09 (c) 1995 Taito Corporation */ - /* 1995.07 (Japan) */ - /* 1995.10 (US) */ - DRIVER( landgear ) /* 1996.?? E17 (c) 1995 Taito Corporation Japan (World) */ - /* 1996.03 (Japan) */ - DRIVER( sidebs ) /* 1996.07 E23 (c) 1996 Taito Corporation (Japan) */ - DRIVER( dendeg ) /* 1997.03 E35 (c) 1996 Taito Corporation (Japan) */ - DRIVER( sidebs2j ) /* 1997.07 E38 (c) 1997 Taito Corporation (Japan) */ - DRIVER( sidebs2 ) /* 1997.?? E38 (c) 1997 Taito Corporation (Japan) */ - DRIVER( dendegx ) /* 1997.09 E35 (c) 1996 Taito Corporation (Japan) */ - DRIVER( dendeg2 ) /* 1998.03 E52 (c) 1998 Taito Corporation (Japan) */ - DRIVER( dendeg2x ) /* 1998.08 E52 (c) 1998 Taito Corporation (Japan) */ - - /* Taito "Wolf" System */ - DRIVER( pf2012 ) /* E59 (c) 1997 Taito */ - - /* Taito PPC JC System */ - DRIVER( optiger ) /* 1998.09 E63 (c) 1998 Taito */ - - /* Taito Type-Zero System */ - DRIVER( taitotz ) - DRIVER( batlgear ) /* E68 (c) 1999 Taito */ - DRIVER( landhigh ) /* E82 (c) 1999 Taito */ - DRIVER( batlgr2 ) /* E87 (c) 2000 Taito */ - - /* Toaplan games */ - DRIVER( perfrman ) /* (c) 1985 Data East Corporation (Japan) */ - DRIVER( perfrmanu ) /* (c) 1985 Data East USA (US) */ - DRIVER( tigerh ) /* A47 (c) 1985 Taito America Corporation GX-551 [not a Konami board!] */ - DRIVER( tigerhj ) /* A47 (c) 1985 Taito Corporation GX-551 [not a Konami board!] */ - DRIVER( tigerhb1 ) /* bootleg but (c) 1985 Taito Corporation */ - DRIVER( tigerhb2 ) /* bootleg but (c) 1985 Taito Corporation */ - DRIVER( tigerhb3 ) /* bootleg but (c) 1985 Taito Corporation */ - DRIVER( alcon ) /* A77 / TP-??? */ - DRIVER( slapfigh ) /* A77 / TP-??? */ - DRIVER( slapfigha ) /* A76 / TP-??? */ - DRIVER( slapfighb1 ) /* bootleg but (c) 1986 Taito Corporation */ - DRIVER( slapfighb2 ) /* bootleg but (c) 1986 Taito Corporation */ - DRIVER( slapfighb3 ) /* bootleg but (c) 1986 Taito Corporation */ - DRIVER( getstar ) /* A68 (c) 1986 Taito Corporation */ - DRIVER( getstarj ) /* A68 (c) 1986 Taito Corporation */ - DRIVER( gtstarb1 ) /* GX-006 bootleg but (c) 1986 Taito Corporation */ - DRIVER( gtstarb2 ) /* GX-006 bootleg but (c) 1986 Taito Corporation */ - DRIVER( mjsister ) /* (c) 1986 Toaplan */ - - DRIVER( fshark ) /* B02 / TP-007 (c) 1987 Taito Corporation (World) */ - DRIVER( skyshark ) /* B02 / TP-007 (c) 1987 Taito America Corporation + Romstar license (US) */ - DRIVER( hishouza ) /* B02 / TP-007 (c) 1987 Taito Corporation (Japan) */ - DRIVER( fsharkbt ) /* bootleg */ - DRIVER( wardner ) /* B25 / TP-009 (c) 1987 Taito Corporation Japan (World) */ - DRIVER( pyros ) /* B25 / TP-009 (c) 1987 Taito America Corporation (US) */ - DRIVER( wardnerj ) /* B25 / TP-009 (c) 1987 Taito Corporation (Japan) */ - DRIVER( twincobr ) /* B30 / TP-011 (c) 1987 Taito Corporation (World) */ - DRIVER( twincobru ) /* B30 / TP-011 (c) 1987 Taito America Corporation + Romstar license (US) */ - DRIVER( ktiger ) /* B30 / TP-011 (c) 1987 Taito Corporation (Japan) */ - DRIVER( gulfwar2 ) /* (c) 1991 Comad */ - - DRIVER( rallybik ) /* B45 / TP-O12 (c) 1988 Taito */ - DRIVER( truxton ) /* B65 / TP-O13B (c) 1988 Taito */ - DRIVER( hellfire ) /* B90 / TP-??? (c) 1989 Toaplan + Taito license */ - DRIVER( hellfire1 ) /* B90 / TP-??? (c) 1989 Toaplan + Taito license */ - DRIVER( hellfire2 ) /* B90 / TP-??? (c) 1989 Toaplan + Taito license */ - DRIVER( hellfire3 ) /* B90 / TP-??? (c) 1989 Toaplan + Taito license */ - DRIVER( zerowing ) /* TP-O15 (c) 1989 Toaplan */ - DRIVER( zerowing2 ) /* TP-O15 (c) 1989 Toaplan */ - DRIVER( demonwld ) /* TP-O16 (c) 1990 Toaplan (+ Taito license when set to Japan) */ - DRIVER( demonwld1 ) /* TP-O16 (c) 1989 Toaplan + Taito license */ - DRIVER( demonwld2 ) /* TP-O16 (c) 1989 Toaplan */ - DRIVER( demonwld3 ) /* TP-O16 (c) 1989 Toaplan */ - DRIVER( demonwld4 ) /* TP-O16 (c) 1989 Toaplan */ - DRIVER( fireshrk ) /* TP-O17 (c) 1990 Toaplan */ - DRIVER( fireshrkd ) /* TP-O17 (c) 1990 Toaplan */ - DRIVER( fireshrkdh ) /* TP-O17 (c) 1990 Toaplan */ - DRIVER( samesame ) /* TP-O17 (c) 1989 Toaplan */ - DRIVER( samesame2 ) /* TP-O17 (c) 1989 Toaplan */ - DRIVER( outzone ) /* TP-O18 (c) 1990 Toaplan */ - DRIVER( outzonea ) /* TP-O18 (c) 1990 Toaplan */ - DRIVER( outzoneb ) /* TP-O18 (c) 1990 Toaplan */ - DRIVER( outzonec ) /* TP-O18 (c) 1990 Toaplan */ - DRIVER( outzoned ) /* TP-O18 (c) 1990 Toaplan */ - DRIVER( vimana ) /* TP-O19 (c) 1991 Toaplan (+ Tecmo license when set to Japan) */ - DRIVER( vimana1 ) /* TP-O19 (c) 1991 Toaplan (+ Tecmo license when set to Japan) */ - DRIVER( vimanan ) /* TP-O19 (c) 1991 Toaplan (+ Nova Apparate GMBH & Co license) */ - DRIVER( snowbros ) /* MIN16-02 (c) 1990 Toaplan + Romstar license */ - DRIVER( snowbrosa ) /* MIN16-02 (c) 1990 Toaplan + Romstar license */ - DRIVER( snowbrosb ) /* MIN16-02 (c) 1990 Toaplan + Romstar license */ - DRIVER( snowbrosc ) /* MIN16-02 (c) 1990 Toaplan + Romstar license */ - DRIVER( snowbrosj ) /* MIN16-02 (c) 1990 Toaplan */ - DRIVER( snowbrosd ) /* MIN16-02 (c) 1990 Toaplan + Dooyong license */ - DRIVER( wintbob ) /* bootleg */ - DRIVER( honeydol ) /* (c) 1995 Barko Corp */ - DRIVER( twinadv ) /* (c) 1995 Barko Corp */ - DRIVER( twinadvk ) /* (c) 1995 Barko Corp */ - /* SemiCom games on snowbros like hardware */ - DRIVER( hyperpac ) /* (c) 1995 SemiCom */ - DRIVER( hyperpacb ) /* bootleg */ - DRIVER( toppyrap ) /* (c) 1996 SemiCom */ - DRIVER( cookbib2 ) /* (c) 1996 SemiCom */ - DRIVER( cookbib3 ) /* (c) 1997 SemiCom */ - DRIVER( twinkle ) /* (c) 1997 SemiCom */ - DRIVER( pzlbreak ) /* (c) 1997 SemiCom */ - DRIVER( 3in1semi ) /* (c) 1998 SemiCom */ - DRIVER( moremore ) /* (c) 1999 SemiCom + Exit */ - DRIVER( moremorp ) /* (c) 1999 SemiCom + Exit */ - DRIVER( 4in1boot ) /* (c) 2002 but bootleg of 1999 release? */ - DRIVER( snowbros3 ) /* (c) 2002 but hack / bootleg of snowbros? */ - DRIVER( finalttr ) /* (c) 1993 Jeil Computer System */ - - /* More Toaplan Games */ - DRIVER( tekipaki ) /* TP-020 (c) 1991 Toaplan */ - DRIVER( ghox ) /* TP-021 (c) 1991 Toaplan */ - DRIVER( ghoxj ) /* TP-021 (c) 1991 Toaplan */ - DRIVER( dogyuun ) /* TP-022 (c) 1992 Toaplan */ - DRIVER( dogyuuna ) /* TP-022 (c) 1992 Toaplan */ - DRIVER( dogyuunt ) /* TP-022 (c) 1992 Toaplan */ - DRIVER( kbash ) /* TP-023 (c) 1993 Toaplan */ - DRIVER( kbash2 ) /* bootleg */ - DRIVER( truxton2 ) /* TP-024 (c) 1992 Toaplan */ - DRIVER( pipibibs ) /* TP-025 */ - DRIVER( pipibibsa ) /* TP-025 */ - DRIVER( whoopee ) /* TP-025 */ - DRIVER( pipibibsbl )/* (c) 1991 Ryouta Kikaku (bootleg) */ - DRIVER( fixeight ) /* TP-026 (c) 1992 + Taito license */ - DRIVER( fixeightt ) - DRIVER( fixeightkt ) - DRIVER( fixeightk ) - DRIVER( fixeightht ) - DRIVER( fixeighth ) - DRIVER( fixeighttwt ) - DRIVER( fixeighttw ) - DRIVER( fixeightat ) - DRIVER( fixeighta ) - DRIVER( fixeightu ) - DRIVER( fixeightut ) - DRIVER( fixeightj ) - DRIVER( fixeightjt ) - DRIVER( fixeightbl ) /* bootleg */ - DRIVER( grindstm ) /* TP-027 (c) 1993 Toaplan + Unite Trading license (Korea) */ - DRIVER( grindstma ) /* TP-027 (c) 1993 Toaplan + Unite Trading license (Korea) */ - DRIVER( vfive ) /* TP-027 (c) 1993 Toaplan (Japan) */ - DRIVER( batsugun ) /* TP-030 (c) 1993 Toaplan */ - DRIVER( batsuguna ) /* TP-030 (c) 1993 Toaplan */ - DRIVER( batsugunsp )/* TP-??? (c) 1993 Toaplan */ - DRIVER( snowbro2 ) /* TP-??? (c) 1994 Hanafram */ - DRIVER( sstriker ) /* (c) 1993 Raizing */ - DRIVER( sstrikera ) /* (c) 1993 Raizing */ - DRIVER( mahoudai ) /* (c) 1993 Raizing + Able license */ - DRIVER( kingdmgp ) /* (c) 1994 Raizing/8ing */ - DRIVER( shippumd ) /* (c) 1994 Raizing/8ing */ - DRIVER( bgaregga ) /* (c) 1996 Raizing/8ing */ - DRIVER( bgareggahk ) /* (c) 1996 Raizing/8ing */ - DRIVER( bgareggatw ) /* (c) 1996 Raizing/8ing */ - DRIVER( bgaregganv ) /* (c) 1996 Raizing/8ing */ - DRIVER( bgareggat2 ) /* (c) 1996 Raizing/8ing */ - DRIVER( bgareggacn ) /* (c) 1996 Raizing/8ing */ - DRIVER( batrider ) /* (c) 1998 Raizing/8ing */ - DRIVER( batrideru ) /* (c) 1998 Raizing/8ing */ - DRIVER( batriderc ) /* (c) 1998 Raizing/8ing */ - DRIVER( batriderj ) /* (c) 1998 Raizing/8ing */ - DRIVER( batriderk ) /* (c) 1998 Raizing/8ing */ - DRIVER( batriderja ) /* (c) 1998 Raizing/8ing */ - DRIVER( batridert ) /* (c) 1998 Raizing/8ing */ - DRIVER( bbakraid ) /* (c) 1999 8ing */ - DRIVER( bbakraidj ) /* (c) 1999 8ing */ - DRIVER( bbakraidja ) /* (c) 1999 8ing */ - -/* -Toa Plan's board list -(translated from http://www.aianet.ne.jp/~eisetu/rom/rom_toha.html) - -Title ROMno. Remark(1) Remark(2) --------------------------------------------------- -Tiger Heli A47 GX-551 -Hishouzame B02 TP-007 -Kyukyoku Tiger B30 TP-011 -Dash Yarou B45 TP-012 -Tatsujin B65 TP-013B M6100649A -Zero Wing O15 TP-015 -Horror Story O16 TP-016 -Same!Same!Same! O17 TP-017 -Out Zone TP-018 -Vimana TP-019 -Teki Paki O20 TP-020 -Ghox TP-21 TP-021 -Dogyuun TP-022 -Tatsujin Oh TP-024 *1 -Fixeight TP-026 -V-V TP-027 - -*1 There is a doubt this game uses TP-024 board and TP-025 romsets. - - 86 Mahjong Sisters Kit 2P 8W+2B HC Mahjong TP- - 88 Dash Kit 2P 8W+2B TP- - 89 Fire Shark Kit 2P 8W+2B VC Shooter TP-017 - 89 Twin Hawk Kit 2P 8W+2B VC Shooter TP- - 91 Whoopie Kit 2P 8W+2B HC Action - 92 Teki Paki Kit 2P TP-020 - 92 Ghox Kit 2P Paddle+1B VC Action TP-021 -10/92 Dogyuun Kit 2P 8W+2B VC Shooter TP-022 -92/93 Knuckle Bash Atari Games Kit 2P 8W+2B HC Action TP-023 -10/92 Tatsujin II/Truxton II Taito Kit 2P 8W+2B VC Shooter TP-024 -10/92 Truxton II/Tatsujin II Taito Kit 2P 8W+2B VC Shooter TP-024 - Pipi & Bipi TP-025 - 92 Fix Eight Kit 2P 8W+2B VC Action TP-026 -12/92 V - V (5)/Grind Stormer Kit 2P 8W+2B VC Shooter TP-027 - 1/93 Grind Stormer/V - V (Five) Kit 2P 8W+2B VC Shooter TP-027 - 2/94 Batsugun Kit 2P 8W+2B VC TP- - 4/94 Snow Bros. 2 Kit 2P 8W+2B HC Action TP- -*/ - - /* Cave games */ - /* Cave was formed in 1994 from the ruins of Toaplan, like Raizing was. */ - DRIVER( pwrinst2 ) /* (c) 1994 Atlus */ - DRIVER( pwrinst2j ) /* (c) 1994 Atlus */ - DRIVER( plegends ) /* (c) 1994 Atlus */ - DRIVER( plegendsj ) /* (c) 1994 Atlus */ - DRIVER( mazinger ) /* (c) 1994 Banpresto (country is in EEPROM) */ - DRIVER( mazingerj ) /* (c) 1994 Banpresto (country is in EEPROM) */ - DRIVER( donpachi ) /* (c) 1995 Atlus/Cave */ - DRIVER( donpachij ) /* (c) 1995 Atlus/Cave */ - DRIVER( donpachikr ) /* (c) 1995 Atlus/Cave */ - DRIVER( donpachihk ) /* (c) 1995 Atlus/Cave */ - DRIVER( metmqstr ) /* (c) 1995 Banpresto / Pandorabox */ - DRIVER( nmaster ) /* (c) 1995 Banpresto / Pandorabox */ - DRIVER( sailormn ) /* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnu ) /* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnj ) /* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnk ) /* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnt ) /* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnh ) /* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormno ) /* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnou )/* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnoj )/* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnok )/* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnot )/* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( sailormnoh )/* (c) 1995 Banpresto (country is in EEPROM) */ - DRIVER( agallet ) /* (c) 1996 Banpresto / Gazelle (country is in EEPROM) */ - DRIVER( agalletu ) /* (c) 1996 Banpresto / Gazelle (country is in EEPROM) */ - DRIVER( agalletj ) /* (c) 1996 Banpresto / Gazelle (country is in EEPROM) */ - DRIVER( agalletk ) /* (c) 1996 Banpresto / Gazelle (country is in EEPROM) */ - DRIVER( agallett ) /* (c) 1996 Banpresto / Gazelle (country is in EEPROM) */ - DRIVER( agalleth ) /* (c) 1996 Banpresto / Gazelle (country is in EEPROM) */ - DRIVER( hotdogst ) /* (c) 1996 Marble */ - DRIVER( pacslot ) /* (c) 1996 Namco */ - DRIVER( ddonpach ) /* (c) 1997 Atlus/Cave */ - DRIVER( ddonpachj ) /* (c) 1997 Atlus/Cave */ - DRIVER( dfeveron ) /* (c) 1998 Cave + Nihon System license */ - DRIVER( feversos ) /* (c) 1998 Cave + Nihon System license */ - DRIVER( esprade ) /* (c) 1998 Atlus/Cave */ - DRIVER( espradej ) /* (c) 1998 Atlus/Cave (Japan) */ - DRIVER( espradejo ) /* (c) 1998 Atlus/Cave (Japan) */ - DRIVER( uopoko ) /* (c) 1998 Cave + Jaleco license */ - DRIVER( uopokoj ) /* (c) 1998 Cave + Jaleco license */ - DRIVER( guwange ) /* (c) 1999 Atlus/Cave */ - DRIVER( gaia ) /* (c) 1999 Noise Factory */ - DRIVER( theroes ) /* (c) 2001 Primetek Investments */ - DRIVER( korokoro ) /* (c) 1999 Takumi */ - DRIVER( crusherm ) /* (c) 1999 Takumi */ - DRIVER( tjumpman ) /* (c) 1999 Namco */ - - /* Kyugo games */ - /* Kyugo only made four games: Repulse, Flash Gal, SRD Mission and Air Wolf. */ - /* Gyrodine was made by Crux. Crux was antecedent of Toa Plan, and spin-off from Orca. */ - DRIVER( gyrodine ) /* (c) 1984 Crux */ - DRIVER( gyrodinet ) /* (c) 1984 Crux (Taito Corporation license) */ - DRIVER( buzzard ) /* (c) 1984 Crux */ - DRIVER( repulse ) /* (c) 1985 Sega */ - DRIVER( 99lstwar ) /* (c) 1985 Proma */ - DRIVER( 99lstwara ) /* (c) 1985 Proma */ - DRIVER( 99lstwark ) /* (c) 1985 Kyugo */ - DRIVER( sonofphx ) /* bootleg */ - DRIVER( flashgal ) /* (c) 1985 Sega */ - DRIVER( flashgala ) /* (c) 1985 Sega */ - DRIVER( srdmissn ) /* (c) 1986 Taito Corporation */ - DRIVER( fx ) /* bootleg */ - DRIVER( legend ) /* no copyright notice [1986 Sega/Coreland] (Arcade TV Game List - P.104, Left, 14 from top) */ - DRIVER( legendb ) /* no copyright notice [1986 Sega/Coreland] (Arcade TV Game List - P.104, Left, 14 from top) */ - DRIVER( airwolf ) /* (c) 1987 Kyugo */ - DRIVER( airwolfa ) /* (c) 1987 Kyugo */ - DRIVER( skywolf ) /* bootleg */ - DRIVER( skywolf2 ) /* bootleg */ - DRIVER( skywolf3 ) /* bootleg */ - - /* Williams games */ - DRIVER( defender ) /* (c) 1980 */ - DRIVER( defenderg ) /* (c) 1980 */ - DRIVER( defenderb ) /* (c) 1980 */ - DRIVER( defenderw ) /* (c) 1980 */ - DRIVER( defndjeu ) /* bootleg */ - DRIVER( tornado1 ) /* bootleg */ - DRIVER( tornado2 ) /* bootleg */ - DRIVER( zero ) /* bootleg */ - DRIVER( zero2 ) /* bootleg */ - DRIVER( defcmnd ) /* bootleg */ - DRIVER( defence ) /* bootleg */ - DRIVER( startrkd ) /* bootleg */ - DRIVER( mayday ) /* bootleg */ - DRIVER( maydaya ) /* bootleg */ - DRIVER( maydayb ) /* bootleg */ - DRIVER( colony7 ) /* (c) 1981 Taito */ - DRIVER( colony7a ) /* (c) 1981 Taito */ - DRIVER( jin ) /* Falcon bootleg/hack */ - DRIVER( stargate ) /* (c) 1981 */ - DRIVER( robotron ) /* (c) 1982 */ - DRIVER( robotronyo )/* (c) 1982 */ - DRIVER( joust ) /* (c) 1982 */ - DRIVER( joustr ) /* (c) 1982 */ - DRIVER( joustwr ) /* (c) 1982 */ - DRIVER( bubbles ) /* (c) 1982 */ - DRIVER( bubblesr ) /* (c) 1982 */ - DRIVER( bubblesp ) /* (c) 1982 */ - DRIVER( splat ) /* (c) 1982 */ - DRIVER( sinistar ) /* (c) 1982 */ - DRIVER( sinistar1 ) /* (c) 1982 */ - DRIVER( sinistar2 ) /* (c) 1982 */ - DRIVER( playball ) /* (c) 1983 */ - DRIVER( blaster ) /* (c) 1983 */ - DRIVER( blaster30 ) /* (c) 1983 */ - DRIVER( blasterkit ) /* (c) 1983 */ - DRIVER( spdball ) /* (c) 1985 */ - DRIVER( alienar ) /* (c) 1985 Duncan Brown */ - DRIVER( alienaru ) /* (c) 1985 Duncan Brown */ - DRIVER( mysticm ) /* (c) 1983 */ - DRIVER( tshoot ) /* (c) 1984 */ - DRIVER( inferno ) /* (c) 1984 */ - DRIVER( joust2 ) /* (c) 1986 */ - DRIVER( lottofun ) /* (c) 1987 H.A.R. Management */ - - /* Capcom games */ - /* The following is a COMPLETE list of the Capcom games up to 1997, as shown on */ - /* their web site. The list is sorted by production date. */ - /* A comprehensive list of Capcom games with board info can be found here: */ - /* http://www.arcadeflyers.com/strider/capcom_list.html */ - DRIVER( vulgus ) /* 5/1984 (c) 1984 */ - DRIVER( vulgus2 ) /* 5/1984 (c) 1984 */ - DRIVER( vulgusj ) /* 5/1984 (c) 1984 */ - DRIVER( sonson ) /* 7/1984 (c) 1984 */ - DRIVER( sonsonj ) /* 7/1984 (c) 1984 (Japan) */ - DRIVER( higemaru ) /* 9/1984 (c) 1984 */ - DRIVER( 1942 ) /* 12/1984 (c) 1984 */ - DRIVER( 1942a ) /* 12/1984 (c) 1984 */ - DRIVER( 1942abl ) /* bootleg */ - DRIVER( 1942b ) /* 12/1984 (c) 1984 */ - DRIVER( 1942w ) /* 12/1984 (c) 1984 + Williams Electronics license (c) 1985 */ - DRIVER( exedexes ) /* 2/1985 (c) 1985 */ - DRIVER( savgbees ) /* 2/1985 (c) 1985 + Memetron license */ - DRIVER( commando ) /* 5/1985 (c) 1985 (World) */ - DRIVER( commandou ) /* 5/1985 (c) 1985 + Data East license (US) */ - DRIVER( commandoj ) /* 5/1985 (c) 1985 (Japan) */ - DRIVER( commandob ) /* bootleg */ - DRIVER( sinvasn ) /* Europe original? */ - DRIVER( sinvasnb ) /* bootleg */ - DRIVER( gng ) /* 9/1985 (c) 1985 */ - DRIVER( gnga ) /* 9/1985 (c) 1985 */ - DRIVER( gngbl ) /* bootleg */ - DRIVER( gngblita ) /* bootleg */ - DRIVER( gngc ) /* 9/1985 (c) 1985 */ - DRIVER( gngt ) /* 9/1985 (c) 1985 */ - DRIVER( makaimur ) /* 9/1985 (c) 1985 */ - DRIVER( makaimurc ) /* 9/1985 (c) 1985 */ - DRIVER( makaimurg ) /* 9/1985 (c) 1985 */ - DRIVER( diamond ) /* (c) 1989 KH Video (NOT A CAPCOM GAME but runs on GnG hardware) */ - DRIVER( gunsmoke ) /* 11/1985 (c) 1985 (World) */ - DRIVER( gunsmokeu ) /* 11/1985 (c) 1985 + Romstar (US) */ - DRIVER( gunsmokeua )/* 11/1985 (c) 1985 (US) */ - DRIVER( gunsmokej ) /* 11/1985 (c) 1985 (Japan) */ - DRIVER( sectionz ) /* 12/1985 (c) 1985 */ - DRIVER( sectionza ) /* 12/1985 (c) 1985 */ - DRIVER( trojan ) /* 4/1986 (c) 1986 (US) */ - DRIVER( trojanr ) /* 4/1986 (c) 1986 + Romstar */ - DRIVER( trojanj ) /* 4/1986 (c) 1986 (Japan) */ - DRIVER( srumbler ) /* 9/1986 (c) 1986 */ - DRIVER( srumbler2 ) /* 9/1986 (c) 1986 */ - DRIVER( rushcrsh ) /* 9/1986 (c) 1986 */ - DRIVER( lwings ) /* 11/1986 (c) 1986 */ - DRIVER( lwings2 ) /* 11/1986 (c) 1986 */ - DRIVER( lwingsj ) /* 11/1986 (c) 1986 */ - DRIVER( lwingsb ) /* 11/1986 (c) 1986 (bootleg)*/ - DRIVER( sidearms ) /* 12/1986 (c) 1986 (World) */ - DRIVER( sidearmsr ) /* 12/1986 (c) 1986 + Romstar license (US) */ - DRIVER( sidearmsj ) /* 12/1986 (c) 1986 (Japan) */ - DRIVER( turtship ) /* (c) 1988 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) */ - DRIVER( turtshipj ) /* (c) 1988 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) */ - DRIVER( turtshipk ) /* (c) 1988 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) */ - DRIVER( dyger ) /* (c) 1989 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) */ - DRIVER( dygera ) /* (c) 1989 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) */ - DRIVER( twinfalc ) /* (c) 1989 Philko (Poara Enterprises license) (NOT A CAPCOM GAME but runs on modified Sidearms hardware) */ - DRIVER( whizz ) /* (c) 1989 Philco (NOT A CAPCOM GAME but runs on modified Sidearms hardware) */ - DRIVER( avengers ) /* 2/1987 (c) 1987 (US) */ - DRIVER( avengers2 ) /* 2/1987 (c) 1987 (US) */ - DRIVER( buraiken ) /* 2/1987 (c) 1987 (Japan) */ - DRIVER( bionicc ) /* 3/1987 (c) 1987 (Euro) */ - DRIVER( bionicc1 ) /* 3/1987 (c) 1987 (US) */ - DRIVER( bionicc2 ) /* 3/1987 (c) 1987 (US) */ - DRIVER( topsecrt ) /* 3/1987 (c) 1987 (Japan) */ - DRIVER( 1943 ) /* 6/1987 (c) 1987 (Euro) */ - DRIVER( 1943u ) /* 6/1987 (c) 1987 (US) */ - DRIVER( 1943j ) /* 6/1987 (c) 1987 (Japan) */ - DRIVER( 1943b ) /* bootleg */ - DRIVER( blktiger ) /* 8/1987 (c) 1987 (US) */ - DRIVER( blktigera ) /* 8/1987 (c) 1987 (US) */ - DRIVER( blktigerb1 )/* bootleg */ - DRIVER( blktigerb2 )/* bootleg */ - DRIVER( blkdrgon ) /* 8/1987 (c) 1987 (Japan) */ - DRIVER( blkdrgonb ) /* bootleg, hacked to say Black Tiger */ - DRIVER( sf ) /* 8/1987 (c) 1987 (World) */ - DRIVER( sfu ) /* 8/1987 (c) 1987 (US) */ - DRIVER( sfua ) /* 8/1987 (c) 1987 (US) */ - DRIVER( sfj ) /* 8/1987 (c) 1987 (Japan) */ - DRIVER( sfp ) /* 8/1987 (c) 1987 */ - DRIVER( tigeroad ) /* 11/1987 (c) 1987 + Romstar (US) */ - DRIVER( toramich ) /* 11/1987 (c) 1987 (Japan) */ - DRIVER( tigeroadb ) /* bootleg */ - DRIVER( f1dream ) /* 4/1988 (c) 1988 + Romstar */ - DRIVER( f1dreamb ) /* bootleg */ - DRIVER( 1943kai ) /* 6/1988 (c) 1987 (Japan) */ - DRIVER( lastduel ) /* 7/1988 (c) 1988 (US) */ - DRIVER( lastduelo ) /* 7/1988 (c) 1988 (US) */ - DRIVER( lastduelj ) /* 7/1988 (c) 1988 (Japan) */ - DRIVER( lastduelb ) /* bootleg */ - DRIVER( madgear ) /* 2/1989 (c) 1989 (US) */ - DRIVER( madgearj ) /* 2/1989 (c) 1989 (Japan) */ - DRIVER( ledstorm ) /* 1988 (c) 1988 (US) */ - DRIVER( ledstorm2 ) /* 1988 (c) 1988 (US) */ - /* 3/1989 Dokaben (baseball) - see below among "Mitchell" games */ - /* 8/1989 Dokaben 2 (baseball) - see below among "Mitchell" games */ - /* 10/1989 Capcom Baseball - see below among "Mitchell" games */ - /* 11/1989 Capcom World - see below among "Mitchell" games */ - /* 3/1990 Adventure Quiz 2 Hatena no Dai-Bouken - see below among "Mitchell" games */ - /* 1/1991 Quiz Tonosama no Yabou - see below among "Mitchell" games */ - /* 4/1991 Ashita Tenki ni Naare (golf) - see below among "Mitchell" games */ - /* 5/1991 Ataxx - see below among "Leland" games */ - /* 6/1991 Quiz Sangokushi - see below among "Mitchell" games */ - /* 10/1991 Block Block - see below among "Mitchell" games */ - /* 6/1995 Street Fighter - the Movie - see below among "Incredible Technologies" games */ - - - /* Capcom CPS1 games */ - DRIVER( forgottn ) /* 7/1988 (c) 1988 (World) */ - DRIVER( forgottnu ) /* 7/1988 (c) 1988 (USA) */ - DRIVER( forgottnua ) /* 7/1988 (c) 1988 (USA) */ - DRIVER( lostwrld ) /* 7/1988 (c) 1988 (Japan) */ - DRIVER( lostwrldo ) /* 7/1988 (c) 1988 (Japan) */ - DRIVER( ghouls ) /* 12/1988 (c) 1988 (World) */ - DRIVER( ghoulsu ) /* 12/1988 (c) 1988 (USA) */ - DRIVER( daimakai ) /* 12/1988 (c) 1988 (Japan) */ - DRIVER( daimakair ) /* 12/1988 (c) 1988 (Japan) */ - DRIVER( strider ) /* 3/1989 (c) 1989 (not explicitly stated but should be USA) */ - DRIVER( striderua ) /* 3/1989 (c) 1989 (not explicitly stated but should be USA) */ - DRIVER( striderj ) /* 3/1989 (c) 1989 (Japan) */ - DRIVER( striderjr ) /* 3/1989 (c) 1989 (Japan) */ - DRIVER( dynwar ) /* 4/1989 (c) 1989 (USA) */ - DRIVER( dynwara ) /* 4/1989 (c) 1989 (USA) */ - DRIVER( dynwarj ) /* 4/1989 (c) 1989 (Japan) */ - DRIVER( dynwarjr ) /* 4/1989 (c) 1989 (Japan) */ - DRIVER( willow ) /* 6/1989 (c) 1989 (USA) */ - DRIVER( willowo ) /* 6/1989 (c) 1989 (USA) */ - DRIVER( willowj ) /* 6/1989 (c) 1989 (Japan) */ - DRIVER( unsquad ) /* 8/1989 (c) 1989 (USA) */ - DRIVER( area88 ) /* 8/1989 (c) 1989 (Japan) */ - DRIVER( area88r ) /* 8/1989 (c) 1989 (Japan) */ - DRIVER( ffight ) /* 12/1989 (c) 1989 (World) */ - DRIVER( ffightu ) /* 12/1989 (c) 1989 (USA) */ - DRIVER( ffightua ) /* 12/01/1990 (c) 1989 (USA) */ - DRIVER( ffightub ) /* 13/06/1990 (c) 1989 (USA) */ - DRIVER( ffightj ) /* 12/1989 (c) 1989 (Japan) */ - DRIVER( ffightj1 ) /* 12/01/1990 (c) 1989 (Japan) */ - DRIVER( ffightj2 ) /* 05/03/1990 (c) 1989 (Japan) */ - DRIVER( ffightjh ) /* hack */ - DRIVER( 1941 ) /* 2/1990 (c) 1990 (World) */ - DRIVER( 1941u ) /* 27/02/1990 (c) 1990 (USA) */ - DRIVER( 1941j ) /* 2/1990 (c) 1990 (Japan) */ - DRIVER( mercs ) /* 02/03/1990 (c) 1990 (World) */ - DRIVER( mercsu ) /* 08/06/1990 (c) 1990 (USA) */ - DRIVER( mercsur1 ) /* 02/03/1990 (c) 1990 (USA) */ - DRIVER( mercsj ) /* 02/03/1990 (c) 1990 (Japan) */ - DRIVER( mtwins ) /* 19/06/1990 (c) 1990 (World) */ - DRIVER( chikij ) /* 19/06/1990 (c) 1990 (Japan) */ - DRIVER( msword ) /* 25/07/1990 (c) 1990 (World) */ - DRIVER( mswordr1 ) /* 23/06/1990 (c) 1990 (World) */ - DRIVER( mswordu ) /* 25/07/1990 (c) 1990 (USA) */ - DRIVER( mswordj ) /* 23/06/1990 (c) 1990 (Japan) */ - DRIVER( cawing ) /* 12/10/1990 (c) 1990 (World) */ - DRIVER( cawingr1 ) /* 09/10/1990 (c) 1990 (World) */ - DRIVER( cawingu ) /* 12/10/1990 (c) 1990 (USA) */ - DRIVER( cawingj ) /* 12/10/1990 (c) 1990 (Japan) */ - DRIVER( nemo ) /* 30/11/1990 (c) 1990 (World) */ - DRIVER( nemoj ) /* 20/11/1990 (c) 1990 (Japan) */ - DRIVER( sf2 ) /* 22/05/1991 (c) 1991 (World) */ - DRIVER( sf2eb ) /* 14/02/1991 (c) 1991 (World) */ - DRIVER( sf2ee ) /* 28/02/1991 (c) 1991 (World) */ - DRIVER( sf2ebbl ) /* 14/02/1991 (c) 1991 (World, bootleg) */ - DRIVER( sf2ua ) /* 06/02/1991 (c) 1991 (USA) */ - DRIVER( sf2ub ) /* 14/02/1991 (c) 1991 (USA) */ - DRIVER( sf2ud ) /* 18/03/1991 (c) 1991 (USA) */ - DRIVER( sf2ue ) /* 28/02/1991 (c) 1991 (USA) */ - DRIVER( sf2uf ) /* 11/04/1991 (c) 1991 (USA) */ - DRIVER( sf2ui ) /* 22/05/1991 (c) 1991 (USA) */ - DRIVER( sf2uk ) /* 01/11/1991 (c) 1991 (USA) */ - DRIVER( sf2j ) /* 10/12/1991 (c) 1991 (Japan) */ - DRIVER( sf2ja ) /* 14/02/1991 (c) 1991 (Japan) */ - DRIVER( sf2jc ) /* 06/03/1991 (c) 1991 (Japan) */ - DRIVER( sf2qp1 ) /* hack */ - DRIVER( sf2thndr ) /* hack */ - DRIVER( 3wonders ) /* 20/05/1991 (c) 1991 (World) */ - DRIVER( 3wondersu ) /* 20/05/1991 (c) 1991 (USA) */ - DRIVER( wonder3 ) /* 20/05/1991 (c) 1991 (Japan) */ - DRIVER( 3wondersh ) /* hack */ - DRIVER( kod ) /* 05/08/1991 (c) 1991 (World) */ - DRIVER( kodr1 ) /* 11/07/1991 (c) 1991 (World) */ - DRIVER( kodu ) /* 10/09/1991 (c) 1991 (USA) */ - DRIVER( kodj ) /* 05/08/1991 (c) 1991 (Japan) */ - DRIVER( kodja ) /* 05/08/1991 (c) 1991 (Japan) */ - DRIVER( kodb ) /* bootleg */ - DRIVER( captcomm ) /* 02/12/1991 (c) 1991 (World) */ - DRIVER( captcommr1 ) /* 14/10/1991 (c) 1991 (World) */ - DRIVER( captcommu ) /* 28/09/1991 (c) 1991 (USA) */ - DRIVER( captcommj ) /* 02/12/1991 (c) 1991 (Japan) */ - DRIVER( captcommjr1 ) /* 28/09/1991 (c) 1991 (Japan) */ - DRIVER( captcommb ) /* bootleg */ - DRIVER( knights ) /* 27/11/1991 (c) 1991 (World) */ - DRIVER( knightsu ) /* 27/11/1991 (c) 1991 (USA) */ - DRIVER( knightsj ) /* 27/11/1991 (c) 1991 (Japan) */ - DRIVER( knightsja ) /* 27/11/1991 (c) 1991 (Japan) */ - DRIVER( knightsb ) /* bootleg */ - DRIVER( sf2ce ) /* 13/05/1992 (c) 1992 (World) */ - DRIVER( sf2ceea ) /* 13/03/1992 (c) 1992 (World) */ - DRIVER( sf2ceua ) /* 13/03/1992 (c) 1992 (USA) */ - DRIVER( sf2ceub ) /* 13/05/1992 (c) 1992 (USA) */ - DRIVER( sf2ceuc ) /* 03/08/1992 (c) 1992 (USA) */ - DRIVER( sf2cej ) /* 13/05/1992 (c) 1992 (Japan) */ - DRIVER( sf2rb ) /* hack */ - DRIVER( sf2rb2 ) /* hack */ - DRIVER( sf2rb3 ) /* hack */ - DRIVER( sf2red ) /* hack */ - DRIVER( sf2v004 ) /* hack */ - DRIVER( sf2acc ) /* hack */ - DRIVER( sf2accp2 ) /* hack */ - DRIVER( sf2dkot2 ) /* hack */ - DRIVER( sf2m1 ) /* hack */ - DRIVER( sf2m2 ) /* hack */ - DRIVER( sf2m3 ) /* hack */ - DRIVER( sf2m4 ) /* hack */ - DRIVER( sf2m5 ) /* hack */ - DRIVER( sf2m6 ) /* hack */ - DRIVER( sf2m7 ) /* hack */ - DRIVER( sf2yyc ) /* hack */ - DRIVER( sf2koryu ) /* hack */ - DRIVER( sf2mdt ) /* bootleg */ - DRIVER( cworld2j ) /* 11/06/1992 (c) 1992 (Japan) */ - DRIVER( varth ) /* 14/07/1992 (c) 1992 (World) */ - DRIVER( varthr1 ) /* 12/06/1992 (c) 1992 (World) */ - DRIVER( varthu ) /* 12/06/1992 (c) 1992 (USA) */ - DRIVER( varthj ) /* 14/07/1992 (c) 1992 (Japan) */ - DRIVER( qad ) /* 01/07/1992 (c) 1992 (USA) */ - DRIVER( qadj ) /* 21/09/1994 (c) 1994 (Japan) */ - DRIVER( wof ) /* 02/10/1992 (c) 1992 (World) (CPS1 + QSound) */ - DRIVER( wofu ) /* 31/10/1992 (c) 1992 (USA) (CPS1 + QSound) */ - DRIVER( wofa ) /* 05/10/1992 (c) 1992 (Asia) (CPS1 + QSound) */ - DRIVER( wofj ) /* 31/10/1992 (c) 1992 (Japan) (CPS1 + QSound) */ - DRIVER( wofhfh ) /* bootleg */ - DRIVER( sf2hf ) /* 09/12/1992 (c) 1992 (World) */ - DRIVER( sf2hfu ) /* 09/12/1992 (c) 1992 (USA) */ - DRIVER( sf2hfj ) /* 09/12/1992 (c) 1992 (Japan) */ - DRIVER( dino ) /* 01/02/1993 (c) 1993 (World) (CPS1 + QSound) */ - DRIVER( dinou ) /* 01/02/1993 (c) 1993 (USA) (CPS1 + QSound) */ - DRIVER( dinoj ) /* 01/02/1993 (c) 1993 (Japan) (CPS1 + QSound) */ - DRIVER( dinopic ) /* bootleg */ - DRIVER( dinopic2 ) /* bootleg */ - DRIVER( dinohunt ) /* bootleg */ - DRIVER( punisher ) /* 22/04/1993 (c) 1993 (World) (CPS1 + QSound) */ - DRIVER( punisheru ) /* 22/04/1993 (c) 1993 (USA) (CPS1 + QSound) */ - DRIVER( punisherj ) /* 22/04/1993 (c) 1993 (Japan) (CPS1 + QSound) */ - DRIVER( punipic ) /* bootleg */ - DRIVER( punipic2 ) /* bootleg */ - DRIVER( punipic3 ) /* bootleg */ - DRIVER( punisherbz ) /* bootleg */ - DRIVER( slammast ) /* 13/07/1993 (c) 1993 (World) (CPS1 + QSound) */ - DRIVER( slammastu ) /* 13/07/1993 (c) 1993 (USA) (CPS1 + QSound) */ - DRIVER( mbomberj ) /* 13/07/1993 (c) 1993 (Japan) (CPS1 + QSound) */ - DRIVER( mbombrd ) /* 06/12/1993 (c) 1993 (World) (CPS1 + QSound) */ - DRIVER( mbombrdj ) /* 06/12/1993 (c) 1993 (Japan) (CPS1 + QSound) */ - /* 1994 Ken Sei Mogura (not listed on Capcom's site) */ - DRIVER( pnickj ) /* 08/06/1994 (c) 1994 Compile + Capcom license (Japan) not listed on Capcom's site */ - DRIVER( qtono2j ) /* 23/01/1995 (c) 1995 (Japan) */ - DRIVER( pang3 ) /* 01/06/1995 (c) 1995 Mitchell (Euro) not listed on Capcom's site */ - DRIVER( pang3n ) /* 11/05/1995 (c) 1995 Mitchell (Euro) not listed on Capcom's site */ - DRIVER( pang3j ) /* 11/05/1995 (c) 1995 Mitchell (Japan) not listed on Capcom's site */ - DRIVER( megaman ) /* 06/10/1995 (c) 1995 (USA) */ - DRIVER( megamana ) /* 06/10/1995 (c) 1995 (Asia) */ - DRIVER( rockmanj ) /* 22/09/1995 (c) 1995 (Japan) */ - - DRIVER( fcrash ) /* bootleg of Final Fight */ - - /* Capcom CPS2 games */ - /* list completed by CPS2Shock */ - /* http://cps2shock.retrogames.com */ - DRIVER( ssf2 ) /* 11/09/1993 (c) 1993 (World) */ - DRIVER( ssf2u ) /* 11/09/1993 (c) 1993 (USA) */ - DRIVER( ssf2a ) /* 05/10/1993 (c) 1993 (Asia) */ - DRIVER( ssf2ar1 ) /* 14/09/1993 (c) 1993 (Asia) */ - DRIVER( ssf2j ) /* 05/10/1993 (c) 1993 (Japan) */ - DRIVER( ssf2jr1 ) /* 11/09/1993 (c) 1993 (Japan) */ - DRIVER( ssf2jr2 ) /* 10/09/1993 (c) 1993 (Japan) */ - DRIVER( ssf2h ) /* 11/09/1993 (c) 1993 (Hispanic) */ - DRIVER( ssf2tb ) /* 11/19/1993 (c) 1993 (World) */ - DRIVER( ssf2tbr1 ) /* 11/09/1993 (c) 1993 (World) */ - DRIVER( ssf2tbj ) /* 11/09/1993 (c) 1993 (Japan) */ - DRIVER( ecofghtr ) /* 03/12/1993 (c) 1994 (World) */ - DRIVER( ecofghtru ) /* 15/02/1994 (c) 1994 (USA) */ - DRIVER( ecofghtru1 ) /* 03/12/1993 (c) 1994 (USA) */ - DRIVER( ecofghtra ) /* 03/12/1993 (c) 1994 (Asia) */ - DRIVER( ecofghtrh ) /* 03/12/1993 (c) 1994 (Hispanic) */ - DRIVER( uecology ) /* 03/12/1993 (c) 1994 (Japan) */ - DRIVER( ddtod ) /* 12/04/1994 (c) 1993 (Euro) */ - DRIVER( ddtodr1 ) /* 13/01/1994 (c) 1993 (Euro) */ - DRIVER( ddtodu ) /* 25/01/1994 (c) 1993 (USA) */ - DRIVER( ddtodur1 ) /* 13/01/1994 (c) 1993 (USA) */ - DRIVER( ddtodj ) /* 12/04/1994 (c) 1993 (Japan) */ - DRIVER( ddtodjr1 ) /* 25/01/1994 (c) 1993 (Japan) */ - DRIVER( ddtodjr2 ) /* 13/01/1994 (c) 1993 (Japan) */ - DRIVER( ddtoda ) /* 13/01/1994 (c) 1993 (Asia) */ - DRIVER( ddtodh ) /* 12/04/1994 (c) 1993 (Hispanic) */ - DRIVER( ddtodhr1 ) /* 25/01/1994 (c) 1993 (Hispanic) */ - DRIVER( ddtodhr2 ) /* 13/01/1994 (c) 1993 (Hispanic) */ - DRIVER( ssf2t ) /* 23/02/1994 (c) 1994 (World) */ - DRIVER( ssf2tu ) /* 23/03/1994 (c) 1994 (USA) */ - DRIVER( ssf2tur1 ) /* 23/02/1994 (c) 1994 (USA) */ - DRIVER( ssf2ta ) /* 23/02/1994 (c) 1994 (Asia) */ - DRIVER( ssf2xj ) /* 23/02/1994 (c) 1994 (Japan) */ - DRIVER( avsp ) /* 20/05/1994 (c) 1994 (Euro) */ - DRIVER( avspu ) /* 20/05/1994 (c) 1994 (USA) */ - DRIVER( avspj ) /* 20/05/1994 (c) 1994 (Japan) */ - DRIVER( avspa ) /* 20/05/1994 (c) 1994 (Asia) */ - DRIVER( avsph ) /* 20/05/1994 (c) 1994 (Hispanic) */ - /* 06/1994? Galum Pa! (not listed on Capcom's site) */ - DRIVER( dstlk ) /* 05/07/1994 (c) 1994 (Euro) */ - DRIVER( dstlku ) /* 18/08/1994 (c) 1994 (USA) */ - DRIVER( dstlkur1 ) /* 05/07/1994 (c) 1994 (USA) */ - DRIVER( dstlka ) /* 05/07/1994 (c) 1994 (Asia) */ - DRIVER( dstlkh ) /* 18/08/1994 (c) 1994 (Hispanic) */ - DRIVER( vampj ) /* 05/07/1994 (c) 1994 (Japan) */ - DRIVER( vampja ) /* 05/07/1994 (c) 1994 (Japan) */ - DRIVER( vampjr1 ) /* 30/06/1994 (c) 1994 (Japan) */ - DRIVER( ringdest ) /* 02/09/1994 (c) 1994 (Euro) */ - DRIVER( ringdesta ) /* 31/08/1994 (c) 1994 (Asia) */ - DRIVER( smbomb ) /* 31/08/1994 (c) 1994 (Japan) */ - DRIVER( smbombr1 ) /* 08/08/1994 (c) 1994 (Japan) */ - DRIVER( armwar ) /* 24/10/1994 (c) 1994 (Euro) */ - DRIVER( armwarr1 ) /* 11/10/1994 (c) 1994 (Euro) */ - DRIVER( armwaru ) /* 24/10/1994 (c) 1994 (USA) */ - DRIVER( armwaru1 ) /* 20/09/1994 (c) 1994 (USA) */ - DRIVER( pgear ) /* 24/10/1994 (c) 1994 (Japan) */ - DRIVER( pgearr1 ) /* 16/09/1994 (c) 1994 (Japan) */ - DRIVER( armwara ) /* 20/09/1994 (c) 1994 (Asia) */ - DRIVER( xmcota ) /* 05/01/1995 (c) 1994 (Euro) */ - DRIVER( xmcotau ) /* 05/01/1995 (c) 1994 (USA) */ - DRIVER( xmcotah ) /* 31/03/1995 (c) 1994 (Hispanic) */ - DRIVER( xmcotahr1 ) /* 05/01/1995 (c) 1994 (Hispanic) */ - DRIVER( xmcotaj ) /* 05/01/1995 (c) 1994 (Japan) */ - DRIVER( xmcotaj1 ) /* 22/12/1994 (c) 1994 (Japan) */ - DRIVER( xmcotaj2 ) /* 19/12/1994 (c) 1994 (Japan) */ - DRIVER( xmcotaj3 ) /* 17/12/1994 (c) 1994 (Japan) */ - DRIVER( xmcotaa ) /* 05/01/1995 (c) 1994 (Asia) */ - DRIVER( xmcotaar1 ) /* 17/12/1994 (c) 1994 (Asia) */ - DRIVER( xmcotajr ) /* 08/12/1994 (c) 1994 (Japan Rent) */ - DRIVER( nwarr ) /* 16/03/1995 (c) 1995 (Euro) */ - DRIVER( nwarru ) /* 06/04/1995 (c) 1995 (USA) */ - DRIVER( nwarrh ) /* 03/04/1995 (c) 1995 (Hispanic) */ - DRIVER( nwarrb ) /* 03/04/1995 (c) 1995 (Brazil) */ - DRIVER( nwarra ) /* 02/03/1995 (c) 1995 (Asia) */ - DRIVER( vhuntj ) /* 02/03/1995 (c) 1995 (Japan) */ - DRIVER( vhuntjr1 ) /* 07/03/1995 (c) 1995 (Japan) */ - DRIVER( vhuntjr2 ) /* 02/03/1995 (c) 1995 (Japan) */ - DRIVER( cybots ) /* 24/04/1995 (c) 1995 (Euro) */ - DRIVER( cybotsu ) /* 24/04/1995 (c) 1995 (USA) */ - DRIVER( cybotsj ) /* 20/04/1995 (c) 1995 (Japan) */ - DRIVER( sfa ) /* 27/07/1995 (c) 1995 (Euro) */ - DRIVER( sfar1 ) /* 18/07/1995 (c) 1995 (Euro) */ - DRIVER( sfar2 ) /* 27/06/1995 (c) 1995 (Euro) */ - DRIVER( sfar3 ) /* 05/06/1995 (c) 1995 (Euro) */ - DRIVER( sfau ) /* 27/06/1995 (c) 1995 (USA) */ - DRIVER( sfza ) /* 27/06/1995 (c) 1995 (Asia) */ - DRIVER( sfzj ) /* 27/07/1995 (c) 1995 (Japan) */ - DRIVER( sfzjr1 ) /* 27/06/1995 (c) 1995 (Japan) */ - DRIVER( sfzjr2 ) /* 05/06/1995 (c) 1995 (Japan) */ - DRIVER( sfzh ) /* 18/07/1995 (c) 1995 (Hispanic) */ - DRIVER( sfzhr1 ) /* 27/06/1995 (c) 1995 (Hispanic) */ - DRIVER( sfzb ) /* 09/11/1995 (c) 1995 (Brazil) */ - DRIVER( sfzbr1 ) /* 27/07/1995 (c) 1995 (Brazil) */ - DRIVER( mmancp2u ) /* 06/10/1995 (c) 1995 (Japan) */ - DRIVER( rmancp2j ) /* 22/09/1995 (c) 1995 (Japan) */ - DRIVER( msh ) /* 24/10/1995 (c) 1995 (Euro) */ - DRIVER( mshu ) /* 24/10/1995 (c) 1995 (USA) */ - DRIVER( mshj ) /* 17/11/1995 (c) 1995 (Japan) */ - DRIVER( mshjr1 ) /* 24/10/1995 (c) 1995 (Japan) */ - DRIVER( msha ) /* 24/10/1995 (c) 1995 (Asia) */ - DRIVER( mshh ) /* 17/11/1995 (c) 1995 (Hispanic) */ - DRIVER( mshb ) /* 17/11/1995 (c) 1995 (Brazil) */ - DRIVER( 19xx ) /* 07/12/1995 (c) 1996 (USA) */ - DRIVER( 19xxj ) /* 25/12/1995 (c) 1996 (Japan) */ - DRIVER( 19xxjr1 ) /* 07/12/1995 (c) 1996 (Japan) */ - DRIVER( 19xxa ) /* 07/12/1995 (c) 1996 (Asia) */ - DRIVER( 19xxh ) /* 18/12/1995 (c) 1996 (Hispanic) */ - DRIVER( 19xxb ) /* 18/12/1995 (c) 1996 (Brazil) */ - DRIVER( ddsom ) /* 19/06/1996 (c) 1996 (Euro) */ - DRIVER( ddsomr1 ) /* 23/02/1996 (c) 1996 (Euro) */ - DRIVER( ddsomr2 ) /* 09/02/1996 (c) 1996 (Euro) */ - DRIVER( ddsomr3 ) /* 08/02/1996 (c) 1996 (Euro) */ - DRIVER( ddsomu ) /* 19/06/1996 (c) 1996 (USA) */ - DRIVER( ddsomur1 ) /* 09/02/1996 (c) 1996 (USA) */ - DRIVER( ddsomjr1 ) /* 06/02/1996 (c) 1996 (Japan) */ - DRIVER( ddsomj ) /* 19/06/1996 (c) 1996 (Japan) */ - DRIVER( ddsoma ) /* 19/06/1996 (c) 1996 (Asia) */ - DRIVER( ddsomh ) /* 23/02/1996 (c) 1996 (Hispanic) */ - DRIVER( ddsomb ) /* 23/02/1996 (c) 1996 (Brazil) */ - DRIVER( sfa2 ) /* 06/03/1996 (c) 1996 (Euro) */ - DRIVER( sfa2u ) /* 30/04/1996 (c) 1996 (USA) */ - DRIVER( sfa2ur1 ) /* 06/03/1996 (c) 1996 (USA) */ - DRIVER( sfz2j ) /* 27/02/1996 (c) 1996 (Japan) */ - DRIVER( sfz2a ) /* 27/02/1996 (c) 1996 (Asia) */ - DRIVER( sfz2b ) /* 31/05/1996 (c) 1996 (Brazil) */ - DRIVER( sfz2br1 ) /* 04/03/1996 (c) 1996 (Brazil) */ - DRIVER( sfz2h ) /* 04/03/1996 (c) 1996 (Hispanic) */ - DRIVER( sfz2n ) /* 29/02/1996 (c) 1996 (Oceania) */ - DRIVER( spf2t ) /* 20/06/1996 (c) 1996 (USA) */ - DRIVER( spf2xj ) /* 31/05/1996 (c) 1996 (Japan) */ - DRIVER( spf2ta ) /* 29/05/1996 (c) 1996 (Asia) */ - DRIVER( spf2th ) /* 31/05/1996 (c) 1996 (Hispanic) */ - DRIVER( megaman2 ) /* 08/07/1996 (c) 1996 (USA) */ - DRIVER( megaman2a ) /* 08/07/1996 (c) 1996 (Asia) */ - DRIVER( rockman2j ) /* 08/07/1996 (c) 1996 (Japan) */ - DRIVER( megaman2h ) /* 12/07/1996 (c) 1996 (Hispanic) */ - DRIVER( gigamn2 ) /* bootleg */ - DRIVER( sfz2al ) /* 26/08/1996 (c) 1996 (Asia) */ - DRIVER( sfz2alj ) /* 05/08/1996 (c) 1996 (Japan) */ - DRIVER( sfz2alh ) /* 13/08/1996 (c) 1996 (Hispanic) */ - DRIVER( sfz2alb ) /* 13/08/1996 (c) 1996 (Brazil) */ - DRIVER( qndream ) /* 26/08/1996 (c) 1996 (Japan) */ - DRIVER( xmvsf ) /* 04/10/1996 (c) 1996 (Euro) */ - DRIVER( xmvsfr1 ) /* 10/09/1996 (c) 1996 (Euro) */ - DRIVER( xmvsfu ) /* 23/10/1996 (c) 1996 (USA) */ - DRIVER( xmvsfur1 ) /* 04/10/1996 (c) 1996 (USA) */ - DRIVER( xmvsfj ) /* 04/10/1996 (c) 1996 (Japan) */ - DRIVER( xmvsfjr1 ) /* 10/09/1996 (c) 1996 (Japan) */ - DRIVER( xmvsfjr2 ) /* 09/09/1996 (c) 1996 (Japan) */ - DRIVER( xmvsfa ) /* 23/10/1996 (c) 1996 (Asia) */ - DRIVER( xmvsfar1 ) /* 19/09/1996 (c) 1996 (Asia) */ - DRIVER( xmvsfar2 ) /* 10/09/1996 (c) 1996 (Asia) */ - DRIVER( xmvsfh ) /* 04/10/1996 (c) 1996 (Hispanic) */ - DRIVER( xmvsfb ) /* 23/10/1996 (c) 1996 (Brazil) */ - DRIVER( batcir ) /* 19/03/1997 (c) 1997 (Euro) */ - DRIVER( batcirj ) /* 19/03/1997 (c) 1997 (Japan) */ - DRIVER( batcira ) /* 19/03/1997 (c) 1997 (Asia) */ - DRIVER( vsav ) /* 19/05/1997 (c) 1997 (Euro) */ - DRIVER( vsavu ) /* 19/05/1997 (c) 1997 (USA) */ - DRIVER( vsavj ) /* 19/05/1997 (c) 1997 (Japan) */ - DRIVER( vsava ) /* 19/05/1997 (c) 1997 (Asia) */ - DRIVER( vsavh ) /* 19/05/1997 (c) 1997 (Hispanic) */ - DRIVER( mshvsf ) /* 25/06/1997 (c) 1997 (Euro) */ - DRIVER( mshvsfu ) /* 27/08/1997 (c) 1997 (USA) */ - DRIVER( mshvsfu1 ) /* 25/06/1997 (c) 1997 (USA) */ - DRIVER( mshvsfj ) /* 07/07/1997 (c) 1997 (Japan) */ - DRIVER( mshvsfj1 ) /* 02/07/1997 (c) 1997 (Japan) */ - DRIVER( mshvsfj2 ) /* 25/06/1997 (c) 1997 (Japan) */ - DRIVER( mshvsfh ) /* 25/06/1997 (c) 1997 (Hispanic) */ - DRIVER( mshvsfa ) /* 25/06/1997 (c) 1997 (Asia) */ - DRIVER( mshvsfa1 ) /* 20/06/1997 (c) 1997 (Asia) */ - DRIVER( mshvsfb ) /* 27/08/1997 (c) 1997 (Brazil) */ - DRIVER( mshvsfb1 ) /* 25/06/1997 (c) 1997 (Brazil) */ - DRIVER( csclub ) /* 17/10/1997 (c) 1997 (Euro) */ - DRIVER( csclub1 ) /* 22/07/1997 (c) 1997 (Euro) */ - DRIVER( csclubj ) /* 22/07/1997 (c) 1997 (Japan) */ - DRIVER( cscluba ) /* 22/07/1997 (c) 1997 (Asia) */ - DRIVER( csclubh ) /* 22/07/1997 (c) 1997 (Hispanic) */ - DRIVER( sgemf ) /* 04/09/1997 (c) 1997 (USA) */ - DRIVER( pfghtj ) /* 04/09/1997 (c) 1997 (Japan) */ - DRIVER( sgemfa ) /* 04/09/1997 (c) 1997 (Asia) */ - DRIVER( sgemfh ) /* 04/09/1997 (c) 1997 (Hispanic) */ - DRIVER( vhunt2r1 ) /* 13/09/1997 (c) 1997 (Japan) */ - DRIVER( vhunt2 ) /* 29/09/1997 (c) 1997 (Japan) */ - DRIVER( vsav2 ) /* 13/09/1997 (c) 1997 (Japan) */ - DRIVER( mvsc ) /* 23/01/1998 (c) 1998 (Euro) */ - DRIVER( mvscr1 ) /* 12/01/1998 (c) 1998 (Euro) */ - DRIVER( mvscu ) /* 23/01/1998 (c) 1998 (USA) */ - DRIVER( mvscur1 ) /* 23/01/1998 (c) 1998 (USA) */ - DRIVER( mvscj ) /* 23/01/1998 (c) 1998 (Japan) */ - DRIVER( mvscjr1 ) /* 12/01/1998 (c) 1998 (Japan) */ - DRIVER( mvsca ) /* 23/01/1998 (c) 1998 (Asia) */ - DRIVER( mvscar1 ) /* 12/01/1998 (c) 1998 (Asia) */ - DRIVER( mvsch ) /* 23/01/1998 (c) 1998 (Hispanic) */ - DRIVER( mvscb ) /* 23/01/1998 (c) 1998 (Brazil) */ - DRIVER( sfa3 ) /* 04/09/1998 (c) 1998 (USA) */ - DRIVER( sfa3u ) /* 04/09/1998 (c) 1998 (USA) */ - DRIVER( sfa3ur1 ) /* 29/06/1998 (c) 1998 (USA) */ - DRIVER( sfa3h ) /* 04/09/1998 (c) 1998 (Hispanic) */ - DRIVER( sfa3hr1 ) /* 29/06/1998 (c) 1998 (Hispanic) */ - DRIVER( sfa3b ) /* 29/06/1998 (c) 1998 (Brazil) */ - DRIVER( sfz3j ) /* 04/09/1998 (c) 1998 (Japan) */ - DRIVER( sfz3jr1 ) /* 27/07/1998 (c) 1998 (Japan) */ - DRIVER( sfz3jr2 ) /* 29/06/1998 (c) 1998 (Japan) */ - DRIVER( sfz3a ) /* 04/09/1998 (c) 1998 (Asia) */ - DRIVER( sfz3ar1 ) /* 01/07/1998 (c) 1998 (Asia) */ - DRIVER( gigawing ) /* 22/02/1999 (c) 1999 Takumi (USA) */ - DRIVER( gigawingj ) /* 23/02/1999 (c) 1999 Takumi (Japan) */ - DRIVER( gigawinga ) /* 22/02/1999 (c) 1999 Takumi (Asia) */ - DRIVER( gigawingh ) /* 22/02/1999 (c) 1999 Takumi (Hispanic) */ - DRIVER( gigawingb ) /* 22/02/1999 (c) 1999 Takumi (Brazil) */ - DRIVER( jyangoku ) /* 27/05/1999 (c) 1999 (Japan) */ - DRIVER( dimahoo ) /* 21/01/2000 (c) 2000 Eighting/Raizing (USA) */ - DRIVER( dimahoou ) /* 21/01/2000 (c) 2000 Eighting/Raizing (USA) */ - DRIVER( gmahou ) /* 21/01/2000 (c) 2000 Eighting/Raizing (Japan) */ - DRIVER( mmatrix ) /* 12/04/2000 (c) 2000 Takumi (USA) */ - DRIVER( mmatrixj ) /* 12/04/2000 (c) 2000 Takumi (Japan) */ - DRIVER( 1944 ) /* 20/06/2000 (c) 2000 Eighting/Raizing (USA) */ - DRIVER( 1944j ) /* 20/06/2000 (c) 2000 Eighting/Raizing (Japan) */ - DRIVER( mpang ) /* 10/10/2000 (c) 2000 Mitchell (Euro) */ - DRIVER( mpangr1 ) /* 25/09/2000 (c) 2000 Mitchell (Euro) */ - DRIVER( mpangu ) /* 10/10/2000 (c) 2000 Mitchell (USA) */ - DRIVER( mpangj ) /* 11/10/2000 (c) 2000 Mitchell (Japan) */ - DRIVER( progear ) /* 17/01/2001 (c) 2001 Cave (USA) */ - DRIVER( progearj ) /* 17/01/2001 (c) 2001 Cave (Japan) */ - DRIVER( progeara ) /* 17/01/2001 (c) 2001 Cave (Asia) */ - DRIVER( pzloop2 ) /* 02/03/2001 (c) 2001 Mitchell (Euro) */ - DRIVER( pzloop2j ) /* 05/02/2001 (c) 2001 Mitchell (Japan) */ - DRIVER( choko ) /* 20/08/2001 (c) 2001 Mitchell (Japan) */ - DRIVER( hsf2 ) /* 02/02/2004 (c) 2003, 2004 (USA) */ - DRIVER( hsf2j ) /* 22/12/2003 (c) 2003, 2004 (Japan) */ - DRIVER( hsf2a ) /* 02/02/2004 (c) 2003, 2004 (Asia) */ - - /* CPS2 'Phoenix' bootlegs */ - DRIVER( ssf2ud ) - DRIVER( ddtodd ) - DRIVER( ecofghtrd ) - DRIVER( avspd ) - DRIVER( dstlku1d ) - DRIVER( ringdstd ) - DRIVER( xmcotad ) - DRIVER( nwarrud ) - DRIVER( sfad ) - DRIVER( mshud ) - DRIVER( 19xxd ) - DRIVER( sfz2ad ) - DRIVER( sfz2jd ) - DRIVER( spf2td ) - DRIVER( spf2xjd ) - DRIVER( ddsomud ) - DRIVER( megamn2d ) - DRIVER( sfz2ald ) - DRIVER( xmvsfu1d ) - DRIVER( batcird ) - DRIVER( vsavd ) - DRIVER( mvscud ) - DRIVER( sfa3ud ) - DRIVER( gigawingd ) - DRIVER( gigawingjd ) - DRIVER( 1944d ) - DRIVER( progearud ) - DRIVER( progearjd ) - DRIVER( progearjbl ) - DRIVER( hsf2d ) - DRIVER( ssf2tbd ) - DRIVER( ssf2xjd ) - DRIVER( sgemfd ) - DRIVER( armwar1d ) - DRIVER( dimahoud ) - DRIVER( mmatrixd ) - DRIVER( vhunt2d ) - DRIVER( vsav2d ) - DRIVER( csclub1d ) - DRIVER( cybotsud ) - DRIVER( mshvsfu1d ) - DRIVER( sfz3jr2d ) - - /* Capcom CPS3 games */ - DRIVER( redearth ) /* 21/11/1996 (c) 1996 (Euro) */ - DRIVER( redeartha ) /* 23/10/1996 (c) 1996 (Euro) */ - DRIVER( warzard ) /* 21/11/1996 (c) 1996 (Japan) */ - DRIVER( warzarda ) /* 23/10/1996 (c) 1996 (Japan) */ - DRIVER( sfiii ) /* 04/02/1997 (c) 1997 (USA) */ - DRIVER( sfiiij ) /* 04/02/1997 (c) 1997 (Japan) */ - DRIVER( sfiiih ) /* 04/02/1997 (c) 1997 (Hispanic) */ - DRIVER( sfiii2 ) /* 30/09/1997 (c) 1997 (USA) */ - DRIVER( sfiii2j ) /* 30/09/1997 (c) 1997 (Japan) */ - DRIVER( jojo ) /* 08/01/1999 (c) 1998 (USA) */ - DRIVER( jojoa ) /* 02/12/1998 (c) 1998 (USA) */ - DRIVER( jojoj ) /* 08/01/1999 (c) 1998 (Japan) */ - DRIVER( jojoaj ) /* 02/12/1998 (c) 1998 (Japan) */ - DRIVER( sfiii3 ) /* 08/06/1999 (c) 1999 (USA) */ - DRIVER( sfiii3a ) /* 12/05/1999 (c) 1999 (USA) */ - DRIVER( jojoba ) /* 13/09/1999 (c) 1999 (Japan) */ - - DRIVER( sfiiin ) /* 04/02/1997 (c) 1997 (Asia) */ - DRIVER( sfiii2n ) /* 30/09/1997 (c) 1997 (Asia) */ - DRIVER( jojon ) /* 08/01/1999 (c) 1998 (Asia) */ - DRIVER( jojoan ) /* 02/12/1998 (c) 1998 (Asia) */ - DRIVER( sfiii3n ) /* 08/06/1999 (c) 1999 (Japan) */ - DRIVER( sfiii3an ) /* 12/05/1999 (c) 1999 (Japan) */ - DRIVER( jojoban ) /* 13/09/1999 (c) 1999 (Japan) */ - DRIVER( jojobane ) /* 13/09/1999 (c) 1999 (Euro) */ - - /* Capcom ZN1 */ - DRIVER( cpzn1 ) - DRIVER( ts2 ) /* Battle Arena Toshinden 2 (USA 951124) */ - DRIVER( ts2j ) /* Battle Arena Toshinden 2 (JAPAN 951124) */ - DRIVER( starglad ) /* Star Gladiator (USA 960627) */ - DRIVER( stargladj ) /* Star Gladiator (JAPAN 960627) */ - DRIVER( sfex ) /* Street Fighter EX (EURO 961219) */ - DRIVER( sfexu ) /* Street Fighter EX (USA 961219) */ - DRIVER( sfexa ) /* Street Fighter EX (ASIA 961219) */ - DRIVER( sfexj ) /* Street Fighter EX (JAPAN 961130) */ - DRIVER( glpracr ) /* Gallop Racer (JAPAN Ver 9.01.12) */ - DRIVER( sfexp ) /* Street Fighter EX Plus (USA 970407) */ - DRIVER( sfexpu1 ) /* Street Fighter EX Plus (USA 970311) */ - DRIVER( sfexpj ) /* Street Fighter EX Plus (JAPAN 970311) */ - - /* Capcom ZN2 */ - DRIVER( cpzn2 ) - DRIVER( rvschool ) /* Rival Schools (USA 971117) */ - DRIVER( rvschoola ) /* Rival Schools (ASIA 971117) */ - DRIVER( jgakuen ) /* Justice Gakuen (JAPAN 971117) */ - DRIVER( sfex2 ) /* Street Fighter EX 2 (USA 980526) */ - DRIVER( sfex2j ) /* Street Fighter EX 2 (JAPAN 980312) */ - DRIVER( sfex2a ) /* Street Fighter EX 2 (ASIA 980312) */ - DRIVER( sfex2h ) /* Street Fighter EX 2 (HISPANIC 980312) */ - DRIVER( plsmaswd ) /* Plasma Sword (USA 980316) */ - DRIVER( stargld2 ) /* Star Gladiator 2 (JAPAN 980316) */ - DRIVER( plsmaswda ) /* Plasma Sword (ASIA 980316) */ - DRIVER( tgmj ) /* Tetris The Grand Master (JAPAN 980710) */ - DRIVER( techromn ) /* Tech Romancer (EURO 980914) */ - DRIVER( techromnu ) /* Tech Romancer (USA 980914) */ - DRIVER( kikaioh ) /* Kikaioh (JAPAN 980914) */ - DRIVER( sfex2p ) /* Street Fighter EX 2 Plus (USA 990611) */ - DRIVER( sfex2pa ) /* Street Fighter EX 2 Plus (ASIA 990611) */ - DRIVER( sfex2pj ) /* Street Fighter EX 2 Plus (JAPAN 990611) */ - DRIVER( strider2 ) /* Strider 2 (USA 991213) */ - DRIVER( strider2a ) /* Strider 2 (ASIA 991213) */ - DRIVER( shiryu2 ) /* Strider Hiryu 2 (JAPAN 991213) */ - - DRIVER( alien ) /* (c) 2005 */ - /* Alien Danger */ - - /* Tecmo ZN1 */ - DRIVER( tps ) - DRIVER( glpracr2 ) /* Gallop Racer 2 (USA) */ - DRIVER( glpracr2j ) /* Gallop Racer 2 (JAPAN) */ - DRIVER( glpracr2l ) /* Gallop Racer 2 Link HW (JAPAN) */ - DRIVER( doapp ) /* Dead Or Alive ++ (JAPAN) */ - DRIVER( cbaj ) /* Cool Boaders Arcade Jam */ - DRIVER( shngmtkb ) /* Shanghai Matekibuyuu */ - DRIVER( tondemo ) /* Tondemo Crisis (JAPAN) */ - DRIVER( glpracr3 ) /* Gallop Racer 3 (JAPAN) */ - DRIVER( flamegun ) /* Flame Gunner (USA) */ - DRIVER( flamegunj ) /* Flame Gunner (JAPAN) */ - DRIVER( lpadv ) /* Logic Pro Adventure (JAPAN) */ - DRIVER( tblkkuzu ) /* The Block Kuzushi (JAPAN) */ - DRIVER( 1on1gov ) /* 1 on 1 Government (JAPAN) */ - DRIVER( tecmowcm ) /* Tecmo World Cup Millenium (JAPAN) */ - DRIVER( mfjump ) /* Monster Farm Jump (JAPAN) */ - - /* Atlus ZN1 */ - DRIVER( atluspsx ) - DRIVER( hvnsgate ) /* Heaven's Gate (JAPAN) */ - - /* PS Arcade 95 */ - DRIVER( psarc95 ) - DRIVER( beastrzr ) /* Beastorizer (USA) */ - DRIVER( bldyroar ) /* Bloody Roar (JAPAN) */ - DRIVER( beastrzb ) /* Beastorizer (USA Bootleg) */ - DRIVER( bldyror2 ) /* Bloody Roar 2 (WORLD) */ - DRIVER( bldyror2u ) /* Bloody Roar 2 (USA) */ - DRIVER( bldyror2a ) /* Bloody Roar 2 (ASIA) */ - DRIVER( bldyror2j ) /* Bloody Roar 2 (JAPAN) */ - DRIVER( brvblade ) /* Brave Blade (WORLD) */ - DRIVER( brvbladeu ) /* Brave Blade (USA) */ - DRIVER( brvbladea ) /* Brave Blade (ASIA) */ - DRIVER( brvbladej ) /* Brave Blade (JAPAN) */ - DRIVER( bam2 ) /* Bust a Move 2 (JAPANESE ROM ver. 1999/07/17 10:00:00) */ - - /* Atari PSX */ - DRIVER( atpsx ) - DRIVER( primrag2 ) /* Primal Rage 2 */ - - /* Acclaim PSX */ - DRIVER( acpsx ) - DRIVER( nbajamex ) /* NBA Jam Extreme */ - DRIVER( jdredd ) /* Judge Dredd (Rev C) */ - DRIVER( jdreddb ) /* Judge Dredd (Rev B) */ - - /* Video System ZN1 */ - DRIVER( vspsx ) - DRIVER( aerofgts ) /* Aero Fighters Special (TAIWAN) */ - DRIVER( sncwgltd ) /* Sonic Wings Limited (JAPAN) */ - - /* Taito FX1a */ - DRIVER( taitofx1 ) - DRIVER( sfchamp ) /* Super Football Champ (Ver 2.5O) */ - DRIVER( sfchamp24o )/* Super Football Champ (Ver 2.4O) */ - DRIVER( sfchampj ) /* Super Football Champ (Ver 2.4J) */ - DRIVER( psyforce ) /* Psychic Force (Ver 2.4O) */ - DRIVER( psyforcej ) /* Psychic Force (Ver 2.4J) */ - DRIVER( psyforcex ) /* Psychic Force EX (Ver 2.0J) */ - DRIVER( mgcldate ) /* Magical Date (JAPAN Ver 2.02J) */ - DRIVER( mgcldtex ) /* Magical Date EX (JAPAN Ver 2.01J) */ - - /* Taito FX1b */ - DRIVER( raystorm ) /* Ray Storm (Ver 2.06A) */ - DRIVER( raystormj ) /* Ray Storm (Ver 2.05J) */ - DRIVER( ftimpact ) /* Fighters' Impact (Ver 2.02O) */ - DRIVER( ftimpactj ) /* Fighters' Impact (Ver 2.02J) */ - DRIVER( ftimpcta ) /* Fighters' Impact A (Ver 2.00J) */ - DRIVER( gdarius ) /* G-Darius (Ver 2.01J) */ - DRIVER( gdariusb ) /* G-Darius (Ver 2.02A) */ - DRIVER( gdarius2 ) /* G-Darius Ver.2 (Ver 2.03J) */ - - /* Taito GNET */ - DRIVER( taitogn ) - DRIVER( chaoshea ) /* 1998.10 Chaos Heat (V2.09O) */ - DRIVER( chaosheaj ) /* 1998.10 Chaos Heat (V2.08J) */ - DRIVER( raycris ) /* 1998.12 Ray Crisis (V2.03J) */ - DRIVER( otenamih ) /* 1999.02 Otenami Haiken (Success) */ - DRIVER( otenamhf ) /* 2005.04 Otenami Haiken Final (V2.07JC) */ - DRIVER( spuzboblj ) /* 1999.03 Super Puzzle Bobble (Japan) */ - DRIVER( spuzbobl ) /* 1999.?? Super Puzzle Bobble (V2.05O) */ - DRIVER( gobyrc ) /* 1999.?? Go By RC (V2.03O) */ - DRIVER( rcdego ) /* 1999.06 RC De Go (V2.03J) */ - DRIVER( flipmaze ) /* 1999.09 Flip Maze (V2.04J) */ - DRIVER( mahjngoh ) /* 1999.12 Mahjong Oh (V2.06J) */ - DRIVER( psyvaria ) /* 2000.03 Psyvariar -Medium Unit- (V2.04J) */ - DRIVER( shanghss ) /* 2000.07 Shanghai Shoryu Sairin (V2.03J) */ - DRIVER( psyvarrv ) /* 2000.09 Psyvariar -Revision- (V2.04J) */ - DRIVER( zokuoten ) /* 2000.12 Zoku Otenamihaiken (V2.03J) */ - /* 2000.?? Taito Classic (Success, not released?) */ - DRIVER( soutenry ) /* 2001.02 Soutenryu (V2.07J) */ - DRIVER( nightrai ) /* 2001.05 Night Raid (V2.03J) */ - DRIVER( shikigam ) /* 2001.09 Shikigami no Shiro */ - DRIVER( otenki ) /* 2001.10 Otenki Kororin */ - DRIVER( usagi ) /* 2001.12 Usagi (V2.02J) */ - DRIVER( shangtou ) /* 2002.02 Shanghai Sangokuhaitougi */ - DRIVER( xiistag ) /* 2002.07 XII Stag (V2.01J) */ - DRIVER( sianniv ) /* 2003.10 Space Invaders Anniversary (V2.02J) */ - DRIVER( kollon ) /* 2003.11 Kollon (V2.04J) */ - DRIVER( kollonc ) /* 2003.11 Kollon (V2.04JC, Compact Flash version) */ - DRIVER( zooo ) /* 2004.05 Zooo */ - - /* Namco System 11 */ - DRIVER( tekken ) /* 1994.?? Tekken (TE4/VER.C) */ - DRIVER( tekkena ) /* 1994.?? Tekken (TE2/VER.C) */ - DRIVER( tekkenb ) /* 1994.?? Tekken (TE2/VER.B) */ - DRIVER( tekkenc ) /* 1994.12 Tekken (TE1/VER.B, Japan) */ - DRIVER( tekken2 ) /* 1995.?? Tekken 2 Ver.B (TES3/VER.B) */ - DRIVER( tekken2a ) /* 1995.?? Tekken 2 Ver.B (TES2/VER.B) */ - /* 1995.10 Tekken 2 Ver.B (TES1/VER.B, Japan) */ - DRIVER( tekken2b ) /* 1995.?? Tekken 2 (TES2/VER.A) */ - /* 1995.08 Tekken 2 (TES1, Japan) */ - DRIVER( souledge1 ) /* 1996.?? Soul Edge (SO3/VER.A) */ - DRIVER( souledge1j )/* 1996.02 Soul Edge (SO1/VER.A, Japan) */ - DRIVER( primglex ) /* 1996.03 Prime Goal EX (PG1/VER.A, Japan) */ - DRIVER( xevi3dg ) /* 1996.05 Xevious 3D/G (XV31/VER.A, Japan) */ - DRIVER( souledge ) /* 1996.?? Soul Edge Ver. II (SO4/VER.C) */ - DRIVER( souledgea ) /* 1996.?? Soul Edge Ver. II (SO3/VER.C) */ - /* 1996.05 Soul Edge Ver. II (SO1, Japan) */ - DRIVER( dunkmnia ) /* 1996.?? Dunk Mania (DM1/VER.C) */ - DRIVER( dunkmniaj ) /* 1996.05 Dunk Mania (DM1/VER.C, Japan) */ - DRIVER( danceyes ) /* 1996.09 Dancing Eyes (DC1/VER.A, Japan) */ - DRIVER( pocketrc ) /* 1997.03 Pocket Racer (PKR1/VER.B, Japan) */ - DRIVER( starswep ) /* 1997.07 Star Sweep (STP1/VER.A, Japan) */ - DRIVER( myangel3 ) /* 1998.03 Kosodate Quiz My Angel 3 (KQT1/VER.A, Japan) */ - DRIVER( ptblank2a ) /* 1999.?? Point Blank 2 (GNB3/VER.A) */ - /* 1999.02 Gunbaarl (GNB1, Japan) */ - - /* Namco System 12 */ - DRIVER( tekken3 ) /* 1997.03 Tekken 3 (TET1/VER.E1, Japan) */ - DRIVER( tekken3a ) /* 1997.?? Tekken 3 (TET2/VER.B) */ - DRIVER( tekken3b ) /* 1997.?? Tekken 3 (TET3/VER.A) */ - DRIVER( tekken3c ) /* 1997.?? Tekken 3 (TET2/VER.A) */ - DRIVER( lbgrande ) /* 1997.?? Libero Grande (LG2/VER.A) */ - /* 1997.12 Libero Grande (LG1, Japan) */ - DRIVER( toukon3 ) /* 1997.12 Shin Nihon Pro Wrestling Toukon Retsuden 3 Arcade Edition (TR1/VER.A, Japan) */ - DRIVER( ehrgeiz ) /* 1998.?? Ehrgeiz (EG3/VER.A) */ - DRIVER( ehrgeiza ) /* 1998.?? Ehrgeiz (EG2/VER.A) */ - DRIVER( ehrgeizj ) /* 1998.05 Ehrgeiz (EG1, Japan) */ - DRIVER( sws98 ) /* 1998.06 Super World Stadium '98 (SS81/VER.A, Japan) */ - DRIVER( soulclbr ) /* 1998.?? Soul Calibur (SOC14/VER.C) */ - DRIVER( soulclbrb ) /* 1998.?? Soul Calibur (SOC14/VER.B) */ - DRIVER( soulclbrj ) /* 1998.07 Soul Calibur (SOC11/VER.C, Japan) */ - DRIVER( soulclbrb2 ) /* 1998.?? Soul Calibur (SOC13/VER.B) */ - DRIVER( soulclbrjb )/* 1998.?? Soul Calibur (SOC11/VER.B, Japan) */ - DRIVER( soulclbrja )/* 1998.?? Soul Calibur (SOC11/VER.A2, Japan) */ - /* 1998.07 Techno Drive */ - DRIVER( mdhorse ) /* 1998.11 Derby Quiz My Dream Horse (MDH1/VER.A2, Japan) */ - /* 1998.12 Attack Pla Rail */ - DRIVER( tenkomor ) /* 1998.?? Tenkomori Shooting (TKM2/VER.A1) */ - DRIVER( tenkomorj ) /* 1998.12 Tenkomori Shooting (TKM1/VER.A1, Japan) */ - DRIVER( pacapp ) /* 1998.12 Paca Paca Passion (PPP1/VER.A2, Japan) */ - DRIVER( fgtlayer ) /* 1998.12 Fighting Layer (FTL0/VER.A, Japan) */ - /* 1999.01 Bust A Move (Metro) */ - DRIVER( ptblank2 ) /* 1999.?? Point Blank 2 (GNB5/VER.A) */ - DRIVER( sws99 ) /* 1999.05 Super World Stadium '99 (SS91/VER.A3, Japan) */ - DRIVER( ghlpanic ) /* 1999.?? Ghoul Panic (OB2/VER.A) */ - /* 1999.07 Oh Bakyuun (OB1, Japan) */ - DRIVER( pacapp2 ) /* 1999.07 Paca Paca Passion 2 (PKS1/VER.A, Japan) */ - /* 1999.07 Bust A Move 2 (Metro) */ - DRIVER( tektagt ) /* 1999.?? Tekken Tag Tournament (TEG3/VER.C1) */ - DRIVER( tektagta ) /* 1999.?? Tekken Tag Tournament (TEG3/VER.B) */ - DRIVER( tektagtb ) /* 1999.07 Tekken Tag Tournament (TEG1/VER.B, Japan) */ - DRIVER( tektagtc ) /* 1999.07 Tekken Tag Tournament (TEG1/VER.A, Japan) */ - DRIVER( mrdrillr ) /* 1999.11 Mr Driller (DRI1/VER.A2, Japan) */ - /* 1999.12 UmJammer Lammy NOW! (Japan) */ - /* 1999.12 Quest for Fame (Japan) */ - DRIVER( pacappsp ) /* 1999.12 Paca Paca Passion Special (PSP1/VER.A, Japan) */ - DRIVER( kaiunqz ) /* 1999.12 Kaiun Quiz (KW1/VER.A, Japan) */ - DRIVER( aquarush ) /* 2000.02 Aqua Rush (AQ1/VER.A1, Japan) */ - DRIVER( golgo13 ) /* 2000.03 Golgo 13 (GLG1/VER.A, Japan) */ - DRIVER( sws2000 ) /* 2000.03 Super World Stadium 2000 (SS01/VER.A, Japan) */ - DRIVER( truckk ) /* 2000.06 Truck Kyousoukyoku (Metro) */ - /* 2000.07 Kart Duel */ - /* 2000.08 Teknowerk */ - DRIVER( g13knd ) /* 2000.10 Golgo 13 Kiseki no Dandou (GLS1/VER.A, Japan) */ - DRIVER( sws2001 ) /* 2001.04 Super World Stadium 2001 (SS11/VER.A, Japan) */ - - /* Namco System 10 */ - DRIVER( mrdrilr2 ) /* 2000.07 Mr Driller 2 (DR21 Ver.A) */ - DRIVER( mrdrlr2a ) /* 2000.?? Mr Driller 2 (DR22 Ver.A) */ - DRIVER( ptblank3 ) /* 2000.12 Point Blank 3 / Gunbalina */ - /* 2001.02 Photo Battole */ - /* 2001.02 Taiko no Tatsujin */ - /* 2001.03 Gahaha Ippatsudou */ - DRIVER( mrdrilrg ) /* 2001.03 Mr. Driller G (DRG1 Ver.A) */ - /* 2001.07 Golgo 13 Juusei no Requiem */ - /* 2001.08 Taiko no Tatsujin 2 */ - /* 2001.09 Gahaha Ippatsudou 2 */ - /* 2001.11 Knock Down 2001 */ - DRIVER( knpuzzle ) /* 2001.12 Kotoba no Puzzle Mojipittan (KPM1 Ver.A) */ - DRIVER( gjspace ) /* 2001.12 Gekitoride-Jong Space (10011 Ver.A) */ - /* 2002.03 Panicuru Panekuru */ - /* 2002.03 Taiko no Tatsujin 3 */ - DRIVER( startrgn ) /* 2002.07 Star Trigon (STT1 Ver.A) */ - /* 2002.07 Tsukkomi Yousei Gips Nice Tsukkomi */ - DRIVER( gamshara ) /* 2002.08 Gamshara (10021 Ver.A) */ - DRIVER( chocovdr ) /* 2002.10 Uchuu Daisakusen : Chocovader Contactee */ - /* 2002.12 Taiko no Tatsujin 4 */ - /* 2003.04 Seisyun Quiz Colorful High School */ - /* 2003.10 Taiko no Tatsujin 5 */ - /* 2004.07 Taiko no Tatsujin 6 */ - - /* Konami GQ */ - DRIVER( cryptklr ) /* Crypt Killer (GQ420 UAA) */ - - /* Konami GV */ - DRIVER( konamigv ) - DRIVER( kdeadeye ) /* GV054, UA01 */ - DRIVER( pbball96 ) /* GV017, Japan 1.03 */ - DRIVER( hyperath ) /* GV021, Japan 1.00 */ - DRIVER( susume ) /* GV027, Japan 1.20 */ - DRIVER( btchamp ) /* GV053, UAA01 */ - DRIVER( weddingr ) /* GX624, JAA */ - DRIVER( tokimosh ) /* GE755, JAA */ - DRIVER( tokimosp ) /* GE756, JAB */ - DRIVER( nagano98 ) /* GX720, EAA */ - DRIVER( simpbowl ) /* GQ829, UAA */ - - /* Konami System 573 */ - DRIVER( sys573 ) - DRIVER( darkhleg ) /* 1998 - Dark Horse Legend (GX706 VER. JAA) */ - DRIVER( fbaitbc ) /* 1998 - Fisherman's Bait - A Bass Challenge (GE765 VER. UAB) */ - DRIVER( bassangl ) /* 1998 - Bass Angler (GE765 VER. JAA) */ - DRIVER( pbballex ) /* 1998 - Powerful Pro Baseball EX (GX802 VER. JAB) */ - DRIVER( konam80s ) /* 1998 - Konami 80's AC Special (GC826 VER. EAA) */ - DRIVER( konam80u ) /* 1998 - Konami 80's AC Special (GC826 VER. UAA) */ - DRIVER( konam80j ) /* 1998 - Konami 80's Gallery (GC826 VER. JAA) */ - DRIVER( konam80a ) /* 1998 - Konami 80's AC Special (GC826 VER. AAA) */ - DRIVER( konam80k ) /* 1998 - Konami 80's AC Special (GC826 VER. KAA) */ - DRIVER( dstage ) /* 1999 - Dancing Stage (GN845 VER. EAA) */ - DRIVER( ddru ) /* 1999 - Dance Dance Revolution (GN845 VER. UAA) */ - DRIVER( ddrj ) /* 1998 - Dance Dance Revolution - Internet Ranking Ver (GC845 VER. JBA) */ - DRIVER( ddrja ) /* 1998 - Dance Dance Revolution (GC845 VER. JAA) */ - DRIVER( ddrjb ) /* 1998 - Dance Dance Revolution (GC845 VER. JAB) */ - DRIVER( ddra ) /* 1999 - Dance Dance Revolution (GN845 VER. AAA) */ - DRIVER( fbait2bc ) /* 1998 - Fisherman's Bait 2 - A Bass Challenge (GE865 VER. UAB) */ - DRIVER( bassang2 ) /* 1998 - Bass Angler 2 (GE865 VER. JAA) */ - DRIVER( drmn ) /* 1999 - DrumMania (GQ881 VER. JAD) */ - DRIVER( gtrfrks ) /* 1999 - Guitar Freaks (GQ886 VER. EAC) */ - DRIVER( gtrfrksu ) /* 1999 - Guitar Freaks (GQ886 VER. UAC) */ - DRIVER( gtrfrksj ) /* 1999 - Guitar Freaks (GQ886 VER. JAC) */ - DRIVER( gtrfrksa ) /* 1999 - Guitar Freaks (GQ886 VER. AAC) */ - DRIVER( fbaitmc ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. EA) */ - DRIVER( fbaitmcu ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. UA) */ - DRIVER( fbaitmcj ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. JA) */ - DRIVER( fbaitmca ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. AA) */ - DRIVER( ddr2m ) /* 1999 - Dance Dance Revolution 2nd Mix (GN895 VER. JAA) */ - DRIVER( ddr2ml ) /* 1999 - Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAB) */ - DRIVER( ddr2mla ) /* 1999 - Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAA) */ - DRIVER( ddrbocd ) /* 1999 - Dance Dance Revolution Best of Cool Dancers (GE892 VER. JAA) */ - DRIVER( ddr2mc ) /* 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX CLUB VERSiON (GE896 VER. JAA) */ - DRIVER( ddr2mc2 ) /* 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX substream CLUB VERSiON 2 (GE984 VER. JAA) */ - DRIVER( gtrfrk2m ) /* 1999 - Guitar Freaks 2nd Mix Ver 1.01 (GQ883 VER. JAD) */ - DRIVER( dsftkd ) /* 1999 - Dancing Stage featuring TRUE KiSS DESTiNATiON (G*884 VER. JAA) */ - DRIVER( cr589fw ) /* 1999 - CR-589 Firmware (700B04) */ - DRIVER( cr589fwa ) /* 1999 - CR-589 Firmware (700A04) */ - DRIVER( ddr3mk ) /* 2000 - Dance Dance Revolution 3rd Mix - Ver.Korea2 (GN887 VER. KBA) */ - DRIVER( ddr3mka ) /* 2000 - Dance Dance Revolution 3rd Mix - Ver.Korea (GN887 VER. KAA) */ - DRIVER( ddr3ma ) /* 1999 - Dance Dance Revolution 3rd Mix (GN887 VER. AAA) */ - DRIVER( ddr3mj ) /* 1999 - Dance Dance Revolution 3rd Mix (GN887 VER. JAA) */ - DRIVER( ddrsbm ) /* 1999 - Dance Dance Revolution Solo Bass Mix (GQ894 VER. JAA) */ - DRIVER( ddrs2k ) /* 1999 - Dance Dance Revolution Solo 2000 (GC905 VER. AAA) */ - DRIVER( ddrs2kj ) /* 1999 - Dance Dance Revolution Solo 2000 (GC905 VER. JAA) */ - DRIVER( hyperbbc ) /* 1999 - Hyper Bishi Bashi Champ (GX908 1999/08/24 VER. JAA) */ - DRIVER( hyperbbck ) /* 1999 - Hyper Bishi Bashi Champ (GX908 1999/08/24 VER. KAA) */ - DRIVER( dsfdct ) /* 1999 - Dancing Stage featuring Dreams Come True (GC910 VER. JCA) */ - DRIVER( dsfdcta ) /* 1999 - Dancing Stage featuring Dreams Come True (GC910 VER. JAA) */ - DRIVER( drmn2m ) /* 1999 - DrumMania 2nd Mix (GE912 VER. JAB) */ - DRIVER( drmn2mpu ) /* 1999 - DrumMania 2nd Mix Session Power Up Kit (GE912 VER. JAB) */ - DRIVER( dncfrks ) /* 2000 - Dance Freaks (G*874 VER. KAA) */ - DRIVER( dmx ) /* 2000 - Dance Maniax (G*874 VER. JAA) */ - DRIVER( gunmania ) /* 2000 - GunMania (GL906 VER. JAA) */ - DRIVER( fghtmn ) /* 2000 - Fighting Mania (QG918 VER. EAA) */ - DRIVER( fghtmna ) /* 2000 - Fighting Mania (QG918 VER. AAA) */ - DRIVER( pnchmn ) /* 2000 - Punch Mania: Hokuto No Ken (GQ918 VER. JAB) */ - DRIVER( pnchmna ) /* 2000 - Punch Mania: Hokuto No Ken (GQ918 VER. JAB, ALT CD) */ - DRIVER( fghtmnk ) /* 2000 - Fighting Mania (QG918 VER. KAA) */ - DRIVER( fghtmnu ) /* 2000 - Fighting Mania (QG918 VER. IAA) */ - DRIVER( dsem ) /* 2000 - Dancing Stage Euro Mix (G*936 VER. EAA) */ - DRIVER( gtrfrk3m ) /* 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAC) */ - DRIVER( gtfrk3ma ) /* 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAB) */ - DRIVER( gtfrk3mb ) /* 2000 - Guitar Freaks 3rd Mix - security cassette versionup (949JAZ02) */ - DRIVER( pnchmn2 ) /* 2000 - Punch Mania 2: Hokuto No Ken (GQA09 JAA) */ - DRIVER( salarymc ) /* 2000 - Salary Man Champ (G*A18 VER. JAA) */ - DRIVER( ddr3mp ) /* 2000 - Dance Dance Revolution 3rd Mix Plus (G*A22 VER. JAA) */ - DRIVER( pcnfrk3m ) /* 2000 - Percussion Freaks 3rd Mix (G*A23 VER. KAA) */ - DRIVER( drmn3m ) /* 2000 - DrumMania 3rd Mix (G*A23 VER. JAA) */ - DRIVER( gtrfrk4m ) /* 2000 - Guitar Freaks 4th Mix (G*A24 VER. JAA) */ - DRIVER( drmn4m ) /* 2000 - DrumMania 4th Mix (G*A25 VER. JAA) */ - DRIVER( ddr4m ) /* 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. AAA) */ - DRIVER( ddr4mj ) /* 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. JAA) */ - DRIVER( ddr4ms ) /* 2000 - Dance Dance Revolution Solo 4th Mix (G*A33 VER. ABA) */ - DRIVER( ddr4msj ) /* 2000 - Dance Dance Revolution Solo 4th Mix (G*A33 VER. JBA) */ - DRIVER( dsfdr ) /* 2000 - Dancing Stage Featuring Disney's Rave (GCA37JAA) */ - DRIVER( ddrusa ) /* 2000 - Dance Dance Revolution USA (G*A44 VER. UAA) */ - DRIVER( ddr4mp ) /* 2000 - Dance Dance Revolution 4th Mix Plus (G*A34 VER. JAA) */ - DRIVER( ddr4mps ) /* 2000 - Dance Dance Revolution 4th Mix Plus Solo (G*A34 VER. JAA) */ - DRIVER( dmx2m ) /* 2000 - Dance Maniax 2nd Mix (G*A39 VER. JAA) */ - DRIVER( gtrfrk5m ) /* 2001 - Guitar Freaks 5th Mix (G*A26 VER. JAA) */ - DRIVER( ddr5m ) /* 2001 - Dance Dance Revolution 5th Mix (G*A27 VER. JAA) */ - DRIVER( dmx2majp ) /* 2001 - Dance Maniax 2nd Mix Append J-Paradise (G*A38 VER. JAA ) */ - DRIVER( mamboagg ) /* 2001 - Mambo A Go-Go (GQA40 VER. JAB) */ - DRIVER( drmn5m ) /* 2001 - DrumMania 5th Mix (G*B05 VER. JAA) */ - DRIVER( gtrfrk6m ) /* 2001 - Guitar Freaks 6th Mix (G*B06 VER. JAA) */ - DRIVER( drmn6m ) /* 2001 - DrumMania 6th Mix (G*B16 VER. JAA) */ - DRIVER( gtrfrk7m ) /* 2001 - Guitar Freaks 7th Mix (G*B17 VER. JAA) */ - DRIVER( ddrmax ) /* 2001 - DDR Max - Dance Dance Revolution 6th Mix (G*B19 VER. JAA) */ - DRIVER( ddrmax2 ) /* 2002 - DDR Max 2 - Dance Dance Revolution 7th Mix (G*B20 VER. JAA) */ - DRIVER( mrtlbeat ) /* 2002 - Martial Beat (Martial Beat (G*B47 VER. JBA) */ - DRIVER( drmn7m ) /* 2002 - DrumMania 7th Mix power-up ver. (G*C07 VER. JBA) */ - DRIVER( drmn7ma ) /* 2002 - DrumMania 7th Mix (G*C07 VER. JAA) */ - DRIVER( gtrfrk8m ) /* 2002 - Guitar Freaks 8th Mix power-up ver. (G*C08 VER. JBA) */ - DRIVER( gtrfrk8ma ) /* 2002 - Guitar Freaks 8th Mix (G*C08 VER. JAA) */ - DRIVER( dsem2 ) /* 2002 - Dancing Stage Euro Mix 2 (G*C23 VER. EAA) */ - DRIVER( ddrextrm ) /* 2002 - Dance Dance Revolution Extreme (G*C36 VER. JAA) */ - DRIVER( drmn8m ) /* 2003 - DrumMania 8th Mix (G*C38 VER. JAA) */ - DRIVER( gtrfrk9m ) /* 2003 - Guitar Freaks 9th Mix (G*C39 VER. JAA) */ - DRIVER( drmn9m ) /* 2003 - DrumMania 9th Mix (G*D09 VER. JAA) */ - DRIVER( gtfrk10m ) /* 2003 - Guitar Freaks 10th Mix (G*D10 VER. JAB) */ - DRIVER( gtfrk10ma ) /* 2003 - Guitar Freaks 10th Mix (G*D10 VER. JAA) */ - DRIVER( gtfrk10mb ) /* 2003 - Guitar Freaks 10th Mix eAmusement (G*D10 VER. JBA) */ - DRIVER( gtfrk11m ) /* 2004 - Guitar Freaks 11th Mix (G*D39 VER. JAA) */ - DRIVER( drmn10m ) /* 2004 - DrumMania 10th Mix (G*D40 VER. JAA) */ - - /* Konami Twinkle games */ - DRIVER( gq863 ) - DRIVER( bmiidx ) - DRIVER( bmiidxc ) - DRIVER( bmiidxca ) - DRIVER( bmiidxc2 ) - DRIVER( bmiidx3 ) - DRIVER( bmiidx4 ) - DRIVER( bmiidx6 ) - DRIVER( bmiidx7 ) - DRIVER( bmiidx8 ) - - /* Konami Viper games */ - DRIVER( kviper ) /* 1999 */ - DRIVER( ppp2nd ) /* 2001 */ - DRIVER( boxingm ) /* 2001 */ - DRIVER( code1d ) /* 2000 */ - DRIVER( code1db ) /* 2000 */ - DRIVER( gticlub2 ) /* 2001 */ - DRIVER( gticlub2ea )/* 2001 */ - DRIVER( jpark3 ) /* 2001 */ - DRIVER( mocapglf ) /* 2001 */ - DRIVER( mocapb ) /* 2001 */ - DRIVER( mocapbj ) /* 2001 */ - DRIVER( p911 ) /* 2001 */ - DRIVER( p911uc ) /* 2001 */ - DRIVER( p911kc ) /* 2001 */ - DRIVER( p911e ) /* 2001 */ - DRIVER( p911j ) /* 2001 */ - DRIVER( p9112 ) /* 2001 */ - DRIVER( popn9 ) /* 2003 */ - DRIVER( sscopex ) /* 2001 */ - DRIVER( sogeki ) /* 2001 */ - DRIVER( thrild2 ) /* 2001 */ - DRIVER( thrild2a ) /* 2001 */ - DRIVER( thrild2c ) /* 2001 */ - DRIVER( tsurugi ) /* 2001 */ - DRIVER( tsurugij ) /* 2001 */ - DRIVER( wcombat ) /* 2002 */ - DRIVER( wcombatk ) /* 2002 */ - DRIVER( wcombatj ) /* 2002 */ - DRIVER( xtrial ) /* 2002 */ - DRIVER( mfightc ) /* 2002 */ - DRIVER( mfightcc ) /* 2002 */ - - /* Mitchell games */ - DRIVER( mgakuen ) /* (c) 1988 Yuga */ - DRIVER( 7toitsu ) /* (c) 1988 Yuga */ - DRIVER( mgakuen2 ) /* (c) 1989 Face */ - DRIVER( pkladies ) /* (c) 1989 Mitchell */ - DRIVER( pkladiesl ) /* (c) 1989 Leprechaun */ - DRIVER( pkladiesla )/* (c) 1989 Leprechaun */ - DRIVER( pkladiesbl )/* bootleg */ - DRIVER( dokaben ) /* 3/1989 (c) 1989 Capcom (Japan) */ - /* 8/1989 Dokaben 2 (baseball) */ - DRIVER( pang ) /* (c) 1989 Mitchell (World) */ - DRIVER( pangb ) /* bootleg */ - DRIVER( pangbold ) /* bootleg */ - DRIVER( pangba ) /* bootleg */ - DRIVER( bbros ) /* (c) 1989 Capcom (US) not listed on Capcom's site */ - DRIVER( pompingw ) /* (c) 1989 Mitchell (Japan) */ - DRIVER( cbasebal ) /* 10/1989 (c) 1989 Capcom (Japan) (different hardware) */ - DRIVER( cworld ) /* 11/1989 (QUIZ 1) (c) 1989 Capcom */ - DRIVER( hatena ) /* 28/02/1990 (QUIZ 2) (c) 1990 Capcom (Japan) */ - DRIVER( spang ) /* 14/09/1990 (c) 1990 Mitchell (World) */ - DRIVER( spangj ) /* --/--/1990 (c) 1990 Mitchell (Japan) */ - DRIVER( spangbl ) /* bootleg */ - DRIVER( sbbros ) /* 01/10/1990 (c) 1990 Mitchell + Capcom (US) not listed on Capcom's site */ - DRIVER( marukin ) /* 17/10/1990 (c) 1990 Yuga (Japan) */ - DRIVER( qtono1 ) /* 25/12/1990 (QUIZ 3) (c) 1991 Capcom (Japan) */ - /* 4/1991 Ashita Tenki ni Naare (golf) */ - DRIVER( qsangoku ) /* 07/06/1991 (QUIZ 4) (c) 1991 Capcom (Japan) */ - DRIVER( block ) /* 10/09/1991 (c) 1991 Capcom (World) */ - DRIVER( blockj ) /* 10/09/1991 (c) 1991 Capcom (Japan) */ - DRIVER( blockjoy ) /* 06/11/1991 (c) 1991 Capcom (World) (Joystick version, bad dump?) */ - DRIVER( blockbl ) /* bootleg */ - - /* Incredible Technologies games */ - /* http://www.itsgames.com */ - DRIVER( capbowl ) /* (c) 1988 Incredible Technologies */ - DRIVER( capbowl2 ) /* (c) 1988 Incredible Technologies */ - DRIVER( capbowl3 ) /* (c) 1988 Incredible Technologies */ - DRIVER( capbowl4 ) /* (c) 1989 Incredible Technologies */ - DRIVER( clbowl ) /* (c) 1989 Incredible Technologies */ - DRIVER( bowlrama ) /* (c) 1991 P & P Marketing */ - DRIVER( wfortune ) /* (c) 1989 GameTek */ - DRIVER( wfortunea ) /* (c) 1989 GameTek */ - DRIVER( grmatch ) /* (c) 1989 GameTek */ - DRIVER( stratab ) /* (c) 1990 Strata/Incredible Technologies */ - DRIVER( stratab1 ) /* (c) 1990 Strata/Incredible Technologies */ - DRIVER( sstrike ) /* (c) 1990 Strata/Incredible Technologies */ - DRIVER( gtg ) /* (c) 1990 Strata/Incredible Technologies */ - DRIVER( gtgt ) /* (c) 1990 Strata/Incredible Technologies */ - DRIVER( gtgt1 ) /* (c) 1990 Strata/Incredible Technologies */ - DRIVER( hstennis ) /* (c) 1990 Strata/Incredible Technologies */ - DRIVER( hstennis10 )/* (c) 1990 Strata/Incredible Technologies */ - DRIVER( slikshot ) /* (c) 1990 Grand Products/Incredible Technologies */ - DRIVER( slikshot17 )/* (c) 1990 Grand Products/Incredible Technologies */ - DRIVER( slikshot16 )/* (c) 1990 Grand Products/Incredible Technologies */ - DRIVER( dynobop ) /* (c) 1990 Grand Products/Incredible Technologies */ - DRIVER( arlingtn ) /* (c) 1991 Strata/Incredible Technologies */ - DRIVER( peggle ) /* (c) 1991 Strata/Incredible Technologies */ - DRIVER( pegglet ) /* (c) 1991 Strata/Incredible Technologies */ - DRIVER( pokrdice ) /* (c) 1991 Strata/Incredible Technologies */ - DRIVER( rimrockn ) /* (c) 1991 Strata/Incredible Technologies */ - DRIVER( rimrockn20 )/* (c) 1991 Strata/Incredible Technologies */ - DRIVER( rimrockn16 )/* (c) 1991 Strata/Incredible Technologies */ - DRIVER( rimrockn12 )/* (c) 1991 Strata/Incredible Technologies */ - DRIVER( ninclown ) /* (c) 1991 Strata/Incredible Technologies */ - DRIVER( gpgolf ) /* (c) 1992 Strata/Incredible Technologies */ - DRIVER( gtg2 ) /* (c) 1992 Strata/Incredible Technologies */ - DRIVER( gtg2t ) /* (c) 1989 Strata/Incredible Technologies */ - DRIVER( gtg2j ) /* (c) 1991 Strata/Incredible Technologies */ - DRIVER( neckneck ) /* (c) 1992 Bundra Games/Incredible Technologies */ - DRIVER( timekill ) /* (c) 1992 Strata/Incredible Technologies */ - DRIVER( timekill131 ) /* (c) 1992 Strata/Incredible Technologies */ - DRIVER( timekill121 ) /* (c) 1992 Strata/Incredible Technologies */ - DRIVER( hardyard ) /* (c) 1993 Strata/Incredible Technologies */ - DRIVER( hardyard10 ) /* (c) 1993 Strata/Incredible Technologies */ - DRIVER( bloodstm ) /* (c) 1994 Strata/Incredible Technologies */ - DRIVER( bloodstm22 ) /* (c) 1994 Strata/Incredible Technologies */ - DRIVER( bloodstm21 ) /* (c) 1994 Strata/Incredible Technologies */ - DRIVER( bloodstm11 ) /* (c) 1994 Strata/Incredible Technologies */ - DRIVER( pairs ) /* (c) 1994 Strata/Incredible Technologies */ - DRIVER( pairsa ) /* (c) 1994 Strata/Incredible Technologies */ - DRIVER( hotmemry ) /* (c) 1994 Tuning/Incredible Technologies */ - DRIVER( hotmemry11 ) /* (c) 1994 Tuning/Incredible Technologies */ - DRIVER( drivedge ) /* (c) 1994 Strata/Incredible Technologies */ - DRIVER( wcbowl ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl165 ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl161 ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl16 ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl140 ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl15 ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl14 ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl13 ) /* (c) 1995 Incredible Technologies */ - DRIVER( wcbowl12 ) /* (c) 1995 Incredible Technologies */ - DRIVER( sftm ) /* (c) 1995 Capcom/Incredible Technologies */ - DRIVER( sftm110 ) /* (c) 1995 Capcom/Incredible Technologies */ - DRIVER( sftm111 ) /* (c) 1995 Capcom/Incredible Technologies */ - DRIVER( sftmj ) /* (c) 1995 Capcom/Incredible Technologies */ - DRIVER( shufshot ) /* (c) Strata/Incredible Technologies */ - DRIVER( shufshot139 ) /* (c) Strata/Incredible Technologies */ - DRIVER( shufshot137 ) /* (c) Strata/Incredible Technologies */ - DRIVER( wcbowldx ) /* (c) 1999 Incredible Technologies */ - - DRIVER( gt3d ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dl192 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dl191 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3ds192 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dv18 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dv17 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dv16 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dv15 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dv14 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dt231 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt3dt211 ) /* (c) 1995 Incredible Technologies */ - DRIVER( gt97 ) /* (c) 1997 Incredible Technologies */ - DRIVER( gt97v122 ) /* (c) 1997 Incredible Technologies */ - DRIVER( gt97v121 ) /* (c) 1997 Incredible Technologies */ - DRIVER( gt97s121 ) /* (c) 1997 Incredible Technologies */ - DRIVER( gt97v120 ) /* (c) 1997 Incredible Technologies */ - DRIVER( gt97t240 ) /* (c) 1997 Incredible Technologies */ - DRIVER( gt97t243 ) /* (c) 1997 Incredible Technologies */ - DRIVER( gt98 ) /* (c) 1998 Incredible Technologies */ - DRIVER( gt98v100 ) /* (c) 1998 Incredible Technologies */ - DRIVER( gt98s100 ) /* (c) 1998 Incredible Technologies */ - DRIVER( gt98t303 ) /* (c) 1998 Incredible Technologies */ - DRIVER( gt99 ) /* (c) 1999 Incredible Technologies */ - DRIVER( gt99s100 ) /* (c) 1999 Incredible Technologies */ - DRIVER( gt99t400 ) /* (c) 1999 Incredible Technologies */ - DRIVER( gtroyal ) /* (c) 1999 Incredible Technologies */ - DRIVER( gt2k ) /* (c) 2000 Incredible Technologies */ - DRIVER( gt2kp100 ) /* (c) 2000 Incredible Technologies */ - DRIVER( gt2ks100 ) /* (c) 2000 Incredible Technologies */ - DRIVER( gt2kt500 ) /* (c) 2000 Incredible Technologies */ - DRIVER( gtsuprem ) /* (c) 2000 Incredible Technologies */ - DRIVER( gtclassc ) /* (c) 2001 Incredible Technologies */ - DRIVER( gtclasscp ) /* (c) 2001 Incredible Technologies */ - DRIVER( gtclasscs ) /* (c) 2001 Incredible Technologies */ - - /* Leland games */ - DRIVER( cerberus ) /* (c) 1985 Cinematronics */ - DRIVER( mayhem ) /* (c) 1985 Cinematronics */ - DRIVER( powrplay ) /* (c) 1985 Cinematronics */ - DRIVER( wseries ) /* (c) 1985 Cinematronics */ - DRIVER( alleymas ) /* (c) 1986 Cinematronics */ - DRIVER( upyoural ) /* (c) 1987 Cinematronics */ - DRIVER( dangerz ) /* (c) 1986 Cinematronics USA */ - DRIVER( basebal2 ) /* (c) 1987 Cinematronics */ - DRIVER( dblplay ) /* (c) 1987 Tradewest / Leland */ - DRIVER( strkzone ) /* (c) 1988 Leland */ - DRIVER( redlin2p ) /* (c) 1987 Cinematronics + Tradewest license */ - DRIVER( quarterb ) /* (c) 1987 Leland */ - DRIVER( quarterba ) /* (c) 1987 Leland */ - DRIVER( viper ) /* (c) 1988 Leland */ - DRIVER( teamqb ) /* (c) 1988 Leland */ - DRIVER( teamqb2 ) /* (c) 1988 Leland */ - DRIVER( aafb ) /* (c) 1989 Leland */ - DRIVER( aafbd2p ) /* (c) 1989 Leland */ - DRIVER( aafbc ) /* (c) 1989 Leland */ - DRIVER( aafbb ) /* (c) 1989 Leland */ - DRIVER( offroad ) /* (c) 1989 Leland */ - DRIVER( offroadt ) /* (c) 1989 Leland */ - DRIVER( offroadt2p )/* (c) 1989 Leland */ - DRIVER( pigout ) /* (c) 1990 Leland */ - DRIVER( pigouta ) /* (c) 1990 Leland */ - DRIVER( ataxx ) /* (c) 1990 Leland */ - DRIVER( ataxxa ) /* (c) 1990 Leland */ - DRIVER( ataxxe ) /* (c) 1990 Leland */ - DRIVER( ataxxj ) /* (c) 1990 Leland */ - DRIVER( wsf ) /* (c) 1990 Leland */ - DRIVER( indyheat ) /* (c) 1991 Leland */ - DRIVER( brutforc ) /* (c) 1991 Leland */ - DRIVER( asylum ) /* (c) 1991 Leland */ - - /* Gremlin 8080 games */ - /* the numbers listed are the range of ROM part numbers */ - DRIVER( blockade ) /* 1-4 [1977 Gremlin] */ - DRIVER( comotion ) /* 5-7 [1977 Gremlin] */ - DRIVER( hustle ) /* 16-21 [1977 Gremlin] */ - DRIVER( blasto ) /* [1978 Gremlin] */ - DRIVER( mineswpr ) /* [1977 Amutech] */ - DRIVER( mineswpr4 ) /* [1977 Amutech] */ - - /* Gremlin/Sega "VIC dual game board" games */ - /* the numbers listed are the range of ROM part numbers */ - DRIVER( depthch ) /* 50-55 [1977 Gremlin?] */ - DRIVER( depthcho ) /* ? [1977 Gremlin?] */ - DRIVER( subhunt ) /* ? [1977 Taito] */ - DRIVER( safari ) /* 57-66 [1977 Gremlin?] */ - DRIVER( safaria ) /* bootleg? */ - DRIVER( frogs ) /* 112-119 [1978 Gremlin?] */ - DRIVER( sspaceat ) /* 155-162 (c) */ - DRIVER( sspaceat2 ) /* 155-162 (c) 1979 Sega */ - DRIVER( sspaceat3 ) /* 155-162 (c) 1979 Sega */ - DRIVER( sspaceatc ) /* 139-146 (c) */ - DRIVER( sspacaho ) /* ? epr00001.bin - epr00008.bin */ - DRIVER( headon ) /* 163-167/192-193 (c) Gremlin */ - DRIVER( headonb ) /* 163-167/192-193 (c) Gremlin */ - DRIVER( headons ) /* Sidam bootleg */ - DRIVER( headonsa ) /* Sidam bootleg */ - DRIVER( supcrash ) /* bootleg */ - DRIVER( headon2 ) /* ???-??? (c) 1979 Sega */ - DRIVER( headon2s ) /* Sidam bootleg */ - DRIVER( car2 ) /* bootleg */ - /* ???-??? Fortress */ - /* ???-??? Gee Bee */ - /* 255-270 Head On 2 / Deep Scan */ - DRIVER( invho2 ) /* 271-286 (c) 1979 Sega */ - DRIVER( nsub ) /* 268-275 (c) 1980 Sega */ - DRIVER( samurai ) /* 289-302 + upgrades (c) 1980 Sega */ - DRIVER( invinco ) /* 310-318 (c) 1979 Sega */ - DRIVER( invds ) /* 367-382 (c) 1979 Sega */ - DRIVER( tranqgun ) /* 413-428 (c) 1980 Sega */ - /* 450-465 Tranquilizer Gun (different version?) */ - /* ???-??? Car Hunt / Deep Scan */ - DRIVER( spacetrk ) /* 630-645 (c) 1980 Sega */ - DRIVER( spacetrkc ) /* (c) 1980 Sega */ - DRIVER( carnival ) /* 651-666 (c) 1980 Sega */ - DRIVER( carnivalc ) /* 501-516 (c) 1980 Sega */ - DRIVER( carnivalh ) - DRIVER( carnivalha ) - DRIVER( brdrline ) /* (c) 1980 Sega */ - DRIVER( starrkr ) /* (c) 1981 Sega */ - DRIVER( brdrlins ) /* Sidam bootleg */ - DRIVER( brdrlinb ) /* Karateco bootleg */ - DRIVER( digger ) /* 684-691 no copyright notice */ - DRIVER( pulsar ) /* 790-805 (c) 1981 Sega */ - DRIVER( heiankyo ) /* (c) [1979?] Denki Onkyo */ - DRIVER( alphaho ) /* Data East */ - - /* Sega G-80 vector games */ - DRIVER( spacfury ) /* (c) 1981 */ - DRIVER( spacfurya ) /* no copyright notice */ - DRIVER( spacfuryb ) /* no copyright notice */ - DRIVER( zektor ) /* (c) 1982 */ - DRIVER( tacscan ) /* (c) 1982 */ - DRIVER( elim2 ) /* (c) 1981 Gremlin */ - DRIVER( elim2a ) /* (c) 1981 Gremlin */ - DRIVER( elim2c ) /* (c) 1981 Gremlin */ - DRIVER( elim4 ) /* (c) 1981 Gremlin */ - DRIVER( elim4p ) /* (c) 1981 Gremlin */ - DRIVER( startrek ) /* (c) 1982 */ - - /* Sega G-80 raster games */ - DRIVER( astrob ) /* (c) 1981 */ - DRIVER( astrob2 ) /* (c) 1981 */ - DRIVER( astrob2a ) /* (c) 1981 */ - DRIVER( astrob1 ) /* (c) 1981 */ - DRIVER( astrobg ) /* (c) 1981 */ - DRIVER( 005 ) /* (c) 1981 */ - DRIVER( monsterb ) /* (c) 1982 */ - DRIVER( monsterb2 ) /* (c) 1982 */ - DRIVER( spaceod ) /* (c) 1981 */ - DRIVER( spaceod2 ) /* (c) 1981 */ - DRIVER( pignewt ) /* (c) 1983 */ - DRIVER( pignewta ) /* (c) 1983 */ - DRIVER( sindbadm ) /* 834-5244 (c) 1983 Sega */ - - /* Sega "Zaxxon hardware" games */ - DRIVER( zaxxon ) /* (c) 1982 */ - DRIVER( zaxxonj ) /* (c) 1982 */ - DRIVER( zaxxon2 ) /* (c) 1982 */ - DRIVER( zaxxon3 ) /* (c) 1982 */ - DRIVER( zaxxonb ) /* bootleg */ - DRIVER( szaxxon ) /* (c) 1982 */ - DRIVER( futspy ) /* (c) 1984 */ - DRIVER( razmataz ) /* modified 834-0213, 834-0214 (c) 1983 */ - DRIVER( ixion ) /* (c) 1983 */ - DRIVER( congo ) /* 605-5167 (c) 1983 */ - DRIVER( tiptop ) /* 605-5167 (c) 1983 */ - - /* Sega "LaserDisc hardware" games */ - DRIVER( astron ) /* (c) 1983 */ - DRIVER( astronp ) /* (c) 1983 */ - DRIVER( galaxyr ) /* (c) 1983 */ - DRIVER( galaxyrp ) /* (c) 1983 */ - DRIVER( sblazerp ) /* (c) 1983 */ - DRIVER( cobraseg ) /* (c) ???? */ - DRIVER( gpworld ) /* (c) 1984 */ - DRIVER( timetrv ) /* (c) 1991.10 Virtual Image Productions */ - - /* Sega SG1000 based games */ - DRIVER( chboxing ) /* (c) 1984 */ - DRIVER( chwrestl ) /* (c) 1985 */ - DRIVER( dokidoki ) /* (c) 1985 */ - - /* Sega System 1 / System 2 games */ - DRIVER( starjack ) /* 834-5191 (c) 1983 (S1) */ - DRIVER( starjacks ) /* (c) 1983 Stern (S1) */ - DRIVER( regulus ) /* 834-5328?(c) 1983 (S1) */ - DRIVER( reguluso ) /* 834-5328?(c) 1983 (S1) */ - DRIVER( regulusu ) /* 834-5328?(c) 1983 (S1) */ - DRIVER( upndown ) /* (c) 1983 (S1) */ - DRIVER( upndownu ) /* (c) 1983 (S1) */ - DRIVER( mrviking ) /* 834-5383 (c) 1984 (S1) */ - DRIVER( mrvikingj ) /* 834-5383 (c) 1984 (S1) */ - DRIVER( swat ) /* 834-5388 (c) 1984 Coreland / Sega (S1) */ - DRIVER( flicky ) /* (c) 1984 (S1) */ - DRIVER( flickys2 ) /* (c) 1984 (S1) */ - DRIVER( flickyo ) /* (c) 1984 (S1) */ - DRIVER( flickys1 ) /* (c) 1984 (S1) */ - DRIVER( wmatch ) /* (c) 1984 (S1) */ - DRIVER( bullfgt ) /* 834-5478 (c) 1984 Sega / Coreland (S1) */ - DRIVER( thetogyu ) /* 834-5478 (c) 1984 Sega / Coreland (S1) */ - DRIVER( spatter ) /* 834-5583 (c) 1984 (S1) */ - DRIVER( ssanchan ) /* 834-5583 (c) 1984 (S1) */ - DRIVER( pitfall2 ) /* 834-5627 [1985?] reprogrammed, (c) 1984 Activision (S1) */ - DRIVER( pitfall2a ) /* 834-5627 [1985?] reprogrammed, (c) 1984 Activision (S1) */ - DRIVER( pitfall2u ) /* 834-5627 [1985?] reprogrammed, (c) 1984 Activision (S1) */ - DRIVER( seganinj ) /* 834-5677 (c) 1985 (S1) */ - DRIVER( seganinju ) /* 834-5677 (c) 1985 (S1) */ - DRIVER( ninja ) /* 834-5677 (c) 1985 (S1) */ - DRIVER( nprinces ) /* 834-5677 (c) 1985 (S1) */ - DRIVER( nprinceso ) /* 834-5677 (c) 1985 (S1) */ - DRIVER( nprincesu ) /* 834-5677 (c) 1985 (S1) */ - DRIVER( nprincesb ) /* bootleg? (S1) */ - DRIVER( imsorry ) /* 834-5707 (c) 1985 Coreland / Sega (S1) */ - DRIVER( imsorryj ) /* 834-5707 (c) 1985 Coreland / Sega (S1) */ - DRIVER( teddybb ) /* 834-5712 (c) 1985 (S1) */ - DRIVER( teddybbo ) /* 834-5712 (c) 1985 (S1) */ - DRIVER( hvymetal ) /* 834-5745 (c) 1985 (S2?) */ - DRIVER( myhero ) /* 834-5755 (c) 1985 (S1) */ - DRIVER( sscandal ) /* 834-5755 (c) 1985 Coreland / Sega (S1) */ - DRIVER( myherok ) /* 834-5755 (c) 1985 Coreland / Sega (S1) */ - DRIVER( shtngmst ) /* 834-5719/5720 (c) 1985 (S2) */ - DRIVER( shtngmste ) /* 834-5719/5720 (c) 1985 (S2) */ - DRIVER( choplift ) /* 834-5795 (c) 1985, (c) 1982 Dan Gorlin (S2) */ - DRIVER( chopliftu ) /* 834-5795 (c) 1985, (c) 1982 Dan Gorlin (S2) */ - DRIVER( chopliftbl )/* bootleg (S2) */ - DRIVER( 4dwarrio ) /* 834-5918 (c) 1985 Coreland / Sega (S1) */ - DRIVER( brain ) /* (c) 1986 Coreland / Sega (S2?) */ - DRIVER( raflesia ) /* 834-5753 (c) 1985 Coreland / Sega (S1) */ - DRIVER( wboy ) /* 834-5984 (c) 1986 + Escape license (S1) */ - DRIVER( wboyo ) /* 834-5984 (c) 1986 + Escape license (S1) */ - DRIVER( wboy2 ) /* 834-5984 (c) 1986 + Escape license (S1) */ - DRIVER( wboy2u ) /* 834-5984 (c) 1986 + Escape license (S1) */ - DRIVER( wboy3 ) /* 834-5984 (c) 1986 + Escape license (S1) */ - DRIVER( wboy4 ) /* 834-5984 (c) 1986 + Escape license (S1) */ - DRIVER( wboyu ) /* 834-5753 (? maybe a conversion) (c) 1986 + Escape license (S1) */ - DRIVER( wbdeluxe ) /* (c) 1986 + Escape license (S1) */ - DRIVER( wboysys2 ) /* 834-5984 (c) 1986 + Escape license (S1) */ - DRIVER( gardia ) /* 834-6119 (S2?) */ - DRIVER( gardiab ) /* bootleg */ - DRIVER( nob ) /* (c) Data East */ - DRIVER( nobb ) /* bootleg */ - DRIVER( blockgal ) /* 834-6303 (S1) */ - DRIVER( blockgalb ) /* bootleg */ - DRIVER( tokisens ) /* (c) 1987 (from a bootleg board) (S2) */ - DRIVER( wbml ) /* bootleg (S2) */ - DRIVER( wbmljo ) /* (c) 1987 Sega/Westone (S2) */ - DRIVER( wbmljb ) /* (c) 1987 Sega/Westone (S2) */ - DRIVER( wbmlb ) /* bootleg? (S2) */ - DRIVER( wbmlbg ) /* bootleg (Galaxy Electronics) */ - DRIVER( dakkochn ) /* 836-6483? (S2) */ - DRIVER( ufosensi ) /* 834-6659 (S2) */ - DRIVER( ufosensib ) /* bootleg */ -/* -other System 1 / System 2 games: - -WarBall -DokiDoki Penguin Land *not confirmed -*/ - - /* Sega System E games (Master System hardware) */ - DRIVER( hangonjr ) /* (c) 1985 */ - DRIVER( transfrm ) /* 834-5803 (c) 1986 */ - DRIVER( astrofl ) /* 834-5803 (c) 1986 */ - DRIVER( ridleofp ) /* (c) 1986 Sega / Nasco */ - DRIVER( fantzn2 ) /* (c) 1988 */ - DRIVER( opaopa ) - DRIVER( tetrisse ) /* (c) 1988 */ - - /* other Sega 8-bit games */ - DRIVER( turbo ) /* (c) 1981 Sega */ - DRIVER( turboa ) /* (c) 1981 Sega */ - DRIVER( turbob ) /* (c) 1981 Sega */ - DRIVER( subroc3d ) /* (c) 1982 Sega */ - DRIVER( buckrog ) /* (c) 1982 Sega */ - DRIVER( buckrogn ) /* (c) 1982 Sega */ - DRIVER( buckrogn2 ) /* (c) 1982 Sega */ - DRIVER( zoom909 ) /* (c) 1982 Sega */ - DRIVER( kopunch ) /* 834-0103 (c) 1981 Sega */ - DRIVER( suprloco ) /* (c) 1982 Sega */ - DRIVER( suprlocoa ) /* (c) 1982 Sega */ - DRIVER( dotrikun ) /* cabinet test board */ - DRIVER( dotrikun2 ) /* cabinet test board */ - DRIVER( spcpostn ) /* (c) 1986 Sega / Nasco" */ - DRIVER( angelkds ) /* 833-6599 (c) 1988 Sega / Nasco? */ - DRIVER( calorie ) /* (c) 1986 Sega */ - DRIVER( calorieb ) /* (c) 1986 Sega (but bootleg) */ - - /* Bingo-based games */ - DRIVER( bingoc ) /* (c) 1989 Sega */ - /* Bingo Fantasy *//* (c) 19?? Sega */ - /* Bingo Star *//* (c) 19?? Sega */ - /* Bingo Party *//* (c) 1993 Sega */ - /* BP Phoenix *//* (c) 1998 Sega */ - /* BP Special *//* (c) 2000 Sega */ - /* BP Multicards *//* (c) 2002 Sega */ - /* BP Splash *//* (c) 2002 Sega */ - /* Bingo Planet *//* (c) 1997 Sega */ - - /* Enduro Racer / Space Harrier / Hang On */ - DRIVER( enduror ) /* (c) 1985 (FD1089B, decrypted) */ - DRIVER( enduror1 ) /* (c) 1985 (FD1089B, decrypted) */ - DRIVER( endurob2 ) /* (c) 1985 (Beta bootleg) */ - DRIVER( endurobl ) /* (c) 1985 (Herb bootleg) */ - DRIVER( hangon ) /* (c) 1985 (Rev A)*/ - DRIVER( hangon1 ) /* (c) 1985 */ - DRIVER( sharrier ) /* (c) 1985 */ - DRIVER( sharrier1 ) /* (c) 1985 */ - DRIVER( shangonro ) /* (c) 1987 (FD1094, decrypted) */ - DRIVER( shangonrb ) /* (c) 1992 (but bootleg, hangon hw?) */ - - /* Pre-16 */ - DRIVER( aliensynjo ) /* (c) 1987 (FD1089A, decrypted) */ - DRIVER( aliensyn2 ) /* (c) 1987 (FD1089A, decrypted) */ - DRIVER( aliensyn5 ) /* (c) 1987 (FD1089B) */ - DRIVER( bodyslam ) /* (c) 1986 (8751) */ - DRIVER( dumpmtmt ) /* (c) 1986 (Japan) */ - DRIVER( mjleague ) /* (c) 1985 */ - DRIVER( quartet ) /* (c) 1986 (8751) */ - DRIVER( quarteta ) /* (c) 1986 (8751) */ - DRIVER( quartet2 ) /* (c) 1986 (8751) */ - DRIVER( quartet2a ) /* (c) 1986 */ - - /* System 16A */ - DRIVER( aceattaca ) /* (c) 1988 (FD1094, decrypted) */ - DRIVER( afighter ) /* (c) 1986 (FD1089A, decrypted) */ - DRIVER( alexkidd ) /* (c) 1986 (FD1089A, decrypted) */ - DRIVER( alexkidd1 ) /* (c) 1986 */ - DRIVER( fantzone ) /* (c) 1986 (Unprotected Rev A) */ - DRIVER( fantzone1 ) /* (c) 1986 (Unprotected) */ - DRIVER( fantzonep ) /* (c) 1986 (NEC 0317-5000, encrypted)*/ - DRIVER( sdi ) /* (c) 1987 (FD1089B, decrypted) */ - DRIVER( shinobi ) /* (c) 1987 */ - DRIVER( shinobi1 ) /* (c) 1987 (FD1094, decrypted) */ - DRIVER( shinobls ) /* (c) 1987 (Star bootleg) */ - DRIVER( sjryuko1 ) /* (c) 1988 White Board (FD1089B, decrypted) */ - DRIVER( tetris ) /* (c) 1988 (FD1094, decrypted) S16A */ - DRIVER( tetris3 ) /* (c) 1988 (FD1094, decrypted) S16A */ - DRIVER( timescan1 ) /* (c) 1987 (FD1089B, decrypted) */ - DRIVER( wb31 ) /* (c) 1988 Sega / Westone (FD1094, decrypted) */ - DRIVER( wb35 ) /* (c) 1988 Sega / Westone (FD1089A, decrypted) */ - DRIVER( wb35a ) /* (c) 1988 Sega / Westone (FD1089A, decrypted) */ - DRIVER( passsht16a )/* (c) 1988 */ - - /* System 16B */ - DRIVER( aceattac ) /* (c) 1988 (protected) */ - DRIVER( aliensyn ) /* (c) 1987 */ - DRIVER( aliensyn3 ) /* (c) 1987 (FD1089A, decrypted) */ - DRIVER( aliensynj ) /* (c) 1987 (FD1089A, decrypted) */ - DRIVER( altbeast ) /* (c) 1988 (8751) */ - DRIVER( altbeastj ) /* (c) 1988 (8751) */ - DRIVER( altbeast5 ) /* (c) 1988 (8751) */ - DRIVER( altbeast4 ) /* (c) 1988 (MC-8123B) */ - DRIVER( altbeast2 ) /* (c) 1988 (MC-8123B) */ - DRIVER( altbeastj1 ) /* (c) 1988 (protected) */ - DRIVER( altbeastj2 ) /* (c) 1988 (protected) */ - DRIVER( altbeastj3 ) /* (c) 1988 (FD1094, decrypted) */ - DRIVER( aurail ) /* (c) 1990 Sega / Westone */ - DRIVER( aurail1 ) /* (c) 1990 Sega / Westone (FD1089B, decrypted) */ - DRIVER( aurailj ) /* (C) 1990 Sega / Westone (FD1089A, decrypted) */ - DRIVER( bayroute ) /* (c) 1989 Sunsoft / Sega (FD1094, decrypted) */ - DRIVER( bayroutej ) /* (c) 1989 Sunsoft / Sega (FD1094, decrypted) */ - DRIVER( bayroute1 ) /* (c) 1989 Sunsoft / Sega */ - DRIVER( bullet ) /* (c) 1987 (protected) */ - DRIVER( cotton ) /* (c) 1990 (FD1094, decrypted) */ - DRIVER( cottonu ) /* (c) 1990 (FD1094, decrypted) */ - DRIVER( cottonj ) /* (c) 1990 (FD1094, decrypted) */ - DRIVER( ddux ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( ddux1 ) /* (c) 1989 (8751) */ - DRIVER( dunkshot ) /* (c) 1986 (FD1094, decrypted) */ - DRIVER( eswat ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( eswatu ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( eswatj ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( exctleag ) /* (protected) */ - DRIVER( fpoint ) /* (c) 1989 (Japan, FD1094, decrypted) */ - DRIVER( fpoint1 ) /* (c) 1989 (Japan, FD1094, decrypted) */ - DRIVER( goldnaxe ) /* (c) 1989 (8751) */ - DRIVER( goldnaxeu ) /* (c) 1989 (protected) */ - DRIVER( goldnaxej ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( goldnaxe3 ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( goldnaxe2 ) /* (c) 1989 (8751) */ - DRIVER( goldnaxe1 ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( hwchamp ) /* (c) 1987 */ - DRIVER( hwchampj ) /* (c) 1987 (FD1094, decrypted) */ - DRIVER( mvp ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( mvpj ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( passsht ) /* (c) 1988 (FD1094, decrypted) */ - DRIVER( passshta ) /* (c) 1988 (FD1094, decrypted) */ - DRIVER( passshtj ) /* (c) 1988 (FD1094, decrypted) */ - DRIVER( riotcity ) /* (c) 1991 Sega / Westone */ - DRIVER( ryukyu ) /* (c) 1990 (FD1094, decrypted) */ - DRIVER( sdib ) /* (c) 1987 (FD1089A, decrypted) */ - DRIVER( sdibl ) /* (c) 1987 bootleg */ - DRIVER( defense ) /* (c) 1987 (FD1094, decrypted) */ - DRIVER( shinobi5 ) /* (c) 1987 */ - DRIVER( shinobi4 ) /* (c) 1987 (MC-8123B) */ - DRIVER( shinobi3 ) /* (c) 1987 (MC-8123B) */ - DRIVER( shinobi2 ) /* (c) 1987 (FD1094, decrypted) */ - DRIVER( sonicbom ) /* (c) 1987 (FD1094, decrypted) */ - DRIVER( sjryuko ) /* (c) 1988 White Board (FD1094, decrypted) */ - DRIVER( suprleag ) /* (c) 1987 (protected) */ - DRIVER( tetris2 ) /* (c) 1988 (FD1094, decrypted) S16B */ - DRIVER( tetris1 ) /* (c) 1988 (FD1094, decrypted) S16B */ - DRIVER( timescan ) /* (c) 1987 */ - DRIVER( toryumon ) /* (c) 1995 */ - DRIVER( tturf ) /* (c) 1989 Sega / Sunsoft (8751) */ - DRIVER( tturfu ) /* (c) 1989 Sega / Sunsoft (8751) */ - DRIVER( wb3 ) /* (c) 1988 Sega / Westone (8751) */ - DRIVER( wb34 ) /* (c) 1988 Sega / Westone (FD1094, decrypted) */ - DRIVER( wb33 ) /* (c) 1988 Sega / Westone (FD1094, decrypted) */ - DRIVER( wb32 ) /* (c) 1988 Sega / Westone (FD1094, decrypted) */ - DRIVER( wrestwar ) /* (c) 1989 (8751) */ - DRIVER( wrestwar2 ) /* (c) 1989 (FD1094, decrypted) */ - DRIVER( wrestwar1 ) /* (c) 1989 (FD1094, decrypted) */ - - /* Philko Boards */ - DRIVER( atomicp ) /* (c) 1990 Philko - korean clone board */ - DRIVER( snapper ) /* (c) 1990 Philko - korean clone board */ - - /* S16 Bootlegs */ - DRIVER( bayrouteb1 )/* (c) 1989 (protected) (bootleg) */ - DRIVER( bayrouteb2 )/* (c) 1989 (protected) (bootleg) */ - DRIVER( dduxbl ) /* (c) 1989 (Datsu bootleg) */ - DRIVER( eswatbl ) /* BOOTLEG */ - DRIVER( fpointbl ) /* (c) 1989 (Datsu bootleg) */ - DRIVER( fpointbj ) /* (c) 1989 (Datsu bootleg, Japan) */ - DRIVER( goldnaxeb1 )/* BOOTLEG */ - DRIVER( goldnaxeb2 )/* BOOTLEG */ - DRIVER( passht4b ) /* bootleg */ - DRIVER( passshtb ) /* bootleg */ - DRIVER( shinoblb ) /* (c) 1987 (but bootleg) */ - DRIVER( shinobld ) /* (c) 1987 (but bootleg) */ - DRIVER( tetrisbl ) /* (c) 1988 (but bootleg) */ - DRIVER( beautyb ) /* (c) 1991 AMT */ - DRIVER( iqpipe ) /* (c) 1991 AMT */ - DRIVER( tturfbl ) /* (c) 1989 (Datsu bootleg) */ - DRIVER( wb3bbl ) /* BOOTLEG */ - - /* ISG S16 bootleg system */ - DRIVER( isgsm ) - DRIVER( tetrbx ) - DRIVER( shinfz ) - - /* System 18 */ - DRIVER( shdancer ) /* 1989.05 Shadow Dancer (US) */ - DRIVER( shdancerj ) /* 1989.11 Shadow Dancer (Japan) */ - DRIVER( shdancer1 ) /* 1989.?? Shadow Dancer (World) */ - DRIVER( bloxeed ) /* 1989.12 Bloxeed (Japan, FD1094, decrypted) */ - /* 1990.04 Bloxeed (US) */ - DRIVER( astormu ) /* 1990.04 Alien Storm (US, FD1094, decrypted) */ - DRIVER( astormj ) /* 1990.05 Alien Storm (Japan, FD1094, decrypted) */ - DRIVER( astorm ) /* 1990.?? Alien Storm (World, protected 2 Players) */ - DRIVER( astorm3 ) /* 1990.?? Alien Storm (World, FD1094, decrypted) */ - DRIVER( mwalku ) /* 1990.08 Micheal Jackson's Moonwalker (US, FD1094+8751, decrypted) */ - DRIVER( mwalkj ) /* 1990.08 Micheal Jackson's Moonwalker (Japan, FD1094+8751, decrypted) */ - DRIVER( mwalk ) /* 1990.?? Micheal Jackson's Moonwalker (World, FD1094+8751, decrypted) */ - DRIVER( lghost ) /* 1990.?? Laser Ghost (World, FD1094, decrypted) */ - /* 1990.12 Laser Ghost (Japan) */ - DRIVER( lghostu ) /* 1991.01 Laser Ghost (US, FD1094, decrypted) */ - DRIVER( cltchitr ) /* 1991.02 Clutch Hitter (US, FD1094, decrypted) */ - DRIVER( cltchitrj ) /* 1991.05 Clutch Hitter (Japan, FD1094, decrypted) */ - DRIVER( ddcrewj ) /* 1991.07 D.D.Crew (Japan, FD1094, decrypted) */ - DRIVER( ddcrewu ) /* 1991.09 D.D.Crew (US, FD1094, decrypted) */ - DRIVER( ddcrew ) /* 1991.?? D.D.Crew (World, FD1094, decrypted) */ - DRIVER( ddcrew2 ) /* 1991.?? D.D.Crew (World, FD1094, decrypted) */ - DRIVER( ddcrew1 ) /* 1991.?? D.D.Crew (World, FD1094, decrypted) */ - DRIVER( wwallyj ) /* 1992.06 Wally wo Sagase! (Japan, FD1094, decrypted) */ - DRIVER( wwallyja ) /* 1992.06 Wally wo Sagase! (Japan, FD1094, decrypted) */ - DRIVER( desertbr ) /* 1993.?? Desert Breaker (World, FD1094, decrypted) */ - DRIVER( desertbrj ) /* 1992.10 Desert Breaker (Japan) */ - DRIVER( pontoon ) - - /* System18 Bootlegs */ - DRIVER( astormbl ) /* BOOTLEG */ - DRIVER( astormb2 ) /* BOOTLEG */ - DRIVER( shdancbl ) /* BOOTLEG */ - DRIVER( mwalkbl ) /* BOOTLEG */ - - - /* Outrun Hardware */ - /* 1986.09 Outrun (Japan) */ - /* 1986.11 Outrun (US) */ - /* 1986.?? Outrun (World) */ - DRIVER( outrun ) /* Revision B */ - DRIVER( outrunra ) /* Revision A */ - DRIVER( outruno ) /* First version */ - DRIVER( outrundx ) /* Deluxe version */ - DRIVER( outrunb ) /* 1986 (protected beta bootleg) */ - /* 1987.04 Super Hang-On (Japan) */ - /* 1987.06 Super Hang-On (US) */ - /* 1987.?? Super Hang-On (World) */ - DRIVER( shangon ) /* 1987 (protected) */ - DRIVER( shangon3 ) /* 1987 (FD1089B, decrypted) */ - DRIVER( shangon2 ) /* 1987 (FD1089B, decrypted) */ - DRIVER( shangon1 ) /* 1987 (FD1089B, decrypted) */ - DRIVER( shangonle ) /* 1991 */ - /* 1989.02 Turbo Outrun (Japan) */ - /* 1989.04 Turbo Outrun (US) */ - /* 1989.?? Turbo Outrun (World) */ - DRIVER( toutrun ) /* 1987 (FD1094, decrypted) */ - DRIVER( toutrun3 ) /* 1987 (FD1094, decrypted) */ - DRIVER( toutrun2 ) /* 1987 (protected) */ - DRIVER( toutrun1 ) /* 1987 (FD1094, decrypted) */ - - /* X Board */ - DRIVER( aburner ) /* 1987.07 After Burner (Japan) */ - DRIVER( aburner2 ) /* 1987.09 After Burner II (Japan) */ - DRIVER( thndrbld1 ) /* 1987.12 Thunder Blade (Japan, deluxe/standard) */ - DRIVER( thndrbld ) /* 1988.02 Thunder Blade (US?, upright, FD1094, decrypted) */ - /* 1989.01 Last Survivor (Japan) */ - DRIVER( smgpj ) /* 1989.06 Super Monaco GP (Japan, FD1094, decrypted) */ - DRIVER( smgpja ) /* 1989.06 Super Monaco GP (Japan, FD1094, decrypted) */ - DRIVER( smgp ) /* 1989.?? Super Monaco GP (World, FD1094, decrypted) */ - DRIVER( smgp6 ) /* 1989.?? Super Monaco GP (World, FD1094, decrypted) */ - DRIVER( smgp5 ) /* 1989.?? Super Monaco GP (World, FD1094, decrypted) */ - DRIVER( smgpu ) /* 1989.08 Super Monaco GP (US, FD1094, decrypted) */ - DRIVER( smgpu3 ) /* 1989.08 Super Monaco GP (US, FD1094, decrypted) */ - DRIVER( smgpu2 ) /* 1989.08 Super Monaco GP (US, FD1094, decrypted) */ - DRIVER( smgpu1 ) /* 1989.08 Super Monaco GP (US, FD1094, decrypted) */ - DRIVER( loffirej ) /* 1989.12 Line of Fire (Japan, FD1094, decrypted) */ - DRIVER( loffire ) /* 1989.?? Line of Fire (World, FD1094, decrypted) */ - DRIVER( loffireu ) /* 1990.04 Line of Fire (US, FD1094, decrypted) */ - /* 1990.03 Racing Hero (Japan) */ - DRIVER( rachero ) /* 1990.?? Racing Hero (World, FD1094, decrypted) */ - DRIVER( abcop ) /* 1990.?? A.B.Cop (World, FD1094, decrypted) */ - /* 1991.01 A.B.Cop (Japan) */ - /* 1990.10 GP Rider (Japan) */ - DRIVER( gprider ) /* 1990.?? GP Rider (World, protected) */ - DRIVER( gprider1 ) /* 1990.12 GP Rider (US, FD1094, decrypted) */ - - /* Y-Board */ - /* 1988.05 Galaxy Force (Japan) */ - /* 1988.08 Galaxy Force (US) */ - DRIVER( gforce2j ) /* 1988.07 Galaxy Force II (Japan) */ - DRIVER( gforce2ja ) /* 1988.07 Galaxy Force II (Japan) */ - DRIVER( gforce2 ) /* 1988.?? Galaxy Force II (World) */ - /* 1988.12 Galaxy Force II (US) */ - /* 1988.08 Power Drift (US) */ - DRIVER( pdriftj ) /* 1988.09 Power Drift (Japan) */ - DRIVER( pdrift ) /* 1988.?? Power Drift (World) */ - DRIVER( pdrifta ) - DRIVER( pdrifte ) - DRIVER( gloc ) /* 1990.04 G-LOC Air Battle (US) */ - /* 1990.05 G-LOC Air Battle (Japan) */ - DRIVER( glocr360 ) /* 1990.?? G-LOC (R360, World?) */ - DRIVER( strkfgtr ) /* 1991.06 Strike Fighter (Japan) */ - DRIVER( rchase ) /* 1991.09 Rail Chase (World) */ - DRIVER( rchasej ) /* 1991.09 Rail Chase (Japan) */ - /* 1991.09 Rail Chase (US) */ - - /* Sega System 24 games */ - /* disk based */ - DRIVER( hotrodj ) /* 1988.03 Hot Rod (Japan) */ - DRIVER( hotrod ) /* 1988.?? Hot Rod (World) */ - DRIVER( hotroda ) - /* 1988.07 Hot Rod (US) */ - DRIVER( sspiritj ) /* 1988.10 Scramble Spirits (Japan) */ - DRIVER( sspirits ) /* 1988.?? Scramble Spirits (World) */ - DRIVER( sspirtfc ) /* 1988.?? Scramble Spirits (protected) */ - /* 1988.11 Scramble Spirits (US) */ - DRIVER( ggroundj ) /* 1988.11 Gain Ground (Japan, FD1094, decrypted) */ - DRIVER( gground ) /* 1989.?? Gain Ground (World, FD1094, decrypted) */ - /* 1989.03 Gain Ground (US) */ - DRIVER( crkdownj ) /* 1989.03 Crack Down (Japan, FD1094, decrypted) */ - DRIVER( crkdown ) /* 1989.?? Crack Down (World, FD1094, decrypted) */ - DRIVER( crkdownu ) /* 1989.06 Crack Down (US, FD1094, decrypted) */ - DRIVER( sgmastj ) /* 1989.06 Jumbo Ozaki Super Masters (Japan, FD1094, decrypted) */ - DRIVER( sgmast ) /* 1989.?? Super Masters Golf (World, protected) */ - DRIVER( sgmastc ) /* 1989.?? Jumbo Ozaki Super Masters Golf (World, FD1094, decrypted) */ - /* 1989.09 Super Masters Golf (US) */ - DRIVER( roughrac ) /* 1990.03 Rough Racer (Japan, FD1094, decrypted) */ - DRIVER( bnzabrosj ) /* 1990.06 Bonanza Bros. (Japan) */ - DRIVER( bnzabros ) /* 1990.08 Bonanza Bros. (US) */ - DRIVER( qsww ) /* 1991.02 Quiz Syukudai wo Wasuremashita! (Japan) */ - DRIVER( dcclubfd ) /* 1991.07 Dynamic Country Club (US) */ - - /* ROM based */ - DRIVER( dcclubj ) /* 1991.06 Dynamic Country Club (Japan) */ - DRIVER( dcclub ) /* 1991.?? Dynamic Country Club (World) */ - DRIVER( qrouka ) /* 1991.12 Quiz Rouka ni Tattenasai! (Japan) */ - DRIVER( mahmajn ) /* 1992.12 Tokorosan no Mahmahjong (Japan) */ - DRIVER( quizmeku ) /* 1993.05 Quiz Mekurumeku Story (Japan) */ - DRIVER( mahmajn2 ) /* 1994.05 Tokorosan no Mahmahjong 2 (Japan) */ - DRIVER( qgh ) /* 1994.09 Quiz Ghost Hunter */ - - /* Sega System 32 games */ - DRIVER( radm ) /* 1991.?? Rad Mobile (World) */ - DRIVER( radmu ) /* 1991.03 Rad Mobile (US) */ - /* 1991.02 Rad Mobile (Japan) */ - DRIVER( radr ) /* 1991.?? Rad Rally (World) */ - DRIVER( radru ) /* 1991.09 Rad Rally (US) */ - /* 1991.07 Rad Rally (Japan) */ - DRIVER( spidman ) /* 1991.?? Spiderman (World) */ - DRIVER( spidmanu ) /* 1991.09 Spiderman (US) */ - /* 1991.09 Spiderman (Japan) */ - DRIVER( f1en ) /* 1991.?? F-1 Exhaust Note (World) */ - /* 1992.01 F-1 Exhaust Note (US) */ - /* 1991.11 F-1 Exhaust Note (Japan) */ - DRIVER( arabfgt ) /* 1992.?? Arabian Fight (World) */ - DRIVER( arabfgtu ) /* 1992.03 Arabian Fight (US) */ - DRIVER( arabfgtj ) /* 1992.03 Arabian Fight (Japan) */ - DRIVER( arescue ) /* 1992.03 Air Rescur (US) */ - /* 1992.04 Air Rescue (Japan) */ - DRIVER( ga2 ) /* 1992.?? Golden Axe II (World) */ - DRIVER( ga2u ) /* 1992.09 Golden Axe II (US) */ - DRIVER( ga2j ) /* 1992.10 Golden Axe Death Adder no Fukusyuu (Japan) */ - DRIVER( holo ) /* 1992.?? Hologram Holosseum (US) */ - /* 1992.11 Hologram Holosseum (Japan) */ - DRIVER( darkedge ) /* 1993.?? Dark Edge (World) */ - /* 1993.?? Dark Edge (US) */ - DRIVER( darkedgej ) /* 1993.03 Dark Edge (Japan) */ - DRIVER( brival ) /* 1993.?? Burning Rival (World) */ - DRIVER( brivalj ) /* 1993.08 Burning Rival (Japan) */ - DRIVER( f1lap ) /* 1993.?? F-1 Super Lap (World) */ - /* 1993.09 F-1 Super Lap (Japan) */ - DRIVER( alien3 ) /* 1993.?? Aliens 3 (World) */ - DRIVER( alien3u ) /* 1993.11 Aliens 3 (US) */ - /* 1993.09 Aliens 3 the Gun (Japan) */ - DRIVER( sonic ) /* 1993.09 Sonic the Hedgehog (Japan) */ - DRIVER( sonicp ) /* 1993.?? Sonic the Hedgehog (proto, Japan) */ - DRIVER( kokoroj2 ) /* 1993.12 Soreike! Kokoroji 2 (Japan) */ - DRIVER( jpark ) /* 1994.?? Jurassic Park (World) */ - /* 1994.?? Jurassic Park (US) */ - /* 1994.02 Jurassic Park (Japan) */ - DRIVER( dbzvrvs ) /* 1994.03 Dragon Ball Z V.R.V.S. (Japan) */ - DRIVER( jleague ) /* 1994.07 The J League 1994 (Japan) */ - DRIVER( svf ) /* 1994.?? Super Visual Football */ - DRIVER( svs ) /* 1994.?? Super Visual Soccer */ - DRIVER( slipstrm ) /* 1995.?? Slip Stream (Capcom) */ - DRIVER( slipstrmh ) - - /* Sega Multi System 32 games */ - /* 1993.05 Outrunners (Japan) */ - DRIVER( orunners ) /* 1993.?? Outrunners (World) */ - DRIVER( orunnersu ) /* 1993.06 Outrunners (US) */ - DRIVER( harddunkj ) /* 1994.04 Hard Dunk 3on3 (Japan) */ - DRIVER( harddunk ) /* 1994.?? Hard Dunk 3on3 (World) */ - /* 1993.03 Title Fight (Japan) */ - DRIVER( titlef ) /* 1993.?? Title Fight (World) */ - DRIVER( titlefu ) /* 1993.04 Title Fight (US) */ - /* 1992.07 Stadium Cross (Japan) */ - DRIVER( scross ) /* 1992.?? Stadium Cross (World) */ - DRIVER( scrossu ) /* 1992.09 Stadium Cross (US) */ - - /* Model 1 Games */ - DRIVER( vr ) /* 1992.08 Virtua Racing */ - DRIVER( vf ) /* 1993.12 Virtua Fighter */ - DRIVER( vformula ) /* 1993.?? Virtua Formula */ - DRIVER( swa ) /* 1994.04 Star Wars Arcade */ - DRIVER( wingwar ) /* 1994.06 Wing War */ - DRIVER( wingwarj ) /* 1994.06 Wing War (Japan) */ - DRIVER( wingwaru ) /* 1994.09 Wing War (US) */ - - /* Sega H1 games */ - DRIVER( coolridr ) /* 1995.04 Cool Riders */ - - /* Sega ST-V games */ - DRIVER( stvbios ) - /* 1994.07 Sports Fishing */ - DRIVER( gaxeduel ) /* 1995.02 Golden Axe the Duel */ - DRIVER( suikoenb ) /* 1995.03 Suiko Enbu (Data East) */ - DRIVER( bakubaku ) /* 1995.04 Bakubaku Animal */ - DRIVER( vfremix ) /* 1995.06 Virtua Fighter Remix */ - DRIVER( ejihon ) /* 1995.07 Ejihon Tantei Jimusyo */ - DRIVER( finlarch ) /* 1995.07 Final Arch */ - DRIVER( sfish2j ) /* 1995.08 Sports Fishing 2 (Japan) */ - DRIVER( shanhigw ) /* 1995.08 Shanghai Banri no Choujou */ - DRIVER( sandor ) /* 1995.11 Nido Aru Koto wa Sando-R */ - DRIVER( kiwames ) /* 1995.11 Pro Mahjong Kiwame S (Athena) */ - DRIVER( sfish2 ) /* 1995.11 Sports Fishing 2 (Export) */ - DRIVER( critcrsh ) /* 1995.?? Critter Crusher */ - /* 1995.12 Tatakott */ - DRIVER( batmanfr ) /* 1996.02 Batman Forever (Acclaim) */ - DRIVER( fhboxers ) /* 1996.02 Funky Head Boxers */ - DRIVER( vfkids ) /* 1996.03 Virtua Fighter Kids */ - DRIVER( pblbeach ) /* 1996.03 Pebble Beach the Great Shot (T&E Soft) */ - DRIVER( introdon ) /* 1996.04 Karaoke Quiz Intro Dondon (Sunsoft / Success) */ - DRIVER( smleague ) /* 1996.04 Super Major League */ - DRIVER( decathlt ) /* 1996.05 Decathlete */ - DRIVER( decathlto ) - DRIVER( dnmtdeka ) /* 1996.07 Dynamite Deka */ - DRIVER( mausuke ) /* 1996.07 Mausuke no Ojama the World (Data East) */ - DRIVER( diehard ) /* 1996.08 Die Hard Arcade */ - DRIVER( sokyugrt ) /* 1996.09 Soukyuu Gurentai (Raizing / 8ing) */ - DRIVER( prikura ) /* 1996.10 Prikura Daisakusen (Atlus) */ - DRIVER( magzun ) /* 1996.11 Magical Zunou Power */ - DRIVER( puyosun ) /* 1996.12 Puyo Puyo SUN (Compile) */ - DRIVER( colmns97 ) /* 1997.01 Columns 97 */ - DRIVER( shienryu ) /* 1997.02 Shienryu (Warashi) */ - DRIVER( vmahjong ) /* 1997.02 Virtual Mahjong (Micronet) */ - DRIVER( groovef ) /* 1997.05 Groove on Fight (Atlus) */ - DRIVER( nclubv3 ) /* 1997.07 Name Club Ver. 3 */ - DRIVER( pclub2 ) /* 1997.09 Print Club 2 */ - DRIVER( thunt ) /* 1997.09 Puzzle & Action Treasure Hunt (Sega (Deniam License)) */ - DRIVER( thuntk ) - DRIVER( winterht ) /* 1997.10 Winter Heat (Data East) */ - DRIVER( cotton2 ) /* 1997.11 Cotton 2 (Success) */ - DRIVER( hanagumi ) /* 1997.11 Sakura Taisen Hanagumi Taisen Columns */ - DRIVER( findlove ) /* 1997.12 Find Love (Daiki / FCF) */ - DRIVER( maruchan ) /* 1997.12 Maruchan de Goo!!! */ - DRIVER( techbowl ) /* 1997.12 Technical Bowling */ - DRIVER( znpwfv ) /* 1997.12 Zen Nippon Pro Wrestling featuring Virtua */ - DRIVER( seabass ) /* 1998.02 Sea Bass Fishing (A wave Inc (Able License)) */ - DRIVER( sasissu ) /* 1998.02 Taisen Tanto-R Sasissu!! */ - /* 1998.03 Bass Master Challenge */ - DRIVER( twcup98 ) /* 1998.04 Tecmo World Cup '98 (Tecmo) */ - DRIVER( grdforce ) /* 1998.05 Guardian Force (Success) */ - DRIVER( rsgun ) /* 1998.05 Radient Silver Gun (Treasure) */ - DRIVER( astrass ) /* 1998.06 Astra Super Stars (Sunsoft) */ - DRIVER( myfairld ) /* 1998.07 My Fair Lady (Micronet) */ - DRIVER( othellos ) /* 1998.07 Othello Shiyouyo (Success) */ - DRIVER( cottonbm ) /* 1998.09 Cotton Boomerang (Success) */ - DRIVER( stress ) /* 1998.10 Stress Busters */ - DRIVER( elandore ) /* 1998.11 Touryuu Densetsu Elandore (Sai-Mate) */ - DRIVER( sss ) /* 1998.12 Steep Slope Sliders (Capcom / Cave / Victor) */ - DRIVER( micrombc ) /* 1999.03 Microman Battle Charge */ - DRIVER( pclub2v3 ) /* 1999.03 Print Club 2 Vol. 3 */ - DRIVER( sanjeon ) /* 1999.04 Sanjun Sujun (Sega / Deniam) */ - DRIVER( danchih ) /* 1999.06 Danchi de Hanafuda Okusan Komeya Desuyo! (Altron (Tecmo License)) */ - DRIVER( ffreveng ) /* 1999.09 Final Fight Revenge (Capcom) */ - DRIVER( pclubpok ) /* 1999.11 Print Club Pokemon */ - DRIVER( danchiq ) /* 2000.12 Danchi de Quiz Okusan Yontaku Desuyo! (Altron) */ - - /* Sega Model 2 Games */ - - /* Model 2 (TGPs, Model 1 sound board) */ - DRIVER( daytona ) /* 1994.03 Daytona USA */ - DRIVER( daytona93 ) - DRIVER( daytonas ) - DRIVER( daytonat ) /* 1993, hack */ - DRIVER( daytonam ) /* 1993, hack */ - DRIVER( desert ) /* 1994.07 Desert Tank */ - DRIVER( vcop ) /* 1994.09 Virtua Cop */ - - /* Model 2A-CRX (TGPs, SCSP sound board) */ - DRIVER( vf2o ) /* 1994.11 Virtua Fighter 2 */ - DRIVER( vf2a ) /* 1995.?? */ - DRIVER( vf2b ) /* 1995.?? */ - DRIVER( srallyc ) /* 1995.02 Sega Rally Championship - Rev C */ - DRIVER( srallycb ) /* 1995.02 Sega Rally Championship - Rev B */ - DRIVER( vcop2 ) /* 1995.09 Virtua Cop 2 */ - DRIVER( vf2 ) /* 1995.09 Virtua Fighter 2.1*/ - /* 1995.10 Sky Target */ - DRIVER( manxtt ) /* 1995.11 Manx T.T. */ - /* 1996.08 Dynamite Baseball */ - DRIVER( doaa ) /* 1996.11 Dead or Alive */ - /* 1997.04 Dynamite Baseball '97 */ - DRIVER( motoraid ) /* 1997.10 Motor Raid */ - DRIVER( zeroguna ) /* 1997.12 Zero Gunner */ - DRIVER( dyndeka2 ) /* 1998.05 Dynamite Deka 2 */ - DRIVER( dynamcop ) /* 1998.09 Dynamic Cop */ - DRIVER( pltkidsa ) /* 1999.03 Pilot Kids */ - - /* Model 2B-CRX (SHARC, SCSP sound board) */ - DRIVER( vstriker ) /* 1995.05 virtua Striker */ - DRIVER( vstrikero ) /* 1995.05 virtua Striker */ - DRIVER( rchase2 ) /* 1995.06 Rail Chase 2 (Arcade TV Game List - P.104, Left, 12 from top) */ - DRIVER( indy500 ) /* 1995.07 Indy 500 */ - DRIVER( indy500d ) /* 1995.07 Indy 500 */ - DRIVER( indy500to ) /* 1995.07 Indy 500 */ - DRIVER( skytargt ) /* 1995.10 Sky Target */ - DRIVER( fvipers ) /* 1995.11 Fighting Vipers */ - DRIVER( von ) /* 1996.01 Dennou Senki Virtual-On (USA) */ - DRIVER( vonj ) /* 1996.01 Dennou Senki Virtual-On (Japan) */ - DRIVER( gunblade ) /* 1996.04 Gunblade N.Y. */ - DRIVER( schamp ) /* 1996.05 Sonic Championship */ - DRIVER( sfight ) /* 1996.05 Sonic the Fighters */ - DRIVER( lastbrnx ) /* 1996.06 Last Bronx */ - DRIVER( lastbrnxj ) /* 1996.06 Last Bronx (Japan) */ - DRIVER( sgt24h ) /* 1996.07 Super GT 24h */ - DRIVER( dynabb ) /* 1996.08 Dynamite Baseball */ - DRIVER( doa ) /* 1996.11 Dead or Alive */ - /* 1997.04 Dynamite Baseball '97 */ - DRIVER( zerogun ) /* 1997.12 Zero Gunner */ - DRIVER( zerogunj ) /* 1997.12 Zero Gunner (Japan) */ - DRIVER( dyndeka2b ) /* 1998.05 Dynamite Deka 2 */ - DRIVER( dynamcopb ) /* 1998.09 Dynamite Cop */ - DRIVER( pltkids ) /* 1999.03 Pilot Kids */ - - /* Model 2C-CRX (TGPx4, SCSP sound board) */ - DRIVER( skisuprg ) /* 1996.12 Sega Ski Super G */ - DRIVER( stcc ) /* 1996.09 Sega Touring Car Championship */ - DRIVER( stcca ) /* 1996.09 Sega Touring Car Championship */ - DRIVER( stccb ) /* 1996.09 Sega Touring Car Championship */ - DRIVER( waverunr ) /* 1996.10 Wave Runner */ - DRIVER( hotd ) /* 1997.03 The House of the Dead */ - DRIVER( topskatr ) /* 1997.05 Top Skater */ - DRIVER( topskatru ) /* 1997.05 Top Skater (USA) */ - DRIVER( topskatrj ) /* 1997.05 Top Skater (Japan) */ - DRIVER( overrev ) /* 1997.09 Overrev */ - DRIVER( segawski ) /* 1997.09 Sega Water Ski */ - DRIVER( dynamcopc ) /* 1998.09 Dynamite Cop */ - DRIVER( bel ) /* 1998.12 Behind Enemy Lines */ - - /* Sega Model 3 Games */ - - /* Step 1.0 */ - DRIVER( vf3 ) /* 1996.09 Virtua Fighter 3 */ - DRIVER( vf3a ) - DRIVER( vf3tb ) /* 1997.10 Virtua Fighter 3tb */ - DRIVER( bass ) /* 1997.12 Get Bass */ - DRIVER( getbass ) - /* 1998.03 Get Bass Brast */ - - /* Step 1.5 */ - DRIVER( scud ) /* 1996.12 Scud Race */ - DRIVER( scudj ) - DRIVER( scuda ) - DRIVER( vs215 ) /* 1997.06 Virtua Striker 2 */ - DRIVER( lostwsga ) /* 1997.07 Lost World Jurassic Park */ - DRIVER( scudp ) /* 1997.09 Scud Race Plus */ - DRIVER( lemans24 ) /* 1997.09 Le Mans 24 */ - DRIVER( vs29815 ) /* 1998.05 Virtua Striker 2 ver.98 */ - - /* Step 2.0 */ - DRIVER( vs2 ) /* 1997.06 Virtua Striker 2 */ - DRIVER( harley ) /* 1997.12 Harley Davidson & L.A.Riders */ - DRIVER( skichamp ) /* 1998.01 Ski Champ */ - DRIVER( srally2 ) /* 1998.02 Sega Rally 2 Championship */ - DRIVER( srally2x ) - DRIVER( von2 ) /* 1998.03 Dennou Senki Virtual-On Oratorio Tangram */ - DRIVER( fvipers2 ) /* 1998.04 Fighting Vipers 2 */ - DRIVER( vs298 ) /* 1998.05 Virtua Striker 2 ver.98*/ - DRIVER( vs299 ) /* 1998.12 Virtual Striker 2 ver.99 */ - DRIVER( vs299b ) /* 1999.?? Virtual Striker 2 ver.99 (rev B) */ - DRIVER( vs299a ) /* 1999.?? Virtual Striker 2 ver.99 (rev A) */ - DRIVER( vs2v991 ) /* 1999.?? Virtual Striker 2 ver.99.1 */ - DRIVER( von254g ) /* 1999.05 Dennou Senki Virtual-On Oratorio Tangram ver.5.4 */ - - /* Step 2.1 */ - DRIVER( daytona2 ) /* 1998.06 Daytona USA 2 */ - DRIVER( oceanhun ) /* 1998.09 Ocean Hunter */ - DRIVER( spikeout ) /* 1998.09 Spikeout */ - DRIVER( dirtdvls ) /* 1998.10 Dirt Devils */ - DRIVER( dirtdvlsa ) - DRIVER( swtrilgy ) /* 1998.11 Star Wars Trilogy Arcade */ - DRIVER( swtrilgya ) - /* 1998.11 Magical Torokko Adventure (Japan) */ - DRIVER( lamachin ) /* 1998.12 L.A. Machine Guns */ - DRIVER( dayto2pe ) /* 1998.12 Daytone USA 2 Power Edition */ - /* 1998.12 Virtua Striker 2 ver.99 */ - DRIVER( spikeofe ) /* 1999.01 Spikeout Final Edition */ - DRIVER( magtruck ) /* 1999.03 Magical Truck Adventure (US) */ - DRIVER( eca ) /* 1999.10 Kyukyuusya Emergency Call Ambulance */ - DRIVER( ecax ) - - - /* Deniam games */ - /* they run on Sega System 16 video hardware */ - DRIVER( logicpro ) /* (c) 1996 Deniam */ - DRIVER( croquis ) /* (c) 1996 Deniam (Germany) */ - DRIVER( karianx ) /* (c) 1996 Deniam */ - DRIVER( logicpr2 ) /* (c) 1997 Deniam (Japan) */ - - -/* -Deniam is a Korean company (http://deniam.co.kr). - -Game list: -Title System Date ----------------- ---------- ---------- -GO!GO! deniam-16b 1995/10/11 -Logic Pro deniam-16b 1996/10/20 -Karian Cross deniam-16b 1997/04/17 -LOTTERY GAME deniam-16c 1997/05/21 -Logic Pro 2 deniam-16c 1997/06/20 -Propose deniam-16c 1997/06/21 -BOMULEUL CHAJARA SEGA ST-V 1997/04/11 -*/ - - /* System C games */ - DRIVER( bloxeedc ) /* (c) 1989 Sega / Elorg */ - DRIVER( bloxeedu ) /* (c) 1989 Sega / Elorg */ - DRIVER( columns ) /* (c) 1990 Sega */ - DRIVER( columnsu ) /* (c) 1990 Sega */ - DRIVER( columnsj ) /* (c) 1990 Sega */ - DRIVER( columns2 ) /* (c) 1990 Sega */ - DRIVER( column2j ) /* (c) 1990 Sega */ - - /* System C-2 games */ - DRIVER( borench ) /* (c) 1990 Sega */ - DRIVER( tfrceac ) /* (c) 1990 Sega / Technosoft */ - DRIVER( tfrceacj ) /* (c) 1990 Sega / Technosoft */ - DRIVER( tfrceacb ) /* bootleg */ - DRIVER( twinsqua ) /* (c) 1991 Sega */ - DRIVER( ribbit ) /* (c) 1991 Sega */ - DRIVER( tantr ) /* (c) 1992 Sega */ - DRIVER( tantrkor ) /* (c) 1992 Sega */ - DRIVER( tantrbl ) /* bootleg */ - DRIVER( tantrbl2 ) /* bootleg */ - DRIVER( tantrbl3 ) /* bootleg */ - DRIVER( puyo ) /* (c) 1992 Sega / Compile */ - DRIVER( puyobl ) /* bootleg */ - DRIVER( puyoj ) /* (c) 1992 Sega / Compile */ - DRIVER( puyoja ) /* (c) 1992 Sega / Compile */ - DRIVER( ichir ) /* (c) 1994 Sega */ - DRIVER( ichirk ) /* (c) 1994 Sega */ - DRIVER( ichirj ) /* (c) 1994 Sega */ - DRIVER( ichirjbl ) /* bootleg */ - DRIVER( stkclmns ) /* (c) 1994 Sega */ - DRIVER( stkclmnsj ) /* (c) 1994 Sega */ - DRIVER( puyopuy2 ) /* (c) 1994 Compile + Sega license */ - DRIVER( potopoto ) /* (c) 1994 Sega */ - DRIVER( zunkyou ) /* (c) 1994 Sega */ - - /* Atlus Print Club 'Games' C-2 board */ - DRIVER( pclubj ) - DRIVER( pclubjv2 ) - DRIVER( pclubjv4 ) - DRIVER( pclubjv5 ) - - /* Genie Hardware (uses Genesis VDP) also has 'Sun Mixing Co' put into tile ram */ - DRIVER( puckpkmn ) /* (c) 2000 Genie */ - DRIVER( puckpkmna ) /* (c) 2000 IBS */ - DRIVER( topshoot ) /* (c) 1995 Sun Mixing */ - - /* Sega MegaTech, the number shown is on the label of the instruction rom */ - DRIVER( megatech ) - DRIVER( mt_beast ) /* 01 */ - DRIVER( mt_shar2 ) /* 02 */ - DRIVER( mt_stbld ) /* 03 */ - DRIVER( mt_ggolf ) /* 04 */ - DRIVER( mt_gsocr ) /* 05 */ - DRIVER( mt_orun ) /* 06 */ - DRIVER( mt_asyn ) /* 07 */ - DRIVER( mt_shnbi ) /* 08 */ - DRIVER( mt_fz ) /* 09 */ - DRIVER( mt_aftrb ) /* 10 */ - DRIVER( mt_tfor2 ) /* 11 */ - /* 12 */ - DRIVER( mt_astro ) /* 13 */ - /* 14 */ - /* 15 */ - /* 16 */ - /* 17 */ - /* 18 */ - DRIVER( mt_gfoot ) /* 19 */ - DRIVER( mt_lastb ) /* 20 */ - DRIVER( mt_wcsoc ) /* 21 */ - DRIVER( mt_tetri ) /* 22 */ - DRIVER( mt_gng ) /* 23 */ - DRIVER( mt_shang ) /* 24 */ - DRIVER( mt_gaxe ) /* 25 */ - DRIVER( mt_fwrld ) /* 26 */ - DRIVER( mt_mystd ) /* 27 */ - DRIVER( mt_revsh ) /* 28 */ - DRIVER( mt_parlg ) /* 29 */ - /* 30 */ - DRIVER( mt_tgolf ) /* 31 */ - DRIVER( mt_srbb ) /* 32 */ - /* 33 */ - /* 34 */ - DRIVER( mt_tlbba ) /* 35 */ - DRIVER( mt_cols ) /* 36 */ - /* 37 */ - DRIVER( mt_eswat ) /* 38 */ - DRIVER( mt_smgp ) /* 39 */ - DRIVER( mt_mwalk ) /* 40 */ - DRIVER( mt_crack ) /* 41 */ - /* 42 */ - DRIVER( mt_shado ) /* 43 */ - DRIVER( mt_arrow ) /* 44 */ - /* 45 */ - /* 46 */ - DRIVER( mt_astrm ) /* 47 */ - DRIVER( mt_wwar ) /* 48 */ - DRIVER( mt_bbros ) /* 49 */ - /* 50 */ - DRIVER( mt_srage ) /* 51 */ - DRIVER( mt_sonic ) /* 52 */ - DRIVER( mt_sonia ) /* ^^ */ - DRIVER( mt_fshrk ) /* 53 */ - DRIVER( mt_spman ) /* 54 */ - DRIVER( mt_calga ) /* 55 */ - /* 56 */ - DRIVER( mt_gaxe2 ) /* 57 */ - DRIVER( mt_stf ) /* 58 */ - DRIVER( mt_mlh ) /* 59 */ - DRIVER( mt_kcham ) /* 60 */ - DRIVER( mt_tout ) /* 61 */ - DRIVER( mt_soni2 ) /* 62 */ - - /* Sega MegaPlay */ - DRIVER( megaplay ) - DRIVER( mp_sonic ) /* 01 */ - DRIVER( mp_gaxe2 ) /* 02 */ - DRIVER( mp_gslam ) /* 03 */ - DRIVER( mp_twc ) /* 04 */ - DRIVER( mp_sor2 ) /* 05 */ - DRIVER( mp_bio ) /* 06 */ - DRIVER( mp_soni2 ) /* 07 */ - /* 08 */ - DRIVER( mp_shnb3 ) /* 09 */ - /* 10 */ - DRIVER( mp_mazin ) /* 11 */ - DRIVER( mp_col3 ) /* ?? */ - - DRIVER( ssf2mdb ) /* MegaDrive-based hack */ - DRIVER( aladmdb ) /* MegaDrive-based hack */ - DRIVER( mk3mdb ) /* MegaDrive-based hack */ - DRIVER( srmdb ) /* MegaDrive-based hack */ - - /* Sega Naomi-based (Dreamcast) systems */ - DRIVER( naomi ) - DRIVER( naomigd ) - DRIVER( naomi2 ) - - DRIVER( hod2bios ) /* 1998.11 The House of the Dead 2 */ - DRIVER( hotd2 ) /* 1998.11 The House of the Dead 2 */ - DRIVER( hotd2o ) /* 1998.11 The House of the Dead 2 */ - DRIVER( dybbnao ) /* 1998.12 Dynamite Baseball NAOMI */ - DRIVER( smlg99 ) /* 1999.?? Super Major League '99 */ - DRIVER( pstone ) /* 1999.02 Power Stone */ - DRIVER( crzytaxi ) /* 1999.02 Crazy Taxi */ - DRIVER( zombrvn ) /* 1999.02 Zombie Revenge */ - DRIVER( airlbios ) /* 1999.03 Airline Pilots */ - DRIVER( alpiltdx ) - DRIVER( alpilota ) - DRIVER( ggram2 ) /* 1999.04 Giant Gram Zen Nippon Pro-wres 2 */ - /* 1999.05 Taisen Puzzle Kurutto Stone */ - DRIVER( ringout ) /* 1999.06 Ringout 4x4 */ - DRIVER( f355bios ) /* 1999.07 F355 Challenge */ - DRIVER( f355 ) - DRIVER( f355twin ) /* 1999.07 F355 Challenge Twin */ - DRIVER( shangril ) /* 1999.08 Dengen Tenshi Taisen Janshi Shangri-la */ - /* 1999.08 Unou Nouryoku Check Machine Touch de UNO! */ - DRIVER( vs2_2k ) /* 1999.08 Virtua Striker 2 version 2000 */ - DRIVER( suchie3 ) /* 1999.09 Idol Janshi Su-Chi-Pi 3 */ - DRIVER( toyfight ) /* 1999.09 Toy Fighter */ - DRIVER( jambo ) /* 1999.09 Jambo! Safari */ - /* 1999.09 Super Major League 99 */ - DRIVER( sgtetris ) /* 1999.10 Sega Tetris */ - DRIVER( derbyoc ) /* 1999.10 Derby Owners Club */ - DRIVER( doa2 ) /* 1999.11 Dead or Alive 2 */ - DRIVER( otrigger ) /* 1999.11 Out Trigger */ - DRIVER( dybb99 ) /* 1999.11 Dynamite Baseball '99 */ - /* 1999.12 Mars TV */ - DRIVER( samba ) /* 1999.12 Samba de Amigo */ - DRIVER( vtennis ) /* 1999.12 Virtua Tennis / Power Smash (ROM) */ - DRIVER( vtennisg ) /* 1999.12 Virtua Tennis / Power Smash (GD-ROM) */ - DRIVER( puyoda ) /* 1999.12 Puyopuyo DA! */ - - DRIVER( 18wheelr ) /* 2000.01 18 Wheeler */ - DRIVER( totd ) /* 2000.01 The Typing of the Dead */ - DRIVER( spawn ) /* 2000.01 Spawn */ - DRIVER( doa2m ) /* 2000.01 Dead or Alive 2 Millenium */ - /* 2000.02 Touch de UNO! 2 */ - DRIVER( virnba ) /* 2000.02 Virtua NBA */ - DRIVER( virnbao ) - DRIVER( mvsc2 ) /* 2000.03 Marvel vs. Capcom 2 */ - DRIVER( smarinef ) /* 2000.03 Sega Marine Fishing */ - DRIVER( wldkicks ) /* 2000.03 World Kicks */ - /* 2000.04 Shin Nippon Pro-wres Toukon Retsuden 4 */ - DRIVER( pstone2 ) /* 2000.04 Power Stone 2 */ - DRIVER( qmegamis ) /* 2000.05 Quiz Ah Megamisama */ - DRIVER( vonot ) /* 2000.06 Virtual-on Oratorio Tangram M.S.B.S. ver.5.66 2000 edition */ - DRIVER( derbyo2k ) /* 2000.06 Derby Owners Club 2000 */ - DRIVER( ggx ) /* 2000.07 Guilty Gear X */ - DRIVER( slasho ) /* 2000.07 Slashout */ - DRIVER( slashout ) - DRIVER( capsnka ) /* 2000.08 Capcom vs. SNK Millenium Fight 2000 */ - /* 2000.08 Tokyo Bus Annai */ - DRIVER( capsnk ) /* 2000.09 Capcom vs. SNK Millenium Fight 2000 */ - DRIVER( gram2000 ) /* 2000.09 Giant Gram 2000 Zen Nippon Pro-wres 3 */ - /* 2000.09 Nittere Shiki! Mirai Yosou Studio */ - DRIVER( crackndj ) /* 2000.10 Crackin' DJ */ - DRIVER( cspike ) /* 2000.10 Gun Spike */ - DRIVER( sstrkfgt ) /* 2000.10 Sega Strike Fighter */ - DRIVER( deathcox ) /* 2000.10 Death Crimson OX */ - /* 2000.11 Ninja Assault */ - DRIVER( confmiss ) /* 2000.11 Confidential Mission */ /* First GD-ROM game? */ - DRIVER( shaktamb ) /* 2000.11 Shakatto Tambourine */ - DRIVER( wwfroyal ) /* 2000.11 WWF Royal Rumble */ - DRIVER( pjustic ) /* 2000.12 Moero Justice Gakuen */ - DRIVER( samba2k ) /* 2000.12 Samba de Amigo ver.2000 */ - DRIVER( sprtjam ) /* 2000.12 Sports Jam */ - /* 2000.12 Derby Owners Club 2000 ver.2 */ - /* 2000.?? World Kicks New ver. */ - DRIVER( derbyocw ) /* 2001.?? Derby Owners Club World Edition (Rev. D) */ - DRIVER( drbyocwc ) /* 2001.?? Derby Owners Club World Edition (Rev. C) */ - DRIVER( f355twn2 ) /* 2001.01 F355 Challenge 2 */ - DRIVER( gwing2 ) /* 2001.01 Giga Wing 2 */ - DRIVER( csmash ) /* 2001.01 Cosmic Smash */ - DRIVER( csmasho ) - DRIVER( sfz3ugd ) /* 2001.02 Street Fighter ZERO3 Upper */ - DRIVER( gundmgd ) /* 2001.03 Kidou Senshi Gundam Renpou vs. Zeon */ - DRIVER( gundmct ) /* 2001.03 Mobile Suit Gundam: Federation vs. Zeon (cartridge) */ - /* 2001.04 Shakatto Tambourine Motto Norinori Shinkyoku Tsuika */ - DRIVER( dygolf ) /* 2001.04 Dynamic Golf */ - DRIVER( zerogu2 ) /* 2001.05 Zero Gunner 2 */ - DRIVER( monkeyba ) /* 2001.05 Monkey Ball */ - DRIVER( cvsgd ) /* 2001.06 Capcom vs. SNK Pro */ - /* 2001.06 Crackin' DJ Part2 */ - DRIVER( wsbbgd ) /* 2001.06 Super Major League */ - DRIVER( spkrbtl ) /* 2001.07 Spikers Battle */ - DRIVER( gunsur2 ) /* 2001.07 Gun Survivor 2: Bio Hazard Code Veronica */ - DRIVER( starseek ) /* 2001.07 Dokidoki Idol Star Seeker */ - DRIVER( cvs2gd ) /* 2001.08 Capcom vs. SNK 2 */ - DRIVER( wrungp ) /* 2001.08 Wave Runner GP */ - DRIVER( gundmxgd ) /* 2001.09 Kidou Senshi Gundam Renpou vs. Zeon DX */ - /* 2001.09 Alien Front */ - DRIVER( hmgeo ) /* 2001.09 Heavy Metal Geo Matrix */ - DRIVER( inunoos ) /* 2001.10 Inu no Osanpo */ - DRIVER( derbyoc2 ) /* 2001.10 Derby Owners Club 2 */ - DRIVER( vtennis2 ) /* 2001.10 Power Smash 2 / Virtua Tennis 2 */ - DRIVER( vtenis2c ) /* Power Smash 2 / Virtua Tennis 2 (cartridge) */ - /* 2001.11 Shakatto Tambourine Cho Powerup Chu */ - DRIVER( keyboard ) /* 2001.11 La Keyboardxyu */ - DRIVER( ikaruga ) /* 2001.12 Ikaruga */ - DRIVER( lupinsho ) /* 2001.12 Lupin the Third: the Shooting */ - DRIVER( vathlete ) /* 2002.03 Virtua Athlete */ - DRIVER( luptype ) /* 2002.04 Lupin the Third: the Typing */ - DRIVER( ggxx ) /* 2002.05 Guilty Gear XX */ - DRIVER( mok ) /* 2002.05 The Maze of the Kings */ - DRIVER( cleoftp ) /* 2002.05 Cleopatra Fortune + */ - DRIVER( chocomk ) /* 2002.06 Musapey no Choco Marker */ - /* 2002.07 Mazan */ - /* 2002.09 Yonin Uchi Mahjong MJ */ - DRIVER( azumanga ) /* 2002.12 Azumanga Daiou Puzzle Bobble */ - DRIVER( moeru ) /* 2002.12 Moeru Casinyo */ - DRIVER( quizqgd ) /* 2003.01 Quiz Keitai Q mode */ - /* 2003.03 Yonin Uchi Mahjong MJ Network Taisen ver. */ - DRIVER( ggxxrl ) /* 2003.03 Guilty Gear XX # Reload */ - DRIVER( shikgam2 ) /* 2003.04 Shikigami no Shiro 2 */ - DRIVER( bdrdown ) /* 2003.04 Border Down */ - DRIVER( usagui ) /* 2003.06 Usagi Yamashiro Mahjong Hen */ - /* 2003.07 Yonin Uchi Mahjong MJ Network Taisen ver. NEW */ - DRIVER( oinori ) /* 2003.08 Oinori-daimyoujin Matsuri */ - DRIVER( psyvar2 ) /* 2003.11 Psyvariar 2 */ - DRIVER( puyofev ) /* 2003.11 Puyopuyo Fever */ - DRIVER( shootopl ) /* Shootout Pool */ - DRIVER( shootpl ) /* 2003.xx Shootout Pool / Shootout Pool Prize */ - DRIVER( shootplm ) /* Shootout Pool Medal */ - DRIVER( kick4csh ) /* 2004.xx Kick '4' Cash */ - DRIVER( tetkiwam ) /* 2004.06 Tetris Kiwamemichi (Arcade TV Game List - P.88, Right, 11 from bottom) */ - DRIVER( cfield ) /* 2004.06 Chaos Field */ - DRIVER( trizeal ) /* 2004.09 Trizeal */ - /* 2005.03 Melty Blood Act Cadenza */ - DRIVER( ss2005 ) /* 2005.03 Super Shanghai 2005 */ - DRIVER( ss2005a ) /* 2005.04 Super Shanghai 2005 */ - DRIVER( senkoo ) /* 2005.04 Senkou no Rondo */ - DRIVER( senko ) /* 2005.08 Senkou no Rondo NEW ver. */ - DRIVER( meltybld ) /* 2005.08 Melty Blood Act Cadenza ver.A */ - DRIVER( ggxxsla ) /* 2005.09 Guilty Gear XX Slash */ - DRIVER( radirgy ) /* 2005.10 Radirgy */ - DRIVER( undefeat ) /* 2005.10 Under Defeat */ - /* 2005.12 Radirgy (Rev. A) */ - DRIVER( kurucham ) /* 2006.03 Kurukuru Chameleon */ - DRIVER( trgheart ) /* 2006.05 Trigger Heart Exelica */ - /* 2006.07 Touch de Zunou */ - DRIVER( senkosp ) /* 2006.08 Senkou no Rondo SP */ - DRIVER( jingystm ) /* 2006.09 Jingi Storm */ - DRIVER( karous ) /* 2006.11 Karous */ - DRIVER( ggxxac ) /* 2006.11 Guilty Gear XX Accent Core */ - DRIVER( meltyb ) /* 2006.12 Melty Blood Act Cadenza ver.B */ - DRIVER( meltyba ) /* 2006.12 Melty Blood Act Cadenza ver.B (Rev A) */ - DRIVER( takoron ) /* 2006.12.16 Noukone Puzzle Takoron */ - /* 2007.03 Melty Blood Act Cadenza ver.B Syuuseiban(ver.B2) */ - - DRIVER( ngdup23a ) /* DIMM Firmware Updater */ - DRIVER( ngdup23c ) - - /* Releases below use flash/mask ROMs like older NAOMI titles, not GD-ROM as GD-ROM Hardware (Drives and Discs) were no longer being produced */ - - /* 2007.07 Pokasuka Ghost! */ - /* 2007.07 Shooting Love */ - /* 2007.07 Dynamite Deka EX - Asian dynamite */ - /* 2007.09 Rhythm Tengoku */ - /* 2008.02 Akatsuki Denkou Senki Ausf.Achse */ - /* 2008.06 Illvelo (Illmatic Envelope) */ - /* 2008.07 Mamoru Kun wa Norowarete Shimatta! */ - /* 2008.09 Melty Blood Actress Again */ - /* 2008.12 Melty Blood Actress Again ver.A */ - /* 2009.06 Radirgy Noah */ - /* 2009.?? Project Cerberus (planned to be released in 2009) */ - - - - /* NAOMI based (System SP) */ - /* 2003.02 Kouchuu Ouja Mushiking */ - /* 2004.10 Oshare Majo Love & Berry */ - /* 2005.09 Kodai Ouja Kyouryuu King */ - /* 2007.06 Issyo ni Wanwan */ - /* 2007.06 Konchuu Dash!! */ - /* 2007.07 Marine Marine */ - /* 2007.11 Magical Dance on Dream Stage */ - /* 2008.02 Marine Marine ver.2 */ - /* 2008.04 Issyo ni Wanwan Waiwai Puppy */ - /* 2008.07 Issyo ni Turbo Drive */ - - /* NAOMI 2 */ - DRIVER( vstrik3c ) /* 2001.04 Virtua Striker 3 (rev. C) */ - DRIVER( vstrik3cb ) /* 2001.04 Virtua Striker 3 (rev. B) */ - DRIVER( vstrik3 ) - DRIVER( wldrider ) /* 2001.05 Wild Riders */ - /* 2001.06 Club Kart */ - DRIVER( beachspi ) /* 2001.07 Beach Spikers */ - DRIVER( vf4cart ) /* 2001.08.02 Virtua Fighter 4 (cartridge) */ - DRIVER( vf4 ) /* 2001.08.02 Virtua Fighter 4 (GD-ROM) */ - DRIVER( vf4b ) /* 2001.08.20 Virtua Fighter 4 ver.B */ - DRIVER( vf4c ) /* 2002.01.31 Virtua Fighter 4 ver.C */ - DRIVER( kingrt66 ) /* 2002.02 The King of Route 66 */ - DRIVER( initd ) /* 2002.03 Initial D Arcade Stage */ - DRIVER( initdexp ) /* 200?.?? Initial D Export Version */ - DRIVER( clubkrte ) /* 2002.?? Club Kart: European Session */ - /* 2002.06 WCCF SERIE A 2001-2002 */ - /* 2002.07 Soul Surfer */ - DRIVER( vf4evoct ) /* 2002.08 Virtua Fighter 4 Evolution (cartridge) */ - DRIVER( vf4evoa ) /* 2002.08 Virtua Fighter 4 Evolution */ - /* 2002.11 WCCF SERIE A 2001-2002 ver.1.2 */ - DRIVER( initdv2j ) /* 2002.12 Initial D Arcade Stage ver.2 rev. B*/ - DRIVER( initdv2jo ) /* 2002.12 Initial D Arcade Stage ver.2 */ - DRIVER( initdv2e ) /* 2002.12 Initial D Arcade Stage ver.2 */ - DRIVER( vf4evo ) /* 2002.12 Virtua Fighter 4 Evolution ver.B */ - /* 2003.03 WCCF SERIE A 2001-2002 ver.2.0 */ - /* 2003.09 WCCF 2002-2003 SERIE A */ - /* 2003.?? CYCRAFT Club Kart ver. */ - DRIVER( initdv3j ) /* 2004.01 Initial D Arcade Stage ver.3 rev. C */ - DRIVER( initdv3jb ) /* 2004.01 Initial D Arcade Stage ver.3 rev. B */ - /* 2004.?? Initial D Arcade Stage ver.3 for CYCRAFT */ - /* 2004.06 WCCF 2002-2003 SERIE A ver.2.0 */ - /* 2004.07 Virtua Fighter 4 Final Tuned */ - DRIVER( vf4tuneda ) /* 2004.09 Virtua Fighter 4 Final Tuned ver.A */ - /* 2004.12 WCCF 2002-2003 ver.2.1 */ - /* 2005.01 Virtua Fighter 4 final Tuned ver.B */ - /* 2005.04 Menkyo no Tetsujin */ - /* 2005.06 WCCF European Clubs 2004-2005 */ - /* 2006.01 WCCF European Clubs 2004-2005 ver.1.1 */ - /* 2006.03 WCCF European Clubs 2004-2005 ver.1.2 */ - /* 2006.08 WCCF European Clubs 2005-2006 */ - /* 2006.10 WCCF European Clubs 2005-2006 bugfix ver. */ - DRIVER( vf4tunedd ) - DRIVER( vf4tuned ) /* 200?.?? Virtual fighter 4 Final Tuned ver.F */ - - - /* Atomiswave (Dreamcast-based) games */ - DRIVER( awbios ) - DRIVER( maxspeed ) /* 2002.12 Maximum Speed */ - DRIVER( sprtshot ) /* 2002.12 Sports Shooting USA */ - DRIVER( ggx15 ) /* 2003.03 Guilty Gear X ver.1.5 */ - DRIVER( demofist ) /* 2003.06 Demolish Fist */ - DRIVER( dolphin ) /* 2003.08 Dolphin Blue */ - DRIVER( ggisuka ) /* 2003.12 Guilty Gear Isuka */ - /* 2003.12 Sangoku Senki Shichisei Tensei (IGS) */ - DRIVER( rumblef ) /* 2004.03 The Rumble Fish */ - DRIVER( rangrmsn ) /* 2004.03 Ranger Mission */ - DRIVER( salmankt ) /* 2004.06 Salary Man Kintarou Net Select */ - DRIVER( kofnw ) /* 2004.07 The King of Fighters Neo Wave */ - DRIVER( kofnwj ) /* 2004.07 The King of Fighters Neo Wave (Japan) */ - DRIVER( xtrmhunt ) /* 2004.09 Extreme Hunting */ - DRIVER( dirtypig ) /* 2004.09 Dirty Pig Skin Football */ - DRIVER( ftspeed ) /* 2004.09 Faster than Speed */ - DRIVER( kov7sprt ) /* 2004.?? Knights of Valour - The Seven Sprits */ - DRIVER( vfurlong ) /* 2005.03 Net Select Keiba Victory Furlong */ - DRIVER( rumblef2 ) /* 2005.03 The Rumble Fish 2 */ - DRIVER( ngbc ) /* 2005.07 NeoGeo Battle Colloseum */ - DRIVER( samsptk ) /* 2005.09 Samurai Spirits Tenkaichi Kenkakuden */ - DRIVER( kofxi ) /* 2005.10 The King of Fighters XI */ - DRIVER( fotns ) /* 2005.12 Hokuto no Ken */ - DRIVER( mslug6 ) /* 2006.02 Metal Slug 6 */ - DRIVER( xtrmhnt2 ) /* 2006.09 Extreme Hunting 2 Tournament Edition */ - /* 2008.?? Sega Clay Challenge */ - - /* Hikaru */ - DRIVER( hikaru ) /* BIOS (c)2000 */ - DRIVER( braveff ) /* 1999.06 Syouboushi Brave Fire Fighters */ - DRIVER( podrace ) /* 2000.06 Star Wars: Racer Arcade */ - DRIVER( sgnascar ) /* 2000.09 Nascar Arcade */ - DRIVER( pharrier ) /* 2000.12 Planet Harriers */ - DRIVER( airtrix ) /* 2001.02 Air Trix */ - /* 2001.10 Dennou Senki Virtual-On Force */ - /* 2002.04 Dennou Senki Virtual-On Force ver.7.7 */ - - /* Triforce (GameCube based) */ - DRIVER( triforce ) - DRIVER( vs2002j ) /* 2002.10 Virtua Striker 2002 */ - DRIVER( vs2002ex ) - /* 2003.06 F-ZERO AX */ - DRIVER( avalons ) /* 2003.07 Avalon no Kagi */ - /* 2003.08 Avalon no Kagi ver.1.00 */ - /* 2003.10 Avalon no Kagi ver.1.01 */ - DRIVER( gekpurya ) /* 2003.10 Gekitou Pro Yakyuu Mizushima Shinji All Stars vs. Pro Yakyuu */ - /* 2003.12 Avalon no Kagi ver.1.10 */ - /* 2003.?? CYCRAFT F-ZERO AX Monster Ride */ - /* 2004.04 Avalon no Kagi ver.1.20 Aratanaru Syoukan */ - DRIVER( avalon13 ) /* 2004.07 Avalon no Kagi ver.1.30 Konton no Utage */ - DRIVER( vs4 ) /* 2004.10 Virtua Striker 4 */ - DRIVER( vs4j ) /* 2004.10 Virtua Striker 4 */ - DRIVER( avalon20 ) /* 2004.11 Avalon no Kagi ver.2.0 Chitsujo to Kairitsu */ - /* 2005.04 Virtua Striker 4 ver.A */ - /* 2005.08 Avalon no Kagi ver.2.5 Kagi Seisen */ - /* 2005.12 Mario Kart Arcade Grand Prix */ - DRIVER( vs42006 ) /* 2006.05 Virtua Striker 4 ver.2006 */ - /* 2007.03 Mario Kart Arcade Grand Prix 2 */ - - DRIVER( tfupdate ) /* Triforce GDROM Boot Update (GDT-0011) */ - - /* Chihiro (X-Box based) */ - DRIVER( chihiro ) - DRIVER( hotd3 ) /* 2002.12 The House of the Dead III */ - DRIVER( crtaxihr ) /* 2003.03 Crazy Taxi High Roller */ - DRIVER( vcop3 ) /* 2003.04 Virtua Cop 3 */ - DRIVER( outr2 ) /* 2003.12 Outrun 2 */ - /* 2004.03 Sega Network Taisen Mahjong MJ 2 */ - DRIVER( ollie ) /* 2004.03 Ollie King */ - /* 2004.04 Sega Network Taisen Mahjong MJ 2 ver.B */ - DRIVER( wangmid ) /* 2004.07 Wangan Midnight Maximum Tune */ - DRIVER( mj2 ) /* 2004.07 Sega Network Taisen Mahjong MJ 2 ver.C */ - /* 2004.09 Quest of D */ - /* 2004.11 Sega Golf Club Network Pro Tour */ - /* 2004.12 Sega Network Taisen Mahjong MJ 2 ver.D */ - /* 2004.12 Quest of D ver.1.02 */ - DRIVER( outr2st ) /* 2004.12 Outrun 2 Special Tours */ - /* 2004.12 Quest of D ver.1.10 */ - DRIVER( ghostsqu ) /* 2004.12 Ghost Squad */ - /* 2004.12 Quest of D ver.1.10a */ - /* 2005.03 Sangokushi Taisen */ - DRIVER( gundamos ) /* 2005.03 Kidou Senshi Gundam Battle Operating Simulator */ - /* 2005.04 Quest of D ver.1.20 */ - /* 2005.04 Sega Network Taisen Mahjong MJ 2 ver.E */ - DRIVER( wangmid2 ) /* 2005.04 Wangan Midnight Maximum Tune 2 */ - /* 2005.06 Sangokushi Taisen ver.1.003 */ - /* 2005.06 Sega Golf Club Network Pro Tour 2005 */ - /* 2005.06 Quest of D ver.1.20a */ - /* 2005.09 Quest of D ver.1.21 */ - /* 2005.10 Sangokushi Taisen Ranse no Gunrou ver.1.100 */ - DRIVER( wangmd2b ) /* 2005.10 Wangan Midnight Maximum Tune 2 ver.B */ - /* 2005.11 Sangokushi Taisen Ranse no Gunrou ver.1.110 */ - /* 2005.12 Quest of D Gofu no Keisyousya ver.2.00 */ - /* 2005.12 Kidou Senshi Gundam 0079 Card Builder */ - DRIVER( mj3 ) /* 2005.12 Sega Network Taisen Mahjong MJ 3 */ - /* 2005.12 Quest of D Gofu no Keisyousya ver.2.01 */ - DRIVER( scg06nt ) /* 2005.12 Sega Golf Club 2006 Next Tours */ - /* 2006.02 Sangokushi Taisen Ranse no Gunrou ver.1.12 */ - /* 2006.03 Kidou Senshi Gundam 0079 Card Builder ver.1.007 */ - /* 2006.03 Quest of D Gofu no Keisyousya ver.2.02b */ - /* 2006.04 Sega Network Taisen Mahjong MJ 3 ver.A+ */ - /* 2006.05 Sangokushi Taisen 2 */ - /* 2006.07 Kidou Senshi Gundam 0079 Card Builder ver.2.00 */ - /* 2006.09 Sangokushi Taisen 2 ver.2.01 */ - /* 2006.09 Sega Network Taisen Mahjong MJ 3 ver.B */ - /* 2006.09 Kidou Senshi Gundam 0079 Card Builder ver.2.01 */ - /* 2006.10 Quest of D ver.3.00 Oukoku no Syugosya */ - /* 2006.11 Quest of D ver.3.01 Oukoku no Syugosya */ - /* 2006.11 Kidou Senshi Gundam 0079 Card Builder ver.2.02 */ - /* 2007.03 Kidou Senshi Gundam 0083 Card Builder */ - /* 2007.03 Sega Network Taisen Mahjong MJ 3 Evolution */ - /* 2007.10 Kidou Senshi Gundam 0083 Card Builder Ryouyuu Gekitotsu */ - /* 2007.11 Quest of D The Battle Kingdom ver.4.00 */ - /* 2008.01 Quest of D The Battle Kingdom ver.4.00b */ - /* 2008.02 Quest of D The Battle Kingdom ver.4.00c */ - /* 2008.06 Quest of D The Battle Kingdom ver.4.01 */ - - DRIVER( hshavoc ) /* (c) 1993 Data East */ - - /* Data East "Burger Time hardware" games */ - DRIVER( lnc ) /* (c) 1981 */ - DRIVER( zoar ) /* (c) 1982 */ - DRIVER( btime ) /* (c) 1982 */ - DRIVER( btime2 ) /* (c) 1982 */ - DRIVER( btimem ) /* (c) 1982 + Midway */ - DRIVER( tisland ) /* (c) 1982 */ - DRIVER( protennb ) /* bootleg */ - DRIVER( cookrace ) /* bootleg */ - DRIVER( wtennis ) /* bootleg 1982 */ - DRIVER( brubber ) /* (c) 1982 */ - DRIVER( bnj ) /* (c) 1982 + Midway */ - DRIVER( caractn ) /* bootleg */ - DRIVER( disco ) /* (c) 1982 */ - DRIVER( discof ) /* (c) 1982 */ - DRIVER( sdtennis ) /* (c) 1983 */ - DRIVER( mmonkey ) /* (c) 1982 Technos Japan + Roller Tron */ - - /* cassette system, parent is decocass */ - DRIVER( decocass ) - DRIVER( ctsttape ) /* ? */ - DRIVER( chwy ) /* 01 1980.12 Highway Chase */ - /* 02 1980.12 Sengoku Ninjatai */ - /* 03 1981.01 Manhattan */ - DRIVER( cterrani ) /* 04 1981.02 Terranian */ - /* 05 1981.?? Missile Sprinter */ - /* 06 1980.12 Nebbler */ - DRIVER( castfant ) /* 07 1981.02 Astro Fantasia */ - /* 08 1981.03 The Tower */ - DRIVER( csuperas ) /* 09 1981.05 Super Astro Fighter */ - /* 10 1981.?? Ocean to Ocean (medal) */ - DRIVER( clocknch ) /* 11 1981.04 Rock'n Chase */ - /* 12 1981.08 Flash Boy/DECO Kid */ - DRIVER( cprogolf ) /* 13 1981.08 Pro Golf */ - /* 14 1981.06 DS Telejan */ - DRIVER( cluckypo ) /* 15 1981.?? Lucky Poker */ - DRIVER( ctisland ) /* 16 1982.02 Treasure Island */ - DRIVER( ctisland2 ) /* 16 */ - DRIVER( ctisland3 ) /* 16 */ - /* 17 1981.10 Bobbit */ - DRIVER( cexplore ) /* 18 1982.02 Explorer */ - DRIVER( cdiscon1 ) /* 19 1982.04 Disco No.1 */ - DRIVER( csweetht ) /* 19 */ - DRIVER( ctornado ) /* 20 1982.05 Tornado */ - DRIVER( cmissnx ) /* 21 1982.04 Mission X/Zoar */ - DRIVER( cptennis ) /* 22 1982.06 Pro Tennis */ - /* 23 1982.?? 18 Hole Pro Golf */ - /* 24 1982.07 Tsumego Kaisyou */ - /* 25 1982.10 Fishing */ - DRIVER( cbtime ) /* 26 1982.08 Hamburger/Burger Time */ - DRIVER( cburnrub ) /* 27 1982.11 Burnin' Rubber/Bump'n Jump */ - DRIVER( cburnrub2 ) /* 27 */ - DRIVER( cbnj ) /* 27 */ - DRIVER( cgraplop ) /* 28 1982.11 Grapelop */ - DRIVER( cgraplop2 ) /* 28 */ - DRIVER( clapapa ) /* 29 1982.11 Lapapa/Rootin' Tootin' */ - DRIVER( clapapa2 ) /* 29 */ /* this one doesn't display lapapa anywhere */ - /* 30 1983.03 Skater */ - DRIVER( cprobowl ) /* 31 1983.03 Pro Bowling */ - DRIVER( cnightst ) /* 32 1983.04 Night Star */ - DRIVER( cnightst2 ) /* 32 */ - DRIVER( cprosocc ) /* 33 1982.08 Pro Soccer */ - /* 34 1983.09 Super Doubles Tennis */ - DRIVER( cflyball ) /* 35 1983.?? Bampoline/Flying Ball */ - /* 36 1984.04 Genesis/Boomer Rang'r */ - DRIVER( czeroize ) /* 37 1983.10 Zeroize */ /* doesn't work at all */ - DRIVER( cscrtry ) /* 38 1984.03 Scrum Try */ - DRIVER( cscrtry2 ) /* 38 */ - DRIVER( cppicf ) /* 39 1984.02 Peter Pepper's Ice Cream Factory */ - DRIVER( cppicf2 ) /* 39 */ - DRIVER( cfghtice ) /* 40 1984.04 Fighting Ice Hockey */ - /* 41 1984.05 Oozumou/The Grand Sumo */ - /* 42 1984.08 Hellow Gateball */ /* not a typo, this is official spelling */ - /* 43 1984.08 Yellow Cab */ - DRIVER( cbdash ) /* 44 1985.08 Boulder Dash */ - /* UX7 1984.12 Tokyo Mie Shinryoujo */ - /* UX8 1985.01 Tokyo Mie Shinryoujo Part 2 */ - /* UX9 1985.05 Geinoujin Shikaku Shiken */ - - /* Data East LD games */ - DRIVER( begas ) /* (c) 1983 */ - DRIVER( begas1 ) /* (c) 1983 */ - DRIVER( cobra ) /* (c) 1984 */ - DRIVER( rblaster ) /* (c) 1985 */ - - /* other Data East games */ - DRIVER( madalien ) /* (c) 1980 */ - DRIVER( madaliena ) /* (c) 1980 */ - DRIVER( astrof ) /* (c) [1980?] */ - DRIVER( astrof2 ) /* (c) [1980?] */ - DRIVER( astrof3 ) /* (c) [1980?] */ - DRIVER( abattle ) /* Sidam */ - DRIVER( abattle2 ) /* Sidam */ - DRIVER( afire ) /* Rene Pierre */ - DRIVER( acombat ) /* bootleg */ - DRIVER( acombato ) /* bootleg */ - DRIVER( sstarbtl ) /* bootleg */ - DRIVER( spfghmk2 ) /* (c) [1979] Data East Corporation */ - DRIVER( spfghmk22 ) /* (c) [1979] Data East Corporation */ - DRIVER( tomahawk ) /* (c) 1980 Data East, Inc. */ - DRIVER( tomahawk1 ) /* (c) 1980 Data East, Inc. */ - DRIVER( progolf ) /* (c) 1981 */ - DRIVER( progolfa ) /* (c) 1981 */ - DRIVER( deshoros ) /* (c) 1983 */ - DRIVER( prosoccr ) /* (c) 1983 */ - DRIVER( prosport ) /* (c) 1983 */ - DRIVER( prosporta ) /* (c) 1983 */ - DRIVER( boomrang ) /* (c) 1983 */ - DRIVER( boomranga ) /* (c) 1983 */ - DRIVER( kamikcab ) /* (c) 1984 */ - DRIVER( yellowcbj ) /* (c) 1984 */ - DRIVER( yellowcbb ) /* bootleg */ - DRIVER( liberate ) /* (c) 1984 Data East Corporation */ - DRIVER( dualaslt ) /* (c) 1984 Data East USA (US) */ - DRIVER( liberateb ) /* bootleg */ - DRIVER( bwings ) /* (c) 1984 */ - DRIVER( bwingso ) /* (c) 1984 */ - DRIVER( bwingsa ) /* (c) 1984 */ - DRIVER( zaviga ) /* (c) */ - DRIVER( zavigaj ) /* (c) */ - DRIVER( kchamp ) /* (c) 1984 Data East USA (US) */ - DRIVER( karatedo ) /* (c) 1984 Data East Corporation (Japan) */ - DRIVER( kchampvs ) /* (c) 1984 Data East USA (US) */ - DRIVER( kchampvs2 ) /* (c) 1984 Data East USA (US) */ - DRIVER( karatevs ) /* (c) 1984 Data East Corporation (Japan) */ - DRIVER( compgolf ) /* (c) 1985 Data East Corporation (Japan) */ - DRIVER( compgolfo ) /* (c) 1985 Data East Corporation (Japan) */ - DRIVER( cntsteer ) /* (c) 1985 Data East Corporation */ - DRIVER( zerotrgt ) /* (c) 1985 Data East Corporation */ - DRIVER( zerotrgta ) /* (c) 1985 Data East Corporation */ - DRIVER( gekitsui ) /* (c) 1985 Data East Corporation (Japan) */ - DRIVER( tryout ) /* (c) 1985 Data East Corporation (Japan) */ - DRIVER( firetrap ) /* (c) 1986 Data East USA (US) */ - DRIVER( firetrapj ) /* (c) 1986 Wood Place Inc. (Japan) */ - DRIVER( firetrapbl ) /* bootleg */ - DRIVER( metlclsh ) /* (c) 1985 Data East */ - DRIVER( chanbara ) /* (c) 1985 Data East */ - DRIVER( brkthru ) /* (c) 1986 Data East USA (US) */ - DRIVER( brkthruj ) /* (c) 1986 Data East Corporation (Japan) */ - DRIVER( forcebrk ) /* (c) 1986 Data East Corporation (Japan) */ - DRIVER( darwin ) /* (c) 1986 Data East Corporation (Japan) */ - DRIVER( shootout ) /* (c) 1985 Data East USA (US) */ - DRIVER( shootoutj ) /* (c) 1985 Data East USA (Japan) */ - DRIVER( shootoutb ) /* bootleg */ - DRIVER( sidepckt ) /* (c) 1986 Data East Corporation */ - DRIVER( sidepcktj ) /* (c) 1986 Data East Corporation */ - DRIVER( sidepcktb ) /* bootleg */ - DRIVER( exprraid ) /* (c) 1986 Data East USA (US) */ - DRIVER( exprraida ) /* (c) 1986 Data East USA (US) */ - DRIVER( wexpress ) /* (c) 1986 Data East Corporation (World?) */ - DRIVER( wexpressb ) /* bootleg */ - DRIVER( wexpressb2 ) /* bootleg */ - DRIVER( pcktgal ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( pcktgalb ) /* bootleg */ - DRIVER( pcktgal2 ) /* (c) 1989 Data East Corporation (World?) */ - DRIVER( pcktgal2j ) /* (c) 1989 Data East Corporation (World?) */ - DRIVER( pokechmp ) /* Korean hack of Pocket Gal */ - DRIVER( spool3 ) /* (c) 1989 Data East Corporation (World?) */ - DRIVER( spool3i ) /* (c) 1990 Data East Corporation + I-Vics license */ - DRIVER( battlera ) /* (c) 1988 Data East Corporation (World) */ - DRIVER( bldwolf ) /* (c) 1988 Data East USA (US) */ - DRIVER( bldwolfj ) /* (c) 1988 Data East Corporation (Japan) */ - DRIVER( actfancr ) /* (c) 1989 Data East Corporation (World) */ - DRIVER( actfancr1 ) /* (c) 1989 Data East Corporation (World) */ - DRIVER( actfancrj ) /* (c) 1989 Data East Corporation (Japan) */ - DRIVER( triothep ) /* (c) 1989 Data East Corporation (World) */ - DRIVER( triothepj ) /* (c) 1989 Data East Corporation (Japan) */ - - /* Data East 8-bit games */ - DRIVER( lastmisn ) /* (c) 1986 Data East USA (US) */ - DRIVER( lastmisno ) /* (c) 1986 Data East USA (US) */ - DRIVER( lastmisnj ) /* (c) 1986 Data East Corporation (Japan) */ - DRIVER( shackled ) /* (c) 1986 Data East USA (US) */ - DRIVER( breywood ) /* (c) 1986 Data East Corporation (Japan) */ - DRIVER( csilver ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( csilverj ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( ghostb ) /* (c) 1987 Data East USA (US) */ - DRIVER( ghostb3 ) /* (c) 1987 Data East USA (US) */ - DRIVER( meikyuh ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( meikyuha ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( srdarwin ) /* (c) 1987 Data East Corporation (World) */ - DRIVER( srdarwinj ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( gondo ) /* (c) 1987 Data East USA (US) */ - DRIVER( makyosen ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( garyoret ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( cobracom ) /* (c) 1988 Data East Corporation (World) */ - DRIVER( cobracomj ) /* (c) 1988 Data East Corporation (Japan) */ - DRIVER( oscar ) /* (c) 1988 Data East Corporation (World) */ - DRIVER( oscaru ) /* (c) 1987 Data East USA (US) */ - DRIVER( oscarj1 ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( oscarj2 ) /* (c) 1987 Data East Corporation (Japan) */ - - /* Data East 16-bit games */ - DRIVER( karnov ) /* (c) 1987 Data East USA (US) */ - DRIVER( karnovj ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( wndrplnt ) /* (c) 1987 Data East Corporation (Japan) */ - DRIVER( chelnov ) /* (c) 1988 Data East USA (World) */ - DRIVER( chelnovu ) /* (c) 1988 Data East USA (US) */ - DRIVER( chelnovj ) /* (c) 1988 Data East Corporation (Japan) */ - /* the following ones all run on similar hardware */ - DRIVER( hbarrel ) /* (c) 1987 Data East USA (US) */ - DRIVER( hbarrelw ) /* (c) 1987 Data East Corporation (World) */ - DRIVER( baddudes ) /* EI (c) 1988 Data East USA (US) */ - DRIVER( drgninja ) /* EG (c) 1988 Data East Corporation (Japan) */ - DRIVER( birdtry ) /* (c) 1988 Data East Corporation (Japan) */ - DRIVER( robocop ) /* EP? (c) 1988 Data East Corporation (World) */ - DRIVER( robocopw ) /* EP? (c) 1988 Data East Corporation (World) */ - DRIVER( robocopj ) /* EM (c) 1988 Data East Corporation (Japan) */ - DRIVER( robocopu ) /* (c) 1988 Data East USA (US) */ - DRIVER( robocopu0 ) /* (c) 1988 Data East USA (US) */ - DRIVER( robocopb ) /* bootleg */ - DRIVER( automat ) /* bootleg */ - DRIVER( hippodrm ) /* EW (c) 1989 Data East USA (US) */ - DRIVER( ffantasy ) /* EV (c) 1989 Data East Corporation (Japan) */ - DRIVER( ffantasya ) /* EV (c) 1989 Data East Corporation (Japan) */ - DRIVER( ffantasybl )/* bootleg */ - DRIVER( slyspy ) /* (c) 1989 Data East USA (US) */ - DRIVER( slyspy2 ) /* (c) 1989 Data East USA (US) */ - DRIVER( secretag ) /* (c) 1989 Data East Corporation (World) */ - DRIVER( secretab ) /* bootleg */ - DRIVER( midres ) /* (c) 1989 Data East Corporation (World) */ - DRIVER( midresu ) /* (c) 1989 Data East USA (US) */ - DRIVER( midresj ) /* (c) 1989 Data East Corporation (Japan) */ - DRIVER( midresb ) /* (c) 1989 Data East Corporation (Japan) */ - DRIVER( bouldash ) /* (c) 1990 Data East Corporation (World) */ - DRIVER( bouldashj ) /* (c) 1990 Data East Corporation (Japan) */ - /* end of similar hardware */ - DRIVER( stadhero ) /* (c) 1988 Data East Corporation (Japan) */ - DRIVER( madmotor ) /* (c) [1989] Mitchell */ - /* All these games have a unique code stamped on the mask roms */ - DRIVER( vaportra ) /* MAA (c) 1989 Data East Corporation (World) */ - DRIVER( vaportra3 ) /* MAA (c) 1989 Data East Corporation (World) */ - DRIVER( vaportrau ) /* MAA (c) 1989 Data East Corporation (US) */ - DRIVER( kuhga ) /* MAA (c) 1989 Data East Corporation (Japan) */ - DRIVER( cbuster ) /* MAB (c) 1990 Data East Corporation (World) */ - DRIVER( cbusterw ) /* MAB (c) 1990 Data East Corporation (World) */ - DRIVER( cbusterj ) /* MAB (c) 1990 Data East Corporation (Japan) */ - DRIVER( twocrude ) /* MAB (c) 1990 Data East USA (US) */ - DRIVER( darkseal ) /* MAC (c) 1990 Data East Corporation (World) */ - DRIVER( darkseal1 ) /* MAC (c) 1990 Data East Corporation (World) */ - DRIVER( darksealj ) /* MAC (c) 1990 Data East Corporation (Japan) */ - DRIVER( gatedoom ) /* MAC (c) 1990 Data East Corporation (US) */ - DRIVER( gatedoom1 ) /* MAC (c) 1990 Data East Corporation (US) */ - DRIVER( edrandy ) /* MAD (c) 1990 Data East Corporation (World) */ - DRIVER( edrandy2 ) /* MAD (c) 1990 Data East Corporation (World) */ - DRIVER( edrandy1 ) /* MAD (c) 1990 Data East Corporation (World) */ - DRIVER( edrandyj ) /* MAD (c) 1990 Data East Corporation (Japan) */ - DRIVER( supbtime ) /* MAE (c) 1990 Data East Corporation (World) */ - DRIVER( supbtimea ) /* MAE (c) 1990 Data East Corporation (World) */ - DRIVER( supbtimej ) /* MAE (c) 1990 Data East Corporation (Japan) */ - DRIVER( mutantf ) /* MAF (c) 1992 Data East Corporation (World) */ - DRIVER( mutantf4 ) /* MAF (c) 1992 Data East Corporation (World) */ - DRIVER( mutantf3 ) /* MAF (c) 1992 Data East Corporation (World) */ - DRIVER( deathbrd ) /* MAF (c) 1992 Data East Corporation (Japan) */ - DRIVER( cninja ) /* MAG (c) 1991 Data East Corporation (World) */ - DRIVER( cninja1 ) /* MAG (c) 1991 Data East Corporation (World) */ - DRIVER( cninjau ) /* MAG (c) 1991 Data East Corporation (US) */ - DRIVER( joemac ) /* MAG (c) 1991 Data East Corporation (Japan) */ - DRIVER( cninjabl ) /* bootleg */ - DRIVER( stoneage ) /* bootleg */ - DRIVER( robocop2 ) /* MAH (c) 1991 Data East Corporation (World) */ - DRIVER( robocop2u ) /* MAH (c) 1991 Data East Corporation (US) */ - DRIVER( robocop2j ) /* MAH (c) 1991 Data East Corporation (Japan) */ - DRIVER( thndzone ) /* MAJ (c) 1991 Data East Corporation (World) */ - DRIVER( dassault ) /* MAJ (c) 1991 Data East Corporation (US) */ - DRIVER( dassault4 ) /* MAJ (c) 1991 Data East Corporation (US) */ - DRIVER( chinatwn ) /* MAK (c) 1991 Data East Corporation (Japan) */ - DRIVER( rohga ) /* MAM (c) 1991 Data East Corporation (Asia/Euro) */ - DRIVER( rohga1 ) /* MAM (c) 1991 Data East Corporation (Asia/Euro) */ - DRIVER( rohga2 ) /* MAM (c) 1991 Data East Corporation (Asia/Euro) */ - DRIVER( rohgah ) /* MAM (c) 1991 Data East Corporation (Hong Kong) */ - DRIVER( rohgau ) /* MAM (c) 1991 Data East Corporation (US) */ - DRIVER( wolffang ) /* MAM (c) 1991 Data East Corporation (Japan) */ - DRIVER( schmeisr ) /* (c) 1993 Hot B */ - DRIVER( captaven ) /* MAN (c) 1991 Data East Corporation (Asia) */ - DRIVER( captavena ) /* MAN (c) 1991 Data East Corporation (Asia) */ - DRIVER( captavene ) /* MAN (c) 1991 Data East Corporation (UK) */ - DRIVER( captavenu ) /* MAN (c) 1991 Data East Corporation (US) */ - DRIVER( captavenuu ) /* MAN (c) 1991 Data East Corporation (US) */ - DRIVER( captavenua ) /* MAN (c) 1991 Data East Corporation (US) */ - DRIVER( captavenj ) /* MAN (c) 1991 Data East Corporation (Japan) */ - /* MAO ?? */ - DRIVER( tumblep ) /* MAP (c) 1991 Data East Corporation (World) */ - DRIVER( tumblepj ) /* MAP (c) 1991 Data East Corporation (Japan) */ - DRIVER( tumbleb ) /* bootleg */ - DRIVER( tumbleb2 ) /* bootleg */ - DRIVER( jumpkids ) /* (c) 1993 Comad */ - DRIVER( jumppop ) /* (c) 2001 ESD */ - DRIVER( pangpang ) /* (c) 1994 Dong Gue La Mi Ltd. */ - DRIVER( sdfight ) /* (c) 1996 SemiCom */ - DRIVER( wlstar ) /* (c) 1995 Mijin */ - DRIVER( wondl96 ) /* (c) 1996 SemiCom */ - DRIVER( fncywld ) /* (c) 1996 Unico */ - DRIVER( htchctch ) /* (c) 1995 SemiCom */ - DRIVER( cookbib ) /* (c) 1995 SemiCom */ - DRIVER( chokchok ) /* (c) 1995 SemiCom */ - DRIVER( metlsavr ) /* (c) 1994 */ - DRIVER( bcstry ) /* (c) 1997 SemiCom */ - DRIVER( bcstrya ) /* (c) 1997 SemiCom */ - DRIVER( semibase ) /* (c) 1997 SemiCom */ - DRIVER( dquizgo ) /* (c) 1998 SemiCom */ - DRIVER( suprtrio ) /* (c) 1994 GameAce */ - DRIVER( lemmings ) /* prototype (c) 1991 Data East USA (US) */ - /* MAQ ?? */ - DRIVER( dragngun ) /* MAR (c) 1992 Data East Corporation (US) */ - DRIVER( wizdfire ) /* MAS (c) 1992 Data East Corporation (Over Sea) */ - DRIVER( wizdfireu ) /* MAS (c) 1992 Data East Corporation (US) */ - DRIVER( darkseal2 ) /* MAS (c) 1992 Data East Corporation (Japan) */ - DRIVER( funkyjet ) /* MAT (c) 1992 Mitchell */ - DRIVER( funkyjetj ) /* MAT (c) 1992 Mitchell */ - /* MAU ?? */ - DRIVER( nitrobal ) /* MAV (c) 1992 Data East Corporation (US) */ - DRIVER( gunball ) /* MAV (c) 1992 Data East Corporation (Japan) */ - /* MAW ?? */ - /* MAX ?? */ - DRIVER( dietgo ) /* MAY (c) 1993 */ - DRIVER( dietgoe ) /* MAY (c) 1993 */ - DRIVER( dietgou ) /* MAY (c) 1993 */ - DRIVER( dietgoj ) /* MAY (c) 1993 */ - DRIVER( pktgaldx ) /* MAZ (c) 1993 Data East (Euro v3.00) */ - DRIVER( pktgaldxj ) /* MAZ (c) 1993 */ - DRIVER( pktgaldxb ) /* bootleg */ - /* MBA ?? */ - /* MBB ?? */ - /* MBC ?? */ - DRIVER( boogwing ) /* MBD (c) 1992 (Euro) */ - DRIVER( boogwinga ) /* MBD (c) 1992 (Asia) */ - DRIVER( ragtime ) /* MBD (c) 1992 (Japan) */ - DRIVER( ragtimea ) /* MBD (c) 1992 (Japan) */ - DRIVER( dblewing ) /* MBE (c) 1993 Mitchell */ - DRIVER( fghthist ) /* MBF (c) 1993 Data East Corporation (World) */ - DRIVER( fghthistu ) /* MBF (c) 1993 Data East Corporation (US) */ - DRIVER( fghthista ) /* MBF (c) 1993 Data East Corporation (US) */ - DRIVER( fghthistj ) /* MBF (c) 1993 Data East Corporation (Japan) */ - DRIVER( hvysmsh ) /* MBG (c) 1993 Data East Corporation (World) */ - DRIVER( hvysmsha ) /* MBG (c) 1993 Data East Corporation (Asia) */ - DRIVER( hvysmshj ) /* MBG (c) 1993 Data East Corporation (Japan) */ - DRIVER( nslasher ) /* MBH (c) 1993 Data East Corporation */ - DRIVER( nslasherj ) /* MBH (c) 1993 Data East Corporation (Japan)*/ - DRIVER( nslashers ) /* MBH (c) 1993 Data East Corporation (Japan)*/ - /* MBI ?? */ - /* MBJ ?? */ - /* MBK ?? */ - /* MBL ?? */ - DRIVER( lockload ) /* MBM (c) 1994 Data East Corporation (US) */ - DRIVER( lockloadu ) /* MBM (c) 1994 Data East Corporation (US) */ - DRIVER( joemacr ) /* MBN (c) 1994 */ - DRIVER( joemacra ) /* MBN (c) 1994 */ - /* MBO ?? */ - /* MBP ?? */ - /* MBQ ?? */ - DRIVER( tattass ) /* prototype (c) 1994 Data East Pinball (US) */ - DRIVER( tattassa ) /* prototype (c) 1994 Data East Pinball (Asia) */ - DRIVER( charlien ) /* MBR (c) 1994 Mitchell */ - /* MBS ?? */ - /* MBT ?? */ - /* MBU ?? */ - /* MBV ?? */ - /* MBW ?? */ - DRIVER( wcvol95 ) /* MBX (c) 1993 Data East */ - /* MBY ?? */ - DRIVER( backfire ) /* MBZ (c) 1995 */ - DRIVER( backfirea ) /* MBZ (c) 1995 */ - /* MCA ?? */ - DRIVER( prtytime ) /* MCB (c) 1995 Mitchell */ - DRIVER( gangonta ) /* MCB (c) 1995 Mitchell */ - DRIVER( chainrec ) /* MCC (c) 1994 */ - DRIVER( magdrop ) /* MCC (c) 1995 Data East */ - DRIVER( magdropp ) /* MCC (c) 1995 Data East */ - /* MCD ?? */ - /* MCE Dunk Dream 95/Hoops96 See MLC games below */ - DRIVER( osman ) /* MCF (c) 1996 Mitchell */ - DRIVER( candance ) /* MCF (c) 1996 Mitchell */ - DRIVER( sotsugyo ) /* (c) 1995 Mitchell (Atlus license) */ - DRIVER( sshangha ) /* (c) 1992 Hot-B */ - DRIVER( sshanghab ) /* bootleg */ - - /* Data East MLC Games */ - DRIVER( hoops96 ) /* MCE (c) 1996 Data East Corporation */ - DRIVER( ddream95 ) /* MCE (c) 1996 Data East Corporation */ - DRIVER( hoops95 ) /* MCE (c) 1996 Data East Corporation */ - DRIVER( avengrgs ) /* MCG (c) 1995 Data East Corporation (World) */ - DRIVER( avengrgsj ) /* MCG (c) 1995 Data East Corporation (Japan) */ - DRIVER( skullfng ) /* MCH (c) 1996 Data East Corporation (World) */ - DRIVER( skullfngj ) /* MCH (c) 1996 Data East Corporation (Japan) */ - DRIVER( stadhr96 ) /* MCM (c) 1996 Data East */ - DRIVER( stadhr96j ) /* MCM (c) 1996 Data East */ - - /* Tehkan / Tecmo games (Tehkan became Tecmo in 1986) */ - DRIVER( senjyo ) /* (c) 1983 Tehkan */ - DRIVER( starforc ) /* (c) 1984 Tehkan */ - DRIVER( starforce ) /* (c) 1984 Tehkan */ - DRIVER( starforcb ) /* (c) 1984 Tehkan */ - DRIVER( starforca ) /* (c) 1984 Tehkan */ - DRIVER( megaforc ) /* (c) 1985 Tehkan + Video Ware license */ - DRIVER( baluba ) /* (c) 1986 Able Corp. */ - DRIVER( bombjack ) /* (c) 1984 Tehkan */ - DRIVER( bombjack2 ) /* (c) 1984 Tehkan */ - DRIVER( pbaction ) /* (c) 1985 Tehkan */ - DRIVER( pbaction2 ) /* (c) 1985 Tehkan */ - DRIVER( pbaction3 ) /* (c) 1985 Tehkan */ - DRIVER( pbaction4 ) /* (c) 1985 Tehkan */ - DRIVER( pbaction5 ) /* (c) 1985 Tehkan */ - /* 6009 Tank Busters */ - DRIVER( ponttehk ) /* 6011 - (c) 1985 Tehkan */ - DRIVER( lvpoker ) /* ???? - (c) 1985 Tehkan */ - DRIVER( lvcards ) /* (c) 1985 Tehkan */ - DRIVER( tehkanwc ) /* (c) 1985 Tehkan */ - DRIVER( tehkanwcb ) /* bootleg */ - DRIVER( tehkanwcc ) /* bootleg */ - DRIVER( gridiron ) /* (c) 1985 Tehkan */ - DRIVER( teedoff ) /* 6102 - (c) 1986 Tecmo */ - DRIVER( solomon ) /* (c) 1986 Tecmo */ - DRIVER( solomonj ) /* (c) 1986 Tecmo */ - DRIVER( rygar ) /* 6002 - (c) 1986 Tecmo */ - DRIVER( rygar2 ) /* 6002 - (c) 1986 Tecmo */ - DRIVER( rygar3 ) /* 6002 - (c) 1986 Tecmo */ - DRIVER( rygarj ) /* 6002 - (c) 1986 Tecmo */ - DRIVER( gemini ) /* (c) 1987 Tecmo */ - DRIVER( silkworm ) /* 6217 - (c) 1988 Tecmo */ - DRIVER( silkworm2 ) /* 6217 - (c) 1988 Tecmo */ - DRIVER( backfirt ) /* bootleg [(c) 1988 Tecmo] */ - DRIVER( tbowl ) /* 6206 - (c) 1987 Tecmo */ - DRIVER( tbowlj ) /* 6206 - (c) 1987 Tecmo */ - DRIVER( shadoww ) /* 6215 - (c) 1988 Tecmo (World) */ - DRIVER( shadowwa ) /* 6215 - (c) 1988 Tecmo (World) */ - DRIVER( gaiden ) /* 6215 - (c) 1988 Tecmo (US) */ - DRIVER( ryukendn ) /* 6215 - (c) 1989 Tecmo (Japan) */ - DRIVER( ryukendna ) /* 6215 - (c) 1989 Tecmo (Japan) */ - DRIVER( mastninj ) /* bootleg */ - DRIVER( wildfang ) /* (c) 1989 Tecmo */ - DRIVER( wildfangs ) /* (c) 1989 Tecmo */ - DRIVER( tknight ) /* (c) 1989 Tecmo */ - DRIVER( stratof ) /* (c) 1991 Tecmo */ - DRIVER( raiga ) /* (c) 1991 Tecmo */ - DRIVER( drgnbowl ) /* (c) 1992 Nics */ - DRIVER( wc90 ) /* (c) 1989 Tecmo */ - DRIVER( wc90a ) /* (c) 1989 Tecmo */ - DRIVER( wc90b ) /* (c) 1989 Tecmo */ - DRIVER( wc90t ) /* (c) 1989 Tecmo */ - DRIVER( wc90b1 ) /* bootleg */ - DRIVER( wc90b2 ) /* bootleg */ - DRIVER( spbactn ) /* 9002 - (c) 1991 Tecmo */ - DRIVER( spbactnj ) /* 9002 - (c) 1991 Tecmo */ - DRIVER( fstarfrc ) /* (c) 1992 Tecmo */ - DRIVER( fstarfrcj ) /* (c) 1992 Tecmo */ - DRIVER( ginkun ) /* (c) 1995 Tecmo */ - DRIVER( deroon ) /* (c) 1996 Tecmo */ - DRIVER( tkdensho ) /* (c) 1996 Tecmo */ - DRIVER( tkdenshoa ) /* (c) 1996 Tecmo */ - - /* Konami bitmap games */ - DRIVER( tutankhm ) /* GX350 (c) 1982 Konami */ - DRIVER( tutankhms ) /* GX350 (c) 1982 Stern */ - DRIVER( junofrst ) /* GX310 (c) 1983 Konami */ - DRIVER( junofrstg ) /* GX310 (c) 1983 Konami + Gottlieb license */ - - /* Konami games */ - DRIVER( pooyan ) /* GX320 (c) 1982 */ - DRIVER( pooyans ) /* GX320 (c) 1982 Stern */ - DRIVER( pootan ) /* bootleg */ - DRIVER( timeplt ) /* GX393 (c) 1982 */ - DRIVER( timepltc ) /* GX393 (c) 1982 + Centuri license*/ - DRIVER( timeplta ) /* GX393 (c) 1982 + Atari license*/ - DRIVER( spaceplt ) /* bootleg */ - DRIVER( psurge ) /* (c) 1988 unknown (NOT Konami) */ - DRIVER( megazone ) /* GX319 (c) 1983 */ - DRIVER( megazonea ) /* GX319 (c) 1983 */ - DRIVER( megazoneb ) /* GX319 (c) 1983 + Kosuka */ - DRIVER( megazonec ) /* GX319 (c) 1983 + Kosuka */ - DRIVER( megazonei ) /* GX319 (c) 1983 + Interlogic / Kosuka */ - DRIVER( pandoras ) /* GX328 (c) 1984 + Interlogic */ - DRIVER( gyruss ) /* GX347 (c) 1983 */ - DRIVER( gyrussce ) /* GX347 (c) 1983 + Centuri license */ - DRIVER( gyrussb ) /* bootleg or actual Taito NZ license? */ - DRIVER( venus ) /* bootleg */ - DRIVER( trackfld ) /* GX361 (c) 1983 */ - DRIVER( trackfldc ) /* GX361 (c) 1983 + Centuri license */ - DRIVER( trackfldnz )/* (c) 1982 Goldberg Enterprizes Inc. */ - DRIVER( hyprolym ) /* GX361 (c) 1983 */ - DRIVER( hyprolymb ) /* bootleg */ - DRIVER( atlantol ) /* bootleg */ - DRIVER( wizzquiz ) /* (c) 1985 Konami */ - DRIVER( wizzquiza ) /* (c) 1985 Zilec-Zenitone */ - DRIVER( reaktor ) /* (c) 1985 Zilec */ - DRIVER( mastkin ) /* (c) 1988 Du Tech */ - DRIVER( rocnrope ) /* GX364 (c) 1983 */ - DRIVER( rocnropek ) /* GX364 (c) 1983 + Kosuka */ - DRIVER( ropeman ) /* (c) 1983 bootleg */ - DRIVER( circusc ) /* GX380 (c) 1984 */ - DRIVER( circusc2 ) /* GX380 (c) 1984 */ - DRIVER( circusc3 ) /* GX380 (c) 1984 */ - DRIVER( circuscc ) /* GX380 (c) 1984 + Centuri license */ - DRIVER( circusce ) /* GX380 (c) 1984 + Centuri license */ - DRIVER( tp84 ) /* GX388 (c) 1984 */ - DRIVER( tp84a ) /* GX388 (c) 1984 */ - DRIVER( tp84b ) /* GX388 (c) 1984 */ - DRIVER( hyperspt ) /* GX330 (c) 1984 + Centuri */ - DRIVER( hypersptb ) /* bootleg */ - DRIVER( hpolym84 ) /* GX330 (c) 1984 */ - DRIVER( sbasketb ) /* GX405 (c) 1984 (Version I, Encrypted) */ - DRIVER( sbasketh ) /* GX405 (c) 1984 (Version H, Unprotected) */ - DRIVER( sbasketg ) /* GX405 (c) 1984 (Version G, Encrypted) */ - DRIVER( sbaskete ) /* GX405 (c) 1984 (Version E, Encrypted) */ - DRIVER( mikie ) /* GX469 (c) 1984 */ - DRIVER( mikiej ) /* GX469 (c) 1984 */ - DRIVER( mikiehs ) /* GX469 (c) 1984 */ - DRIVER( roadf ) /* GX461 (c) 1984 */ - DRIVER( roadf2 ) /* GX461 (c) 1984 */ - DRIVER( yiear ) /* GX407 (c) 1985 */ - DRIVER( yiear2 ) /* GX407 (c) 1985 */ - DRIVER( yieartf ) /* GX361 (c) 1985 */ - DRIVER( kicker ) /* GX477 (c) 1985 */ - DRIVER( shaolins ) /* GX477 (c) 1985 */ - DRIVER( shaolinb ) /* bootleg */ - DRIVER( pingpong ) /* GX555 (c) 1985 */ - DRIVER( merlinmm ) /* (c) 1986 Zilec-Zenitone */ - DRIVER( cashquiz ) /* (c) 1986 Zilec-Zenitone */ - DRIVER( gberet ) /* GX577 (c) 1985 */ - DRIVER( rushatck ) /* GX577 (c) 1985 */ - DRIVER( gberetb ) /* bootleg on different hardware */ - DRIVER( mrgoemon ) /* GX621 (c) 1986 (Japan) */ - DRIVER( jailbrek ) /* GX507 (c) 1986 */ - DRIVER( manhatan ) /* GX507 (c) 1986 (Japan) */ - DRIVER( jailbrekb ) /* bootleg */ - DRIVER( scotrsht ) /* GX545 (c) 1985 */ - DRIVER( finalizr ) /* GX523 (c) 1985 */ - DRIVER( finalizrb ) /* bootleg */ - DRIVER( ironhors ) /* GX560 (c) 1986 */ - DRIVER( dairesya ) /* GX560 (c) 1986 (Japan) */ - DRIVER( farwest ) /* bootleg */ - DRIVER( jackal ) /* GX631 (c) 1986 (World) */ - DRIVER( topgunr ) /* GX631 (c) 1986 (US) */ - DRIVER( jackalj ) /* GX631 (c) 1986 (Japan) */ - DRIVER( topgunbl ) /* bootleg */ - DRIVER( ddribble ) /* GX690 (c) 1986 */ - DRIVER( ddribblep ) /* GX690 (c) 1986 */ - DRIVER( contra ) /* GX633 (c) 1987 */ - DRIVER( contra1 ) /* GX633 (c) 1987 */ - DRIVER( contrab ) /* bootleg */ - DRIVER( contraj ) /* GX633 (c) 1987 (Japan) */ - DRIVER( contrajb ) /* bootleg */ - DRIVER( gryzor ) /* GX633 (c) 1987 */ - DRIVER( gryzora ) /* GX633 (c) 1987 */ - DRIVER( combatsc ) /* GX611 (c) 1988 */ - DRIVER( combatsct ) /* GX611 (c) 1987 */ - DRIVER( combatscj ) /* GX611 (c) 1987 (Japan) */ - DRIVER( bootcamp ) /* GX611 (c) 1987 */ - DRIVER( combatscb ) /* bootleg */ - DRIVER( rockrage ) /* GX620 (c) 1986 (World?) */ - DRIVER( rockragea ) /* GX620 (c) 1986 (Prototype?) */ - DRIVER( rockragej ) /* GX620 (c) 1986 (Japan) */ - DRIVER( mx5000 ) /* GX669 (c) 1987 */ - DRIVER( flkatck ) /* GX669 (c) 1987 (Japan) */ - DRIVER( fastlane ) /* GX752 (c) 1987 */ - DRIVER( tricktrp ) /* GX771 (c) 1987 */ - DRIVER( labyrunr ) /* GX771 (c) 1987 (Japan) */ - DRIVER( labyrunrk ) /* GX771 (c) 1987 (Japan) */ - DRIVER( thehustl ) /* GX765 (c) 1987 (Japan) */ - DRIVER( thehustlj ) /* GX765 (c) 1987 (Japan) */ - DRIVER( rackemup ) /* GX765 (c) 1987 */ - DRIVER( battlnts ) /* GX777 (c) 1987 */ - DRIVER( battlntsj ) /* GX777 (c) 1987 (Japan) */ - DRIVER( bladestl ) /* GX797 (c) 1987 */ - DRIVER( bladestll ) /* GX797 (c) 1987 */ - DRIVER( bladestle ) /* GX797 (c) 1987 */ - DRIVER( hcastle ) /* GX768 (c) 1988 */ - DRIVER( hcastleo ) /* GX768 (c) 1988 */ - DRIVER( hcastlej ) /* GX768 (c) 1988 (Japan) */ - DRIVER( hcastljo ) /* GX768 (c) 1988 (Japan) */ - DRIVER( ajax ) /* GX770 (c) 1987 */ - DRIVER( typhoon ) /* GX770 (c) 1987 */ - DRIVER( ajaxj ) /* GX770 (c) 1987 (Japan) */ - DRIVER( scontra ) /* GX775 (c) 1988 */ - DRIVER( scontraj ) /* GX775 (c) 1988 (Japan) */ - DRIVER( thunderx ) /* GX873 (c) 1988 */ - DRIVER( thunderxa ) /* GX873 (c) 1988 */ - DRIVER( thunderxb ) /* GX873 (c) 1988 */ - DRIVER( thunderxj ) /* GX873 (c) 1988 (Japan) */ - DRIVER( mainevt ) /* GX799 (c) 1988 */ - DRIVER( mainevto ) /* GX799 (c) 1988 */ - DRIVER( mainevt2p ) /* GX799 (c) 1988 */ - DRIVER( ringohja ) /* GX799 (c) 1988 (Japan) */ - DRIVER( devstors ) /* GX890 (c) 1988 */ - DRIVER( devstors2 ) /* GX890 (c) 1988 */ - DRIVER( devstors3 ) /* GX890 (c) 1988 */ - DRIVER( garuka ) /* GX890 (c) 1988 (Japan) */ - DRIVER( 88games ) /* GX861 (c) 1988 */ - DRIVER( konami88 ) /* GX861 (c) 1988 */ - DRIVER( hypsptsp ) /* GX861 (c) 1988 (Japan) */ - DRIVER( gbusters ) /* GX878 (c) 1988 */ - DRIVER( gbustersa ) /* GX878 (c) 1988 */ - DRIVER( crazycop ) /* GX878 (c) 1988 (Japan) */ - DRIVER( crimfght ) /* GX821 (c) 1989 (US) */ - DRIVER( crimfght2 ) /* GX821 (c) 1989 (World) */ - DRIVER( crimfghtj ) /* GX821 (c) 1989 (Japan) */ - DRIVER( spy ) /* GX857 (c) 1989 (World) */ - DRIVER( spyu ) /* GX857 (c) 1989 (US) */ - DRIVER( bottom9 ) /* GX891 (c) 1989 */ - DRIVER( bottom9n ) /* GX891 (c) 1989 */ - DRIVER( mstadium ) /* GX891 (c) 1989 (Japan) */ - DRIVER( blockhl ) /* GX973 (c) 1989 */ - DRIVER( quarth ) /* GX973 (c) 1989 (Japan) */ - DRIVER( aliens ) /* GX875 (c) 1990 (World) */ - DRIVER( aliens2 ) /* GX875 (c) 1990 (World) */ - DRIVER( aliens3 ) /* GX875 (c) 1990 (World) */ - DRIVER( aliensu ) /* GX875 (c) 1990 (US) */ - DRIVER( aliensj ) /* GX875 (c) 1990 (Japan) */ - DRIVER( aliensj2 ) /* GX875 (c) 1990 (Japan) */ - DRIVER( aliensa ) /* GX875 (c) 1990 (Asia) */ - DRIVER( suratk ) /* GX911 (c) 1990 (World) */ - DRIVER( suratka ) /* GX911 (c) 1990 (Asia) */ - DRIVER( suratkj ) /* GX911 (c) 1990 (Japan) */ - DRIVER( parodius ) /* GX955 (c) 1990 (World) */ - DRIVER( parodiusa ) /* GX955 (c) 1990 (World) */ - DRIVER( parodiusj ) /* GX955 (c) 1990 (Japan) */ - DRIVER( rollerg ) /* GX999 (c) 1991 (US) */ - DRIVER( rollergj ) /* GX999 (c) 1991 (Japan) */ - DRIVER( simpsons ) /* GX072 (c) 1991 */ - DRIVER( simpsons4pa ) /* GX072 (c) 1991 */ - DRIVER( simpsons2p ) /* GX072 (c) 1991 */ - DRIVER( simpsons2p2 ) /* GX072 (c) 1991 */ - DRIVER( simpsons2pa ) /* GX072 (c) 1991 (Asia) */ - DRIVER( simpsons2pj ) /* GX072 (c) 1991 (Japan) */ - DRIVER( esckids ) /* GX975 (c) 1991 (Asia) */ - DRIVER( esckidsj ) /* GX975 (c) 1991 (Japan) */ - DRIVER( vendetta ) /* GX081 (c) 1991 (World) */ - DRIVER( vendettar ) /* GX081 (c) 1991 (World) */ - DRIVER( vendetta2p )/* GX081 (c) 1991 (World) */ - DRIVER( vendetta2pu )/* GX081 (c) 1991 (Asia) */ - DRIVER( vendetta2pd )/* GX081 (c) 1991 (Asia) */ - DRIVER( vendettaj ) /* GX081 (c) 1991 (Japan) */ - DRIVER( mogura ) /* GX141 (c) 1991 */ - DRIVER( wecleman ) /* GX602 (c) 1986 */ - DRIVER( hotchase ) /* GX763 (c) 1988 */ - DRIVER( chqflag ) /* GX717 (c) 1988 */ - DRIVER( chqflagj ) /* GX717 (c) 1988 (Japan) */ - DRIVER( ultraman ) /* GX910 (c) 1991 Banpresto/Bandai */ - DRIVER( hexion ) /* GX122 (c) 1992 */ - DRIVER( lethalen ) /* GX191 (c) 1992 */ - DRIVER( lethalenua ) /* GX191 (c) 1992 */ - DRIVER( lethalenux ) /* GX191 (c) 1992 */ - DRIVER( lethaleneab ) /* GX191 (c) 1992 */ - DRIVER( lethaleneae ) /* GX191 (c) 1992 */ - DRIVER( lethalenj ) /* GX191 (c) 1992 */ - DRIVER( tgtpanic ) /* GX601 (c) 1996 */ - - /* Konami "Nemesis hardware" games */ - DRIVER( nemesis ) /* GX456 (c) 1985 */ - DRIVER( nemesisuk ) /* GX456 (c) 1985 */ - DRIVER( konamigt ) /* GX561 (c) 1985 */ - DRIVER( salamand ) /* GX587 (c) 1986 */ - DRIVER( salamandj ) /* GX587 (c) 1986 */ - DRIVER( lifefrce ) /* GX587 (c) 1986 (US) */ - DRIVER( lifefrcej ) /* GX587 (c) 1986 (Japan) */ - DRIVER( blkpnthr ) /* GX604 (c) 1987 (Japan) */ - DRIVER( citybomb ) /* GX787 (c) 1987 (World) */ - DRIVER( citybombj ) /* GX787 (c) 1987 (Japan) */ - DRIVER( kittenk ) /* GX712 (c) 1988 */ - DRIVER( nyanpani ) /* GX712 (c) 1988 (Japan) */ - DRIVER( hcrash ) /* GX790 (c) 1987 */ - DRIVER( hcrashc ) /* GX790 (c) 1987 */ - - /* GX400 BIOS based games */ - DRIVER( rf2 ) /* GX561 (c) 1985 */ - DRIVER( twinbee ) /* GX412 (c) 1985 */ - DRIVER( gradius ) /* GX456 (c) 1985 */ - DRIVER( gwarrior ) /* GX578 (c) 1985 */ - - /* Konami "Twin 16" games */ - DRIVER( devilw ) /* GX687 (c) 1987 */ - DRIVER( darkadv ) /* GX687 (c) 1987 */ - DRIVER( majuu ) /* GX687 (c) 1987 (Japan) */ - DRIVER( vulcan ) /* GX785 (c) 1988 */ - DRIVER( vulcana ) /* GX785 (c) 1988 */ - DRIVER( vulcanb ) /* GX785 (c) 1988 */ - DRIVER( gradius2 ) /* GX785 (c) 1988 (Japan) */ - DRIVER( gradius2a ) /* GX785 (c) 1988 (Japan) */ - DRIVER( gradius2b ) /* GX785 (c) 1988 (Japan) */ - DRIVER( cuebrickj ) /* GX903 (c) 1989 (Japan) */ - DRIVER( fround ) /* GX870 (c) 1988 */ - DRIVER( froundl ) /* GX870 (c) 1988 */ - DRIVER( hpuncher ) /* GX870 (c) 1988 (Japan) */ - DRIVER( miaj ) /* GX808 (c) 1989 (Japan) */ - - /* (some) Konami 68000 games */ - DRIVER( cuebrick ) /* GX903 (c) 1989 */ - DRIVER( mia ) /* GX808 (c) 1989 */ - DRIVER( mia2 ) /* GX808 (c) 1989 */ - DRIVER( tmnt ) /* GX963 (c) 1989 (World) */ - DRIVER( tmntu ) /* GX963 (c) 1989 (US) */ - DRIVER( tmntua ) /* GX963 (c) 1989 (US) */ - DRIVER( tmht ) /* GX963 (c) 1989 (UK) */ - DRIVER( tmhta ) /* GX963 (c) 1989 (UK) */ - DRIVER( tmntj ) /* GX963 (c) 1990 (Japan) */ - DRIVER( tmht2p ) /* GX963 (c) 1989 (UK) */ - DRIVER( tmht2pa ) /* GX963 (c) 1989 (UK) */ - DRIVER( tmnt2pj ) /* GX963 (c) 1990 (Japan) */ - DRIVER( tmnt2po ) /* GX963 (c) 1989 (Oceania) */ - DRIVER( punkshot ) /* GX907 (c) 1990 (US) */ - DRIVER( punkshot2 ) /* GX907 (c) 1990 (US) */ - DRIVER( punkshotj ) /* GX907 (c) 1990 (Japan) */ - DRIVER( lgtnfght ) /* GX939 (c) 1990 (World) */ - DRIVER( lgtnfghta ) /* GX939 (c) 1990 (Asia) */ - DRIVER( lgtnfghtu ) /* GX939 (c) 1990 (US) */ - DRIVER( trigon ) /* GX939 (c) 1990 (Japan) */ - DRIVER( blswhstl ) /* GX060 (c) 1991 */ - DRIVER( detatwin ) /* GX060 (c) 1991 (Japan) */ - DRIVER( glfgreat ) /* GX061 (c) 1991 */ - DRIVER( glfgreatj ) /* GX061 (c) 1991 (Japan) */ - DRIVER( tmnt2 ) /* GX063 (c) 1991 (US) */ - DRIVER( tmnt2a ) /* GX063 (c) 1991 (Asia) */ - DRIVER( tmht22pe ) /* GX063 (c) 1991 (UK) */ - DRIVER( tmnt22pu ) /* GX063 (c) 1991 (US) */ - DRIVER( ssriders ) /* GX064 (c) 1991 (World) */ - DRIVER( ssridersebd ) /* GX064 (c) 1991 (World) */ - DRIVER( ssridersebc ) /* GX064 (c) 1991 (World) */ - DRIVER( ssridersuda ) /* GX064 (c) 1991 (US) */ - DRIVER( ssriderseaa ) /* GX064 (c) 1991 (US) */ - DRIVER( ssridersuac ) /* GX064 (c) 1991 (US) */ - DRIVER( ssridersubc ) /* GX064 (c) 1991 (US) */ - DRIVER( ssridersabd ) /* GX064 (c) 1991 (Asia) */ - DRIVER( ssridersadd ) /* GX064 (c) 1991 (Asia) */ - DRIVER( ssridersjbd ) /* GX064 (c) 1991 (Japan) */ - DRIVER( ssridersb ) /* bootleg */ - DRIVER( ssriders2 ) /* bootleg */ - DRIVER( xmen ) /* GX065 (c) 1992 (US) */ - DRIVER( xmenj ) /* GX065 (c) 1992 (Japan) */ - DRIVER( xmene ) /* GX065 (c) 1992 (Europe) */ - DRIVER( xmen2pe ) /* GX065 (c) 1992 (World) */ - DRIVER( xmen2pa ) /* GX065 (c) 1992 (Asia) */ - DRIVER( xmen2pj ) /* GX065 (c) 1992 (Japan) */ - DRIVER( xmen6p ) /* GX065 (c) 1992 */ - DRIVER( xmen6pu ) /* GX065 (c) 1992 */ - DRIVER( xexex ) /* GX067 (c) 1991 (World) */ - DRIVER( xexexa ) /* GX067 (c) 1991 (AAA) */ - DRIVER( xexexj ) /* GX067 (c) 1991 (Japan) */ - DRIVER( asterix ) /* GX068 (c) 1992 (World) */ - DRIVER( asterixeac ) /* GX068 (c) 1992 (World) */ - DRIVER( asterixeaa ) /* GX068 (c) 1992 (World) */ - DRIVER( asterixaad ) /* GX068 (c) 1992 (Asia) */ - DRIVER( asterixj ) /* GX068 (c) 1992 (Japan) */ - DRIVER( gijoe ) /* GX069 (c) 1991 (World) */ - DRIVER( gijoea ) /* GX069 (c) 1991 (World) */ - DRIVER( gijoeu ) /* GX069 (c) 1991 (US) */ - DRIVER( gijoej ) /* GX069 (c) 1991 (Japan) */ - DRIVER( thndrx2 ) /* GX073 (c) 1991 (World) */ - DRIVER( thndrx2a ) /* GX073 (c) 1991 (Asia) */ - DRIVER( thndrx2j ) /* GX073 (c) 1991 (Japan) */ - DRIVER( prmrsocr ) /* GX101 (c) 1993 (Europe) */ - DRIVER( prmrsocrj ) /* GX101 (c) 1993 (Japan) */ - DRIVER( qgakumon ) /* GX248 (c) 1993 (Japan) */ - DRIVER( moomesa ) /* GX151 (c) 1992 (World) */ - DRIVER( moomesau ) /* GX151 (c) 1992 (US) */ - DRIVER( moomesaua ) /* GX151 (c) 1992 (US) */ - DRIVER( moomesaa ) /* GX151 (c) 1992 (Asia) */ - DRIVER( moomesabl ) /* bootleg */ - DRIVER( bucky ) /* GX173 (c) 1992 (World) */ - DRIVER( buckyua ) /* GX173 (c) 1992 (US) */ - DRIVER( buckyaa ) /* GX173 (c) 1992 (Asia) */ - DRIVER( gaiapols ) /* GX123 (c) 1993 (Europe) */ - DRIVER( gaiapolsu ) /* GX123 (c) 1993 (US) */ - DRIVER( gaiapolsj ) /* GX123 (c) 1993 (Japan) */ - DRIVER( mystwarr ) /* GX128 (c) 1993 (World) */ - DRIVER( mystwarru ) /* GX128 (c) 1993 (US) */ - DRIVER( mystwarrj ) /* GX128 (c) 1993 (Japan) */ - DRIVER( mystwarra ) /* GX128 (c) 1993 (Asia) */ - DRIVER( viostorm ) /* GX168 (c) 1993 (Europe) */ - DRIVER( viostormu ) /* GX168 (c) 1993 (US) */ - DRIVER( viostormub ) /* GX168 (c) 1993 (US) */ - DRIVER( viostormj ) /* GX168 (c) 1993 (Japan) */ - DRIVER( viostorma ) /* GX168 (c) 1993 (Asia) */ - DRIVER( viostormab )/* GX168 (c) 1993 (Asia) */ - DRIVER( mmaulers ) /* GX170 (c) 1993 (Europe) */ - DRIVER( dadandrn ) /* GX170 (c) 1993 (Japan) */ - DRIVER( metamrph ) /* GX224 (c) 1993 (Europe) */ - DRIVER( metamrphu ) /* GX224 (c) 1993 (US) */ - DRIVER( metamrphj ) /* GX224 (c) 1993 (Japan) */ - DRIVER( mtlchamp ) /* GX234 (c) 1993 (World) */ - DRIVER( mtlchamp1 ) /* GX234 (c) 1993 (World) */ - DRIVER( mtlchampu ) /* GX234 (c) 1993 (US) */ - DRIVER( mtlchampj ) /* GX234 (c) 1993 (Japan) */ - DRIVER( mtlchampa ) /* GX234 (c) 1993 (Japan) */ - DRIVER( rungun ) /* GX247 (c) 1993 (World) */ - DRIVER( runguna ) /* GX247 (c) 1993 (World) */ - DRIVER( rungunu ) /* GX247 (c) 1993 (US) */ - DRIVER( rungunua ) /* GX247 (c) 1993 (US) */ - DRIVER( slmdunkj ) /* GX247 (c) 1993 (Japan) */ - DRIVER( dbz ) /* (c) 1993 Banpresto */ - DRIVER( dbz2 ) /* (c) 1994 Banpresto */ - DRIVER( bishi ) /* GX575 (c) 1996 (Japan) */ - DRIVER( sbishi ) /* GX675 (c) 1998 (Japan) */ - DRIVER( sbishik ) /* GX675 (c) 1998 (Korea) */ - - /* Konami dual 68000 games */ - DRIVER( overdriv ) /* GX789 (c) 1990 */ - DRIVER( gradius3 ) /* GX945 (c) 1989 (Japan) */ - DRIVER( gradius3a ) /* GX945 (c) 1989 (Asia) */ - DRIVER( gradius3e ) /* GX945 (c) 1989 (World?) */ - - /* Konami 68020 games */ - DRIVER( plygonet ) /* GX305 (c) 1993 */ - DRIVER( polynetw ) /* GX305 too? (c) 1993 */ - - /* Konami System GX games */ - DRIVER( konamigx ) - - /* GX Type 1 */ - DRIVER( racinfrc ) /* 1994.?? GX250 (Europe) */ - DRIVER( racinfrcu ) /* 1994.03 GX250 (US) */ - /* 1994.02 (Japan) */ - DRIVER( opengolf ) /* 1994.?? GX218 (Europe) */ - DRIVER( opengolf2 ) /* 1994.?? GX218 (Europe) */ - DRIVER( ggreats2 ) /* 1994.03 GX218 (Japan) */ - /* 1995.03 GX218 (US) */ - - /* GX Type 2 */ - DRIVER( le2 ) /* 1994.?? GX312 (Europe) */ - DRIVER( le2u ) /* 1994.04 GX312 (US) */ - DRIVER( le2j ) /* 1994.06 GX312 (Japan) */ - DRIVER( puzldama ) /* 1994.07 GX315 (Japan) */ - DRIVER( gokuparo ) /* 1994.04 GX321 (Japan) */ - DRIVER( fantjour ) /* 1994.?? GX321 (Euro) */ - DRIVER( fantjoura ) /* 1994.?? GX321 (Asia) */ - DRIVER( dragoona ) /* 1995.?? GX417 (Asia) */ - DRIVER( dragoonj ) /* 1995.08 GX417 (Japan) */ - DRIVER( tbyahhoo ) /* 1995.04 GX424 (Japan) */ - DRIVER( tkmmpzdm ) /* 1995.12 GX515 (Japan) */ - DRIVER( salmndr2 ) /* 1996.01 GX521 (Japan) */ - DRIVER( salmndr2a ) /* 1996.?? GX521 (Asia) */ - DRIVER( sexyparo ) /* 1996.02 GX533 (Japan) */ - DRIVER( sexyparoa ) /* 1996.02 GX533 (Asia) */ - DRIVER( daiskiss ) /* 1996.03 GX535 (Japan) */ - DRIVER( tokkae ) /* 1996.10 GX615 (Japan) */ - DRIVER( winspike ) /* 1997.?? GX705 (Europe) */ - DRIVER( winspikej ) /* 1997.07 GX705 (Japan) */ - - /* GX Type 3 */ - DRIVER( soccerss ) /* 1994.?? GX427 (Europe) */ - DRIVER( soccerssj ) /* 1994.12 GX427 (Japan) */ - DRIVER( soccerssja )/* 1994.12 GX427 (Japan) */ - DRIVER( soccerssa ) /* 1994.?? GX427 (Asia) */ - /* 1995.04 GX427 (US) */ - - /* GX Type 4 */ - DRIVER( vsnetscr ) /* 1996.?? GX627 (Europe) */ - DRIVER( vsnetscreb )/* 1996.?? GX627 (Europe) */ - DRIVER( vsnetscru ) /* 1996.?? GX627 (US) */ - DRIVER( vsnetscra ) /* 1996.?? GX627 (Asia) */ - DRIVER( vsnetscrj ) /* 1996.12 GX627 (Japan) */ - DRIVER( rungun2 ) /* 1996.03 GX505 (US) */ - DRIVER( slamdnk2 ) /* 1996.03 GX505 (Japan) */ - DRIVER( rushhero ) /* 1997.10 GX605 (US) */ - - /* 68k + HD */ - DRIVER( qdrmfgp ) /* 1994.12 GQ460 (Japan) */ - DRIVER( qdrmfgp2 ) /* 1995.09 GE557 (Japan) */ - - /* 68000-based gambling games */ - DRIVER( kingtut ) - DRIVER( moneybnk ) - - /* DJ Main */ - DRIVER( bm1stmix ) /* GQ753 (c) 1997 (Japan) */ - DRIVER( bm2ndmix ) /* GX853 (c) 1998 (Japan) */ - DRIVER( bm2ndmxa ) /* GX853 (c) 1998 (Japan) */ - DRIVER( bm3rdmix ) /* GX853 (c) 1998 (Japan) */ - //DRIVER( bm3rdmxb ) /* GX853 (c) 1998 (Japan) */ - DRIVER( bmcompmx ) /* GX858 (c) 1999 (Japan) */ - DRIVER( hmcompmx ) /* GX858 (c) 1999 */ - DRIVER( bm4thmix ) /* GX847 (c) 1999 (Japan) */ - DRIVER( bm5thmix ) /* GX981 (c) 1999 (Japan) */ - DRIVER( bmclubmx ) /* GX993 (c) 2000 (Japan) */ - DRIVER( bmcorerm ) /* GXA05 (c) 1999 (Japan) */ - DRIVER( bmdct ) /* GX995 (c) 2000 (Japan) */ - DRIVER( bmcompm2 ) /* GX988 (c) 2000 (Japan) */ - DRIVER( hmcompm2 ) /* GX988 (c) 2000 */ - DRIVER( bm6thmix ) /* GXA21 (c) 2001 (Japan) */ - DRIVER( bm7thmix ) /* GXB07 (c) 2001 (Japan) */ - DRIVER( bmfinal ) /* GXC01 (c) 2002 (Japan) */ - - //DRIVER( popn1 ) /* GX803 (c) 1998 (Japan) */ - DRIVER( popn2 ) /* GX831 (c) 1998 (Japan) */ - //DRIVER( popn3 ) /* GX980 (c) 1999 (Japan) */ - //DRIVER( popnstex ) /* GX970 (c) 1999 (Japan) */ - - /* Firebeat games */ - DRIVER( ppp ) /* GQ977 (c) 2000 */ - DRIVER( ppd ) /* GQ977 (c) 2000 (Korea) */ - DRIVER( ppp11 ) /* GQ977 (c) 2000 */ - DRIVER( kbm ) /* GQ974 (c) 2000 */ - DRIVER( kbm2nd ) /* GCA01 (c) 2000 */ - DRIVER( kbm3rd ) /* GCA12 (c) 2001 */ - DRIVER( popn5 ) /* GCA04 (c) 2000 */ - DRIVER( popn7 ) /* not sure, doesn't boot yet (c) 2001 */ - - /* PowerPC based Konami games */ - DRIVER( fiveside ) /* GX479 (c)1995 */ - DRIVER( thunderh ) /* GX680 (c)1996 Euro EAA */ - DRIVER( thunderhu ) /* GX680 (c)1996 USA UAA */ - DRIVER( slrasslt ) /* GX792 (c)1996 */ - DRIVER( gticlub ) /* GX688 (c)1996 Euro EAA */ - DRIVER( gticluba ) /* GX688 (c)1996 Asia AAA */ - DRIVER( gticlubj ) /* GX688 (c)1996 Japan JAA */ - DRIVER( hangplt ) /* GX685 (c)1997 */ - DRIVER( nbapbp ) /* GX778 (c)1998 */ - DRIVER( terabrst ) /* GX715 (c)1998 USA UEL 1998/07/17*/ - DRIVER( terabrsta ) /* GX715 (c)1998 Asia AAA 1998/02/25 */ - DRIVER( gradius4 ) /* GX837 (c)1999 */ - DRIVER( sscope ) /* GX830 (c)1999 */ - DRIVER( sscopea ) /* GX830 (c)1999 */ - DRIVER( sscopeb ) /* GX830 (c)1999 */ - DRIVER( sscopec ) /* GX830 (c)1999 */ - DRIVER( sscope2 ) /* GX931 (c)2000 */ - DRIVER( racingj ) /* GX676 (c)1998 */ - DRIVER( racingj2 ) /* GX888 (c)1999 (EAE) */ - DRIVER( racingj2j ) /* GX888 (c)1999 (JAE) */ - DRIVER( thrilld ) /* GX713 (c)1998 Japan JAE */ - DRIVER( thrilldb ) /* GX713 (c)1998 Japan JAB */ - DRIVER( thrilldae ) /* GX713 (c)1998 Europe EAA */ - DRIVER( midnrun ) /* GX476 (c)1995 */ - DRIVER( windheat ) /* GX677 (c)1996 */ - DRIVER( windheatu ) /* GX677 (c)1996 */ - DRIVER( windheatj ) /* GX677 (c)1996 */ - DRIVER( waveshrk ) /* GX678 (c)1996 */ - - /* Konami M2 games */ - DRIVER( polystar ) /* GX623 (c)1997 */ - DRIVER( totlvice ) /* GX639 (c)1997 */ - DRIVER( totlvicj ) /* GX639 (c)1997 */ - DRIVER( btltryst ) /* GX636 (c)1998 */ - DRIVER( heatof11 ) /* GX703 (c)1998 */ - DRIVER( evilngt ) /* GX810 (c)1998 */ - DRIVER( evilngte ) /* GX810 (c)1998 */ - DRIVER( hellngt ) /* GX810 (c)1998 */ - - /* Exidy games */ - DRIVER( carpolo ) /* (c) 1977 */ - DRIVER( sidetrac ) /* (c) 1979 */ - DRIVER( targ ) /* (c) 1980 */ - DRIVER( targc ) /* (c) 1980 */ - DRIVER( spectar ) /* (c) 1980 */ - DRIVER( spectar1 ) /* (c) 1980 */ - DRIVER( rallys ) /* (c) 1980 Novar (bootleg) */ - DRIVER( panzer ) /* (c) 1980 Proel (bootleg) */ - DRIVER( phantoma ) /* (c) 1980 Jeutel (bootleg) */ - DRIVER( phantom ) /* (c) 1980 Proel (bootleg) */ - DRIVER( venture ) /* (c) 1981 */ - DRIVER( venture2 ) /* (c) 1981 */ - DRIVER( venture4 ) /* (c) 1981 */ - DRIVER( teetert ) /* (c) 1981 */ - DRIVER( mtrap ) /* (c) 1981 */ - DRIVER( mtrap3 ) /* (c) 1981 */ - DRIVER( mtrap4 ) /* (c) 1981 */ - DRIVER( pepper2 ) /* (c) 1982 */ - DRIVER( hardhat ) /* (c) 1982 */ - DRIVER( fax ) /* (c) 1983 */ - DRIVER( fax2 ) /* (c) 1983 */ - DRIVER( circus ) /* no copyright notice [1977?] */ - DRIVER( circusse ) /* bootleg */ - DRIVER( robotbwl ) /* no copyright notice */ - DRIVER( crash ) /* Exidy [1979?] */ - DRIVER( smash ) /* bootleg */ - DRIVER( ripcord ) /* Exidy [1977?] */ - DRIVER( starfire ) /* Exidy [1979?] */ - DRIVER( starfirea ) /* Exidy [1979?] */ - DRIVER( fireone ) /* (c) 1979 Exidy */ - DRIVER( starfir2 ) /* (c) 1979 Exidy */ - DRIVER( victory ) /* (c) 1982 */ - DRIVER( victorba ) /* (c) 1982 */ - DRIVER( topgunnr ) /* (c) 1986 */ - - /* Exidy 440 games */ - DRIVER( crossbow ) /* (c) 1983 */ - DRIVER( cheyenne ) /* (c) 1984 */ - DRIVER( combat ) /* (c) 1985 */ - DRIVER( catch22 ) /* (c) 1985 */ - DRIVER( cracksht ) /* (c) 1985 */ - DRIVER( claypign ) /* (c) 1986 */ - DRIVER( chiller ) /* (c) 1986 */ - DRIVER( topsecex ) /* (c) 1986 */ - DRIVER( hitnmiss ) /* (c) 1987 */ - DRIVER( hitnmiss2 ) /* (c) 1987 */ - DRIVER( whodunit ) /* (c) 1988 */ - DRIVER( showdown ) /* (c) 1988 */ - DRIVER( yukon ) /* (c) 1989 */ - DRIVER( yukon1 ) /* (c) 1989 */ - - /* Exidy Max-A-Flex */ - DRIVER( maxaflex ) - DRIVER( mf_achas ) /* (c) 1982 Exidy / First Star Software */ - DRIVER( mf_brist ) /* (c) 1983 Exidy / First Star Software */ - DRIVER( mf_flip ) /* (c) 1983 Exidy / First Star Software */ - DRIVER( mf_bdash ) /* (c) 1984 Exidy / First Star Software */ - - /* Atari b/w games */ - DRIVER( tank8 ) /* ?????? 1976/04 [6800] */ - DRIVER( tank8a ) /* ?????? 1976/04 [6800] */ - DRIVER( tank8b ) /* ?????? 1976/04 [6800] */ - DRIVER( tank8c ) /* ?????? 1976/04 [6800] */ - DRIVER( tank8d ) /* ?????? 1976/04 [6800] */ - DRIVER( cball ) /* ?????? prototype 1976/?? [6800] */ - DRIVER( copsnrob ) /* 005625 1976/07 [6502] */ - DRIVER( flyball ) /* 005629 1976/07 [6502] */ - DRIVER( sprint2 ) /* 005922 1976/11 [6502] */ - DRIVER( sprint2a ) /* 005922 1976/11 [6502] */ - DRIVER( sprint4 ) /* 008716 1977/12 [6502] */ - DRIVER( sprint4a ) /* 008716 1977/12 [6502] */ - DRIVER( nitedrvr ) /* 006321 1976/10 [6502] */ - DRIVER( dominos ) /* 007305 1977/01 [6502] */ - DRIVER( triplhnt ) /* 008422-008791 1977/04 [6800] */ - DRIVER( sprint8 ) /* ?????? 1977/05 [6800] */ - DRIVER( sprint8a ) /* ?????? 1977/05 [6800] */ - DRIVER( dragrace ) /* 008505-008521 1977/06 [6800] */ - DRIVER( poolshrk ) /* 006281 1977/06 [6800] */ - DRIVER( starshp1 ) /* 007513-007531 1977/07 [6502] */ - DRIVER( starshpp ) /* 007513-007531 1977/07 [6502] */ - DRIVER( superbug ) /* 009115-009467 1977/09 [6800] */ - DRIVER( canyon ) /* 009493-009504 1977/10 [6502] */ - DRIVER( canyonp ) /* 009493-009504 1977/10 [6502] */ - DRIVER( destroyr ) /* 030131-030136 1977/10 [6800] */ - DRIVER( destroyr1 ) /* 030131-030136 1977/10 [6800] */ - DRIVER( catchp ) /* 008837 prototype 1977/?? [6502] */ - DRIVER( sprint1 ) /* 006443 1978/01 [6502] */ - DRIVER( ultratnk ) /* 009801 1978/02 [6502] */ - DRIVER( skyraid ) /* 009709 1978/03 [6502] */ - DRIVER( tourtabl ) /* 030170 1978/03 [6507] */ - DRIVER( tourtab2 ) /* 030170 1978/03 [6507] */ - DRIVER( avalnche ) /* 030574 1978/04 [6502] */ - DRIVER( cascade ) /* bootleg */ - DRIVER( firetrk ) /* 030926 1978/06 [6808] */ - DRIVER( skydiver ) /* 009787 1978/06 [6800] */ - /* Smokey Joe */ /* 030926 1978/07 [6502] */ - DRIVER( sbrkout3 ) /* 033442-033452 1978/09 [6502] */ - DRIVER( sbrkout ) /* 033453-033455 1978/09 [6502] */ - DRIVER( atarifb ) /* 033xxx 1978/10 [6502] */ - DRIVER( atarifb1 ) /* 033xxx 1978/10 [6502] */ - DRIVER( orbit ) /* 033689-033702 1978/11 [6800] */ - DRIVER( boxer ) /* ?????? prototype 1978 [6502] */ - DRIVER( wolfpack ) /* ?????? prototype [6502] */ - DRIVER( mgolf ) /* ?????? prototype 1978 [6502] */ - DRIVER( videopin ) /* 034253-034267 1979/02 [6502] */ - DRIVER( atarifb4 ) /* 034754 1979/04 [6502] */ - DRIVER( subs ) /* 033714 1979/05 [6502] */ - DRIVER( bsktball ) /* 034756-034766 1979/05 [6502] */ - DRIVER( abaseb ) /* 034711-034738 1979/06 [6502] */ - DRIVER( abaseb2 ) /* 034711-034738 1979/06 [6502] */ - DRIVER( montecar ) /* 035763-035780 1980/04 [6502] */ - DRIVER( soccer ) /* 035222-035260 1980/04 [6502] */ - - /* Atari "Missile Command hardware" games */ - DRIVER( missile ) /* 035820-035825 (c) 1980 */ - DRIVER( missile2 ) /* 035820-035825 (c) 1980 */ - DRIVER( suprmatk ) /* (c) 1980 + (c) 1981 Gencomp */ - DRIVER( suprmatkd ) /* (c) 1980 + (c) 1981 Gencomp */ - DRIVER( mcombat ) - DRIVER( mcombata ) - - /* Atari vector games */ - DRIVER( llander ) /* 0345xx no copyright notice */ - DRIVER( llander1 ) /* 0345xx no copyright notice */ - DRIVER( asteroid ) /* 035127-035145 (c) 1979 */ - DRIVER( asteroid2 ) /* 035127-035145 (c) 1979 */ - DRIVER( asteroid1 ) /* 035127-035145 no copyright notice */ - DRIVER( asteroidb ) /* (bootleg) */ - DRIVER( asterock ) /* Sidam bootleg (c) 1979 */ - DRIVER( meteorts ) /* VCC bootleg (c) 1979 */ - DRIVER( meteorho ) /* Hoei? bootleg (c) 1980 */ - DRIVER( astdelux ) /* 0351xx (c) 1980 */ - DRIVER( astdelux2 ) /* 0351xx (c) 1980 */ - DRIVER( astdelux1 ) /* 0351xx (c) 1980 */ - DRIVER( bzone ) /* 0364xx (c) 1980 */ - DRIVER( bzone2 ) /* 0364xx (c) 1980 */ - DRIVER( bzonec ) /* 0364xx (c) 1980 */ - DRIVER( bradley ) /* ?? (c) 1980 */ - DRIVER( redbaron ) /* 036995-037007 (c) 1980 */ - DRIVER( tempest ) /* 136002 (c) 1980 */ - DRIVER( tempest1 ) /* 136002 (c) 1980 */ - DRIVER( tempest2 ) /* 136002 (c) 1980 */ - DRIVER( tempest3 ) /* 136002 (c) 1980 */ - DRIVER( temptube ) /* (hack) */ - DRIVER( spacduel ) /* 136006 (c) 1980 */ - DRIVER( gravitar ) /* 136010 (c) 1982 */ - DRIVER( gravitar2 ) /* 136010 (c) 1982 */ - DRIVER( gravp ) /* (proto) (c) 1982 */ - DRIVER( lunarbat ) /* (proto) (c) 1982 */ - DRIVER( lunarba1 ) /* (proto) (c) 1982 */ - DRIVER( quantum ) /* 136016 (c) 1982 */ /* made by Gencomp */ - DRIVER( quantum1 ) /* 136016 (c) 1982 */ /* made by Gencomp */ - DRIVER( quantump ) /* 136016 (c) 1982 */ /* made by Gencomp */ - DRIVER( bwidow ) /* 136017 (c) 1982 */ - DRIVER( starwars ) /* 136021 (c) 1983 */ - DRIVER( starwars1 ) /* 136021 (c) 1983 */ - DRIVER( tomcatsw ) /* (proto) (c) 1983 */ - DRIVER( mhavoc ) /* 136025 (c) 1983 */ - DRIVER( mhavoc2 ) /* 136025 (c) 1983 */ - DRIVER( mhavocp ) /* 136025 (c) 1983 */ - DRIVER( mhavocrv ) /* (hack) */ - DRIVER( alphaone ) /* (proto) (c) 1983 */ - DRIVER( alphaonea ) /* (proto) (c) 1983 */ - DRIVER( esb ) /* 136031 (c) 1985 */ - DRIVER( tomcat ) /* (proto) (c) 1985 */ - - /* Atari "Centipede hardware" games */ - DRIVER( warlords ) /* 037153-037159 (c) 1980 */ - DRIVER( centiped ) /* 136001 (c) 1980 */ - DRIVER( centiped2 ) /* 136001 (c) 1980 */ - DRIVER( centtime ) /* 136001 (c) 1980 */ - DRIVER( centipdb ) /* (bootleg) */ - DRIVER( centipdd ) /* hack by Two Bit Score */ - DRIVER( caterplr ) /* (bootleg) */ - DRIVER( millpac ) /* Valadon */ - DRIVER( magworm ) /* (bootleg) */ - DRIVER( mazeinv ) /* (proto) (c) 1982 */ - DRIVER( milliped ) /* 136013 (c) 1982 */ - DRIVER( millipdd ) /* hack by Two Bit Score */ - DRIVER( qwak ) /* (proto) (c) 1982 */ - DRIVER( runaway ) /* (proto) (c) 1982 */ - DRIVER( bullsdrt ) /* (c) 1985 Shinkai */ - DRIVER( cmmb162 ) - - /* misc Atari games */ - DRIVER( tunhunt ) /* 136000 (c) 1979 */ - DRIVER( tunhuntc ) /* 136000 (c) 1981 */ /* licensed to / distributed by Centuri */ - DRIVER( liberatr ) /* 136012 (c) 1982 */ - DRIVER( liberatr2 ) /* 136012 (c) 1982 */ - DRIVER( foodf ) /* 136020 (c) 1982 */ /* made by Gencomp */ - DRIVER( foodf2 ) /* 136020 (c) 1982 */ /* made by Gencomp */ - DRIVER( foodfc ) /* 136020 (c) 1982 */ /* made by Gencomp */ - DRIVER( ccastles ) /* 136022 (c) 1983 */ - DRIVER( ccastlesg ) /* 136022 (c) 1983 */ - DRIVER( ccastlesp ) /* 136022 (c) 1983 */ - DRIVER( ccastlesf ) /* 136022 (c) 1983 */ - DRIVER( ccastles3 ) /* 136022 (c) 1983 */ - DRIVER( ccastles2 ) /* 136022 (c) 1983 */ - DRIVER( ccastles1 ) /* 136022 (c) 1983 */ - DRIVER( ccastlesj ) /* 136022 (c) 1983 */ - DRIVER( cloak ) /* 136023 (c) 1983 */ - DRIVER( cloaksp ) /* 136023 (c) 1983 */ - DRIVER( cloakfr ) /* 136023 (c) 1983 */ - DRIVER( cloakgr ) /* 136023 (c) 1983 */ - DRIVER( agentx4 ) /* 136023 (c) 1983 */ - DRIVER( agentx3 ) /* 136023 (c) 1983 */ - DRIVER( agentx2 ) /* 136023 (c) 1983 */ - DRIVER( agentx1 ) /* 136023 (c) 1983 */ - DRIVER( cloud9 ) /* (proto) (c) 1983 */ - DRIVER( firebeas ) /* (proto) (c) 1983 */ - DRIVER( barbball ) /* (proto) (c) 1983 */ - DRIVER( firefox ) /* 136026 (c) 1984 */ - DRIVER( firefoxa ) /* 136026 (c) 1984 */ - DRIVER( jedi ) /* 136030 (c) 1984 */ - - /* Atari System 1 games */ - DRIVER( atarisy1 ) /* 136033 (c) 1984 */ - DRIVER( peterpak ) /* 136028 (c) 1984 */ - /* Marble Madness */ - DRIVER( marble ) /* 136033 (c) 1984 */ - DRIVER( marble2 ) /* 136033 (c) 1984 */ - DRIVER( marble3 ) /* 136033 (c) 1984 */ - DRIVER( marble4 ) /* 136033 (c) 1984 */ - DRIVER( marble5 ) /* 136033 (c) 1984 (LSI Cartridge) */ - /* Indiana Jones and the Temple of Doom */ - DRIVER( indytemp ) /* 136036 (c) 1985 */ - DRIVER( indytemp2 ) /* 136036 (c) 1985 */ - DRIVER( indytemp3 ) /* 136036 (c) 1985 */ - DRIVER( indytemp4 ) /* 136036 (c) 1985 */ - DRIVER( indytempd ) /* 136036 (c) 1985 */ - DRIVER( indytempc ) /* 136036 (c) 1985 */ - /* Road Runner */ - DRIVER( roadrunn ) /* 136040 (c) 1985 */ - DRIVER( roadrunn2 ) /* 136040 (c) 1985 */ - DRIVER( roadrunn1 ) /* 136040 (c) 1985 */ - /* Road Blasters */ - DRIVER( roadblst ) /* 136048 (c) 1986, 1987 */ - DRIVER( roadblstg ) /* 136048 (c) 1986, 1987 */ - DRIVER( roadblst3 ) /* 136048 (c) 1986, 1987 */ - DRIVER( roadblstg2 )/* 136048 (c) 1986, 1987 */ - DRIVER( roadblst2 ) /* 136048 (c) 1986, 1987 */ - DRIVER( roadblstg1 )/* 136048 (c) 1986, 1987 */ - DRIVER( roadblst1 ) /* 136048 (c) 1986, 1987 */ - DRIVER( roadblstc ) /* 136048 (c) 1986, 1987 */ - DRIVER( roadblstcg )/* 136048 (c) 1986, 1987 */ - DRIVER( roadblstc1 )/* 136048 (c) 1986, 1987 */ - - /* Atari System 2 games */ - /* Paperboy */ - DRIVER( paperboy ) /* 136034 (c) 1984 */ - DRIVER( paperboyr2 )/* 136034 (c) 1984 */ - DRIVER( paperboyr1 )/* 136034 (c) 1984 */ - /* Super Sprint */ - DRIVER( ssprint ) /* 136042 (c) 1986 */ - DRIVER( ssprint3 ) /* 136042 (c) 1986 */ - DRIVER( ssprint1 ) /* 136042 (c) 1986 */ - DRIVER( ssprintg ) /* 136042 (c) 1986 */ - DRIVER( ssprintg1 ) /* 136042 (c) 1986 */ - DRIVER( ssprintf ) /* 136042 (c) 1986 */ - DRIVER( ssprints ) /* 136042 (c) 1986 */ - /* Championship Sprint */ - DRIVER( csprint ) /* 136045 (c) 1986 */ - DRIVER( csprint2 ) /* 136045 (c) 1986 */ - DRIVER( csprint1 ) /* 136045 (c) 1986 */ - DRIVER( csprintg ) /* 136045 (c) 1986 */ - DRIVER( csprintg1 ) /* 136045 (c) 1986 */ - DRIVER( csprintf ) /* 136045 (c) 1986 */ - DRIVER( csprints ) /* 136045 (c) 1986 */ - DRIVER( csprints1 ) /* 136045 (c) 1986 */ - /* 720 Degrees */ - DRIVER( 720 ) /* 136047 (c) 1986 */ - DRIVER( 720r3 ) /* 136047 (c) 1986 */ - DRIVER( 720r2 ) /* 136047 (c) 1986 */ - DRIVER( 720r1 ) /* 136047 (c) 1986 */ - DRIVER( 720g ) /* 136047 (c) 1986 */ - DRIVER( 720gr1 ) /* 136047 (c) 1986 */ - /* APB. */ - DRIVER( apb ) /* 136051 (c) 1987 */ - DRIVER( apb6 ) /* 136051 (c) 1987 */ - DRIVER( apb5 ) /* 136051 (c) 1987 */ - DRIVER( apb4 ) /* 136051 (c) 1987 */ - DRIVER( apb3 ) /* 136051 (c) 1987 */ - DRIVER( apb2 ) /* 136051 (c) 1987 */ - DRIVER( apb1 ) /* 136051 (c) 1987 */ - DRIVER( apbg ) /* 136051 (c) 1987 */ - DRIVER( apbf ) /* 136051 (c) 1987 */ - - /* Atari polygon games */ - DRIVER( irobot ) /* 136029 (c) 1983 */ - /* Atari System IV */ - DRIVER( laststar ) /* (proto) (c) 1984 */ - DRIVER( airrace ) /* (proto) (c) 1985 */ - /* Hard Drivin' */ - DRIVER( harddriv ) /* 136052 (c) 1988 */ - DRIVER( harddrivb ) /* 136052 (c) 1988 */ - DRIVER( harddrivg ) /* 136052 (c) 1988 */ - DRIVER( harddrivj ) /* 136052 (c) 1988 */ - DRIVER( harddrivb6 )/* 136052 (c) 1988 */ - DRIVER( harddrivj6 )/* 136052 (c) 1988 */ - DRIVER( harddrivb5 )/* 136052 (c) 1988 */ - DRIVER( harddrivg4 )/* 136052 (c) 1988 */ - DRIVER( harddriv3 ) /* 136052 (c) 1988 */ - DRIVER( harddriv2 ) /* 136052 (c) 1988 */ - DRIVER( harddriv1 ) /* 136052 (c) 1988 */ - /* Hard Drivin' Compact */ - DRIVER( harddrivc ) /* 136068 (c) 1990 */ - DRIVER( harddrivcg )/* 136068 (c) 1990 */ - DRIVER( harddrivcb )/* 136068 (c) 1990 */ - DRIVER( harddrivc1 )/* 136068 (c) 1990 */ - /* Stun Runner */ - DRIVER( stunrun ) /* 136070 (c) 1989 */ - DRIVER( stunrunj ) /* 136070 (c) 1989 */ - DRIVER( stunrun5 ) /* 136070 (c) 1989 */ - DRIVER( stunrune ) /* 136070 (c) 1989 */ - DRIVER( stunrun4 ) /* 136070 (c) 1989 */ - DRIVER( stunrun3 ) /* 136070 (c) 1989 */ - DRIVER( stunrun3e ) /* 136070 (c) 1989 */ - DRIVER( stunrun2 ) /* 136070 (c) 1989 */ - DRIVER( stunrun2e ) /* 136070 (c) 1989 */ - DRIVER( stunrun0 ) /* 136070 (c) 1989 */ - DRIVER( stunrunp ) /* (proto) (c) 1989 */ - /* Race Drivin' */ - DRIVER( racedriv ) /* 136077 (c) 1990 */ - DRIVER( racedrivb ) /* 136077 (c) 1990 */ - DRIVER( racedrivg ) /* 136077 (c) 1990 */ - DRIVER( racedriv4 ) /* 136077 (c) 1990 */ - DRIVER( racedrivb4 )/* 136077 (c) 1990 */ - DRIVER( racedrivg4 )/* 136077 (c) 1990 */ - DRIVER( racedriv3 ) /* 136077 (c) 1990 */ - DRIVER( racedriv2 ) /* 136077 (c) 1990 */ - DRIVER( racedriv1 ) /* 136077 (c) 1990 */ - DRIVER( racedrivb1 )/* 136077 (c) 1990 */ - DRIVER( racedrivg1 )/* 136077 (c) 1990 */ - /* Race Drivin' Compact */ - DRIVER( racedrivc ) /* 136077 (c) 1990 */ - DRIVER( racedrivcb ) /* 136077 (c) 1990 */ - DRIVER( racedrivcg ) /* 136077 (c) 1990 */ - DRIVER( racedrivc4 ) /* 136077 (c) 1990 */ - DRIVER( racedrivcb4 ) /* 136077 (c) 1990 */ - DRIVER( racedrivcg4 ) /* 136077 (c) 1990 */ - DRIVER( racedrivc2 ) /* 136077 (c) 1990 */ - DRIVER( racedrivc1 ) /* 136077 (c) 1990 */ - /* Race Drivin' Panorama */ - DRIVER( racedrivpan ) /* 136077 (c) 1990 */ - /* 136086 - BMX Heat (proto) */ - /* Steel Talons */ - DRIVER( steeltal ) /* 136087 (c) 1990 */ - DRIVER( steeltalg ) /* 136087 (c) 1990 */ - DRIVER( steeltal1 ) /* 136087 (c) 1990 */ - DRIVER( steeltalp ) /* 136087 (c) 1990 */ - /* 136088 - Race Drivin' Panorama */ - /* Street Drivin' */ - DRIVER( strtdriv ) /* 136091 (proto) */ - /* Hard Drivin' Airbourne */ - DRIVER( hdrivair ) /* 136098 (proto) */ - DRIVER( hdrivairp ) /* 136098 (proto) */ - - /* later Atari games */ - - /* Gauntlet Hardware */ - /* Gauntlet */ - DRIVER( gauntlet ) /* 136037 (c) 1985 */ - DRIVER( gauntlets ) /* 136037 (c) 1985 */ - DRIVER( gauntletj ) /* 136037 (c) 1985 */ - DRIVER( gauntletg ) /* 136037 (c) 1985 */ - DRIVER( gauntletj12 ) /* 136037 (c) 1985 */ - DRIVER( gauntletr9 ) /* 136037 (c) 1985 */ - DRIVER( gauntletgr8 ) /* 136037 (c) 1985 */ - DRIVER( gauntletr7 ) /* 136037 (c) 1985 */ - DRIVER( gauntletgr6 ) /* 136037 (c) 1985 */ - DRIVER( gauntletr5 ) /* 136037 (c) 1985 */ - DRIVER( gauntletr4 ) /* 136037 (c) 1985 */ - DRIVER( gauntletgr3 ) /* 136037 (c) 1985 */ - DRIVER( gauntletr2 ) /* 136037 (c) 1985 */ - DRIVER( gauntletr1 ) /* 136037 (c) 1985 */ - /* Gauntlet - 2 Player */ - DRIVER( gauntlet2p ) /* 136037 (c) 1985 */ - DRIVER( gauntlet2pj ) /* 136037 (c) 1985 */ - DRIVER( gauntlet2pg ) /* 136037 (c) 1985 */ - DRIVER( gauntlet2pr3 ) /* 136037 (c) 1985 */ - DRIVER( gauntlet2pj2 ) /* 136037 (c) 1985 */ - DRIVER( gauntlet2pg1 ) /* 136037 (c) 1985 */ - /* Gauntlet 2 */ - DRIVER( gaunt2 ) /* 136043 (c) 1986 */ - DRIVER( gaunt2g ) /* 136043 (c) 1986 */ - /* Gauntlet 2 - 2 Player */ - DRIVER( gaunt22p ) /* 136043 (c) 1986 */ - DRIVER( gaunt22p1 ) /* 136043 (c) 1986 */ - DRIVER( gaunt22pg ) /* 136043 (c) 1986 */ - /* Vindicators Part II */ - DRIVER( vindctr2 ) /* 136059 (c) 1988 */ - DRIVER( vindctr2r2 ) /* 136059 (c) 1988 */ - DRIVER( vindctr2r1 ) /* 136059 (c) 1988 */ - - /* Other Hardware */ - - /* Xybots */ - DRIVER( xybots ) /* 136054 (c) 1987 */ - DRIVER( xybotsg ) /* 136054 (c) 1987 */ - DRIVER( xybotsf ) /* 136054 (c) 1987 */ - DRIVER( xybots1 ) /* 136054 (c) 1987 */ - DRIVER( xybots0 ) /* 136054 (c) 1987 */ - /* Blasteroids */ - DRIVER( blstroid ) /* 136057 (c) 1987 */ - DRIVER( blstroid3 ) /* 136057 (c) 1987 */ - DRIVER( blstroid2 ) /* 136057 (c) 1987 */ - DRIVER( blstroidg ) /* 136057 (c) 1987 */ - DRIVER( blstroidh ) /* (proto) (c) 1987 */ - /* Vindicators */ - DRIVER( vindictr ) /* 136059 (c) 1988 */ - DRIVER( vindictre ) /* 136059 (c) 1988 */ - DRIVER( vindictrg ) /* 136059 (c) 1988 */ - DRIVER( vindictre4 )/* 136059 (c) 1988 */ - DRIVER( vindictr4 ) /* 136059 (c) 1988 */ - DRIVER( vindictre3 )/* 136059 (c) 1988 */ - DRIVER( vindictr2 ) /* 136059 (c) 1988 */ - DRIVER( vindictr1 ) /* 136059 (c) 1988 */ - /* Toobin */ - DRIVER( toobin ) /* 136061 (c) 1988 */ - DRIVER( toobine ) /* 136061 (c) 1988 */ - DRIVER( toobing ) /* 136061 (c) 1988 */ - DRIVER( toobin2 ) /* 136061 (c) 1988 */ - DRIVER( toobin2e ) /* 136061 (c) 1988 */ - DRIVER( toobin1 ) /* 136061 (c) 1988 */ - /* Cyberball */ - DRIVER( cyberbal ) /* 136064 (c) 1989 */ - DRIVER( cyberbal2 ) /* 136064 (c) 1989 */ - DRIVER( cyberbalp ) /* 136064 (c) 1989 */ - /* Atari Tetris */ - DRIVER( atetrisc ) /* 136066 (c) 1989 */ - DRIVER( atetrisc2 ) /* 136066 (c) 1989 */ - DRIVER( atetris ) /* 136066 (c) 1988 */ - DRIVER( atetrisa ) /* 136066 (c) 1988 */ - DRIVER( atetrisb ) /* (bootleg) */ - DRIVER( atetrisb2 ) /* (bootleg) */ - /* Escape from the Planet of Robot Monsters */ - DRIVER( eprom ) /* 136069 (c) 1989 */ - DRIVER( eprom2 ) /* 136069 (c) 1989 */ - DRIVER( guts ) /* prototype */ - /* Cyberball 2 Player */ - DRIVER( cyberbal2p ) /* 136071 (c) 1989 */ - DRIVER( cyberbal2p3 ) /* 136071 (c) 1989 */ - DRIVER( cyberbal2p2 ) /* 136071 (c) 1989 */ - DRIVER( cyberbal2p1 ) /* 136071 (c) 1989 */ - /* Skull and Crossbones */ - DRIVER( skullxbo ) /* 136072 (c) 1989 */ - DRIVER( skullxbo4 ) /* 136072 (c) 1989 */ - DRIVER( skullxbo3 ) /* 136072 (c) 1989 */ - DRIVER( skullxbo2 ) /* 136072 (c) 1989 */ - DRIVER( skullxbo1 ) /* 136072 (c) 1989 */ - /* Cyberball Tournament */ - DRIVER( cyberbalt ) /* 136073 (c) 1989 */ - DRIVER( cyberbalt1 )/* 136073 (c) 1989 */ - - DRIVER( badlands ) /* 136074 (c) 1989 */ - DRIVER( badlandsb ) /* bootleg */ - DRIVER( klax ) /* 136075 (c) 1989 */ - DRIVER( klax2 ) /* 136075 (c) 1989 */ - DRIVER( klax3 ) /* 136075 (c) 1989 */ - DRIVER( klaxj ) /* 136075 (c) 1989 (Japan) */ - DRIVER( klaxd ) /* 136075 (c) 1989 (Germany) */ - DRIVER( klaxp1 ) /* prototype */ - DRIVER( klaxp2 ) /* prototype */ - DRIVER( thunderj ) /* 136076 (c) 1990 */ - - DRIVER( hydra ) /* 136079 (c) 1990 */ - DRIVER( hydrap ) /* (proto) (c) 1990 */ - DRIVER( hydrap2 ) /* (proto) (c) 1990 */ - DRIVER( pitfight ) /* 136081 (c) 1990 */ - DRIVER( pitfight7 ) /* 136081 (c) 1990 */ - DRIVER( pitfight6 ) /* 136081 (c) 1990 */ - DRIVER( pitfight5 ) /* 136081 (c) 1990 */ - DRIVER( pitfight4 ) /* 136081 (c) 1990 */ - DRIVER( pitfight3 ) /* 136081 (c) 1990 */ - DRIVER( pitfightj ) /* Japan */ - DRIVER( pitfightb ) /* bootleg */ - DRIVER( rampart ) /* 136082 (c) 1990 */ - DRIVER( rampart2p ) /* 136082 (c) 1990 */ - DRIVER( rampartj ) /* 136082 (c) 1990 (Japan) */ - DRIVER( shuuz ) /* 136083 (c) 1990 */ - DRIVER( shuuz2 ) /* 136083 (c) 1990 */ - /* 136084 - Marble Man (proto) */ - DRIVER( batman ) /* 136085 (c) 1991 */ - DRIVER( roadriot ) /* 136089 (c) 1991 */ - DRIVER( roadrioto ) /* 136089 (c) 1991 */ - DRIVER( offtwall ) /* 136090 (c) 1991 */ - DRIVER( offtwallc ) /* 136090 (c) 1991 */ - DRIVER( guardian ) /* 136092 (c) 1992 */ - DRIVER( relief ) /* 136093 (c) 1992 */ - DRIVER( relief2 ) /* 136093 (c) 1992 */ - DRIVER( relief3 ) /* 136093 (c) 1992 */ - DRIVER( arcadecl ) /* (proto) (c) 1992 */ - DRIVER( sparkz ) /* (proto) (c) 1992 */ - DRIVER( motofren ) /* 136094 (c) 1992 */ - DRIVER( motofrenmd ) /* 136094 (c) 1992 */ - DRIVER( motofrenft ) /* 136094 (c) 1992 */ - DRIVER( motofrenmf ) /* 136094 (c) 1992 */ - DRIVER( spclords ) /* 136095 (c) 1992 */ - DRIVER( spclordsb ) /* 136095 (c) 1992 */ - DRIVER( spclordsa ) /* 136095 (c) 1992 */ - DRIVER( spclordsg ) /* 136095 (c) 1992 */ - DRIVER( rrreveng ) /* ?? (c) 1993 */ - DRIVER( rrrevenga ) /* ?? (c) 1993 */ - DRIVER( rrrevengb ) /* ?? (c) 1993 */ - DRIVER( beathead ) /* (proto) (c) 1993 */ - DRIVER( tmek ) /* 136100 (c) 1994 */ - DRIVER( tmek51p ) /* 136100 (c) 1994 */ - DRIVER( tmek45 ) /* 136100 (c) 1994 */ - DRIVER( tmek44 ) /* 136100 (c) 1994 */ - DRIVER( tmek20 ) /* 136100 (c) 1994 */ - DRIVER( primrage ) /* 136102 (c) 1994 */ - DRIVER( primrage20 )/* 136102 (c) 1994 */ - DRIVER( metalmx ) /* 136103? (c) 1994 */ - DRIVER( area51 ) /* 136105 (c) 1995 */ - DRIVER( area51t ) /* 136105 (c) 1995 */ - DRIVER( area51a ) /* 136105 (c) 1995 */ - DRIVER( fishfren ) /* (proto) (c) 1995 */ - DRIVER( freezeat ) /* (proto) (c) 1996 */ - DRIVER( freezeatjp ) /* (proto) (c) 1996 */ - DRIVER( freezeat2 ) /* (proto) (c) 1996 */ - DRIVER( freezeat3 ) /* (proto) (c) 1996 */ - DRIVER( freezeat4 ) /* (proto) (c) 1996 */ - DRIVER( freezeat5 ) /* (proto) (c) 1996 */ - DRIVER( freezeat6 ) /* (proto) (c) 1996 */ - DRIVER( area51mx ) /* 136105 (c) 1998 */ - DRIVER( a51mxr3k ) /* ?? (c) 1998 */ - DRIVER( maxforce ) /* ?? (c) 1996 */ - DRIVER( maxf_102 ) /* ?? (c) 1996 */ - DRIVER( maxf_ng ) /* ?? (c) 1996 */ - DRIVER( vcircle ) /* (proto) (c) 1996 */ - DRIVER( a51site4 ) /* ?? (c) 1998 */ - - /* SNK / Rock-ola games */ - DRIVER( sasuke ) /* [1980] Shin Nihon Kikaku (SNK) */ - DRIVER( satansat ) /* (c) 1981 SNK */ - DRIVER( satansata ) /* (c) 1981 SNK */ - DRIVER( zarzon ) /* (c) 1981 Taito, gameplay says SNK */ - DRIVER( vanguard ) /* (c) 1981 SNK */ - DRIVER( vanguardc ) /* (c) 1981 SNK + Centuri */ - DRIVER( vanguardj ) /* (c) 1981 SNK */ - DRIVER( fantasy ) /* (c) 1981 SNK */ - DRIVER( fantasyu ) /* (c) 1981 Rock-Ola */ - DRIVER( fantasyj ) /* (c) 1981 SNK */ - DRIVER( pballoon ) /* (c) 1982 SNK */ - DRIVER( pballoonr ) /* (c) 1982 SNK (Rock-Ola license) */ - DRIVER( nibbler ) /* (c) 1982 Rock-ola */ - DRIVER( nibblera ) /* (c) 1982 Rock-ola */ - DRIVER( nibblerb ) /* (c) 1982 Rock-ola */ - DRIVER( nibblero ) /* (c) 1982 Olympia */ - - /* later SNK games, each game can be identified by PCB code and ROM - code, the ROM code is the same between versions, and usually based - upon the Japanese title. */ - DRIVER( lasso ) /* 'WM' (c) 1982 */ - DRIVER( chameleo ) /* (c) 1983 Jaleco */ - DRIVER( wwjgtin ) /* (c) 1984 Jaleco / Casio */ - DRIVER( photof ) /* (c) 1984 Jaleco / Casio */ - DRIVER( pinbo ) /* (c) 1984 Jaleco */ - DRIVER( pinboa ) /* (c) 1984 Jaleco */ - DRIVER( pinbos ) /* (c) 1985 Strike */ - DRIVER( joyfulr ) /* A2001 (c) 1983 */ - DRIVER( mnchmobl ) /* A2001 (c) 1983 + Centuri license */ - DRIVER( marvins ) /* A2003 (c) 1983 */ - DRIVER( madcrash ) /* A2005 (c) 1984 */ - DRIVER( madcrush ) /* A2005 (c) 1984 */ - DRIVER( vangrd2 ) /* A2005 (c) 1984 */ - DRIVER( mainsnk ) /* (c) 1984 */ - DRIVER( canvas ) /* A3008 (c) 1985 */ - DRIVER( jcross ) /* A3006 (c) 1984 */ - DRIVER( sgladiat ) /* A3006 (c) 1984 */ - DRIVER( hal21 ) /* A4031 (c) 1985 */ - DRIVER( hal21j ) /* (c) 1985 (Japan) */ - DRIVER( aso ) /* (c) 1985 */ - DRIVER( alphamis ) /* (c) 1985 */ - DRIVER( arian ) /* (c) 1985 */ - DRIVER( tnk3 ) /* A5001 (c) 1985 */ - DRIVER( tnk3j ) /* A5001 (c) 1985 */ - DRIVER( athena ) /* 'UP' (c) 1986 */ - DRIVER( fitegolf ) /* 'GU' (c) 1988 */ - DRIVER( fitegolfu ) /* 'GU' (c) 1988 */ - DRIVER( countryc ) /* A7004 'CC' (c) 1988 */ - DRIVER( ikari ) /* A5004 'IW' (c) 1986 */ - DRIVER( ikaria ) /* A5004 'IW' (c) 1986 */ - DRIVER( ikarinc ) /* A5004 'IW' (c) 1986 */ - DRIVER( ikarijp ) /* A5004 'IW' (c) 1986 (Japan) */ - DRIVER( ikarijpb ) /* bootleg */ - DRIVER( victroad ) /* A6002 (c) 1986 */ - DRIVER( dogosoke ) /* A6002 (c) 1986 */ - DRIVER( dogosokb ) /* bootleg */ - DRIVER( gwar ) /* A7003 'GV' (c) 1987 */ - DRIVER( gwarj ) /* A7003 'GV' (c) 1987 (Japan) */ - DRIVER( gwara ) /* A7003 'GV' (c) 1987 */ - DRIVER( gwarb ) /* bootleg */ - DRIVER( bermudat ) /* (c) 1987 */ - DRIVER( bermudatj ) /* (c) 1987 */ - DRIVER( bermudata ) /* A6004 'WW' (c) 1987 */ - DRIVER( worldwar ) /* A6004 'WW' (c) 1987 */ - DRIVER( psychos ) /* 'PS' (c) 1987 */ - DRIVER( psychosj ) /* 'PS' (c) 1987 (Japan) */ - DRIVER( chopper ) /* A7003 'KK' (c) 1988 */ - DRIVER( choppera ) /* A7003 'KK' (c) 1988 */ - DRIVER( chopperb ) /* A7003 'KK' (c) 1988 */ - DRIVER( legofair ) /* A7003 'KK' (c) 1988 */ - DRIVER( fsoccer ) /* A6006 'FS' (c) 1988 */ - DRIVER( fsoccerj ) /* A6006 'FS' (c) 1988 */ - DRIVER( fsoccerb ) /* (c) 1988 */ - DRIVER( tdfever ) /* A6006 'TD' (c) 1987 */ - DRIVER( tdfeverj ) /* A6006 'TD' (c) 1987 */ - DRIVER( tdfever2 ) /* A6006 'TD'?(c) 1988 */ - DRIVER( ikari3 ) /* A7007 'IK3'(c) 1989 */ - DRIVER( ikari3nr ) /* A7007 'IK3'(c) 1989 */ - DRIVER( pow ) /* A7008 'DG' (c) 1988 */ - DRIVER( powj ) /* A7008 'DG' (c) 1988 */ - DRIVER( searchar ) /* A8007 'BH' (c) 1989 */ - DRIVER( searcharu ) /* A8007 'BH' (c) 1989 */ - DRIVER( searcharj ) /* A8007 'BH' (c) 1989 */ - DRIVER( streetsm ) /* A8007 'S2' (c) 1989 */ - DRIVER( streetsm1 ) /* A7008 'S2' (c) 1989 */ - DRIVER( streetsmw ) /* (c) 1989 */ - DRIVER( streetsmj ) /* A8007 'S2' (c) 1989 */ - DRIVER( prehisle ) /* A8003 'GT' (c) 1989 */ - DRIVER( prehisleu ) /* A8003 'GT' (c) 1989 */ - DRIVER( prehislek ) /* A8003 'GT' (c) 1989 */ - DRIVER( gensitou ) /* A8003 'GT' (c) 1989 */ - DRIVER( mechatt ) /* A8002 'MA' (c) 1989 */ - DRIVER( mechattu ) /* A8002 'MA' (c) 1989 */ - DRIVER( bbusters ) /* A9003 'BB' (c) 1989 */ - DRIVER( bbustersu ) /* A9003 'BB' (c) 1989 */ - - /* Electrocoin on early SNK hardware */ - DRIVER( dmndrby ) /* G4001 'DD' (c) 1986 */ - DRIVER( dmndrbya ) /* G4001 'DD' (c) 1986 */ - - /* Neo Geo games */ - /* the four digits number is the game ID stored at address 0x0108 of the program ROM */ - /* info on prototypes taken from http://www.members.tripod.com/fresa/proto/puzzle.htm */ - DRIVER( neogeo ) - DRIVER( nam1975 ) /* 0001 (c) 1990 SNK */ - DRIVER( bstars ) /* 0002 (c) 1990 SNK */ - DRIVER( bstarsh ) /* 0002 (c) 1990 SNK */ - DRIVER( tpgolf ) /* 0003 (c) 1990 SNK */ - DRIVER( mahretsu ) /* 0004 (c) 1990 SNK */ - DRIVER( maglord ) /* 0005 (c) 1990 Alpha Denshi Co. */ - DRIVER( maglordh ) /* 0005 (c) 1990 Alpha Denshi Co. */ - DRIVER( ridhero ) /* 0006 (c) 1990 SNK */ - DRIVER( ridheroh ) /* 0006 (c) 1990 SNK */ - DRIVER( alpham2 ) /* 0007 (c) 1991 SNK */ - /* 0008 Sunshine (prototype) 1990 SNK */ - DRIVER( ncombat ) /* 0009 (c) 1990 Alpha Denshi Co. */ - DRIVER( ncombath ) /* 0009 (c) 1990 Alpha Denshi Co. */ - DRIVER( cyberlip ) /* 0010 (c) 1990 SNK */ - DRIVER( superspy ) /* 0011 (c) 1990 SNK */ - /* 0012 */ - /* 0013 */ - DRIVER( mutnat ) /* 0014 (c) 1992 SNK */ - /* 0015 */ - DRIVER( kotm ) /* 0016 (c) 1991 SNK */ - DRIVER( kotmh ) /* 0016 (c) 1991 SNK */ - DRIVER( sengoku ) /* 0017 (c) 1991 SNK */ - DRIVER( sengokuh ) /* 0017 (c) 1991 SNK */ - DRIVER( burningf ) /* 0018 (c) 1991 SNK */ - DRIVER( burningfh ) /* 0018 (c) 1991 SNK */ - DRIVER( lbowling ) /* 0019 (c) 1990 SNK */ - DRIVER( gpilots ) /* 0020 (c) 1991 SNK */ - DRIVER( gpilotsh ) /* 0020 (c) 1991 SNK */ - DRIVER( joyjoy ) /* 0021 (c) 1990 SNK */ - DRIVER( bjourney ) /* 0022 (c) 1990 Alpha Denshi Co. */ - DRIVER( quizdais ) /* 0023 (c) 1991 SNK */ - DRIVER( quizdaisk ) /* 0123 (c) 1991 SNK */ - DRIVER( lresort ) /* 0024 (c) 1992 SNK */ - DRIVER( eightman ) /* 0025 (c) 1991 SNK / Pallas */ - /* 0026 Fun Fun Brothers (prototype) 1991 Alpha */ - DRIVER( minasan ) /* 0027 (c) 1990 Monolith Corp. */ - /* 0028 Dunk Star (prototype) Sammy */ - DRIVER( legendos ) /* 0029 (c) 1991 SNK */ - DRIVER( 2020bb ) /* 0030 (c) 1991 SNK / Pallas */ - DRIVER( 2020bba ) /* 0030 (c) 1991 SNK / Pallas */ - DRIVER( 2020bbh ) /* 0030 (c) 1991 SNK / Pallas */ - DRIVER( socbrawl ) /* 0031 (c) 1991 SNK */ - DRIVER( socbrawlh ) /* 0031 (c) 1991 SNK */ - DRIVER( roboarmy ) /* 0032 (c) 1991 SNK */ - DRIVER( fatfury1 ) /* 0033 (c) 1991 SNK */ - DRIVER( fbfrenzy ) /* 0034 (c) 1992 SNK */ - /* 0035 Mystic Wand (prototype) 1991 Alpha */ - DRIVER( bakatono ) /* 0036 (c) 1991 Monolith Corp. */ - DRIVER( crsword ) /* 0037 (c) 1991 Alpha Denshi Co. */ - DRIVER( trally ) /* 0038 (c) 1991 Alpha Denshi Co. */ - DRIVER( kotm2 ) /* 0039 (c) 1992 SNK */ - DRIVER( sengoku2 ) /* 0040 (c) 1993 SNK */ - DRIVER( bstars2 ) /* 0041 (c) 1992 SNK */ - DRIVER( quizdai2 ) /* 0042 (c) 1992 SNK */ - DRIVER( 3countb ) /* 0043 (c) 1993 SNK */ - DRIVER( aof ) /* 0044 (c) 1992 SNK */ - DRIVER( samsho ) /* 0045 (c) 1993 SNK */ - DRIVER( samshoh ) /* 0045 (c) 1993 SNK */ - DRIVER( tophuntr ) /* 0046 (c) 1994 SNK */ - DRIVER( tophuntrh ) /* 0046 (c) 1994 SNK */ - DRIVER( fatfury2 ) /* 0047 (c) 1992 SNK */ - DRIVER( janshin ) /* 0048 (c) 1994 Aicom */ - DRIVER( androdun ) /* 0049 (c) 1992 Visco */ - DRIVER( ncommand ) /* 0050 (c) 1992 Alpha Denshi Co. */ - DRIVER( viewpoin ) /* 0051 (c) 1992 Sammy */ - DRIVER( ssideki ) /* 0052 (c) 1992 SNK */ - DRIVER( wh1 ) /* 0053 (c) 1992 Alpha Denshi Co. */ - DRIVER( wh1h ) /* 0053 (c) 1992 Alpha Denshi Co. */ - DRIVER( wh1ha ) /* 0053 (c) 1992 Alpha Denshi Co. */ - /* 0054 Crossed Swords 2 (CD only? not confirmed, MVS might exist) */ - DRIVER( kof94 ) /* 0055 (c) 1994 SNK */ - DRIVER( aof2 ) /* 0056 (c) 1994 SNK */ - DRIVER( aof2a ) /* 0056 (c) 1994 SNK */ - DRIVER( wh2 ) /* 0057 (c) 1993 ADK */ - DRIVER( fatfursp ) /* 0058 (c) 1993 SNK */ - DRIVER( fatfurspa ) /* 0058 (c) 1993 SNK */ - DRIVER( savagere ) /* 0059 (c) 1995 SNK */ - DRIVER( fightfev ) /* 0060 (c) 1994 Viccom */ - DRIVER( fightfeva ) /* 0060 (c) 1994 Viccom */ - DRIVER( ssideki2 ) /* 0061 (c) 1994 SNK */ - DRIVER( spinmast ) /* 0062 (c) 1993 Data East Corporation */ - DRIVER( samsho2 ) /* 0063 (c) 1994 SNK */ - DRIVER( samsho2k ) /* 0063 (c) 1994 SNK (Korean hack) */ - DRIVER( wh2j ) /* 0064 (c) 1994 ADK / SNK */ - DRIVER( wjammers ) /* 0065 (c) 1994 Data East Corporation */ - DRIVER( karnovr ) /* 0066 (c) 1994 Data East Corporation */ - DRIVER( gururin ) /* 0067 (c) 1994 Face */ - DRIVER( pspikes2 ) /* 0068 (c) 1994 Video System Co. */ - /* Super Volley '94 was once released in Mar.1994, and recalled. Then released as Power Spikes 2 (with some tweaks). */ - DRIVER( fatfury3 ) /* 0069 (c) 1995 SNK */ - DRIVER( zupapa ) /* 0070 Zupapa - released in 2001, 1994 prototype probably exists */ - /* 0071 Bang Bang Busters (prototype) 1994 Visco */ - /* 0072 Last Odyssey Pinball Fantasia (prototype) 1995 Monolith */ - DRIVER( panicbom ) /* 0073 (c) 1994 Eighting / Hudson */ - DRIVER( aodk ) /* 0074 (c) 1994 ADK / SNK */ - DRIVER( sonicwi2 ) /* 0075 (c) 1994 Video System Co. */ - DRIVER( zedblade ) /* 0076 (c) 1994 NMK */ - /* 0077 The Warlocks of the Fates (prototype) 1995 Astec */ - DRIVER( galaxyfg ) /* 0078 (c) 1995 Sunsoft */ - DRIVER( strhoop ) /* 0079 (c) 1994 Data East Corporation */ - DRIVER( quizkof ) /* 0080 (c) 1995 Saurus */ - DRIVER( quizkofk ) /* 0080 (c) 1995 Saurus */ - DRIVER( ssideki3 ) /* 0081 (c) 1995 SNK */ - DRIVER( doubledr ) /* 0082 (c) 1995 Technos */ - DRIVER( pbobblen ) /* 0083 (c) 1994 Taito */ - DRIVER( pbobblenb ) /* bootleg */ - DRIVER( kof95 ) /* 0084 (c) 1995 SNK */ - DRIVER( kof95h ) /* 0084 (c) 1995 SNK */ - /* 0085 Shinsetsu Samurai Spirits Bushidoretsuden / Samurai Shodown RPG (CD only) */ - DRIVER( tws96 ) /* 0086 (c) 1996 Tecmo */ - DRIVER( samsho3 ) /* 0087 (c) 1995 SNK */ - DRIVER( samsho3h ) /* 0087 (c) 1995 SNK */ - DRIVER( fswords ) /* 0187 Korean hack of samsho3 */ - DRIVER( stakwin ) /* 0088 (c) 1995 Saurus */ - DRIVER( pulstar ) /* 0089 (c) 1995 Aicom */ - DRIVER( whp ) /* 0090 (c) 1995 ADK / SNK */ - /* 0091 */ - DRIVER( kabukikl ) /* 0092 (c) 1995 Hudson */ - DRIVER( neobombe ) /* 0093 (c) 1997 Hudson */ - DRIVER( gowcaizr ) /* 0094 (c) 1995 Technos */ - DRIVER( rbff1 ) /* 0095 (c) 1995 SNK */ - DRIVER( rbff1a ) /* 0095 (c) 1995 SNK */ - DRIVER( aof3 ) /* 0096 (c) 1996 SNK */ - DRIVER( aof3k ) /* 0196 Censored Korean release of aof3 */ - DRIVER( sonicwi3 ) /* 0097 (c) 1995 Video System Co. */ - /* 0098 Idol Mahjong - final romance 2 (CD only? not confirmed, MVS might exist) */ - /* 0099 Neo Pool Masters */ - DRIVER( turfmast ) /* 0200 (c) 1996 Nazca */ - DRIVER( mslug ) /* 0201 (c) 1996 Nazca */ - DRIVER( puzzledp ) /* 0202 (c) 1995 Taito (Visco license) */ - DRIVER( mosyougi ) /* 0203 (c) 1995 ADK / SNK */ - /* 0204 QP (prototype) */ - /* 0205 Neo-Geo CD Special (CD only) */ - DRIVER( marukodq ) /* 0206 (c) 1995 Takara */ - DRIVER( neomrdo ) /* 0207 (c) 1996 Visco */ - DRIVER( sdodgeb ) /* 0208 (c) 1996 Technos */ - DRIVER( goalx3 ) /* 0209 (c) 1995 Visco */ - /* 0210 Karate Ninja Sho (prototype) 1995 Yumekobo */ - /* 0211 Oshidashi Zintrick (CD only? not confirmed, MVS might exist) 1996 SNK/ADK */ - DRIVER( zintrckb ) /* 0211 hack - this is not a genuine MVS proto, its a bootleg made from the CD version */ - DRIVER( overtop ) /* 0212 (c) 1996 ADK */ - DRIVER( neodrift ) /* 0213 (c) 1996 Visco */ - DRIVER( kof96 ) /* 0214 (c) 1996 SNK */ - DRIVER( kof96h ) /* 0214 (c) 1996 SNK */ - DRIVER( ssideki4 ) /* 0215 (c) 1996 SNK */ - DRIVER( kizuna ) /* 0216 (c) 1996 SNK */ - /* Fu-un Super Tag Battle Special Version (4-player battle available) exists */ - DRIVER( ninjamas ) /* 0217 (c) 1996 ADK / SNK */ - DRIVER( ragnagrd ) /* 0218 (c) 1996 Saurus */ - DRIVER( pgoal ) /* 0219 (c) 1996 Saurus */ - /* 0220 (c) 1996 Saurus - Choutetsu Brikin'ger - Iron clad (undumped protoype) */ - DRIVER( magdrop2 ) /* 0221 (c) 1996 Data East Corporation */ - DRIVER( samsho4 ) /* 0222 (c) 1996 SNK */ - DRIVER( samsho4k ) /* Censored Korean release of samsho4 */ - DRIVER( rbffspec ) /* 0223 (c) 1996 SNK */ - DRIVER( rbffspeck ) /* 0124 (c) 1996 SNK */ - DRIVER( twinspri ) /* 0224 (c) 1996 ADK */ - DRIVER( wakuwak7 ) /* 0225 (c) 1996 Sunsoft */ - /* 0226 Pair Pair Wars (prototype) 1996 Sunsoft? */ - DRIVER( stakwin2 ) /* 0227 (c) 1996 Saurus */ - DRIVER( ghostlop ) /* 0228 GhostLop (prototype) 1996? Data East */ - /* 0229 King of Fighters '96 CD Collection (CD only) */ - DRIVER( breakers ) /* 0230 (c) 1996 Visco */ - DRIVER( miexchng ) /* 0231 (c) 1997 Face */ - DRIVER( kof97 ) /* 0232 (c) 1997 SNK */ - DRIVER( kof97h ) /* 0232 (c) 1997 SNK */ - DRIVER( kof97pls ) /* bootleg of kof97 */ - DRIVER( kog ) /* bootleg of kof97 */ - DRIVER( magdrop3 ) /* 0233 (c) 1997 Data East Corporation */ - DRIVER( lastblad ) /* 0234 (c) 1997 SNK */ - DRIVER( lastbladh ) /* 0234 (c) 1997 SNK */ - DRIVER( lastsold ) /* 0196 Censored Korean release of lastblad */ - DRIVER( puzzldpr ) /* 0235 (c) 1997 Taito (Visco license) */ - DRIVER( irrmaze ) /* 0236 (c) 1997 SNK / Saurus */ - DRIVER( popbounc ) /* 0237 (c) 1997 Video System Co. */ - DRIVER( shocktro ) /* 0238 (c) 1997 Saurus */ - DRIVER( shocktroa ) /* 0238 (c) 1997 Saurus */ - DRIVER( blazstar ) /* 0239 (c) 1998 Yumekobo */ - DRIVER( rbff2 ) /* 0240 (c) 1998 SNK */ - DRIVER( rbff2h ) /* 0240 (c) 1998 SNK */ - DRIVER( rbff2k ) /* 0140 Censored Korean release of rbff2 */ - DRIVER( mslug2 ) /* 0241 (c) 1998 SNK */ - DRIVER( kof98 ) /* 0242 (c) 1998 SNK */ - DRIVER( kof98k ) /* 0242 (c) 1998 SNK */ - DRIVER( kof98ka ) /* 0242 (c) 1998 SNK */ - DRIVER( kof98h ) /* 0242 (c) 1998 SNK */ - DRIVER( lastbld2 ) /* 0243 (c) 1998 SNK */ - DRIVER( neocup98 ) /* 0244 (c) 1998 SNK */ - DRIVER( breakrev ) /* 0245 (c) 1998 Visco */ - DRIVER( shocktr2 ) /* 0246 (c) 1998 Saurus */ - DRIVER( lans2004 ) /* bootleg of shocktr2 */ - DRIVER( flipshot ) /* 0247 (c) 1998 Visco */ - DRIVER( pbobbl2n ) /* 0248 (c) 1999 Taito (SNK license) */ - DRIVER( ctomaday ) /* 0249 (c) 1999 Visco */ - DRIVER( mslugx ) /* 0250 (c) 1999 SNK */ - DRIVER( kof99 ) /* 0251 (c) 1999 SNK */ - DRIVER( kof99h ) /* 0251 (c) 1999 SNK */ - DRIVER( kof99e ) /* 0251 (c) 1999 SNK */ - DRIVER( kof99k ) /* 0152 (c) 1999 SNK */ - DRIVER( kof99p ) /* 0251 (c) 1999 SNK */ - DRIVER( ganryu ) /* 0252 (c) 1999 Visco */ - DRIVER( garou ) /* 0253 (c) 1999 SNK */ - DRIVER( garouo ) /* 0253 (c) 1999 SNK */ - DRIVER( garoup ) /* 0253 (c) 1999 SNK */ - DRIVER( garoubl ) /* bootleg */ - DRIVER( s1945p ) /* 0254 (c) 1999 Psikyo */ - DRIVER( preisle2 ) /* 0255 (c) 1999 Yumekobo */ - DRIVER( mslug3 ) /* 0256 (c) 2000 SNK */ - DRIVER( mslug3h ) /* 0256 (c) 2000 SNK */ - DRIVER( mslug3b6 ) /* bootleg */ - DRIVER( kof2000 ) /* 0257 (c) 2000 SNK */ - DRIVER( kof2000n ) /* 0257 (c) 2000 SNK */ - /* 0258 SNK vs. Capcom? */ - DRIVER( bangbead ) /* 0259 (c) 2000 Visco */ - DRIVER( nitd ) /* 0260 (c) 2000 Eleven / Gavaking */ - DRIVER( nitdbl ) /* bootleg */ - DRIVER( sengoku3 ) /* 0261 (c) 2001 Noise Factory / SNK */ - DRIVER( kof2001 ) /* 0262 (c) 2001 Eolith / SNK */ - DRIVER( kof2001h ) /* 0262 (c) 2001 Eolith / SNK */ - DRIVER( cthd2003 ) /* bootleg of kof2001 */ - DRIVER( ct2k3sp ) /* bootleg of kof2001 */ - DRIVER( ct2k3sa ) /* bootleg of kof2001 */ - DRIVER( mslug4 ) /* 0263 (c) 2002 Mega Enterprise */ - DRIVER( mslug4h ) /* 0263 (c) 2002 Mega Enterprise */ - DRIVER( ms4plus ) /* bootleg */ - DRIVER( rotd ) /* 0264 (c) 2002 Evoga */ - DRIVER( kof2002 ) /* 0265 (c) 2002 Eolith / Playmore */ - DRIVER( kof2002b ) /* bootleg */ - DRIVER( kf2k2pls ) /* bootleg */ - DRIVER( kf2k2pla ) /* bootleg */ - DRIVER( kf2k2mp ) /* bootleg */ - DRIVER( kf2k2mp2 ) /* bootleg */ - DRIVER( kof10th ) /* bootleg of kof2002 */ - DRIVER( kf2k5uni ) /* bootleg of kof2002 */ - DRIVER( kf10thep ) /* bootleg of kof2002 */ - DRIVER( kof2k4se ) /* bootleg of kof2002 */ - DRIVER( matrim ) /* 0266 (c) 2002 Atlus */ - DRIVER( matrimbl ) /* bootleg */ - DRIVER( pnyaa ) /* 0267 (c) 2003 Aiky / Taito */ - DRIVER( ms5pcb ) /* 0268 (c) 2003 Playmore */ - DRIVER( mslug5 ) /* 0268 (c) 2003 Playmore */ - DRIVER( mslug5h ) /* 0268 (c) 2003 Playmore */ - DRIVER( ms5plus ) /* bootleg */ - DRIVER( svcpcb ) /* 0269 (c) 2003 Playmore / Capcom - JAMMA PCB */ - DRIVER( svcpcba ) /* 0269 (c) 2003 Playmore / Capcom - JAMMA PCB */ - DRIVER( svc ) /* 0269 (c) 2003 Playmore / Capcom */ - DRIVER( svcboot ) /* bootleg */ - DRIVER( svcplus ) /* bootleg */ - DRIVER( svcplusa ) /* bootleg */ - DRIVER( svcsplus ) /* bootleg */ - DRIVER( samsho5 ) /* 0270 (c) 2003 Playmore */ - DRIVER( samsho5h ) /* 0270 (c) 2003 Playmore */ - DRIVER( samsho5b ) /* bootleg */ - DRIVER( kf2k3pcb ) /* 0271 (c) 2003 Playmore - JAMMA PCB */ - DRIVER( kof2003 ) /* 0271 (c) 2003 Playmore */ - DRIVER( kof2003h ) /* 0271 (c) 2003 Playmore */ - DRIVER( kf2k3bl ) /* bootleg */ - DRIVER( kf2k3bla ) /* bootleg */ - DRIVER( kf2k3pl ) /* bootleg */ - DRIVER( kf2k3upl ) /* bootleg */ - DRIVER( samsh5sp ) /* 0272 (c) 2004 Playmore */ - DRIVER( samsh5sph ) /* 0272 (c) 2004 Playmore */ - DRIVER( samsh5spn ) /* 0272 (c) 2004 Playmore */ - - /* The BrezzaSoft games don't have proper ID codes */ - DRIVER( jockeygp ) - DRIVER( jockeygpa ) - DRIVER( vliner ) - DRIVER( vlinero ) - - /* Nor does Digger Man */ - DRIVER( diggerma ) /* No Game ID (unlicensed), (c) 2000 Kyle Hodgetts, prototype */ - - /* Hyper NeoGeo 64 uses a 3 digit rom code? */ - - DRIVER( hng64 ) - DRIVER( roadedge ) /* 001 1997/09/10 Roads Edge / Round Trip RV */ - DRIVER( sams64 ) /* 002 1997/12/19 Samurai Shodown 64 / Samurai Spirits 64 */ - DRIVER( xrally ) /* 003 1998/05/13 Xtreme Rally / Off Beat Racer! */ - DRIVER( bbust2 ) /* 004 1998/09/11 Beast Busters: Second Nightmare */ - DRIVER( sams64_2 ) /* 005 1998/10/16 Samurai Shodown: Warrior's Rage / Samurai Spirits: Asura Zanmaden */ - DRIVER( fatfurwa ) /* 006 1999/01/28 Fatal Fury: Wild Ambition / Garou Densetsu: Wild Ambition */ - DRIVER( buriki ) /* 007 1999/05/21 Buriki One */ - - /* Neo Print */ - DRIVER( npcartv1 ) - DRIVER( 98best44 ) - DRIVER( nprsp ) - - /* Alpha Denshi games */ - DRIVER( shougi ) /* (c) 1982 (Arcade TV Game List - P.80, Left, 9 from top) */ - DRIVER( shougi2 ) /* (c) 1982 (Arcade TV Game List - P.80, Left, 10 from top) */ - DRIVER( champbas ) /* (c) 1983 Sega */ - DRIVER( champbasj ) /* (c) 1983 Alpha Denshi Co. */ - DRIVER( champbasja )/* (c) 1983 Alpha Denshi Co. */ - DRIVER( champbb2 ) /* (c) 1983 Sega */ - DRIVER( champbb2a ) /* (c) 1983 ? */ - DRIVER( champbb2j ) /* (c) 1983 ? */ - DRIVER( exctsccr ) /* (c) 1983 Alpha Denshi Co. */ - DRIVER( exctsccra ) /* (c) 1983 Alpha Denshi Co. */ - DRIVER( exctsccrj ) /* (c) 1983 Alpha Denshi Co. */ - DRIVER( exctsccrj2 )/* (c) 1983 Alpha Denshi Co. */ - DRIVER( exctsccrb ) /* bootleg */ - DRIVER( exctscc2 ) /* (c) 1984 Alpha Denshi Co. */ - DRIVER( talbot ) /* Volt Electronics */ - DRIVER( equites ) /* (c) 1984 Alpha Denshi Co. */ - DRIVER( equitess ) /* (c) 1984 Alpha Denshi Co./Sega */ - DRIVER( gekisou ) /* (c) 1985 Eastern */ - DRIVER( bullfgtr ) /* (c) 1984 Alpha Denshi Co. */ - DRIVER( bullfgtrs ) /* (c) 1984 Alpha Denshi Co./Sega */ - DRIVER( kouyakyu ) /* (c) 1985 Alpha Denshi Co. */ - DRIVER( splndrbt ) /* (c) 1985 Alpha Denshi Co. */ - DRIVER( hvoltage ) /* (c) 1985 Alpha Denshi Co. */ - - /* SNK / Alpha 68K games */ - DRIVER( sstingry ) /* (c) 1986 Alpha Denshi Co. */ - DRIVER( kyros ) /* (c) 1987 World Games */ - DRIVER( kyrosj ) /* (c) 1986 Alpha Denshi Co. */ - DRIVER( jongbou ) /* (c) 1987 SNK */ - DRIVER( paddlema ) /* Alpha-68K96I 'PM' (c) 1988 SNK */ - DRIVER( timesold ) /* Alpha-68K96II 'BT' (c) 1987 SNK / Romstar */ - DRIVER( timesold1 ) /* Alpha-68K96II 'BT' (c) 1987 */ - DRIVER( btlfield ) /* Alpha-68K96II 'BT' (c) 1987 */ - DRIVER( btlfieldb ) /* bootleg */ - DRIVER( skysoldr ) /* Alpha-68K96II 'SS' (c) 1988 SNK (Romstar with dip switch) */ - DRIVER( goldmedl ) /* Alpha-68K96II 'GM' (c) 1988 SNK */ - DRIVER( goldmedla ) /* Alpha-68K96II 'GM' (c) 1988 SNK */ - DRIVER( goldmedlb ) /* Alpha-68K96II bootleg */ - DRIVER( skyadvnt ) /* Alpha-68K96V 'SA' (c) 1989 Alpha Denshi Co. */ - DRIVER( skyadvntu ) /* Alpha-68K96V 'SA' (c) 1989 SNK of America licensed from Alpha */ - DRIVER( skyadvntj ) /* Alpha-68K96V 'SA' (c) 1989 Alpha Denshi Co. */ - DRIVER( gangwars ) /* Alpha-68K96V (c) 1989 Alpha Denshi Co. */ - DRIVER( gangwarsu ) /* Alpha-68K96V (c) 1989 Alpha Denshi Co. */ - DRIVER( sbasebal ) /* Alpha-68K96V (c) 1989 SNK of America licensed from Alpha */ - DRIVER( tnextspc ) /* A8003 'NS' (c) 1989 */ - DRIVER( tnextspcj ) /* A8003 'NS' (c) 1989 */ - - DRIVER( meijinsn ) /* (c) 1986 SNK */ - - /* Technos games */ - DRIVER( scregg ) /* TA-0001 (c) 1983 */ - DRIVER( eggs ) /* TA-0002 (c) 1983 Universal USA */ - DRIVER( dommy ) /* TA-00?? (c) 1983 (Arcade TV Game List - P.90, Left, 13 from top) */ - DRIVER( bigprowr ) /* TA-0007 (c) 1983 */ - DRIVER( tagteam ) /* TA-0007 (c) 1983 + Data East license */ - DRIVER( ssozumo ) /* TA-0008 (c) 1984 */ - DRIVER( mystston ) /* TA-0010 (c) 1984 */ - DRIVER( myststono ) /* TA-0010 (c) 1984 */ - DRIVER( dogfgt ) /* TA-0011 (c) 1984 */ - DRIVER( dogfgtu ) /* TA-0011 (c) 1985 Data East USA, Inc. */ - DRIVER( dogfgtj ) /* TA-0011 (c) 1984 */ - DRIVER( bogeyman ) /* -0204-0 (Data East part number) (c) 1985 (Arcade TV Game List - P.96, Right, 8 from top) */ - DRIVER( matmania ) /* TA-0015 (c) 1985 + Taito America license */ - DRIVER( excthour ) /* TA-0015 (c) 1985 + Taito license */ - DRIVER( maniach ) /* TA-0017 (c) 1986 + Taito America license */ - DRIVER( maniach2 ) /* TA-0017 (c) 1986 + Taito America license */ - DRIVER( renegade ) /* TA-0018 (c) 1986 + Taito America license */ - DRIVER( kuniokun ) /* TA-0018 (c) 1986 */ - DRIVER( kuniokunb ) /* bootleg */ - DRIVER( xsleena ) /* TA-0019 (c) 1986 */ - DRIVER( xsleenab ) /* bootleg */ - DRIVER( solarwar ) /* TA-0019 (c) 1986 Taito + Memetron license */ - DRIVER( battlane ) /* -0215, -0216 (Data East part number) (c) 1986 + Taito license */ - DRIVER( battlane2 ) /* -0215, -0216 (Data East part number) (c) 1986 + Taito license */ - DRIVER( battlane3 ) /* -0215, -0216 (Data East part number) (c) 1986 + Taito license */ - DRIVER( ddragon ) /* TA-0021 (c) 1987 */ - DRIVER( ddragonu ) /* TA-0021 (c) 1987 Taito America */ - DRIVER( ddragonua ) /* TA-0021 (c) 1987 Taito America */ - DRIVER( ddragonub ) /* TA-0021 (c) 1987 Taito America */ - DRIVER( ddragonw ) /* TA-0021 (c) 1987 Taito */ - DRIVER( ddragonw1 ) /* TA-0021 (c) 1987 Taito */ - DRIVER( ddragonb ) /* bootleg */ - DRIVER( ddragonba ) /* bootleg */ - DRIVER( ddragon6809 ) /* bootleg */ - DRIVER( ddragon6809a ) /* bootleg */ - DRIVER( ddragonb2 ) /* bootleg */ - DRIVER( spdodgeb ) /* TA-0022 (c) 1987 */ - DRIVER( nkdodge ) /* TA-0022 (c) 1987 (Japan) */ - DRIVER( nkdodgeb ) /* TA-0022 (c) 1987 (Japan) */ - DRIVER( chinagat ) /* TA-0023 (c) 1988 Taito + Romstar license (US) */ - DRIVER( saiyugou ) /* TA-0023 (c) 1988 (Japan) */ - DRIVER( saiyugoub1 ) /* bootleg */ - DRIVER( saiyugoub2 ) /* bootleg */ - DRIVER( wwfsstar ) /* TA-0024 (c) 1989 (Europe) */ - DRIVER( wwfsstara ) /* TA-0024 (c) 1989 (US, newer) */ - DRIVER( wwfsstaru ) /* TA-0024 (c) 1989 (US) */ - DRIVER( wwfsstarj ) /* TA-0024 (c) 1989 (Japan) */ - DRIVER( vball ) /* TA-0025 (c) 1988 (US) */ - DRIVER( vball2pj ) /* TA-0025 (c) 1988 (Japan) */ - DRIVER( vballb ) /* TA-0025 (c) 1988 */ - DRIVER( ddragon2 ) /* TA-0026 (c) 1988 (World) */ - DRIVER( ddragon2u ) /* TA-0026 (c) 1988 (US) */ - DRIVER( toffy ) /* (c) 1993 Midas */ - DRIVER( stoffy ) /* (c) 1994 Midas + Unico */ - DRIVER( ddungeon ) /* Game Room */ - DRIVER( ddungeone ) /* East Coast Coin Company (Melbourne) */ - DRIVER( darktowr ) /* Game Room */ - DRIVER( tstrike ) /* East Coast Coin Company (Melbourne) */ - DRIVER( tstrikea ) /* Game Room */ - DRIVER( ctribe ) /* TA-0028 (c) 1990 (US) */ - DRIVER( ctribe1 ) /* TA-0028 (c) 1990 (US) - Set 1? */ - DRIVER( ctribej ) /* TA-0028 (c) 1990 (Japan) */ - DRIVER( ctribeb ) /* bootleg */ - DRIVER( ctribeb2 ) /* bootleg */ - DRIVER( blockout ) /* TA-0029 (c) 1989 + California Dreams */ - DRIVER( blockout2 ) /* TA-0029 (c) 1989 + California Dreams */ - DRIVER( blockoutj ) /* TA-0029 (c) 1989 + California Dreams (Japan) */ - DRIVER( agress ) /* TA-0029 (c) 1991 Palco */ - DRIVER( agressb ) /* TA-0029 (c) 1991 Palco */ - DRIVER( ddragon3 ) /* TA-0030 (c) 1990 */ - DRIVER( ddragon3p ) /* TA-0030 (c) 1990 */ - DRIVER( ddragon3j ) /* TA-0030 (c) 1990 (Japan) */ - DRIVER( ddragon3b ) /* bootleg */ - DRIVER( wwfwfest ) /* TA-0031 (c) 1991 (US) */ - DRIVER( wwfwfesta ) /* TA-0031 (c) 1991 + Tecmo license (US) */ - DRIVER( wwfwfestb ) /* bootleg */ - DRIVER( wwfwfestj ) /* TA-0031 (c) 1991 (Japan) */ - DRIVER( shadfrce ) /* TA-0032 (c) 1993 (US) */ - DRIVER( shadfrcej ) /* TA-0032 (c) 1993 (Japan) */ - DRIVER( shadfrcejv2 )/* TA-0032 (c) 1993 (Japan) */ - - /* Stern "Berzerk hardware" games */ - DRIVER( berzerk ) /* (c) 1980 */ - DRIVER( berzerk1 ) /* (c) 1980 */ - DRIVER( berzerkg ) /* (c) 1980 */ - DRIVER( frenzy ) /* (c) 1982 */ - DRIVER( moonwarp ) /* (c) 1982 - prototype */ - - /* Stern 'Mazer Blazer hardware' games */ - DRIVER( mazerbla ) /* (c) 1983 */ - DRIVER( mazerblaa ) /* (c) 1983 */ - DRIVER( greatgun ) /* (c) 1983 */ - - /* Other Stern */ - DRIVER( cliffhgr ) /* (c) 1983 */ - DRIVER( cliffhgra ) /* (c) 1983 */ - DRIVER( goaltogo ) /* (c) 1983 */ - - /* GamePlan games */ - DRIVER( toratora ) /* (c) 1980 Game Plan */ - DRIVER( megatack ) /* (c) 1980 Centuri */ - DRIVER( killcom ) /* (c) 1980 Centuri */ - DRIVER( challeng ) /* (c) 1981 Centuri */ - DRIVER( kaos ) /* (c) 1981 */ - - /* Zaccaria games */ - DRIVER( sia2650 ) /* (c) 1978 */ - DRIVER( tinv2650 ) /* (c) 1978 */ - DRIVER( dodgem ) /* (c) 1979 */ - DRIVER( galaxia ) /* (c) 1979 */ - DRIVER( astrowar ) /* (c) 1980 */ - DRIVER( laserbat ) /* (c) 1981 */ - DRIVER( lazarian ) /* (c) 1981 */ - DRIVER( catnmous ) /* (c) 1982 */ - DRIVER( catnmousa ) /* (c) 1982 */ - DRIVER( monymony ) /* (c) 1983 */ - DRIVER( jackrabt ) /* (c) 1984 */ - DRIVER( jackrabt2 ) /* (c) 1984 */ - DRIVER( jackrabts ) /* (c) 1984 */ - - /* UPL games */ - DRIVER( mouser ) /* UPL-83001 (c) 1983 */ - DRIVER( mouserc ) /* UPL-83001 (c) 1983 */ - DRIVER( nova2001 ) /* UPL-83005 (c) 1983 */ - DRIVER( nova2001u ) /* UPL-83005 (c) [1983] + Universal license */ - DRIVER( ninjakun ) /* UPL-84003 (c) 1984 Taito Corporation */ - DRIVER( raiders5 ) /* UPL-85004 (c) 1985 */ - DRIVER( raiders5t ) /* UPL-85004 (c) 1985 Taito license */ - DRIVER( pkunwar ) /* UPL-????? (c) 1985 (Arcade Game TV List - P.98, Left, 22 from top) */ - DRIVER( pkunwarj ) /* UPL-????? (c) 1985 (Arcade Game TV List - P.98, Left, 22 from top) */ - DRIVER( xxmissio ) /* UPL-86001 [1986] */ - DRIVER( ninjakd2 ) /* UPL-????? (c) 1987 */ - DRIVER( ninjakd2a ) /* UPL-????? (c) 1987 */ - DRIVER( ninjakd2b ) /* UPL-????? (c) 1987 */ - DRIVER( rdaction ) /* UPL-87003?(c) 1987 + World Games license */ - DRIVER( mnight ) /* UPL-????? (c) 1987 distributed by Kawakus */ - DRIVER( arkarea ) /* UPL-87007 (c) 1988 (Arcade TV Game List - P.67, Right, 2 from top)*/ - DRIVER( robokid ) /* UPL-88013 (c) 1988 */ - DRIVER( robokidj ) /* UPL-88013 (c) 1988 */ - DRIVER( robokidj2 ) /* UPL-88013 (c) 1988 */ - DRIVER( omegaf ) /* UPL-89016 (c) 1989 */ - DRIVER( omegafs ) /* UPL-89016 (c) 1989 */ - - /* UPL/NMK/Banpresto games */ - DRIVER( urashima ) /* UPL-89052 */ - DRIVER( tharrier ) /* UPL-89053 (c) 1989 UPL + American Sammy license */ - DRIVER( tharrierj ) /* UPL-89053 (c) 1989 UPL (Japan) */ - DRIVER( mustang ) /* UPL-90058 (c) 1990 UPL */ - DRIVER( mustangs ) /* UPL-90058 (c) 1990 UPL + Seoul Trading */ - DRIVER( bioship ) /* UPL-90062 (c) 1990 UPL + American Sammy license */ - DRIVER( sbsgomo ) /* UPL-90062 (c) 1990 UPL */ - DRIVER( vandyke ) /* UPL-90064 (c) UPL */ - DRIVER( vandykejal ) /* UPL-90064 (c) Jaleco */ - DRIVER( vandykejal2 ) /* UPL-90064 (c) Jaleco */ - DRIVER( vandykeb ) /* bootleg */ - DRIVER( blkheart ) /* UPL-91069 */ - DRIVER( blkheartj ) /* UPL-91069 */ - DRIVER( acrobatm ) /* UPL-91073 (c) 1991 UPL + Taito license */ - DRIVER( strahl ) /* UPL-91074 (c) 1992 UPL (Japan) */ - DRIVER( strahla ) /* UPL-91074 (c) 1992 UPL (Japan) */ - DRIVER( bjtwin ) /* UPL-93087 (c) 1993 NMK */ - DRIVER( bjtwina ) /* UPL-93087 (c) 1993 NMK */ - DRIVER( bjtwinp ) /* UPL-93087 (c) 1993 NMK */ - DRIVER( tdragon2 ) /* UPL-93091 (c) 1993 NMK */ - DRIVER( tdragon2a ) /* UPL-93091 (c) 1993 NMK */ - DRIVER( bigbang ) /* UPL-93091 (c) 1993 NMK */ - DRIVER( tdragon ) /* (c) 1991 NMK / Tecmo */ - DRIVER( tdragon1 ) /* (c) 1991 NMK / Tecmo */ - DRIVER( hachamf ) /* (c) 1991 NMK */ - DRIVER( macross ) /* (c) 1992 Banpresto */ - DRIVER( riot ) /* (c) 1992 NMK */ - DRIVER( gunnail ) /* (c) 1993 NMK / Tecmo */ - DRIVER( macross2 ) /* (c) 1993 Banpresto */ - DRIVER( sabotenb ) /* (c) 1992 NMK / Tecmo */ - DRIVER( sabotenba ) /* (c) 1992 NMK / Tecmo */ - DRIVER( cactus ) /* bootleg */ - DRIVER( nouryoku ) /* (c) 1995 Tecmo */ - DRIVER( raphero ) /* (c) 1994 Media Trading Corp */ - - /* nmk16.c bootlegs using the Seibu Sound System */ - DRIVER( mustangb ) /* bootleg */ - DRIVER( mustangb2 ) /* TAB Austria bootleg */ - DRIVER( tdragonb ) /* bootleg */ - - /* Comad games on unofficial hardware based on nmk16.c */ - DRIVER( ssmissin ) /* (c) 1992 Comad */ - DRIVER( airattck ) /* (c) 1996 Comad */ - DRIVER( airattcka ) /* (c) 1996 Comad */ - - /* Bee-Oh games on unofficial hardware based on nmk16.c */ - DRIVER( manybloc ) /* (c) 1991 Bee-Oh */ - - /* Jaleco Mahjong Games, Similar Hardware to the NMK ones above? */ - DRIVER( daireika ) /* (c) 1989 Jaleco/NMK */ - DRIVER( mjzoomin ) /* (c) 1990 */ - DRIVER( kakumei ) /* (c) 1990 */ - DRIVER( kakumei2 ) /* (c) 1992 */ - DRIVER( suchipi ) /* (c) 1993 */ - - /* NMK Double Dealer, Similar Hardware to Jaleco Mahjong games above */ - DRIVER( ddealer ) /* (c) 1991 NMK */ - - /* Based on nmk16? */ - DRIVER( quizpani ) /* (c) 1993 NMK */ - DRIVER( acommand ) /* (c) 1990 */ - - /* don't know what hardare Banpresto used for these games */ - DRIVER( macrossp ) /* (c) 1996 Banpresto */ - DRIVER( quizmoon ) /* (c) 1997 Banpresto */ - - /* Face/NMK games */ - DRIVER( gakupara ) /* (c) 1991 NMK */ - DRIVER( quizdna ) /* (c) 1992 Face */ - DRIVER( gekiretu ) /* (c) 1992 Face */ - DRIVER( cultures ) /* (c) 1994 Face */ - - /* Williams/Midway TMS games */ - DRIVER( narc ) /* (c) 1988 Williams */ - DRIVER( narc3 ) /* (c) 1988 Williams */ - DRIVER( narc2 ) /* (c) 1988 Williams */ - DRIVER( trog ) /* (c) 1990 Midway */ - DRIVER( trog4 ) /* (c) 1990 Midway */ - DRIVER( trog3 ) /* (c) 1990 Midway */ - DRIVER( trogpa6 ) /* (c) 1990 Midway */ - DRIVER( trogpa4 ) /* (c) 1990 Midway */ - DRIVER( smashtv ) /* (c) 1990 Williams */ - DRIVER( smashtv6 ) /* (c) 1990 Williams */ - DRIVER( smashtv5 ) /* (c) 1990 Williams */ - DRIVER( smashtv4 ) /* (c) 1990 Williams */ - DRIVER( smashtv3 ) /* (c) 1990 Williams */ - DRIVER( hiimpact ) /* (c) 1990 Williams */ - DRIVER( hiimpact4 ) /* (c) 1990 Williams */ - DRIVER( hiimpact3 ) /* (c) 1990 Williams */ - DRIVER( hiimpact2 ) /* (c) 1990 Williams */ - DRIVER( hiimpact1 ) /* (c) 1990 Williams */ - DRIVER( hiimpactp ) /* (c) 1990 Williams */ - DRIVER( shimpact ) /* (c) 1991 Midway */ - DRIVER( shimpactp6 ) /* (c) 1991 Midway */ - DRIVER( shimpactp5 ) /* (c) 1991 Midway */ - DRIVER( shimpactp4 ) /* (c) 1991 Midway */ - DRIVER( strkforc ) /* (c) 1991 Midway */ - DRIVER( mk ) /* (c) 1992 Midway */ - DRIVER( mkr4 ) /* (c) 1992 Midway */ - DRIVER( mktturbo ) /* hack */ - DRIVER( mkyturbo ) /* hack */ - DRIVER( mkprot4 ) /* (c) 1992 Midway */ - DRIVER( mkprot8 ) /* (c) 1992 Midway */ - DRIVER( mkprot9 ) /* (c) 1992 Midway */ - DRIVER( mkla1 ) /* (c) 1992 Midway */ - DRIVER( mkla2 ) /* (c) 1992 Midway */ - DRIVER( mkla3 ) /* (c) 1992 Midway */ - DRIVER( mkla4 ) /* (c) 1992 Midway */ - DRIVER( mkyawdim ) /* bootleg */ - DRIVER( term2 ) /* (c) 1992 Midway */ - DRIVER( term2la3 ) /* (c) 1992 Midway */ - DRIVER( term2la2 ) /* (c) 1992 Midway */ - DRIVER( term2la1 ) /* (c) 1992 Midway */ - DRIVER( totcarn ) /* (c) 1992 Midway */ - DRIVER( totcarnp ) /* (c) 1992 Midway */ - DRIVER( mk2 ) /* (c) 1993 Midway */ - DRIVER( mk2r31e ) /* (c) 1993 Midway */ - DRIVER( mk2r32 ) /* (c) 1993 Midway */ - DRIVER( mk2r30 ) /* (c) 1993 Midway */ - DRIVER( mk2r21 ) /* (c) 1993 Midway */ - DRIVER( mk2r14 ) /* (c) 1993 Midway */ - DRIVER( mk2r11 ) /* (c) 1993 Midway */ - DRIVER( mk2r42 ) /* hack */ - DRIVER( mk2r91 ) /* hack */ - DRIVER( mk2chal ) /* hack */ - DRIVER( jdreddp ) /* (c) 1993 Midway */ - DRIVER( nbajam ) /* (c) 1993 Midway */ - DRIVER( nbajamr2 ) /* (c) 1993 Midway */ - DRIVER( nbajamte ) /* (c) 1994 Midway */ - DRIVER( nbajamt1 ) /* (c) 1994 Midway */ - DRIVER( nbajamt2 ) /* (c) 1994 Midway */ - DRIVER( nbajamt3 ) /* (c) 1994 Midway */ - DRIVER( revx ) /* (c) 1994 Midway */ - DRIVER( mk3 ) /* (c) 1994 Midway */ - DRIVER( mk3r20 ) /* (c) 1994 Midway */ - DRIVER( mk3r10 ) /* (c) 1994 Midway */ - DRIVER( mk3p40 ) /* (c) 1994 Midway */ - DRIVER( umk3 ) /* (c) 1994 Midway */ - DRIVER( umk3r11 ) /* (c) 1994 Midway */ - DRIVER( umk3r10 ) /* (c) 1994 Midway */ - DRIVER( wwfmania ) /* (c) 1995 Midway */ - DRIVER( wwfmaniab ) /* (c) 1995 Midway */ - DRIVER( openice ) /* (c) 1995 Midway */ - DRIVER( nbahangt ) /* (c) 1996 Midway */ - DRIVER( nbamht ) /* (c) 1996 Midway */ - DRIVER( nbamht1 ) /* (c) 1996 Midway */ - DRIVER( rmpgwt ) /* (c) 1997 Midway */ - DRIVER( rmpgwt11 ) /* (c) 1997 Midway */ - - /* Midway V-unit games */ - DRIVER( crusnusa ) /* (c) 1994 Midway */ - DRIVER( crusnusa40 ) /* (c) 1994 Midway */ - DRIVER( crusnusa21 ) /* (c) 1994 Midway */ - DRIVER( crusnwld ) /* (c) 1996 Midway */ - DRIVER( crusnwld23 ) /* (c) 1996 Midway */ - DRIVER( crusnwld20 ) /* (c) 1996 Midway */ - DRIVER( crusnwld17 ) /* (c) 1996 Midway */ - DRIVER( crusnwld13 ) /* (c) 1996 Midway */ - DRIVER( offroadc ) /* (c) 1997 Midway (v1.63) */ - DRIVER( offroadc4 ) /* (c) 1997 Midway (v1.40) */ - DRIVER( offroadc3 ) /* (c) 1997 Midway (v1.30) */ - DRIVER( offroadc1 ) /* (c) 1997 Midway (v1.10) */ - DRIVER( wargods ) /* (c) 1996 Midway */ - - /* Midway Zeus games */ - DRIVER( mk4 ) /* (c) 1997 Midway (v3.0) Latest offical release */ - DRIVER( mk4a ) /* (c) 1997 Midway (v2.1) */ - DRIVER( mk4b ) /* (c) 1997 Midway (v1.0) */ - DRIVER( invasnab ) /* (c) 1999 Midway (v5.0) Latest offical release */ - DRIVER( invasnv4 ) /* (c) 1999 Midway (v4.0) */ - DRIVER( crusnexo ) /* (c) 1999 Midway (v2.4) Latest offical release */ - DRIVER( crusnexoa ) /* (c) 1999 Midway (v2.0) */ - DRIVER( crusnexob ) /* (c) 1999 Midway (v1.6) */ - DRIVER( thegrid ) /* (c) 2001 Midway (v1.2) Latest offical release */ - DRIVER( thegrida ) /* (c) 2001 Midway (v1.1) */ - - /* Midway / Atari Voodoo based Hardware (Seattle, Flagstaff) */ - DRIVER( wg3dh ) /* (c) 1996 Atari Games */ - DRIVER( mace ) /* (c) 1996 Atari Games */ - DRIVER( macea ) /* (c) 1996 Atari Games */ - DRIVER( sfrush ) /* (c) 1996 Atari Games */ - DRIVER( sfrushrk ) /* (c) 1996 Atari Games */ - DRIVER( calspeed ) /* (c) 1996 Atari Games */ - DRIVER( calspeeda ) /* (c) 1996 Atari Games */ - DRIVER( vaportrx ) /* (c) 1998 Atari Games */ - DRIVER( vaportrxp ) /* (c) 1998 Atari Games */ - DRIVER( carnevil ) /* (c) 1998 Midway Games (v1.0.3) */ - DRIVER( carnevil1 ) /* (c) 1998 Midway Games (v1.0.1) */ - DRIVER( biofreak ) /* (c) 1997 Midway Games (prototype) */ - DRIVER( blitz ) /* (c) 1997 Midway Games */ - DRIVER( blitz11 ) /* (c) 1997 Midway Games */ - DRIVER( blitz99 ) /* (c) 1998 Midway Games */ - DRIVER( blitz2k ) /* (c) 1999 Midway Games */ - DRIVER( hyprdriv ) /* (c) 1998 Midway Games */ - - /* Midway / Atari Voodoo 2 & 3 - based Hardware (Vegas, Denver, Durango) */ - DRIVER( gauntleg ) /* (c) 1998 Atari Games */ - DRIVER( gauntleg12 ) /* (c) 1998 Atari Games */ - DRIVER( tenthdeg ) /* (c) 1998 Atari Games (prototype) */ - DRIVER( roadburn ) /* (c) 1999 Atari Games */ - DRIVER( sf2049 ) /* (c) 1999 Atari Games */ - DRIVER( sf2049se ) /* (c) 1999 Atari Games */ - DRIVER( sf2049te ) /* (c) 1999 Atari Games */ - DRIVER( warfa ) /* (c) 1999 Atari Games */ - DRIVER( nbashowt ) /* (c) 1998 Midway Games */ - DRIVER( nbanfl ) /* (c) 1999 Midway Games */ - DRIVER( gauntdl ) /* (c) 1999 Midway Games */ - DRIVER( gauntdl24 ) /* (c) 1999 Midway Games */ - DRIVER( cartfury ) /* (c) 2000 Midway Games */ - - /* Midway Quicksilver */ - DRIVER( hydrthnd ) /* (c) 1999 Midway Games */ - DRIVER( offrthnd ) /* (c) 2000 Midway Games */ - - /* Midway Touchmaster / Galaxy Games */ - DRIVER( tm ) /* (c) 1996 Midway Games */ - DRIVER( tmdo ) /* (c) 1996 Midway Games */ - DRIVER( tm2k ) /* (c) 1996 Midway Games */ - DRIVER( tm2ka ) /* (c) 1996 Midway Games */ - DRIVER( tm2kb ) /* (c) 1996 Midway Games */ - DRIVER( tm3k ) /* (c) 1997 Midway Games */ - DRIVER( tm3ka ) /* (c) 1997 Midway Games */ - DRIVER( tm4k ) /* (c) 1998 Midway Games */ - DRIVER( tm4ka ) /* (c) 1998 Midway Games */ - DRIVER( tm4kb ) /* (c) 1998 Midway Games */ - DRIVER( tm5k ) /* (c) 1998 Midway Games */ - DRIVER( tm5kca ) /* (c) 1998 Midway Games */ - DRIVER( tm5ka ) /* (c) 1998 Midway Games */ - DRIVER( tm7k ) /* (c) 1999 Midway Games */ - DRIVER( tm7ka ) /* (c) 1999 Midway Games */ - DRIVER( tm7keval ) /* (c) 1999 Midway Games */ - DRIVER( tm8k ) /* (c) 2000 Midway Games */ - DRIVER( tm8k902 ) /* (c) 2000 Midway Games */ - DRIVER( galgbios ) /* (c) 1998 Creative Electronics & Software (CES) */ - DRIVER( galgame2 ) /* (c) 1998 Creative Electronics & Software (CES) / Namco */ - - /* Creative Electronics & Software */ - DRIVER( hrclass ) - DRIVER( ccclass ) - DRIVER( tsclass ) - - /* Cinematronics raster games */ - DRIVER( embargo ) - DRIVER( tripool ) /* (c) 1981 Noma (Casino Tech license) */ - DRIVER( tripoola ) /* (c) 1981 Noma (Costal Games license) */ - DRIVER( unclepoo ) /* (c) 1983 Diatec */ - DRIVER( joinem ) /* (c) 1986 Global */ - DRIVER( loverboy ) /* (c) 1983 Global */ - DRIVER( striv ) /* (c) 1985 Hara Industries */ - DRIVER( jack ) /* (c) 1982 Cinematronics */ - DRIVER( jack2 ) /* (c) 1982 Cinematronics */ - DRIVER( jack3 ) /* (c) 1982 Cinematronics */ - DRIVER( treahunt ) /* (c) 1982 Hara Ind. */ - DRIVER( zzyzzyxx ) /* (c) 1982 Cinematronics + Advanced Microcomputer Systems */ - DRIVER( zzyzzyxx2 ) /* (c) 1982 Cinematronics + Advanced Microcomputer Systems */ - DRIVER( brix ) /* (c) 1982 Cinematronics + Advanced Microcomputer Systems */ - DRIVER( freeze ) /* Cinematronics */ - DRIVER( sucasino ) /* (c) 1982 Data Amusement */ - - /* Cinematronics vector games */ - DRIVER( spacewar ) /* (c) 1977 */ - DRIVER( spaceshp ) /* (c) 1978 Cinematronics (Sega licence) */ - DRIVER( barrier ) /* (c) 1979 Vectorbeam */ - DRIVER( starcas ) /* (c) 1980 */ - DRIVER( starcas1 ) /* (c) 1980 */ - DRIVER( starcasp ) /* (c) 1980 prototype */ - DRIVER( starcase ) /* (c) 1980 Cinematronics (Mottoeis license) */ - DRIVER( stellcas ) /* bootleg */ - DRIVER( spaceftr ) /* (c) 1981 Zaccaria */ - DRIVER( tailg ) /* (c) 1979 */ - DRIVER( ripoff ) /* (c) 1980 */ - DRIVER( armora ) /* (c) 1980 */ - DRIVER( armorap ) /* (c) 1980 */ - DRIVER( armorar ) /* (c) 1980 Cinematronics (Rock-ola license) */ - DRIVER( wotw ) /* (c) 1981 */ - DRIVER( wotwc ) /* (c) 1981 */ - DRIVER( warrior ) /* (c) 1979 Vectorbeam */ - DRIVER( starhawk ) /* (c) 1979 */ - DRIVER( solarq ) /* (c) 1981 */ - DRIVER( boxingb ) /* (c) 1981 */ - DRIVER( speedfrk ) /* (c) 1979 Vectorbeam */ - DRIVER( sundance ) /* (c) 1979 */ - DRIVER( demon ) /* (c) 1982 Rock-ola */ - DRIVER( qb3 ) /* (c) 1982 Rock-ola - prototype */ - /* this one uses 68000+Z80 instead of the Cinematronics CPU */ - DRIVER( cchasm ) - DRIVER( cchasm1 ) /* (c) 1983 Cinematronics / GCE */ - - /* "The Pit hardware" games */ - DRIVER( roundup ) /* (c) 1981 Amenip/Centuri */ - DRIVER( fitter ) /* (c) 1981 Taito */ - DRIVER( fitterbl ) /* bootleg */ - DRIVER( thepit ) /* (c) 1982 Zilec */ - DRIVER( thepitu1 ) /* (c) 1982 Centuri (licensed) */ - DRIVER( thepitu2 ) /* (c) 1982 Centuri (licensed) */ - DRIVER( thepitj ) /* (c) 1982 Taito (licensed) */ - DRIVER( thepitm ) /* bootleg */ - DRIVER( dockman ) /* (c) 1982 Taito Corp. */ - DRIVER( portman ) /* (c) 1982 Nova Games Ltd. */ - DRIVER( suprmous ) /* (c) 1982 Taito */ - DRIVER( funnymou ) /* (c) 1982 Chuo Co. Ltd */ - DRIVER( machomou ) /* (c) 1982 Techstar */ - DRIVER( intrepid ) /* (c) 1983 Nova Games Ltd. */ - DRIVER( intrepid2 ) /* (c) 1983 Nova Games Ltd. */ - DRIVER( zaryavos ) /* (c) 1983 Nova Games of Canada (prototype) */ - DRIVER( timelimt ) /* (c) 1983 Chuo Co. Ltd */ - DRIVER( progress ) /* (c) 1984 Chuo Co. Ltd */ - DRIVER( koroleva ) /* (c) 1988 Terminal */ - DRIVER( rtriv ) /* (c) 198? Romar */ - - /* TIA-MC1 hardware games */ - DRIVER( konek ) /* (c) 1988 Terminal */ - DRIVER( sosterm ) /* (c) 1988 Terminal */ - DRIVER( bilyard ) /* (c) 1988 Terminal */ - - /* Photon hardware games */ - DRIVER( phtetris ) - DRIVER( phpython ) - DRIVER( phklad ) - - /* Photon IK2 hardware */ - DRIVER( kok ) - DRIVER( black ) - DRIVER( brod ) - - /* Valadon Automation games */ - DRIVER( bagman ) /* (c) 1982 */ - DRIVER( bagnard ) /* (c) 1982 */ - DRIVER( bagnarda ) /* (c) 1982 */ - DRIVER( bagmans ) /* (c) 1982 + Stern license */ - DRIVER( bagmans2 ) /* (c) 1982 + Stern license */ - DRIVER( pickin ) /* (c) 1983 */ - DRIVER( supdrapo ) /* (c) 1983 + Stern license */ - DRIVER( supdrapoa ) /* (c) 1983 + Jeutel license? */ - DRIVER( supdrapob ) /* bootleg */ - DRIVER( sbagman ) /* (c) 1984 */ - DRIVER( sbagmans ) /* (c) 1984 + Stern license */ - DRIVER( botanic ) /* (c) 1985 */ - DRIVER( squaitsa ) /* (c) 1985 */ - DRIVER( tankbust ) /* (c) 1985 */ - - /* Seibu Denshi / Seibu Kaihatsu games */ - DRIVER( stinger ) /* (c) 1983 Seibu Denshi */ - DRIVER( stinger2 ) /* (c) 1983 Seibu Denshi */ - DRIVER( scion ) /* (c) 1984 Seibu Denshi */ - DRIVER( scionc ) /* (c) 1984 Seibu Denshi + Cinematronics license */ - DRIVER( kungfut ) /* (c) 1984 Seibu Kaihatsu */ - DRIVER( kungfuta ) /* (c) 1984 Seibu Kaihatsu */ - DRIVER( wiz ) /* (c) 1985 Seibu Kaihatsu */ - DRIVER( wizt ) /* (c) 1985 Taito Corporation */ - DRIVER( wizta ) /* (c) 1985 Taito Corporation */ - DRIVER( kncljoe ) /* (c) 1985 Taito Corporation */ - DRIVER( kncljoea ) /* (c) 1985 Taito Corporation */ - DRIVER( bcrusher ) /* bootleg */ - DRIVER( empcity ) /* (c) 1986 Seibu Kaihatsu (bootleg?) */ - DRIVER( empcityu ) /* (c) 1986 Taito (Romstar License) */ - DRIVER( empcityj ) /* (c) 1986 Taito Corporation (Japan) */ - DRIVER( empcityi ) /* (c) 1986 Seibu Kaihatsu (Eurobed license) */ - DRIVER( stfight ) /* (c) 1986 Seibu Kaihatsu (Germany) (bootleg?) */ - DRIVER( stfighta ) /* (c) 1986 Seibu Kaihatsu (bootleg?) */ - DRIVER( darkmist ) /* (c) 1986 Taito */ - DRIVER( mustache ) /* (c) 1987 March */ - DRIVER( cshooter ) /* (c) 1987 Taito */ - DRIVER( cshootere ) /* (c) 1987 JKH (bootleg) */ - DRIVER( airraid ) /* (c) 1987 Seibu Kaihatsu */ - DRIVER( panicr ) /* Seibu / Taito */ - DRIVER( deadang ) /* (c) 1988 Seibu Kaihatsu */ - DRIVER( leadang ) /* (c) 1988 Seibu Kaihatsu */ - DRIVER( ghunter ) /* (c) 1988 Seibu Kaihatsu + Segasa/Sonic license */ - DRIVER( dynduke ) /* (c) 1989 Seibu Kaihatsu + Fabtek license */ - DRIVER( dyndukef ) /* (c) 1989 Seibu Kaihatsu + Fabtek license */ - DRIVER( dbldyn ) /* (c) 1989 Seibu Kaihatsu + Fabtek license */ - DRIVER( dbldynf ) /* (c) 1989 Seibu Kaihatsu + Fabtek license */ - DRIVER( raiden ) /* (c) 1990 Seibu Kaihatsu */ - DRIVER( raidena ) /* (c) 1990 Seibu Kaihatsu */ - DRIVER( raidenk ) /* (c) 1990 Seibu Kaihatsu + IBL Corporation license */ - DRIVER( raident ) /* (c) 1990 Seibu Kaihatsu + Liang HWA Electronics license */ - DRIVER( raidenu ) /* (c) 1990 Seibu Kaihatsu + Fabtek license */ - DRIVER( raidenua ) /* (c) 1990 Seibu Kaihatsu + Fabtek license */ - DRIVER( sdgndmps ) /* (c) Banpresto / Bandai (Japan) */ - DRIVER( dcon ) /* (c) 1992 Success */ - DRIVER( sengokmj ) /* (c) 1991 Sigma */ - DRIVER( totmejan ) /* (c) 1991 Seibu/Tecmo */ - DRIVER( goodejan ) /* (c) 1991 Seibu/Tecmo */ - DRIVER( goodejana ) /* (c) 1991 Seibu/Tecmo */ - - - DRIVER( raiden2 ) /* (c) 1993 Seibu Kaihatsu + Fabtek license */ - DRIVER( raiden2a ) /* (c) 1993 Seibu Kaihatsu + Metrotainment license */ - DRIVER( raiden2b ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( raiden2c ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( raiden2d ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( raiden2e ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( raiden2f ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( raidndx ) /* (c) 1994 Seibu Kaihatsu */ - DRIVER( raidndxj ) /* (c) 1994 Seibu Kaihatsu */ - DRIVER( raidndxu ) /* (c) 1994 Seibu Kaihatsu + Fabtek license */ - DRIVER( raidndxa1 ) /* (c) 1994 Seibu Kaihatsu + Metrotainment license */ - DRIVER( raidndxa2 ) /* (c) 1994 Seibu Kaihatsu + Metrotainment license */ - DRIVER( raidndxg ) /* (c) 1994 Seibu Kaihatsu + Tuning license */ - DRIVER( zeroteam ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( zeroteama ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( zeroteamb ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( zeroteamc ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( zeroteams ) /* (c) 1993 Seibu Kaihatsu */ - DRIVER( zeroteamsr )/* (c) 1993 Seibu Kaihatsu */ - DRIVER( xsedae ) /* (c) 1995 Dream Island */ - - /* Newer V33 PCB with COP3 protection */ - DRIVER( r2dx_v33 ) /* (c) 1996 Seibu Kaihatsu */ - DRIVER( nzerotea ) /* (c) 1997 Seibu Kaihatsu */ - - /* Seibu SPI System games */ - - DRIVER( senkyu ) /* (c) 1995 Seibu Kaihatsu */ - DRIVER( senkyua ) /* (c) 1995 Seibu Kaihatsu */ - DRIVER( batlball ) /* (c) 1995 Seibu Kaihatsu (Tuning License) */ - DRIVER( batlballa ) /* (c) 1995 Seibu Kaihatsu (Metrotainment License) */ - DRIVER( batlballu ) /* (c) 1995 Seibu Kaihatsu (Metrotainment License) */ - - DRIVER( viprp1 ) /* (c) 1995 Seibu Kaihatsu */ - DRIVER( viprp1u ) /* (c) 1995 Seibu Kaihatsu (Fabtek license) */ - DRIVER( viprp1j ) /* (c) 1995 Seibu Kaihatsu */ - DRIVER( viprp1s ) /* (c) 1995 Seibu Kaihatsu */ - DRIVER( viprp1oj ) /* (c) 1995 Seibu Kaihatsu */ - DRIVER( viprp1ot ) /* (c) 1995 Seibu Kaihatsu (Tuning License) */ - DRIVER( viprp1hk ) /* (c) 1995 Seibu Kaihatsu (Metrotainment License) */ - - DRIVER( ejanhs ) /* (c) 1996 Seibu Kaihatsu */ - - DRIVER( rdft ) /* (c) 1996 Seibu Kaihatsu */ - DRIVER( rdftu ) /* (c) 1996 Seibu Kaihatsu (Fabtek license) */ - DRIVER( rdftau ) /* (c) 1996 Seibu Kaihatsu */ - DRIVER( rdftj ) /* (c) 1996 Seibu Kaihatsu */ - DRIVER( rdftadi ) /* (c) 1996 Seibu Kaihatsu (Dream Island license) */ - DRIVER( rdftam ) /* (c) 1996 Seibu Kaihatsu (Metrotainment license) */ - DRIVER( rdftit ) /* (c) 1996 Seibu Kaihatsu */ - DRIVER( rdfta ) /* (c) 1996 Seibu Kaihatsu */ - - DRIVER( rdft2 ) /* (c) 1997 Seibu Kaihatsu (Tuning License) */ - DRIVER( rdft2a ) /* (c) 1997 Seibu Kaihatsu (Metrotainment license) */ - DRIVER( rdft2a2 ) /* (c) 1997 Seibu Kaihatsu (Dream Island license) */ - DRIVER( rdft2j ) /* (c) 1997 Seibu Kaihatsu */ - DRIVER( rdft2j2 ) /* (c) 1997 Seibu Kaihatsu */ - DRIVER( rdft2t ) /* (c) 1997 Seibu Kaihatsu */ - DRIVER( rdft2u ) /* (c) 1997 Seibu Kaihatsu (Fabtek license) */ - DRIVER( rdft2us ) /* (c) 1997 Seibu Kaihatsu (Fabtek license) */ - DRIVER( rdft22kc ) /* (c) 2000 Seibu Kaihatsu */ - - DRIVER( rfjet ) /* (c) 1998 Seibu Kaihatsu (Tuning License) */ - DRIVER( rfjetu ) /* (c) 1998 Seibu Kaihatsu (Fabtek license) */ - DRIVER( rfjeta ) /* (c) 1998 Seibu Kaihatsu (Dream Island license) */ - DRIVER( rfjetj ) /* (c) 1998 Seibu Kaihatsu */ - DRIVER( rfjets ) /* (c) 1998 Seibu Kaihatsu */ - DRIVER( rfjet2kc ) /* (c) 2000 Seibu Kaihatsu */ - - DRIVER( ejsakura ) /* (c) 1999 Seibu Kaihatsu */ - DRIVER( ejsakura12 ) /* (c) 1999 Seibu Kaihatsu */ - - /* Seibu System SH2B games */ - DRIVER( feversoc ) /* (c) 2000 */ - - /* Tad games (Tad games run on Seibu hardware) */ - DRIVER( cabal ) /* (c) 1988 Tad + Fabtek license */ - DRIVER( cabala ) /* (c) 1988 Tad + Fabtek license */ - DRIVER( cabalbl ) /* bootleg */ - DRIVER( cabalbl2 ) /* bootleg */ - DRIVER( cabalus ) /* (c) 1988 Tad + Fabtek license */ - DRIVER( cabalus2 ) /* (c) 1988 Tad + Fabtek license */ - DRIVER( toki ) /* (c) 1989 Tad (World) */ - DRIVER( tokia ) /* (c) 1989 Tad (World) */ - DRIVER( tokiu ) /* (c) 1989 Tad + Fabtek license (US) */ - DRIVER( tokiua ) /* (c) 1989 Tad + Fabtek license (US) */ - DRIVER( tokib ) /* bootleg */ - DRIVER( juju ) /* (c) 1989 Tad (Japan) */ - DRIVER( jujub ) /* (c) 1989 Tad (Japan) */ - DRIVER( bloodbro ) /* (c) 1990 Tad */ - DRIVER( bloodbroa ) /* (c) 1990 Tad */ - DRIVER( bloodbrob ) /* (c) 1990 Tad */ - DRIVER( weststry ) /* bootleg */ - DRIVER( skysmash ) /* (c) 1990 Nihon System Inc. */ - DRIVER( legionna ) /* (c) 1992 Tad (World) */ - DRIVER( legionnau ) /* (c) 1992 Tad + Fabtek license (US) */ - DRIVER( heatbrl ) /* (c) 1992 Tad (World version 3) */ - DRIVER( heatbrl2 ) /* (c) 1992 Tad (World version 2) */ - DRIVER( heatbrlo ) /* (c) 1992 Tad (World) */ - DRIVER( heatbrlu ) /* (c) 1992 Tad (US) */ - DRIVER( godzilla ) /* (c) 1993 Banpresto */ - DRIVER( denjinmk ) /* (c) 199? Banpresto */ - DRIVER( grainbow ) /* (c) 1993 Banpresto */ - DRIVER( cupsoc ) /* (c) 1992 Seibu */ - DRIVER( cupsoca ) /* (c) 1992 Seibu */ - DRIVER( cupsocs ) /* (c) 1992 Seibu */ - DRIVER( cupsocs2 ) /* (c) 1992 Seibu */ - DRIVER( cupsocsb ) /* bootleg */ - DRIVER( cupsocsb2 ) /* bootleg */ - DRIVER( olysoc92 ) /* (c) 1992 Seibu */ - DRIVER( goal92 ) /* bootleg */ - - /* Jaleco games */ - DRIVER( exerion ) /* (c) 1983 Jaleco */ - DRIVER( exeriont ) /* (c) 1983 Jaleco + Taito America license */ - DRIVER( exerionb ) /* bootleg */ - DRIVER( fcombat ) /* (c) 1985 Jaleco */ - DRIVER( pturn ) /* (c) 1984 Jaleco */ - DRIVER( ddayjlc ) /* (c) 1984 Jaleco */ - DRIVER( ddayjlca ) /* (c) 1984 Jaleco */ - DRIVER( formatz ) /* (c) 1984 Jaleco */ - DRIVER( aeroboto ) /* (c) 1984 Williams */ - DRIVER( citycon ) /* (c) 1985 Jaleco */ - DRIVER( citycona ) /* (c) 1985 Jaleco */ - DRIVER( cruisin ) /* (c) 1985 Jaleco/Kitkorp */ - DRIVER( momoko ) /* (c) 1986 Jaleco */ - DRIVER( argus ) /* (c) 1986 Jaleco */ - DRIVER( valtric ) /* (c) 1986 Jaleco */ - DRIVER( butasan ) /* (c) 1987 Jaleco */ - DRIVER( psychic5 ) /* (c) 1987 Jaleco */ - DRIVER( psychic5a ) /* (c) 1987 Jaleco */ - DRIVER( bombsa ) /* (c) 1988 Jaleco */ - DRIVER( ginganin ) /* (c) 1987 Jaleco */ - DRIVER( ginganina ) /* (c) 1987 Jaleco */ - DRIVER( skyfox ) /* (c) 1987 Jaleco + Nichibutsu USA license */ - DRIVER( exerizer ) /* (c) 1987? Jaleco */ - DRIVER( exerizerb ) /* bootleg */ - DRIVER( homerun ) /* (c) 1988 Jaleco */ - DRIVER( dynashot ) /* (c) 1988 Jaleco */ - DRIVER( bigrun ) /* (c) 1989 Jaleco */ - DRIVER( cischeat ) /* (c) 1990 Jaleco */ - DRIVER( f1gpstar ) /* (c) 1991 Jaleco */ - DRIVER( armchmp2 ) /* (c) 1992 Jaleco */ - DRIVER( armchmp2o ) /* (c) 1992 Jaleco */ - DRIVER( wildplt ) /* (c) 1992 Jaleco */ - DRIVER( f1gpstr2 ) /* (c) 1993 Jaleco */ - DRIVER( scudhamm ) /* (c) 1994 Jaleco */ - DRIVER( tetrisp2 ) /* (c) 1997 Jaleco */ - DRIVER( tetrisp2j ) /* (c) 1997 Jaleco */ - DRIVER( tetrisp2ja )/* (c) 1997 Jaleco */ - DRIVER( nndmseal ) /* (c) 1997 I'Max/Jaleco */ - DRIVER( stepstag ) /* (c) 1999 Jaleco */ - DRIVER( step3 ) /* (c) 1999 Jaleco */ - DRIVER( rockn ) /* (c) 1999 Jaleco */ - DRIVER( rockna ) /* (c) 1999 Jaleco */ - DRIVER( rockn2 ) /* (c) 1999 Jaleco */ - DRIVER( rocknms ) /* (c) 1999 Jaleco */ - DRIVER( rockn3 ) /* (c) 1999 Jaleco */ - DRIVER( rockn4 ) /* (c) 2000 Jaleco */ - - /* Jaleco Mega System 1 games */ - DRIVER( lomakai ) /* (c) 1988 (World) */ - DRIVER( makaiden ) /* (c) 1988 (Japan) */ - DRIVER( p47 ) /* (c) 1988 */ - DRIVER( p47j ) /* (c) 1988 (Japan) */ - DRIVER( kickoff ) /* (c) 1988 (Japan) */ - DRIVER( tshingen ) /* (c) 1988 (Japan) */ - DRIVER( tshingena ) /* (c) 1988 (Japan) */ - DRIVER( kazan ) /* (c) 1988 (World) */ - DRIVER( iganinju ) /* (c) 1988 (Japan) */ - DRIVER( astyanax ) /* (c) 1989 */ - DRIVER( lordofk ) /* (c) 1989 (Japan) */ - DRIVER( hachoo ) /* (c) 1989 */ - DRIVER( jitsupro ) /* (c) 1989 (Japan) */ - DRIVER( plusalph ) /* (c) 1989 */ - DRIVER( stdragon ) /* (c) 1989 */ - DRIVER( rodland ) /* (c) 1990 */ - DRIVER( rodlandj ) /* (c) 1990 (Japan) */ - DRIVER( rodlandjb ) /* bootleg */ - DRIVER( avspirit ) /* (c) 1991 */ - DRIVER( phantasm ) /* (c) 1991 (Japan) */ - DRIVER( monkelf ) /* bootleg */ - DRIVER( edf ) /* (c) 1991 */ - DRIVER( edfu ) /* (c) 1991 */ - DRIVER( edfbl ) /* (c) 1991 */ - DRIVER( 64street ) /* (c) 1991 */ - DRIVER( 64streetj ) /* (c) 1991 (Japan) */ - DRIVER( soldam ) /* (c) 1992 */ - DRIVER( soldamj ) /* (c) 1992 (Japan) */ - DRIVER( bigstrik ) /* (c) 1992 */ - DRIVER( bigstrkb ) /* bootleg on different hardware */ - DRIVER( bestleag ) /* bootleg, by Playmark? */ - DRIVER( bestleaw ) /* bootleg */ - DRIVER( chimerab ) /* (c) 1993 */ - DRIVER( cybattlr ) /* (c) 1993 */ - DRIVER( hayaosi1 ) /* (c) 1993 */ - DRIVER( peekaboo ) /* (c) 1993 */ - - /* Jaleco Mega System 32 games */ - DRIVER( hayaosi2 ) /* (c) 1993 */ - DRIVER( hayaosi3 ) /* (c) 1994 */ - DRIVER( bbbxing ) /* (c) 1994 */ - DRIVER( 47pie2 ) /* (c) 1994 */ - DRIVER( 47pie2o ) /* (c) 1994 */ - DRIVER( desertwr ) /* (c) 1995 */ - DRIVER( gametngk ) /* (c) 1995 */ - DRIVER( tetrisp ) /* (c) 1995 Jaleco / BPS */ - DRIVER( p47aces ) /* (c) 1995 */ - DRIVER( akiss ) /* (c) 1995 */ - DRIVER( gratia ) /* (c) 1996 */ - DRIVER( gratiaa ) /* (c) 1996 */ - DRIVER( kirarast ) /* (c) 1996 */ - DRIVER( tp2m32 ) /* (c) 1997 */ - DRIVER( bnstars ) /* (c) 1997 */ - DRIVER( wpksocv2 ) /* (c) 1997 */ - - DRIVER( f1superb ) /* (c) 1994 */ - - DRIVER( bnstars1 ) /* (c) 1994 */ - - /* Video System Co. games */ - DRIVER( rabiolep ) /* (c) 1987 V-System Co. (Japan) */ - DRIVER( rpunch ) /* (c) 1987 V-System Co. + Bally/Midway/Sente license (US) */ - DRIVER( svolley ) /* (c) 1989 V-System Co. (Japan) */ - DRIVER( svolleyk ) /* (c) 1989 V-System Co. (Korea) */ - DRIVER( svolleyu ) /* (c) 1989 V-System Co. + Data East license (US) */ - DRIVER( tail2nos ) /* [1989] V-System Co. */ - DRIVER( sformula ) /* [1989] V-System Co. (Japan) */ - DRIVER( ojankoc ) /* [1986] V-System Co. (Japan) */ - DRIVER( ojankoy ) /* [1986] V-System Co. (Japan) */ - DRIVER( ojanko2 ) /* [1987] V-System Co. (Japan) */ - DRIVER( ccasino ) /* [1987] V-System Co. (Japan) */ - DRIVER( ojankohs ) /* [1988] V-System Co. (Japan) */ - DRIVER( nekkyoku ) /* [1988] Video System Co. (Japan) */ - DRIVER( idolmj ) /* [1988] (c) System Service (Japan) */ - DRIVER( mjnatsu ) /* [1989] Video System presents (Japan) */ - DRIVER( natsuiro ) /* [1989] Video System presents (Japan) */ - DRIVER( mfunclub ) /* [1989] V-System (Japan) */ - DRIVER( daiyogen ) /* [1990] Video System Co. (Japan) */ - DRIVER( nmsengen ) /* (c) 1991 Video System (Japan) */ - DRIVER( fromance ) /* (c) 1991 Video System Co. (Japan) */ - DRIVER( pipedrm ) /* (c) 1990 Video System Co. (World) */ - DRIVER( pipedrmu ) /* (c) 1990 Video System Co. (US) */ - DRIVER( pipedrmj ) /* (c) 1990 Video System Co. (Japan) */ - DRIVER( hatris ) /* (c) 1990 Video System Co. (US) */ - DRIVER( hatrisj ) /* (c) 1990 Video System Co. (Japan) */ - DRIVER( spinlbrk ) /* (c) 1990 V-System Co. (World) */ - DRIVER( spinlbrku ) /* (c) 1990 V-System Co. (US) */ - DRIVER( spinlbrkj ) /* (c) 1990 V-System Co. (Japan) */ - DRIVER( pspikes ) /* (c) 1991 Video System Co. (World) */ - DRIVER( pspikesk ) /* (c) 1991 Video System Co. (Korea) */ - DRIVER( svolly91 ) /* (c) 1991 Video System Co. (Japan) */ - DRIVER( pspikesb ) /* bootleg */ - DRIVER( spikes91 ) /* bootleg */ - DRIVER( pspikesc ) /* bootleg */ - DRIVER( karatblz ) /* (c) 1991 Video System Co. */ - DRIVER( karatblzu ) /* (c) 1991 Video System Co. (US) */ - DRIVER( karatblzj ) /* (c) 1991 Video System / Tecmo (Japan) */ - DRIVER( turbofrc ) /* (c) 1991 Video System Co. */ - DRIVER( aerofgt ) /* (c) 1992 Video System Co. */ - DRIVER( aerofgtb ) /* (c) 1992 Video System Co. */ - DRIVER( aerofgtc ) /* (c) 1992 Video System Co. */ - DRIVER( sonicwi ) /* (c) 1992 Video System Co. (Japan) */ - DRIVER( aerfboot ) /* bootleg */ - DRIVER( aerfboo2 ) /* bootleg */ - DRIVER( wbbc97 ) /* (c) 1997 Comad */ - DRIVER( welltris ) /* (c) 1991 Video System Co. (Japan) */ - DRIVER( welltrisj ) /* (c) 1991 Video System Co. (Japan) */ - DRIVER( quiz18k ) /* (c) 1992 EIM (Welltris hardware) */ - DRIVER( f1gp ) /* (c) 1991 Video System Co. */ - DRIVER( f1gpb ) /* bootleg */ - DRIVER( f1gp2 ) /* (c) 1992 Video System Co. */ - DRIVER( crshrace ) /* (c) 1993 Video System Co. */ - DRIVER( crshrace2 ) /* (c) 1993 Video System Co. */ - DRIVER( taotaido ) /* (c) 1993 Video System Co. */ - DRIVER( taotaidoa ) /* (c) 1993 Video System Co. */ - DRIVER( gstriker ) /* (c) [1993] Human */ - DRIVER( gstrikera ) /* (c) [1993] Human */ - DRIVER( vgoalsoc ) /* (c) 199? Temco */ - DRIVER( vgoalsca ) /* (c) 199? Temco */ - DRIVER( twrldc94 ) /* (c) 1994 Tecmo */ - DRIVER( twrldc94a ) /* (c) 1994 Tecmo */ - DRIVER( suprslam ) /* (c) 1995 Banpresto */ - DRIVER( fromanc2 ) /* (c) 1995 Video System Co. (Japan) */ - DRIVER( fromancr ) /* (c) 1995 Video System Co. (Japan) */ - DRIVER( fromanc4 ) /* (c) 1998 Video System Co. (Japan) */ - DRIVER( inufuku ) /* (c) 1998 Video System Co. (Japan) */ - - /* Psikyo games */ - DRIVER( samuraia ) /* (c) 1993 (World) */ - DRIVER( sngkace ) /* (c) 1993 (Japan) */ - DRIVER( gunbird ) /* (c) 1994 */ - DRIVER( gunbirdk ) /* (c) 1994 */ - DRIVER( gunbirdj ) /* (c) 1994 */ - DRIVER( btlkroad ) /* (c) 1994 */ - DRIVER( s1945 ) /* (c) 1995 */ - DRIVER( s1945a ) /* (c) 1995 */ - DRIVER( s1945j ) /* (c) 1995 */ - DRIVER( s1945jn ) /* (c) 1995 */ - DRIVER( s1945bl ) /* (c) 1995 (Hong Kong bootleg) */ - DRIVER( s1945k ) /* (c) 1995 */ - DRIVER( tengai ) /* (c) 1996 */ - DRIVER( tengaij ) /* (c) 1996 */ - DRIVER( s1945ii ) /* (c) 1997 */ - DRIVER( soldivid ) /* (c) 1997 */ - DRIVER( sbomber ) /* (c) 1998 */ - DRIVER( sbombera ) /* (c) 1998 */ - DRIVER( daraku ) /* (c) 1998 */ - DRIVER( gunbird2 ) /* (c) 1998 */ - DRIVER( s1945iii ) /* (c) 1999 */ - DRIVER( dragnblz ) /* (c) 2000 */ - DRIVER( tgm2 ) /* (c) 2000 */ - DRIVER( tgm2p ) /* (c) 2000 */ - DRIVER( gnbarich ) /* (c) 2001 */ - DRIVER( mjgtaste ) /* (c) 2002 */ - DRIVER( hotgmck ) /* (c) 1997 */ - DRIVER( hgkairak ) /* (c) 1998 */ - DRIVER( hotgmck3 ) /* (c) 1999 */ - DRIVER( hotgm4ev ) /* (c) 2000 */ - DRIVER( hotgmcki ) /* (c) 2001 */ - DRIVER( loderndf ) /* (c) 2000 */ - DRIVER( loderndfa ) /* (c) 2000 */ - DRIVER( hotdebut ) /* (c) 2000 */ - - /* Orca games */ - DRIVER( marineb ) /* (c) 1982 Orca */ - DRIVER( changes ) /* (c) 1982 Orca */ - DRIVER( changesa ) /* (c) 1982 Orca + Eastern Micro Electronics license */ - DRIVER( looper ) /* (c) 1982 Orca */ - DRIVER( springer ) /* (c) 1982 Orca */ - DRIVER( hoccer ) /* (c) 1983 Eastern Micro Electronics, Inc. */ - DRIVER( hoccer2 ) /* (c) 1983 Eastern Micro Electronics, Inc. */ - DRIVER( bcruzm12 ) /* (c) 1983 Sigma Ent. Inc. */ - DRIVER( hopprobo ) /* (c) 1983 Sega */ - DRIVER( wanted ) /* (c) 1984 Sigma Ent. Inc. */ - DRIVER( funkybee ) /* (c) 1982 Orca */ - DRIVER( funkybeeb ) /* (c) 1982 Orca */ - DRIVER( skylancr ) /* (c) 1983 Orca */ - DRIVER( skylancre ) /* (c) 1983 Orca + Esco Trading Co license */ - DRIVER( zodiack ) /* (c) 1983 Orca + Esco Trading Co license */ - DRIVER( dogfight ) /* (c) 1983 Thunderbolt */ - DRIVER( moguchan ) /* (c) 1982 Orca + Eastern Commerce Inc. license (doesn't appear on screen) */ - DRIVER( percuss ) /* (c) 1981 Orca */ - DRIVER( bounty ) /* (c) 1982 Orca */ - DRIVER( espial ) /* (c) 1983 Thunderbolt, Orca logo is hidden in title screen */ - DRIVER( espialu ) /* (c) 1983 Thunderbolt, Orca logo is hidden in title screen */ - DRIVER( netwars ) /* (c) 1983 Orca + Esco Trading Co license */ - /* Vastar was made by Orca, but when it was finished, Orca had already bankrupted. */ - /* So they sold this game as "Made by Sesame Japan" because they couldn't use */ - /* the name "Orca" */ - DRIVER( vastar ) /* (c) 1983 Sesame Japan */ - DRIVER( vastar2 ) /* (c) 1983 Sesame Japan */ -/* - other Orca games: - 82 Battle Cross Kit 2P - 82 River Patrol Empire Mfg/Kerstens Ind Ded 2P HC Action - 82 Slalom Kit 2P HC Action - 83 Net Wars 2P - 83 Super Crush Kit 2P Action -*/ - - /* Gaelco 2D games */ - DRIVER( mastboy ) /* (c) 1987 - No Ref on the PCB */ - DRIVER( mastboyi ) /* (c) 1987 - No Ref on the PCB */ - DRIVER( xorworld ) /* (c) 1990 - prototype */ - DRIVER( bigkarnk ) /* (c) 1991 - Ref 901112-1 */ - /* Master Boy 2 */ /* (c) 1991 - Ref ??? */ - DRIVER( splash ) /* (c) 1992 - Ref 922804 */ - DRIVER( splash10 ) /* (c) 1992 - Ref 922804 */ - DRIVER( paintlad ) /* (c) 1992 - ver 1.3 */ - DRIVER( roldfrog ) /* not a gaelco game but based on splash code */ - DRIVER( roldfroga ) /* not a gaelco game but based on splash code */ - DRIVER( rebus ) /* not a gaelco game but on similar hw to splash */ - DRIVER( funystrp ) /* not a gaelco game but on similar hw to splash */ - DRIVER( puckpepl ) /* not a gaelco game but on similar hw to splash */ - DRIVER( thoop ) /* (c) 1992 - Ref 922804/1 */ - DRIVER( squash ) /* (c) 1992 - Ref 922804/2 */ - DRIVER( wrally ) /* (c) 1993 - Ref 930705 */ - DRIVER( wrallya ) /* (c) 1993 - Ref 930705 */ - DRIVER( wrallyb ) /* (c) 1993 - Ref 930217 */ - DRIVER( glass ) /* (c) 1993 - Ref 931021 */ - DRIVER( glass10 ) /* (c) 1993 - Ref 931021 */ - DRIVER( glassbrk ) /* (c) 1993 - Ref 931021 shows "Break Edition" on a real PCB */ - DRIVER( targeth ) /* (c) 1994 - Ref 940531 */ - DRIVER( targetha ) /* (c) 1994 - Ref 940531 */ - DRIVER( thoop2 ) /* (c) 1994 - Ref ??? */ - DRIVER( aligator ) /* (c) 1994 - Ref 940411 */ - DRIVER( aligatorun ) /* (c) 1994 - Ref 940411 (unprotected) */ - DRIVER( biomtoy ) /* (c) 1995 - Ref 922804/2 - (unprotected) */ - DRIVER( touchgo ) /* (c) 1995 - Ref 950906 */ - DRIVER( touchgon ) /* (c) 1995 - Ref 950906 */ - DRIVER( touchgoe ) /* (c) 1995 - Ref 950510-1 */ - DRIVER( wrally2 ) /* (c) 1995 - Ref 950510 */ - DRIVER( maniacsp ) /* (c) 1996 - Ref 922804/2 - (prototype) */ - DRIVER( maniacsq ) /* (c) 1996 - Ref ??? - (unprotected) */ - DRIVER( snowboar ) /* (c) 1996 - Ref 960419/1 */ - DRIVER( snowboara ) /* (c) 1996 - Ref 960419/1 */ - DRIVER( bang ) /* (c) 1998 - Ref ??? */ - DRIVER( bangj ) /* (c) 1999 - Ref ??? */ - DRIVER( grtesoro ) /* (c) 1999 - Ref ??? */ - DRIVER( grtesoro4 ) /* (c) 1999 - Ref ??? */ - - /* Gaelco 3D games */ - DRIVER( speedup ) /* (c) 1996 - Ref ??? */ - DRIVER( surfplnt ) /* (c) 1997 - Ref 971223 */ - DRIVER( surfplnt40 ) /* (c) 1997 - Ref 970514 */ - DRIVER( radikalb ) /* (c) 1998 - Ref ??? */ - - /* SH-4 hardware */ - DRIVER( atvtrack ) /* (c) 2002 - Ref 020419 */ - DRIVER( atvtracka ) /* (c) 2002 - Ref 020419 */ - - /* - Remaining Gaelco Games: - ======================= - 1999: Rolling Extreme - 2000: Football Power - 2001: Smashing Drive - */ - - /* Galeco PC based games */ - DRIVER( tokyocop ) /* (c) 2003 (Arcade TV Game List - P.168, Right, 19 from bottom) */ - - /* Kaneko games */ - DRIVER( hvyunit ) /* (c) 1988 Kaneko */ - DRIVER( hvyunitj ) /* (c) 1988 Kaneko */ - DRIVER( hvyunitjo ) /* (c) 1988 Kaneko */ - DRIVER( hvyunitu ) /* (c) 1988 Kaneko */ - DRIVER( djboy ) /* (c) 1989 Kaneko */ - DRIVER( djboyj ) /* (c) 1989 Kaneko */ - DRIVER( djboya ) /* (c) 1989 Kaneko */ - DRIVER( airbustr ) /* (c) 1990 Kaneko + Namco */ - DRIVER( airbustrj ) /* (c) 1990 Kaneko + Namco (Japan) */ - DRIVER( airbustrb ) /* bootleg */ - DRIVER( galpanic ) /* (c) 1990 Kaneko */ - DRIVER( galpanica ) /* (c) 1990 Kaneko */ - DRIVER( galsnew ) /* (c) 1990 Kaneko */ - DRIVER( galsnewa ) /* (c) 1990 Kaneko */ - DRIVER( galsnewj ) /* (c) 1990 Kaneko */ - DRIVER( galsnewk ) /* (c) 1990 Kaneko */ - DRIVER( galpani2 ) /* (c) 1993 Kaneko */ - DRIVER( galpani2g ) /* (c) 1993 Kaneko */ - DRIVER( galpani2t ) /* (c) 1993 Kaneko */ - DRIVER( galpani2i ) /* (c) 1993 Kaneko */ - DRIVER( galpani2j ) /* (c) 1993 Kaneko */ - DRIVER( gp2quiz ) /* (c) 1993 Kaneko */ - DRIVER( gp2se ) /* (c) 1994 Kaneko */ - DRIVER( jchan ) /* (c) 1995 Kaneko */ - DRIVER( jchan2 ) /* (c) 1995 Kaneko */ - DRIVER( galpani3 ) /* (c) 1995 Kaneko */ - - /* Kaneko "AX System" games */ - DRIVER( berlwall ) /* (c) 1991 Kaneko */ - DRIVER( berlwallt ) /* (c) 1991 Kaneko */ - DRIVER( mgcrystl ) /* (c) 1991 Kaneko (World) */ - DRIVER( mgcrystlo ) /* (c) 1991 Kaneko (World) */ - DRIVER( mgcrystlj ) /* (c) 1991 Kaneko + distributed by Atlus (Japan) */ - DRIVER( blazeon ) /* (c) 1992 Atlus */ - DRIVER( sandscrp ) /* (c) 1992 Face */ - DRIVER( sandscrpa ) /* (c) 1992 Face */ - DRIVER( sandscrpb ) /* (c) 1992 Face */ - DRIVER( explbrkr ) /* (c) 1992 Kaneko */ - DRIVER( bakubrkr ) /* (c) 1992 Kaneko */ - DRIVER( shogwarr ) /* (c) 1992 Kaneko */ - DRIVER( shogwarru ) /* (c) 1992 Kaneko */ - DRIVER( fjbuster ) /* (c) 1992 Kaneko */ - DRIVER( brapboys ) /* (c) 1992 Kaneko */ - DRIVER( brapboysj ) /* (c) 1992 Kaneko */ - DRIVER( bloodwar ) /* (c) 1994 Kaneko */ - DRIVER( oedfight ) /* (c) 1994 Kaneko */ - DRIVER( bonkadv ) /* (c) 1994 Kaneko */ - DRIVER( gtmr ) /* (c) 1994 Kaneko */ - DRIVER( gtmra ) /* (c) 1994 Kaneko */ - DRIVER( gtmre ) /* (c) 1994 Kaneko */ - DRIVER( gtmrusa ) /* (c) 1994 Kaneko (US) */ - DRIVER( gtmr2 ) /* (c) 1995 Kaneko */ - DRIVER( gtmr2a ) /* (c) 1995 Kaneko */ - DRIVER( gtmr2u ) /* (c) 1995 Kaneko */ - - /* Kaneko "Super Nova System" games */ - DRIVER( skns ) - DRIVER( galpani4 ) /* 1996.09 (c) 1996 Kaneko (Japan) */ - DRIVER( galpani4k ) /* 1996.09 (c) 1996 Kaneko (Korea) */ - DRIVER( jjparads ) /* 1996.12 (c) 1996 Electro Design Co. (Japan) */ - DRIVER( sarukani ) /* 1997.01 (c) 1997 Kaneko / Mediaworks (Japan) */ - DRIVER( vblokbrk ) /* 1997.?? (c) 1997 Kaneko / Mediaworks (Asia) */ - DRIVER( galpanis ) /* 1997.04 (c) 1997 Kaneko (Japan) */ - DRIVER( galpanisk ) /* 1997.04 (c) 1997 Kaneko (Korea) */ - DRIVER( sengekis ) /* 1997.?? (c) 1997 Kaneko / Warashi (Asia) */ - DRIVER( sengekisj ) /* 1997.07 (c) 1997 Kaneko / Warashi (Japan) */ - DRIVER( jjparad2 ) /* 1997.12 (c) 1997 Electro Design Co. (Japan) */ - DRIVER( cyvern ) /* 1998.02 (c) 1998 Kaneko (US) */ - DRIVER( cyvernj ) /* 1998.02 (c) 1998 Kaneko (Japan) */ - DRIVER( ryouran ) /* 1998.07 (c) 1998 Electro Design Co. (Japan) */ - DRIVER( puzzloop ) /* 1998.?? (c) 1998 Mitchell (Europe) */ - DRIVER( puzzloopj ) /* 1998.12 (c) 1998 Mitchell (Japan) */ - DRIVER( puzzloopa ) /* 1998.?? (c) 1998 Mitchell (Asia) */ - DRIVER( puzzloopk ) /* 1998.?? (c) 1998 Mitchell (Korea) */ - DRIVER( puzzloopu ) /* 1999.05 (c) 1998 Mitchell (USA) */ - DRIVER( galpans2 ) /* 1999.02 (c) 1999 Kaneko (Japan) */ - DRIVER( galpans2a ) /* 1999.?? (c) 1999 Kaneko (Asia) */ - DRIVER( galpansu ) /* 1999.?? (c) 1999 Kaneko (Korea) */ - DRIVER( senknow ) /* 1999.04 (c) 1999 Kaneko / Kouyousha (Japan) */ - DRIVER( panicstr ) /* 1999.09 (c) 1999 Kaneko (Japan) */ - DRIVER( teljan ) /* 1999.11 (c) 1999 Electro Design Co. (Japan) */ - DRIVER( gutsn ) /* 2000.06 (c) 2000 Kaneko / Kouyousha (Japan) */ - DRIVER( galpans3 ) /* 2002.07 (c) 2002 Kaneko (Japan) */ - - /* Seta games */ - DRIVER( hanaawas ) /* (c) SetaKikaku */ - DRIVER( speedatk ) /* CB-0 (c) SetaKikaku */ - DRIVER( srmp1 ) /* UB or UC?? (c) 1987 */ - DRIVER( srmp2 ) /* UB or UC?? (c) 1987 */ - DRIVER( srmp3 ) /* ZA-0? (c) 1988 */ - DRIVER( rmgoldyh ) /* ZF-0? (c) 1988 */ - DRIVER( mjyuugi ) /* (c) 1990 Visco */ - DRIVER( mjyuugia ) /* (c) 1990 Visco */ - DRIVER( ponchin ) /* (c) 1991 Visco */ - DRIVER( ponchina ) /* (c) 1991 Visco */ - - /* Seta 1st Generation HW (seta.c) */ - DRIVER( tndrcade ) /* UA-0 (c) 1987 Taito */ - DRIVER( tndrcadej ) /* UA-0 (c) 1987 Taito */ - DRIVER( twineagl ) /* UA-2 (c) 1988 + Taito license */ - DRIVER( downtown ) /* UD-2 (c) 1989 + Romstar or Taito license (DSW) */ - DRIVER( downtown2 ) /* UD-2 (c) 1989 + Romstar or Taito license (DSW) */ - DRIVER( downtownj ) /* UD-2 (c) 1989 + Romstar or Taito license (DSW) */ - DRIVER( downtownp ) /* UD-2 (c) 1989 + Romstar or Taito license (DSW) */ - DRIVER( usclssic ) /* UE (c) 1989 + Romstar or Taito license (DSW) */ - DRIVER( calibr50 ) /* UH (c) 1989 + Romstar or Taito license (DSW) */ - DRIVER( arbalest ) /* UK (c) 1989 + Jordan, Romstar or Taito license (DSW) */ - DRIVER( metafox ) /* UP (c) 1989 + Jordan, Romstar or Taito license (DSW) */ - DRIVER( setaroul ) /* UF (c) 19?? Seta / Visco */ - DRIVER( drgnunit ) /* (c) 1989 Athena / Seta + Romstar or Taito license (DSW) */ - DRIVER( wits ) /* (c) 1989 Athena (Visco license) */ - DRIVER( thunderl ) /* (c) 1990 Seta + Romstar or Visco license (DSW) */ - DRIVER( thunderlbl ) /* (c) 1990 Seta + Romstar or Visco license (DSW) - bootleg with Tetris sound */ - DRIVER( wiggie ) /* (c) 1994 Promat (not genuine seta hardware, but based on thunderl code) */ - DRIVER( superbar ) /* (c) 1994 Promat (not genuine seta hardware, but based on thunderl code) */ - DRIVER( jockeyc ) /* (c) 1990 [Seta] (Visco license) */ - DRIVER( rezon ) /* (c) 1991 Allumer */ - DRIVER( rezont ) /* (c) 1991 Allumer / Taito */ - DRIVER( stg ) /* (c) 1991 Athena / Tecmo */ - DRIVER( pairlove ) /* (c) 1991 Athena */ - DRIVER( blandia ) /* (c) 1992 Allumer */ - DRIVER( blandiap ) /* (c) 1992 Allumer */ - DRIVER( blockcar ) /* (c) 1992 Visco */ - DRIVER( qzkklogy ) /* (c) 1992 Tecmo */ - DRIVER( neobattl ) /* (c) 1992 Banpresto / Sotsu Agency. Sunrise */ - DRIVER( umanclub ) /* (c) 1992 Tsuburaya Prod. / Banpresto */ - DRIVER( zingzip ) /* UY (c) 1992 Allumer + Tecmo */ - DRIVER( zingzipbl ) /* bootleg */ - DRIVER( atehate ) /* (C) 1993 Athena */ - DRIVER( jjsquawk ) /* (c) 1993 Athena / Able */ - DRIVER( jjsquawkb ) /* bootleg */ - DRIVER( kamenrid ) /* (c) 1993 Toei / Banpresto */ - DRIVER( madshark ) /* (c) 1993 Allumer */ - DRIVER( msgundam ) /* (c) 1993 Banpresto */ - DRIVER( msgundam1 ) /* (c) 1993 Banpresto */ - DRIVER( daioh ) /* (C) 1993 Athena */ - DRIVER( oisipuzl ) /* (c) 1993 SunSoft / Atlus */ - DRIVER( triplfun ) /* bootleg */ - DRIVER( utoukond ) /* (c) 1993 Banpresto + Tsuburaya Prod. */ - DRIVER( qzkklgy2 ) /* (c) 1993 Tecmo */ - DRIVER( wrofaero ) /* (c) 1993 Yang Cheng */ - DRIVER( eightfrc ) /* (c) 1994 Tecmo */ - DRIVER( kiwame ) /* (c) 1994 Athena */ - DRIVER( krzybowl ) /* (c) 1994 American Sammy */ - DRIVER( orbs ) /* (c) 1994 American Sammy */ - DRIVER( keroppi ) /* (c) 1993 Sammy */ - DRIVER( extdwnhl ) /* (c) 1995 Sammy Japan */ - DRIVER( gundhara ) /* (c) 1995 Banpresto */ - DRIVER( sokonuke ) /* (c) 1995 Sammy Industries */ - DRIVER( zombraid ) /* (c) 1995 American Sammy */ - DRIVER( crazyfgt ) /* (c) 1998 Subsino */ - DRIVER( inttoote ) /* (c) 1998 Coinmaster */ - DRIVER( inttootea ) /* (c) 1998 Coinmaster */ - - /* Seta 2nd Generation HW (seta2.c) */ - DRIVER( gundamex ) /* (c) 1994 Banpresto */ - DRIVER( grdians ) /* (c) 1995 Banpresto */ - DRIVER( mj4simai ) /* (c) 1996 Maboroshi Ware */ - DRIVER( myangel ) /* (c) 1996 Namco */ - DRIVER( myangel2 ) /* (c) 1997 Namco */ - DRIVER( pzlbowl ) /* (c) 1999 Nihon System / Moss */ - DRIVER( penbros ) /* (c) 2000 Subsino */ - DRIVER( deerhunt ) /* (c) 2000 Sammy USA Corporation */ - DRIVER( deerhunta ) /* (c) 2000 Sammy USA Corporation */ - DRIVER( deerhuntb ) /* (c) 2000 Sammy USA Corporation */ - DRIVER( deerhuntc ) /* (c) 2000 Sammy USA Corporation */ - DRIVER( turkhunt ) /* (c) 2001 Sammy USA Corporation */ - DRIVER( wschamp ) /* (c) 2001 Sammy USA Corporation */ - DRIVER( wschampa ) /* (c) 2001 Sammy USA Corporation */ - DRIVER( funcube2 ) /* (c) 2001 Namco */ - DRIVER( funcube4 ) /* (c) 2001 Namco */ - DRIVER( trophyh ) /* (c) 2002 Sammy USA Corporation */ - DRIVER( reelquak ) /* (c) ???? <unknown> */ - - /* SSV System (Seta, Sammy, Visco) games */ - DRIVER( srmp4 ) /* (c) 1993 Seta */ - DRIVER( srmp4o ) /* (c) 1993 Seta */ - DRIVER( twineag2 ) /* (c) 1994 Seta */ - DRIVER( srmp7 ) /* (c) 1997 Seta */ - DRIVER( dynagear ) /* (c) 1993 Sammy */ - DRIVER( survarts ) /* (c) 1993 Sammy */ - DRIVER( survartsu ) /* (c) 1993 Sammy (American) */ - DRIVER( eaglshot ) /* (c) 1994 Sammy */ - DRIVER( hypreact ) /* (c) 1995 Sammy */ - DRIVER( meosism ) /* (c) 1996?Sammy */ - DRIVER( hypreac2 ) /* (c) 1997 Sammy */ - DRIVER( sxyreact ) /* (c) 1998 Sammy */ - DRIVER( sxyreac2 ) /* (c) 1999 Sammy */ - DRIVER( cairblad ) /* (c) 1999 Sammy */ - DRIVER( keithlcy ) /* (c) 1993 Visco */ - DRIVER( drifto94 ) /* (c) 1994 Visco */ - DRIVER( janjans1 ) /* (c) 1996 Visco */ - DRIVER( stmblade ) /* (c) 1996 Visco */ - DRIVER( jsk ) /* (c) 1997 Visco */ - DRIVER( koikois2 ) /* (c) 1997 Visco */ - DRIVER( mslider ) /* (c) 1997 Visco / Datt Japan */ - DRIVER( ryorioh ) /* (c) 1998 Visco */ - DRIVER( janjans2 ) /* (c) 2000 Visco */ - DRIVER( vasara ) /* (c) 2000 Visco */ - DRIVER( vasara2 ) /* (c) 2001 Visco */ - DRIVER( vasara2a ) /* (c) 2001 Visco */ - - DRIVER( ultrax ) /* (c) 1995 Banpresto */ - DRIVER( gdfs ) /* (c) 1995 Banpresto */ - - DRIVER( jclub2 ) /* (c) 199? Seta */ - DRIVER( jclub2o ) /* (c) 199? Seta */ - DRIVER( darkhors ) /* bootleg of Jockey Club II */ - - /* ST-0016 based games (ST-0016 is a SoC Z80-based HW) */ - /* plain ST-0016 */ - DRIVER( renju ) /* (c) 1994 Visco */ - DRIVER( koikois ) /* (c) 1995 Seta */ - DRIVER( nratechu ) /* (c) 1996 Seta */ - DRIVER( dcrown ) /* 199? unknown */ - /* R3000 + ST-0016 */ - DRIVER( srmp5 ) /* (c) 199? Seta */ - DRIVER( speglsht ) /* (c) 1994 Seta */ - /* V810 + ST-0016 */ - DRIVER( mayjinsn ) /* (c) 1994 Seta */ - DRIVER( mayjisn2 ) /* (c) 1994 Seta */ - - /* Seta System S12 */ - DRIVER( srmp6 ) /* (c) 1996 Seta (Japan) */ - - /* Seta Aleck64 and similar (N64 based) */ - DRIVER( aleck64 ) /* (c) 1998 Nintendo/Seta */ - DRIVER( 11beat ) /* (c) 1998 Hudson */ - DRIVER( mtetrisc ) /* (c) 1998 Capcom */ - DRIVER( starsldr ) /* (c) 1998 Hudson/Seta */ - DRIVER( vivdolls ) /* (c) 1998 Visco */ - DRIVER( srmvs ) /* (c) 1999 Seta */ - DRIVER( twrshaft ) /* (c) 2003 Aruze */ - DRIVER( hipai ) /* (c) 2003 Seta/Aruze (Arcade TV Game List - P.92, Right, 16 from top) */ - DRIVER( doncdoon ) /* (c) 2003 Aruze (Arcade TV Game List - P.90, Right, 8 from bottom) */ - DRIVER( kurufev ) /* (c) 2003 Aruze (Arcade TV Game List - P.75, Right, 1st entry on top) */ - DRIVER( mayjin3 ) /* (c) 2000 Seta (Arcade TV Game List - P.101, Right, 9 from top) */ - - - /* Atlus games */ - DRIVER( powerins ) /* (c) 1993 Atlus (USA) */ - DRIVER( powerinsj ) /* (c) 1993 Atlus (Japan) */ - DRIVER( powerinsa ) /* (c) 1993 Atlus (bootleg of USA version) */ - DRIVER( powerinsb ) /* (c) 1993 Atlus (bootleg of USA version) */ - DRIVER( ohmygod ) /* (c) 1993 Atlus (Japan) */ - DRIVER( naname ) /* (c) 1994 Atlus (Japan) */ - DRIVER( blmbycar ) /* (c) 1994 ABM & Gecas - uses same gfx chip as powerins? */ - DRIVER( blmbycaru ) /* (c) 1994 ABM & Gecas - uses same gfx chip as powerins? */ - DRIVER( watrball ) /* (c) 1996 ABM */ - - /* Sun Electronics / SunSoft games */ - DRIVER( dai3wksi ) /* 1979.09 Dai San Wakusei (The Third Planet) */ - DRIVER( speakres ) /* [Sun Electronics] */ - DRIVER( speakresb ) /* bootleg */ - DRIVER( stratvox ) /* [1980 Sun Electronics] Taito */ - DRIVER( stratvoxb ) /* bootleg */ - DRIVER( spacecho ) /* bootleg */ - DRIVER( spacecho2 ) /* bootleg */ - DRIVER( route16 ) /* (c) 1981 Tehkan/Sun + Centuri license */ - DRIVER( route16a ) /* (c) 1981 Tehkan/Sun + Centuri license */ - DRIVER( route16b ) /* bootleg */ - DRIVER( routex ) /* bootleg */ - DRIVER( ttmahjng ) /* Taito */ - DRIVER( fnkyfish ) /* (c) 1981 Sun Electronics */ - DRIVER( kangaroo ) /* (c) 1982 Sun Electronics */ - DRIVER( kangarooa ) /* 136008 (c) 1982 Atari */ - DRIVER( kangaroob ) /* (bootleg) */ - DRIVER( arabian ) /* TVG13 (c) 1983 Sun Electronics */ - DRIVER( arabiana ) /* 136019 (c) 1983 Atari */ - DRIVER( markham ) /* TVG14 (c) 1983 Sun Electronics */ - DRIVER( strnskil ) /* TVG15 (c) 1984 Sun Electronics */ - DRIVER( guiness ) /* TVG15 (c) 1984 Sun Electronics */ - DRIVER( pettanp ) /* TVG16 (c) 1984 Sun Electronics (Japan) */ - DRIVER( banbam ) /* TVG16 (c) 1984 Sun Electronics */ - DRIVER( ikki ) /* TVG17 (c) 1985 Sun Electronics (Japan) */ - DRIVER( farmer ) /* TVG17 (c) 1985 Sun Electronics */ - DRIVER( shanghai ) /* (c) 1988 Sunsoft (Sun Electronics) */ - DRIVER( shangha2 ) /* (c) 1989 Sunsoft (Sun Electronics) */ - DRIVER( kothello ) /* (c) 1990 Success */ - DRIVER( shangha3 ) /* (c) 1993 Sunsoft */ - DRIVER( heberpop ) /* (c) 1994 Sunsoft / Atlus */ - DRIVER( blocken ) /* (c) 1994 KID / Visco */ -/* -Other Sun games -1978.11 (GT)Block Perfect -1978.12 (GT)Block Challenger -1979.04 Galaxy Force -1979.07 Run Away -1979.12 Warp 1 -1980.10 Cosmo Police (Cosmopolis?) -*/ - - /* SunA games */ - DRIVER( goindol ) /* (c) 1987 Sun a Electronics */ - DRIVER( goindolu ) /* (c) 1987 Sun a Electronics */ - DRIVER( goindolk ) /* (c) 1987 Sun a Electronics */ - DRIVER( rranger ) /* (c) 1988 SunA + Sharp Image license */ - DRIVER( sranger ) /* (c) 1988 */ - DRIVER( srangerb ) /* bootleg */ - DRIVER( srangerw ) /* (c) 1988 SunA (WDK License) */ - DRIVER( hardhead ) /* (c) 1988 SunA */ - DRIVER( hardheadb ) /* bootleg */ - DRIVER( pop_hh ) /* bootleg */ - DRIVER( sparkman ) /* (c) 1989 SunA */ - DRIVER( sparkmana ) /* (c) 1989 SunA */ - DRIVER( starfigh ) /* (c) 1990 SunA */ - DRIVER( hardhea2 ) /* (c) 1991 SunA */ - DRIVER( brickzn ) /* (c) 1992 SunA */ - DRIVER( brickzn3 ) /* (c) 1992 SunA */ - DRIVER( bestbest ) /* (c) 1994 SunA */ - DRIVER( sunaq ) /* (c) 1994 SunA */ - DRIVER( bssoccer ) /* (c) 1996 SunA */ - DRIVER( uballoon ) /* (c) 1996 SunA */ - - /* Dooyong games */ - DRIVER( gundealr ) /* (c) 1990 Dooyong */ - DRIVER( gundealra ) /* (c) 1990 Dooyong */ - DRIVER( gundealrt ) /* (c) 1990 Tecmo */ - DRIVER( yamyam ) /* (c) 1990 Dooyong */ - DRIVER( wiseguy ) /* (c) 1990 Dooyong */ - DRIVER( lastday ) /* (c) 1990 Dooyong */ - DRIVER( lastdaya ) /* (c) 1990 Dooyong */ - DRIVER( gulfstrm ) /* (c) 1991 Dooyong */ - DRIVER( gulfstrmm ) /* (c) 1991 Dooyong + distributed by Media Shoji */ - DRIVER( pollux ) /* (c) 1991 Dooyong */ - DRIVER( polluxa ) /* (c) 1991 Dooyong */ - DRIVER( polluxa2 ) /* (c) 1991 Dooyong */ - DRIVER( flytiger ) /* (c) 1992 Dooyong */ - DRIVER( bluehawk ) /* (c) 1993 Dooyong */ - DRIVER( bluehawkn ) /* (c) 1993 NTC */ - DRIVER( sadari ) /* (c) 1993 NTC */ - DRIVER( gundl94 ) /* (c) 1994 Dooyong */ - DRIVER( primella ) /* (c) 1994 NTC */ - DRIVER( superx ) /* (c) 1994 NTC */ - DRIVER( superxm ) /* (c) 1994 Mitchell */ - DRIVER( rshark ) /* (c) 1995 Dooyong */ - DRIVER( popbingo ) /* (c) 1996 Dooyong */ - - /* Tong Electronic games */ - DRIVER( leprechn ) /* (c) 1982 */ - DRIVER( potogold ) /* (c) 1982 */ - DRIVER( leprechp ) /* (c) 1982 */ - DRIVER( piratetr ) /* (c) 1982 */ - DRIVER( beezer ) /* (c) 1982 */ - DRIVER( beezer1 ) /* (c) 1982 */ - - /* Comad games */ - DRIVER( pushman ) /* (c) 1990 Comad */ - DRIVER( pushmana ) /* (c) 1990 Comad */ - DRIVER( pushmans ) /* (c) 1990 Comad + American Sammy license */ - DRIVER( pushmant ) /* (c) 1990 Comad + Top Tronic license */ - DRIVER( bballs ) /* (c) 1991 Comad */ - DRIVER( zerozone ) /* (c) 1993 Comad */ - DRIVER( lvgirl94 ) /* (c) 1994 Comad */ - DRIVER( hotpinbl ) /* (c) 1995 Comad & New Japan System */ - DRIVER( galspnbl ) /* (c) 1996 Comad */ - /* the following ones run on modified Gals Panic hardware */ - DRIVER( fantasia ) /* (c) 1994 Comad & New Japan System */ - DRIVER( supmodel ) /* (c) 1994 Comad & New Japan System */ - DRIVER( newfant ) /* (c) 1995 Comad & New Japan System */ - DRIVER( fantsy95 ) /* (c) 1995 Hi-max Technology Inc. */ - DRIVER( zipzap ) /* (c) 1995 Barko Corp */ - DRIVER( missw96 ) /* (c) 1996 Comad */ - DRIVER( missmw96 ) /* (c) 1996 Comad */ - DRIVER( fantsia2 ) /* (c) 1997 Comad */ - DRIVER( fantsia2a ) /* (c) 1997 Comad */ - DRIVER( wownfant ) /* (c) 2002 Comad */ - DRIVER( galhustl ) /* (c) 1997 ACE International */ - - /* Playmark games */ - DRIVER( sslam ) /* (c) 1993 - hack of Namco's Super World Court */ - DRIVER( sslama ) /* (c) 1993 - hack of Namco's Super World Court */ - DRIVER( powerbal ) /* (c) 1994 */ - DRIVER( powerbals ) /* (c) 1994 */ - DRIVER( magicstk ) /* (c) 1995 */ - DRIVER( hotminda ) /* (c) 1995 */ - DRIVER( bigtwin ) /* (c) 1995 */ - DRIVER( bigtwinb ) /* (c) 1995 */ - DRIVER( wbeachvl ) /* (c) 1995 */ - DRIVER( wbeachvl2 ) /* (c) 1995 */ - DRIVER( excelsr ) /* (c) 1995 */ - DRIVER( hotmind ) /* (c) 1995 */ - DRIVER( hrdtimes ) /* (c) 1994 */ - DRIVER( hrdtimesa ) /* (c) 1994 */ - DRIVER( drtomy ) /* (c) 1993 no copyright message (1993 on pcb), some code taken from 'Big Karnak' */ - DRIVER( sderby ) /* (c) 1996 */ - DRIVER( pmroulet ) - DRIVER( spacewin ) - - /* Pacific Novelty games */ - DRIVER( sharkatt ) /* (c) 1980 */ - DRIVER( thief ) /* (c) 1981 */ - DRIVER( natodef ) /* (c) 1982 */ - DRIVER( natodefa ) /* (c) 1982 */ - DRIVER( mrflea ) /* (c) 1982 */ - - /* Tecfri games */ - DRIVER( ambush ) /* (c) 1983 */ - DRIVER( ambushj ) /* (c) 1983 Nippon Amuse license */ - DRIVER( ambushv ) /* (c) 1983 Volt Electronics license */ - DRIVER( holeland ) /* (c) 1984 */ - DRIVER( crzrally ) /* (c) 1985 */ - DRIVER( crzrallya ) /* (c) 1985 */ - DRIVER( crzrallyg ) /* (c) 1985 */ - DRIVER( speedbal ) /* (c) 1987 */ - DRIVER( sauro ) /* (c) 1987 */ - DRIVER( trckydoc ) /* (c) 1987 */ - DRIVER( trckydoca ) /* (c) 1987 */ - - /* Metro games */ - DRIVER( karatour ) /* (c) 1992 Mitchell */ - DRIVER( ladykill ) /* (c) 1993 Yanyaka + Mitchell license - (Arcade TV Game List - P.101, Right, 2 from Bottom) */ - DRIVER( moegonta ) /* (c) 1993 Yanyaka (Japan) (Arcade TV Game List - P.101, Right, 2 from Bottom) */ - DRIVER( pangpoms ) /* (c) 1992 */ - DRIVER( pangpomsm ) /* (c) 1992 Mitchell / Metro */ - DRIVER( skyalert ) /* (c) 1992 */ - DRIVER( poitto ) /* (c) 1993 Metro / Able Corp. */ - DRIVER( dharma ) /* (c) 1994 */ - DRIVER( dharmak ) /* (c) 1994 */ - DRIVER( lastfort ) /* (c) 1994 */ - DRIVER( lastforte ) /* (c) 1994 */ - DRIVER( lastfortk ) /* (c) 1994 */ - DRIVER( lastfortg ) /* (c) 1994 */ - DRIVER( toride2g ) /* (c) 1994 */ - DRIVER( toride2gg ) /* (c) 1994 */ - DRIVER( toride2j ) /* (c) 1994 */ - DRIVER( gunmast ) /* (c) 1994 */ - DRIVER( daitorid ) /* (c) 1995 */ - DRIVER( daitoa ) /* (c) 1995 */ - DRIVER( dokyusei ) /* (c) 1995 Make Software / Elf / Media Trading */ - DRIVER( dokyusp ) /* (c) 1995 Make Software / Elf / Media Trading */ - DRIVER( msgogo ) /* (c) 1995 Metro */ - DRIVER( puzzli ) /* (c) 1995 Metro / Banpresto */ - DRIVER( 3kokushi ) /* (c) 1996 Mitchell */ - DRIVER( pururun ) /* (c) 1995 Metro / Banpresto */ - DRIVER( balcube ) /* (c) 1996 */ - DRIVER( mouja ) /* (c) 1996 Etona (Japan) */ - DRIVER( bangball ) /* (c) 1996 Banpresto / Kunihiko Tashiro+Goodhouse */ - DRIVER( batlbubl ) /* (c) 1996 Banpresto / Kunihiko Tashiro+Goodhouse */ - DRIVER( gakusai ) /* (c) 1997 MakeSoft */ - DRIVER( gakusai2 ) /* (c) 1998 MakeSoft */ - DRIVER( blzntrnd ) /* (c) 1994 Human Amusement */ - DRIVER( gstrik2 ) /* (c) 1996 Human Amusement */ - DRIVER( gstrik2j ) - DRIVER( hyprduel ) /* (c) 1993 Technosoft (Japan) */ - DRIVER( hyprduel2 ) /* (c) 1993 Technosoft (Japan) */ - DRIVER( magerror ) /* (c) 1994 Technosoft (Japan) (Arcade TV Game List - P.100, Left, 13 from Bottom) */ - DRIVER( puzzlet ) /* (c) 2000 Yunizu Corporation (Japan) */ - - /* Venture Line games */ - DRIVER( spcforce ) /* (c) 1980 Venture Line */ - DRIVER( spcforc2 ) /* bootleg */ - DRIVER( meteor ) /* (c) 1981 Venture Line */ - DRIVER( looping ) /* (c) 1982 Video Games GMBH */ - DRIVER( loopingv ) /* (c) 1982 Video Games GMBH (Venture Line license) */ - DRIVER( loopingva ) /* (c) 1982 Video Games GMBH (Venture Line license) */ - DRIVER( skybump ) /* (c) 1982 Venture Line */ - DRIVER( suprridr ) /* (c) 1983 Venture Line + Taito license */ - - /* Yun Sung games */ - DRIVER( paradise ) /* (c) >1994 Yun Sung */ - DRIVER( paradlx ) /* (c) >1994 Yun Sung */ - DRIVER( para2dx ) /* (c) >1994 Yun Sung */ - DRIVER( tgtball ) /* (c) 1995 Yun Sung */ - DRIVER( tgtballa ) /* (c) 1995 Yun Sung */ - DRIVER( torus ) /* (c) 1996 Yun Sung */ - DRIVER( paprazzi ) /* (c) 1996 Yun Sung */ - DRIVER( madball ) /* (c) 1998 Yun Sung */ - DRIVER( madballn ) /* (c) 1998 Yun Sung */ - DRIVER( cannball ) /* (c) 1995 Yun Sung / Soft Visio */ - DRIVER( cannballv ) /* (c) 1995 Yun Sung / T&K */ - DRIVER( magix ) /* (c) 1995 Yun Sung */ - DRIVER( rocktris ) /* (c) 1994? Yun Sung */ - DRIVER( magicbub ) /* (c) Yun Sung */ - DRIVER( magicbuba ) /* (c) Yun Sung */ - DRIVER( shocking ) /* (c) 1997 Yun Sung */ - DRIVER( bombkick ) /* (c) 1998 Yun Sung */ - DRIVER( nmg5 ) /* (c) 1998 Yun Sung */ - DRIVER( nmg5e ) /* (c) 1998 Yun Sung */ - DRIVER( searchey ) /* (c) 1999 Yun Sung */ - DRIVER( searchp2 ) /* (c) 1999 Yun Sung */ - DRIVER( pclubys ) /* (c) 2000 Yun Sung */ - DRIVER( pclubysa ) /* (c) 2000 Yun Sung */ - DRIVER( garogun ) /* (c) 2000 Yun Sung */ - DRIVER( 7ordi ) /* (c) 2002 Yun Sung */ - DRIVER( wondstck ) /* (c) ???? Yun Sung */ - - /* Zilec games */ - DRIVER( blueprnt ) /* (c) 1982 Bally Midway (Zilec in ROM 3U, and the programmer names) */ - DRIVER( blueprntj ) /* (c) 1982 Jaleco (Zilec in ROM 3U, and the programmer names) */ - DRIVER( saturnzi ) /* (c) 1983 Jaleco (Zilec in ROM R6, and the programmer names) */ - - /* Fuuki FG-2 games */ - DRIVER( gogomile ) /* (c) 1995 */ - DRIVER( gogomilej ) /* (c) 1995 (Japan) */ - DRIVER( pbancho ) /* (c) 1996 (Japan) */ - - /* Fuuki FG-3 games */ - DRIVER( asurabld ) /* (c) 1998 (Japan) */ - DRIVER( asurabus ) /* (c) 2000 (Japan) */ - - /* Unico games */ - DRIVER( drgnmst ) /* (c) 1994 */ - DRIVER( burglarx ) /* (c) 1997 */ - DRIVER( zeropnt ) /* (c) 1998 */ - DRIVER( zeropnta ) /* (c) 1998 */ - DRIVER( zeropnt2 ) /* (c) 1999 */ - DRIVER( silkroad ) /* (c) 1999 */ - DRIVER( aoh ) /* (c) 2001 */ - - /* Afega games */ - DRIVER( twinactn ) /* (c) 1996 - bootleg of US AFF Mustang */ - DRIVER( stagger1 ) /* (c) 1998 */ - DRIVER( redhawk ) /* (c) 1997 */ - DRIVER( redhawke ) /* (c) 1997 Excellent Co., Ltd license */ - DRIVER( redhawki ) /* (c) 1997 Haedong Corp. license */ - DRIVER( redhawkb ) /* (c) 1997 */ - DRIVER( grdnstrm ) /* (c) 1998 */ - DRIVER( grdnstrmk ) /* (c) 1998 */ - DRIVER( bubl2000 ) /* (c) 1998 Tuning */ - DRIVER( hotbubl ) /* (c) 1998 Pandora */ - DRIVER( popspops ) /* (c) 1999 */ - DRIVER( firehawk ) /* (c) 2001 ESD */ - DRIVER( mangchi ) /* (c) 2000 */ - DRIVER( spec2k ) /* (c) 2000 Yonatech */ - - /* ESD games */ - /* http://www.esdgame.co.kr/english/ */ - DRIVER( multchmp ) /* (c) 1998 (World) */ - DRIVER( multchmpk ) /* (c) 1998 (Korea) */ - DRIVER( mchampdx ) /* (c) 1999 ESD */ - DRIVER( mchampdxa ) /* (c) 1999 ESD */ - DRIVER( mchampdxb ) /* (c) 1999 ESD */ - DRIVER( hedpanic ) /* (c) 2000 ESD */ - DRIVER( hedpanicf ) /* (c) 2000 ESD + Fuuki, Co. Ltd. */ - DRIVER( hedpanico ) /* (c) 1999 ESD */ - DRIVER( tangtang ) /* (c) 2000 ESD */ - DRIVER( swatpolc ) /* (c) 2001 ESD */ - - /* Dyna Electronics / Dynax / Nakanihon games */ - DRIVER( royalmj ) /* (c) 1982 Nichibutsu */ - DRIVER( openmj ) /* (c) 1982 Nichibutsu */ - DRIVER( royalmah ) /* Falcon bootleg */ - DRIVER( janyoup2 ) /* Falcon bootleg */ - DRIVER( janputer ) /* (c) 1982 Taito */ - DRIVER( janoh ) /* (c) 1984 Toaplan */ - DRIVER( janoha ) /* (c) 1984 Toaplan */ - DRIVER( jansou ) /* (c) 1985 Dyna */ - DRIVER( jansoua ) /* (c) 1985 Dyna */ - DRIVER( mjsiyoub ) /* (c) 1986 Visco */ - DRIVER( mjsenka ) /* (c) 1986 Visco */ - DRIVER( mjyarou ) /* (c) 1986 Visco / Video System */ - DRIVER( mjclub ) /* (c) 1986 Xex */ - DRIVER( daisyari ) /* (c) 1989 Best System */ - DRIVER( suzume ) /* ?? (c) 1986 Dyna Electronics */ - DRIVER( hnayayoi ) /* "02" (c) 1987 Dyna Electronics */ - DRIVER( dondenmj ) /* "03" (c) 1986 Dyna Electronics */ - DRIVER( ippatsu ) /* ?? (c) 1986 Dyna Electronics */ - DRIVER( hnfubuki ) /* "06" (c) 1987 Dynax */ - DRIVER( mjdiplob ) /* "07" (c) 1987 Dynax */ - DRIVER( untoucha ) /* "08" (c) 1987 Dynax */ - DRIVER( tontonb ) /* "09" (c) 1987 Dynax */ - DRIVER( makaijan ) /* ?? (c) 1987 Dynax */ - DRIVER( hanamai ) /* "16" (c) 1988 Dynax */ - DRIVER( majs101b ) /* "17" (c) [1988] Dynax */ - DRIVER( mjapinky ) /* 1988 Dynax */ - DRIVER( mjdejavu ) /* 1989 Dynax */ - DRIVER( mjdejav2 ) /* 1989 Dynax */ - DRIVER( hnkochou ) /* "20" (c) 1989 Dynax */ - DRIVER( mjderngr ) /* "22" (c) 1989 Dynax */ - DRIVER( hnoridur ) /* "23" (c) 1989 Dynax */ - DRIVER( drgpunch ) /* "24" (c) 1989 Dynax */ - DRIVER( mjfriday ) /* "26" (c) [1989] Dynax */ - DRIVER( jantouki ) /* "27" Jantouki 1989 Dynax */ - DRIVER( gekisha ) /* "28" 1989 Dynax */ - DRIVER( mjifb ) /* "29" 1990 Dynax */ - DRIVER( mjifb2 ) /* "29" 1990 Dynax */ - DRIVER( mjifb3 ) /* "29" 1990 Dynax */ - DRIVER( mjvegas ) /* 1991 Dynax */ - DRIVER( mjvegasa ) /* 1991 Dynax */ - DRIVER( cafetime ) /* 1992 Dynax */ - DRIVER( cafedoll ) /* 1993 Dynax */ - DRIVER( janptr96 ) /* 1996 Dynax */ - DRIVER( janptrsp ) /* 1997 Dynax */ - DRIVER( sprtmtch ) /* "31" (c) 1989 Dynax + Fabtek license */ - DRIVER( maya ) /* (c) 1994 Promat */ - DRIVER( mayaa ) /* (c) 1994 Promat */ - DRIVER( inca ) /* (c) 199? ???? */ - DRIVER( blktouch ) /* (c) Yang Gi Co Ltd. */ - DRIVER( mcnpshnt ) /* "33" Mahjong Campus Hunting 1990 Dynax */ - DRIVER( 7jigen ) /* "37" 7jigen no Youseitachi 1990 Dynax */ - DRIVER( neruton ) /* "45" Mahjong Neruton Haikujiradan 1990 Dynax */ - DRIVER( nerutona ) /* "45" Mahjong Neruton Haikujiradan 1990 Dynax */ - DRIVER( mjcomv1 ) /* 1991 Dynax */ - DRIVER( shpeng ) /* (c) 1995 WSAC Systems */ - DRIVER( tenkai ) /* 1991 Dynax */ - DRIVER( tenkai2b ) /* 1991 Dynax */ - DRIVER( tenkaibb ) /* 1991 Dynax */ - DRIVER( tenkaicb ) /* 1991 Dynax */ - DRIVER( tenkaid ) /* 1991 Dynax */ - DRIVER( tenkaie ) /* 1991 Dynax */ - DRIVER( htengoku ) /* 1992 Dynax */ - DRIVER( mjreach ) /* 1994 Dynax */ - DRIVER( mjdialq2 ) /* "52" (c) 1991 Dynax */ - DRIVER( yarunara ) /* "55" Mahjong Yarunara 1991 Dynax */ - DRIVER( mjangels ) /* "61" Mahjong Angels 1991 Dynax */ - DRIVER( quiztvqq ) /* "64" Quiz TV Gassyuukoku Q&Q 1992 Dynax */ - DRIVER( mmpanic ) /* "70" 1992 Nakanihon/Taito */ - DRIVER( quizchq ) /* "73" (c) 1993 Nakanihon */ - DRIVER( quizchql ) /* "73" (c) 1993 Laxan */ - DRIVER( funkyfig ) /* "74" (c) 1993 Nakanihon + East Technology */ - DRIVER( animaljr ) /* "75" 1993 Nakanihon/Taito (USA) */ - DRIVER( animaljrs ) /* "75" 1993 Nakanihon/Taito (Spanish version) */ - DRIVER( animaljrj ) /* "75" 1993 Nakanihon/Taito (Japan) */ - DRIVER( hginga ) /* 1994 Dynax */ - DRIVER( mjmyster ) /* "?7" 1994 Dynax */ - DRIVER( mjmywrld ) /* "?7" 1994 Dynax */ - DRIVER( mjmyornt ) /* 1994 Dynax */ - DRIVER( mjmyuniv ) /* 1994 Dynax */ - DRIVER( quiz365 ) /* "78" (c) 1994 Nakanihon */ - DRIVER( quiz365t ) /* "78" (c) 1994 Nakanihon (Taiwan) */ - DRIVER( rongrong ) /* "80" (c) 1994 Nakanihon */ - DRIVER( rongrongj ) /* "80" (c) 1994 Nakanihon */ - DRIVER( rongrongg ) /* "80" (c) 1994 Nakanihon */ - DRIVER( hparadis ) /* (c) 1994 Nakanihon */ - DRIVER( hgokou ) /* (c) 1995 Nakanihon */ - DRIVER( mjdchuka ) /* (c) 1995 Nakanihon */ - DRIVER( mjtensin ) /* "100" 1995 Dynax */ - DRIVER( nettoqc ) /* "103" (c) 1995 Nakanihon */ - DRIVER( majrjhdx ) /* "105" 1996 Dynax */ - DRIVER( ddenlovj ) /* "113" (c) 1995 Dynax (Japan) */ - DRIVER( ddenlovrk ) /* "113" (c) 1995 Dynax (Korea) */ - DRIVER( ddenlovr ) /* "113" (c) 1996 Dynax (Hong Kong) */ - DRIVER( ddenlovrb ) /* bootleg */ - DRIVER( hanakanz ) /* "507" 1996 Dynax */ - DRIVER( akamaru ) /* "501" 1996 Dynax */ - DRIVER( sryudens ) /* "502" 1996 Dynax / Face */ - DRIVER( mjflove ) /* 1996 Dynax */ - DRIVER( hkagerou ) /* "510" Hana Kagerou 1996 Nakanihon */ - DRIVER( realbrk ) /* "600" Billiard Academy Real Break 1998 (Europe)*/ - DRIVER( realbrkk ) /* "600" Billiard Academy Real Break 1998 (Korea)*/ - DRIVER( realbrkj ) /* "523" Billiard Academy Real Break 1998 (Japan)*/ - DRIVER( dai2kaku ) /* "522" DaiDaiKakumei (Japan)*/ - DRIVER( mjchuuka ) /* "???" (c) 1998 Dynax */ - DRIVER( mjreach1 ) /* "526" Mahjong Reach Ippatsu 1998 Nihon System/Dynax */ - DRIVER( cafebrk ) /* "528" Mahjong Cafe Break (C) 1999 Nakanihon / Dynax */ - DRIVER( jongtei ) /* "532" Mahjong Jong-Tei (C) 1999 Dynax */ - DRIVER( daimyojn ) /* 2002 Dynax / Techno-Top */ - - DRIVER( pkgnsh ) /* "505" Pachinko Gindama Shoubu 1998 (Japan) */ - DRIVER( pkgnshdx ) /* "522" Pachinko Gindama Shoubu DX 1998 (Japan) */ - - DRIVER( hjingi ) /* "???" 1990 Dynax */ - DRIVER( hanayara ) /* "???" */ - DRIVER( mjelctrn ) /* "???" Mahjong Electron Base parts 2 & 4 */ - DRIVER( mjelct3 ) /* "???" Mahjong Electron Base parts 2 & 3 */ - DRIVER( mjelct3a ) /* "???" Mahjong Electron Base parts 2 & 3 */ - DRIVER( mjelctrb ) /* (c) 1993 Dynax Mahjong Electron Base parts 4 */ - DRIVER( majxtal7 ) /* "???" */ - - /* Sigma games */ - DRIVER( nyny ) /* (c) 1980 Sigma Ent. Inc. */ - DRIVER( nynyg ) /* (c) 1980 Sigma Ent. Inc. + Gottlieb */ - DRIVER( warcadia ) /* (c) 1982 Sigma Ent. Inc. */ - DRIVER( r2dtank ) /* (c) 1980 Sigma Ent. Inc. */ - DRIVER( spiders ) /* (c) 1981 Sigma Ent. Inc. */ - DRIVER( spiders2 ) /* (c) 1981 Sigma Ent. Inc. */ - DRIVER( spiders3 ) /* (c) 1981 Sigma Ent. Inc. */ - DRIVER( spinner ) /* bootleg */ - DRIVER( sub ) /* (c) 1985 Sigma Ent. Inc. */ - - /* Sigma B52 */ - DRIVER( jwildb52 ) /* (c) 199? Sigma */ - DRIVER( jwildb52a ) /* (c) 199? Sigma */ - DRIVER( jwildb52h ) /* (c) 199? Sigma */ - - /* Sigma B98 / Sammy Medal Games */ - DRIVER( gegege ) /* (c) 1997 Banpresto / Sigma */ - DRIVER( sammymdl ) /* (c) 2000-2003 Sammy */ - DRIVER( animalc ) /* (c) 2000 Sammy */ - DRIVER( itazuram ) /* (c) 2000 Sammy */ - DRIVER( pyenaget ) /* (c) 2000 Sammy */ - DRIVER( tdoboon ) /* (c) 2000 Sammy */ - DRIVER( haekaka ) /* (c) 2001 Sammy */ - - /* IGS games ( www.igs.com.tw ) */ - DRIVER( goldstar ) /* (c) 198? IGS */ - DRIVER( goldstbl ) /* (c) 198? IGS */ - DRIVER( moonlght ) /* bootleg */ - DRIVER( chry10 ) /* bootleg */ - DRIVER( chrygld ) /* bootleg */ - DRIVER( cabaret ) /* (c) 1992 AMT */ - DRIVER( cpoker ) /* (c) 1993? IGS */ - DRIVER( cpokert ) /* (c) 1993? Tuning */ - DRIVER( csk227it ) /* (c) 198? IGS */ - DRIVER( csk234it ) /* (c) 198? IGS */ - DRIVER( igs_ncs ) /* (c) 198? IGS */ - DRIVER( igs_ncs2 ) /* (c) 2000 IGS */ - DRIVER( spk115it ) /* (c) 199? IGS */ - DRIVER( spk116it ) /* (c) 199? IGS */ - DRIVER( jackie ) /* (c) 1993 IGS */ - DRIVER( pktet346 ) /* (c) 199? IGS */ - DRIVER( chleague ) /* (c) 199? IGS */ - DRIVER( chleagul ) /* (c) 199? IGS */ - DRIVER( number10 ) /* (c) IGS (Board labeled Playmark Srl) */ - DRIVER( numbr10l ) /* (c) IGS (Board labeled Playmark Srl) */ - DRIVER( cpokerpk ) /* (c) SGS (bootleg blue board) */ - DRIVER( cpokerpkg ) /* (c) SGS (bootleg green board) */ - DRIVER( citalcup ) /* (c) SGS (bootleg of IGS v220it) */ - DRIVER( stellecu ) /* (c) 1998 */ - DRIVER( iqblock ) /* (c) 1993 */ - DRIVER( grndtour ) /* (c) 1993 */ - DRIVER( 5clown ) /* (c) IGS 1993 */ - DRIVER( 5clowna ) /* (c) IGS 1993 */ - DRIVER( 5clownsp ) /* (c) IGS 1993 */ - - /* IGS005 + IGS006 + IGS007 + IGS008 Games */ - DRIVER( lordgun ) /* (c) 1994 */ - DRIVER( aliencha ) /* (c) 1994 */ - DRIVER( alienchac ) /* (c) 1994 */ - - /* IGS009 Games */ - DRIVER( jingbell ) /* (c) 1995? */ - DRIVER( gp98 ) /* (c) 1998 */ - - /* IGS011 Games */ - DRIVER( lhb ) /* (c) 1995 */ - DRIVER( lhbv33c ) /* (c) 1995 */ - DRIVER( ryukobou ) /* (c) 1995 */ - DRIVER( dbc ) /* (c) 199? */ - DRIVER( lhb2 ) /* (c) 1996 */ - DRIVER( xymg ) /* (c) 1996 */ - DRIVER( wlcc ) /* (c) 1996 */ - DRIVER( vbowl ) /* (c) 1996 */ - DRIVER( vbowlj ) /* (c) 1996 */ - DRIVER( drgnwrld ) /* (c) 1997 */ - DRIVER( drgnwrldv30 ) /* (c) 1995 */ - DRIVER( drgnwrldv21 ) /* (c) 1995 */ - DRIVER( drgnwrldv21j ) /* (c) 1995 */ - DRIVER( drgnwrldv20j ) /* (c) 1995 */ - DRIVER( drgnwrldv10c ) /* (c) 1995 */ - DRIVER( drgnwrldv11h ) /* (c) 1995 */ - DRIVER( nkishusp ) /* (c) 1998 */ - - /* IGS017 / IGS031 Games */ - DRIVER( iqblocka ) /* (c) 1996 */ - DRIVER( iqblockf ) /* (c) 1996 */ - DRIVER( tjsb ) /* (c) 1997 */ - DRIVER( sdmg2 ) /* (c) 1997 */ - DRIVER( mgdh ) /* (c) 1997 */ - DRIVER( mgdha ) /* (c) 1997 */ - DRIVER( mgcs ) /* (c) 1998 */ - DRIVER( lhzb2 ) /* (c) 1998 */ - DRIVER( lhzb2a ) /* (c) 1998 */ - DRIVER( slqz2 ) /* (c) 1998 */ - DRIVER( tarzan ) /* (c) 1999? */ - DRIVER( tarzana ) /* (c) 1999? */ - DRIVER( starzan ) /* (c) 2000? */ - - /* IGS027A Games */ - DRIVER( bigd2 ) /* (c) 2000 */ - DRIVER( sdwx ) /* (c) 2002 */ - DRIVER( sddz ) /* (c) 200? */ - DRIVER( lhzb3 ) /* (c) 200? */ - DRIVER( lhzb4 ) /* (c) 200? */ - DRIVER( klxyj ) /* (c) 200? */ - DRIVER( mgfx ) /* (c) 200? */ - - /* IGS PGM System Games */ - DRIVER( pgm ) - DRIVER( orlegend ) /* (c) 1997 */ - DRIVER( orlegende ) /* (c) 1997 */ - DRIVER( orlegendc ) /* (c) 1997 */ - DRIVER( orlegendca ) /* (c) 1997 */ - DRIVER( orlegend111c ) /* (c) 1997 */ - DRIVER( orlegend105k ) /* (c) 1997 */ - DRIVER( drgw2 ) /* (c) 1997 */ - DRIVER( dw2v100x ) /* (c) 1997 */ - DRIVER( drgw2c ) /* (c) 1997 */ - DRIVER( drgw2j ) /* (c) 1997 */ - DRIVER( drgw3 ) /* (c) 1998 */ - DRIVER( drgw3105 ) /* (c) 1998 */ - DRIVER( drgw3100 ) /* (c) 1998 */ - DRIVER( dwex ) /* (c) 1998 */ - DRIVER( killbld ) /* (c) 1998 */ - DRIVER( killbld104 ) /* (c) 1998 */ - DRIVER( kov ) /* (c) 1999 */ - DRIVER( kovplus ) /* (c) 1999 */ - DRIVER( kovplusa ) /* (c) 1999 */ - DRIVER( kov115 ) /* (c) 1999 */ - DRIVER( kov100 ) /* (c) 1999 */ - DRIVER( kovsh ) /* (c) 1999 */ - DRIVER( kovsh103 ) /* (c) 1999 */ - DRIVER( kovqhsgs ) /* bootleg */ - DRIVER( kovlsqh2 ) /* bootleg */ - DRIVER( kovlsjb ) /* bootleg */ - DRIVER( kovlsjba ) /* bootleg */ - DRIVER( photoy2k ) /* (c) 1999 */ - DRIVER( photoy2k102 ) /* (c) 1999 */ - DRIVER( photoy2k104 ) /* (c) 1999 */ - DRIVER( puzlstar ) /* (c) 1999 */ - DRIVER( olds ) /* (c) 1999 */ - DRIVER( olds100 ) /* (c) 1999 */ - DRIVER( olds100a ) /* (c) 1999 */ - DRIVER( kov2 ) /* (c) 2000 */ - DRIVER( kov2106 ) /* (c) 2000 */ - DRIVER( kov2103 ) /* (c) 2000 */ - DRIVER( kov2102 ) /* (c) 2000 */ - DRIVER( kov2101 ) /* (c) 2000 */ - DRIVER( kov2100 ) /* (c) 2000 */ - DRIVER( kov2p ) /* (c) 2000 */ - DRIVER( kov2p205 ) /* (c) 2000 */ - DRIVER( ddp2 ) /* (c) 2001 */ - DRIVER( ddp2100 ) /* (c) 2001 */ - DRIVER( ddp2101 ) /* (c) 2001 */ - DRIVER( puzzli2 ) /* (c) 2001 */ - DRIVER( martmast ) /* (c) 2001 */ - DRIVER( martmastc ) /* (c) 2001 */ - DRIVER( martmastc102 ) /* (c) 2001 */ - DRIVER( theglad ) /* (c) 2001 */ - DRIVER( theglada ) /* (c) 2001 */ - DRIVER( dw2001 ) /* (c) 2001 */ - DRIVER( py2k2 ) /* (c) 2001 */ - DRIVER( dmnfrnt ) /* (c) 2002 */ - DRIVER( dmnfrnta ) /* (c) 2002 */ - DRIVER( kovshp ) - DRIVER( oldsplus ) - DRIVER( killbldp ) - DRIVER( happy6 ) - DRIVER( svg ) - DRIVER( ket ) - DRIVER( keta ) - DRIVER( ketb ) - DRIVER( ddp3 ) - DRIVER( ddp3a ) - DRIVER( ddp3b ) - DRIVER( ddp3blk ) - DRIVER( espgal ) - DRIVER( orleg2 ) /* (c) 2007 */ - - /* Spirit Tech. Corp. */ - DRIVER( dunhuang ) /* (c) 1995 */ - - /* RamTek games */ - DRIVER( hitme ) /* (c) 05/1976 Ramtek */ - DRIVER( hitme1 ) /* (c) 05/1976 Ramtek */ - DRIVER( m21 ) /* (c) 08/1976 Mirco */ - DRIVER( barricad ) /* (c) 1976 Ramtek */ - DRIVER( brickyrd ) /* (c) 1976 Ramtek */ - DRIVER( starcrus ) /* (c) 1977 Ramtek */ - DRIVER( super21 ) /* (c) 1978 Mirco */ - - /* Omori games */ - DRIVER( shuttlei ) /* (c) 1979 Omori (Arcade Tv Game List - P.79, Left, 6 from bottom) */ - DRIVER( skylove ) /* (c) 1979 Omori */ - DRIVER( battlex ) /* (c) 1982 Omori E. Co., Ltd. */ - DRIVER( carjmbre ) /* (c) 1983 Omori Electric Co., Ltd. */ - DRIVER( popper ) /* (c) 1983 Omori Electric Co., Ltd. */ - - /* TCH games */ - DRIVER( speedspn ) /* (c) 1994 */ - DRIVER( mstworld ) /* (c) 1994 */ - - DRIVER( kickgoal ) /* (c) 1995 */ - DRIVER( actionhw ) /* (c) 1995 */ - - /* U.S. Games games */ - DRIVER( usg32 ) /* (c) 1987 */ - DRIVER( usg82 ) /* (c) 1988 */ - DRIVER( usg83 ) /* (c) 1988 */ - DRIVER( usg83x ) /* (c) 1988 */ - DRIVER( usg182 ) /* (c) 1989 */ - DRIVER( usg185 ) /* (c) 1991 */ - DRIVER( usg252 ) /* (c) 1992 */ - - /* Sanritsu games */ - DRIVER( mermaid ) /* (c) 1982 Rock-ola, made by Sanritsu */ - DRIVER( yachtmn ) /* (c) 1982 [Sanritsu] Esco */ - DRIVER( rougien ) /* (c) 1982 Sanritsu */ - DRIVER( drmicro ) /* (c) 1983 Sanritsu */ - DRIVER( jantotsu ) /* (c) 1983 Sanritsu */ - DRIVER( appoooh ) /* (c) 1984 Sega, made by Sanritsu */ - DRIVER( robowres ) /* (c) 1986 Sega */ - DRIVER( robowresb ) /* bootleg */ - DRIVER( bankp ) /* (c) 1984 Sega, made by Sanritsu */ - DRIVER( combh ) /* (c) 1987 Sega, made by Sanritsu */ - DRIVER( mjkjidai ) /* (c) 1986 Sanritsu */ - DRIVER( chinsan ) /* (c) 1987 Sanritsu */ - DRIVER( mayumi ) /* (c) 1988 Victory L.L.C., made by Sanritsu */ - - /* Rare games */ - DRIVER( xtheball ) /* (c) 1991 Rare */ - DRIVER( btoads ) /* (c) 1994 Rare */ - DRIVER( kinst ) /* (c) 1994 Rare */ - DRIVER( kinst14 ) /* (c) 1994 Rare */ - DRIVER( kinst13 ) /* (c) 1994 Rare */ - DRIVER( kinstp ) /* (c) 1994 Rare */ - DRIVER( kinst2 ) /* (c) 1995 Rare */ - DRIVER( kinst2k4 ) /* (c) 1995 Rare */ - DRIVER( kinst213 ) /* (c) 1995 Rare */ - DRIVER( kinst2k3 ) /* (c) 1995 Rare */ - DRIVER( kinst211 ) /* (c) 1995 Rare */ - DRIVER( kinst210 ) /* (c) 1995 Rare */ - - /* Nihon System games */ - DRIVER( gigas ) /* (c) 1986 Sega */ - DRIVER( gigasb ) /* (c) 1986 bootleg */ - DRIVER( gigasm2b ) /* (c) 1986 bootleg */ - DRIVER( oigas ) /* (c) 1986 bootleg */ - DRIVER( pbillrd ) /* (c) 1987 Nihon System */ - DRIVER( pbillrds ) /* (c) 1988 Nihon System (+ optional Sega) */ - DRIVER( freekick ) /* (c) 1988 Nihon System (+ optional Sega) */ - DRIVER( freekickb ) /* (c) 1987 bootleg */ - DRIVER( freekickb2 ) /* (c) 1987 bootleg */ - DRIVER( countrun ) /* (c) 1988 Nihon System (+ optional Sega) */ - DRIVER( countrunb ) /* (c) 1988 bootleg */ - DRIVER( countrunb2 ) /* (c) 1988 bootleg */ - - /* Alba games */ - DRIVER( rmhaihai ) /* (c) 1985 Alba */ - DRIVER( rmhaihib ) /* (c) 1985 Alba */ - DRIVER( rmhaijin ) /* (c) 1986 Alba */ - DRIVER( rmhaisei ) /* (c) 1986 Visco */ - DRIVER( themj ) /* (c) 1987 Visco */ - DRIVER( hanaroku ) /* (c) 1988 Alba */ - DRIVER( yumefuda ) /* (c) 198? Alba */ - - /* Home Data games */ - DRIVER( hourouki ) /* (c) 1987 Home Data */ - DRIVER( mhgaiden ) /* (c) 1987 Home Data */ - DRIVER( mirderby ) /* (c) 1988 Home Data? */ - DRIVER( mjhokite ) /* (c) 1988 Home Data */ - DRIVER( mjclinic ) /* (c) 1988 Home Data */ - DRIVER( mrokumei ) /* (c) 1988 Home Data */ - DRIVER( reikaids ) /* (c) 1988 Home Data */ - DRIVER( mjkojink ) /* (c) 1989 Home Data */ - DRIVER( vitaminc ) /* (c) 1989 Home Data */ - DRIVER( mjyougo ) /* (c) 1989 Home Data */ - DRIVER( lemnangl ) /* (c) 1990 Home Data */ - DRIVER( mjkinjas ) /* (c) 1991 Home Data */ - DRIVER( battlcry ) /* (c) 1991 Home Data */ - DRIVER( jogakuen ) /* (c) 1992 Windom corporation */ - DRIVER( mjikaga ) /* (c) 1991 Mitchell */ - DRIVER( mjprivat ) /* (c) 1991 Matoba */ - - /* Art & Magic games */ - DRIVER( ultennis ) /* (c) 1993 */ - DRIVER( ultennisj ) /* (c) 1993 */ - DRIVER( cheesech ) /* (c) 1994 */ - DRIVER( stonebal ) /* (c) 1994 */ - DRIVER( stonebal2 ) /* (c) 1994 */ - - DRIVER( shtstar ) /* (c) 1994 Nova */ - - /* Dynamo games */ - DRIVER( skeetsht ) /* (c) 1991 */ - DRIVER( toursol ) /* (c) 1995 Dynamo */ - DRIVER( toursol1 ) /* (c) 1995 Dynamo */ - - /* Taiyo games */ - DRIVER( dynamski ) /* (c) 1984 Taiyo */ - DRIVER( chinhero ) /* (c) 1984 Taiyo */ - DRIVER( chinhero2 ) /* (c) 1984 Taiyo */ - DRIVER( chinherot ) /* (c) 1984 Taiyo */ - DRIVER( shangkid ) /* (c) 1985 Taiyo + Data East license */ - DRIVER( hiryuken ) /* (c) 1985 Taito */ - - /* Tatsumi Games */ - DRIVER( kingdrby ) /* (c) 1981 Tatsumi */ - DRIVER( tx1 ) /* (c) 1983 Tatsumi */ - DRIVER( tx1a ) /* (c) 1983 Tatsumi */ - /* TX-1 V8 */ /* (c) 1984 Tatsumi */ - DRIVER( buggyboy ) /* (c) 1985 Tatsumi */ - DRIVER( buggyboyjr )/* (c) 1986 Tatsumi */ - DRIVER( lockon ) /* (c) 1986 Tatsumi */ - DRIVER( lockonc ) /* (c) 1986 Tatsumi */ - /* Gray-Out */ /* (c) 1987 Tatsumi */ - DRIVER( apache3 ) /* (c) 1988 Tatsumi */ - DRIVER( apache3a ) /* (c) 1988 Tatsumi + Kana Corporation license */ - DRIVER( roundup5 ) /* (c) 1989 Tatsumi */ - /* Round Up 5 cockpit */ - DRIVER( cyclwarr ) /* (c) 1991 Tatsumi */ - DRIVER( bigfight ) /* (c) 1992 Tatsumi */ - /* Life */ /* (c) 1997 Tatsumi */ - - /* Electronic Devices */ - DRIVER( mugsmash ) /* (c) Electronic Devices (Italy) / 3D Games (England) */ - DRIVER( stlforce ) /* (c) 1994 Electronic Devices (Italy) / Ecogames S.L. (Spain) */ - DRIVER( fantland ) /* (c) 198? Electronic Devices Italy */ - DRIVER( fantlanda ) /* (c) 198? Electronic Devices Italy */ - DRIVER( wheelrun ) /* (c) 1988? International Games */ - DRIVER( galaxygn ) /* (c) 1989 Electronic Devices Italy */ - DRIVER( borntofi ) /* (c) International Games? */ - DRIVER( diverboy ) /* (c) 1992 Electronic Devices */ - DRIVER( twinbrat ) /* (c) 1995 */ - DRIVER( twinbrata ) /* (c) 1995 */ - DRIVER( ppmast93 ) /* (c) 1993 Electronic Devices S.R.L. */ - DRIVER( twins ) /* (c) 1994 */ - DRIVER( twinsa ) /* (c) 1994 */ - DRIVER( mwarr ) - DRIVER( pzletime ) - - /* Arcadia System */ - DRIVER( ar_bios ) - DRIVER( ar_airh ) /* (c) 1988 */ - DRIVER( ar_airh2 ) /* (c) 1988 */ - DRIVER( ar_bowl ) /* (c) 1988 */ - DRIVER( ar_dart ) /* (c) 1987 */ - DRIVER( ar_dart2 ) /* (c) 1987 */ - DRIVER( ar_fast ) /* (c) 1988 */ - DRIVER( ar_ldrb ) /* (c) 1988 */ - DRIVER( ar_ldrba ) /* (c) 1988 */ - DRIVER( ar_ninj ) /* (c) 1987 */ - DRIVER( ar_ninj2 ) /* (c) 1987 */ - DRIVER( ar_rdwr ) /* (c) 1988 */ - DRIVER( ar_sdwr ) /* (c) 1988 */ - DRIVER( ar_sdwr2 ) /* (c) 1988 */ - DRIVER( ar_socc ) /* (c) 1989 */ - DRIVER( ar_spot ) /* (c) 1990 */ - DRIVER( ar_sprg ) /* (c) 1987 */ - DRIVER( ar_xeon ) /* (c) 1988 */ - - /* Sente Super System */ - DRIVER( mquake ) /* (c) 1987 */ - - /* Other Amiga-based games */ - DRIVER( upscope ) /* (c) 1986 Grand products */ - - DRIVER( cd32 ) /* (c) 1993 */ - DRIVER( cndypuzl ) /* (c) 1995 */ - DRIVER( haremchl ) /* (c) 1995 */ - DRIVER( lsrquiz ) /* (c) 1995 */ - DRIVER( lsrquiz2 ) /* (c) 1995 */ - DRIVER( mgprem11 ) /* (c) 1995 */ - DRIVER( lasstixx ) /* (c) 1995 */ - DRIVER( mgnumber ) /* (c) 1995 */ - DRIVER( odeontw2 ) /* (c) 1999 */ - - /* American Laser Games */ - DRIVER( alg_bios ) - DRIVER( maddoga ) /* (c) 1990 */ - DRIVER( wsjr ) /* (c) 1991 */ - DRIVER( wsjr15 ) /* (c) 1991 */ - DRIVER( maddog ) /* (c) 1990 */ - DRIVER( maddog2 ) /* (c) 1992 */ - DRIVER( maddog22 ) /* (c) 1992 */ - DRIVER( maddog21 ) /* (c) 1992 */ - DRIVER( spacepir ) /* (c) 1992 */ - DRIVER( gallgall ) /* (c) 1992 */ - DRIVER( crimepat ) /* (c) 1993 */ - DRIVER( crimep211 ) /* (c) 1993 */ - DRIVER( crimep2 ) /* (c) 1993 */ - DRIVER( lastbh ) /* (c) 1994 */ - DRIVER( fastdraw ) /* (c) 1995 */ - DRIVER( aplatoon ) /* (c) 199? Nova? */ - DRIVER( zortonbr ) /* (c) 1993 Web Picmatic */ - - /* Crystal System */ - DRIVER( crysbios ) - DRIVER( crysking ) /* 2001 Brezzasoft. Crystal of the kings */ - DRIVER( evosocc ) /* 2001 Evoga. Evolution Soccer */ - DRIVER( topbladv ) /* 2002 Sonokong. Top Blade V */ - DRIVER( officeye ) - - DRIVER( ddz ) /* (c) 200? */ - - DRIVER( psattack ) /* 2004 Uniana */ - - /* Bell Fruit Cobra Hardware */ - DRIVER( inquiztr ) /* 1989 BFM */ - DRIVER( escounts ) /* 1990 BFM */ - DRIVER( trebltop ) /* 1991 BFM */ - DRIVER( beeline ) /* 1991 BFM */ - DRIVER( quizvadr ) /* 1991 BFM */ - DRIVER( qos ) /* 1992 BFM */ - DRIVER( qosa ) /* 1992 BFM */ - DRIVER( qosb ) /* 1992 BFM */ - - /* Scorpion 2+Video Board Games */ - DRIVER( qntoondo ) /* 1993 */ - DRIVER( quintoon ) /* 1993 */ - DRIVER( quintond ) /* 1993 */ - DRIVER( quintono ) /* 1993 */ - DRIVER( qntoond ) /* 1993 */ - DRIVER( pokio ) /* 1994 */ - DRIVER( slotsnl ) /* 1995 */ - DRIVER( paradice ) /* 1995 */ - DRIVER( pyramid ) /* 1996 */ - DRIVER( sltblgtk ) /* 1996 */ - DRIVER( sltblgpo ) /* 1996 */ - DRIVER( sltblgp1 ) /* 1996 */ - DRIVER( gldncrwn ) /* 1997 */ - - /* MPU4 Diagnostic ROMs */ - DRIVER( mpu4utst ) - DRIVER( mpu4tst2 ) - DRIVER( mpu4met0 ) - - /* MPU4 Non-Video SWPs */ - DRIVER( connect4 ) /* Dolbeck Systems */ - - /* MPU4+Video Board Games */ - DRIVER( bctvidbs ) - DRIVER( dealem ) /* 1987 */ - DRIVER( adders ) /* 1989 */ - DRIVER( timemchn ) /* 1990 */ - DRIVER( turnover ) /* 199? */ - DRIVER( skiltrek ) /* 1990 */ - DRIVER( crmaze ) /* 1994 */ - DRIVER( crmazed ) /* 1993 */ - DRIVER( crmazea ) /* 1993 */ - DRIVER( crmaze2 ) /* 1993 */ - DRIVER( crmaze2d ) /* 1993 */ - DRIVER( crmaze2a ) /* 1993 */ - DRIVER( crmaze3 ) /* 1993 */ - DRIVER( crmaze3d ) /* 1993 */ - DRIVER( crmaze3a ) /* 1993 */ - - DRIVER( mating ) /* 199? */ - DRIVER( matingd ) /* 199? */ - - DRIVER( strikeit ) /* 199? */ - DRIVER( strikeitd ) /* 199? */ - DRIVER( strikeit2 ) /* 199? */ - DRIVER( strikeit2d )/* 199? */ - - DRIVER( quidgrid ) /* 199? */ - DRIVER( quidgridd ) /* 199? */ - DRIVER( quidgrid2 ) /* 199? */ - DRIVER( quidgrid2d )/* 199? */ - - DRIVER( eyesdown ) /* 199? */ - DRIVER( eyesdownd ) /* 199? */ - - /* BwB games */ - DRIVER( blox ) /* 199? */ - DRIVER( bloxd ) /* 199? */ - DRIVER( bwbtetrs ) /* 199? */ - DRIVER( prizeinv ) /* 199? */ - DRIVER( vgpoker ) /* 199? */ - DRIVER( renoreel ) /* 199? */ - DRIVER( redhtpkr ) /* 199? */ - - /* ADP games */ - DRIVER( backgamn ) /* (c) 1990 */ - DRIVER( quickjac ) /* (c) 1993 */ - DRIVER( skattv ) /* (c) 1994 */ - DRIVER( skattva ) /* (c) 1995 */ - DRIVER( fashiong ) /* (c) 1997 */ - DRIVER( fashiong2 ) /* (c) 1997 */ - DRIVER( fstation ) /* (c) 2000 */ - - /* Other games on adp hardware */ - DRIVER( funlddlx ) /* (c) 1999 */ - - /* JPM Give us a Break hardware */ - DRIVER( guab ) /* (c) 1986 */ - DRIVER( guab3a ) /* (c) 1986 */ - DRIVER( guab4 ) /* (c) 1986 */ - DRIVER( guab6 ) /* (c) 1986 */ - DRIVER( guab6a ) /* (c) 1986 */ - DRIVER( guab7 ) /* (c) 1986 */ - DRIVER( guab21 ) /* (c) 1986 */ - DRIVER( guab43 ) /* (c) 1986 */ - DRIVER( crisscrs ) /* (c) 1986 */ - DRIVER( tenup ) /* (c) 1988 */ - DRIVER( tenup3 ) /* (c) 1988 */ - - /* JPM System 5 + video expansion 2 Games */ - DRIVER( monopoly ) /* (c) 1994 */ - DRIVER( monoplcl ) /* (c) 1995 */ - DRIVER( monopldx ) /* (c) 1995 */ - - /* JPM Impact Games */ - DRIVER( cluedo ) /* (c) 1995 */ - DRIVER( cluedo2c ) /* (c) 1995 */ - DRIVER( cluedo2 ) /* (c) 1995 */ - DRIVER( trivialp ) /* (c) 1996 */ - DRIVER( scrabble ) /* (c) 1997 */ - DRIVER( hngmnjpm ) /* (c) 1998 */ - DRIVER( coronatn ) /* (c) 1999 */ - - /* Other Games */ - DRIVER( vega ) /* (c) 19?? Olympia? */ - DRIVER( astinvad ) /* (c) 1980 Stern */ - DRIVER( kosmokil ) /* bootleg */ - DRIVER( kamikaze ) /* Leijac Corporation */ - DRIVER( spcking2 ) /* (c) 1979 Konami */ - DRIVER( spaceint ) /* [1980] Shoei */ - DRIVER( spaceintj ) /* [1980] Shoei */ - DRIVER( spacefb ) /* (c) [1980?] Nintendo */ - DRIVER( spacefbu ) /* (c) [1980?] Nintendo */ - DRIVER( spacefbe ) /* (c) [1980?] Nintendo */ - DRIVER( spacefbg ) /* 834-0031 (c) 1980 Gremlin */ - DRIVER( spacefbb ) /* bootleg */ - DRIVER( spacebrd ) /* bootleg */ - DRIVER( spacedem ) /* (c) 1980 Fortrek + made by Nintendo */ - DRIVER( omegrace ) /* (c) 1981 Midway */ - DRIVER( omegrace2 ) /* (c) 1981 Midway */ - DRIVER( deltrace ) /* bootleg */ - DRIVER( monzagp ) /* (c) 1981 Olympia */ - DRIVER( dday ) /* (c) 1982 Olympia */ - DRIVER( ddayc ) /* (c) 1982 Olympia + Centuri license */ - DRIVER( stactics ) /* [1981 Sega] */ - DRIVER( exterm ) /* (c) 1989 Premier Technology - a Gottlieb game */ - DRIVER( flower ) /* (c) 1986 Komax license */ - DRIVER( flowerj ) /* 834-5998 (c) 1986 Sega / Alpha license? */ - DRIVER( kingofb ) /* (c) 1985 Wood Place Inc. */ - DRIVER( ringking ) /* (c) 1985 Data East USA */ - DRIVER( ringking2 ) /* (c) 1985 Data East USA */ - DRIVER( ringking3 ) /* (c) 1985 Data East USA */ - DRIVER( ringkingw ) /* (c) 1985 Wood Place Inc. */ - DRIVER( homo ) /* bootleg */ - DRIVER( dlair ) /* (c) 1983 Cinematronics */ - DRIVER( dlairf ) /* (c) 1983 Cinematronics */ - DRIVER( dlaire ) /* (c) 1983 Cinematronics */ - DRIVER( dlaird ) /* (c) 1983 Cinematronics */ - DRIVER( dlairc ) /* (c) 1983 Cinematronics */ - DRIVER( dlairb ) /* (c) 1983 Cinematronics */ - DRIVER( dlaira ) /* (c) 1983 Cinematronics */ - DRIVER( dleuro ) /* (c) 1983 Atari */ - DRIVER( dlital ) /* (c) 1983 Sidam */ - DRIVER( spaceace ) /* (c) 1983 Cinematronics */ - DRIVER( spaceaa2 ) /* (c) 1983 Cinematronics */ - DRIVER( spaceaa ) /* (c) 1983 Cinematronics */ - DRIVER( saeuro ) /* (c) 1983 Atari */ - DRIVER( aztarac ) /* (c) 1983 Centuri (vector game) */ - DRIVER( mole ) /* (c) 1982 Yachiyo Electronics, Ltd. */ - DRIVER( thehand ) /* (c) 1981 T.I.C. */ - DRIVER( mrjong ) /* (c) 1983 Kiwako */ - DRIVER( crazyblk ) /* (c) 1983 Kiwako + ECI license */ - DRIVER( blkbustr ) /* (c) 1983 Kiwako + ECI license */ - DRIVER( polyplay ) - DRIVER( amspdwy ) /* no copyright notice, but (c) 1987 Enerdyne Technologies, Inc. */ - DRIVER( amspdwya ) /* no copyright notice, but (c) 1987 Enerdyne Technologies, Inc. */ - DRIVER( othldrby ) /* (c) 1995 Sunwise */ - DRIVER( quizpun2 ) /* (c) 1989 Space Computer System of Korea */ - DRIVER( mosaic ) /* (c) 1990 Space */ - DRIVER( mosaica ) /* (c) 1990 Space + Fuuki license */ - DRIVER( gfire2 ) /* (c) 1992 Topis Corp */ - DRIVER( sprcros2 ) /* (c) 1986 GM Shoji */ - DRIVER( sprcros2a ) /* (c) 1986 GM Shoji */ - DRIVER( d9final ) /* (c) 1992 Excellent System */ - DRIVER( lastbank ) /* (c) 1994 Excellent System */ - DRIVER( gcpinbal ) /* (c) 1994 Excellent System */ - DRIVER( vmetal ) /* (c) 1995 Excellent System? */ - DRIVER( vmetaln ) /* (c) 1995 Excellent System? */ - DRIVER( aquarium ) /* (c) 1996 Excellent System */ - DRIVER( policetr ) /* (c) 1996 P&P Marketing */ - DRIVER( policetr11 )/* (c) 1996 P&P Marketing */ - DRIVER( policetr10 )/* (c) 1996 P&P Marketing */ - DRIVER( policetr13a )/* (c) 1996 P&P Marketing */ - DRIVER( policetr13b )/* (c) 1996 P&P Marketing */ - DRIVER( sshooter ) /* (c) 1998 P&P Marketing */ - DRIVER( sshooter12 )/* (c) 1998 P&P Marketing */ - DRIVER( sshooter11 )/* (c) 1998 P&P Marketing */ - DRIVER( pass ) /* (c) 1992 Oksan */ - DRIVER( news ) /* "Virus"??? ((c) 1993 Poby in ROM VIRUS.4) */ - DRIVER( newsa ) /* "Jeansole / Poby */ - DRIVER( taxidrvr ) /* [1984 Graphic Techno] */ - DRIVER( xyonix ) /* [1989 Philko] */ - DRIVER( gt507uk ) /* (c) 1986 Grayhound Electronics */ - DRIVER( gt5 ) /* (c) 1984 Grayhound Electronics */ - DRIVER( gtsers8 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers9 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers10 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers11 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gt103a1 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gt103a2 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gt103a3 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gt103aa ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gt103asx ) /* (c) 1984 Greyhound Electronics */ - DRIVER( reelfun ) /* (c) 1986 Grayhound Electronics */ - DRIVER( reelfun1 ) /* (c) 1986 Grayhound Electronics */ - DRIVER( findout ) /* (c) 1987 [Elettronolo] */ - DRIVER( quizvid ) /* (c) 1986 Greyhound Electronics */ - DRIVER( quiz ) /* (c) 1986 Italian bootleg */ - DRIVER( quiz211 ) /* (c) 1986 Italian bootleg */ - DRIVER( jokpoker ) /* (c) 1982 Greyhound Electronics */ - DRIVER( jokpokera ) /* (c) 1982 Greyhound Electronics */ - DRIVER( jokpokerb ) - DRIVER( jokpokerc ) - DRIVER( superbwl ) /* (c) 1982 Greyhound Electronics */ - DRIVER( amuse ) /* (c) 1982 Greyhound Electronics */ - DRIVER( amuse1 ) /* (c) 1982 Greyhound Electronics */ - DRIVER( gs4002 ) /* (c) 1982 G.E.I. */ - DRIVER( gs4002a ) /* (c) 1982 G.E.I. */ - DRIVER( gepoker ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gepoker1 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gepoker2 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers1 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers2 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers3 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers4 ) /* (c) 1984 Greyhound Electronics */ - DRIVER( gtsers5 ) /* (c) 1985 Greyhound Electronics */ - DRIVER( gtsers7 ) /* (c) 1985 Greyhound Electronics */ - DRIVER( gtsersa ) /* (c) 1985 Greyhound Electronics */ - DRIVER( gtsersb ) /* (c) 1985 Greyhound Electronics */ - DRIVER( sextriv1 ) /* (c) 1985 Kinky Kit and Game Co. */ - DRIVER( sextriv2 ) /* (c) 1985 Kinky Kit and Game Co. */ - DRIVER( geimulti ) /* (c) 1992 Grayhound Electronics */ - DRIVER( sprtauth ) /* (c) 1982 Classic Games */ - DRIVER( suprpokr ) /* (c) 1986 Grayhound Electronics */ - DRIVER( suprpkr1 ) /* (c) 1986 Grayhound Electronics */ - DRIVER( dribling ) /* (c) 1983 Model Racing */ - DRIVER( driblingo ) /* (c) 1983 Olympia */ - DRIVER( ace ) /* [1976 Allied Leisure] */ - DRIVER( clayshoo ) /* [1979 Allied Leisure] */ - DRIVER( pirates ) /* (c) 1994 NIX */ - DRIVER( genix ) /* (c) 199? NIX */ - DRIVER( fitfight ) /* bootleg of Art of Fighting */ - DRIVER( histryma ) /* bootleg of Fighter's History */ - DRIVER( bbprot ) /* unfinished prototype */ - DRIVER( beaminv ) /* (c) 1979 Tekunon Kougyou (Arcade TV Game List - P.95, Left, 9 from top) */ - DRIVER( beaminva ) /* (c) 1979 Tekunon Kougyou (Arcade TV Game List - P.95, Left, 9 from top) */ - DRIVER( mcatadv ) /* (c) 1993 Wintechno */ - DRIVER( mcatadvj ) /* (c) 1993 Wintechno */ - DRIVER( catt ) /* (c) 1993 Wintechno */ - DRIVER( nost ) /* (c) 1993 Face */ - DRIVER( nostj ) /* (c) 1993 Face */ - DRIVER( nostk ) /* (c) 1993 Face */ - DRIVER( 4enraya ) /* (c) 1990 IDSA */ - DRIVER( oneshot ) /* no copyright notice */ - DRIVER( maddonna ) /* (c) 1995 Tuning */ - DRIVER( maddonnb ) /* (c) 1995 Tuning */ - DRIVER( tugboat ) /* (c) 1982 ETM */ - DRIVER( noahsark ) /* (c) 1983 Enter-Tech */ - DRIVER( berenstn ) /* (c) 1984 Enter-Tech */ - DRIVER( gotcha ) /* (c) 1997 Dongsung + "presented by Para" */ - DRIVER( ppchamp ) /* (c) 1997 Dongsung + "presented by Para" */ - DRIVER( amerdart ) /* (c) 1989 Ameri Corporation */ - DRIVER( amerdart2 ) /* (c) 1989 Ameri Corporation */ - DRIVER( amerdart3 ) /* (c) 1989 Ameri Corporation */ - DRIVER( coolpool ) /* (c) 1992 Catalina Games */ - DRIVER( 9ballsht ) /* (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" */ - DRIVER( 9ballsht2 ) /* (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" */ - DRIVER( 9ballsht3 ) /* (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" */ - DRIVER( 9ballshtc ) /* (c) 1993 E-Scape EnterMedia + "marketed by Bundra Games" */ - DRIVER( gumbo ) /* (c) 1994 Min Corp. */ - DRIVER( mspuzzleg ) /* (c) 1994 Min Corp. */ - DRIVER( mspuzzle ) /* (c) 1994 Min Corp. */ - DRIVER( mspuzzlen ) /* (c) 1994 Min Corp. */ - DRIVER( msbingo ) /* (C) 1994 Min Corp. */ - DRIVER( dblpoint ) /* (c) 1995 Min Corp. */ - DRIVER( dblpointd ) /* (c) 1995 Dong Bang Electron */ - DRIVER( statusbj ) /* (c) 1981 Status Games */ - DRIVER( tripdraw ) /* (c) 1981 Status Games */ - DRIVER( funcsino ) /* (c) 1981 Status Games */ - DRIVER( hangman ) /* (c) 1984 Status Games */ - DRIVER( trivquiz ) /* (c) 1984 Status Games */ - DRIVER( statriv2 ) /* (c) 1984 Status Games */ - DRIVER( statriv2v ) /* (c) 1984 Status Games */ - DRIVER( statriv4 ) /* (c) 1985 Status Games */ - DRIVER( sextriv ) /* (c) 1985 Status Games */ - DRIVER( quaquiz2 ) /* (c) 1985 Status Games */ - DRIVER( supertr2 ) /* (c) 1986 Status Games */ - DRIVER( supertr3 ) /* (c) 1986 Status Games */ - DRIVER( cstripxi ) /* (c) 1981 Status Games */ - DRIVER( tickee ) /* (c) 1994 Raster Elite */ - DRIVER( ghoshunt ) /* (c) 1995? Hanaho Games */ - DRIVER( tutstomb ) /* (c) 199?? Island Design */ - DRIVER( mouseatk ) /* (c) 1996 ICE */ - DRIVER( rapidfir ) /* (c) 1998 Hanaho Games */ - DRIVER( rapidfire ) /* (c) 1998 Hanaho Games */ - DRIVER( maletmad ) /* (c) 1999 Hanaho Games, licensed to Capcom */ - DRIVER( crgolf ) /* (c) 1984 Nasco Japan */ - DRIVER( crgolfa ) /* (c) 1984 Nasco Japan */ - DRIVER( crgolfb ) /* (c) 1984 Nasco Japan */ - DRIVER( crgolfc ) /* (c) 1984 Nasco Japan */ - DRIVER( crgolfbt ) /* bootleg */ - DRIVER( crgolfhi ) /* (c) 1984 Nasco Japan */ - DRIVER( truco ) /* (c) 198? Playtronic SRL */ - DRIVER( thedeep ) /* (c) 1987 Wood Place */ - DRIVER( rundeep ) /* (c) 1988 Cream (bootleg?) */ - DRIVER( wallc ) /* (c) 1984 Midcoin */ - DRIVER( wallca ) /* (c) 1984 Midcoin */ - DRIVER( wink ) /* (c) 1985 Midcoin */ - DRIVER( winka ) /* (c) 1985 Midcoin */ - DRIVER( skyarmy ) /* (c) 1982 Shoei */ - DRIVER( lethalj ) /* (c) 1996 The Game Room */ - DRIVER( eggventr ) /* (c) 1997 The Game Room */ - DRIVER( eggventr8 ) /* (c) 1997 The Game Room */ - DRIVER( eggventr7 ) /* (c) 1997 The Game Room */ - DRIVER( eggventra ) /* (c) 1997 The Game Room (Allied Leisure license) */ - DRIVER( eggventrd ) /* (c) 1997 The Game Room */ - DRIVER( calchase ) /* (c) 1999 The Game Room */ - DRIVER( ripribit ) /* (c) 1997 LAI Games */ - DRIVER( cfarm ) /* (c) 1999 LAI Games */ - DRIVER( cclownz ) /* (c) 1999 LAI Games */ - DRIVER( rotaryf ) - DRIVER( portrait ) /* (c) 1983 Olympia */ - DRIVER( portraita ) /* (c) 1983 Olympia */ - DRIVER( enigma2 ) /* (c) 1981 Game Plan (Zilec Electronics license) */ - DRIVER( enigma2a ) /* (c) 1984 Zilec Electronics (bootleg?) */ - DRIVER( enigma2b ) /* (c) 1981 Zilec Electronics */ - DRIVER( ltcasino ) /* (c) 1982 Digital Controls Inc */ - DRIVER( mv4in1 ) /* (c) 1983 Entertainment Enterprises */ - DRIVER( ltcasinn ) /* (c) 1984 Digital Controls Inc */ - DRIVER( coolmini ) /* (c) 1999 SemiCom */ - DRIVER( luplup ) /* (c) 1999 Omega System */ - DRIVER( luplup29 ) /* (c) 1999 Omega System */ - DRIVER( puzlbang ) /* (c) 1999 Omega System */ - DRIVER( suplup ) /* (c) 1999 Omega System */ - DRIVER( jmpbreak ) /* (c) 1999 F2 System */ - DRIVER( vamphalf ) /* (c) 1999 DanBi & F2 System */ - DRIVER( vamphalfk ) /* (c) 1999 DanBi & F2 System */ - DRIVER( dquizgo2 ) /* (c) 2000 Semicom */ - DRIVER( misncrft ) /* (c) 2000 Sun */ - DRIVER( mrdig ) /* (c) 2000 Sun */ - DRIVER( hidnctch ) /* (c) 1998 Eolith */ - DRIVER( ironfort ) /* (c) 1998 Eolith */ - DRIVER( ironfortj ) /* (c) 1998 Eolith */ - DRIVER( puzzlekg ) /* (c) 1998 Eolith */ - DRIVER( hidctch2 ) /* (c) 1999 Eolith */ - DRIVER( hidctch2a) /* (c) 1999 Eolith */ - DRIVER( nhidctch ) /* (c) 1999 Eolith */ - DRIVER( landbrk ) /* (c) 1999 Eolith */ - DRIVER( landbrka ) /* (c) 1999 Eolith */ - DRIVER( penfan ) /* (c) 1999 Eolith */ - DRIVER( raccoon ) /* (c) 1999 Eolith */ - DRIVER( fort2b ) /* (c) 2001 Eolith */ - DRIVER( fort2ba ) /* (c) 2001 Eolith */ - DRIVER( klondkp ) /* (c) 1999 Eolith */ - DRIVER( hidctch3 ) /* (c) 2000 Eolith */ - DRIVER( crazywar ) /* (c) 2002 Eolith */ - DRIVER( bballoon ) /* (c) 2003 Eolith */ - DRIVER( hapytour ) /* (c) 2005 GAV Company (on Eolith's Ghost hardware) */ - DRIVER( funkball ) /* (c) 1998 dgPIX Entertainment Inc */ - DRIVER( xfiles ) /* (c) 1999 dgPIX Entertainment Inc */ - DRIVER( kdynastg ) /* (c) 1999 EZ Graphics */ - DRIVER( fmaniac3 ) /* (c) 2002 Saero Entertainment */ - DRIVER( promutrv ) /* (c) 1985 Enerdyne Technologies Inc */ - DRIVER( promutrva ) /* (c) 1985 Enerdyne Technologies Inc */ - DRIVER( promutrvb ) /* (c) 1985 Enerdyne Technologies Inc */ - DRIVER( promutrvc ) /* (c) 1985 Enerdyne Technologies Inc */ - DRIVER( strvmstr ) /* (c) 1986 Enerdyne Technologies Inc */ - DRIVER( dorachan ) /* (c) 1980 Craul Denshi */ - DRIVER( ladyfrog ) /* (c) 1990 Mondial Games */ - DRIVER( toucheme ) - DRIVER( rabbit ) /* (c) 1997 Electronic Arts */ - DRIVER( tmmjprd ) /* (c) 1997 Media / Sonnet */ - DRIVER( tmpdoki ) /* (c) 1998 Media Syouji */ - DRIVER( malzak ) /* (c) 1980? Kitronix */ - DRIVER( malzak2 ) /* (c) 1980? Kitronix */ - DRIVER( supertnk ) /* (c) 1981 VIDEO GAMES GmbH, W.-GERMANY */ - DRIVER( crospang ) /* (c) 1998 F2 System */ - DRIVER( heuksun ) /* (c) 1998 Oksan / F2 System */ - DRIVER( bestri ) /* (c) F2 System */ - DRIVER( funybubl ) /* (c) 1999 In Chang Electronic Co */ - DRIVER( funybublc ) /* (c) 1999 Comad Industries */ - DRIVER( dcheese ) /* (c) 1993 HAR */ - DRIVER( lottof2 ) /* (c) 1993 HAR */ - DRIVER( fredmem ) /* (c) 1994 Coastal Amusements */ - DRIVER( fredmemus ) /* (c) 1994 Coastal Amusements */ - DRIVER( fredmemuk ) /* (c) 1994 Coastal Amusements */ - DRIVER( fredmemj ) /* (c) 1994 Coastal Amusements */ - DRIVER( fredmemc ) /* (c) 1994 Coastal Amusements */ - DRIVER( fredmesp ) /* (c) 1994 Coastal Amusements */ - DRIVER( cecmatch ) /* (c) 1993 Coastal Amusements */ - DRIVER( f15se ) /* (c) 1991 Microprose Games Inc. */ - DRIVER( f15se21 ) /* (c) 1991 Microprose Games Inc. */ - DRIVER( botss ) /* (c) 1992 Microprose Games Inc. */ - DRIVER( botssa ) /* (c) 1992 Microprose Games Inc. */ - DRIVER( tankbatl ) /* (c) 1992 Microprose Games Inc. */ - DRIVER( dynadice ) /* ? */ - DRIVER( atamanot ) /* (c) 1983 Yachiyo Denki / Uni Enterprize */ - DRIVER( ssingles ) /* Yachiyo? */ - DRIVER( tcl ) /* (c) 1995 Uniwang */ - DRIVER( othello ) /* (c) 1984 Success */ - DRIVER( sothello ) /* (c) 1986 Success / Fujiwara */ - DRIVER( quake ) /* (c) 19?? Lazer-Tron / iD Software */ - DRIVER( majorpkr ) /* (c) 1994 PAL System. */ - - /* Multi Amenity Cassette System */ - DRIVER( macsbios ) - DRIVER( mac2bios ) - DRIVER( kisekaem ) /* (c) 1995 I'Max */ - DRIVER( kisekaeh ) /* (c) 1995 I'Max */ - DRIVER( cultname ) /* (c) 1995 I'Max */ - DRIVER( yuka ) /* (c) 1999 Yubis */ - DRIVER( yujan ) /* (C) 1999 Yubis */ - - DRIVER( onetwo ) /* (c) 1997 Barko */ - DRIVER( onetwoe ) /* (c) 1997 Barko */ - DRIVER( 1945kiii ) /* (c) 2000 Oriental */ - DRIVER( witch ) /* (c) 1992 Sega / Vic Tokai / Excellent Systems */ - DRIVER( pbchmp95 ) /* (c) 1995 Veltmeijer Automaten */ - DRIVER( cardline ) /* (c) 199? Veltmeijer */ - DRIVER( bmcbowl ) /* (c) 1994 BMC */ - DRIVER( koftball ) /* (c) 1995 BMC */ - DRIVER( mpoker ) /* (c) 1983 Merit */ - DRIVER( pitboss ) /* (c) 1983 Merit */ - DRIVER( pitbossa ) /* (c) 1983 Merit */ - DRIVER( pitbossb ) /* (c) 1983 Merit */ - DRIVER( pitbossc ) /* (c) 1983 Merit */ - DRIVER( casino5 ) /* (c) 1983 Merit */ - DRIVER( trvwzh ) /* (c) 1985 Merit */ - DRIVER( trvwzha ) /* (c) 1985 Merit */ - DRIVER( trvwzhb ) /* (c) 1985 Merit */ - DRIVER( trvwzv ) /* (c) 1985 Merit */ - DRIVER( trvwzva ) /* (c) 1985 Merit */ - DRIVER( trvwz2 ) /* (c) 1985 Merit */ - DRIVER( trvwz2a ) /* (c) 1985 Merit */ - DRIVER( trvwz3h ) /* (c) 1985 Merit */ - DRIVER( trvwz3ha ) /* (c) 1985 Merit */ - DRIVER( trvwz3v ) /* (c) 1985 Merit */ - DRIVER( trvwz4 ) /* (c) 1985 Merit */ - DRIVER( trvwz4a ) /* (c) 1985 Merit */ - DRIVER( dtrvwz5 ) /* (c) 1987 Merit */ - DRIVER( tictac ) /* (c) 1985 Merit */ - DRIVER( tictacv ) /* (c) 1985 Merit */ - DRIVER( phrcraze ) /* (c) 1986 Merit */ - DRIVER( phrcrazea ) /* (c) 1986 Merit */ - DRIVER( phrcrazeb ) /* (c) 1986 Merit */ - DRIVER( phrcrazec ) /* (c) 1986 Merit */ - DRIVER( phrcrazev ) /* (c) 1986 Merit */ - DRIVER( bigappg ) /* (c) 1986 Merit */ - DRIVER( dodge ) /* (c) 1986 Merit */ - DRIVER( couple ) /* (c) 1988 Merit */ - DRIVER( couplep ) /* (c) 1988 Merit */ - DRIVER( couplei ) /* (c) 1988 Merit */ - DRIVER( pitboss2 ) /* (c) 1988 Merit */ - DRIVER( spitboss ) /* (c) 1988 Merit */ - DRIVER( pitbosss ) /* (c) 1990 Merit */ - DRIVER( pitbossm ) /* (c) 1994 Merit */ - DRIVER( pitbossma ) /* (c) 1994 Merit */ - DRIVER( pbst30 ) /* (c) 1994 Merit */ - DRIVER( pbst30b ) /* (c) 1993 Merit */ - DRIVER( megat2 ) /* (c) 1994 Merit */ - DRIVER( megat2ca ) /* (c) 1994 Merit */ - DRIVER( megat3 ) /* (c) 1996 Merit */ - DRIVER( megat3a ) /* (c) 1996 Merit */ - DRIVER( megat3ca ) /* (c) 1996 Merit */ - DRIVER( megat3cb ) /* (c) 1995 Merit */ - DRIVER( megat3nj ) /* (c) 1995 Merit */ - DRIVER( megat3te ) /* (c) 1996 Merit */ - DRIVER( megat4 ) /* (c) 1996 Merit */ - DRIVER( megat4a ) /* (c) 1996 Merit */ - DRIVER( megat4b ) /* (c) 1996 Merit */ - DRIVER( megat4s ) /* (c) 1996 Merit */ - DRIVER( megat4sn ) /* (c) 1996 Merit */ - DRIVER( megat4te ) /* (c) 1996 Merit */ - DRIVER( megat4tea ) /* (c) 1996 Merit */ - DRIVER( megat4st ) /* (c) 1996 Merit */ - DRIVER( megat4stg ) /* (c) 1996 Merit */ - DRIVER( megat5 ) /* (c) 1997 Merit */ - DRIVER( megat5a ) /* (c) 1997 Merit */ - DRIVER( megat5nj ) /* (c) 1997 Merit */ - DRIVER( megat5tg ) /* (c) 1997 Merit */ - DRIVER( megat6 ) /* (c) 1998 Merit */ - DRIVER( suprgolf ) /* (c) 1989 Nasco */ - DRIVER( hotblock ) /* (c) 1993 Nics? / Nix? */ - DRIVER( pntnpuzl ) /* Century? */ - DRIVER( trucocl ) /* (c) 1991 Miky SRL */ - DRIVER( ertictac ) /* (c) 1992 Sisteme */ - DRIVER( poizone ) /* (c) 1990 Sisteme */ - DRIVER( ssfindo ) /* (c) 1999 Icarus */ - DRIVER( ppcar ) /* (c) 1999 Icarus */ - DRIVER( tetfight) /* (c) 2001 Sego */ - DRIVER( imolagp ) /* (c) 1981 Leante Games */ - DRIVER( dambustr ) /* (c) 1981 South West Research */ - DRIVER( dambustra ) /* (c) 1981 South West Research */ - DRIVER( dambustruk )/* (c) 1981 South West Research */ - DRIVER( gunpey ) /* (c) 2000 Banpresto */ - DRIVER( spaceg ) /* (c) 19?? */ - DRIVER( wldarrow ) /* (c) 1982 */ - DRIVER( unkmeyco ) /* (c) 198? */ - DRIVER( mdrawpkr ) /* (c) 19?? */ - DRIVER( mdrawpkra ) /* (c) 19?? */ - DRIVER( laserbas ) /* (c) 1981 Amstar/HOEI */ - DRIVER( laserbasa ) /* (c) 1981 Amstar/HOEI */ - DRIVER( futflash ) /* (c) 1981 HOEI (Arcade TV Game List - P.96, Right, 18 from top) */ - DRIVER( turbosub ) /* (c) 1985 Entertainment Sciences */ - DRIVER( turbosub7 ) /* (c) 1985 Entertainment Sciences */ - DRIVER( turbosub6 ) /* (c) 1985 Entertainment Sciences */ - DRIVER( pipeline ) /* (c) 1990 Daehyun Electronics */ - DRIVER( ttchamp ) - DRIVER( ttchampa ) - DRIVER( dreamwld ) /* (c) 2000 SemiCom */ - DRIVER( cybertnk ) /* (c) 1990 Coreland */ - DRIVER( cubeqst ) /* (c) 1983 Simutrek Inc. */ - DRIVER( cubeqsta ) /* (c) 1983 Simutrek Inc. */ - DRIVER( pkscram ) /* (c) 1993 Cosmo Electronics Corporation */ - - /* Impera CD-I based */ - DRIVER( magicard ) /* (c) 199? Impera */ - DRIVER( magicarda ) /* (c) 199? Impera */ - DRIVER( magicardb ) /* (c) 199? Impera */ - DRIVER( magicardj ) /* (c) 1998 Impera */ - DRIVER( magicle ) /* (c) 1998 Impera */ - - /* Funworld */ - DRIVER( jollycrd ) /* (c) 1985 TAB-Austria */ - DRIVER( jolyc3x3 ) /* (c) 1985 TAB-Austria */ - DRIVER( jolycmzs ) /* (c) 1993 MZS Tech */ - DRIVER( jolyc980 ) /* (c) 2000 Spale-Soft */ - DRIVER( jolycdev ) /* (c) 1998 TAB/Evona */ - DRIVER( jolyccra ) /* (c) 1985 TAB-Austria */ - DRIVER( jolyccrb ) /* (c) 1993 Soft Design */ - DRIVER( jolycdit ) /* 199? bootleg */ - DRIVER( jolycdib ) /* 1990 bootleg */ - DRIVER( sjcd2kx3 ) /* (c) 1985 M.P.*/ - DRIVER( jolycdab ) /* (c) 1986 Inter Games */ - DRIVER( bigdeal ) /* (c) 1986 Funworld */ - DRIVER( bigdealb ) /* (c) 1986 Funworld */ - DRIVER( jolycdat ) /* (c) 1986 Funworld */ - DRIVER( cuoreuno ) /* (c) 1996 C.M.C. */ - DRIVER( elephfam ) /* (c) 1997 C.M.C. */ - DRIVER( elephfmb ) /* (c) 1996 C.M.C. */ - DRIVER( pool10 ) /* (c) 1996 C.M.C. */ - DRIVER( pool10b ) /* (c) 1996 C.M.C. */ - DRIVER( pool10c ) /* (c) 1996 C.M.C. */ - DRIVER( pool10d ) /* (c) 1997 C.M.C. */ - DRIVER( tortufam ) /* (c) 1997 C.M.C. */ - DRIVER( potgame ) /* (c) 1996 C.M.C. */ - DRIVER( bottle10 ) /* (c) 1996 C.M.C. */ - DRIVER( bottl10b ) /* (c) 1996 C.M.C. */ - DRIVER( royalcrd ) /* (c) 1991 TAB-Austria */ - DRIVER( royalcrda ) /* (c) 1991 TAB-Austria */ - DRIVER( royalcrdb ) /* (c) 1991 TAB-Austria */ - DRIVER( royalcrdc ) /* (c) 1991 TAB-Austria */ - DRIVER( royalcrdd ) /* (c) 1991 TAB-Austria */ - DRIVER( royalcrde ) /* (c) 1991 TAB-Austria */ - DRIVER( royalcrdf ) /* (c) 1991 Evona Electronic */ - DRIVER( royalcrdt ) /* (c) 1991 TAB-Austria orig */ - DRIVER( royalcrdp ) /* (c) 1993 Digital Dreams */ - DRIVER( lluck3x3 ) /* (c) 1991 TAB-Austria */ - DRIVER( lluck4x1 ) /* (c) 1991 TAB-Austria */ - DRIVER( magicrd2 ) /* (c) 1996 Impera */ - DRIVER( magicd2a ) /* (c) 1996 Impera */ - DRIVER( magicd2b ) /* (c) 1996 Impera */ - DRIVER( vegasslw ) /* (c) 1993 Funworld */ - DRIVER( vegasfst ) /* (c) 1993 Soft Design */ - DRIVER( vegasfte ) /* (c) 1993 Soft Design */ - DRIVER( vegasmil ) /* (c) 1993 Mile */ - DRIVER( jolyjokr ) /* (c) 198? Impera */ - DRIVER( jolyjokra ) /* (c) 198? Impera */ - DRIVER( jolyjokrb ) /* (c) 198? Impera */ - DRIVER( multiwin ) /* (c) 1992 Funworld */ - DRIVER( jokercrd ) /* (c) 1993 Vesely Svet */ - DRIVER( mongolnw ) /* 199? bootleg */ - DRIVER( soccernw ) /* 199? bootleg */ - DRIVER( saloon ) /* 199? unknown */ - DRIVER( funquiz ) /* (c) 198? Funworld */ - DRIVER( witchryl ) /* (c) 199? Video Klein */ - DRIVER( photoply ) - - /* Sandii' */ - DRIVER( snookr10 ) /* (c) 1998 Sandii' */ - DRIVER( apple10 ) /* (c) 1998 Sandii' */ - DRIVER( tenballs ) /* 1997 unknown */ - - /* Game-A-Tron */ - DRIVER( gotya ) /* (c) 1981 Game-A-Tron */ - DRIVER( sbugger ) /* (c) 1981 Game-A-Tron */ - DRIVER( sbuggera ) /* (c) 1981 Game-A-Tron */ - DRIVER( poker41 ) /* (c) 1983 Game-A-Tron */ - DRIVER( pulltabs ) /* (c) 1983 Game-A-Tron */ - - DRIVER( vroulet ) /* (c) 1989 World Game */ - DRIVER( rcasino ) /* (c) 1984 Dyna Electronics */ - DRIVER( ampoker2 ) /* (c) 1990 Novomatic */ - DRIVER( piccolop ) /* (c) 1990 Admiral - Novomatic */ - DRIVER( ampkr2b1 ) /* 1990 bootleg */ - DRIVER( ampkr2b2 ) /* 1990 bootleg */ - DRIVER( ampkr2b3 ) /* 1994 bootleg */ - DRIVER( ampkr2b4 ) /* 1994 bootleg */ - DRIVER( ampkr228 ) /* 1990 bootleg */ - DRIVER( pkrdewin ) /* 1990 bootleg */ - DRIVER( ampkr95 ) /* 1995 bootleg */ - DRIVER( videomat ) /* 1990 bootleg */ - DRIVER( rabbitpk ) /* 1990 bootleg */ - DRIVER( sigmapkr ) /* (c) 1995 Sigma */ - DRIVER( sigma2k ) /* (c) 2000 Sigma */ - DRIVER( sidewndr ) /* (c) 1981? ACE */ - DRIVER( spellbnd ) /* (c) 1981? ACE */ - DRIVER( starspnr ) /* (c) 1982? ACE */ - DRIVER( acefruit ) /* (c) 1982? ACE */ - DRIVER( attckufo ) /* (c) 1980 Ryoto Electric Co. */ - DRIVER( fortecar ) - DRIVER( jackpool ) /* (c) 1997 Electronic Projects */ - DRIVER( murogem ) /* ??? */ - DRIVER( murogema ) /* ??? */ - DRIVER( murogmbl ) /* ??? */ - DRIVER( lasvegas ) /* hack */ - DRIVER( quizmstr ) /* (c) 1985 Coinmaster */ - DRIVER( trailblz ) /* (c) 1987 Coinmaster */ - DRIVER( supnudg2 ) /* (c) 1989 Coinmaster */ - DRIVER( pokeroul ) /* (c) 1990 Coinmaster */ - DRIVER( egghunt ) /* (c) 1995 Invi Image */ - DRIVER( magic10 ) /* (c) 1995 A.W.P. Games */ - DRIVER( magic10a ) /* (c) 1995 A.W.P. Games */ - DRIVER( magic10b ) /* (c) 1995 A.W.P. Games */ - DRIVER( magic102 ) /* (c) 1997 ABM Games */ - DRIVER( suprpool ) /* (c) 1997 ABM Games */ - DRIVER( hotslot ) /* (c) 1996 ABM Electronics */ - DRIVER( mcolors ) /* 1999 unknown */ - DRIVER( sgsafari ) /* (c) 1996 New Impeuropex Corp. */ - DRIVER( musicsrt ) /* (c) 1995 ABM Games */ - DRIVER( galaxi ) /* (c) 2000 BRL S.R.L. Bologna */ - DRIVER( magjoker ) /* (c) 2000 BRL S.R.L. Bologna */ - DRIVER( dwarfd ) /* (c) 198? Electro-Sports */ - DRIVER( quarterh ) /* (c) 1983 Electro-Sports */ - DRIVER( quarterha ) /* (c) 1983 Electro-Sports */ - DRIVER( quarterhb ) /* (c) 1983 Electro-Sports */ - DRIVER( qc ) /* (c) 1995 ArJay Exports/Prestige Games */ - DRIVER( trvquest ) /* (c) 1984 Sunn / Techstar */ - DRIVER( wheelfir ) /* (c) 199? TCH */ - DRIVER( littlerb ) /* (c) 1993 TCH */ - DRIVER( tattack ) /* (c) 198? Shonan */ - DRIVER( mosaicf2 ) /* (c) 1999 F2 System */ - DRIVER( finalgdr ) /* (c) 2001 Semicom */ - DRIVER( mrkicker ) /* (c) 2001 Semicom */ - DRIVER( wyvernwg ) /* (c) 2001 Semicom / Game Vision */ - DRIVER( rbmk ) /* (c) 1995 GMS */ - DRIVER( go2000 ) /* (c) 2000 SA */ - DRIVER( mirax ) /* (c) 1985 Current Technologies */ - DRIVER( miraxa ) /* (c) 1985 Current Technologies */ - - /* Subsino */ - DRIVER( victor5 ) /* (c) 1990 Subsino */ - DRIVER( victor21 ) /* (c) 1990 Subsino */ - DRIVER( crsbingo ) /* (c) 1991 Subsino */ - DRIVER( tisub ) /* (c) 1992 Subsino */ - DRIVER( tisuba ) /* (c) 1992 Subsino */ - DRIVER( stisub ) /* (c) 1995 Subsino (Alpha license) */ - DRIVER( victor6 ) /* (c) 1995 Subsino (Alpha license) */ - DRIVER( victor6a ) /* (c) 1995 Subsino (Alpha license) */ - DRIVER( victor6b ) /* (c) 1995 Subsino (Alpha license) */ - DRIVER( mtrain ) /* (c) 1996 Subsino */ - DRIVER( mtrainnv ) /* (c) 1996 Subsino */ - DRIVER( sharkpy ) /* (c) 1996 Subsino */ - DRIVER( sharkpya ) /* (c) 1996 Subsino */ - DRIVER( sharkpye ) /* (c) 1996 Subsino (Alpha license) */ - DRIVER( smoto20 ) /* (c) 1996 Subsino */ - DRIVER( smoto16 ) /* (c) 1996 Subsino */ - DRIVER( wtrnymph ) /* (c) 1996 Subsino */ - DRIVER( expcard ) /* (c) 1998 American Alpha */ - DRIVER( saklove ) /* (c) 1998 Subsino */ - DRIVER( bishjan ) /* (c) 1999 Subsino */ - DRIVER( xtrain ) /* (c) 1999 Subsino */ - DRIVER( lastfght ) /* (c) 2000 Subsino */ - DRIVER( xplan ) /* (c) 2006 Subsino */ - - DRIVER( sliver ) /* (c) 1996 Hollow Corp */ - DRIVER( intrscti ) /* ???? */ - DRIVER( pasha2 ) /* (c) 1998 Dong Sung */ - DRIVER( trvmadns ) /* (c) 1985 Thunderhead Inc. */ - DRIVER( rcorsair ) /* (c) 1984 Nakasawa */ - DRIVER( pzlestar ) /* (c) 199? Sang Ho Soft */ - DRIVER( sexyboom ) /* (c) 1992 Sang Ho Soft */ - DRIVER( sfkick ) /* (c) 1988 Haesung/HJ Corp */ - DRIVER( sfkicka ) /* (c) 198? Haesung */ - DRIVER( spinkick ) /* (c) 1988 Haesung/Seojin */ - DRIVER( 7mezzo ) /* (c) 198? Unknown */ - DRIVER( magicfly ) /* (c) 198? P&A GAMES */ - DRIVER( dynabomb ) /* (c) 2000 Limenko */ - DRIVER( legendoh ) /* (c) 2000 Limenko */ - DRIVER( sb2003 ) /* (c) 2003 Limenko */ - DRIVER( sb2003a ) /* (c) 2003 Limenko */ - DRIVER( spotty ) /* (c) 2001 Prince Co. */ - DRIVER( carrera ) /* (c) 19?? BS Electronics */ - - /* Golden Poker / Potten's Poker / Witch Card hardware */ - DRIVER( goldnpkr ) /* (c) 1981 Bonanza */ - DRIVER( goldnpkb ) /* (c) 1981 Bonanza */ - DRIVER( pottnpkr ) /* Bootleg */ - DRIVER( potnpkra ) /* Bootleg in Coinmaster H/W */ - DRIVER( potnpkrb ) /* Bootleg */ - DRIVER( potnpkrc ) /* Bootleg */ - DRIVER( potnpkrd ) /* Bootleg */ - DRIVER( potnpkre ) /* Bootleg */ - DRIVER( goodluck ) /* Unknown */ - DRIVER( superdbl ) /* 198? Karateco */ - DRIVER( ngold ) /* 198? Unknown */ - DRIVER( ngolda ) /* 198? Unknown */ - DRIVER( ngoldb ) /* 198? Unknown */ - DRIVER( witchcrd ) /* (c) 1991, Video Klein */ - DRIVER( witchcda ) /* 1991, Unknown */ - DRIVER( witchcdb ) /* 1991, Unknown */ - DRIVER( witchcdc ) /* 1991, Unknown */ - DRIVER( witchcdd ) /* 1991, Unknown */ - DRIVER( witchcdf ) /* (c) 1991, PlayMan */ - DRIVER( witchcdg ) /* (c) 199?, Falcon */ - DRIVER( witchcdh ) /* (c) 1991, TV Game Elektronik - Proma */ - DRIVER( witchgme ) /* (c) 1991 Video Klein */ - DRIVER( witchjol ) /* 1994, Unknown */ - DRIVER( wldwitch ) /* 1994, Video Klein */ - DRIVER( falcnwld ) /* 1991, TVG */ - DRIVER( falcnwlda ) /* (c) 1990, Video Klein */ - DRIVER( falcnwldb ) /* (c) 1983, Falcon */ - DRIVER( bsuerte ) /* 1990, Unknown */ - DRIVER( bsuertea ) /* 1991, Unknown */ - DRIVER( bsuerteb ) /* 1991, Unknown */ - DRIVER( bsuertec ) /* 1991, Unknown */ - DRIVER( bsuerted ) /* 1991, Unknown */ - DRIVER( bsuertee ) /* 1991, Unknown */ - DRIVER( bsuertef ) /* 1991, Unknown */ - DRIVER( bsuerteg ) /* 1991, Unknown */ - DRIVER( bsuerteh ) /* 1991, Unknown */ - DRIVER( bsuertei ) /* 1991, Unknown */ - DRIVER( bsuertej ) /* 1991, Unknown */ - DRIVER( bsuertek ) /* 1991, Unknown */ - DRIVER( bsuertel ) /* 1991, Unknown */ - DRIVER( bsuertem ) /* 1991, Unknown */ - DRIVER( bsuerten ) /* 1991, Unknown */ - DRIVER( bsuerteo ) /* 1991, Unknown */ - DRIVER( bsuertep ) /* 1991, Unknown */ - DRIVER( bsuerteq ) /* 1991, Unknown */ - DRIVER( bsuerter ) /* 1991, Unknown */ - DRIVER( bsuertes ) /* 1991, Unknown */ - DRIVER( bsuertet ) /* 1991, Unknown */ - DRIVER( bsuerteu ) /* 1991, Unknown */ - DRIVER( pmpoker ) /* (c) 1981 PlayMan */ - DRIVER( royale ) /* Unknown */ - DRIVER( royalea ) /* Unknown */ - DRIVER( sloco93 ) /* 1993, Unknown */ - DRIVER( sloco93a ) /* 1993, Unknown */ - DRIVER( maverik ) /* 198?, Unknown */ - DRIVER( brasil86 ) /* 1986, Unknown */ - DRIVER( brasil87 ) /* 1987, Unknown */ - DRIVER( brasil89 ) /* 1989, Unknown */ - DRIVER( brasil89a ) /* 1989, Unknown */ - DRIVER( brasil93 ) /* 1993, Unknown */ - DRIVER( poker91 ) /* 1991, Unknown */ - DRIVER( genie ) /* (c) 198? Video Fun Games Ltd. */ - DRIVER( silverga ) /* 1983, Unknown */ - DRIVER( pokerdub ) /* 198?, Unknown */ - DRIVER( pokerduc ) /* 198?, Unknown */ - - /* Cal Omega */ - DRIVER( comg074 ) /* (c) 1981 Cal Omega Inc. */ - DRIVER( comg076 ) /* (c) 1981 Cal Omega Inc. */ - DRIVER( comg079 ) /* (c) 1981 Cal Omega Inc. */ - DRIVER( comg080 ) /* (c) 1981 Cal Omega Inc. */ - DRIVER( comg094 ) /* (c) 1981 Cal Omega Inc. */ - DRIVER( comg107 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg123 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg125 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg127 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg128 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg134 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg145 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg157 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg159 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg164 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg168 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg172 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg175 ) /* (c) 1984 Cal Omega / Casino Electronics Inc. */ - DRIVER( comg176 ) /* (c) 1982 Cal Omega Inc. */ - DRIVER( comg181 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg183 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg185 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg186 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg187 ) /* (c) 1983 Cal Omega Inc. */ - DRIVER( comg204 ) /* (c) 1984 Cal Omega Inc. */ - DRIVER( comg208 ) /* (c) 1984 Cal Omega Inc. */ - DRIVER( comg227 ) /* (c) 1984 Cal Omega Inc. */ - DRIVER( comg230 ) /* (c) 1984 Cal Omega Inc. */ - DRIVER( comg236 ) /* (c) 1984 Cal Omega Inc. */ - DRIVER( comg239 ) /* (c) 1985 Cal Omega / Casino Electronics Inc. */ - DRIVER( comg240 ) /* (c) 1985 Cal Omega / Casino Electronics Inc. */ - DRIVER( comg246 ) /* (c) 1985 Cal Omega Inc. */ - DRIVER( comg272a ) /* (c) 1985 Cal Omega Inc. */ - DRIVER( comg272b ) /* (c) 1985 Cal Omega Inc. */ - DRIVER( comg5108 ) /* (c) 1985 Cal Omega Inc. */ - DRIVER( comg903d ) /* (c) 198? Cal Omega Inc. */ - DRIVER( comg905d ) /* (c) 198? Cal Omega Inc. */ - DRIVER( elgrande ) /* (c) 1982 Tuni Electro Service / E.T. Marketing */ - DRIVER( jjpoker ) /* (c) 1983 Enter-Tech */ - DRIVER( jjpokerb ) /* (c) 1983 Enter-Tech */ - DRIVER( ssipkr24 ) /* (c) 1988 SSI */ - DRIVER( ssipkr30 ) /* (c) 1988 SSI */ - DRIVER( ssipkr40 ) /* (c) 1990 SSI */ - - DRIVER( altair ) /* (c) 1981 Cidelsa */ - DRIVER( destryer ) /* (c) 1981 Cidelsa */ - DRIVER( destryera ) /* (c) 1981 Cidelsa */ - DRIVER( draco ) /* (c) 1981 Cidelsa */ - DRIVER( rockduck ) /* (c) 1983 Datel SAS */ - DRIVER( tetriskr ) /* (c) 1988? bootleg */ - DRIVER( trvhang ) /* (c) 1984 SMS MFG CORP */ - DRIVER( trvhanga ) /* (c) 1984 SMS MFG CORP */ - DRIVER( sureshot ) /* (c) 1985 SMS MFG CORP */ - DRIVER( secondch ) /* (c) 1985 SMS MFG CORP */ - DRIVER( skylncr ) /* (c) 1995 Bordun International */ - DRIVER( butrfly ) /* (c) 1995 Bordun International */ - DRIVER( madzoo ) /* (c) 1995 Bordun International */ - DRIVER( leader ) /* Bootleg? */ - DRIVER( livequiz ) /* (c) 1999 Andamiro */ - DRIVER( hammer ) /* (c) 2000 Andamiro */ - DRIVER( cowrace ) /* (c) 20?? hack */ - DRIVER( kingdrbb ) /* (c) 199? hack */ - DRIVER( discoboy ) /* (c) 1993 Soft Art Co. */ - DRIVER( pangofun ) /* (c) 1995 InfoCube */ - DRIVER( 2mindril ) /* (c) 1993 Taito */ - DRIVER( koikoi ) /* (c) 1983 Kiwako */ - DRIVER( good ) /* (c) 1983 Kiwako */ - DRIVER( filetto ) /* (c) 1990 Novamatic */ - DRIVER( quizo ) /* (c) 1985 Seoul Coin Corp. */ - DRIVER( quizoa ) /* (c) 1985 Seoul Coin Corp. */ - DRIVER( gstream ) /* (c) 2002, Oriental Soft Japan */ - DRIVER( miniboy7 ) /* (c) 1983, Bonanza Enterprises */ - DRIVER( miniboy7a ) /* (c) 1983, Bonanza Enterprises */ - DRIVER( 39in1 ) /* MAME based bootleg */ - DRIVER( 48in1 ) /* MAME based bootleg */ - DRIVER( 48in1a ) /* MAME based bootleg */ - DRIVER( kingpin ) /* (c) 1983 American Communications Laboratories Inc. */ - DRIVER( kingpinm ) /* (c) 1983 American Communications Laboratories Inc. */ - DRIVER( thayers ) /* (c) 1983 RDI Video Systems */ - DRIVER( thayersa ) /* (c) 1983 RDI Video Systems */ - DRIVER( istellar ) /* (c) 1983 Funai / Gakken */ - DRIVER( esh ) /* (c) 1984 Funai / Gakken */ - DRIVER( esha ) /* (c) 1984 Funai / Gakken */ - DRIVER( eshb ) /* (c) 1984 Funai / Gakken */ - DRIVER( comebaby ) /* (c) 2000 ExPotato */ - DRIVER( peset038 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pepp0043 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pepp0065 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pepp0158 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pepp0188 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pepp0250 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pepp0447 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pepp0516 ) /* (c) 1987 IGT - International Gaming Technology */ - DRIVER( pebe0014 ) /* (c) 1994 IGT - International Gaming Technology */ - DRIVER( peke1012 ) /* (c) 1994 IGT - International Gaming Technology */ - DRIVER( peps0014 ) /* (c) 1996 IGT - International Gaming Technology */ - DRIVER( peps0022 ) /* (c) 1996 IGT - International Gaming Technology */ - DRIVER( peps0043 ) /* (c) 1996 IGT - International Gaming Technology */ - DRIVER( peps0045 ) /* (c) 1996 IGT - International Gaming Technology */ - DRIVER( peps0308 ) /* (c) 1996 IGT - International Gaming Technology */ - DRIVER( peps0615 ) /* (c) 1996 IGT - International Gaming Technology */ - DRIVER( peps0716 ) /* (c) 1996 IGT - International Gaming Technology */ - DRIVER( pex2069p ) /* (c) 1995 IGT - International Gaming Technology */ - DRIVER( pexp0019 ) /* (c) 1995 IGT - International Gaming Technology */ - DRIVER( pexp0112 ) /* (c) 1995 IGT - International Gaming Technology */ - DRIVER( pexs0006 ) /* (c) 1997 IGT - International Gaming Technology */ - DRIVER( pexmp006 ) /* (c) 1997 IGT - International Gaming Technology */ - DRIVER( pexmp017 ) /* (c) 1997 IGT - International Gaming Technology */ - DRIVER( pexmp024 ) /* (c) 1997 IGT - International Gaming Technology */ - DRIVER( mirage ) /* (c) 1994 Mitchell */ - DRIVER( dominob ) /* (c) 1996 Wonwoo Systems */ - DRIVER( dominobv2 ) /* (c) 1996 Wonwoo Systems */ - DRIVER( jongkyo ) /* (c) 1985 Kiwako */ - DRIVER( gamecstl ) /* MAME based bootleg */ - DRIVER( gamecst2 ) /* MAME based bootleg, version 2.613 */ - DRIVER( drw80pkr ) /* (c) 1982 IGT */ - DRIVER( drw80pk2 ) /* (c) 1983 IGT */ - DRIVER( fortune1 ) /* (c) 1984 IGT */ - DRIVER( blazlaz ) /* (c) 1989 Hudson Soft */ - DRIVER( ggconnie ) /* (c) ???? Capcom */ - DRIVER( paranoia ) /* (c) 1990 Naxat Soft */ - DRIVER( vcombat ) /* (c) 1993 VR8 Inc. */ - DRIVER( shadfgtr ) /* (c) 1993 DUTECH Inc. */ - DRIVER( skimaxx ) /* (c) 1996 Kyle Hodgetts/ICE */ - DRIVER( blackt96 ) /* (c) 1996 D.G.R.M. of Korea */ - DRIVER( magictg ) /* (c) 199? Acclaim */ - DRIVER( magictga ) /* (c) 199? Acclaim */ - DRIVER( re900 ) /* (c) 1993 Entretenimientos GEMINIS */ - DRIVER( bs94 ) /* (c) 1994 Entretenimientos GEMINIS */ - DRIVER( jokrwild ) /* (c) 1988 Sigma */ - DRIVER( pesadelo ) /* (c) 1989 Forte II Games */ - DRIVER( pengadvb ) /* (c) 1988 Screen */ - DRIVER( spool99 ) /* (c) 1998 Electronic Projects */ - DRIVER( spool99a ) /* (c) 1998 Electronic Projects */ - DRIVER( vcarn ) /* (c) 1999 Electronic Projects */ - DRIVER( 4roses ) /* (c) 1999 Unknown */ - DRIVER( 4rosesa ) /* (c) 1999 Unknown */ - DRIVER( big10 ) /* (c) 198? Unknown */ - DRIVER( bingor1 ) /* (c) 2002 Unknown */ - DRIVER( bingor2 ) /* (c) 2002 Unknown */ - DRIVER( bingor3 ) /* (c) 2002 Unknown */ - DRIVER( bingor4 ) /* (c) 2002 Unknown */ - DRIVER( bingor5 ) /* (c) 2002 Unknown */ - - /* InterFlip / Recreativos Franco */ - DRIVER( videopkr ) /* (c) 1984 InterFlip */ - DRIVER( blckjack ) /* (c) 1984 InterFlip */ - DRIVER( videodad ) /* (c) 1987 InterFlip */ - DRIVER( videocba ) /* (c) 1987 InterFlip */ - DRIVER( babypkr ) /* (c) 1987 Recreativos Franco */ - DRIVER( babydad ) /* (c) 1987 Recreativos Franco */ - - /* H8/3048 italian gambling games */ - DRIVER( laperla ) /* (c) 2002 Nazionale Elettronica */ - DRIVER( laperlag ) /* (c) 2001 Nazionale Elettronica */ - DRIVER( capunc ) /* (c) 2000 Nazionale Elettronica */ - DRIVER( capcor ) /* (c) 2001 Nazionale Elettronica */ - DRIVER( euro2k2 ) /* (c) 2001 Nazionale Elettronica */ - DRIVER( euro2k2a ) /* (c) 2001 Nazionale Elettronica */ - DRIVER( euro2k2s ) /* (c) 2002 Nazionale Elettronica */ - DRIVER( mnumber ) /* (c) 200? M.M. - B.R.L. */ - DRIVER( abacus ) /* (c) 200? unknown */ - DRIVER( bookthr ) /* (c) 200? unknown */ - - /* H8/3337 italian gambling games */ - DRIVER( ntcash ) /* (c) 1999 unknown */ - DRIVER( wizard ) /* (c) 1999 A.A. */ - DRIVER( trstar2k ) /* (c) 1999 A.M. */ - DRIVER( laser2k1 ) /* (c) 2001 unknown */ - DRIVER( mdrink ) /* (c) 2001 unknown */ - DRIVER( te0144 ) /* (c) 2001 unknown */ - DRIVER( cmagica ) /* (c) 200? unknown */ - DRIVER( millsun ) /* (c) 200? unknown */ - DRIVER( sspac2k1 ) /* (c) 200? unknown */ - DRIVER( elvis ) /* (c) 200? unknown */ - DRIVER( sstar ) /* (c) 200? unknown */ - DRIVER( pirati ) /* (c) 2001 Cin */ - DRIVER( mnumitg ) /* (c) 200? unknown */ - DRIVER( mclass ) /* (c) 200? unknown */ - DRIVER( europass ) /* (c) 200? unknown */ - - /* Intel 8086-based italian gambling games */ - DRIVER( newmcard ) /* (c) 19?? unknown */ - DRIVER( brasil ) /* (c) 2000 unknown */ - DRIVER( fashion ) /* (c) 2000 unknown */ - DRIVER( ciclone ) /* (c) 2000 unknown */ - - /* V30-based italian gambling games */ - DRIVER( tour4000 ) /* (c) 2000 High Video */ - DRIVER( cfever40 ) /* (c) 2000 High Video */ - DRIVER( cfever50 ) /* (c) 2000 High Video */ - DRIVER( tour4010 ) /* (c) 2000 High Video */ - DRIVER( cfever51 ) /* (c) 2000 High Video */ - DRIVER( cfever61 ) /* (c) 2000 High Video */ - DRIVER( cfever1k ) /* (c) 2000 High Video */ - DRIVER( girotutt ) /* (c) 2000 High Video */ - - /* Sure games */ - DRIVER( mil4000 ) /* (c) 2000 Sure Milano */ - DRIVER( mil4000a ) /* (c) 2000 Sure Milano */ - DRIVER( mil4000b ) /* (c) 2000 Sure Milano */ - DRIVER( mil4000c ) /* (c) 2000 Sure Milano */ - - /* Mitsubishi/Renesas M16/62A italian gambling games */ - DRIVER( ejollyx5 ) /* (c) 200? Solar Games */ - DRIVER( grandprx ) /* (c) 200? 4fun */ - DRIVER( supjolly ) /* (c) 200? unknown */ - DRIVER( x5jokers ) /* (c) 200? Electronic Projects */ - - /* Astro Corp. */ - DRIVER( showhand ) /* (c) 2000 Astro Corp. */ - DRIVER( showhanc ) /* (c) 2000 Astro Corp. */ - DRIVER( skilldrp ) /* (c) 2002 Astro Corp. */ - DRIVER( speeddrp ) /* (c) 2003 Astro Corp. */ - DRIVER( winbingo ) /* (c) 2005? Astro Corp. */ - DRIVER( winbingoa ) /* (c) 2005? Astro Corp. */ - DRIVER( zoo ) /* (c) 2005? Astro Corp. */ - DRIVER( westvent ) /* (c) 2007? Astro Corp. */ - - /* Dyna */ - DRIVER( ncb3 ) /* (c) 199? Dyna Electronics */ - DRIVER( cb3a ) /* (c) 199? Dyna Electronics */ - DRIVER( cb3 ) /* (c) 199? Dyna Electronics */ - DRIVER( cb3b ) /* (c) 199? Dyna Electronics */ - DRIVER( cb3c ) /* (c) 199? Dyna Electronics */ - DRIVER( cb3d ) /* (c) 199? Dyna Electronics */ - DRIVER( chryangl ) /* (c) 199? Dyna Electronics */ - DRIVER( cmv801 ) /* (c) 198? Corsica */ - DRIVER( cmv4 ) /* (c) 1992 Dyna Electronics */ - DRIVER( cmv4a ) /* (c) 1992 Dyna Electronics */ - DRIVER( cmwm ) /* (c) 199? Dyna Electronics */ - DRIVER( cmfun ) /* (c) 1995 Dyna Electronics */ - DRIVER( cmaster ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmasterb ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmezspin ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmasterc ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmasterbv ) /* (c) 1991 Dyna Electronics / Gerald Duhamel?*/ - DRIVER( cmasterd ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmastere ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmasterf ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmast91 ) /* (c) 1991 Dyna Electronics */ - DRIVER( cmast92 ) /* (c) 1992 Dyna Electronics */ - - DRIVER( tonypok ) /* (c) 1991 Corsica */ - DRIVER( jkrmast ) /* (c) 199? unknown */ - DRIVER( pkrmast ) /* (c) 199? unknown */ - DRIVER( pkrmasta ) /* (c) 199? unknown */ - - DRIVER( cb2001 ) /* (c) 2001 Dyna Electronics */ - DRIVER( scherrym ) /* (c) 2001? Dyna Electronics */ - - /* STG? */ - DRIVER( queen ) - - /* Aristocrat */ - DRIVER( 86lions ) /* (c) 1985? */ - DRIVER( caswin ) /* (c) 1985 */ - - /* Aristocrat Mk4 hardware */ - DRIVER( gtroppo ) /* (c) 1986 Ainsworth Nominees P.L. */ - DRIVER( clkwise ) /* (c) 1986 Ainsworth Nominees P.L. */ - DRIVER( gldnpkr ) /* (c) 1986 Ainsworth Nominees P.L. */ - DRIVER( 3bagflvt ) /* (c) 1994 */ - DRIVER( 3bagflnz ) /* (c) 1994 */ - DRIVER( eforest ) /* (c) 1994 */ - DRIVER( eforesta ) /* (c) 1995 */ - DRIVER( eforestb ) /* (c) 1996 */ - DRIVER( cgold2 ) /* (c) 1995 */ - DRIVER( blkrhino ) /* (c) 1996 */ - DRIVER( goldenc ) /* (c) 1996 */ - DRIVER( kgbird ) /* (c) 1996 */ - DRIVER( kgbirda ) /* (c) 1996 */ - DRIVER( topgear ) /* (c) 1996 */ - DRIVER( wtigernz ) /* (c) 1996 */ - DRIVER( fhunter ) /* (c) 1996 */ - DRIVER( fhuntera ) /* (c) 1996 */ - DRIVER( arcwins ) /* (c) 1996 */ - DRIVER( wildone ) /* (c) 1997 */ - DRIVER( phantomp ) /* (c) 1998 */ - DRIVER( swtht2nz ) /* (c) 1998 */ - DRIVER( ffortune ) /* (c) 1998 */ - DRIVER( autmoon ) /* (c) 1999 */ - DRIVER( coralr2 ) /* (c) 2002 */ - - /* Aristocrat Mk5 hardware */ - DRIVER( aristmk5 ) /* (c) 1995 */ - - DRIVER( swthrt2v ) /* (c) 1995 */ - DRIVER( enchfrst ) /* (c) 1995 */ - DRIVER( dolphntr ) /* (c) 1996 */ - DRIVER( dolphtra ) /* (c) 1996 */ - DRIVER( dmdtouch ) /* (c) 1997 */ - DRIVER( goldprmd ) /* (c) 1997 */ - DRIVER( qotn ) /* (c) 1997 */ - DRIVER( adonis ) /* (c) 1998 */ - DRIVER( reelrock ) /* (c) 1998 */ - DRIVER( indiandr ) /* (c) 1998 */ - DRIVER( magicmsk ) /* (c) 2000 */ - DRIVER( margmgc ) /* (c) 2000 */ - DRIVER( geishanz ) /* (c) 2001 */ - DRIVER( wtiger ) /* (c) 2001 */ - - /* Eagle */ - DRIVER( janshi ) - DRIVER( ronjan ) - DRIVER( pinkiri8 ) - - /* Wing */ - DRIVER( slotcarn ) /* (c) 1985 Wing Co. Ltd */ - DRIVER( lucky74 ) /* (c) 1988 Wing Co. Ltd */ - DRIVER( lucky74a ) /* (c) 1988 Wing Co. Ltd */ - DRIVER( lucky8 ) /* (c) 1989 Wing Co. Ltd */ - DRIVER( lucky8a ) /* (c) 1989 Wing Co. Ltd */ - DRIVER( lucky8b ) /* (c) 1989 Wing Co. Ltd */ - DRIVER( luckgrln ) /* (c) 1991 Wing Co. Ltd */ - DRIVER( luckylad ) /* (c) 1985 Wing Co. Ltd */ - - DRIVER( skill98 ) /* (c) 1998 Amcoe */ - DRIVER( match98 ) /* (c) 1998 Amcoe */ - DRIVER( schery97 ) /* (c) 1998 Amcoe */ - DRIVER( schery97a ) /* (c) 1998 Amcoe */ - DRIVER( roypok96 ) /* (c) 1996 Amcoe */ - DRIVER( roypok96a ) /* (c) 1996 Amcoe */ - DRIVER( roypok96b ) /* (c) 1996 Amcoe */ - DRIVER( pokonl97 ) /* (c) 1997 Amcoe */ - DRIVER( nc96 ) /* (c) 1996 Amcoe */ - DRIVER( nc96a ) /* (c) 1996 Amcoe */ - DRIVER( nc96b ) /* (c) 1996 Amcoe */ - DRIVER( nc96c ) /* (c) 1996 Amcoe */ - DRIVER( nc96txt ) /* (c) 2000 Amcoe */ - DRIVER( nfb96 ) /* (c) 1996 Amcoe */ - DRIVER( nfb96a ) /* (c) 1996 Amcoe */ - DRIVER( nfb96b ) /* (c) 1996 Amcoe */ - DRIVER( nfb96c ) /* (c) 1996 Amcoe */ - DRIVER( nfb96txt ) /* (c) 2000 Amcoe */ - DRIVER( nfb96se ) /* bootleg */ - DRIVER( nfb96sea ) /* bootleg */ - DRIVER( nfb96seb ) /* bootleg */ - DRIVER( carb2002 ) /* bootleg */ - DRIVER( carb2003 ) /* bootleg */ - DRIVER( nfm ) /* bootleg */ - DRIVER( unkch1 ) /* bootleg */ - DRIVER( unkch2 ) /* bootleg */ - DRIVER( unkch3 ) /* bootleg */ - DRIVER( unkch4 ) /* bootleg */ - - DRIVER( ns8lines ) /* unknown */ - DRIVER( ns8linew ) /* unknown */ - DRIVER( ladylinr ) /* (c) 198? TAB Austria */ - DRIVER( kkojnoli ) /* 198? south korean hack */ - DRIVER( wcat3 ) - DRIVER( magodds ) /* 198? (c) Micro Manufacturing Ltd. */ - DRIVER( magoddsa ) /* 198? (c) Micro Manufacturing Ltd. */ - DRIVER( magoddsb ) /* 198? (c) Micro Manufacturing Ltd. */ - DRIVER( magoddsc ) /* 198? (c) Micro Manufacturing Ltd. */ - DRIVER( magoddsd ) /* 198? (c) Micro Manufacturing Ltd. */ - - DRIVER( sfbonus ) /* (c) 2003 Amcoe - Skill Fruit Bonus */ - DRIVER( sfbonusd1 ) /* (c) 2003 Amcoe */ - DRIVER( sfbonusv1 ) /* (c) 2003 Amcoe */ - DRIVER( sfbonuso ) /* (c) 2003 Amcoe */ - DRIVER( sfbonuso2 ) /* (c) 2003 Amcoe */ - DRIVER( parrot3 ) /* (c) 2003 Amcoe - Parrot Poker III */ - DRIVER( parrot3b1 ) /* (c) 2004 Amcoe */ - DRIVER( parrot3d1 ) /* (c) 2004 Amcoe */ - DRIVER( parrot3v1 ) /* (c) 2004 Amcoe */ - DRIVER( parrot3o ) /* (c) 2004 Amcoe */ - DRIVER( hldspin1 ) /* (c) 2000 Amcoe - Hold & Spin I */ - DRIVER( hldspin1dt ) /* (c) 2000 Amcoe */ - DRIVER( hldspin1vt ) /* (c) 2000 Amcoe */ - DRIVER( hldspin1o ) /* (c) 2000 Amcoe */ - DRIVER( hldspin2 ) /* (c) 2000 Amcoe - Hold & Spin II */ - DRIVER( hldspin2d1 ) /* (c) 2000 Amcoe */ - DRIVER( hldspin2v1 ) /* (c) 2000 Amcoe */ - DRIVER( hldspin2o ) /* (c) 2000 Amcoe */ - DRIVER( fcnudge ) /* (c) 2003 Amcoe - Fruit Carnival Nudge */ - DRIVER( fcnudgeo ) /* (c) 2003 Amcoe */ - DRIVER( fcnudgeo2 ) /* (c) 2003 Amcoe */ - DRIVER( fcnudgeo3 ) /* (c) 2003 Amcoe */ - DRIVER( pickwin ) /* (c) 2001 Amcoe - Pick 'n Win */ - DRIVER( pickwinb1 ) /* (c) 2001 Amcoe */ - DRIVER( pickwind1 ) /* (c) 2001 Amcoe */ - DRIVER( pickwinv1 ) /* (c) 2001 Amcoe */ - DRIVER( pickwinbt ) /* (c) 2001 Amcoe */ - DRIVER( pickwindt ) /* (c) 2001 Amcoe */ - DRIVER( pickwinvt ) /* (c) 2001 Amcoe */ - DRIVER( pickwino ) /* (c) 2001 Amcoe */ - DRIVER( pickwino2 ) /* (c) 2001 Amcoe */ - DRIVER( tighook ) /* (c) 2004 Amcoe - Tiger Hook */ - DRIVER( tighookc1 ) /* (c) 2004 Amcoe */ - DRIVER( tighookd1 ) /* (c) 2004 Amcoe */ - DRIVER( tighookv1 ) /* (c) 2004 Amcoe */ - DRIVER( tighookc2 ) /* (c) 2004 Amcoe */ - DRIVER( tighookd2 ) /* (c) 2004 Amcoe */ - DRIVER( tighookv2 ) /* (c) 2004 Amcoe */ - DRIVER( tighooko ) /* (c) 2004 Amcoe */ - DRIVER( tighooko2 ) /* (c) 2004 Amcoe */ - DRIVER( robadv ) /* (c) 2004 Amcoe - Robin's Adventure */ - DRIVER( robadvc1 ) /* (c) 2004 Amcoe */ - DRIVER( robadvd1 ) /* (c) 2004 Amcoe */ - DRIVER( robadvv1 ) /* (c) 2004 Amcoe */ - DRIVER( robadvo ) /* (c) 2004 Amcoe */ - DRIVER( robadv2 ) /* (c) 2004 Amcoe - Robin's Adventure 2 */ - DRIVER( robadv2c1 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2d1 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2v1 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2c2 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2d2 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2v2 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2c3 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2d3 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2v3 ) /* (c) 2004 Amcoe */ - DRIVER( robadv2o ) /* (c) 2004 Amcoe */ - DRIVER( robadv2o2 ) /* (c) 2004 Amcoe */ - DRIVER( pirpok2 ) /* (c) 2003 Amcoe - Pirate Poker II */ - DRIVER( pirpok2b1 ) /* (c) 2003 Amcoe */ - DRIVER( pirpok2d1 ) /* (c) 2003 Amcoe */ - DRIVER( pirpok2v1 ) /* (c) 2003 Amcoe */ - DRIVER( pirpok2o ) /* (c) 2003 Amcoe */ - DRIVER( anibonus ) /* (c) 2003 Amcoe - Animal Bonus */ - DRIVER( anibonusv1 ) /* (c) 2003 Amcoe */ - DRIVER( anibonusv2 ) /* (c) 2003 Amcoe */ - DRIVER( anibonusb1 ) /* (c) 2003 Amcoe */ - DRIVER( anibonusd1 ) /* (c) 2003 Amcoe */ - DRIVER( anibonusb2 ) /* (c) 2003 Amcoe */ - DRIVER( anibonusd2 ) /* (c) 2003 Amcoe */ - DRIVER( anibonuso ) /* (c) 2003 Amcoe */ - DRIVER( anibonuso2 ) /* (c) 2003 Amcoe */ - DRIVER( anibonuso3 ) /* (c) 2003 Amcoe */ - DRIVER( anibonusxo ) /* (c) 2003 Amcoe */ - DRIVER( anibonusxo2 ) /* (c) 2003 Amcoe */ - DRIVER( anibonusxo3 ) /* (c) 2003 Amcoe */ - DRIVER( abnudge ) /* (c) 2003 Amcoe - Animal Bonus Nudge */ - DRIVER( abnudgeb ) /* (c) 2003 Amcoe */ - DRIVER( abnudged ) /* (c) 2003 Amcoe */ - DRIVER( abnudgeo ) /* (c) 2003 Amcoe */ - DRIVER( dblchal ) /* (c) 2003 Amcoe - Double Challenge */ - DRIVER( dblchalc1 ) /* (c) 2003 Amcoe */ - DRIVER( dblchald1 ) /* (c) 2003 Amcoe */ - DRIVER( dblchalv1 ) /* (c) 2003 Amcoe */ - DRIVER( dblchalo ) /* (c) 2003 Amcoe */ - DRIVER( anithunt ) /* (c) 2003 Amcoe - Animal Treasure Hunt */ - DRIVER( anithuntd1 ) /* (c) 2003 Amcoe */ - DRIVER( anithuntv1 ) /* (c) 2003 Amcoe */ - DRIVER( anithunto ) /* (c) 2003 Amcoe */ - DRIVER( anithunto2 ) /* (c) 2003 Amcoe */ - DRIVER( sfruitb ) /* (c) 2002 Amcoe - Super Fruit Bonus */ - DRIVER( sfruitbb1 ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbd1 ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbv1 ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbb2 ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbd2 ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbv2 ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbo ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbo2 ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbh ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbbh ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbdh ) /* (c) 2002 Amcoe */ - DRIVER( sfruitbvh ) /* (c) 2002 Amcoe */ - DRIVER( sfruitboh ) /* (c) 2002 Amcoe */ - DRIVER( fb2gen ) /* (c) 2004 Amcoe - Fruit Bonus 2nd Generation */ - DRIVER( fb2genc1 ) /* (c) 2004 Amcoe */ - DRIVER( fb2gend1 ) /* (c) 2004 Amcoe */ - DRIVER( fb2genv1 ) /* (c) 2004 Amcoe */ - DRIVER( fb2genc2 ) /* (c) 2004 Amcoe */ - DRIVER( fb2gend2 ) /* (c) 2004 Amcoe */ - DRIVER( fb2genv2 ) /* (c) 2004 Amcoe */ - DRIVER( fb2geno ) /* (c) 2004 Amcoe */ - DRIVER( fb2geno2 ) /* (c) 2004 Amcoe */ - DRIVER( fb2nd ) /* (c) 2004 Amcoe - Fruit Bonus 2nd Edition */ - DRIVER( fb2ndd1 ) /* (c) 2004 Amcoe */ - DRIVER( fb2ndv1 ) /* (c) 2004 Amcoe */ - DRIVER( fb2ndc2 ) /* (c) 2004 Amcoe */ - DRIVER( fb2ndd2 ) /* (c) 2004 Amcoe */ - DRIVER( fb2ndv2 ) /* (c) 2004 Amcoe */ - DRIVER( fb2ndo ) /* (c) 2004 Amcoe */ - DRIVER( fb4 ) /* (c) 2004 Amcoe - Fruit Bonus 2004 */ - DRIVER( fb4c1 ) /* (c) 2004 Amcoe */ - DRIVER( fb4d1 ) /* (c) 2004 Amcoe */ - DRIVER( fb4v1 ) /* (c) 2004 Amcoe */ - DRIVER( fb4exp ) /* (c) 2004 Amcoe */ - DRIVER( fb4b2 ) /* (c) 2004 Amcoe */ - DRIVER( fb4c2 ) /* (c) 2004 Amcoe */ - DRIVER( fb4d2 ) /* (c) 2004 Amcoe */ - DRIVER( fb4v2 ) /* (c) 2004 Amcoe */ - DRIVER( fb4o ) /* (c) 2004 Amcoe */ - DRIVER( fb4o2 ) /* (c) 2004 Amcoe */ - DRIVER( fb5 ) /* (c) 2005 Amcoe - Fruit Bonus 2005 */ - DRIVER( fb5c ) /* (c) 2005 Amcoe */ - DRIVER( fb5d ) /* (c) 2005 Amcoe */ - DRIVER( fb5v ) /* (c) 2005 Amcoe */ - DRIVER( fb6 ) /* (c) 2006 Amcoe - Fruit Bonus '06 - 10th anniversary */ - DRIVER( fb6v ) /* (c) 2006 Amcoe */ - DRIVER( fb6d1 ) /* (c) 2006 Amcoe */ - DRIVER( fb6s1 ) /* (c) 2006 Amcoe */ - DRIVER( fb6v1 ) /* (c) 2006 Amcoe */ - DRIVER( fb6d2 ) /* (c) 2006 Amcoe */ - DRIVER( fb6s2 ) /* (c) 2006 Amcoe */ - DRIVER( fb6v2 ) /* (c) 2006 Amcoe */ - DRIVER( fb6s3 ) /* (c) 2006 Amcoe */ - DRIVER( fb6se ) /* (c) 2006 Amcoe - Fruit Bonus 2006 Special Edition */ - DRIVER( fb6sev ) /* (c) 2006 Amcoe */ - DRIVER( fb6sed1 ) /* (c) 2006 Amcoe */ - DRIVER( fb6sev1 ) /* (c) 2006 Amcoe */ - DRIVER( fb6sed2 ) /* (c) 2006 Amcoe */ - DRIVER( fb6sev2 ) /* (c) 2006 Amcoe */ - DRIVER( version4 ) /* (c) 2006 Amcoe - Version 4 ? */ - DRIVER( bugfever ) /* (c) 2006 Amcoe - Bug Fever */ - DRIVER( bugfevero ) /* (c) 2006 Amcoe */ - DRIVER( bugfeverd ) /* (c) 2006 Amcoe */ - DRIVER( bugfeverv ) /* (c) 2006 Amcoe */ - DRIVER( bugfeverv2 ) /* (c) 2006 Amcoe */ - DRIVER( funriver ) /* (c) 2005 Amcoe - Fun River */ - DRIVER( funriverv ) /* (c) 2005 Amcoe */ - DRIVER( dvisland ) /* (c) 2006 Amcoe - Devil's Island */ - DRIVER( dvislando ) /* (c) 2006 Amcoe */ - DRIVER( atworld ) /* (c) 2007 Amcoe - Around The World */ - DRIVER( atworldd1 ) /* (c) 2007 Amcoe */ - DRIVER( amclink ) /* (c) 200? Amcoe - Amcoe Link Control Box? */ - DRIVER( fbdeluxe ) /* (c) 200? Amcoe - Amcoe Link Control Box? */ - - DRIVER( act2000 ) /* (c) 1999 Amcoe - Action 2000 */ - DRIVER( act2000v1 ) /* (c) 1999 Amcoe */ - DRIVER( act2000d1 ) /* (c) 1999 Amcoe */ - DRIVER( act2000b1 ) /* (c) 1999 Amcoe */ - DRIVER( act2000vx ) /* (c) 1999 Amcoe */ - DRIVER( act2000dx ) /* (c) 1999 Amcoe */ - DRIVER( act2000bx ) /* (c) 1999 Amcoe */ - DRIVER( act2000o ) /* (c) 1999 Amcoe */ - DRIVER( act2000o2 ) /* (c) 1999 Amcoe */ - DRIVER( act2000o3 ) /* (c) 1999 Amcoe */ - DRIVER( ch2000 ) /* (c) 2000 Amcoe - Fruit Bonus 2000 / New Cherry 2000 */ - DRIVER( ch2000b1 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000c1 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000d1 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000v1 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000b2 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000c2 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000d2 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000v2 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000o ) /* (c) 2000 Amcoe */ - DRIVER( ch2000o2 ) /* (c) 2000 Amcoe */ - DRIVER( ch2000o3 ) /* (c) 2000 Amcoe */ - DRIVER( pir2001 ) /* (c) 2001 Amcoe - Pirate 2001 */ - DRIVER( pir2001b1 ) /* (c) 2001 Amcoe */ - DRIVER( pir2001d1 ) /* (c) 2001 Amcoe */ - DRIVER( pir2001v1 ) /* (c) 2001 Amcoe */ - DRIVER( pir2001bx ) /* (c) 2001 Amcoe */ - DRIVER( pir2001dx ) /* (c) 2001 Amcoe */ - DRIVER( pir2001vx ) /* (c) 2001 Amcoe */ - DRIVER( pir2001o ) /* (c) 2001 Amcoe */ - DRIVER( pir2001o2 ) /* (c) 2001 Amcoe */ - DRIVER( pir2001o3 ) /* (c) 2001 Amcoe */ - DRIVER( pir2002 ) /* (c) 2001 Amcoe - Pirate 2002 */ - DRIVER( pir2002b1 ) /* (c) 2001 Amcoe */ - DRIVER( pir2002d1 ) /* (c) 2001 Amcoe */ - DRIVER( pir2002v1 ) /* (c) 2001 Amcoe */ - DRIVER( pir2002bx ) /* (c) 2001 Amcoe */ - DRIVER( pir2002dx ) /* (c) 2001 Amcoe */ - DRIVER( pir2002vx ) /* (c) 2001 Amcoe */ - DRIVER( pir2002o ) /* (c) 2001 Amcoe */ - DRIVER( pir2002o2 ) /* (c) 2001 Amcoe */ - DRIVER( pir2002o3 ) /* (c) 2001 Amcoe */ - DRIVER( classice ) /* (c) 2004 Amcoe - Classic Edition */ - DRIVER( classicev ) /* (c) 2004 Amcoe */ - DRIVER( classice1 ) /* (c) 2004 Amcoe */ - DRIVER( classiced1 )/* (c) 2004 Amcoe */ - DRIVER( classicev1 )/* (c) 2004 Amcoe */ - DRIVER( classice2 ) /* (c) 2004 Amcoe */ - DRIVER( classiced2 )/* (c) 2004 Amcoe */ - DRIVER( classicev2 )/* (c) 2004 Amcoe */ - DRIVER( seawld ) /* (c) 200? Amcoe - Sea World */ - DRIVER( seawldd1 ) /* (c) 200? Amcoe */ - DRIVER( moneymac ) /* (c) 200? Amcoe - Money Machine */ - DRIVER( moneymacd1 )/* (c) 200? Amcoe */ - DRIVER( moneymacv1 )/* (c) 200? Amcoe */ - DRIVER( moneymacd2 )/* (c) 200? Amcoe */ - DRIVER( moneymacv2 )/* (c) 200? Amcoe */ - - - DRIVER( chsuper3 ) /* unknown */ - DRIVER( chsuper2 ) /* unknown */ - DRIVER( chmpnum ) /* unknown */ - DRIVER( 3super8 ) /* unknown */ - DRIVER( buster ) /* (c) 1987 Marian Electronics Ltd. */ - DRIVER( spielbud ) /* (c) 1985 ADP */ - - /* Hi-Soft */ - DRIVER( himesiki ) /* (c) 1989 Hi-Soft */ - - /* Draw Poker HI-LO based (z80) */ - DRIVER( norautp ) /* (c) 1988 Noraut Ltd. */ - DRIVER( norautdx ) /* (c) 198? Noraut Ltd. */ - DRIVER( norautpn ) /* (c) 199? unknown */ - DRIVER( norautjo ) /* (c) 198? Noraut Ltd. */ - DRIVER( norautpl ) /* (c) 198? Prologic / Noraut Ltd. */ - DRIVER( norautjp ) /* (c) 198? Noraut Ltd. */ - DRIVER( norautrh ) /* (c) 198? Noraut Ltd. */ - DRIVER( norautra ) /* (c) 198? Noraut Ltd. */ - DRIVER( norautu ) /* (c) 198? Noraut Ltd. */ - DRIVER( noraut3a ) /* (c) 2002 Noraut Ltd. */ - DRIVER( noraut3b ) /* (c) 2003 Noraut Ltd. */ - DRIVER( norautua ) /* (c) 198? Noraut Ltd. */ - DRIVER( norautub ) /* (c) 198? Noraut Ltd. */ - DRIVER( mainline ) /* (c) Mainline London */ - DRIVER( df_djpkr ) /* (c) DellFern Ltd. */ - DRIVER( ndxron10 ) /* 2005, unknown */ - DRIVER( cgip30cs ) /* (c) 1999, CGI */ - DRIVER( kimblz80 ) /* (c) 198?, Kimble Ireland */ - DRIVER( pma ) /* 1983, PMA */ - DRIVER( bjpoker ) /* (c) M. Kramer Inc. */ - - /* Draw Poker HI-LO based (8080) */ - DRIVER( dphl ) /* (c) 1983 M. Kramer Inc. */ - DRIVER( dphla ) /* unknown */ - DRIVER( dphljp ) /* unknown */ - DRIVER( kimbldhl ) /* (c) 198?, Kimble Ireland */ - DRIVER( gtipoker ) /* (c) 1983 GTI Inc */ - DRIVER( smshilo ) /* (c) 1983 SMS Manufacturing Corp. */ - DRIVER( drhl ) /* (c) 1986 Drew, Inc. */ - DRIVER( drhla ) /* (c) 1986 Drew, Inc. */ - DRIVER( tpoker2 ) /* (c) 1993 Micro Manufacturing, Inc. */ - DRIVER( ssjkrpkr ) /* (c) 1982 Southern Systems & Assembly, Ltd. */ - DRIVER( fastdrwp ) /* Stern? */ - DRIVER( dphlunka ) /* SMS Manufacturing Corp? */ - DRIVER( dphlunkb ) /* SMS Manufacturing Corp? */ - - - /* Sanki Denshi Kogyo */ - DRIVER( pachifev ) /* (c) 1983? */ - - /* New Image Technologies */ - DRIVER( bonanza ) /* (c) 1993 */ - DRIVER( bonanzar2 ) /* (c) 1993 */ - DRIVER( streetg ) /* (c) 1993 */ - DRIVER( streetgr3 ) /* (c) 1993 */ - DRIVER( streetg2 ) /* (c) 1993 */ - DRIVER( streetg2r5 ) /* (c) 1993 */ - - /* Micro Manufacturing */ - DRIVER( magtouch ) /* (c) 1995 */ - - /* Coinmaster-Gaming VGA based */ - DRIVER( colorama ) /* (c) 2001 Coinmaster-Gaming, Ltd. */ - DRIVER( cmrltv75 ) /* (c) 2001 Coinmaster-Gaming, Ltd. */ - DRIVER( cmkenosp ) /* (c) 2000 Coinmaster-Gaming, Ltd. */ - DRIVER( cmkenospa ) /* (c) 2000 Coinmaster-Gaming, Ltd. */ - - /* Igrosoft Original sets */ - /* Multifish */ - //DRIVER( mfish ) /* (c) 2002 */ - //DRIVER( mfish_2 ) /* (c) 2002 */ - //DRIVER( mfish_4 ) /* (c) 2002 */ - //DRIVER( mfish_5 ) /* (c) 2002 */ - //DRIVER( mfish_7 ) /* (c) 2002 */ - //DRIVER( mfish_8 ) /* (c) 2002 */ - //DRIVER( mfish_9 ) /* (c) 2002 */ - //DRIVER( mfish_10 ) /* (c) 2002 */ - //DRIVER( mfish_13 ) /* (c) 2002 */ - DRIVER( mfish_3 ) /* (c) 2002 */ - DRIVER( mfish_6 ) /* (c) 2002 */ - DRIVER( mfish_11 ) /* (c) 2002 */ - DRIVER( mfish_12 ) /* (c) 2002 */ - DRIVER( mfish_13 ) /* (c) 2002 */ - - /* Crazy Monkey */ - //DRIVER( crzmon ) /* (c) 2003 */ - //DRIVER( crzmon_2 ) /* (c) 2003 */ - //DRIVER( crzmon_3 ) /* (c) 2003 */ - //DRIVER( crzmon_4 ) /* (c) 2003 */ - //DRIVER( crzmon_5 ) /* (c) 2003 */ - //DRIVER( crzmon_6 ) /* (c) 2003 */ - DRIVER( crzmon_5 ) /* (c) 2003 */ - DRIVER( crzmon_7 ) /* (c) 2003 */ - DRIVER( crzmon_8 ) /* (c) 2003 */ - DRIVER( crzmon_9 ) /* (c) 2003 */ - - /* Fruit Cocktail */ - //DRIVER( fcockt ) /* (c) 2003 */ - //DRIVER( fcockt_2 ) /* (c) 2003 */ - DRIVER( fcockt_3 ) /* (c) 2003 */ - //DRIVER( fcockt_4 ) /* (c) 2003 */ - DRIVER( fcockt_5 ) /* (c) 2003 */ - DRIVER( fcockt_6 ) /* (c) 2003 */ - DRIVER( fcockt_7 ) /* (c) 2003 */ - DRIVER( fcockt_8 ) /* (c) 2003 */ - DRIVER( fcockt_9 ) /* (c) 2003 */ - DRIVER( fcockt_10 ) /* (c) 2003 */ - DRIVER( fcockt_11 ) /* (c) 2003 */ - DRIVER( fcockt_12 ) /* (c) 2003 */ - - /* Lucky Haunter */ - //DRIVER( lhaunt ) /* (c) 2003 */ - DRIVER( lhaunt_2 ) /* (c) 2003 */ - //DRIVER( lhaunt_3 ) /* (c) 2003 */ - DRIVER( lhaunt_4 ) /* (c) 2003 */ - DRIVER( lhaunt_5 ) /* (c) 2003 */ - DRIVER( lhaunt_6 ) /* (c) 2003 */ - DRIVER( lhaunt_7 ) /* (c) 2003 */ - DRIVER( lhaunt_8 ) /* (c) 2003 */ - - /* Rollfruit */ - //DRIVER( rollfr ) /* (c) 2003 */ - DRIVER( rollfr_2 ) /* (c) 2003 */ - - /* Garage */ - //DRIVER( garage ) /* (c) 2004 */ - //DRIVER( garage_2 ) /* (c) 2004 */ - //DRIVER( garage_3 ) /* (c) 2004 */ - DRIVER( garage_4 ) /* (c) 2004 */ - DRIVER( garage_5 ) /* (c) 2004 */ - DRIVER( garage_6 ) /* (c) 2004 */ - DRIVER( garage_7 ) /* (c) 2004 */ - - /* Rock Climber */ - //DRIVER( rclimb_2 ) /* (c) 2004 */ - DRIVER( rclimb ) /* (c) 2004 */ - DRIVER( rclimb_3 ) /* (c) 2004 */ - DRIVER( rclimb_4 ) /* (c) 2004 */ - DRIVER( rclimb_5 ) /* (c) 2004 */ - - /* Sweet Life */ - DRIVER( sweetl ) /* (c) 2004 */ - DRIVER( sweetl_2 ) /* (c) 2004 */ - - /* Resident */ - DRIVER( resdnt ) /* (c) 2004 */ - DRIVER( resdnt_2 ) /* (c) 2004 */ - DRIVER( resdnt_3 ) /* (c) 2004 */ - - /* Island */ - DRIVER( island ) /* (c) 2005 */ - DRIVER( island_2 ) /* (c) 2005 */ - - /* Pirate */ - //DRIVER( pirate ) /* (c) 2005 */ - DRIVER( pirate_2 ) /* (c) 2005 */ - DRIVER( pirate_3 ) /* (c) 2005 */ - DRIVER( pirate_4 ) /* (c) 2005 */ - - /* Island 2 */ - DRIVER( island2 ) /* (c) 2006 */ - DRIVER( island2_3 ) /* (c) 2006 */ - DRIVER( island2_4 ) /* (c) 2006 */ - - /* Pirate 2 */ - DRIVER( pirate2 ) /* (c) 2006 */ - DRIVER( pirate2_2 ) /* (c) 2006 */ - - /* Keks */ - DRIVER( keks ) /* (c) 2006 */ - DRIVER( keks_2 ) /* (c) 2006 */ - DRIVER( keks_3 ) /* (c) 2006 */ - - /* Gnome */ - DRIVER( gnome ) /* (c) 2007 */ - DRIVER( gnome_2 ) /* (c) 2007 */ - - /* Sweet Life 2 */ - DRIVER( sweetl2 ) /* (c) 2007 */ - - /* Igrosoft bootleg sets */ - - DRIVER( mfish_3a ) /* bootleg - Multifish */ - DRIVER( mfish_12a ) /* bootleg */ - DRIVER( crzmon_7a ) /* bootleg - Crazy Monkey */ - DRIVER( crzmon_7b ) /* bootleg */ - DRIVER( crzmon_8a ) /* bootleg */ - DRIVER( crzmon_8b ) /* bootleg */ - DRIVER( crzmon_8c ) /* bootleg */ - DRIVER( crzmon_8d ) /* bootleg */ - DRIVER( crzmon_8e ) /* bootleg */ - DRIVER( crzmon_8f ) /* bootleg */ - DRIVER( crzmon_9a ) /* bootleg */ - DRIVER( crzmon_9b ) /* bootleg */ - DRIVER( crzmon_9c ) /* bootleg */ - DRIVER( fcockt_6a ) /* bootleg - Fruit Cocktail */ - DRIVER( fcockt_6b ) /* bootleg */ - DRIVER( fcockt_6c ) /* bootleg */ - DRIVER( fcockt_6d ) /* bootleg */ - DRIVER( fcockt_7a ) /* bootleg */ - DRIVER( fcockt_7b ) /* bootleg */ - DRIVER( fcockt_7c ) /* bootleg */ - DRIVER( fcockt_7d ) /* bootleg */ - DRIVER( fcockt_7e ) /* bootleg */ - DRIVER( fcockt_7f ) /* bootleg */ - DRIVER( fcockt_7g ) /* bootleg */ - DRIVER( fcockt_7h ) /* bootleg */ - DRIVER( fcockt_8a ) /* bootleg */ - DRIVER( fcockt_8b ) /* bootleg */ - DRIVER( lhaunt_4a ) /* bootleg - Lucky Haunter */ - DRIVER( lhaunt_5a ) /* bootleg */ - DRIVER( lhaunt_6a ) /* bootleg */ - DRIVER( lhaunt_6b ) /* bootleg */ - DRIVER( lhaunt_6c ) /* bootleg */ - DRIVER( lhaunt_6d ) /* bootleg */ - DRIVER( lhaunt_6e ) /* bootleg */ - DRIVER( lhaunt_6f ) /* bootleg */ - DRIVER( garage_4a ) /* bootleg - Garage */ - DRIVER( garage_4b ) /* bootleg */ - DRIVER( garage_4c ) /* bootleg */ - DRIVER( garage_5a ) /* bootleg */ - DRIVER( garage_5b ) /* bootleg */ - DRIVER( garage_5c ) /* bootleg */ - DRIVER( garage_5d ) /* bootleg */ - DRIVER( garage_5e ) /* bootleg */ - DRIVER( rclimb_3a ) /* bootleg - Rock Climber */ - DRIVER( rclimb_3b ) /* bootleg */ - DRIVER( rclimb_3c ) /* bootleg */ - DRIVER( rclimb_3d ) /* bootleg */ - DRIVER( rclimb_3e ) /* bootleg */ - DRIVER( sweetla ) /* bootleg - Sweet Life */ - DRIVER( sweetlb ) /* bootleg */ - DRIVER( resdnt_2a ) /* bootleg - Resident */ - DRIVER( resdnt_2b ) /* bootleg */ - DRIVER( resdnt_2c ) /* bootleg */ - DRIVER( resdnt_2d ) /* bootleg */ - DRIVER( resdnt_2e ) /* bootleg */ - DRIVER( resdnt_2f ) /* bootleg */ - DRIVER( resdnt_2g ) /* bootleg */ - DRIVER( islanda ) /* bootleg - Island */ - DRIVER( islandb ) /* bootleg */ - DRIVER( islandc ) /* bootleg */ - DRIVER( island2a ) /* bootleg - Island 2 */ - DRIVER( island2b ) /* bootleg */ - DRIVER( island2c ) /* bootleg */ - DRIVER( island2_3a ) /* bootleg */ - DRIVER( island2_4a ) /* bootleg */ - DRIVER( pirate2a ) /* bootleg - Pirate 2 */ - DRIVER( pirate2b ) /* bootleg */ - DRIVER( pirate2c ) /* bootleg */ - DRIVER( pirate2d ) /* bootleg */ - DRIVER( pirate2e ) /* bootleg */ - DRIVER( pirate2f ) /* bootleg */ - DRIVER( pirate2g ) /* bootleg */ - DRIVER( pirate2h ) /* bootleg */ - DRIVER( pirate2_2a ) /* bootleg */ - DRIVER( keksa ) /* bootleg - Keks */ - DRIVER( keksb ) /* bootleg */ - DRIVER( keksc ) /* bootleg */ - DRIVER( keks_2a ) /* bootleg */ - DRIVER( keks_2b ) /* bootleg */ - DRIVER( keks_2c ) /* bootleg */ - DRIVER( keks_2d ) /* bootleg */ - DRIVER( keks_2e ) /* bootleg */ - DRIVER( keks_2f ) /* bootleg */ - DRIVER( keks_2g ) /* bootleg */ - DRIVER( keks_3a ) /* bootleg */ - DRIVER( keks_3b ) /* bootleg */ - DRIVER( gnomea ) /* bootleg - Gnome */ - DRIVER( gnomeb ) /* bootleg */ - DRIVER( gnomec ) /* bootleg */ - DRIVER( gnomed ) /* bootleg */ - DRIVER( gnomee ) /* bootleg */ - DRIVER( gnome_2a ) /* bootleg */ - - /* Disney */ - DRIVER( cdimono1 ) /* Base unit */ - DRIVER( quizard ) /* (c) Disney 1996 */ - DRIVER( quizrd22 ) /* (c) Disney 1995 */ - DRIVER( quizrd17 ) /* (c) Disney 1996 */ - DRIVER( quizrd12 ) /* (c) Disney 1996 */ - DRIVER( quizrr42 ) /* (c) Disney 1998 */ - DRIVER( quizrr41 ) /* (c) Disney 1998 */ - -/* Drivers below are mechanical games, usually with no video display, requiring external artwork to function. - These are currently mostly 'fruit machine' style games, although this may later be extended to system logic - emulation for pinball machiens. - - the m_ prefix is used to identify them as many have very generic names. - - */ - - /* Scorpion 2 */ - DRIVER( m_brkfst ) - DRIVER( m_brkfs1 ) - DRIVER( m_brkfs2 ) - DRIVER( m_brkfs3 ) - DRIVER( m_brkfs4 ) - DRIVER( m_brkfs5 ) - - DRIVER( m_bdrwho ) - DRIVER( m_bdrwh1 ) - DRIVER( m_bdrwh2 ) - DRIVER( m_bdrwh3 ) - DRIVER( m_bdrwh4 ) - DRIVER( m_bdrwh5 ) - DRIVER( m_bdrwh6 ) - DRIVER( m_bdrwh7 ) - DRIVER( m_bdrwh8 ) - DRIVER( m_bdrwh9 ) - DRIVER( m_bdrw10 ) - DRIVER( m_bdrw11 ) - DRIVER( m_bdrw12 ) - DRIVER( m_bdrw13 ) - DRIVER( m_bdrw14 ) - DRIVER( m_bdrw15 ) - DRIVER( m_bdrw16 ) - DRIVER( m_bdrw17 ) - - DRIVER( m_bfocus ) - DRIVER( m_bcgslm ) - DRIVER( m_luvjub ) - DRIVER( m_cpeno1 ) - - /* System85 games */ - DRIVER( m_supcrd ) /* (c) 198? BFM */ - - /* JPM Impact games */ - DRIVER( m_tbirds ) - - /* Scorpion1 games */ - DRIVER( m_lotsse ) /* (c) 198? BFM Dutch ROMS, prelim*/ - DRIVER( m_roulet ) /* (c) 198? BFM Dutch ROMS, prelim*/ - DRIVER( m_clattr ) /* (c) 1990 BFM, Game Card 39-370-196*/ - DRIVER( m_tppokr ) /* (c) 1996 BFM/ELAM,Game Card 95-750-899, uses Adder board for feature gfx*/ - - /* Maygay Machines Ltd. */ - DRIVER( m_sptlgt ) - - DRIVER( screenpl ) - DRIVER( screenp1 ) - DRIVER( screenp2 ) - - /* MPU4 */ - DRIVER( m_oldtmr ) /* Barcrest - highly prelim*/ - DRIVER( m_ccelbr ) - DRIVER( m_gmball ) - DRIVER( m_grtecp ) /* 199? */ - DRIVER( m_blsbys ) /* BwB */ - - /* MPU5 */ - DRIVER( m_honmon ) - - /* Leisure Ent. */ - DRIVER( roul ) /* (c) 1990 */ - - /* Accept LTD. */ - DRIVER( hitpoker ) /* (c) 1997 */ - - /* Videotronics */ - DRIVER( vpoker ) /* (c) 198? */ - DRIVER( 5acespkr ) /* (c) 198? */ - - /* Play Mechanix */ - DRIVER( jnero ) /* (c) 2004 */ - - /* Amatic Trading GMBH */ - DRIVER( am_uslot ) /* (c) 1996 Amatic */ - DRIVER( am_mg24 ) /* (c) 2000 Amatic */ - DRIVER( am_mg3 ) /* (c) 2000 Amatic */ - - DRIVER( neptunp2 ) - DRIVER( rgum ) - - /* Extrema Systems International Ltd. */ - DRIVER( poker72 ) - - DRIVER( chkun ) - - /* Blitz System Inc. */ - DRIVER( megadpkr ) /* (c) 1990 Blitz System Inc */ - DRIVER( megadpkrb ) /* (c) 1990 Blitz System Inc */ - - /* Blitz System Inc. 68k + Blitter Hardware */ - DRIVER( megadblj ) /* (c) 1990 Blitz Systems Inc. */ - DRIVER( megadble ) /* (c) 1990 Blitz Systems Inc. */ - DRIVER( maxidbl ) /* (c) 1992 Blitz Systems Inc. */ - DRIVER( bankrob ) /* (c) 1993 Entertainment Technology Corp. */ - DRIVER( bankroba ) /* (c) 1993 Entertainment Technology Corp. */ - DRIVER( poker52 ) /* (c) 1993 Blitz Systems Inc. ? */ - DRIVER( steaser ) /* (c) 1993 unknown */ - DRIVER( dualgame ) /* (c) 1995 Labtronix Technologies */ - DRIVER( hermit ) /* (c) 1995 Dugamex */ - DRIVER( deucesw2 ) /* (c) 1997 */ - DRIVER( cjffruit ) /* (c) 1998 Cadillac Jack */ - DRIVER( ilpag ) /* (c) 199? unknown */ - - /* Olympic Video Gaming */ - DRIVER( hotstuff ) - - /* Interactive Light */ - DRIVER( savquest ) - - /* Jamie System Development */ - DRIVER( xtom3d ) - - /* Jubilee */ - DRIVER( jubileep ) - - /* Golden Games / C+M Technics AG */ - DRIVER( swisspkr ) /* (c) 1990 Golden Games */ - DRIVER( moviecrd ) /* (c) 1998 Golden Games */ - - /* NSM */ - DRIVER( nsmpoker ) - - /* Advanced Video Technologies */ - DRIVER( avtsym14 ) /* (c) 1985 AVT */ - DRIVER( avtsym25 ) /* (c) 1985 AVT */ - DRIVER( avtbingo ) /* (c) 1985 AVT */ - DRIVER( avtnfl ) /* (c) 1989 AVT */ - - /* Corona hardware */ - DRIVER( winner81 ) /* (c) 1981 Corona Co, Ltd. */ - DRIVER( winner81b ) /* (c) 1981 Corona Co, Ltd. */ - DRIVER( winner82 ) /* (c) 1982 Corona Co, Ltd. */ - DRIVER( re800ea ) /* (c) 1991 Entretenimientos GEMINIS */ - DRIVER( re800v1 ) /* (c) 1991 Entretenimientos GEMINIS */ - DRIVER( re800v3 ) /* (c) 1992 Entretenimientos GEMINIS */ - DRIVER( rcirulet ) /* (c) 199? Entretenimientos GEMINIS */ - DRIVER( luckyrlt ) /* (c) 1990 unknown */ - - DRIVER( dfruit ) - - // allied.c - DRIVER( allied ) - DRIVER( suprpick ) - DRIVER( royclark ) - DRIVER( thndbolt ) - DRIVER( hoedown ) - DRIVER( takefive ) - DRIVER( heartspd ) - DRIVER( foathens ) - DRIVER( disco79 ) - DRIVER( erosone ) - DRIVER( circa33 ) - DRIVER( starshot ) - - - // alvg.c - DRIVER( agsoccer ) - DRIVER( wrldtour ) - DRIVER( wrldtour2 ) - DRIVER( usafootb ) - DRIVER( mystcast ) - DRIVER( pstlpkr ) - DRIVER( punchy ) - DRIVER( dinoeggs ) - - /* - Atari Generation/System 1 - */ - DRIVER( atarians ) - DRIVER( time2000 ) - DRIVER( aavenger ) - DRIVER( midearth ) - DRIVER( spcrider ) - /* - Atari Generation/System 2 - */ - DRIVER( supermap ) - DRIVER( hercules ) - /* - Atari Generation/System 3 - */ - DRIVER( roadrunr ) - - // bingo.c - DRIVER( cntinntl ) - DRIVER( goldgame ) - DRIVER( goldgam2 ) - - /* - Bally MPU AS-2518-17 - */ - DRIVER( blackjck ) - DRIVER( bowarrow ) - DRIVER( eightbll ) - DRIVER( evelknie ) - DRIVER( freedom ) - DRIVER( matahari ) - DRIVER( nightrdr ) - DRIVER( nightr20 ) - DRIVER( pwerplay ) - DRIVER( stk_sprs ) - - /* - Bally MPU AS-2518-35 - */ - DRIVER( bullseye ) - DRIVER( blakpyra ) - DRIVER( bmx ) - DRIVER( centaur ) - DRIVER( cosflash ) - DRIVER( cybrnaut ) - DRIVER( dollyptn ) - DRIVER( eballdlx ) - DRIVER( eballd14 ) - DRIVER( elektra ) - DRIVER( embryon ) - DRIVER( fathom ) - DRIVER( fbclass ) - DRIVER( fball_ii ) - DRIVER( flashgdn ) - DRIVER( flashgdnf ) - DRIVER( flashgdnv ) - DRIVER( frontier ) - DRIVER( futurspa ) - DRIVER( goldball ) - DRIVER( goldballn ) - DRIVER( granslam ) - DRIVER( granslam4 ) - DRIVER( hglbtrtr ) - DRIVER( hotdoggn ) - DRIVER( kosteel ) - DRIVER( kiss ) - DRIVER( lostwrlp ) - DRIVER( medusa ) - DRIVER( m_mpac ) - DRIVER( mystic ) - DRIVER( myststar ) - DRIVER( newwave ) - DRIVER( ngndshkr ) - DRIVER( paragon ) - DRIVER( playboy ) - DRIVER( rapidfip ) - DRIVER( rollston ) - DRIVER( saturn2 ) - DRIVER( slbmania ) - DRIVER( skatebll ) - DRIVER( spacehaw ) - DRIVER( spaceinv ) - DRIVER( speakesy ) - DRIVER( speakesy4p ) - DRIVER( spectrm ) - DRIVER( spectrm4 ) - DRIVER( spyhuntr ) - DRIVER( startrep ) - DRIVER( sst ) - DRIVER( smman ) - DRIVER( tigerrag ) - DRIVER( vector ) - DRIVER( viking ) - DRIVER( voltan ) - DRIVER( xsandos ) - DRIVER( xenon ) - DRIVER( xenonf ) - DRIVER( worlddef ) - DRIVER( darkshad ) - DRIVER( skflight ) - DRIVER( cobrap ) - DRIVER( futrquen ) - DRIVER( f1gpp ) - DRIVER( toppin ) - DRIVER( uboat65 ) - DRIVER( bbbowlin ) - DRIVER( monrobwl ) - DRIVER( mdntmrdr ) - DRIVER( blbeauty ) - DRIVER( suprbowl ) - - /* - Bally Kiss 8035 prototype - */ - DRIVER( kissp ) - - /* - Bally MPU A084-91786-AH06 (6803) - */ - DRIVER( atlantip ) - DRIVER( beatclck ) - DRIVER( blackblt ) - DRIVER( black100 ) - DRIVER( black100s ) - DRIVER( cityslck ) - DRIVER( dungdrag ) - DRIVER( eballchp ) - DRIVER( esclwrld ) - DRIVER( esclwrldg ) - DRIVER( hardbody ) - DRIVER( hardbodyg ) - DRIVER( hvymetap ) - DRIVER( ladyluck ) - DRIVER( motrdome ) - DRIVER( prtyanim ) - DRIVER( specforc ) - DRIVER( strngsci ) - DRIVER( trucksp3 ) - DRIVER( trucksp2 ) - - /* - Bally MPU AS-2518-133 - */ - DRIVER( babypac ) - DRIVER( granny ) - - // by68701.c - DRIVER( flashgdnp1 ) - DRIVER( flashgdnp2 ) - DRIVER( eballdlxp1 ) - DRIVER( eballdlxp2 ) - DRIVER( eballdlxp3 ) - DRIVER( eballdlxp4 ) - - // capcom.c - DRIVER( abv106 ) - DRIVER( abv106r ) - DRIVER( bbb109 ) - DRIVER( bbb108 ) - DRIVER( bsv103 ) - DRIVER( bsv100r ) - DRIVER( bsv102r ) - DRIVER( bsb105 ) - DRIVER( ffv104 ) - DRIVER( ffv101 ) - DRIVER( kpv106 ) - DRIVER( pmv112 ) - DRIVER( pmv112r ) - DRIVER( ghv101 ) - - - // de_1.c - DRIVER( lwar_a83 ) - DRIVER( lwar_e90 ) - - - // de_2.c - DRIVER( mnfb_c27 ) - DRIVER( poto_a32 ) - DRIVER( play_a24 ) - DRIVER( robo_a34 ) - DRIVER( ssvc_a26 ) - DRIVER( tmac_a24 ) - DRIVER( tmac_a18 ) - DRIVER( torp_e21 ) - - - // de_3.c - DRIVER( rab_320 ) - DRIVER( rab_130 ) - DRIVER( rab_103 ) - DRIVER( aar_101 ) - DRIVER( bttf_a27 ) - DRIVER( bttf_a20 ) - DRIVER( bttf_a21 ) - DRIVER( bttf_g27 ) - DRIVER( btmn_103 ) - DRIVER( btmn_101 ) - DRIVER( btmn_g13 ) - DRIVER( btmn_106 ) - DRIVER( ckpt_a17 ) - DRIVER( gnr_300 ) - DRIVER( hook_408 ) - DRIVER( hook_401 ) - DRIVER( hook_404 ) - DRIVER( jupk_513 ) - DRIVER( jupk_501 ) - DRIVER( jupk_g51 ) - DRIVER( lah_112 ) - DRIVER( lah_l104 ) - DRIVER( lah_l108 ) - DRIVER( lah_110 ) - DRIVER( lw3_208 ) - DRIVER( lw3_207 ) - DRIVER( lw3_205 ) - DRIVER( lw3_200 ) - DRIVER( trek_201 ) - DRIVER( trek_200 ) - DRIVER( trek_120 ) - DRIVER( trek_110 ) - DRIVER( trek_11a ) - DRIVER( stwr_103 ) - DRIVER( stwr_g11 ) - DRIVER( stwr_a14 ) - DRIVER( stwr_102 ) - DRIVER( stwr_e12 ) - DRIVER( tftc_303 ) - DRIVER( tftc_300 ) - DRIVER( tftc_200 ) - DRIVER( tftc_104 ) - DRIVER( tmnt_104 ) - DRIVER( tmnt_103 ) - DRIVER( simp_a27 ) - DRIVER( simp_a20 ) - DRIVER( tomy_400 ) - DRIVER( tomy_h30 ) - DRIVER( wwfr_106 ) - DRIVER( wwfr_103 ) - - - // de_3b.c - DRIVER( batmanf ) - DRIVER( batmanf3 ) - DRIVER( bmf_uk ) - DRIVER( bmf_cn ) - DRIVER( bmf_no ) - DRIVER( bmf_sv ) - DRIVER( bmf_at ) - DRIVER( bmf_ch ) - DRIVER( bmf_de ) - DRIVER( bmf_be ) - DRIVER( bmf_fr ) - DRIVER( bmf_nl ) - DRIVER( bmf_it ) - DRIVER( bmf_sp ) - DRIVER( bmf_jp ) - DRIVER( bmf_time ) - DRIVER( baywatch ) - DRIVER( frankst ) - DRIVER( frankstg ) - DRIVER( mav_402 ) - DRIVER( mav_401 ) - DRIVER( mav_400 ) - DRIVER( mav_100 ) - DRIVER( detest ) - DRIVER( ctcheese ) - - - // flicker.c - DRIVER( flicker ) - - - // g627.c - DRIVER( rotation ) - - - // gp_1.c - DRIVER( gp_110 ) - DRIVER( blvelvet ) - DRIVER( camlight ) - DRIVER( chucklck ) - DRIVER( famlyfun ) - DRIVER( foxylady ) - DRIVER( real ) - DRIVER( rio ) - DRIVER( startrip ) - - - // gp_2.c - DRIVER( agent777 ) - DRIVER( andromep ) - DRIVER( andromepa ) - DRIVER( attila ) - DRIVER( cpthook ) - DRIVER( cyclopes ) - DRIVER( gwarfare ) - DRIVER( ladyshot ) - DRIVER( mbossy ) - DRIVER( coneyis ) - DRIVER( lizard ) - DRIVER( sshootr2 ) - DRIVER( sshootep ) - DRIVER( suprnova ) - DRIVER( vegasgp ) - - - // gts1.c - DRIVER( gts1 ) - DRIVER( gts1s ) - DRIVER( astannie ) - DRIVER( buckrgrs ) - DRIVER( charlies ) - DRIVER( cleoptra ) - DRIVER( closeenc ) - DRIVER( countdwn ) - DRIVER( dragon ) - DRIVER( geniep ) - DRIVER( jokrpokr ) - DRIVER( pinpool ) - DRIVER( roldisco ) - DRIVER( sinbad ) - DRIVER( sinbadn ) - DRIVER( solaride ) - DRIVER( hulk ) - DRIVER( torch ) - DRIVER( totem ) - DRIVER( hexagone ) - DRIVER( sys1test ) - - - // gts3.c - DRIVER( barbwire ) - DRIVER( bellring ) - DRIVER( brooks ) - DRIVER( cactjack ) - DRIVER( carhop ) - DRIVER( ccruise ) - DRIVER( clas1812 ) - DRIVER( cueball ) - DRIVER( deadweap ) - DRIVER( bighurt ) - DRIVER( freddy ) - DRIVER( freddy4 ) - DRIVER( gladiatp ) - DRIVER( hoops ) - DRIVER( lca ) - DRIVER( lca2 ) - DRIVER( andretti ) - DRIVER( andretti4 ) - DRIVER( nudgeit ) - DRIVER( opthund ) - DRIVER( rescu911 ) - DRIVER( shaqattq ) - DRIVER( shaqattq2 ) - DRIVER( silvslug ) - DRIVER( stargatp ) - DRIVER( stargatp1 ) - DRIVER( stargatp2 ) - DRIVER( stargatp3 ) - DRIVER( stargatp4 ) - DRIVER( sfight2 ) - DRIVER( sfight2a ) - DRIVER( sfight2b ) - DRIVER( smb ) - DRIVER( smb1 ) - DRIVER( smb2 ) - DRIVER( smb3 ) - DRIVER( smbmush ) - DRIVER( surfnsaf ) - DRIVER( teedoffp ) - DRIVER( teedoffp1 ) - DRIVER( teedoffp3 ) - DRIVER( tfight ) - DRIVER( vegas ) - DRIVER( waterwld ) - DRIVER( waterwld2 ) - DRIVER( wipeout ) - DRIVER( wcsoccer ) - DRIVER( wcsoccerd2 ) - DRIVER( tt_game ) - DRIVER( snspares ) - DRIVER( snspares1 ) - - - // gts80.c - DRIVER( blckhole ) - DRIVER( blckhole2 ) - DRIVER( blckhols ) - DRIVER( circusp ) - DRIVER( cntforce ) - DRIVER( eclipse ) - DRIVER( forceii ) - DRIVER( hh ) - DRIVER( hh_1 ) - DRIVER( jamesb ) - DRIVER( jamesb2 ) - DRIVER( marsp ) - DRIVER( panthera ) - DRIVER( pnkpnthr ) - DRIVER( starrace ) - DRIVER( spidermn ) - DRIVER( timeline ) - DRIVER( vlcno_ax ) - DRIVER( vlcno_1b ) - DRIVER( vlcno_1a ) - DRIVER( s80tst ) - - - // gts80a.c - DRIVER( alienstr ) - DRIVER( amazonh ) - DRIVER( caveman ) - DRIVER( cavemana ) - DRIVER( dvlsdre ) - DRIVER( dvlsdre2 ) - DRIVER( eldorado ) - DRIVER( goinnuts ) - DRIVER( icefever ) - DRIVER( jack2opn ) - DRIVER( krullp ) - DRIVER( punk ) - DRIVER( qbquest ) - DRIVER( rackempp ) - DRIVER( raimfire ) - DRIVER( rocky ) - DRIVER( rflshdlx ) - DRIVER( spirit ) - DRIVER( striker ) - DRIVER( sorbit ) - DRIVER( thegames ) - DRIVER( touchdn ) - - - // gts80b.c - DRIVER( arena ) - DRIVER( badgirls ) - DRIVER( bighouse ) - DRIVER( bonebstr ) - DRIVER( bountyh ) - DRIVER( triplay ) - DRIVER( diamondp ) - DRIVER( excalibr ) - DRIVER( genesisp ) - DRIVER( goldwing ) - DRIVER( hlywoodh ) - DRIVER( hotshots ) - DRIVER( mntecrlo ) - DRIVER( nmoves ) - DRIVER( raven ) - DRIVER( robowars ) - DRIVER( rock ) - DRIVER( rock_enc ) - DRIVER( sprbreak ) - DRIVER( sprbreaks ) - DRIVER( tagteamp ) - DRIVER( tagteamp2 ) - DRIVER( txsector ) - DRIVER( victoryp ) - - - // hankin.c - DRIVER( fjholden ) - DRIVER( howzat ) - DRIVER( orbit1 ) - DRIVER( shark ) - DRIVER( empsback ) - - - // icecold.c - DRIVER( icecold ) - - // inder.c - DRIVER( ind250cc ) - DRIVER( atleta ) - DRIVER( brvteam ) - DRIVER( canasta ) - DRIVER( pinclown ) - DRIVER( corsario ) - DRIVER( lapbylap ) - - - // jp.c - DRIVER( america ) - DRIVER( aqualand ) - DRIVER( faeton ) - DRIVER( lortium ) - DRIVER( petaco ) - DRIVER( petaco2 ) - DRIVER( olympus ) - - - // jvh.c - DRIVER( escape ) - DRIVER( movmastr ) - - - // ltd.c - DRIVER( alcapone ) - DRIVER( atla_ltd ) - DRIVER( bhol_ltd ) - DRIVER( columbia ) - DRIVER( cowboy ) - DRIVER( pecmen ) - DRIVER( zephy ) - - // micropin.c - DRIVER( pentacup ) - DRIVER( pentacup2 ) - - // mephisto.c - DRIVER( mephistp ) - DRIVER( mephistp1 ) - - // mrgame.c - DRIVER( dakar ) - DRIVER( motrshow ) - DRIVER( motrshowa ) - DRIVER( macattck ) - DRIVER( wcup90 ) - - - // nsm.c - DRIVER( firebird ) - - - // peyper.c - DRIVER( odisea ) - DRIVER( wolfman ) - DRIVER( odin_dlx ) - DRIVER( solarwap ) - DRIVER( poleposn ) - DRIVER( sonstwar ) - - - // play_1.c - DRIVER( bigtown ) - DRIVER( chance ) - DRIVER( lastlap ) - DRIVER( spcgambl ) - DRIVER( party ) - - - // play_2.c - DRIVER( antar ) - DRIVER( antar2 ) - DRIVER( evlfight ) - DRIVER( attack ) - DRIVER( blkfever ) - DRIVER( cerberup ) - DRIVER( madrace ) - - - // play_3.c - DRIVER( megaaton ) - - - // play_5.c - DRIVER( spain82 ) - DRIVER( ufo_x ) - DRIVER( kz26 ) - DRIVER( rock2500 ) - DRIVER( starfirp ) - DRIVER( trailer ) - - // rowamet.c - DRIVER( heavymtl ) - - - // s11.c - DRIVER( gmine_l2 ) - DRIVER( grand_l4 ) - DRIVER( hs_l4 ) - DRIVER( hs_l3 ) - DRIVER( rdkng_l4 ) - DRIVER( rdkng_l1 ) - DRIVER( rdkng_l2 ) - DRIVER( rdkng_l3 ) - DRIVER( tdawg_l1 ) - DRIVER( shfin_l1 ) - - - // s11a.c - DRIVER( f14_l1 ) - DRIVER( f14_p3 ) - DRIVER( f14_p4 ) - DRIVER( fire_l3 ) - DRIVER( milln_l3 ) - DRIVER( pb_l5 ) - DRIVER( pb_l2 ) - DRIVER( pb_l3 ) - - - // s11b.c - DRIVER( bcats_l5 ) - DRIVER( bcats_l2 ) - DRIVER( bnzai_l3 ) - DRIVER( bnzai_g3 ) - DRIVER( bnzai_l1 ) - DRIVER( bnzai_pa ) - DRIVER( bguns_l8 ) - DRIVER( bguns_l7 ) - DRIVER( bguns_la ) - DRIVER( bguns_p1 ) - DRIVER( bk2k_l4 ) - DRIVER( bk2k_lg1 ) - DRIVER( bk2k_lg3 ) - DRIVER( bk2k_pu1 ) - DRIVER( cycln_l5 ) - DRIVER( cycln_l4 ) - DRIVER( esha_la3 ) - DRIVER( esha_ma3 ) - DRIVER( esha_pr4 ) - DRIVER( esha_lg1 ) - DRIVER( esha_lg2 ) - DRIVER( esha_la1 ) - DRIVER( esha_pa1 ) - DRIVER( eatpm_l4 ) - DRIVER( eatpm_l1 ) - DRIVER( eatpm_l2 ) - DRIVER( eatpm_4g ) - DRIVER( eatpm_4u ) - DRIVER( eatpm_p7 ) - DRIVER( jokrz_l6 ) - DRIVER( jokrz_l3 ) - DRIVER( mousn_l4 ) - DRIVER( mousn_l1 ) - DRIVER( mousn_lu ) - DRIVER( mousn_lx ) - DRIVER( polic_l4 ) - DRIVER( polic_l3 ) - DRIVER( polic_l2 ) - DRIVER( spstn_l5 ) - DRIVER( swrds_l2 ) - DRIVER( taxi_l4 ) - DRIVER( taxi_l3 ) - DRIVER( taxi_lg1 ) - DRIVER( tsptr_l3 ) - DRIVER( whirl_l3 ) - DRIVER( whirl_l2 ) - DRIVER( whirl_lg3 ) - - - // s11c.c - DRIVER( bbnny_l2 ) - DRIVER( bbnny_lu ) - DRIVER( diner_l4 ) - DRIVER( diner_l3 ) - DRIVER( diner_l1 ) - DRIVER( dd_l2 ) - DRIVER( dd_p6 ) - DRIVER( pool_l7 ) - DRIVER( pool_l6 ) - DRIVER( pool_le2 ) - DRIVER( pool_p7 ) - DRIVER( radcl_l1 ) - DRIVER( radcl_g1 ) - DRIVER( radcl_p3 ) - DRIVER( rvrbt_l3 ) - DRIVER( rollr_l2 ) - DRIVER( rollr_ex ) - DRIVER( rollr_e1 ) - DRIVER( rollr_p2 ) - DRIVER( rollr_l3 ) - DRIVER( rollr_g3 ) - DRIVER( gs_l3 ) - DRIVER( gs_l4 ) - DRIVER( strax_p7 ) - - - // s3.c - DRIVER( httip_l1 ) - DRIVER( lucky_l1 ) - DRIVER( wldcp_l1 ) - DRIVER( cntct_l1 ) - DRIVER( disco_l1 ) - - - // s4.c - DRIVER( flash_l1 ) - DRIVER( flash_t1 ) - DRIVER( phnix_l1 ) - DRIVER( pkrno_l1 ) - DRIVER( stlwr_l2 ) - DRIVER( pomp_l1 ) - DRIVER( arist_l1 ) - DRIVER( topaz_l1 ) - DRIVER( taurs_l1 ) - DRIVER( kingt_l1 ) - DRIVER( omni_l1 ) - DRIVER( bstrk_l1 ) - DRIVER( tstrk_l1 ) - - - // s6.c - DRIVER( blkou_l1 ) - DRIVER( blkou_t1 ) - DRIVER( blkou_f1 ) - DRIVER( frpwr_l6 ) - DRIVER( frpwr_t6 ) - DRIVER( frpwr_l2 ) - DRIVER( grgar_l1 ) - DRIVER( grgar_t1 ) - DRIVER( lzbal_l2 ) - DRIVER( lzbal_t2 ) - DRIVER( tmwrp_l2 ) - DRIVER( tmwrp_t2 ) - DRIVER( scrpn_l1 ) - DRIVER( scrpn_t1 ) - DRIVER( trizn_l1 ) - DRIVER( trizn_t1 ) - - - // s6a.c - DRIVER( algar_l1 ) - DRIVER( alpok_l6 ) - DRIVER( alpok_l2 ) - DRIVER( alpok_f6 ) - - - // s7.c - DRIVER( vrkon_l1 ) - DRIVER( barra_l1 ) - DRIVER( bk_l4 ) - DRIVER( bk_f4 ) - DRIVER( bk_l3 ) - DRIVER( csmic_l1 ) - DRIVER( dfndr_l4 ) - DRIVER( fpwr2_l2 ) - DRIVER( hypbl_l4 ) - DRIVER( jst_l2 ) - DRIVER( jngld_l2 ) - DRIVER( lsrcu_l2 ) - DRIVER( pharo_l2 ) - DRIVER( solar_l2 ) - DRIVER( strlt_l1 ) - DRIVER( tmfnt_l5 ) - DRIVER( wrlok_l3 ) - DRIVER( thund_p1 ) - DRIVER( ratrc_l1 ) - - - // s8.c - DRIVER( pfevr_l2 ) - DRIVER( pfevr_p3 ) - - - // s9.c - DRIVER( comet_l4 ) - DRIVER( comet_l5 ) - DRIVER( sorcr_l1 ) - DRIVER( sorcr_l2 ) - DRIVER( sshtl_l7 ) - DRIVER( alcat_l7 ) - DRIVER( szone_l5 ) - DRIVER( szone_l2 ) - - - // sleic.c - DRIVER( sleicpin ) - - - // spinb.c - DRIVER( bushido ) - DRIVER( bushidoa ) - DRIVER( jolypark ) - DRIVER( mach2 ) - - - // st_mp100.c - DRIVER( princess ) - DRIVER( dracula ) - DRIVER( hothand ) - DRIVER( lectrono ) - DRIVER( magic ) - DRIVER( memlane ) - DRIVER( nugent ) - DRIVER( pinball ) - DRIVER( stars ) - DRIVER( stingray ) - DRIVER( trident ) - DRIVER( wildfyre ) - - - // st_mp200.c - DRIVER( ali ) - DRIVER( biggame ) - DRIVER( catacomp ) - DRIVER( cheetah ) - DRIVER( dragfist ) - DRIVER( flight2k ) - DRIVER( freefall ) - DRIVER( galaxypi ) - DRIVER( ironmaid ) - DRIVER( lazrlord ) - DRIVER( lightnin ) - DRIVER( meteorp ) - DRIVER( nineball ) - DRIVER( orbitor1 ) - DRIVER( quicksil ) - DRIVER( seawitch ) - DRIVER( splitsec ) - DRIVER( stargzr ) - DRIVER( viperp ) - DRIVER( gamatron ) - DRIVER( blkshpsq ) - DRIVER( st_game ) - - - // taito.c - DRIVER( taitest ) - DRIVER( cavnegro ) - DRIVER( cavnegro1 ) - DRIVER( cavnegro2 ) - DRIVER( cosmic ) - DRIVER( drakor ) - DRIVER( fireact ) - DRIVER( fireactd ) - DRIVER( gemini2k ) - DRIVER( gemini2k1 ) - DRIVER( gork ) - DRIVER( hawkman ) - DRIVER( hawkman1 ) - DRIVER( ladylukt ) - DRIVER( lunelle ) - DRIVER( meteort ) - DRIVER( mrblack ) - DRIVER( mrblack1 ) - DRIVER( obaoba ) - DRIVER( obaoba1 ) - DRIVER( polar ) - DRIVER( rally ) - DRIVER( sharkt ) - DRIVER( shock ) - DRIVER( snake ) - DRIVER( sshuttle ) - DRIVER( sshuttle1 ) - DRIVER( stest ) - DRIVER( sureshop ) - DRIVER( titan ) - DRIVER( titan1 ) - DRIVER( vegast ) - DRIVER( voleybal ) - DRIVER( vortexp ) - DRIVER( zarza ) - DRIVER( zarza1 ) - DRIVER( mrblkz80 ) - - - // techno.c - DRIVER( xforce ) - - - // vd.c - DRIVER( break ) - - - // whitestar.c - DRIVER( apollo13 ) - DRIVER( aust301 ) - DRIVER( aust300 ) - DRIVER( aust201 ) - DRIVER( austin ) - DRIVER( austnew ) - DRIVER( austinf ) - DRIVER( austing ) - DRIVER( austini ) - DRIVER( godzillp ) - DRIVER( gldneye ) - DRIVER( goldcue ) - DRIVER( harl_a13 ) - DRIVER( harl_a10 ) - DRIVER( harl_f13 ) - DRIVER( harl_g13 ) - DRIVER( harl_i13 ) - DRIVER( harl_l13 ) - DRIVER( harl_a30 ) - DRIVER( harl_f30 ) - DRIVER( harl_g30 ) - DRIVER( harl_i30 ) - DRIVER( harl_l30 ) - DRIVER( harl_a18 ) - DRIVER( harl_f18 ) - DRIVER( harl_g18 ) - DRIVER( harl_i18 ) - DRIVER( harl_l18 ) - DRIVER( hirolcas ) - DRIVER( hirolcas_210 ) - DRIVER( hironew ) - DRIVER( hirolcat ) - DRIVER( hirol_fr ) - DRIVER( hirol_gr ) - DRIVER( hirol_gr_210 ) - DRIVER( hirol_it ) - DRIVER( id4 ) - DRIVER( lostspc ) - DRIVER( monopolp ) - DRIVER( monop303 ) - DRIVER( monop301 ) - DRIVER( monop251 ) - DRIVER( monop233 ) - DRIVER( monopolf ) - DRIVER( monopolg ) - DRIVER( monopoli ) - DRIVER( monopoll ) - DRIVER( mononew ) - DRIVER( nfl ) - DRIVER( playboys ) - DRIVER( playboys_401 ) - DRIVER( playboys_303 ) - DRIVER( playboys_300 ) - DRIVER( playboys_203 ) - DRIVER( playnew ) - DRIVER( playboyf ) - DRIVER( playboyf_401 ) - DRIVER( playboyf_303 ) - DRIVER( playboyf_300 ) - DRIVER( playboyf_203 ) - DRIVER( playboyg ) - DRIVER( playboyg_401 ) - DRIVER( playboyg_303 ) - DRIVER( playboyg_300 ) - DRIVER( playboyg_203 ) - DRIVER( playboyi ) - DRIVER( playboyi_401 ) - DRIVER( playboyi_303 ) - DRIVER( playboyi_300 ) - DRIVER( playboyi_203 ) - DRIVER( playboyl ) - DRIVER( playboyl_401 ) - DRIVER( playboyl_303 ) - DRIVER( playboyl_300 ) - DRIVER( playboyl_203 ) - DRIVER( rctycn ) - DRIVER( rctycn_701 ) - DRIVER( rctycn_600 ) - DRIVER( rctycn_400 ) - DRIVER( rctnew ) - DRIVER( rctycng ) - DRIVER( rctycng_701 ) - DRIVER( rctycng_400 ) - DRIVER( rctycnf ) - DRIVER( rctycnf_701 ) - DRIVER( rctycnf_600 ) - DRIVER( rctycnf_400 ) - DRIVER( rctycni ) - DRIVER( rctycni_701 ) - DRIVER( rctycni_600 ) - DRIVER( rctycni_400 ) - DRIVER( rctycnl ) - DRIVER( rctycnl_701 ) - DRIVER( rctycnl_600 ) - DRIVER( rctycnl_400 ) - DRIVER( shrkysht ) - DRIVER( shrky_207 ) - DRIVER( shrknew ) - DRIVER( shrkygr ) - DRIVER( shrkygr_207 ) - DRIVER( shrkyfr ) - DRIVER( shrkyfr_207 ) - DRIVER( shrkyit ) - DRIVER( shrkyit_207 ) - DRIVER( sprk_103 ) - DRIVER( sprk_090 ) - DRIVER( spacejam ) - DRIVER( spacejmg ) - DRIVER( spacejmf ) - DRIVER( spacejmi ) - DRIVER( swtril43 ) - DRIVER( swtril41 ) - DRIVER( startrp ) - DRIVER( strikext ) - DRIVER( strknew ) - DRIVER( strxt_uk ) - DRIVER( strxt_gr ) - DRIVER( strxt_fr ) - DRIVER( strxt_it ) - DRIVER( strxt_sp ) - DRIVER( term3 ) - DRIVER( term3_205 ) - DRIVER( t3new ) - DRIVER( term3g ) - DRIVER( term3l ) - DRIVER( term3l_205 ) - DRIVER( term3f ) - DRIVER( term3f_205 ) - DRIVER( term3i ) - DRIVER( term3i_205 ) - DRIVER( jplstw22 ) - DRIVER( jplstw20 ) - DRIVER( simpprty ) - DRIVER( simpprty_400 ) - DRIVER( simpprty_204 ) - DRIVER( simpnew ) - DRIVER( simpprtg ) - DRIVER( simpprtg_400 ) - DRIVER( simpprtl ) - DRIVER( simpprtl_400 ) - DRIVER( simpprtl_204 ) - DRIVER( simpprtf ) - DRIVER( simpprtf_400 ) - DRIVER( simpprtf_204 ) - DRIVER( simpprti ) - DRIVER( simpprti_400 ) - DRIVER( simpprti_204 ) - DRIVER( xfilesp ) - DRIVER( xfiles2 ) - DRIVER( twst_405 ) - DRIVER( twst_404 ) - DRIVER( twst_300 ) - DRIVER( viprsega ) - DRIVER( ctchzdlx ) - DRIVER( titanic ) - DRIVER( monopred ) - DRIVER( wackadoo ) - - - // white_mod.c - DRIVER( elvisp ) - DRIVER( elvisp4 ) - DRIVER( elvisp303 ) - DRIVER( elvisp302 ) - DRIVER( elvisl ) - DRIVER( elvisl4 ) - DRIVER( elvisl303 ) - DRIVER( elvisl302 ) - DRIVER( elvisg ) - DRIVER( elvisg4 ) - DRIVER( elvisg303 ) - DRIVER( elvisg302 ) - DRIVER( elvisf ) - DRIVER( elvisf4 ) - DRIVER( elvisf303 ) - DRIVER( elvisf302 ) - DRIVER( elvisi ) - DRIVER( elvisi4 ) - DRIVER( elvisi303 ) - DRIVER( elvisi302 ) - DRIVER( gprix ) - DRIVER( gprix_400 ) - DRIVER( gprix_340 ) - DRIVER( gprix_301 ) - DRIVER( gprixg ) - DRIVER( gprixg_400 ) - DRIVER( gprixg_340 ) - DRIVER( gprixg_301 ) - DRIVER( gprixl ) - DRIVER( gprixl_400 ) - DRIVER( gprixl_340 ) - DRIVER( gprixl_301 ) - DRIVER( gprixf ) - DRIVER( gprixf_400 ) - DRIVER( gprixf_340 ) - DRIVER( gprixf_301 ) - DRIVER( gprixi ) - DRIVER( gprixi_400 ) - DRIVER( gprixi_340 ) - DRIVER( gprixi_301 ) - DRIVER( nascar ) - DRIVER( nascar_400 ) - DRIVER( nascar_350 ) - DRIVER( nascar_340 ) - DRIVER( nascar_301 ) - DRIVER( nascarl ) - DRIVER( nascarl_400 ) - DRIVER( nascarl_340 ) - DRIVER( nascarl_301 ) - DRIVER( ripleys ) - DRIVER( rip310 ) - DRIVER( rip302 ) - DRIVER( rip300 ) - DRIVER( ripleysf ) - DRIVER( ripf310 ) - DRIVER( ripf302 ) - DRIVER( ripf300 ) - DRIVER( ripleysg ) - DRIVER( ripg310 ) - DRIVER( ripg302 ) - DRIVER( ripg300 ) - DRIVER( ripleysi ) - DRIVER( ripi310 ) - DRIVER( ripi302 ) - DRIVER( ripi300 ) - DRIVER( ripleysl ) - DRIVER( ripl310 ) - DRIVER( ripl302 ) - DRIVER( ripl300 ) - DRIVER( lotr ) - DRIVER( lotr9 ) - DRIVER( lotr8 ) - DRIVER( lotr7 ) - DRIVER( lotr401 ) - DRIVER( lotr_le ) - DRIVER( lotr_sp ) - DRIVER( lotr_sp9 ) - DRIVER( lotr_sp8 ) - DRIVER( lotr_sp7 ) - DRIVER( lotr_sp401 ) - DRIVER( lotr_gr ) - DRIVER( lotr_gr9 ) - DRIVER( lotr_gr8 ) - DRIVER( lotr_gr7 ) - DRIVER( lotr_gr401 ) - DRIVER( lotr_fr ) - DRIVER( lotr_fr9 ) - DRIVER( lotr_fr8 ) - DRIVER( lotr_fr7 ) - DRIVER( lotr_fr401 ) - DRIVER( lotr_it ) - DRIVER( lotr_it9 ) - DRIVER( lotr_it8 ) - DRIVER( lotr_it7 ) - DRIVER( lotr_it401 ) - DRIVER( sopranos ) - DRIVER( sopranos_300 ) - DRIVER( sopranos_204 ) - DRIVER( sopranog ) - DRIVER( sopranog_300 ) - DRIVER( sopranog_107 ) - DRIVER( sopranof ) - DRIVER( sopranof_300 ) - DRIVER( sopranof_107 ) - DRIVER( sopranol ) - DRIVER( sopranol_300 ) - DRIVER( sopranol_107 ) - DRIVER( sopranoi ) - DRIVER( sopranoi_300 ) - DRIVER( sopranoi_107 ) - - - // wico.c - DRIVER( aftor ) - - - // wpc_95.c - DRIVER( tf95_12 ) - DRIVER( afm_113 ) - DRIVER( afm_113b ) - DRIVER( afm_11 ) - DRIVER( afm_11u ) - DRIVER( afm_10 ) - DRIVER( cc_12 ) - DRIVER( cc_13 ) - DRIVER( cv_14 ) - DRIVER( cv_20h ) - DRIVER( cv_10 ) - DRIVER( cv_11 ) - DRIVER( cv_13 ) - DRIVER( congo_21 ) - DRIVER( congo_20 ) - DRIVER( jy_12 ) - DRIVER( jy_11 ) - DRIVER( jy_03 ) - DRIVER( mm_10 ) - DRIVER( mm_10u ) - DRIVER( mm_109 ) - DRIVER( mm_109b ) - DRIVER( mm_109c ) - DRIVER( mm_05 ) - DRIVER( mb_10 ) - DRIVER( mb_106 ) - DRIVER( mb_106b ) - DRIVER( nbaf_31 ) - DRIVER( nbaf_31a ) - DRIVER( nbaf_11s ) - DRIVER( nbaf_11 ) - DRIVER( nbaf_11a ) - DRIVER( nbaf_115 ) - DRIVER( nbaf_21 ) - DRIVER( nbaf_22 ) - DRIVER( nbaf_23 ) - DRIVER( ngg_13 ) - DRIVER( ngg_p06 ) - DRIVER( ngg_10 ) - DRIVER( sc_18 ) - DRIVER( sc_18n ) - DRIVER( sc_18s2 ) - DRIVER( sc_17 ) - DRIVER( sc_17n ) - DRIVER( sc_14 ) - DRIVER( ss_15 ) - DRIVER( ss_14 ) - DRIVER( ss_12 ) - DRIVER( ss_03 ) - DRIVER( totan_14 ) - DRIVER( totan_13 ) - DRIVER( totan_12 ) - DRIVER( totan_04 ) - DRIVER( cp_16 ) - DRIVER( cp_15 ) - DRIVER( ttt_10 ) - - - // wpc_an.c - DRIVER( tfa_13 ) - DRIVER( dd_p7 ) - DRIVER( dd_p06 ) - DRIVER( fh_l9 ) - DRIVER( fh_l9b ) - DRIVER( fh_905h ) - DRIVER( fh_l3 ) - DRIVER( fh_l4 ) - DRIVER( fh_l5 ) - DRIVER( hd_l3 ) - DRIVER( hd_l1 ) - DRIVER( bop_l7 ) - DRIVER( bop_l6 ) - DRIVER( bop_l5 ) - DRIVER( bop_l4 ) - DRIVER( bop_l3 ) - DRIVER( bop_l2 ) - - - // wpc_dcs.c - DRIVER( dm_lx4 ) - DRIVER( dm_pa2 ) - DRIVER( dm_px5 ) - DRIVER( dm_la1 ) - DRIVER( dm_lx3 ) - DRIVER( dm_h5 ) - DRIVER( dm_h6 ) - DRIVER( ij_l7 ) - DRIVER( ij_lg7 ) - DRIVER( ij_l6 ) - DRIVER( ij_l5 ) - DRIVER( ij_l4 ) - DRIVER( ij_l3 ) - DRIVER( jd_l7 ) - DRIVER( jd_l1 ) - DRIVER( jd_l6 ) - DRIVER( pop_lx5 ) - DRIVER( pop_pa3 ) - DRIVER( sttng_l7 ) - DRIVER( sttng_x7 ) - DRIVER( sttng_p5 ) - DRIVER( sttng_s7 ) - DRIVER( sttng_g7 ) - DRIVER( sttng_l1 ) - DRIVER( sttng_l2 ) - DRIVER( afv_l4 ) - - - // wpc_dot.c - DRIVER( tfdmd_l3 ) - DRIVER( gi_l9 ) - DRIVER( gi_l3 ) - DRIVER( gi_l4 ) - DRIVER( gi_l6 ) - DRIVER( hshot_p8 ) - DRIVER( hurr_l2 ) - DRIVER( pz_f4 ) - DRIVER( pz_l1 ) - DRIVER( pz_l2 ) - DRIVER( pz_l3 ) - DRIVER( sf_l1 ) - DRIVER( t2_l8 ) - DRIVER( t2_l6 ) - DRIVER( t2_p2f ) - DRIVER( t2_l4 ) - DRIVER( t2_l3 ) - DRIVER( t2_l2 ) - - - // wpc_flip1.c - DRIVER( taf_l5 ) - DRIVER( taf_p2 ) - DRIVER( taf_l1 ) - DRIVER( taf_l2 ) - DRIVER( taf_l3 ) - DRIVER( taf_l4 ) - DRIVER( taf_l7 ) - DRIVER( taf_l6 ) - DRIVER( taf_h4 ) - - - // wpc_flip2.c - DRIVER( br_l4 ) - DRIVER( br_p17 ) - DRIVER( br_l1 ) - DRIVER( br_l3 ) - DRIVER( drac_l1 ) - DRIVER( drac_p11 ) - DRIVER( cftbl_l3 ) - DRIVER( cftbl_l4 ) - DRIVER( dw_l2 ) - DRIVER( dw_l1 ) - DRIVER( dw_p5 ) - DRIVER( ft_l5 ) - DRIVER( ft_l3 ) - DRIVER( ft_l4 ) - DRIVER( ft_p4 ) - DRIVER( tafg_lx3 ) - DRIVER( tafg_h3 ) - DRIVER( tafg_la2 ) - DRIVER( tafg_la3 ) - DRIVER( gw_l5 ) - DRIVER( gw_pc ) - DRIVER( gw_l1 ) - DRIVER( gw_l2 ) - DRIVER( gw_l3 ) - DRIVER( gw_p7 ) - DRIVER( tz_92 ) - DRIVER( tz_94h ) - DRIVER( tz_94ch ) - DRIVER( tz_pa1 ) - DRIVER( tz_p3 ) - DRIVER( tz_p4 ) - DRIVER( tz_l1 ) - DRIVER( tz_l2 ) - DRIVER( tz_ifpa ) - DRIVER( tz_l3 ) - DRIVER( tz_l4 ) - DRIVER( tz_h7 ) - DRIVER( tz_h8 ) - DRIVER( ww_l5 ) - DRIVER( ww_lh6 ) - DRIVER( ww_lh5 ) - DRIVER( ww_l4 ) - DRIVER( ww_l3 ) - DRIVER( ww_l2 ) - DRIVER( ww_p8 ) - DRIVER( ww_p1 ) - DRIVER( strik_l4 ) - DRIVER( lc_11 ) - - - // wpc_s.c - DRIVER( corv_21 ) - DRIVER( corv_px4 ) - DRIVER( corv_lx1 ) - DRIVER( dh_lx2 ) - DRIVER( i500_11r ) - DRIVER( i500_11b ) - DRIVER( jb_10r ) - DRIVER( jb_10b ) - DRIVER( jm_12r ) - DRIVER( jm_12b ) - DRIVER( nf_23x ) - DRIVER( nf_23 ) - DRIVER( nf_23f ) - DRIVER( nf_22 ) - DRIVER( nf_20 ) - DRIVER( rs_l6 ) - DRIVER( rs_la5 ) - DRIVER( rs_lx5 ) - DRIVER( rs_la4 ) - DRIVER( rs_lx4 ) - DRIVER( rs_lx3 ) - DRIVER( rs_lx2 ) - DRIVER( fs_lx5 ) - DRIVER( fs_lx2 ) - DRIVER( fs_sp2 ) - DRIVER( fs_lx4 ) - DRIVER( ts_lx5 ) - DRIVER( ts_lh6 ) - DRIVER( ts_lx4 ) - DRIVER( ts_la4 ) - DRIVER( ts_la2 ) - DRIVER( ts_pa1 ) - DRIVER( ts_lf6 ) - DRIVER( ts_lm6 ) - DRIVER( tom_13 ) - DRIVER( tom_14h ) - DRIVER( tom_12 ) - DRIVER( tom_06 ) - DRIVER( wd_12 ) - DRIVER( wd_12g ) - DRIVER( wd_11 ) - DRIVER( wd_10r ) - DRIVER( wd_10g ) - DRIVER( wd_10f ) - DRIVER( wd_03r ) - DRIVER( wd_048r ) - DRIVER( wcs_l2 ) - DRIVER( wcs_p2 ) - DRIVER( wcs_p3 ) - DRIVER( tfs_12 ) - - - // zac_1.c - DRIVER( ewf ) - DRIVER( firemntn ) - DRIVER( futurwld ) - DRIVER( hotwheel ) - DRIVER( hod ) - DRIVER( locomotp ) - DRIVER( strapids ) - DRIVER( sshtlzac ) - DRIVER( stargod ) - DRIVER( stargoda ) - DRIVER( wsports ) - - - // zac_2.c - DRIVER( bbeltzac ) - DRIVER( clown ) - DRIVER( dvlrider ) - DRIVER( dvlrideri ) - DRIVER( dvlriderg ) - DRIVER( farfalla ) - DRIVER( farfallai ) - DRIVER( farfallag ) - DRIVER( mcastle ) - DRIVER( mcastlei ) - DRIVER( mcastleg ) - DRIVER( mcastlef ) - DRIVER( mexico ) - DRIVER( nstrphnx ) - DRIVER( pinchamp ) - DRIVER( pinchampg ) - DRIVER( pinchampi ) - DRIVER( pinchamp7 ) - DRIVER( pinchamp7g ) - DRIVER( pinchamp7i ) - DRIVER( poolcham ) - DRIVER( poolchami ) - DRIVER( poolchama ) - DRIVER( robot ) - DRIVER( roboti ) - DRIVER( robotg ) - DRIVER( robotf ) - DRIVER( scram_tp ) - DRIVER( socrking ) - DRIVER( socrkingi ) - DRIVER( socrkingg ) - DRIVER( spookyp ) - DRIVER( spookyi ) - DRIVER( strsphnx ) - DRIVER( tmachzac ) - DRIVER( tmachzacg ) - DRIVER( tmachzacf ) - DRIVER( zankor ) - - - // zac_proto.c - DRIVER( skijump ) - DRIVER( spacecty ) - DRIVER( strike ) - - -#endif /* DRIVER_RECURSIVE */ diff --git a/src/mame/tiny.c b/src/mame/tiny.c deleted file mode 100644 index 8aa2a10eb5b..00000000000 --- a/src/mame/tiny.c +++ /dev/null @@ -1,70 +0,0 @@ -/****************************************************************************** - - tiny.c - - mamedriv.c substitute file for "tiny" MAME builds. - - Copyright Nicola Salmoria and the MAME Team. - Visit http://mamedev.org for licensing and usage restrictions. - - The list of used drivers. Drivers have to be included here to be recognized - by the executable. - - To save some typing, we use a hack here. This file is recursively #included - twice, with different definitions of the DRIVER() macro. The first one - declares external references to the drivers; the second one builds an array - storing all the drivers. - -******************************************************************************/ - -#include "emu.h" - -#ifndef DRIVER_RECURSIVE - -#define DRIVER_RECURSIVE - -/* step 1: declare all external references */ -#define DRIVER(NAME) GAME_EXTERN(NAME); -#include "tiny.c" - -/* step 2: define the drivers[] array */ -#undef DRIVER -#define DRIVER(NAME) &GAME_NAME(NAME), -const game_driver * const drivers[] = -{ -#include "tiny.c" - 0 /* end of array */ -}; - -#else /* DRIVER_RECURSIVE */ - - DRIVER( robby ) /* (c) 1981 Bally Midway */ - DRIVER( gridlee ) /* [1983 Videa] prototype - no copyright notice */ - DRIVER( alienar ) /* (c) 1985 Duncan Brown */ - - DRIVER( carpolo ) /* (c) 1977 Exidy */ - DRIVER( sidetrac ) /* (c) 1979 Exidy */ - DRIVER( targ ) /* (c) 1980 Exidy */ - DRIVER( spectar ) /* (c) 1980 Exidy */ - DRIVER( teetert ) /* (c) 1982 Exidy */ - DRIVER( hardhat ) /* (c) 1982 */ - DRIVER( fax ) /* (c) 1983 */ - DRIVER( fax2 ) /* (c) 1983 */ - DRIVER( circus ) /* (c) 1977 Exidy */ - DRIVER( robotbwl ) /* (c) 197? Exidy */ - DRIVER( crash ) /* (c) 1979 Exidy */ - DRIVER( ripcord ) /* (c) 1979 Exidy */ - DRIVER( starfire ) /* (c) 1979 Exidy */ - DRIVER( starfirea ) /* (c) 1979 Exidy */ - DRIVER( fireone ) /* (c) 1979 Exidy */ - DRIVER( starfir2 ) /* (c) 1979 Exidy */ - DRIVER( victory ) /* (c) 1982 */ - DRIVER( victorba ) /* (c) 1982 */ - DRIVER( topgunnr ) /* (c) 1986 */ - - DRIVER( looping ) /* (c) 1982 Video Games GMBH */ - DRIVER( supertnk ) /* (c) 1981 VIDEO GAMES GmbH, W.-GERMANY */ - - DRIVER( wrally ) /* (c) 1993 - Ref 930705 */ - -#endif /* DRIVER_RECURSIVE */ diff --git a/src/mame/tiny.lst b/src/mame/tiny.lst new file mode 100644 index 00000000000..1261b88ed7b --- /dev/null +++ b/src/mame/tiny.lst @@ -0,0 +1,68 @@ +/****************************************************************************** + + tiny.lst + + List of all enabled drivers in the system. This file is parsed by + makelist.exe, sorted, and output as C code describing the drivers. + +**************************************************************************** + + Copyright Aaron Giles + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name 'MAME' nor the names of its contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ + +robby // (c) 1981 Bally Midway +gridlee // [1983 Videa] prototype - no copyright notice +alienar // (c) 1985 Duncan Brown + +carpolo // (c) 1977 Exidy +sidetrac // (c) 1979 Exidy +targ // (c) 1980 Exidy +spectar // (c) 1980 Exidy +teetert // (c) 1982 Exidy +hardhat // (c) 1982 +fax // (c) 1983 +fax2 // (c) 1983 +circus // (c) 1977 Exidy +robotbwl // (c) 197? Exidy +crash // (c) 1979 Exidy +ripcord // (c) 1979 Exidy +starfire // (c) 1979 Exidy +starfirea // (c) 1979 Exidy +fireone // (c) 1979 Exidy +starfir2 // (c) 1979 Exidy +victory // (c) 1982 +victorba // (c) 1982 +topgunnr // (c) 1986 + +looping // (c) 1982 Video Games GMBH +supertnk // (c) 1981 VIDEO GAMES GmbH, W.-GERMANY + +wrally // (c) 1993 - Ref 930705 diff --git a/src/mame/tiny.mak b/src/mame/tiny.mak index 177b479604c..ee77e6f2e25 100644 --- a/src/mame/tiny.mak +++ b/src/mame/tiny.mak @@ -71,7 +71,6 @@ SOUNDS += CEM3394 #------------------------------------------------- DRVLIBS = \ - $(MAMEOBJ)/tiny.o \ $(EMUDRIVERS)/emudummy.o \ $(MACHINE)/ticket.o \ $(DRIVERS)/carpolo.o $(MACHINE)/carpolo.o $(VIDEO)/carpolo.o \ diff --git a/src/osd/osdcore.h b/src/osd/osdcore.h index 6f98828f4b3..b4d22bc3bfc 100644 --- a/src/osd/osdcore.h +++ b/src/osd/osdcore.h @@ -723,7 +723,7 @@ void osd_work_item_release(osd_work_item *item); ***************************************************************************/ /*----------------------------------------------------------------------------- - osd_malloc: allocate memory that + osd_malloc: allocate memory Parameters: @@ -742,6 +742,26 @@ void *osd_malloc(size_t size); /*----------------------------------------------------------------------------- + osd_malloc_array: allocate memory, hinting tha this memory contains an + array + + Parameters: + + size - the number of bytes to allocate + + Return value: + + a pointer to the allocated memory + + Notes: + + This is just a hook to do OS-specific allocation trickery. + It can be safely written as a wrapper to malloc(). +-----------------------------------------------------------------------------*/ +void *osd_malloc_array(size_t size); + + +/*----------------------------------------------------------------------------- osd_free: free memory allocated by osd_malloc Parameters: diff --git a/src/osd/osdmini/minimain.c b/src/osd/osdmini/minimain.c index 69a3037bcb0..0e43ce3e0a6 100644 --- a/src/osd/osdmini/minimain.c +++ b/src/osd/osdmini/minimain.c @@ -93,10 +93,12 @@ static INT32 keyboard_get_state(void *device_internal, void *item_internal); int main(int argc, char *argv[]) { - // cli_execute does the heavy lifting; if we have osd-specific options, we - // would pass them as the third parameter here + // cli_frontend does the heavy lifting; if we have osd-specific options, we + // create a derivative of cli_options and add our own + cli_options options; mini_osd_interface osd; - return cli_execute(argc, argv, osd, NULL); + cli_frontend frontend(options, osd); + return frontend.execute(argc, argv); } @@ -135,7 +137,7 @@ void mini_osd_interface::init(running_machine &machine) // initialize the input system by adding devices // let's pretend like we have a keyboard device - keyboard_device = input_device_add(&machine, DEVICE_CLASS_KEYBOARD, "Keyboard", NULL); + keyboard_device = input_device_add(machine, DEVICE_CLASS_KEYBOARD, "Keyboard", NULL); if (keyboard_device == NULL) fatalerror("Error creating keyboard device"); diff --git a/src/osd/osdmini/minimisc.c b/src/osd/osdmini/minimisc.c index 8d040b28e0e..1a4c3a33da6 100644 --- a/src/osd/osdmini/minimisc.c +++ b/src/osd/osdmini/minimisc.c @@ -44,7 +44,7 @@ //============================================================ -// osd_alloc +// osd_malloc //============================================================ void *osd_malloc(size_t size) @@ -54,6 +54,16 @@ void *osd_malloc(size_t size) //============================================================ +// osd_malloc_array +//============================================================ + +void *osd_malloc_array(size_t size) +{ + return malloc(size); +} + + +//============================================================ // osd_free //============================================================ diff --git a/src/osd/sdl/draw13.c b/src/osd/sdl/draw13.c index aa20f9ca2a6..b30d3fc2fc4 100644 --- a/src/osd/sdl/draw13.c +++ b/src/osd/sdl/draw13.c @@ -964,7 +964,7 @@ static texture_info *texture_create(sdl_window_info *window, const render_texinf if ( (texture->copyinfo->func != NULL) && (texture->sdl_access == SDL_TEXTUREACCESS_STATIC)) { - texture->pixels = osd_malloc(texture->setup.rotwidth * texture->setup.rotheight * texture->copyinfo->dst_bpp); + texture->pixels = osd_malloc_array(texture->setup.rotwidth * texture->setup.rotheight * texture->copyinfo->dst_bpp); texture->pixels_own=TRUE; } /* add us to the texture list */ diff --git a/src/osd/sdl/sdldir.c b/src/osd/sdl/sdldir.c index d70f81eb07c..b27711f0338 100644 --- a/src/osd/sdl/sdldir.c +++ b/src/osd/sdl/sdldir.c @@ -67,7 +67,7 @@ struct _osd_directory static char *build_full_path(const char *path, const char *file) { - char *ret = (char *) osd_malloc(strlen(path)+strlen(file)+2); + char *ret = (char *) osd_malloc_array(strlen(path)+strlen(file)+2); char *p = ret; strcpy(p, path); @@ -126,13 +126,13 @@ osd_directory *osd_opendir(const char *dirname) dir->fd = NULL; } - tmpstr = (char *) osd_malloc(strlen(dirname)+1); + tmpstr = (char *) osd_malloc_array(strlen(dirname)+1); strcpy(tmpstr, dirname); if (tmpstr[0] == '$') { char *envval; - envstr = (char *) osd_malloc(strlen(tmpstr)+1); + envstr = (char *) osd_malloc_array(strlen(tmpstr)+1); strcpy(envstr, tmpstr); @@ -149,7 +149,7 @@ osd_directory *osd_opendir(const char *dirname) { j = strlen(envval) + strlen(tmpstr) + 1; osd_free(tmpstr); - tmpstr = (char *) osd_malloc(j); + tmpstr = (char *) osd_malloc_array(j); // start with the value of $HOME strcpy(tmpstr, envval); diff --git a/src/osd/sdl/sdlfile.c b/src/osd/sdl/sdlfile.c index 3326c474746..d7fc70fce4b 100644 --- a/src/osd/sdl/sdlfile.c +++ b/src/osd/sdl/sdlfile.c @@ -115,7 +115,7 @@ file_error osd_open(const char *path, UINT32 openflags, osd_file **file, UINT64 tmpstr = NULL; // allocate a file object, plus space for the converted filename - *file = (osd_file *) osd_malloc(sizeof(**file) + sizeof(char) * strlen(path)); + *file = (osd_file *) osd_malloc_array(sizeof(**file) + sizeof(char) * strlen(path)); if (*file == NULL) { filerr = FILERR_OUT_OF_MEMORY; @@ -160,14 +160,14 @@ file_error osd_open(const char *path, UINT32 openflags, osd_file **file, UINT64 goto error; } - tmpstr = (char *) osd_malloc(strlen((*file)->filename)+1); + tmpstr = (char *) osd_malloc_array(strlen((*file)->filename)+1); strcpy(tmpstr, (*file)->filename); // does path start with an environment variable? if (tmpstr[0] == '$') { char *envval; - envstr = (char *) osd_malloc(strlen(tmpstr)+1); + envstr = (char *) osd_malloc_array(strlen(tmpstr)+1); strcpy(envstr, tmpstr); @@ -184,7 +184,7 @@ file_error osd_open(const char *path, UINT32 openflags, osd_file **file, UINT64 { j = strlen(envval) + strlen(tmpstr) + 1; osd_free(tmpstr); - tmpstr = (char *) osd_malloc(j); + tmpstr = (char *) osd_malloc_array(j); // start with the value of $HOME strcpy(tmpstr, envval); diff --git a/src/osd/sdl/sdlmain.c b/src/osd/sdl/sdlmain.c index 747b881d060..e54de5bcf6b 100644 --- a/src/osd/sdl/sdlmain.c +++ b/src/osd/sdl/sdlmain.c @@ -348,7 +348,8 @@ int main(int argc, char *argv[]) { sdl_osd_interface osd; sdl_options options; - res = cli_execute(options, osd, argc, argv); + cli_frontend frontend(options, osd); + res = frontend.execute(argc, argv); } #ifdef MALLOC_DEBUG diff --git a/src/osd/sdl/sdlos_macosx.c b/src/osd/sdl/sdlos_macosx.c index baa8ac2d167..c37eb8ad726 100644 --- a/src/osd/sdl/sdlos_macosx.c +++ b/src/osd/sdl/sdlos_macosx.c @@ -177,6 +177,20 @@ void *osd_malloc(size_t size) //============================================================ +// osd_malloc_array +//============================================================ + +void *osd_malloc_array(size_t size) +{ +#ifndef MALLOC_DEBUG + return malloc(size); +#else +#error "MALLOC_DEBUG not yet supported" +#endif +} + + +//============================================================ // osd_free //============================================================ @@ -277,7 +291,7 @@ char *osd_get_clipboard_text(void) length = CFDataGetLength (data_ref); range = CFRangeMake (0,length); - result = (char *)osd_malloc (length+1); + result = (char *)osd_malloc_array (length+1); if (result != NULL) { CFDataGetBytes (data_ref, range, (unsigned char *)result); @@ -330,7 +344,7 @@ osd_directory_entry *osd_stat(const char *path) // create an osd_directory_entry; be sure to make sure that the caller can // free all resources by just freeing the resulting osd_directory_entry - result = (osd_directory_entry *) osd_malloc(sizeof(*result) + strlen(path) + 1); + result = (osd_directory_entry *) osd_malloc_array(sizeof(*result) + strlen(path) + 1); strcpy(((char *) result) + sizeof(*result), path); result->name = ((char *) result) + sizeof(*result); result->type = S_ISDIR(st.st_mode) ? ENTTYPE_DIR : ENTTYPE_FILE; @@ -367,7 +381,7 @@ file_error osd_get_full_path(char **dst, const char *path) } else { - *dst = (char *)osd_malloc(strlen(path_buffer)+strlen(path)+3); + *dst = (char *)osd_malloc_array(strlen(path_buffer)+strlen(path)+3); // if it's already a full path, just pass it through if (path[0] == '/') diff --git a/src/osd/sdl/sdlos_os2.c b/src/osd/sdl/sdlos_os2.c index 97a0f8419ac..87512222db4 100644 --- a/src/osd/sdl/sdlos_os2.c +++ b/src/osd/sdl/sdlos_os2.c @@ -199,6 +199,20 @@ void *osd_malloc(size_t size) //============================================================ +// osd_malloc_array +//============================================================ + +void *osd_malloc_array(size_t size) +{ +#ifndef MALLOC_DEBUG + return malloc(size); +#else +#error "MALLOC_DEBUG not yet supported" +#endif +} + + +//============================================================ // osd_free //============================================================ @@ -258,7 +272,7 @@ osd_directory_entry *osd_stat(const char *path) // create an osd_directory_entry; be sure to make sure that the caller can // free all resources by just freeing the resulting osd_directory_entry - result = (osd_directory_entry *) osd_malloc(sizeof(*result) + strlen(path) + result = (osd_directory_entry *) osd_malloc_array(sizeof(*result) + strlen(path) 1); strcpy(((char *) result) + sizeof(*result), path); result->name = ((char *) result) + sizeof(*result); @@ -300,7 +314,7 @@ const char *osd_get_volume_name(int idx) file_error osd_get_full_path(char **dst, const char *path) { - *dst = (char *)osd_malloc(CCHMAXPATH + 1); + *dst = (char *)osd_malloc_array(CCHMAXPATH + 1); if (*dst == NULL) return FILERR_OUT_OF_MEMORY; diff --git a/src/osd/sdl/sdlos_unix.c b/src/osd/sdl/sdlos_unix.c index 6d2d92032e5..c1ba9baeea5 100644 --- a/src/osd/sdl/sdlos_unix.c +++ b/src/osd/sdl/sdlos_unix.c @@ -93,6 +93,20 @@ void *osd_malloc(size_t size) //============================================================ +// osd_malloc_array +//============================================================ + +void *osd_malloc_array(size_t size) +{ +#ifndef MALLOC_DEBUG + return malloc(size); +#else +#error "MALLOC_DEBUG not yet supported" +#endif +} + + +//============================================================ // osd_free //============================================================ @@ -207,7 +221,7 @@ char *osd_get_clipboard_text(void) /* return a copy & free original */ if (prop != NULL) { - result = (char *) osd_malloc(strlen((char *)prop)+1); + result = (char *) osd_malloc_array(strlen((char *)prop)+1); strcpy(result, (char *)prop); } else @@ -256,7 +270,7 @@ osd_directory_entry *osd_stat(const char *path) // create an osd_directory_entry; be sure to make sure that the caller can // free all resources by just freeing the resulting osd_directory_entry - result = (osd_directory_entry *) osd_malloc(sizeof(*result) + strlen(path) + 1); + result = (osd_directory_entry *) osd_malloc_array(sizeof(*result) + strlen(path) + 1); strcpy(((char *) result) + sizeof(*result), path); result->name = ((char *) result) + sizeof(*result); result->type = S_ISDIR(st.st_mode) ? ENTTYPE_DIR : ENTTYPE_FILE; @@ -293,7 +307,7 @@ file_error osd_get_full_path(char **dst, const char *path) } else { - *dst = (char *)osd_malloc(strlen(path_buffer)+strlen(path)+3); + *dst = (char *)osd_malloc_array(strlen(path_buffer)+strlen(path)+3); // if it's already a full path, just pass it through if (path[0] == '/') diff --git a/src/osd/sdl/sdlos_win32.c b/src/osd/sdl/sdlos_win32.c index 31be832703b..2ffee467d11 100644 --- a/src/osd/sdl/sdlos_win32.c +++ b/src/osd/sdl/sdlos_win32.c @@ -180,36 +180,49 @@ void *osd_malloc(size_t size) #ifndef MALLOC_DEBUG return HeapAlloc(GetProcessHeap(), 0, size); #else - // add in space for the base pointer + // add in space for the size size += sizeof(size_t); - // small items just come from the heap - void *result; - if (size < GUARD_PAGE_THRESH) - result = HeapAlloc(GetProcessHeap(), 0, size); + // basic objects just come from the heap + void *result = HeapAlloc(GetProcessHeap(), 0, size); - // large items get guard pages - else - { - // round the size up to a page boundary - size_t rounded_size = ((size + sizeof(void *) + PAGE_SIZE - 1) / PAGE_SIZE) * PAGE_SIZE; + // store the size and return and pointer to the data afterward + *reinterpret_cast<size_t *>(result) = size; + return reinterpret_cast<UINT8 *>(result) + sizeof(size_t); +#endif +} - // reserve that much memory, plus two guard pages - void *page_base = VirtualAlloc(NULL, rounded_size + 2 * PAGE_SIZE, MEM_RESERVE, PAGE_NOACCESS); - if (page_base == NULL) - return NULL; - // now allow access to everything but the first and last pages - page_base = VirtualAlloc(reinterpret_cast<UINT8 *>(page_base) + PAGE_SIZE, rounded_size, MEM_COMMIT, PAGE_READWRITE); - if (page_base == NULL) - return NULL; +//============================================================ +// osd_malloc_array +//============================================================ - // work backwards from the page base to get to the block base - result = GUARD_ALIGN_START ? page_base : (reinterpret_cast<UINT8 *>(page_base) + rounded_size - size); - } +void *osd_malloc_array(size_t size) +{ +#ifndef MALLOC_DEBUG + return HeapAlloc(GetProcessHeap(), 0, size); +#else + // add in space for the size + size += sizeof(size_t); - // store the page_base at the start - *reinterpret_cast<size_t *>(result) = size; + // round the size up to a page boundary + size_t rounded_size = ((size + sizeof(void *) + PAGE_SIZE - 1) / PAGE_SIZE) * PAGE_SIZE; + + // reserve that much memory, plus two guard pages + void *page_base = VirtualAlloc(NULL, rounded_size + 2 * PAGE_SIZE, MEM_RESERVE, PAGE_NOACCESS); + if (page_base == NULL) + return NULL; + + // now allow access to everything but the first and last pages + page_base = VirtualAlloc(reinterpret_cast<UINT8 *>(page_base) + PAGE_SIZE, rounded_size, MEM_COMMIT, PAGE_READWRITE); + if (page_base == NULL) + return NULL; + + // work backwards from the page base to get to the block base + void *result = GUARD_ALIGN_START ? page_base : (reinterpret_cast<UINT8 *>(page_base) + rounded_size - size); + + // store the size at the start with a flag indicating it has a guard page + *reinterpret_cast<size_t *>(result) = size | 0x80000000; return reinterpret_cast<UINT8 *>(result) + sizeof(size_t); #endif } @@ -226,14 +239,14 @@ void osd_free(void *ptr) #else size_t size = reinterpret_cast<size_t *>(ptr)[-1]; - // small items just get freed - if (size < GUARD_PAGE_THRESH) + // if no guard page, just free the pointer + if ((size & 0x80000000) == 0) HeapFree(GetProcessHeap(), 0, reinterpret_cast<UINT8 *>(ptr) - sizeof(size_t)); // large items need more care else { - FPTR page_base = (reinterpret_cast<FPTR>(ptr) - sizeof(size_t)) & ~(PAGE_SIZE - 1); + ULONG_PTR page_base = (reinterpret_cast<ULONG_PTR>(ptr) - sizeof(size_t)) & ~(PAGE_SIZE - 1); VirtualFree(reinterpret_cast<void *>(page_base - PAGE_SIZE), 0, MEM_RELEASE); } #endif @@ -262,7 +275,7 @@ int osd_setenv(const char *name, const char *value, int overwrite) if (osd_getenv(name) != NULL) return 0; } - buf = (char *) osd_malloc(strlen(name)+strlen(value)+2); + buf = (char *) osd_malloc_array(strlen(name)+strlen(value)+2); sprintf(buf, "%s=%s", name, value); result = putenv(buf); @@ -371,7 +384,7 @@ CHAR *astring_from_utf8(const char *utf8string) // convert UTF-16 to "ANSI code page" string char_count = WideCharToMultiByte(CP_ACP, 0, wstring, -1, NULL, 0, NULL, NULL); - result = (CHAR *)osd_malloc(char_count * sizeof(*result)); + result = (CHAR *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) WideCharToMultiByte(CP_ACP, 0, wstring, -1, result, char_count, NULL, NULL); @@ -389,7 +402,7 @@ WCHAR *wstring_from_utf8(const char *utf8string) // convert MAME string (UTF-8) to UTF-16 char_count = MultiByteToWideChar(CP_UTF8, 0, utf8string, -1, NULL, 0); - result = (WCHAR *)osd_malloc(char_count * sizeof(*result)); + result = (WCHAR *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) MultiByteToWideChar(CP_UTF8, 0, utf8string, -1, result, char_count); diff --git a/src/osd/sdl/sdlwork.c b/src/osd/sdl/sdlwork.c index 4edfcad6463..8959855cc51 100644 --- a/src/osd/sdl/sdlwork.c +++ b/src/osd/sdl/sdlwork.c @@ -183,7 +183,7 @@ osd_work_queue *osd_work_queue_alloc(int flags) queue->threads = MIN(queue->threads, WORK_MAX_THREADS); // allocate memory for thread array (+1 to count the calling thread) - queue->thread = (work_thread_info *)osd_malloc((queue->threads + 1) * sizeof(queue->thread[0])); + queue->thread = (work_thread_info *)osd_malloc_array((queue->threads + 1) * sizeof(queue->thread[0])); if (queue->thread == NULL) goto error; memset(queue->thread, 0, (queue->threads + 1) * sizeof(queue->thread[0])); diff --git a/src/osd/sdl/strconv.c b/src/osd/sdl/strconv.c index 1356b236600..771a302fa92 100644 --- a/src/osd/sdl/strconv.c +++ b/src/osd/sdl/strconv.c @@ -38,7 +38,7 @@ char *utf8_from_astring(const CHAR *astring) // convert UTF-16 to MAME string (UTF-8) char_count = WideCharToMultiByte(CP_UTF8, 0, wstring, -1, NULL, 0, NULL, NULL); - result = (CHAR *)osd_malloc(char_count * sizeof(*result)); + result = (CHAR *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) WideCharToMultiByte(CP_UTF8, 0, wstring, -1, result, char_count, NULL, NULL); @@ -56,7 +56,7 @@ char *utf8_from_wstring(const WCHAR *wstring) // convert UTF-16 to MAME string (UTF-8) char_count = WideCharToMultiByte(CP_UTF8, 0, wstring, -1, NULL, 0, NULL, NULL); - result = (char *)osd_malloc(char_count * sizeof(*result)); + result = (char *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) WideCharToMultiByte(CP_UTF8, 0, wstring, -1, result, char_count, NULL, NULL); diff --git a/src/osd/windows/strconv.c b/src/osd/windows/strconv.c index 14cd614951e..0af5fe9c2a3 100644 --- a/src/osd/windows/strconv.c +++ b/src/osd/windows/strconv.c @@ -65,7 +65,7 @@ CHAR *astring_from_utf8(const char *utf8string) // convert UTF-16 to "ANSI code page" string char_count = WideCharToMultiByte(CP_ACP, 0, wstring, -1, NULL, 0, NULL, NULL); - result = (CHAR *)osd_malloc(char_count * sizeof(*result)); + result = (CHAR *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) WideCharToMultiByte(CP_ACP, 0, wstring, -1, result, char_count, NULL, NULL); @@ -90,7 +90,7 @@ char *utf8_from_astring(const CHAR *astring) // convert UTF-16 to MAME string (UTF-8) char_count = WideCharToMultiByte(CP_UTF8, 0, wstring, -1, NULL, 0, NULL, NULL); - result = (CHAR *)osd_malloc(char_count * sizeof(*result)); + result = (CHAR *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) WideCharToMultiByte(CP_UTF8, 0, wstring, -1, result, char_count, NULL, NULL); @@ -109,7 +109,7 @@ WCHAR *wstring_from_utf8(const char *utf8string) // convert MAME string (UTF-8) to UTF-16 char_count = MultiByteToWideChar(CP_UTF8, 0, utf8string, -1, NULL, 0); - result = (WCHAR *)osd_malloc(char_count * sizeof(*result)); + result = (WCHAR *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) MultiByteToWideChar(CP_UTF8, 0, utf8string, -1, result, char_count); @@ -128,7 +128,7 @@ char *utf8_from_wstring(const WCHAR *wstring) // convert UTF-16 to MAME string (UTF-8) char_count = WideCharToMultiByte(CP_UTF8, 0, wstring, -1, NULL, 0, NULL, NULL); - result = (char *)osd_malloc(char_count * sizeof(*result)); + result = (char *)osd_malloc_array(char_count * sizeof(*result)); if (result != NULL) WideCharToMultiByte(CP_UTF8, 0, wstring, -1, result, char_count, NULL, NULL); diff --git a/src/osd/windows/winalloc.c b/src/osd/windows/winalloc.c deleted file mode 100644 index 0fcbee53fbd..00000000000 --- a/src/osd/windows/winalloc.c +++ /dev/null @@ -1,618 +0,0 @@ -//============================================================ -// -// winalloc.c - Win32 memory allocation routines -// -//============================================================ -// -// Copyright Aaron Giles -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or -// without modification, are permitted provided that the -// following conditions are met: -// -// * Redistributions of source code must retain the above -// copyright notice, this list of conditions and the -// following disclaimer. -// * Redistributions in binary form must reproduce the -// above copyright notice, this list of conditions and -// the following disclaimer in the documentation and/or -// other materials provided with the distribution. -// * Neither the name 'MAME' nor the names of its -// contributors may be used to endorse or promote -// products derived from this software without specific -// prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND -// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND -// FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -// EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -// DAMAGE (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -// IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -//============================================================ - -// standard windows headers -#define WIN32_LEAN_AND_MEAN -#include <windows.h> -#include <tchar.h> - -// MAME headers -#include "osdcore.h" - -// undefine any redefines we have in the prefix -#undef malloc -#undef calloc -#undef realloc - - - -//============================================================ -// CONSTANTS -//============================================================ - -#define OVERRIDE_STANDARD_CALLS (0) - -#define PAGE_SIZE 4096 -#define COOKIE_VAL 0x11335577 - -// set this to 1 to align memory blocks to the start of a page; -// otherwise, they are aligned to the end, thus catching array -// overruns -#define ALIGN_START 0 - -// set this to 1 to record all mallocs and frees in the logfile -#define LOG_CALLS 0 - -#if LOG_CALLS -#define LOG(x) do { if (LOG_CALLS) logerror x; } while (0) -void CLIB_DECL logerror(const char *text,...); -#else -#define LOG(x) -#endif - - -//============================================================ -// TYPEDEFS -//============================================================ - -typedef struct _memory_entry memory_entry; -struct _memory_entry -{ - memory_entry * next; - memory_entry * prev; - size_t size; - void * base; - const char * file; - int line; - int id; -}; - - - -//============================================================ -// GLOBAL VARIABLES -//============================================================ - -int winalloc_in_main_code = FALSE; - - - -//============================================================ -// LOCAL VARIABLES -//============================================================ - -static memory_entry *alloc_list; -static memory_entry *free_list; -static int current_id; - -static CRITICAL_SECTION memory_lock; - -static UINT8 global_init_done = FALSE; -static UINT8 use_malloc_tracking = FALSE; - - - -//============================================================ -// PROTOTYPES -//============================================================ - -static memory_entry *allocate_entry(void); -static memory_entry *find_entry(void *pointer); -static void free_entry(memory_entry *entry); - -static void global_init(void); - - - -//============================================================ -// INLINES -//============================================================ - -INLINE void global_init_if_not_done(void) -{ - if (!global_init_done) - { - global_init_done = TRUE; - global_init(); - } -} - - -INLINE void memory_lock_acquire(void) -{ - EnterCriticalSection(&memory_lock); -} - - -INLINE void memory_lock_release(void) -{ - LeaveCriticalSection(&memory_lock); -} - - - -//============================================================ -// IMPLEMENTATION -//============================================================ - -//============================================================ -// malloc_file_line - debugging version of malloc which -// accepts filename and line number -//============================================================ - -void *malloc_file_line(size_t size, const char *file, int line) -{ - UINT8 *block_base; - int id = current_id++; - - // perform global intialization if not already done - global_init_if_not_done(); - - // only proceed if enabled - if (use_malloc_tracking) - { - UINT8 *page_base; - size_t rounded_size; - memory_entry *entry; - - // round the size up to a page boundary - rounded_size = ((size + PAGE_SIZE - 1) / PAGE_SIZE) * PAGE_SIZE; - - // reserve that much memory, plus two guard pages - page_base = (UINT8 *)VirtualAlloc(NULL, rounded_size + 2 * PAGE_SIZE, MEM_RESERVE, PAGE_NOACCESS); - if (page_base == NULL) - return NULL; - - // now allow access to everything but the first and last pages - page_base = (UINT8 *)VirtualAlloc(page_base + PAGE_SIZE, rounded_size, MEM_COMMIT, PAGE_READWRITE); - if (page_base == NULL) - return NULL; - - // work backwards from the page base to get to the block base - if (ALIGN_START) - block_base = page_base; - else - block_base = page_base + rounded_size - size; - - // fill in the entry - entry = allocate_entry(); - entry->size = size; - entry->base = block_base; - entry->file = file; - entry->line = line; - entry->id = id; - } - else - { - block_base = (UINT8 *)GlobalAlloc(GMEM_FIXED, size); - } - - // logging - if (file != NULL) - LOG(("malloc #%06d size = %d (%s:%d)\n", id, size, file, line)); - else - LOG(("malloc #%06d size = %d\n", id, size)); - - return block_base; -} - - -//============================================================ -// malloc - override for the malloc() function -//============================================================ - -#if OVERRIDE_STANDARD_CALLS -void *CLIB_DECL malloc(size_t size) -{ - return malloc_file_line(size, NULL, 0); -} -#endif - - -//============================================================ -// calloc_file_line - debugging version of calloc which -// accepts filename and line number -//============================================================ - -void *calloc_file_line(size_t size, size_t count, const char *file, int line) -{ - // first allocate the memory - void *memory = malloc_file_line(size * count, file, line); - if (memory == NULL) - return NULL; - - // then memset it - memset(memory, 0, size * count); - return memory; -} - - -//============================================================ -// calloc - override for the calloc() function -//============================================================ - -#if OVERRIDE_STANDARD_CALLS -void *CLIB_DECL calloc(size_t size, size_t count) -{ - return calloc_file_line(size, count, NULL, 0); -} -#endif - - -//============================================================ -// _calloc_crt - override for the _calloc_crt() function, -// which is called by beginthreadex -//============================================================ - -#if OVERRIDE_STANDARD_CALLS -void *CLIB_DECL _calloc_crt(size_t size, size_t count) -{ - return calloc_file_line(size, count, NULL, 0); -} -#endif - - -//============================================================ -// realloc_file_line - debugging version of realloc which -// accepts filename and line number -//============================================================ - -void *realloc_file_line(void *memory, size_t size, const char *file, int line) -{ - void *newmemory = NULL; - - // perform global intialization if not already done - global_init_if_not_done(); - - // only proceed if enabled - if (use_malloc_tracking) - { - // if size is non-zero, we need to reallocate memory - if (size != 0) - { - // allocate space for the new amount - newmemory = malloc_file_line(size, file, line); - if (newmemory == NULL) - return NULL; - - // if we have an old pointer, copy it - if (memory != NULL) - { - memory_entry *entry = find_entry(memory); - if (entry == NULL) - { - if (winalloc_in_main_code) - { - fprintf(stderr, "Error: realloc a non-existant block (%s:%d)\n", file, line); - osd_break_into_debugger("Error: realloc a non-existant block\n"); - } - } - else - memcpy(newmemory, memory, (size < entry->size) ? size : entry->size); - } - } - - // if we have an original pointer, free it - if (memory != NULL) - free(memory); - } - else - { - if (memory != NULL) - newmemory = (void *) GlobalReAlloc(memory, size, GMEM_MOVEABLE); - else - newmemory = (void *) GlobalAlloc(GMEM_FIXED, size); - } - - return newmemory; -} - - -//============================================================ -// realloc - override for the realloc() function -//============================================================ - -#if OVERRIDE_STANDARD_CALLS -void *CLIB_DECL realloc(void *memory, size_t size) -{ - return realloc_file_line(memory, size, NULL, 0); -} -#endif - - -//============================================================ -// free_file_line - debugging version of free which -// accepts filename and line number -//============================================================ - -void CLIB_DECL free_file_line(void *memory, const char *file, int line) -{ - memory_entry *entry; - - // allow NULL frees - if (memory == NULL) - return; - - // only proceed if enabled - if (use_malloc_tracking) - { - // error if no entry found - entry = find_entry(memory); - if (entry == NULL) - { - if (winalloc_in_main_code) - { - fprintf(stderr, "Error: free a non-existant block\n"); - osd_break_into_debugger("Error: free a non-existant block"); - } - return; - } - free_entry(entry); - - // free the memory - VirtualFree((UINT8 *)memory - ((size_t)memory & (PAGE_SIZE-1)) - PAGE_SIZE, 0, MEM_RELEASE); - - LOG(("free #%06d size = %d\n", entry->id, entry->size)); - } - else - { - GlobalFree(memory); - } -} - - -//============================================================ -// free - override for the free() function -//============================================================ - -#if OVERRIDE_STANDARD_CALLS -void CLIB_DECL free(void *memory) -{ - free_file_line(memory, NULL, 0); -} -#endif - - -//============================================================ -// _msize - internal MSVC routine that returns the size of -// a memory block -//============================================================ - -#if OVERRIDE_STANDARD_CALLS -size_t CLIB_DECL _msize(void *memory) -{ - size_t result; - - // only proceed if enabled - if (use_malloc_tracking) - { - memory_entry *entry = find_entry(memory); - if (entry == NULL) - { - if (winalloc_in_main_code) - { - fprintf(stderr, "Error: msize a non-existant block\n"); - osd_break_into_debugger("Error: msize a non-existant block"); - } - return 0; - } - result = entry->size; - } - else - { - result = GlobalSize(memory); - } - return result; -} -#endif - - -//============================================================ -// check_unfreed_mem - called from the exit path of any -// code that wants to check for unfreed memory -//============================================================ - -void check_unfreed_mem(void) -{ - memory_entry *entry; - int total = 0; - - // only valid if we are tracking - if (use_malloc_tracking) - { - memory_lock_acquire(); - - // check for leaked memory - for (entry = alloc_list; entry; entry = entry->next) - if (entry->file != NULL) - { - if (total == 0) - fprintf(stderr, "--- memory leak warning ---\n"); - total += entry->size; - fprintf(stderr, "allocation #%06d, %d bytes (%s:%d)\n", entry->id, entry->size, entry->file, (int)entry->line); - } - - memory_lock_release(); - - if (total > 0) - fprintf(stderr, "a total of %d bytes were not free()'d\n", total); - } -} - - -//============================================================ -// allocate_entry - allocate a new entry and link it into -// the list of allocated memory -//============================================================ - -static memory_entry *allocate_entry(void) -{ - memory_entry *entry; - - // always take the lock when allocating - memory_lock_acquire(); - - // if we're out of entries, allocate some more - if (free_list == NULL) - { - int entries_per_page = PAGE_SIZE / sizeof(memory_entry); - - // allocate a new pages' worth of entry - entry = (memory_entry *)VirtualAlloc(NULL, PAGE_SIZE, MEM_COMMIT, PAGE_READWRITE); - if (entry == NULL) - { - memory_lock_release(); - fprintf(stderr, "Out of memory for malloc tracking!\n"); - exit(1); - } - - // add all the entries to the list - while (entries_per_page--) - { - entry->next = free_list; - free_list = entry; - entry++; - } - } - - // grab a free list entry - entry = free_list; - free_list = free_list->next; - - // add ourselves to the alloc list - entry->next = alloc_list; - if (entry->next) - entry->next->prev = entry; - entry->prev = NULL; - alloc_list = entry; - - // release the lock when finished - memory_lock_release(); - - return entry; -} - - -//============================================================ -// find_entry - find a memory_object entry in the list that -// contains the given pointer -//============================================================ - -static memory_entry *find_entry(void *pointer) -{ - memory_entry *entry; - - // scan the list looking for a matching base - if (pointer) - { - memory_lock_acquire(); - - for (entry = alloc_list; entry; entry = entry->next) - if (entry->base == pointer) - break; - - memory_lock_release(); - return entry; - } - return NULL; -} - - -//============================================================ -// free_entry - free a memory_entry object -//============================================================ - -static void free_entry(memory_entry *entry) -{ - memory_lock_acquire(); - - // remove ourselves from the alloc list - if (entry->prev) - entry->prev->next = entry->next; - else - alloc_list = entry->next; - if (entry->next) - entry->next->prev = entry->prev; - - // add ourself to the free list - entry->next = free_list; - free_list = entry; - - memory_lock_release(); -} - - -//============================================================ -// global_init - global initialization of memory variables -//============================================================ - -static void global_init(void) -{ - TCHAR *envstring; - - // create the memory lock - InitializeCriticalSection(&memory_lock); - - // determine if we enabled by default - if (win_is_gui_application()) { - use_malloc_tracking = FALSE; - } else { - use_malloc_tracking = TRUE; - } - - // now allow overrides by the environment - envstring = _tgetenv(_T("OSDDEBUGMALLOC")); - if (envstring != NULL) - use_malloc_tracking = (_ttoi(envstring) != 0); - -#ifdef PTR64 - // 64-bit builds also can allocate everything under 4GB, unless disabled - envstring = _tgetenv(_T("OSDDEBUG4GB")); - if (envstring == NULL || _ttoi(envstring) != 0) - { - INT8 allocshift; - - // loop from 256MB down to 4k (page size) - for (allocshift = 8 + 20; allocshift >= 12; allocshift--) - { - // keep allocating address space at that size until we get something >4gb - while ((UINT64)VirtualAlloc(NULL, (UINT64)1 << allocshift, MEM_RESERVE, PAGE_NOACCESS) < ((UINT64)1 << 32)) ; - } - - // loop from 64k down - for (allocshift = 6 + 10; allocshift >= 1; allocshift--) - { - // keep allocating memory until we get something >4gb - while ((UINT64)GlobalAlloc(GMEM_FIXED, (UINT64)1 << allocshift) < ((UINT64)1 << 32)) ; - } - } -#endif -} diff --git a/src/osd/windows/winmain.c b/src/osd/windows/winmain.c index 8ffb2a29a05..fc3ca77ae69 100644 --- a/src/osd/windows/winmain.c +++ b/src/osd/windows/winmain.c @@ -418,7 +418,8 @@ int main(int argc, char *argv[]) { windows_options options; windows_osd_interface osd; - result = cli_execute(options, osd, argc, argv); + cli_frontend frontend(options, osd); + frontend.execute(argc, argv); } // free symbols diff --git a/src/osd/windows/winmisc.c b/src/osd/windows/winmisc.c index 63d8642b8fb..c83613a5e37 100644 --- a/src/osd/windows/winmisc.c +++ b/src/osd/windows/winmisc.c @@ -45,7 +45,7 @@ #include <tchar.h> // MAME headers -#include "emucore.h" +#include "osdcore.h" // MAMEOS headers #include "winutf8.h" @@ -60,9 +60,6 @@ // presumed size of a page of memory #define PAGE_SIZE 4096 -// allocations this size and larger get guard pages -#define GUARD_PAGE_THRESH 32 - // align allocations to start or end of the page? #define GUARD_ALIGN_START 0 @@ -85,36 +82,49 @@ void *osd_malloc(size_t size) #ifndef MALLOC_DEBUG return HeapAlloc(GetProcessHeap(), 0, size); #else - // add in space for the base pointer + // add in space for the size size += sizeof(size_t); - // small items just come from the heap - void *result; - if (size < GUARD_PAGE_THRESH) - result = HeapAlloc(GetProcessHeap(), 0, size); + // basic objects just come from the heap + void *result = HeapAlloc(GetProcessHeap(), 0, size); - // large items get guard pages - else - { - // round the size up to a page boundary - size_t rounded_size = ((size + sizeof(void *) + PAGE_SIZE - 1) / PAGE_SIZE) * PAGE_SIZE; + // store the size and return and pointer to the data afterward + *reinterpret_cast<size_t *>(result) = size; + return reinterpret_cast<UINT8 *>(result) + sizeof(size_t); +#endif +} - // reserve that much memory, plus two guard pages - void *page_base = VirtualAlloc(NULL, rounded_size + 2 * PAGE_SIZE, MEM_RESERVE, PAGE_NOACCESS); - if (page_base == NULL) - return NULL; - // now allow access to everything but the first and last pages - page_base = VirtualAlloc(reinterpret_cast<UINT8 *>(page_base) + PAGE_SIZE, rounded_size, MEM_COMMIT, PAGE_READWRITE); - if (page_base == NULL) - return NULL; +//============================================================ +// osd_malloc_array +//============================================================ - // work backwards from the page base to get to the block base - result = GUARD_ALIGN_START ? page_base : (reinterpret_cast<UINT8 *>(page_base) + rounded_size - size); - } +void *osd_malloc_array(size_t size) +{ +#ifndef MALLOC_DEBUG + return HeapAlloc(GetProcessHeap(), 0, size); +#else + // add in space for the size + size += sizeof(size_t); - // store the page_base at the start - *reinterpret_cast<size_t *>(result) = size; + // round the size up to a page boundary + size_t rounded_size = ((size + sizeof(void *) + PAGE_SIZE - 1) / PAGE_SIZE) * PAGE_SIZE; + + // reserve that much memory, plus two guard pages + void *page_base = VirtualAlloc(NULL, rounded_size + 2 * PAGE_SIZE, MEM_RESERVE, PAGE_NOACCESS); + if (page_base == NULL) + return NULL; + + // now allow access to everything but the first and last pages + page_base = VirtualAlloc(reinterpret_cast<UINT8 *>(page_base) + PAGE_SIZE, rounded_size, MEM_COMMIT, PAGE_READWRITE); + if (page_base == NULL) + return NULL; + + // work backwards from the page base to get to the block base + void *result = GUARD_ALIGN_START ? page_base : (reinterpret_cast<UINT8 *>(page_base) + rounded_size - size); + + // store the size at the start with a flag indicating it has a guard page + *reinterpret_cast<size_t *>(result) = size | 0x80000000; return reinterpret_cast<UINT8 *>(result) + sizeof(size_t); #endif } @@ -131,14 +141,14 @@ void osd_free(void *ptr) #else size_t size = reinterpret_cast<size_t *>(ptr)[-1]; - // small items just get freed - if (size < GUARD_PAGE_THRESH) + // if no guard page, just free the pointer + if ((size & 0x80000000) == 0) HeapFree(GetProcessHeap(), 0, reinterpret_cast<UINT8 *>(ptr) - sizeof(size_t)); // large items need more care else { - FPTR page_base = (reinterpret_cast<FPTR>(ptr) - sizeof(size_t)) & ~(PAGE_SIZE - 1); + ULONG_PTR page_base = (reinterpret_cast<ULONG_PTR>(ptr) - sizeof(size_t)) & ~(PAGE_SIZE - 1); VirtualFree(reinterpret_cast<void *>(page_base - PAGE_SIZE), 0, MEM_RELEASE); } #endif |