summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/osdcore.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* First pass on MIDI out support [R. Belmont] R. Belmont2013-01-141-0/+1
|
* MIDI core updates: [R. Belmont] R. Belmont2013-01-131-0/+2
| | | | | | | | | | - Add MIDI in and out ports as image device types - Add OSD calls to check for and read MIDI input - Add MIDI in image device which reads input and converts it to a serial bitstream nw section: Note that the MIDI In device uses the new image device override to prevent the core from attempting to fopen() the "file" name and instead it handles open/close itself in call_load/call_unload. This allows greater flexibilty than the hack used for sockets/ptys/named pipes where the OSD file layer has to know about them.
* Cleanups and version bumpmame0148 Miodrag Milanovic2013-01-111-15/+15
|
* portmidi: Initial commit. [R. Belmont] R. Belmont2013-01-011-0/+12
| | | | | (nw: this isn't enabled to compile yet, this is just to make it easier to run the final tests on my Mac and my Windows laptop)
* Profiler rewrite; simplified, streamlined and less overhead. Nathan Woods2012-12-091-2/+2
|
* Final round of struct/union/enum normalization. Aaron Giles2012-09-161-9/+7
|
* First pass at modernizing struct definitions. Aaron Giles2012-09-151-2/+1
|
* Call off the dogs, the OSD routing for OSD-side sliders has been fixed. nwn Ryan Holtz2011-05-231-10/+0
|
* HLSL Updates: [Ryan Holtz, Bat Country Entertainment] Ryan Holtz2011-05-221-0/+10
| | | | - Created a new OSD function, osd_get_slider_list, which allows OS-specific slider controls. - Plumbed new OSD-specific slider controls for HLSL parameters on Direct3D 9 targets. And there was much rejoicing.
* Cleanups again Angelo Salese2011-04-181-1/+1
|
* (Big tangle of changes that all happened as I was looking into the ROM Aaron Giles2011-04-131-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | loader rewrite, which is still in progress....) Replaced mamedriv.c with a new driver list mechanism that is generated by the build tools. The emulator core now expects the presence of a file called src/$(TARGET)/$(SUBTARGET).lst which is just a raw list of driver names, one per line. C and C++ comments are still permitted. This file is parsed by a new build tool makelist which extracts the driver names, sorts them, and generates a file called drivlist.c, which is consumed by the core. [Aaron Giles] Added new osdcore function osd_malloc_array() which is identical to osd_malloc() but obviously hints that the underlying allocation is for an array. Updated all callers to use the appropriate form. Modified the Windows allocator to only use guard pages for array-style allocations, allowing us to enable them once again in debug builds. [Aaron Giles] Created new static class driver_list to wrap accesses to the list of available drivers. Improved speed of driver lookups by relying on the presorting done by makelist. [Aaron Giles] Created helper class driver_enumerator as a helper for iterating through the list of drivers. This class supports basic filtering and iteration, and also serves as a temporary cache of machine_configs. [Aaron Giles] Created cli_frontend object to wrap all the CLI handling code in clifront.c. Updated/simplified all the code to take advantage of the driver_enumerator. [Aaron Giles] Created media_auditor object to wrap all the auditing functions in audit.c. Updated all users to the new interface. Note that the new auditing mechanism is slightly out of sync with the romload code in terms of finding ROMs owned by devices, so it may mis-report some issues until the new ROM loading code is in. [Aaron Giles] Added concept of a per-device searchpath. For most devices, their searchpath is just the short name of the device. For driver_devices, the searchpath is driver[;parent[;bios]]. This searchpath will eventually be used by the rom loader to find ROMs. For now it is used by the media auditor only. [Aaron Giles] Created info_xml_creator object to wrap all the info generation functions in info.c. Converted the file to C++ and cleaned up the input processing code. [Aaron Giles] (not for whatsnew ... Known issues: auditing of CHDs appears busted, and debug builds report unfreed memory if you use the built-in game picker)
* mame_file is now emu_file and is a class. It is required Aaron Giles2011-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | to pass a core_options object to the constructor, along with a search path. This required pushing either a running_machine or a core_options through some code that wasn't previously ready to handle it. emu_files can be reused over multiple open/close sessions, and a lot of core code cleaned up nicely as things were converted to them. Also created a file_enumerator class for iterating over files in a searchpath. This replaces the old mame_openpath functions. Changed machine->options() to return a reference. Removed public nvram_open() and fixed jchan/kaneko16 to stop directly saving NVRAM. Removed most of the mame_options() calls; this will soon go away entirely, so don't add any more. Added core_options to device_validity_check() so they can be used to validate things.
* - moved opresolv and zippath into /lib/util from MESS [Miodrag Milanovic] Miodrag Milanovic2010-06-161-2/+0
| | | - removed ifdef MESS from osd part since calls are needed by zippath
* Fix the memory leaks with the strconv.c function by Scott Stone2010-04-231-2/+2
| | | using osd_malloc() instead. Fixed other memory leaks as well. [Oliver Stoneberg]
* Make these extern "C" so they play nice with all tools. Aaron Giles2010-04-081-0/+7
|
* osd_get_emulator_directory removed (no credit) Miodrag Milanovic2010-02-131-12/+0
|
* No credit, please Couriersud2010-02-131-10/+17
| | | | | - put code not actually required in MAME into "#ifdef MESS" - Moved global definition of sdl_cwd from sdl_file.c back to sdl_main.c
* - Removed not used OSD functions Miodrag Milanovic2010-02-131-168/+17
| | | | - Placed new functions into sdlos subfiles since they need different implementation (no whatsnew needed)
* - Moved natural keyboard support from MESS to MAME Miodrag Milanovic2010-02-121-2/+231
| | | | - Moved OSD file functions and clipboard access functions into OSD core
* NOTE: This change requires two new osd functions: osd_malloc() and Aaron Giles2010-01-081-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | osd_free(). They take the same parameters as malloc() and free(). Renamed mamecore.h -> emucore.h. New C++-aware memory manager, implemented in emualloc.*. This is a simple manager that allows you to add any type of object to a resource pool. Most commonly, allocated objects are added, and so a set of allocation macros is provided to allow you to manage objects in a particular pool: pool_alloc(p, t) = allocate object of type 't' and add to pool 'p' pool_alloc_clear(p, t) = same as above, but clear the memory first pool_alloc_array(p, t, c) = allocate an array of 'c' objects of type 't' and add to pool 'p' pool_alloc_array_clear(p, t, c) = same, but with clearing pool_free(p, v) = free object 'v' and remove it from the pool Note that pool_alloc[_clear] is roughly equivalent to "new t" and pool_alloc_array[_clear] is roughly equivalent to "new t[c]". Also note that pool_free works for single objects and arrays. There is a single global_resource_pool defined which should be used for any global allocations. It has equivalent macros to the pool_* macros above that automatically target the global pool. In addition, the memory module defines global new/delete overrides that access file and line number parameters so that allocations can be tracked. Currently this tracking is only done if MAME_DEBUG is enabled. In debug builds, any unfreed memory will be printed at the end of the session. emualloc.h also has #defines to disable malloc/free/realloc/calloc. Since emualloc.h is included by emucore.h, this means pretty much all code within the emulator is forced to use the new allocators. Although straight new/delete do work, their use is discouraged, as any allocations made with them will not be tracked. Changed the familar auto_alloc_* macros to map to the resource pool model described above. The running_machine is now a class and contains a resource pool which is automatically destructed upon deletion. If you are a driver writer, all your allocations should be done with auto_alloc_*. Changed all drivers and files in the core using malloc/realloc or the old alloc_*_or_die macros to use (preferably) the auto_alloc_* macros instead, or the global_alloc_* macros if necessary. Added simple C++ wrappers for astring and bitmap_t, as these need proper constructors/destructors to be used for auto_alloc_astring and auto_alloc_bitmap. Removed references to the winalloc prefix file. Most of its functionality has moved into the core, save for the guard page allocations, which are now implemented in osd_alloc and osd_free.
* Results of running the latest srcclean. Aaron Giles2009-12-281-2/+2
|
* Cleanups and version bump.mame0134u3 Aaron Giles2009-10-121-13/+13
|
* Moved all the OSD/windows code over to straight BSD license. Aaron Giles2009-10-121-2/+32
| | | | | | Updated osdmini to work again and compile as an actual target (doing nothing at the moment). Converted all of its code over to straight BSD as well.
* Rename osd_profiling_ticks() to get_profile_ticks(). Moved implemention into Aaron Giles2009-09-061-30/+0
| | | | inline functions in eminline.h and the ei* functions. [couriersud, Aaron Giles]
* osd_is_bad_read_ptr is no more. Aaron Giles2009-08-291-22/+0
|
* 02180: Corrupt archives are read without problems Couriersud2009-03-041-0/+1
| | | | | | | * corrupt files in archives now generate an error * archive files ending in "/" will not be tested for crc - skip path entries * add new flag FILE_OPEN_NO_PRELOAD to skip decompressing on open This is used in audit.c, which only tests whether files exist * added error checking to all calls to load_file_zipped
* 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"
* Initial checkin of MAME 0.121.mame0121 Aaron Giles2007-12-171-0/+802