Commit Graph

129 Commits

Author SHA1 Message Date
AJR
d3eecba525 Software list entries can now supply slot option defaults
This feature is enabled when executing 'mame driver software'. After the specified software is found in the software list and attached to an appropriate image device, the software part's feature list is examined for any feature whose name is that of a slot device with _default appended. The feature's value field becomes the slot's default option, which overrides any driver-specified default and can be overridden by user-specified options.

No software lists have been updated to use this feature at the moment.
2016-01-30 22:49:08 -05:00
AJR
115db95642 Return std::string objects by value rather than pass by reference
- strprintf is unaltered, but strformat now takes one fewer argument
- state_string_export still fills a buffer, but has been made const
- get_default_card_software now takes no arguments but returns a string
2016-01-10 16:36:18 -05:00
Jeffrey Clark
b0a2383cae add lua console support back in 2016-01-06 01:20:49 -06:00
Miodrag Milanovic
91605d3f4d clang-modernize part 1 (nw) 2015-12-03 18:17:25 +01:00
Miodrag Milanovic
b6707c3bb5 Removed mongoose due to restricted license and webserver wip till code is restructured (nw) 2015-11-04 18:55:36 +01:00
ImJezze
21b577483b Cleanup
- some renamings
- reverted one unwanted change in vector.fx
2015-10-26 19:49:17 +01:00
ImJezze
5f1f5d500a Experimental Dynamic Beam Width
- replace beam width by beam min. and beam max. width, this makes it
possible to create a linear dynamic beam width by the amount of
intensity of the beam
- added beam intensity weight, this adds an exponential factor to the
dynamic beam width (values greater than 0 will push larger intensities
more than smaller intensities)
- fixed displayed ratio of vector points (zero-length lines)
2015-10-25 20:54:00 +01:00
ImJezze
a7b8acbe3e Merge pull request #6 from mamedev/master
Sync to base master
2015-10-20 21:34:36 +02:00
ImJezze
81c15decf8 Smooth Borders
- enabled smooth border effect and added option, its amount is limited
by the amount of rounded corners
- added raster.ini to parse_standard_inis()
- merged vector and raster bloom options, use vector.ini or raster.ini
to distinguish
2015-10-09 18:49:39 +02:00
Wilbert Pol
99353dc95f coleco.c: Reduce tagmap lookups and added support for 31in1 and 63in1 multicarts (nw) 2015-08-10 13:10:14 +02:00
Wilbert Pol
e9d2bf218b bebox.c: reduce tagmap lookups (nw) 2015-08-02 21:25:53 +02:00
Wilbert Pol
6f68656e05 Some more tagmap lookup reduction work (nw) 2015-08-01 12:46:21 +02:00
Ariane Fugmann
e14de8c687 Core - Added emulation options for comm settings 2015-06-06 23:37:57 +02:00
Miodrag Milanovic
54f8b3ae5d moved all to std::string (nw) 2015-04-22 11:30:45 +02:00
Oliver Stöneberg
442aedc911 made -[no]dummywrite DEBUG only and removed it from the official documentation (nw) 2015-03-24 10:37:17 +01:00
Alex W. Jackson
e9aaed8b86 Fix performance regression from -dummywrite addition (nw) 2015-03-20 03:06:17 -04:00
Oliver Stöneberg
27460ff717 added command-line option -[no]dummywrite to create snaphots of each frame without writing them to a file [Oliver Stöneberg]
this is a dummy implementation of -aviwrite/-mngwrite and is used in
testruns to detect e.g. palette issues. the dummy implementation greatly
speed up testrun since it avoids the snapshot to file format conversions
as well as the I/O operations
2015-03-17 14:10:24 +01:00
Miodrag Milanovic
26e7a17b63 Cleanups and version bump 2015-01-28 09:20:10 +01:00
etabeta78
840460c828 ui: fixed bug where slot options set via internal UI did not properly
create their sub-options. [Fabio Priuli]

