From 3bdfb55b35f4aa44d53f181a423dfa81c264230b Mon Sep 17 00:00:00 2001 From: Miodrag Milanovic Date: Tue, 2 Aug 2011 15:09:21 +0000 Subject: [PATCH] - Updated romload so devices are loaded from separate files [Miodrag Milanovic] - Removed LOADBYNAME, since it is deprecated by using per device rom load_software_part_region - Created makedev tool to generate array of devices, and created lst file according to current devices usage. - Changed listxml command to output device roms too --- .gitattributes | 3 + makefile | 12 +- src/build/build.mak | 17 +++ src/build/makedev.c | 233 +++++++++++++++++++++++++++++++++++++ src/emu/audit.c | 4 +- src/emu/info.c | 45 ++++++- src/emu/info.h | 4 +- src/emu/machine/ldpr8210.c | 6 +- src/emu/machine/ldv1000.c | 2 +- src/emu/machine/ldvp931.c | 2 +- src/emu/romload.c | 2 +- src/emu/romload.h | 5 - src/emu/sound/bsmt2000.c | 2 +- src/emu/validity.c | 7 -- src/emu/video/hd61830.c | 2 +- src/mame/audio/namco52.c | 2 +- src/mame/audio/namco54.c | 2 +- src/mame/machine/mie.c | 2 +- src/mame/machine/namco50.c | 2 +- src/mame/machine/namco51.c | 2 +- src/mame/machine/namco53.c | 2 +- src/mame/machine/namco62.c | 2 +- src/mame/mame_dev.lst | 52 +++++++++ src/mame/tiny_dev.lst | 39 +++++++ 24 files changed, 416 insertions(+), 35 deletions(-) create mode 100644 src/build/makedev.c create mode 100644 src/mame/mame_dev.lst create mode 100644 src/mame/tiny_dev.lst diff --git a/.gitattributes b/.gitattributes index 12791d5d7fe..88ffc8e13f5 100644 --- a/.gitattributes +++ b/.gitattributes @@ -24,6 +24,7 @@ hlsl/yiq_encode.fx svneol=native#text/plain src/build/build.mak svneol=native#text/plain src/build/file2str.c svneol=native#text/plain src/build/makedep.c svneol=native#text/plain +src/build/makedev.c svneol=native#text/plain src/build/makelist.c svneol=native#text/plain src/build/png2bdc.c svneol=native#text/plain src/build/verinfo.c svneol=native#text/plain @@ -4002,8 +4003,10 @@ src/mame/machine/zs01.c svneol=native#text/plain src/mame/machine/zs01.h svneol=native#text/plain src/mame/mame.lst svneol=native#text/plain src/mame/mame.mak svneol=native#text/plain +src/mame/mame_dev.lst svneol=native#text/plain src/mame/tiny.lst svneol=native#text/plain src/mame/tiny.mak svneol=native#text/plain +src/mame/tiny_dev.lst svneol=native#text/plain src/mame/video/1942.c svneol=native#text/plain src/mame/video/1943.c svneol=native#text/plain src/mame/video/20pacgal.c svneol=native#text/plain diff --git a/makefile b/makefile index 5bdd4079fbc..d8e415f1e89 100644 --- a/makefile +++ b/makefile @@ -580,6 +580,8 @@ LIBOSD = $(OBJ)/libosd.a VERSIONOBJ = $(OBJ)/version.o DRIVLISTSRC = $(OBJ)/drivlist.c DRIVLISTOBJ = $(OBJ)/drivlist.o +DEVLISTSRC = $(OBJ)/devlist.c +DEVLISTOBJ = $(OBJ)/devlist.o @@ -721,7 +723,7 @@ ifndef EXECUTABLE_DEFINED # always recompile the version string $(VERSIONOBJ): $(DRVLIBS) $(LIBOSD) $(LIBCPU) $(LIBEMU) $(LIBSOUND) $(LIBUTIL) $(EXPAT) $(ZLIB) $(SOFTFLOAT) $(FORMATS_LIB) $(COTHREAD) $(LIBOCORE) $(RESFILE) -$(EMULATOR): $(VERSIONOBJ) $(DRIVLISTOBJ) $(DRVLIBS) $(LIBOSD) $(LIBCPU) $(LIBEMU) $(LIBDASM) $(LIBSOUND) $(LIBUTIL) $(EXPAT) $(SOFTFLOAT) $(FORMATS_LIB) $(COTHREAD) $(ZLIB) $(LIBOCORE) $(RESFILE) +$(EMULATOR): $(VERSIONOBJ) $(DRIVLISTOBJ) $(DEVLISTOBJ) $(DRVLIBS) $(LIBOSD) $(LIBCPU) $(LIBEMU) $(LIBDASM) $(LIBSOUND) $(LIBUTIL) $(EXPAT) $(SOFTFLOAT) $(FORMATS_LIB) $(COTHREAD) $(ZLIB) $(LIBOCORE) $(RESFILE) @echo Linking $@... $(LD) $(LDFLAGS) $(LDFLAGSEMULATOR) $^ $(LIBS) -o $@ ifeq ($(TARGETOS),win32) @@ -763,10 +765,18 @@ $(DRIVLISTOBJ): $(DRIVLISTSRC) @echo Compiling $<... $(CC) $(CDEFS) $(CFLAGS) -c $< -o $@ +$(DEVLISTOBJ): $(DEVLISTSRC) + @echo Compiling $<... + $(CC) $(CDEFS) $(CFLAGS) -c $< -o $@ + $(DRIVLISTSRC): $(SRC)/$(TARGET)/$(SUBTARGET).lst $(MAKELIST_TARGET) @echo Building driver list $<... @$(MAKELIST) $< >$@ +$(DEVLISTSRC): $(SRC)/$(TARGET)/$(SUBTARGET)_dev.lst $(MAKEDEV_TARGET) + @echo Building device list $<... + @$(MAKEDEV) $< >$@ + $(OBJ)/%.a: @echo Archiving $@... $(RM) $@ diff --git a/src/build/build.mak b/src/build/build.mak index 21116a9a4df..19a920ed8ed 100644 --- a/src/build/build.mak +++ b/src/build/build.mak @@ -21,6 +21,7 @@ OBJDIRS += \ FILE2STR_TARGET = $(BUILDOUT)/file2str$(BUILD_EXE) MAKEDEP_TARGET = $(BUILDOUT)/makedep$(BUILD_EXE) MAKELIST_TARGET = $(BUILDOUT)/makelist$(BUILD_EXE) +MAKEDEV_TARGET = $(BUILDOUT)/makedev$(BUILD_EXE) PNG2BDC_TARGET = $(BUILDOUT)/png2bdc$(BUILD_EXE) VERINFO_TARGET = $(BUILDOUT)/verinfo$(BUILD_EXE) @@ -28,12 +29,14 @@ ifeq ($(TARGETOS),win32) FILE2STR = $(subst /,\,$(FILE2STR_TARGET)) MAKEDEP = $(subst /,\,$(MAKEDEP_TARGET)) MAKELIST = $(subst /,\,$(MAKELIST_TARGET)) +MAKEDEV = $(subst /,\,$(MAKEDEV_TARGET)) PNG2BDC = $(subst /,\,$(PNG2BDC_TARGET)) VERINFO = $(subst /,\,$(VERINFO_TARGET)) else FILE2STR = $(FILE2STR_TARGET) MAKEDEP = $(MAKEDEP_TARGET) MAKELIST = $(MAKELIST_TARGET) +MAKEDEV = $(MAKEDEV_TARGET) PNG2BDC = $(PNG2BDC_TARGET) VERINFO = $(VERINFO_TARGET) endif @@ -43,6 +46,7 @@ BUILD += \ $(FILE2STR_TARGET) \ $(MAKEDEP_TARGET) \ $(MAKELIST_TARGET) \ + $(MAKEDEV_TARGET) \ $(PNG2BDC_TARGET) \ $(VERINFO_TARGET) \ @@ -87,6 +91,19 @@ $(MAKELIST_TARGET): $(MAKELISTOBJS) $(LIBUTIL) $(LIBOCORE) $(ZLIB) +#------------------------------------------------- +# makedev +#------------------------------------------------- + +MAKEDEVOBJS = \ + $(BUILDOBJ)/makedev.o \ + +$(MAKEDEV_TARGET): $(MAKEDEVOBJS) $(LIBUTIL) $(LIBOCORE) $(ZLIB) + @echo Linking $@... + $(LD) $(LDFLAGS) $^ $(LIBS) -o $@ + + + #------------------------------------------------- # png2bdc #------------------------------------------------- diff --git a/src/build/makedev.c b/src/build/makedev.c new file mode 100644 index 00000000000..e07af98c5d9 --- /dev/null +++ b/src/build/makedev.c @@ -0,0 +1,233 @@ +/*************************************************************************** + + makedev.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 +#include +#include +#include "corefile.h" + + +#define MAX_DEVICES 65536 + +static const char *devlist[MAX_DEVICES]; +static int devcount; + + +//------------------------------------------------- +// 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); +} + + +//------------------------------------------------- +// parse_file - parse a single file, may be +// called recursively +//------------------------------------------------- + +int parse_file(const char *srcfile) +{ + // 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 + 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; + } + + // look for an import directive + if (c == '#') + { + char filename[256]; + filename[0] = 0; + for (int pos = 0; srcptr < endptr && pos < ARRAY_LENGTH(filename) - 1 && !isspace(*srcptr); pos++) + { + filename[pos] = *srcptr++; + filename[pos+1] = 0; + } + fprintf(stderr, "Importing devices from '%s'\n", filename); + parse_file(filename); + continue; + } + + // otherwise treat as a device 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 device type \"%s\"\n", srcfile, linenum, *drivch, drivname); + return 1; + } + + // add it to the list + char *name = (char *)malloc(strlen(drivname) + 1); + strcpy(name, drivname); + devlist[devcount++] = name; + } + + osd_free(buffer); + + return 0; +} + + +//------------------------------------------------- +// main - primary entry point +//------------------------------------------------- + +int main(int argc, char *argv[]) +{ + // needs at least 1 argument + if (argc < 2) + { + fprintf(stderr, + "Usage:\n" + " makedev \n" + ); + return 0; + } + + // extract arguments + const char *srcfile = argv[1]; + + // parse the root file, exit early upon failure + devcount = 0; + if (parse_file(srcfile)) + return 1; + + // output a count + if (devcount == 0) + { + fprintf(stderr, "No devices found\n"); + } else { + fprintf(stderr, "%d devices found\n", devcount); + } + + // sort the list + qsort(devlist, devcount, sizeof(*devlist), sort_callback); + + // start with a header + printf("#include \"emu.h\"\n\n"); + + // output the list of externs first + for (int index = 0; index < devcount; index++) + printf("extern const device_type %s;\n", devlist[index]); + printf("\n"); + + // then output the array + printf("const device_type * s_devices_sorted[] =\n"); + printf("{\n"); + for (int index = 0; index < devcount; index++) + printf("\t&%s%s\n", devlist[index], (index == devcount - 1) ? "" : ","); + printf("};\n"); + printf("\n"); + + // also output a global count + printf("int m_device_count = %d;\n", devcount); + + return 0; +} diff --git a/src/emu/audit.c b/src/emu/audit.c index c837fb6af8c..ae4529e481e 100644 --- a/src/emu/audit.c +++ b/src/emu/audit.c @@ -96,10 +96,10 @@ const char *driverpath = m_enumerator.config().devicelist().find("root")->search { // temporary hack: add the driver path & region name astring combinedpath(source->searchpath(), ";", driverpath); -if(ROMREGION_ISLOADBYNAME(region)) +if(source->shortname()) { combinedpath=combinedpath.cat(";"); - combinedpath=combinedpath.cat(ROMREGION_GETTAG(region)); + combinedpath=combinedpath.cat(source->shortname()); } m_searchpath = combinedpath; diff --git a/src/emu/info.c b/src/emu/info.c index a13eeadd08f..39a3fc33097 100644 --- a/src/emu/info.c +++ b/src/emu/info.c @@ -232,11 +232,50 @@ void info_xml_creator::output(FILE *out) while (m_drivlist.next()) output_one(); + // iterate through the devices, and output their roms + output_devices(); // close the top level tag fprintf(m_output, "\n"); } +//------------------------------------------------- +// output_devices - print the XML information +// for one particular game driver +//------------------------------------------------- + +void info_xml_creator::output_devices() +{ + extern const device_type *s_devices_sorted[]; + extern int m_device_count; + + m_drivlist.reset(); + m_drivlist.next(); + machine_config &config = m_drivlist.config(); + device_t *owner = config.devicelist().first(); + for(int i=0;iconfig_complete(); + + // print the header and the game name + fprintf(m_output, "\t<" XML_TOP); + fprintf(m_output, " name=\"%s\"", xml_normalize_string(dev->shortname())); + fprintf(m_output, " runnable=\"no\""); + fprintf(m_output, ">\n"); + + // output device description + if (dev->name() != NULL) + fprintf(m_output, "\t\t%s\n", xml_normalize_string(dev->name())); + + output_rom(dev); + + // close the topmost tag + fprintf(m_output, "\t\n"); + global_free(dev); + } +} + //------------------------------------------------- // output_one - print the XML information // for one particular game driver @@ -301,7 +340,7 @@ void info_xml_creator::output_one() // now print various additional information output_bios(); - output_rom(); + output_rom(rom_first_source(m_drivlist.config())); output_sample(); output_chips(); output_display(); @@ -381,13 +420,11 @@ void info_xml_creator::output_bios() // the XML output //------------------------------------------------- -void info_xml_creator::output_rom() +void info_xml_creator::output_rom(const rom_source *source) { // iterate over 3 different ROM "types": BIOS, ROMs, DISKs for (int rom_type = 0; rom_type < 3; rom_type++) { - // 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)) { bool is_disk = ROMREGION_ISDISKDATA(region); diff --git a/src/emu/info.h b/src/emu/info.h index 1bbfc7274be..a667e7d306d 100644 --- a/src/emu/info.h +++ b/src/emu/info.h @@ -62,7 +62,7 @@ private: void output_one(); void output_sampleof(); void output_bios(); - void output_rom(); + void output_rom(const rom_source *source); void output_sample(); void output_chips(); void output_display(); @@ -77,6 +77,8 @@ private: void output_software_list(); void output_ramoptions(); + void output_devices(); + const char *get_merge_name(const hash_collection &romhashes); // internal state diff --git a/src/emu/machine/ldpr8210.c b/src/emu/machine/ldpr8210.c index 2ade4addae8..00f05bbef9d 100644 --- a/src/emu/machine/ldpr8210.c +++ b/src/emu/machine/ldpr8210.c @@ -292,7 +292,7 @@ MACHINE_CONFIG_END ROM_START( pr8210 ) - ROM_REGION( 0x800, "pr8210", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x800, "pr8210", 0 ) ROM_LOAD( "pr-8210_mcu_ud6005a.bin", 0x000, 0x800, CRC(120fa83b) SHA1(b514326ca1f52d6d89056868f9d17eabd4e3f31d) ) ROM_END @@ -1005,10 +1005,10 @@ MACHINE_CONFIG_END ROM_START( simutrek ) - ROM_REGION( 0x800, "pr8210", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x800, "pr8210", 0 ) ROM_LOAD( "pr-8210_mcu_ud6005a.bin", 0x000, 0x800, CRC(120fa83b) SHA1(b514326ca1f52d6d89056868f9d17eabd4e3f31d) ) - ROM_REGION( 0x400, "simutrek", ROMREGION_LOADBYNAME) + ROM_REGION( 0x400, "simutrek", 0) ROM_LOAD( "laser_player_interface_d8748_a308.bin", 0x0000, 0x0400, CRC(eed3e728) SHA1(1eb3467f1c41553375b2c21952cd593b167f5416) ) ROM_END diff --git a/src/emu/machine/ldv1000.c b/src/emu/machine/ldv1000.c index 6a0dfa2eb2d..7ee15ce8179 100644 --- a/src/emu/machine/ldv1000.c +++ b/src/emu/machine/ldv1000.c @@ -180,7 +180,7 @@ MACHINE_CONFIG_END ROM_START( ldv1000 ) - ROM_REGION( 0x2000, "ldv1000", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x2000, "ldv1000", 0 ) ROM_LOAD( "z03_1001_vyw-053_v1-0.bin", 0x0000, 0x2000, CRC(31ec4687) SHA1(52f91c304a878ba02b2fa1cda1a9489d6dd5a34f) ) ROM_END diff --git a/src/emu/machine/ldvp931.c b/src/emu/machine/ldvp931.c index a0f7d69a4c7..f9738c9fcc3 100644 --- a/src/emu/machine/ldvp931.c +++ b/src/emu/machine/ldvp931.c @@ -141,7 +141,7 @@ MACHINE_CONFIG_END ROM_START( vp931 ) - ROM_REGION( 0x800, "vp931", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x800, "vp931", 0 ) ROM_LOAD( "at-6-1_a.bin", 0x000, 0x800, CRC(e11b3c8d) SHA1(ea2d7f6a044ed085ce5e09d8b1b1a21c37f0e9b8) ) ROM_END diff --git a/src/emu/romload.c b/src/emu/romload.c index 4a1c87e8cbe..a4629024cce 100644 --- a/src/emu/romload.c +++ b/src/emu/romload.c @@ -1489,7 +1489,7 @@ static void process_region_list(rom_load_data *romdata) #endif /* now process the entries in the region */ - process_rom_entries(romdata, ROMREGION_ISLOADBYNAME(region) ? ROMREGION_GETTAG(region) : NULL, region + 1); + process_rom_entries(romdata, (source->shortname()!=NULL) ? source->shortname() : NULL, region + 1); } else if (ROMREGION_ISDISKDATA(region)) process_disk_entries(romdata, ROMREGION_GETTAG(region), region + 1, NULL); diff --git a/src/emu/romload.h b/src/emu/romload.h index 29f9988e59e..77cc35d0626 100644 --- a/src/emu/romload.h +++ b/src/emu/romload.h @@ -65,10 +65,6 @@ enum #define ROMREGION_DATATYPEROM 0x00000000 #define ROMREGION_DATATYPEDISK 0x00004000 -#define ROMREGION_LOADBYNAMEMASK 0x00008000 /* use region name as path to read from */ -#define ROMREGION_NOLOADBYNAME 0x00000000 -#define ROMREGION_LOADBYNAME 0x00008000 - #define ROMREGION_ERASEVALMASK 0x00ff0000 /* value to erase the region to */ #define ROMREGION_ERASEVAL(x) ((((x) & 0xff) << 16) | ROMREGION_ERASE) #define ROMREGION_ERASE00 ROMREGION_ERASEVAL(0) @@ -172,7 +168,6 @@ struct rom_entry #define ROMREGION_GETDATATYPE(r) (ROMREGION_GETFLAGS(r) & ROMREGION_DATATYPEMASK) #define ROMREGION_ISROMDATA(r) (ROMREGION_GETDATATYPE(r) == ROMREGION_DATATYPEROM) #define ROMREGION_ISDISKDATA(r) (ROMREGION_GETDATATYPE(r) == ROMREGION_DATATYPEDISK) -#define ROMREGION_ISLOADBYNAME(r) ((ROMREGION_GETFLAGS(r) & ROMREGION_LOADBYNAMEMASK) == ROMREGION_LOADBYNAME) /* ----- per-ROM macros ----- */ diff --git a/src/emu/sound/bsmt2000.c b/src/emu/sound/bsmt2000.c index 20fd85d0e90..44510fd6bb4 100644 --- a/src/emu/sound/bsmt2000.c +++ b/src/emu/sound/bsmt2000.c @@ -91,7 +91,7 @@ ADDRESS_MAP_END // ROM definition for the BSMT2000 program ROM ROM_START( bsmt2000 ) - ROM_REGION( 0x2000, "bsmt2000", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x2000, "bsmt2000", 0 ) ROM_LOAD16_WORD( "bsmt2000.bin", 0x0000, 0x2000, CRC(c2a265af) SHA1(6ec9eb038fb8eb842c5482aebe1d149daf49f2e6) ) ROM_END diff --git a/src/emu/validity.c b/src/emu/validity.c index 5e0750f355b..bfe6775ba19 100644 --- a/src/emu/validity.c +++ b/src/emu/validity.c @@ -465,13 +465,6 @@ static bool validate_roms(driver_enumerator &drivlist, region_array *rgninfo, ga error = true; } - /* load by name entries must be 8 characters or less */ - else if (ROMREGION_ISLOADBYNAME(romp) && strlen(regiontag) > 8) - { - mame_printf_error("%s: %s has load-by-name region '%s' with name >8 characters\n", driver.source_file, driver.name, regiontag); - error = true; - } - /* find any empty entry, checking for duplicates */ else { diff --git a/src/emu/video/hd61830.c b/src/emu/video/hd61830.c index d27d20ceeb6..4caf1688014 100644 --- a/src/emu/video/hd61830.c +++ b/src/emu/video/hd61830.c @@ -65,7 +65,7 @@ ADDRESS_MAP_END // internal character generator ROM ROM_START( hd61830 ) - ROM_REGION( 0x5c0, "hd61830", ROMREGION_LOADBYNAME ) // internal 7360-bit chargen ROM + ROM_REGION( 0x5c0, "hd61830", 0 ) // internal 7360-bit chargen ROM ROM_LOAD( "hd61830.bin", 0x000, 0x5c0, BAD_DUMP CRC(06a934da) SHA1(bf3f074db5dc92e6f530cb18d6c013563099a87d) ) // typed in from manual ROM_END diff --git a/src/mame/audio/namco52.c b/src/mame/audio/namco52.c index 44ef6d34062..8a247832b4e 100644 --- a/src/mame/audio/namco52.c +++ b/src/mame/audio/namco52.c @@ -189,7 +189,7 @@ MACHINE_CONFIG_END ROM_START( namco_52xx ) - ROM_REGION( 0x400, "mcu", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x400, "mcu", 0 ) ROM_LOAD( "52xx.bin", 0x0000, 0x0400, CRC(3257d11e) SHA1(4883b2fdbc99eb7b9906357fcc53915842c2c186) ) ROM_END diff --git a/src/mame/audio/namco54.c b/src/mame/audio/namco54.c index 91d8a57212e..d8ba961ef15 100644 --- a/src/mame/audio/namco54.c +++ b/src/mame/audio/namco54.c @@ -153,7 +153,7 @@ MACHINE_CONFIG_END ROM_START( namco_54xx ) - ROM_REGION( 0x400, "mcu", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x400, "mcu", 0 ) ROM_LOAD( "54xx.bin", 0x0000, 0x0400, CRC(ee7357e0) SHA1(01bdf984a49e8d0cc8761b2cc162fd6434d5afbe) ) ROM_END diff --git a/src/mame/machine/mie.c b/src/mame/machine/mie.c index a20b93587b6..f7ca6ef4bc9 100644 --- a/src/mame/machine/mie.c +++ b/src/mame/machine/mie.c @@ -51,7 +51,7 @@ static MACHINE_CONFIG_FRAGMENT( mie ) MACHINE_CONFIG_END ROM_START( mie ) - ROM_REGION( 0x800, "mie", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x800, "mie", 0 ) ROM_LOAD( "315-6146.bin", 0x000, 0x800, CRC(9b197e35) SHA1(864d14d58732dd4e2ee538ccc71fa8df7013ba06)) ROM_END diff --git a/src/mame/machine/namco50.c b/src/mame/machine/namco50.c index ac3086faa9d..333c262ea26 100644 --- a/src/mame/machine/namco50.c +++ b/src/mame/machine/namco50.c @@ -268,7 +268,7 @@ MACHINE_CONFIG_END ROM_START( namco_50xx ) - ROM_REGION( 0x800, "mcu", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x800, "mcu", 0 ) ROM_LOAD( "50xx.bin", 0x0000, 0x0800, CRC(a0acbaf7) SHA1(f03c79451e73b3a93c1591cdb27fedc9f130508d) ) ROM_END diff --git a/src/mame/machine/namco51.c b/src/mame/machine/namco51.c index 7dea842fd20..bc6e4447869 100644 --- a/src/mame/machine/namco51.c +++ b/src/mame/machine/namco51.c @@ -368,7 +368,7 @@ MACHINE_CONFIG_END ROM_START( namco_51xx ) - ROM_REGION( 0x400, "mcu", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x400, "mcu", 0 ) ROM_LOAD( "51xx.bin", 0x0000, 0x0400, CRC(c2f57ef8) SHA1(50de79e0d6a76bda95ffb02fcce369a79e6abfec) ) ROM_END diff --git a/src/mame/machine/namco53.c b/src/mame/machine/namco53.c index 79f5c26b72a..c7b45d11d8e 100644 --- a/src/mame/machine/namco53.c +++ b/src/mame/machine/namco53.c @@ -159,7 +159,7 @@ MACHINE_CONFIG_END ROM_START( namco_53xx ) - ROM_REGION( 0x400, "mcu", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x400, "mcu", 0 ) ROM_LOAD( "53xx.bin", 0x0000, 0x0400, CRC(b326fecb) SHA1(758d8583d658e4f1df93184009d86c3eb8713899) ) ROM_END diff --git a/src/mame/machine/namco62.c b/src/mame/machine/namco62.c index 5d56e593adb..662e11d8504 100644 --- a/src/mame/machine/namco62.c +++ b/src/mame/machine/namco62.c @@ -52,7 +52,7 @@ static MACHINE_CONFIG_FRAGMENT( namco_62xx ) MACHINE_CONFIG_END ROM_START( namco_62xx ) - ROM_REGION( 0x800, "mcu", ROMREGION_LOADBYNAME ) + ROM_REGION( 0x800, "mcu", 0 ) ROM_LOAD( "62xx.bin", 0x0000, 0x0800, CRC(308dc115) SHA1(fe0a60fc339ac2eeed4879a64c1aab130f9d4cfe) ) ROM_END diff --git a/src/mame/mame_dev.lst b/src/mame/mame_dev.lst new file mode 100644 index 00000000000..0d46b04f086 --- /dev/null +++ b/src/mame/mame_dev.lst @@ -0,0 +1,52 @@ +/****************************************************************************** + + mame_dev.lst + + List of all enabled devices in the system. This file is parsed by + makedev.exe, sorted, and output as C code describing the devices. + +**************************************************************************** + + 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. + +******************************************************************************/ + +BSMT2000 +NAMCO_50XX +NAMCO_51XX +NAMCO_52XX +NAMCO_53XX +NAMCO_54XX +NAMCO_62XX +MIE +PHILLIPS_22VP931 +PIONEER_LDV1000 +PIONEER_PR8210 +SIMUTREK_SPECIAL diff --git a/src/mame/tiny_dev.lst b/src/mame/tiny_dev.lst new file mode 100644 index 00000000000..b27facc7ae7 --- /dev/null +++ b/src/mame/tiny_dev.lst @@ -0,0 +1,39 @@ +/****************************************************************************** + + tiny_dev.lst + + List of all enabled devices in the system. This file is parsed by + makedev.exe, sorted, and output as C code describing the devices. + +**************************************************************************** + + 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. + +******************************************************************************/