summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/util/options.c
Commit message (Collapse)AuthorAgeFilesLines
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-081-819/+0
|
* Cleanups and version bumpmame0163 Miodrag Milanovic2015-06-241-15/+15
|
* Licenses for Raphael Nabet (nw) Miodrag Milanovic2015-06-071-10/+24
|
* Another round of -Wextra -Wdouble-promotion fixes. (nw) couriersud2015-05-201-2/+2
|
* moved all to std::string (nw) Miodrag Milanovic2015-04-221-51/+53
|
* removed bool conversion and implicit empty check (nw) Miodrag Milanovic2015-04-191-2/+2
|
* updated astring constructors to have just one string param, to be more like ↵ Miodrag Milanovic2015-04-131-1/+1
| | | | std::string (nw)
* There is no implicit conversion to char* in std::string (nw) Miodrag Milanovic2015-04-121-8/+8
|
* cstr() - > c_str() as preparation for move to std::string (nw) Miodrag Milanovic2015-04-111-8/+8
|
* fixed several missing assert.h includes (nw) Oliver Stöneberg2015-03-201-0/+1
|
* -Reorganized OSD, handling more sound output systems and debuggers, defaults ↵ Miodrag Milanovic2014-05-081-0/+39
| | | | | | left same as before [Miodrag Milanovic] -Created osd_options as base option class for non-system specific options
* Moved core template container classes up from emutempl.h to coretmpl.h: Aaron Giles2014-03-111-116/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [Aaron Giles] * these classes now no longer take a resource_pool; everything is managed globally -- this means that objects added to lists must be allocated with global_alloc * added new auto_pointer<> template which wraps a pointer and auto-frees it upon destruction; it also defaults to NULL so it doesn't need to be explicitly initialized * moved tagged_list template to tagmap.h Redo of the low-level memory tracking system: [Aaron Giles] * moved low-level tracking out of emu\emualloc into lib\util\corealloc so it can be shared among all components and used by core libraries * global_alloc and friends no longer use a resource pool to track allocations; turns out this was a wholly redundant system that wasted a lot of memory * removed global_resource_pool entirely * added global_free_array to delete arrays allocated with global_alloc_array * added tracking of object versus array allocation; we will now error if you use global_free on an array, or global_free_array on an object Added new utility helper const_string_pool which can be used to efficiently accumulate strings that are not intended to be modified. Used by updated makelist and software list code. [Aaron Giles] Updated png2bdc and makelist tools to not leak memory and use more modern techniques (no more MAX_DRIVERS in makelist, for example). [Aaron Giles] Deprecated auto_strdup and removed all uses by way of caller-managed astrings and the software list rewrite. [Aaron Giles] Rewrote software list management: [Aaron Giles] * removed the notion of a software_list that is separate from a software_list_device; they are one and the same now * moved several functions into device_image_interface since they really didn't belong in the core software list class * lots of simplification as a result of the above changes Additional notes (no whatsnew): Moved definition of FPTR to osdcomm.h. Some changes happened in the OSD code to fix issues, especially regarding freeing arrays. SDL folks may need to fix up some of these. The following devices still are using tokens and should be modernized (I found them because they kept their token as void * and tried to delete it, which you can't): namco_52xx_device (mame/audio/namco52.c) namco_54xx_device (mame/audio/namco54.c) namco_06xx_device (mame/machine/namco06.c) namco_50xx_device (mame/machine/namco50.c) namco_51xx_device (mame/machine/namco51.c) namco_53xx_device (mame/machine/namco53.c) voodoo_device (emu/video/voodoo.c) mos6581_device (emu/sound/mos6581.c) aica_device (emu/sound/aica.c) scsp_device (emu/sound/scsp.c) dmadac_sound_device (emu/sound/dmadac.c) s3c2440_device (emu/machine/s3c2440.c) wd1770_device (emu/machine/wd17xx.c) latch8_device (emu/machine/latch8.c) duart68681_device (emu/machine/68681.c) s3c2400_device (emu/machine/s3c2400.c) s3c2410_device (emu/machine/s3c2410.c) strataflash_device (mess/machine/strata.c) hd63450_device (mess/machine/hd63450.c) tap_990_device (mess/machine/ti99/990_tap.c) omti8621_device (mess/machine/omti8621.c) vdt911_device (mess/video/911_vdt.c) apollo_graphics_15i (mess/video/apollo.c) asr733_device (mess/video/733_asr.c)
* Bulk convert files that already had standard BSD license in my name Aaron Giles2013-10-161-31/+2
| | | | to new license tagged form.
* (MESS) Be a bit more fine-grained in when to mark slot options as internal. (nw) Wilbert Pol2013-02-271-0/+17
|
* Don't save out internally determined settings to .ini files. (nw) Wilbert Pol2013-02-211-17/+20
|
* Cleanups and version bumpmame0148 Miodrag Milanovic2013-01-111-10/+10
|
* Clean-ups and version bumpmame0147 Miodrag Milanovic2012-09-171-2/+2
| | | note: hoarded dump removed too from coco_cart.xml, this will not be tolerated
* Made cmd line parameter parsing going into unlimited levels (no whatsnew) Miodrag Milanovic2012-09-041-0/+12
|
* Clean-ups and version bumpmame0146u1 Miodrag Milanovic2012-06-111-1/+1
|
* Added support for fixed slots (used for MAME) and ability to create internal ↵ Miodrag Milanovic2012-05-231-0/+11
| | | | only slot options (for MESS) (no whatsnew)
* Change order of parsing in emu_options, so first all slot devices are set ↵ Miodrag Milanovic2011-11-091-2/+5
| | | | | and then image devices. Also update lib/util/options.c so now parsing is not stopped on first unknown parameter, this way order of options in command line is not important for dynamic options (no whatsnew)
* ini file write: skip those <UNADORNED..> options, and don't start the file ↵ Michaël Banaan Ananas2011-08-221-9/+26
| | | | with a newline
* Various memory leaks and unnecessary checks removed by Oliver Stoneberg (no ↵ Miodrag Milanovic2011-08-141-0/+12
| | | | whatsnew)
* Added support for multi level slot devices [Miodrag Milanovic] Miodrag Milanovic2011-06-271-0/+9
| | | | Now it is possible to attach slot device to other slot device, also containing multiple image devices under it.
* Cleanups and version bump.mame0141u4 Aaron Giles2011-03-251-27/+27
|
* Fix -no<option> for booleans Aaron Giles2011-03-051-0/+7
| | | | Fix crash when running with -log
* Converted core_options to a class. Removed a bunch of marginal Aaron Giles2011-03-031-971/+469
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | functionality in favor of alternate mechanisms. Errors are now reported via an astring rather than via callbacks. Every option must now specify a type (command, integer, float, string, boolean, etc). Command behavior has changed so that only one command is permitted. [Aaron Giles] Changed fileio system to accept just a raw searchpath instead of an options/option name combination. [Aaron Giles] Created emu_options class dervied from core_options which wraps core emulator options. Added mechanisms to cleanly change the system name and add/remove system-specific options, versus the old way using callbacks. Also added read accessors for all the options, to ensure consistency in how parameters are handled. Changed most core systems to access emu_options instead of core_options. Also changed machine->options() to return emu_options. [Aaron Giles] Created cli_options class derived from emu_options which adds the command-line specific options. Updated clifront code to leverage the new class and the new core behaviors. cli_execute() now accepts a cli_options object when called. [Aaron Giles] Updated both SDL and Windows to have their own options classes, derived from cli_options, which add the OSD-specific options on top of everything else. Added accessors for all the options so that queries are strongly typed and simplified. [Aaron Giles] Out of whatsnew: I've surely screwed up some stuff, though I have smoke tested a bunch of things. Let me know if you hit anything odd. Also I know this change will impact the WINUI stuff, please let me know if there are issues. All the functionality necessary should still be present. If it's not obvious, please talk to me before adding stuff to the core_options class.
* Cleanups and version bump.mame0141u1 Aaron Giles2011-01-241-10/+10
|
* - Display suggestions in case commands that require game name are called and ↵ Miodrag Milanovic2011-01-231-1/+23
| | | | | there were no matching games [Miodrag Milanovic] - Display suggestions for driver even if there are additional parameters that do not match (used on MESS where we have driver dependent parameters)
* Ignore warnings for non existing options in previous level of ini files ↵ Miodrag Milanovic2011-01-211-2/+2
| | | | (parent for example) (no whatsnew)
* Added new flag for options OPTION_DRIVER_ONLY, and marked bios and ramsize ↵ Miodrag Milanovic2011-01-181-0/+17
| | | | as such, since they do not need to be loaded from parent drivers since those are quite driver dependent (no whatsnew)
* Fixed some long standing issues with image device config (no whatsnew) Miodrag Milanovic2011-01-171-2/+6
|
* Made MESS drivers too load config from parent drivers (as MAME) but images ↵ Miodrag Milanovic2011-01-171-3/+30
| | | | are only taken from driver itself or command line (no whatsnew)
* Cleanups and version bump.mame0138u4 Aaron Giles2010-07-221-2/+2
|
* - Added new operation on options which enables adding of parameter and ↵ Miodrag Milanovic2010-07-211-0/+24
| | | | | | | executing it's callback - Updated parse_ini_file so before INI is loaded set of driver name is done, and therefore needed callback is executed. This fixes issue that when running MESS you are able to mount images even if you did not start driver directly, before this change we got unknown ini options warnings. (no whatsnew)
* lib/util now includes stdlib.h where needed Couriersud2010-01-171-0/+1
|
* Results of running the latest srcclean. Aaron Giles2009-12-281-1/+1
|
* Cleanups and version bump.mame0134u3 Aaron Giles2009-10-121-13/+13
|
* Moved all files in src/lib/util over to straight BSD and common Aaron Giles2009-10-101-2/+30
| | | | copyright, with permission of all significant contributors.
* Added casts to ensure proper values are passed to the ctype.h functions. Aaron Giles2009-06-251-4/+4
| | | | [Juergen Buchmueller]
* Modified the makefile to support experimental optional C++ Aaron Giles2009-02-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | compilation: - new option CPP_COMPILE to trigger this (off by default) - split CFLAGS into common, C-only, and C++-only flags - when enabled, CPP_COMPILE causes 'pp' to be appended to the target name NOTE THAT THE SYSTEM CANNOT ACTUALLY BE COMPILED THIS WAY YET. IT IS JUST AN EXPERIMENT. Modified lib.mak to always build zlib/expat as C regardless of CPP_COMPILE. Modified windows.mak to fix warnings with MAXOPT=1, and to leverage the new CFLAGs definitions. Modified vconv.c to do appropriate conversions for new C++ options. Updated sources so that libutil, libocore (Windows), and libosd (Windows) can be cleanly compiled as C or C++. This was mostly adding some casts against void *. Fixed a few more general obvious problems at random locations in the source: - device->class is now device->devclass - TYPES_COMPATIBLE uses typeid() when compiled for C++ - some functions with reserved names ('xor' in particular) were renamed - nested enums and structs were pulled out into separate definitions (under C++ these would need to be scoped to be referenced) - TOKEN_VALUE cannot use .field=x initialization in C++ :(
* Reverted change to options.c - not ready for release due to potential ↵ Couriersud2008-03-021-8/+1
| | | | breakage of frontends.
* Rewrote some potentially compiler specific code: Couriersud2008-03-021-1/+8
| | | | | | * added ATTR_FORCE_INLINE to osdcomm.h * added ATTR_NONNULL * moved U64 S64 fram mamecore.h to osdcomm.h * define SETJMP_GNUC_PROTECT() in osdcomm.h for use in ppc602, ppc603
* Copyright cleanup: Aaron Giles2008-01-061-1/+1
| | | | | | - removed years from copyright notices - removed redundant (c) from copyright notices - updated "the MAME Team" to be "Nicola Salmoria and the MAME Team"
* (From Oliver Stoneberg) Aaron Giles2008-01-031-2/+2
| | | | | | | This is an updated version of my earlier ATTR_PRINTF patch. It was reviewed by Atari Ace to use ATTR_PRINTF properly and fixes even more format errors. I also reviewed the whole source again and it is now used in all possible places.
* Changes for MAME 0.121u4.mame0121u4 Aaron Giles2007-12-171-1/+1
|
* Initial checkin of MAME 0.121.mame0121 Aaron Giles2007-12-171-0/+1133