out of whatsnew: to see the bug, try to manually set from the UI "com" in a PC ISA port or "multitap" in
the SMS driver in an old build, then reset (to apply changes) and re-enter the Slot Options menu just
to see that the sub-options (the com serial ports and the multitap joypads) are not configurable because
the core was not "informed" of their addition. no bug was present if the options were set from command
line or from QMC2, so it was not so easy to spot the issue...
2015-01-17 10:30:03 +01:00
couriersud
e216457fcd Untangled options inheritance. Previously code locked in osd_options
locking any potential future OSD to these.
Options inheritance now is

core_options
emu_options
cli_options
osd_options
[sdl|win]_osd_options

This required a number of minor changes to other code as well. 
Tested on linux-sdl, windows-sdl, windows-mainline, osx-sdl
2015-01-13 20:23:00 +01:00
Oliver Stöneberg
98c4b826c3 added command-line option -[no]drc_log_native to control DRC native diassembly logging [Oliver Stöneberg]
allows logging of DRC native disassembly without re-compiling / removes
DRCUML_OPTION_LOG_NATIVE and all the core-specific LOG_NATIVE defines /
added logging() to drcbe_interface / added logging_native() to
drcuml_state
2014-11-07 21:24:35 +01:00
Oliver Stöneberg
b4e8437573 added command-line option -[no]drc_log_uml to control DRC UML disassembly logging [Oliver Stöneberg]
allows logging of DRC UML disassembly without re-compiling / removes
DRCUML_OPTION_LOG_UML and all the core-specific LOG_UML defines
2014-11-07 11:20:27 +01:00
Oliver Stöneberg
4f9db1e734 added command-line option -[no]snapbilinear to control binlinear filtering for snapshots (enabled by default) [Oliver Stöneberg]
this is mainly for making testruns and debugging faster - could also be
used to speed up -aviwrite usage though
2014-10-25 18:14:16 +02:00
Miodrag Milanovic
991212c069 -Created machine_manager as singleton class that contains (for now) one running machine [Miodrag Milanovic]
-Updated LUA engine to run in machine_manager instead of being initialized per machine
-Added "-console" option so emulator can be started with LUA enabled console
-Update LUA to version 5.2.3 
-Enabled SQLite3 to be compiled and added LUA module for it
2014-06-06 10:11:31 +00:00
Miodrag Milanovic
1f20547472 no need for this it's in main class now (nw) 2014-05-09 09:10:29 +00:00
Miodrag Milanovic
69faaf3aeb -Reorganized OSD, handling more sound output systems and debuggers, defaults left same as before [Miodrag Milanovic]
-Created osd_options as base option class for non-system specific options
2014-05-08 07:39:04 +00:00
David Haywood
40e8f47f3f use the flag set by the GAME/CONS/COMP/SYST macro to parse additional optional ini files
GAME = GAME_TYPE_ARCADE -> arcade.ini
CONS = GAME_TYPE_CONSOLE -> console.ini
COMP = GAME_TYPE_COMPUTER -> computer.ini
SYST = GAME_TYPE_OTHER -> othersys.ini

