summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd
Commit message (Collapse)AuthorAgeFilesLines
* Cleanups and version bump. Aaron Giles2008-05-221-1/+1
|
* Added verbosity for max texture size. Aaron Giles2008-05-221-0/+1
|
* Restructured input port internals and cleaned up inptport.c: Aaron Giles2008-05-154-23/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Input ports are now maintained hierarchically. At the top level are input ports, which contain a list of fields. Each field represents one or more bits of the port. Certain fields such as DIP switches and configuration switches contain a list of settings, which can be selected. DIP switch fields can also contain a list of DIP switch locations. * Normalized behavior of port overrides (via PORT_INCLUDE or by defining multiple overlapping bits). All fields within a port are kept in strict increasing bit order, so altered DIP switches are now kept in the appropriate order. This addresses MAMETesters bug 01671. * Live port state is now fully separate from configured state. This is manifested in a similar way to devices, where a const list of ports can be managed either offline or live. Each port has a pointer to an opaque set of live state which is NULL when offline or valid when live. Each port also has a running_machine * which is also NULL when offline. * Because of this new arrangement, the conversion from tokens to a list of ports now requires reasonably complex memory allocation, so these port lists must be explicitly allocated and freed (they are not mantained by automatic resource allocation). * Custom and changed callbacks now take a pointer to a field config instead of a running machine. This provides more information about what field triggered the change notification. The machine can be found by referenced field->port->machine. * The inptport.c module has been cleaned up and many ambiguities resolved. Most of this is internal, though it did result in osd_customize_inputport_list() being changed to osd_customize_input_type_list(). The parameter to this function is now a linked list instead of an array, and the structures referenced have been reorganized somewhat. * Updated config.c to pass machine parameters to its callbacks. * Updated validity checks, XML output, and UI system to handle the new structures. * Moved large table of default input settings to a separate include file inpttype.h. * Removed gross hacks in trackfld and hyperspt NVRAM. These may be broken as a result.
* MESS specific: Fixed performance problems with -triplebuffer (bug #1539) [Justin Nathan Woods2008-05-121-2/+2
| | | | | Kerk]
* Cleanups for 0.124u4. Aaron Giles2008-04-241-2/+2
|
* Added new Windows option -watchdog, which creates a watchdog thread Aaron Giles2008-04-202-4/+59
| | | | | | that forcibly kills the application after a certain number of seconds. Primarily intended to be used in regression test runs to handle the occasional hung game.
* From: Oliver Stoenberg Aaron Giles2008-04-1110-95/+96
| | | | | | | | I cleaned up the Machine usage in the osd/windows files and added the running_machine parameter where possible. I didn't add it to osd_wait_for_debugger() yet, but I would make sense to have it.
* Fixed unicode crashing bug with input names. Aaron Giles2008-04-061-1/+1
|
* Switched from ACCESSING_BYTE_*, ACCESSING_WORD_*, ACCESSING_DWORD_* Aaron Giles2008-04-031-0/+18
| | | | macros to ACCESSING_BITS_*_* macros.
* From: Mike Haaland Aaron Giles2008-04-021-0/+1
| | | | | | | | src/osd/windows/ledutil.c Include osdcomm.h so INT32 is defined under VC.
* De-deprecat-ed ui.c. Aaron Giles2008-03-211-0/+1
| | | | | Changed xmlfile.c to pass in memory handlers to expat so that our memory overrides are properly managed.
* Centralized definitions of _WIN32_WINNT. Aaron Giles2008-03-2115-31/+43
| | | | | | | | Removed malloc/calloc/realloc/free link-time overrides; we now rely exclusively on compile-time overrides. Made a few tweaks toward getting mingw-w64 working, but there are still linker issues.
* Fixed chdman -extract to a physical drive on Windows. Aaron Giles2008-03-191-2/+13
|
* Fix 01531: polygon-based drivers: winwork.c memory leak Aaron Giles2008-03-171-2/+3
|
* Fixed pick_best_mode in both d3d and ddraw cases to manually extract Aaron Giles2008-03-172-2/+19
| | | | | | | | | refresh information from the device's inline_config, since this is done before the screen devices are start. Fixes 01491: switchres causes Exception at EIP=009413BF: ACCESS VIOLATION. Also, fixed render_target_get_minimum_size() to return nominal values if no screens are found.
* Added running_machine* parameter to MESS-specific calls Nathan Woods2008-03-162-2/+2
|
* Removes the scrnum parameter from VIDEO_UPDATE, updates all drivers to use ↵ Zsolt Vasvari2008-03-101-5/+3
| | | | | | the screen device instead. render.c now uses screen devices
* Changes first argument of video_screen_* functions to take a device_config Zsolt Vasvari2008-03-092-2/+2
| | | | | | | All callers that used 0 for the screen number now use machine->primary_screen As a gap meassure, Where necessary, create a parallel set of video_screen_*_scrnum functions that take scrnum All callers that specified a specific screen number now call the *_scrnum versions Changed game info screen and overlay UI to display the screen tag instead of screen number
* Moves 'refresh' from public to internal video state and renames it to ↵ Zsolt Vasvari2008-03-072-2/+2
| | | | | | 'frame_period' Changes all drivers that previously accessed 'refresh' to use video_screen_get_frame_period()
* Rewrote some potentially compiler specific code: Couriersud2008-03-021-0/+16
| | | | | | * 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
* Replaces mame_bitmap with bitmap_t Zsolt Vasvari2008-02-292-2/+2
| | | | Removes mame_bitmap
* Added a rule to make VS2008 compile seamlessly. Aaron Giles2008-02-231-0/+2
|
* Remove some deprecat.h includes from osd layer: Couriersud2008-02-233-17/+15
| | | | * add machine as parameter to osd_update and osd_update_audio_stream * change Machine to machine and remove include deprecat.h
* Makefile & build system update: Couriersud2008-02-211-3/+5
| | | | | | | | | | | | | * verinfo: New syntax. verinfo now uses the following syntax: verinfo.exe -b windows|winui|mess. Does not depend on compile time defines any longer. * makefile will include - if it exists - src/osd/$(CROSS_BUILD_OSD)/build.mak. This was necessary to enable cross builds for winui. winui adds mkhelp to build tools and the rules for mkhelp thus had to be moved outside src/osd/winui/winui.mak * Tested on Linux 64bit, Linux 32bit, Windows 32bit mingw, Windows 32bit MSVC * Cross build environment to be posted to the list
* Most important thing to note about this change: Aaron Giles2008-02-214-131/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ALL DRIVERS MUST NOW EXPLICITLY DECLARE THEIR SCREENS. Read on for more detail.... Added device tag as a parameter to the start function for devices. Updated MC6845 to accept this tag. Added new functions for iterating through the device list and counting devices of a given type. Updated search and iteration functions to accept DEVICE_TYPE_WILDCARD to work across all devices. Added new macro MDRV_DEVICE_CONFIG_DATA() which is used to set a single item in an inline data structure. Removed the per-screen palette_base. This was an idea that never really worked out, nor have we really needed it. Defined a new device type VIDEO_SCREEN. Currently this has no live functionality, but merely serves as a placeholder/identifier for video screens. Eventually some of the screen management code may move into the start/stop/reset functions. Changed MDRV_SCREEN_* macros to build up VIDEO_SCREEN devices rather than storing values in the screen[] array. Changed MDRV_SCREEN_ADD to specify a screen type (RASTER, VECTOR, LCD for the moment). Removed the older VIDEO_TYPE_RASTER and VIDEO_TYPE_VECTOR; this information is now determined by walking the screen list. Removed the screen[] array from machine_config. Modified all code referencing Machine->config->screen[] and changed it to iterate over the devices using the new video_screen_first() and video_screen_next() functions. (The next step will be to add video_* functions that accept a tag instead of screen index, and then move systems over to always referencing screens by tag instead of index.) Removed implicit screen #0. This means that ALL DRIVERS MUST EXPLICITLY DECLARE THEIR SCREENS. Updated all drivers to do so. While there, grouped all MDRV_SCREEN_* parameters together. Also removed unnecessary VIDEO_TYPE_RASTER and VIDEO_TYPE_VECTOR. Also removed VBLANK and bitmap format information from vector games. This was painful and very tedious. Changed game information to display info about all screens.
* From: RansAckeR [mailto:RansAckeR@pandora.be] Aaron Giles2008-02-191-1/+1
| | | | | | | | | | | | Subject: port definitions/DIP improvements Simplified port definitions in armedf.c, artmagic.c & asteroid.c. Added DIP locations to: cclimbr2 , legion, terraf, ultennis, cheesech, stonebal, stoneba2, scessjoe, ashnojoe, asteroid, llander, llander1, astdelux. (This is the follow-up submission with stephh's complaint addressed.)
* The term "driver" is way overloaded in the system. Aaron Giles2008-02-183-3/+3
| | | | | machine->drv is now machine->config. Sorry.
* Changed VERINFO to build always. All tools in build should build for all ↵ Aaron Giles2008-02-131-12/+2
| | | | | | platforms. Fixed dependency problem in windows.mak due to the VERINFO move. Windows builds now work the first time.
* makefiles: Couriersud2008-02-052-257/+0
| | | | * move verinfo.c to src/build * move rules for verinfo to src/build/build.mak
* Changed debugger-related code to be based off a new makefile define ↵ Aaron Giles2008-02-024-7/+7
| | | | | | | | | | | | | (DEBUGGER) which sets a new compile-time define (ENABLE_DEBUGGER). This means that MAME_DEBUG no longer means "enable debugger", it simply enables debugging features such as assertions and debug code in drivers. Also removed the various levels of opbase protection in memory.h and always just turned on full bounds checking. Fixed build break due to missing ampoker.lay -> ampoker2.lay renaming.
* build environment: Couriersud2008-01-271-1/+3
| | | | * added checks for CROSS_BUILD=1 to omit building m68kmake.exe, verinfo.exe, png2bdc.exe and file2str * enables building mame using mingw on linux
* - Added deprecat.h that contains some deprecated/discouraged contructs (see ↵ Zsolt Vasvari2008-01-257-0/+7
| | | | | | | | | below) The idea is to create extra work if a driver wants to use these and hopefully gives an incentive to look for an alternate solution - Added #include of deprecat.h that rely on these contructs - Removed a bunch of unneccassary #include's from these files
* From: Atari Ace [mailto:atari_ace@verizon.net] Aaron Giles2008-01-244-7/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Subject: [patch] Fix C4305 warnings, other MSVC tweaks Hi mamedev, This patch is a bit of a potpourri. It is the result of enabling most of the suppressed warnings when using MSVC compilers and seeing what issues arose with different compilers (I used 70,71,80,90). Two of the warnings were judged to be useful to enable and methodically fix. Some issues spotted by the other warnings were also fixed. 1. Fixed issues flagged by MSVC warning C4305 (type truncation). Almost all of these are harmless double->float narrowing in initializers, but one warning spotlighted a bug in segasyse.c, where code to use a higher sprite number had no effect due to the insufficient range of UINT8. 2. Removed /wd4550 for VS7/VS71 compilers (expression evaluates to a function which is missing an argument list). There are no cases of this warning currently, and if there were they would most certainly be bugs. This also allowed the warning suppression lists to be remerged for VS7 and VS2005. 3. Decoupled intrinsic support decisions from PTR64 in eivc.h. 4. Fixed some VS7-specific issues (OPTIMIZE=0 at least compiles now). That compiler doesn't support "long long" or "ll" (rsp.c/dkong.c). 5. Added a missing case statement in sm8500d.c. Noticed while reviewing dead code warnings. 6. Replaced a number of static constants with an enum in sidenvel.h. This is unrelated to the rest of this patch, but it was overdue to be done.
* Fixed default memory view width for CPUs with >byte-sized minimum Aaron Giles2008-01-211-27/+15
| | | | Made menu updating dynamic at click time, fixing issues with incorrect checkmarks
* Reverted experimental D3D fix, since it breaks switchres. Aaron Giles2008-01-171-2/+2
|
* Fixed MESS compilation error Nathan Woods2008-01-121-2/+4
|
* Cleanups for 0.122u5. Aaron Giles2008-01-111-11/+11
|
* (From Emuman) Aaron Giles2008-01-111-2/+2
| | | | Testing his fix for the full screen switch bug, which apparently works, but I am still baffled as to why.
* log: davidhay2008-01-101-1/+1
| | | | | | | | | | | | | | - added MESS PC-Engine emulatation - added Blazing Lazers (working) - added Paranoia (non-working due to lack of jamma interface emulation) - fixed MAME debug build under VC2003 Please co-credit Charles MacDonald & Mr. Do for Blazing Lazers. Note to Nathan: video/vdc.* re taken as-is from MESS, for the machine stuff I extracted common code (to be shared by MAME and MESS) and created machine/pcecommn.*
* Fixed winwork to use proper tchar functions for getenv. Aaron Giles2008-01-081-3/+4
|
* (Windows only) Aaron Giles2008-01-081-105/+235
| | | | | | | Added code to debug 64-bit builds to allocate all address space below 4GB to help find 64-bit errors. Added environment variable OSDDEBUGMALLOC which, if set, explicitly overrides the debug malloc debug settings. Added environment variable OSDDEBUG4GB which, if set, explicitly overrides the new 64-bit address space allocations. (Sadly this is necessary due to my nvidia D3D drivers being 64-bit unclean....)
* Cleanups and version bump to 0.122u4.mame0122u4 Aaron Giles2008-01-071-1/+1
|
* Fixed verinfo for the yearless copyright. Aaron Giles2008-01-061-22/+3
|
* Copyright cleanup: Aaron Giles2008-01-0656-56/+56
| | | | | | - removed years from copyright notices - removed redundant (c) from copyright notices - updated "the MAME Team" to be "Nicola Salmoria and the MAME Team"
* Fixed stupid error in the recent D3D fix. Aaron Giles2008-01-051-1/+1
|
* Fix for d3dwindow0117u3red (inspired by Emuman) Aaron Giles2008-01-051-0/+12
|
* (From Oliver Stoneberg) Aaron Giles2008-01-041-2/+2
| | | | | | | | | | | | | | | | | beastrzb097u2red.patch - added GAME_NOT_WORKING flag, so this bogus bug report can be removed (not even worth 1 buck!) 20080104_1.patch - fixes a memory in src/mame/machine/stvcd.c memoryleak0118u1ora.patch - fixes a memory leak, that only happened when no RawInput API was available memory_leak0111u6ora_1.patch - only a partial patch - model3.c still missing
* Fixed altf4_0111u4gre. Aaron Giles2008-01-041-1/+3
| | | | Also fixed potential issue using F10.
* Enabled UNICODE by default for 64-bit builds. Aaron Giles2008-01-035-15/+37
| | | | | Fixed several issues with building for Unicode on MSVC. Almost certainly broke things for MESS/MAMEUI. (Sorry.)
* (From Oliver Stoneberg) Aaron Giles2008-01-031-9/+28
| | | | | This patch fixes a few UNICODE=1 issues in the disassembly and memory windows of the MAME debugger. I also removed two redundant arrays.