I've had a few requests to do this and it seems simple enough to leverage the flags we already have.
2014-05-01 07:54:09 +00:00
Miodrag Milanovic
9a978e9be5 Removed not used option (nw) 2014-04-17 13:17:47 +00:00
Miodrag Milanovic
7712d5e841 reverting r28187, if menus are unusable at that size user should make window bigger (nw) 2014-04-15 13:54:20 +00:00
Nathan Woods
4b7c39ba40 Adding minimum width/height options; defaulting to '0' so there is no change in behavior (the menubar branch will have different defualts) 2014-03-02 13:21:32 +00:00
Aaron Giles
5d0ce54f9e Bulk convert files that already had standard BSD license in my name
to new license tagged form.
2013-10-16 08:14:49 +00:00
Miodrag Milanovic
96aa5e1c08 Cleanups and version bump 2013-09-17 06:47:03 +00:00
Miodrag Milanovic
0b59be30bb Added command line option to force DRC C backend [Miodrag Milanovic] 2013-08-27 13:27:39 +00:00
Miodrag Milanovic
e72ada1fbd Made both DRC and Non-DRC compile for MIPS, RSP and SH2 core and added option to enable/disable DRC from command line (-drc -nodrc by default it's on) [Miodrag Milanovic] 2013-08-27 12:12:55 +00:00
Miodrag Milanovic
f1b81c7e98 Initial commit of internal web server, mostly to check compiling on various platforms (nw) 2013-08-07 07:20:01 +00:00
Fabio Priuli
8d7e236c83 emuopts.c: Added a new option -statename which allows to specify the location of state saving,
relative to -state_directory (whose usage remains unchanged). Syntax is basically the same 
as snapname, allowing for the  / character as path separator, %g as the driver name, and 
%d_[media] as the image name mounted in the "media" device. 

For example, using -statename foo/%g when running "mame wrally" will store save states into 
the folder sta/foo/wrally/ ; using -statename %g/%d_cart when running "mess nes -cart smb" 
will store save states into the folder sta/nes/smb/ ; using -statename %g/%d_cdrm when
running "mess pce -cart cdsys -cdrm draculax" will store save states into sta/pce/draculax/
Specifying a media switch which is not available (e.g. %d_cdrm in a c64) or a media switch
where no image is mounted (e.g. %d_cdrm in pce while playing a hucard game) will revert
the option to its default value %g and save states will be stored in sta/*gamename*/ as in
previous versions. [Fabio Priuli]

Needless to say, this option is very useful with home computers and consoles in MESS since it
allows to have 36 save slots for each game instead of 36 for the whole system library

Notice that a clean compile is required, due to the addition to the running_machine class
2013-05-28 05:12:28 +00:00
Miodrag Milanovic
1c05ccc93b Cleanups and version bump 2013-05-20 06:51:25 +00:00
Miodrag Milanovic
4a09e17523 LUA 5.2.2 added to libraries, did basic hookup of LUA VM into running machine [Miodrag Milanovic]
added -script (or -autoboot_script) command to execute LUA script after driver startup
2013-05-09 13:57:44 +00:00
Miodrag Milanovic
715ac716d5 Autoboot command support added [Ben Geeves,Miodrag Milanovic] 2013-05-06 17:14:13 +00:00
Miodrag Milanovic
0e19f641d3 Cleanups and version bump 2013-01-11 07:32:46 +00:00
Miodrag Milanovic
913ee29d76 Made core able to use bios selection per slot device [Miodrag Milanovic]
Sample of usage :
  mess kc85_4 -exp d004gide,bios=v31

Will need to cleanup handling of sub options to make it more robust and able to validate
2012-09-05 10:30:30 +00:00
Michaël Banaan Ananas
cd5541a157 make ui_active a user option 2012-08-28 17:20:13 +00:00
Miodrag Milanovic
f54800c1f3 Clean-ups and version bump 2012-08-20 06:39:53 +00:00
Miodrag Milanovic
10294b81ab Made UI mouse cursor optional (default is off for now), in games with clickable artwork cursor is visible, application is not taking mouse control anymore (no whatsnew) 2012-08-17 13:42:21 +00:00
Miodrag Milanovic
465ff2d360 Fixed handling slot/image options so it's possible to override slot setting by softlist (no whatsnew) 2011-11-23 08:57:45 +00:00
Miodrag Milanovic
8e1dbbb003 Validation of drivers require absence of slot and image options (no whatsnew) 2011-11-16 09:40:33 +00:00
Angelo Salese
43a482c6eb Made some fixes/additions to the input system [kanikani]
* Added the possibility to press contradictory direction digital
joystick input at the same time (i.e. up-down, left-right);
* Added the possibility to set an arbitrary value for coin impulses;
* fixed a bug with loop lever routine
* fixed a bug with analog joystick routine


Various fixes in tnzs.c driver [kanikani]
* Plump Pop
  - update DIPSW item (collision between each players' child)
  - added DIPLOCATION
* Extermination
* Arkanoid Revenge of DOH
* Dr.Toppel
* Kageki
* Chuka Taisen
* The Newzealand Story
  - added DIPLOCATION
* Kabuki Z
  - fixed difficulty DIPSW (EASY and MEDIUM is reversed)
  - added DIPLOCATION
* Insector X
  - fixed difficulty DIPSW (based on manual)
  - added DIPLOCATION
  

Various fixes in tmnt.c driver [kanikani]
* T.M.N.T.
  - fixed visible area (garbage on each side is correct (verified on PCB))
  - fixed DIPSW
  - added DIPLOCATION
* Golfing Greats
  - fixed inputs
  - fixed DIPSW
  - added DIPLOCATION
* Trigon
* Cuebrick
* M.I.A.
* Punk Shot
  - fixed DIPSW
  - added DIPLOCATION
* Premiere Soccer
  - added DIPLOCATION


Various fixes in ninjaw.c driver [kanikani]
* Ninja Warriors
  - added DIPSW notes
* Darius II
  - fixed DIPSW
  - fixed game description


Various fixes in twin16.c driver [kanikani]
* Majuu no Oukoku
  - fixed inputs
  - fixed DIPSW
  - added DIPLOCATION
* Gradius II
* Hard Puncher
* M.I.A.
* Cuebrick
  - fixed DIPSW
  - added DIPLOCATION


Fixed DIPSW in Darius II [kanikani]

Fixed DIPSW in Ninja Ryuukenden / Ninja Gaiden [kanikani]

Fixed inputs and DIPSW in toaplan1.c, toaplan2.c, twincobr.c, wardner.c drivers [kanikani]


Various fixes in galaga.c driver [kanikani]
* Bosconian
  - fixed DIPSW
  - fixed DIPLOCATION
* Galaga
* Xevious
* DigDug
  - fixed DIPLOCATION


Fixed DIPSW and DIPLOCATION in segas24.c driver [kanikani]


Fixed DIPSW and DIPLOCATION in segas18.c driver [kanikani]


Fixed DIPSW in segag80r.c driver [kanikani]


Fixed DIPSW in segag80v.c driver [kanikani]


Fixed DIPSW in segald.c driver [kanikani]


Fixed DIPSW in Ninjakun and Penguin-Kun Wars [kanikani]


Various fixes in dec0.c driver [kanikani]
* Heavy Barrel
  - fixed DIPSW
  - fixed DIPLOCATION
* Birdie Try
* Dragon Ninja
* Fighting Fantasy
* Midnight Resistance
  - fixed DIPSW
* Robocop
  - fixed DIPLOCATION


Fixed coinage DIPSW using Sega common setting in segaybd.c,
segaorun.c, segaxbd.c, segahang.c, segae.c, segac2.c, segas16a.c
and segas16b.c drivers [kanikani]


Fixed coinage DIPSW using Konami common setting in chqflag.c, pooyan.c
and rockrage.c drivers [kanikani]

Various fixes in sega16b.c driver [kanikani]
* Ace Attacker
  - added I/O board read routine
* Dunk Shot
  - fixed DIPLOCATION
* Sukeban Janshi Ryuko
  - added DIPSW
* Time Scanner
  - fixed DIPSW

Various fixes in sega16a.c driver [kanikani]
* Ace Attacker
  - changed to use analog device
* Sukeban Janshi Ryuko
  - added DIPSW
* Time Scanner
  - fixed DIPSW


Fixed / added comments in ninjakd2.c driver [kanikani]


Made some video optimizations in toypop.c driver [kanikani]


Fixed inputs and DIPSW in djmain.c driver [kanikani]


Fixed DIPLOCATION in Pop'n Stage [kanikani]
2011-10-23 13:29:16 +00:00
Miodrag Milanovic
4add4516fe Made quicklaunch work for slot/image devices (no whatsnew) 2011-07-03 18:21:07 +00:00
Miodrag Milanovic
ba15f08a16 Added support for multi level slot devices [Miodrag Milanovic]
Now it is possible to attach slot device to other slot device, also
containing multiple image devices under it.
2011-06-27 12:37:56 +00:00
Miodrag Milanovic
7fd9b4fba0 Added support for starting softlist item directly without
marking image device to be mounted on. If soft item is found 
it will be loaded on first image device that have needed 
interface defined [Miodrag Milanovic]
2011-06-15 17:31:06 +00:00
Fabio Priuli
2082b37969 emuopts: added confirm_quit option (defaults to off). when on, pressing ESC you are prompted with
a 'confirm quit' screen rather than directly quit emulation. [MamePlus Team, Mamesick, Fabio Priuli]


out of whatsnew: feel free to suggest a better quit message, if you don't like the one I added.
2011-06-03 16:38:05 +00:00
Angelo Salese
b91ca7e606 Initial frameworking for upcoming artwork updates [Mr. Do] 2011-05-23 16:28:23 +00:00
Aaron Giles
fb5091182e Cleanups and version bump. 2011-03-25 16:14:09 +00:00
Aaron Giles
06ee6804dd Converted core_options to a class. Removed a bunch of marginal
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.
2011-03-03 17:05:24 +00:00
Miodrag Milanovic
249def5363 - Moved RAM device into emu core [Miodrag Milanovic]
- Moved COMP and CONS macros in driver.h
2011-01-05 12:51:11 +00:00
Miodrag Milanovic
33b47edf95 - Fixed issue with image empty slot [Miodrag Milanovic]
- Default for writeconfig is now 0 for MESS since it is not needed anymore
- Fixed handling of mounted devices on hard reset
- Unified some emuopts code, and removed ifdefs
2010-11-26 13:50:56 +00:00
Aaron Giles
59559fe282 Added support for OSD-generated fonts. The OSD is queried first to see
if it owns a given font (based on the name), and if it does, it is
responsible for generating bitmaps on the fly as characters are requested.

Added new option -uifont to specify the UI font. It can be set to a filename,
in which case a BDF font will be loaded. It can also be set to a font name
(assuming the OSD support is present), in which case the OSD font by that
name is used. The default value is 'default' which can be used by the OSD
to substitute a default font or by the OSD, which will default to ui.bdf
as before. In all cases, it falls back to the built-in font by default if
none of the previous options works.

On Windows, the OSD will default to Tahoma as the font name. Also on
Windows, font names can be specified with [b] to indicate bold or [i] to
indicate italic.
2010-10-24 00:16:54 +00:00
Aaron Giles
c30bcb6948 Fix crash when specifying -effect.
Moved -effect implementation out of OSD code and into core since
the implementations were identical across Windows/SDL and implemented
in the core itself.
2010-10-16 00:55:11 +00:00
Miodrag Milanovic
5a5e4e86a2 Added missing OPTION_WRITECONFIG define (no whatsnew) 2010-06-18 19:29:58 +00:00
Miodrag Milanovic
826dba5923 - removed MESS dependency from config.c
- moved image legacy device implementation to devimage.c
- created image.c implementation with initialization of devices/configuration for image devices, used those calls from mame.c
- some minor cleanup of legacy device and initial implementation of some calls

(no whatsnew for now, this is just for log,will put more info on final commit)
2010-06-17 20:06:54 +00:00
Miodrag Milanovic
488fbb0f0f emuopts - added support for image devices parameters [Miodrag Milanovic] 2010-06-16 13:22:10 +00:00
Miodrag Milanovic
0a6b13608d - Moved natural keyboard support from MESS to MAME
- Moved OSD file functions and clipboard access functions into OSD core
2010-02-12 15:40:11 +00:00
Couriersud
0898987bc3 Internal debugger using the mame rendering infrastructure
- added support for arbitrary number of containers for render_target
- added command-line parameter -debug_internal (-di) to use the internal debugger when in debug mode
- internal debugger supports all views except memory view
- added "Debug" view to layout/vertical.lay to create more place for debug views in vertical games.

The colors are ugly. Font rendering needs improvement. There are no shortcut keys right now. There is still a lot of room for more improvements.
However, it works and does not depend on any ui toolkit. The interface has been designed to support displaying views programmatically e.g. from the ui. 

Currently, the ui render target is used. In order to support views being displayed in separate windows further changes are needed:
- the osd layer must support creating and closing windows (render targets) on demand.
- There must be a mode for render targets where their bounds follows the window size - Currently the render target size depends on the aspect of currently selected "artwork" view.
- Render target needs a name property.

Short HowTo:

- Start MAME with "-debug -di"
- Console, register and disasm views will be shown. Place them by dragging the view on the title bar.
- Views can be resized by dragging the bottom-right yellow square.
- The view having the focus has a green background title bar.
- Hit "Tab" (IPT_UI_CONFIGURE) to show the menu.
- Console and disasm views support a very simple facility to support entering commands and addresses. Just start typing. Hit "enter" when finished.
2010-02-11 23:59:36 +00:00
Miodrag Milanovic
51f4cf5be9 Rollback of show_warning add, sorry did not know about policy of this issue. 2010-02-10 10:40:58 +00:00
Miodrag Milanovic
96413ff354 - Added skip_warnings option
- Removed MESS dependent checks
2010-02-10 10:25:00 +00:00
Aaron Giles
4498faacd9 First round of an attempted cleanup of header files in the system.
- Created new central header "emu.h"; this should be included
    by pretty much any driver or device as the first include. This
    file in turn includes pretty much everything a driver or device
    will need, minus any other devices it references. Note that
    emu.h should *never* be included by another header file.
 - Updated all files in the core (src/emu) to use emu.h.
 - Removed a ton of redundant and poorly-tracked header includes
    from within other header files.
 - Temporarily changed driver.h to map to emu.h until we update
    files outside of the core.

Added class wrapper around tagmap so it can be directly included
and accessed within objects that need it. Updated all users to
embed tagmap objects and changed them to call through the class.

Added nicer functions for finding devices, ports, and regions in
a machine:

   machine->device("tag") -- return the named device, or NULL
   machine->port("tag") -- return the named port, or NULL
   machine->region("tag"[, &length[, &flags]]) -- return the
      named region and optionally its length and flags
      
Made the device tag an astring. This required touching a lot of 
code that printed the device to explicitly fetch the C-string
from it. (Thank you gcc for flagging that issue!)
2010-01-10 00:29:26 +00:00
Aaron Giles
91a1b8d634 NOTE: This change requires two new osd functions: osd_malloc() and
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.
2010-01-08 06:05:29 +00:00
Aaron Giles
38916f18c8 Made INI file order explicit via priorities. 2009-09-21 08:45:00 +00:00
Fabio Priuli
1e5f2af24f Fixed remaining occurrences of crsshairpath 2009-07-14 07:06:24 +00:00
Aaron Giles
ba6c280210 Added basic support in bitmap.c for 64-bit indexed bitmaps. As a
result, you will need a full recompile with this change, since the
bitmap formats enum was altered.

Introduced new feature -burnin, which can be used to generate a PNG
that represents the overall brightness seen during the course of
running a game. This PNG can be used as a fake "bezel" that overlays
the screen via the artwork systems (with a low alpha, say 0.1 or 0.2)
to simulate running a game with a monitor that has been burned in
from another game.

Fixed the -crsshairpath option to be spelled properly.
2009-07-13 22:34:43 +00:00
Derrick Renaud
01962d4fc5 Crosshair update
* Added Crosshair Options menu
  - ability to individually enable/disable crosshairs
  - ability for them to automatically disappear after a set amount of time
  - ability to select crosshair graphic
  - all settings are saved in the cfg file
 * Removed F1 toggle for crosshairs
 * Added new command option -crsshairpath
  - store all selectable graphics here
  - see config.txt for further info

OSD NOTE: render_load_png() has been changed to no longer force usage of the artwork directory.
Do a search for "render_load_png(" and replace with "render_load_png(OPTION_ARTPATH, " if needed.

----------------------------
F1 is now free to use for something new.  I was thinking it would be perfect for a context sensitive help file.  Each menu item could have a help tag, that it would look up and display info from an HTML file.
2009-03-28 22:55:34 +00:00
Aaron Giles
a69088c498 Added new options 'cheatpath' to specify one or more paths for cheat
files. Removed old option 'cheat_file'.

Updated xmlfile.c to specify the line number for each node, for more
accurate error reporting.

Removed old cheat.c/.h and replaced them with code that will read and
write the new XML-based cheat format using the new cheatpath option
(cheats still need to be enabled in order to load at all). Note that
the cheats are not implemented yet, but they are fully parsed. To test
saving, whenever a cheat file is successfully loaded, it is immediately
written back out as 'output.xml' to the cheat directory for validation.
2008-07-31 08:19:53 +00:00
Aaron Giles
69ba0bd294 Cleaned up software bilinear filtering code. Added bounds checking.
Enabled by default for snapshots and movie rendering.

Added new option: -snapsize, which lets you specify the target
resolution for snapshots and movies. The existing behavior is still
the default: create snapshots and movies at native pixel 
resolutions.

Added new option: -snapview, which lets you specify a particular
view to use for rendering snapshots and movies. The existing 
behavior is still the default: use a special internal view and 
render each screen to its own snapshot in its own file. When using 
this option to specify a view other than 'internal', only a single 
snapshot file will be produced regardless of how many screens the 
game has.

Improved AVI and MNG recording to properly duplicate/skip frames
as appropriate to keep the correct framerate.
2008-06-16 16:34:51 +00:00
Aaron Giles
c10b238896 Added option -[no]coin_lockout (-[no]coinlock) to control coin lockout behavior. 2008-06-12 17:06:49 +00:00
Aaron Giles
65934e7aa5 Added new option -snapname which lets you provide a template for how snapshot
names are generated.

Added new astring functions astring_del, astring_replace, and astring_replacec
to help perform simple search/replace substitution.
2008-05-29 08:00:23 +00:00
Aaron Giles
86dd599aa8 Added uncompressed AVI recording. Extended aviio to be able
to write RGB bitmaps. Unfortunately, the only option is fully
uncompressed, which means the resulting AVIs are *HUGE* and
may not play correctly in realtime due to high data rate. The
intention is that these uncompressed AVIs are post-processed
by other utilities to compress the video and produce a
realtime playable result.

Added new command-line option -aviwrite which works just like
-mngwrite, except it produces AVIs and streams sound to them.
Updated documentation accordingly.

Shift+F12 still produces MNGs for now, though this might change
in the future.

Modified fileio.c to retain the full pathname to the file so
that it can be queried while the file is open.
2008-05-13 03:02:11 +00:00
Aaron Giles
ee9f88963c Copyright cleanup:
- removed years from copyright notices
 - removed redundant (c) from copyright notices
 - updated "the MAME Team" to be "Nicola Salmoria and the MAME Team"
2008-01-06 00:47:40 +00:00
Aaron Giles
507ca2d275 Changes for MAME 0.121u4. 2007-12-17 16:41:39 +00:00
Aaron Giles
7b77f12186 Initial checkin of MAME 0.121. 2007-12-17 15:19:59 +00:00