Commit Graph

377 Commits

Author SHA1 Message Date
Vas Crabb 67ec5e5b43 Finished adding new mechanism for allowing parts of views to be hidden.
Changed name of element to "collection" and initial visibility attribute
to "visible", and added them to documentation.  Also added them to
complay.py.

Fixed issue with collection inside group, and improved initial view
selection behaviour.

Updated some internal layouts to demonstrate new features, including
et3400, irrmaze, ltcasino, mekd3/mekd4, seawolf and vgmplay.

Removed all uses of cpanel, marquee and overlay from internal layouts
and removed them from complay.py to actively discourage use.  Also
cleaned up view names in layouts that were using them in place of
spaces, and removed some superfluous name attributes on elements that
won't do anything useful with an output value anyway.

Made vgmplay cycle visualiser modes when visualiser screen is clicked.

Fixed a copy/paste error in bus/rs232/hlemouse.cpp while I'm at it.
2020-09-07 01:40:41 +10:00
Vas Crabb ec88949651 formats: Get rid of more inappropriate use of emu_fatalerror (and fix some spelling issues, etc. while I'm at it) 2020-08-30 17:08:25 +10:00
Vas Crabb 3b5f754717 docs: Add naming conventions for certain things.
This isn’t supposed to be too prescriptive.  The C++ stuff just codifies
some things we’ve managed to mostly agree on for public interfaces.  The
stuff for titles/descriptions is also just codifying existing rules so
there’s something to point people towards.  This will need to be refined
as we go forward.
2020-08-24 13:01:37 +10:00
Vas Crabb ecab55f700 emu/video: check macros are defined before doing comparisons, also fix a typo in docs 2020-08-21 23:21:05 +10:00
Vas Crabb 6a1e1bff1a docs: update for changes in MSYS2 packages, fix a typo, add note about using LLVM linker with GCC 2020-08-21 22:43:47 +10:00
Firehawke 41f49b9afe
Fixed compilation of docs for HTML and manfiles. 2020-08-10 19:23:46 -07:00
Aaron Giles 01d5d49518 Documentation update for vector options. 2020-08-05 16:41:08 -07:00
Firehawke 584c471ff3
Documentation updates (#6825)
Documentation updates [Firehawke]
* Preliminary work on -joystick_map redesign
* Adjustments to phrasing for analog mapping
* Health warning text
2020-07-18 08:15:13 -04:00
Firehawke 2b0a5627f7 Update RTD docs theme to 0.5.0 to fix search box. 2020-07-12 12:15:49 +10:00
Firehawke 7b6dbd7a14
First completed pass of commandline parameters. (nw) (#6711)
* First completed pass of commandline parameters. (nw)

* Further refinements on commandline (nw)

* Get the audio latency numbers right and add PortAudio info.

* FreeSync/GSync information cleanup.

* Minor additions to G-Sync/FreeSync.

* Add tip for keyboardprovider, remove biospath, correct anchor positioning (nw)

* A few corrections per Vas (nw)
2020-06-12 14:26:28 +10:00
Olivier Galibert 22513fb6fe emumem: A little more speedup. cache and specific change syntax, and are not pointers anymore [O. Galibert]
The last(?) two changes are:

- Add a template parameter to everything (theoretically the address
  space width, in practice a level derived from it to keep as much
  compatibility between widths as possible) so that the shift size
  becomes a constant.

- Change the syntax of declaring and initializing the caches and
  specifics so that they're embedded in the owner device.  Solves
  lifetime issues and also removes one indirection (looking up the base
  dispatch pointer through the cache/specific pointer).
2020-05-25 16:42:57 +02:00
Firehawke 121aa2fe37
Fix smartquotes by disabling them: While smartquotes are somewhat configurable, it's better if we don't use them at all. Makes sure there are no hidden pit traps for the users. (#6576) 2020-04-21 09:30:06 +02:00
Vas Crabb 11ac7454db Maintenance:
* Removed empty nl_examples from dist.mak
* Added copyright acknowledgements and full text of licenses to binary distribution
* Fixed up the list of third-party libraries
* Moved WDL fft.c to 3rdparty
2020-03-04 22:41:15 +11:00
R. Belmont 8cc243d562
Add a tip on how to enter the debugger. 2020-02-06 22:07:49 -05:00
Angelo Salese a41616e6f7
dialong -> dialog (nw) 2020-01-30 15:58:51 +01:00
Stiletto 88909dc0d0
Happy New Year 2020 (nw) (#6128)
Happy New Year 2020 (nw) (#6128)
2020-01-04 01:13:50 -05:00
Firehawke a10af356cc Update documentation (nw)
* Update MAME docs revision to 0.216
* Add FAQ question about autofire with walkthrough of setup process.
* Add VSCode .gitignore for RST compilation temporary folder (/docs/source/_build)
* Add a caveat about autofire+normal fire mapping
* Add -lowlatency to the docs.
2019-11-25 18:51:44 +11:00
algestam d6bddeed59 doc: document vulkan and d3d12 as possible bgfx rendering backends (nw) 2019-11-06 20:17:13 +11:00
Vas Crabb ecde621979 (nw) fix MPU4 video crash, clean up a little 2019-10-27 15:31:50 +11:00
Vas Crabb f81fbdb8d4 Make devdelegate more like devcb for configuration. This is a
fundamental change to show device delegates are configured.

Device delegates are now aware of the current device during
configuration and will resolve string tags relative to it.  This means
that device delegates need a device to be supplied on construction so
they can find the machine configuration object.  There's a
one-dimensional array helper to make it easier to construct arrays of
device delegates with the same owner.  (I didn't make an n-dimensional
one because I didn't hit a use case, but it would be a simple addition.)

There's no more bind_relative_to member - just call resolve() like you
would for a devcb.  There's also no need to cast nullptr when creating a
late bind device delegate.  The flip side is that for an overloaded or
non-capturing lambda you'll need to cast to the desired type.

There is one less conditional branch in the hot path for calls for
delegates bound to a function pointer of member function pointer.  This
comes at the cost of one additional unconditional branch in the hot
path for calls to delegates bound to functoids (lambdas, functions that
don't take an object reference, other callable objects).  This applies
to all delegates, not just device delegates.

Address spaces will now print an error message if a late bind error is
encountered while installing a handler.  This will give the range and
address range, hopefully making it easier to guess which memory map is
faulty.

For the simple case of allowing a device_delegate member to be
configured, use a member like this:

    template <typename... T> void set_foo(T &&...args) { m_foo_cb.set(std::forward<T>(args)...); }

For a case where different delegates need to be used depending on the
function signature, see src/emu/screen.h (the screen update function
setters).

Device delegates now take a target specification and function pointer.
The target may be:
* Target omitted, implying the current device being configured.  This
  can only be used during configuration.  It will work as long as the
  current device is not removed/replaced.
* A tag string relative to the current device being configured.  This
  can only be used during configuration.  It will not be callable until
  .resolve() is called.  It will work as long as the current device is
  not removed/replaced.
* A device finder (required_device/optional_device).  The delegate will
  late bind to the current target of the device finder.  It will not
  be callable until .resolve() is called.  It will work properly if the
  target device is replaced, as long as the device finder's base object
  isn't removed/replaced.
* A reference to an object.  It will be callable immediately.  It will
  work as long as the target object is not removed/replaced.

The target types and restrictions are pretty similar to what you already
have on object finders and devcb, so it shouldn't cause any surprises.
Note that dereferencing a device finder will changes the effect.  To
illustrate this:

    ...
    required_device<some_device> m_dev;
    ...
    m_dev(*this, "dev")
    ...
    // will late bind to "dev" relative to *this
    // will work if "dev" hasn't been created yet or is replaced later
    // won't work if *this is removed/replaced
    // won't be callable until resolve() is called
    cb1.set(m_dev, FUNC(some_device::w));
    ...
    // will bind to current target of m_dev
    // will not work if m_dev is not resolved
    // will not work if "dev" is replaced later
    // will be callable immediately
    cb2.set(*m_dev, FUNC(some_device::w));
    ...

The order of the target and name has been reversed for functoids
(lambdas and other callable objects).  This allows the NAME macro to
be used on lambdas and functoids.  For example:

    foo.set_something(NAME([this] (u8 data) { m_something = data; }));

I realise the diagnostic messages get ugly if you use NAME on a large
lambda.  You can still give a literal name, you just have to place it
after the lambda rather than before.  This is uglier, but it's
intentional.  I'm trying to drive developers away from a certain style.
While it's nice that you can put half the driver code in the memory map,
it detracts from readability.  It's hard to visualise the memory range
mappings if the memory map functions are punctuated by large lambdas.
There's also slightly higher overhead for calling a delegate bound to a
functoid.

If the code is prettier for trivial lambdas but uglier for non-trivial
lambdas in address maps, it will hopefully steer people away from
putting non-trivial lambdas in memory maps.

There were some devices that were converted from using plain delegates
without adding bind_relative_to calls.  I fixed some of them (e.g.
LaserDisc) but I probably missed some.  These will likely crash on
unresolved delegate calls.

There are some devices that reset delegates at configuration complete or
start time, preventing them from being set up during configuration (e.g.
src/devices/video/ppu2c0x.cpp and src/devices/machine/68307.cpp).  This
goes against the design principles of how device delegates should be
used, but I didn't change them because I don't trust myself to find all
the places they're used.

I've definitely broken some stuff with this (I know about asterix), so
report issues and bear with me until I get it all fixed.
2019-10-26 12:47:04 +11:00
Firehawke 54b3968c74 New working software list additions (#5772)
* New working software list additions
-----------------------------------

apple2_flop_orig: Gauntlet, Go (Hayden), Ghostbusters, Galactic Wars, Guderian [4am, Firehawke]

* Add details on compiling MAME documentation. (nw)
2019-10-23 10:21:26 -04:00
Zoë Blade 900fc13e01 Fix spelling (#5770) 2019-10-21 12:12:04 +02:00
Vas Crabb 2032eb60a6 Allow per-layer blend modes supplied by driver for screens, as required
for Laserdisc overlays.

This is a change in behaviour, and it means that games like Golly!
Ghost! will need an explicit blend mode specified in the XML.  I'm not
entirely happy with the situation, but a better, more general solution
than this would require some serious refactoring to MAME's renderer.
2019-07-27 23:24:37 +10:00
Vas Crabb c38a3395e9 Make layout format more flexible:
* There is no longer a concept of "layers" - there are only screens and elements.
* Elements are now instantiated with <element ref="...">
* Screens and elements can have explicit blending mode specified with blend="..."
* Default blending mode for screens is "add" and default for other elements is "alpha"
* Other supported modes are "none" and "multiply"
* This removes the options to enable/disable layers individually - use views instead
* Legacy layouts can still be loaded, and support won't be removed for at least a year

The current artwork model is over-stretched.  It's based on a Space
Invaders cabinet model, and isn't applicable to a lot of the systems
MAME emulates now.  The fact that MAME has to switch to an "alternate"
mode to deal with games like Golly! Ghost! without requiring pre-matted
bitmaps shows that the Space Invaders model wasn't even adequate for
general arcade use.  It shows in that for a lot of the systems that
heavily depend on artwork, people just seem to randomly choose layers
for elements until they get something that works.  Also, the fact that
MAME will switch to an alternate (Golly! Ghost!) mode depending on the
combination of elements is a trap for people learning to make artwork.

There are cases that the current approach of implying the blending mode
from the layer doesn't work with.  Examples include LEDs behind
diffusers (requires additive blending for layout elements), and mutliple
stacked LCD panels (requires RGB multiplication for screens).

For configurability, it's now a lot easier to make multiple views using
groups.  For example, if you want to make it possible to hide the
control panel section of your layout, you can put the control panel
elements in a group and create views with and without it.

I will gradually migrate the internal artwork to use the new approach.
I have an XSLT stylesheet that helps with this, but I'm not comfortable
adding it because it isn't a complete solution and it still requires
manul steps.

I wanted to get the re-worked pointer handling done sooner so I could
push them both at the same time, but unfortunately various things have
prevented me from progressing as quickly as I wanted to.  Sorry guys,
that stuff's going to have to wait.
2019-07-06 00:23:20 +10:00
Firehawke 50d72f5e71 Overhaul to advanced gun instructions (nw)
This cleans up spelling and other issues in the original text.

This work is still prototype and will probably require fine-tuning between Vas and myself.
2019-05-28 22:24:26 -07:00
Vas Crabb 9037a85e32 (nw) Fedora users need this now that X11 XInput is enabled by default - no clue about other Linuxes 2019-04-26 01:55:17 +10:00
R. Belmont efdaa09d54
Merge pull request #4914 from kiall/docs-linux-lightguns
WIP: Document Linux Lightguns with Xinput
2019-04-25 09:41:30 -04:00
Henrik Algestam 731c3f9dc0 doc: add python to list of required ubuntu packages (nw) 2019-04-23 17:12:00 +02:00
Kiall Mac Innes 526e2cb3b1 Document Linux Lightguns with Xinput
Add a new doc page within the 'Advanced Configuration' section which
describes how to enable Lighuns on Linux using the XInput lightgun
provider.
2019-04-21 12:57:51 -07:00
Vas Crabb 97b6717027 (nw) Clean up the mess on master
This effectively reverts b380514764 and
c24473ddff, restoring the state at
598cd52272.

Before pushing, please check that what you're about to push is sane.
Check your local commit log and ensure there isn't anything out-of-place
before pushing to mainline.  When things like this happen, it wastes
everyone's time.  I really don't need this in a week when real work™ is
busting my balls and I'm behind where I want to be with preparing for
MAME release.
2019-03-26 11:13:37 +11:00
andreasnaive b380514764 Revert "conflict resolution (nw)"
This reverts commit c24473ddff, reversing
changes made to 009cba4fb8.
2019-03-25 23:13:40 +01:00
hap 2b53b22bb5 layout doc: reword (nw) 2019-03-25 13:04:27 +01:00
hap cdde287597 layout doc: correction and add inputraw (this one actually does work the way inputmask was documented before) (nw) 2019-03-24 23:30:02 +01:00
AJR b84397f786 Make -nonvram_save also inhibit saving of "battery" NVRAM for image devices 2019-02-19 20:47:39 -05:00
Vas Crabb 34ebe564b0 (nw) omission, formatting 2019-02-18 21:55:45 +11:00
Vas Crabb 8ffff5d2d3 (nw) misc stuff:
* Document cross-compilation options
* Use lowercase for some libraries that are lowercase in system32 on Windows anyway
* Make USE_BUNDLED_LIB_SDL2=0 not use the bundled SDL
2019-02-18 21:13:44 +11:00
cam900 e65f6d75e1 device_memory_interface.rst : Correct docs 2019-02-18 00:34:05 +11:00
Olivier Galibert 7e53d69069 Add svg->pdf conversion support 2019-01-28 11:09:20 +01:00
Vas Crabb 9ce054c04b slight logo update (nw) 2019-01-28 17:50:38 +11:00
Firehawke 437b7a1c90 Initial implementation of new logo for docs (nw) (#4566)
* Initial implementation of new logo for docs (nw)

Behold the power of SVG!

* 100% gives the same results (nw)
2019-01-28 17:43:37 +11:00
Vas Crabb 995ba92e83 update docs (nw) 2019-01-28 03:59:45 +11:00
algestam 2619be3e18 Doc: Minor fix (nw) (#4547) 2019-01-22 19:09:26 +01:00
Firehawke ff8cda02cb Correct compilation packages (for #4507) and finish cleanup on previous docs updates. (nw) (#4509)
* Correct the compilation packages [partial for #4507] (nw)

* Minor corrections, joymap adjustments (nw)
2019-01-13 11:18:09 -05:00
Vas Crabb 64c1f2eb5b make INI file loading examples match current behaviour at least (nw) 2019-01-12 05:37:24 +11:00
Vas Crabb 4a6f5ee78f better documentation for compiling on Windows (nw) 2019-01-12 02:23:28 +11:00
Stiletto a5461d9d6b
2018 -> 2019 changes (nw)
* 2018 -> 2019 changes (nw)
2019-01-10 17:01:26 -05:00
Vas Crabb 4c444b2a00 more command line doc cleanup (nw) 2019-01-11 01:37:17 +11:00
Firehawke 9e3e966dea Major formatting update for command line options, copyright/version update (#4470)
* Update copyrights and docs revision (nw)

Updates copyright on existing 2018 entries to 2019 (and one 2016)
Updates the docs compilation script to MAME 0.205 and 2019 copyright.

* Further formatting overhauling (nw)

Clamp to 80 column where possible; it makes it easier to track errant
line breaks, etc.
Also begin standardizing tab formatting and two spaces after period.

* Further corrections to command line materials (nw)

* More adjustments for Cuavas (nw)

Getting closer to acceptable.
2019-01-11 01:06:52 +11:00
Vas Crabb cba80b7182 Make informational verbs a bit more consistent, reduce copy/pasted code, a slight performance improvement for reading localisation files, and more documentation clean-up/correction/clarification 2019-01-04 01:12:02 +11:00
Firehawke 6432d66037 Case sensitivity training for INI (nw) (#4455)
* Case sensitivity training for INI (nw)

The world is not 100% Windows, so case sensitvity is needed.

* Further standardization of the formatting (nw)

More to go...

* Pass 2 of new formatting wave (nw)

More to go, though.

* wave 3 of formatting cleanup (nw)

Further adjustments and cleanups, including unwanted tabs.

* Correct filtering instructions (nw)
2019-01-03 04:05:21 +11:00
Vas Crabb 8d40db558e additional documentation on compiling MAME (nw) 2019-01-01 23:30:41 +11:00
Vas Crabb 0374e6f542 (nw) update some documentation and get the MAME and legacy MESS pages more in sync. sorry if I've busted formatting, I can't currently build sphinx or man on this Windows notebook. 2018-12-25 02:57:15 +11:00
Vas Crabb 82501770de srcclean and cleanup (nw) 2018-10-28 14:00:12 +11:00
Firehawke a2e218f853 Clean up phrasing a bit on input from MG (nw) 2018-10-19 17:02:01 -07:00
Firehawke ae97f80cb3 Update FAQ (nw) with HLSL/BGFX update info, old external OPL2 support information 2018-10-19 16:47:47 -07:00
Wellington Uemura 62bf710d9d
Fixed broken document structure
* Those chapter numbers are auto generated by sphinx
* Fix the chapters not been bold like the rest of the documentation
* Fix chapter numbers not in sync with the rest of the documentation
* Change the last two chapters to keep up with the document consistency
* Fix bold for nscsi_full_device
2018-10-04 15:42:44 -03:00
Scott Stone 9c0c084d18 Misc. document fixes (nw) 2018-09-26 03:34:20 -04:00
Scott Stone 4861195216 Some more documentation structure fixes (nw) 2018-09-24 15:32:17 -04:00
Scott Stone 91b9f92ddc Misc documentation fixes as brought up by other developers (nw) 2018-09-24 15:20:49 -04:00
Scott Stone 3e94624a08 reference fix (nw) 2018-09-24 14:03:31 -04:00
Scott Stone fdb070c61d Started commandline documents update to dismiss items no longer in source and start listing recently added commands. More work to come. [Tafoid] 2018-09-24 13:55:18 -04:00
Wellington Uemura 1ab4cac22c
Add missing short commands
I've noticed this while I was translating the manual.
2018-09-13 20:33:40 -03:00
Firehawke 43aa0dbc75 Reword the entire merged set example to avoid long sentence soup (#3857)
* Reword the entire merged set example to avoid long sentence soup, also clarify parent/clone (nw)

* Per request, adjust phrasing slightly more. (nw)
2018-08-17 14:43:01 +10:00
ajrhacker 6d20c2322e
Merge pull request #3843 from felipesanches/wuemura_typo_fix_3805
Fix a typo (found by Wellington Uemura, @katananja) and...
2018-08-09 23:13:26 -04:00
Wellington Uemura 1b47072e49 Fix a typo (found by Wellington Uemura, @katananja) and...
... also replace the '--' by a Harvard comma, as suggested by @cuavas.
(see also: pull request #3805)
2018-08-09 18:49:06 -03:00
Vas Crabb e0df7a929f finish off layout documentation for now 2018-08-03 16:54:36 +10:00
Vas Crabb 6ea9ff9042 (nw) Further layout work:
* Allow <orientation> and <color> to work on group references
* Fix some corner cases where group bounds could be miscalculated
* Fix a corner case where MAME could incorrectly refuse to instantiate groups
* Add more checks to complay.py
* Document more of the layout format
2018-08-02 23:11:17 +10:00
Vas Crabb 4c0c840f96 (nw) be less eager to shadow variables in layouts, make highlights visible on white squares in modena 2018-07-31 23:54:12 +10:00
Vas Crabb 781d943b36 (nw) more layout documentation 2018-07-31 21:40:20 +10:00
Vas Crabb 0ce07a8a1e (nw) more render work:
* Clean up some corner cases in layouts with repeating blocks
* Make complay.py validate many more elements and attributes
* Make complay.py easier to use for just validating a layout
* Remove redundant view from Sega VMU layout
* Make buttons visually respond to input in whousetc.lay
* Add view with LED displays as well as terminal for aim65_40 and use repeats
* Clean up some outdated "game" terminology in clifront.cpp
* Initiaise a couple of members in tap/tun network module
* Start documenting layout format
2018-07-31 04:18:28 +10:00
Vas Crabb ccfcb431d0 cherry-pick fixes from mainline and clean up some stuff (nw) 2018-07-23 12:29:25 +10:00
Vas Crabb 6669489679 allow repeating elements and groups - useful if you need e.g. a lot of numbered labels, but it limits complay.py's ability to check for invalid references as it can't evaluate expressions (nw) 2018-07-22 09:52:50 +10:00
Justin Kerk 7809e9005d Better Emscripten parameter handling, & update docs (nw) 2018-07-21 22:05:45 +00:00
Erik Dominikus 34be272b36 Document debugger expression number syntax 2018-03-27 02:06:25 +11:00
Nigel Barnes ab394331ce Spelling fix in castool documentation (nw) 2018-03-06 13:37:56 +00:00
Vas Crabb 7f6f2a03ff note required Emscripten version (nw) 2018-02-25 18:55:53 +11:00
Vas Crabb bd473383c8 support multiple patterns and devices in -listfull verb 2018-02-24 03:56:15 +11:00
Stiletto e51076bd41
(nw)
(nw)
2018-02-07 16:40:50 -05:00
Stiletto ec5d60720f
Minor updates (nw)
Minor updates (nw)
2018-02-07 16:38:41 -05:00
Firehawke b2e11d00e0 More docs work: escapes, debugger update (nw) (#3168)
* Missed a couple escape sequences. (nw)

* A little more escaping, acronym fixes, fix oddity in symlist (nw)

* Update debugger internal help to match docs (nw)

* Lowercasing for CPU in command parameters, fix casing on ASCII. (nw)
2018-02-05 20:27:02 +11:00
Firehawke 752cf3d073 Missed a couple escape sequences. (nw) 2018-02-03 19:26:25 +11:00
Firehawke 87cc4b5c4b Terminology cleanup second pass (nw) 2018-02-01 16:58:52 +11:00
Firehawke 010d35fa3f Final pass of verbiage cleanup. (nw) 2018-02-01 16:58:52 +11:00
Firehawke 699de02498 A few corrections for wave 2, more to come. (nw) 2018-02-01 16:58:52 +11:00
Firehawke 7322eeccc3 Terminology update wave 1 (nw) 2018-02-01 16:58:52 +11:00
Firehawke f481e6b23a Overhaul commandline section of docs, includes index with linkable anchors. (#3112)
* The first set of commandline overhauls. (NW)

* Correct case on headings, further improvements to index, spelling fix

* More updates to the index and cleanup to the commandline stuff. [NW]

* More core options in the index. [NW]

* Finished multiplatform commandline index [NW]

* Completion of first revision commandline index [NW]
2018-01-25 08:37:48 +11:00
Stiletto feecaac20e
update docs version
update docs version
*nw* just taking care of an annoyance. As far as we know, docs are in sync. If not, it's easily fixed.
2018-01-16 13:56:02 -05:00
Firehawke 88c8b5b0c7 Add additional memory operators per request (NW) (#3067)
* Add additional memory operators per request and further cleanups to expressions (NW)

* Requested adjustments to expressions. (NW)
2018-01-15 15:25:23 +11:00
Firehawke f2859d0db0 Correct command heading case and adjustments to expressions (NW) 2018-01-15 02:11:15 +11:00
Firehawke 18d3d5ac50 First pass of MAME Debugger help for documentation. (NW) 2018-01-13 21:56:18 -07:00
Nigel Barnes 13b75ab76a Updated documentation for castool and added floptool (nw) 2018-01-11 20:52:49 +00:00
Jonathan Holt c25b98226d Updates "2017" strings to "2018" where relevant. 2018-01-06 00:48:05 +11:00
Firehawke 52667a4b20 Basic anchor links for FAQ page (#2975) 2017-12-27 14:23:37 -05:00
vadosnaprimer 7e7f2fafd0 rewind implementation fixes and improvements
- reset scheduler savestate to what it was for years before rewind
-- changing saved variables should be done after thorough testing. right now, adding some vars breaks some machines, adding other vars breaks others
- switch to megabyte-wise capacity
-- savestate size greatly differs between machines, relying on state count is unstable
- switch to internal indexing
-- no longer depends on inaccurate machine time
- rewind accelerator key in debugger (Ctrl+F11)
- report capacity hit (once), with some useful info
- make error reports saner
- mention rewind and rewind_capacity in the docs
2017-12-22 04:39:14 +03:00
Stiletto c8f7dfe105
(nw) 2017-12-21 07:51:28 -05:00
Stiletto ded50220ad
(nw) more minor typo fixes for docs.mamedev.org 2017-12-14 00:57:18 -05:00
Firehawke 9ece34eb21 Revert "Revert "Merge branch 'master' of https://github.com/mamedev/mame""
This reverts commit 54155441e9.
2017-12-13 21:31:27 -07:00
Firehawke 54155441e9 Revert "Merge branch 'master' of https://github.com/mamedev/mame"
This reverts commit f537428e5a, reversing
changes made to 0d70d79810.
2017-12-13 21:01:10 -07:00
Stiletto edb558b916
(nw) more self-service 2017-12-13 15:11:37 -05:00
Stiletto 34ab1202e7
Update whatis.rst
(nw) self-service
2017-12-13 14:26:34 -05:00
AJR 412ef97d71 No more UINT (nw) 2017-12-10 15:32:59 -05:00
AJR e733af5b08 Documentation update (nw) 2017-12-10 15:32:24 -05:00
Olivier Galibert 6caef2579a dvdisasm: Overhaul [O. Galibert]
Disassemblers are now independant classes.  Not only the code is
cleaner, but unidasm has access to all the cpu cores again.  The
interface to the disassembly method has changed from byte buffers to
objects that give a result to read methods.  This also adds support
for lfsr and/or paged PCs.
2017-11-26 17:41:27 +01:00
hap 2069183658 doc: update MAME short description (nw) 2017-11-05 18:12:28 +01:00
hap 560c8192de leaving MESS as-is (nw) 2017-11-05 02:06:40 +01:00
hap adb7ce7b2e put original abbreviation meaning as trivia here (nw) 2017-11-05 02:01:20 +01:00
hap 7d7c2c5507 make emulator description generic (nw) 2017-11-05 01:50:16 +01:00
Martin Lindhe b3c2645085 fix some typos (#2772) 2017-11-03 14:58:54 +01:00
Vas Crabb cebff96608 move some content for release archive out of build repo into main repo 2017-08-14 19:30:35 +10:00
Vas Crabb 1e8c0b23c3 This is too contentious, please put it up for review
Revert "Changes to debugger memory address translation"

This reverts commit bb0964f9a2.
2017-08-01 15:19:44 +10:00
AJR bb0964f9a2 Changes to debugger memory address translation
- memory_translate now returns an address space number rather a boolean flag, permitting addresses in part of one space to map to an entirely different space. This is primarily intended to help MCUs which have blocks of internal memory that can be dynamically remapped, but may also allow for more accurate emulation of MMUs that drive multiple external address spaces, since the old limit of four address spaces per MAME device has been lifted.
- memory_translate has also been made a const method, in spite of a couple of badly behaved CPU cores that can't honestly treat it as one.
- The (read|write)_(byte|word|dword|qword|memory|opcode) accessors have been transferred from debugger_cpu to device_memory_interface, with somewhat modified arguments corresponding to the translate function it calls through to if requested.
2017-08-01 00:21:19 -04:00
Michael.S.G 02cfda6957 Include -output option in documentation
Include -output and it's available options in documentation.
2017-07-05 21:38:39 +10:00
Brian King 834da5a8c1 Updated Fedora instructions
DNF is now preferred package manager. alsa-lib-devel is also required (not mentioned in the current docs)
2017-07-04 12:00:51 -05:00
Olivier Galibert cbbbd07484 dimemory: Lift the cap on the number of address spaces per device [O. Galibert] 2017-07-03 08:03:57 +02:00
Olivier Galibert cb1930f6e6 Rename AS_DECRYPTED_OPCODES to AS_OPCODES [O. Galibert] 2017-07-03 08:03:57 +02:00
Stiletto 580898e4ca (nw)
(nw)
2017-06-25 10:34:31 -04:00
Dan Amador 3a43ec44cc Update luaengine.rst 2017-05-22 18:08:28 -05:00
Stiletto 4803de2501 (nw)
(nw)
2017-05-10 14:38:31 -04:00
Stiletto 80b155c290 (nw)
(nw)
2017-05-10 10:49:13 -04:00
Stiletto 847e0a1d14 update edit docs link (nw)
update edit docs link (nw)
2017-05-10 10:41:29 -04:00
Prayag Verma eb7b1f3d20 Fix typos
slighly → slightly
transistion → transition
2017-03-24 23:26:03 +05:30
Stiletto 9db7b63e9a Updates "2016" strings to "2017 where relevant.
Updates "2016" strings to "2017 where relevant.
2017-01-24 17:29:49 -05:00
Vas Crabb 66f1cb5f3a srcclean again (nw) 2016-11-30 07:04:04 +11:00
Olivier Galibert 0136468462 dirom: Document the interface evalution [O. Galibert] 2016-11-28 19:16:39 +01:00
ImJezze e6580c50a2 Corrected HLSL documentation
- removed -antialias option (does not exist anymore)
- added missing -vector_beam_smooth option
- fixed suggested default values for -bloom_lvl_weights options (were messed up in the last update)
2016-11-14 15:59:15 +01:00
Firehawke ce943bd45b NW - More documentation updates..
* Fix a few 'mess' references.
* Add important note for -listslots
* FAQ: Wouldn't MAME be faster if X?
2016-10-29 23:32:36 -07:00
Tomer Verona 845b36dae2 Adding id() property to input_device
This change adds id() property to input_device, which represents the
unique device id. This allows the osd layer when creating a device to
pass a friendly display name along with a unique identifier.

Currently the device id is only used to map a physical controller device
to controller id, but can be used more generally in the future. For raw
input devices, we use the full raw input name as the device id. For all
other devices, we fall back to device name as the device id. The
"uniqueness" of the device id is not currently enforced in code.
2016-09-20 12:19:58 -07:00
Tomer Verona 32ea8266a3 A couple of fixes
- Fix null-reference exception when mapping device to unused (null)
controller index
- Restrict device map to controller configs
2016-09-20 01:24:36 -07:00
Tomer Verona 0ed1ce5663 Tweak info message 2016-09-14 17:53:34 -07:00
Tomer Verona 2bd18d5fea Support for configuring device to conrtoller id
This change adds support for configuring device to conrtoller id. This
allows for stable controller ids even if USB devices are plugged /
unplugged, system is rebooted, etc.

See documentation for additional context.
2016-09-12 18:35:36 -07:00
Olivier Galibert a2c306e923 dimemory, dirom: Add some documentation [O. Galibert] 2016-09-06 12:47:20 +02:00
Firehawke 9d93c07c66 First draft on ROM management for newbies, FAQ entry on common problems with unofficial builds 2016-09-05 00:21:23 -07:00
Miodrag Milanovic d5c646b336 Update permissions (nw) 2016-08-24 15:30:19 +02:00
Miodrag Milanovic cb30b9d307 Added documentation to main tree (nw) 2016-08-24 15:16:43 +02:00
Miodrag Milanovic a86a53fb64 remove old doc content (nw) 2016-08-24 15:16:43 +02:00
Cesare Falco 8fe3ae2cef Updated *nix man pages. 2016-07-21 19:08:08 +02:00
ImJezze 6ea15072a7 Procedural texture for vectors in HLSL
* added simple procedural texture for vectors with rounded line ends and beam smoothness
* added optional -vector_beam_smooth option
* removed -antialias option, antialiasing is now always applied, except for plain D3D
2016-06-05 23:50:44 +02:00
ImJezze 92c2bdf917 Normalized vector attenuation settings
- vector_length_ratio is now independent from screen size
- changed vector_length_ratio range from [0.0, 1000.0] to [0.0, 1.0]
- updated display name and description of vector_length_scale vector_length_ratio
2016-05-22 20:54:30 +02:00
Jordi Mallach 6a0754a3e4 Remove testkeys.1 and all references to it. 2016-04-30 01:17:47 +02:00
ImJezze 8ed3a7d94a Refactored distortion pass
- separated curvature parameter into distortion, cubic_distortion and distort_corner
- distortion and cubic_distortion can be negative, to compensate each other
- distort_corner is intependent from the image distortion
2016-04-19 21:13:20 +02:00
Jordi Mallach 81751745c1 Get rid of some options that no longer exist. 2016-04-14 22:51:12 +02:00
Miodrag Milanovic 528a39fc54 moved man files to proper location (nw) 2016-04-03 17:19:41 +02:00
Scott Stone 28c9be35ea Change INIPATH default to cover new HLSL presets (ini/presets) (nw) 2016-03-30 00:38:08 -04:00
ImJezze 19bbdaac35 Moved presets to subfolder (nw)
- added lcd-matrix.ini and vector-mono.ini
2016-03-28 21:58:17 +02:00
ImJezze fe9dfdbf99 Refactored Bloom
- reduced raster bloom level to 8
- extended vector bloom level to 15
- changed vector bloom to be less blocky
- removed bloom_lvl9_weight and bloom_lvl10_weight options
2016-03-28 20:19:01 +02:00
ImJezze 41595c05c4 Change vector and gameboy preset (nw) 2016-03-26 11:18:08 +01:00
ImJezze c731b59cbe Added oversampling option
- and some cleanup
2016-03-25 16:40:32 +01:00
ImJezze c2d4e3c018 Cleanup (nw)
- options are reset to loaded preset when game is closed
- changed default values of options to result in no effects activated
- init_slider_list() does not returns but sets g_slider_list directly
- removed unnecessary oriented_vector_texcoords
2016-03-13 17:11:08 +01:00
ImJezze a026a582f1 Merge pull request #15 from mamedev/master
Sync to base master
2016-03-12 12:31:13 +01:00
Miodrag Milanovic d4fe78a48a Added README and LICENSE files (CC0) to folders containing meta-data or documentation (nw) 2016-03-05 10:31:41 +01:00
jbu 8bb033276a mame.txt: remove surplus "under" 2016-03-04 17:49:15 +01:00
balr0g aa2d32e426 proofreading (nw) 2016-03-04 10:07:37 -05:00
Miodrag Milanovic 1b7317f004 typos, thanks Logan (nw) 2016-03-04 13:30:03 +01:00
Vas Crabb f6d0dc13ee More doc updates/clarifications 2016-03-04 22:15:05 +11:00
Vas Crabb 1f4f10f1c5 Clean up, update to reflect inclusion of more systems 2016-03-04 21:36:19 +11:00
Miodrag Milanovic 35ccf865aa deleted old license and restrictions mentioned in mame.txt (nw) 2016-03-04 11:04:29 +01:00
ImJezze cc24a339d8 Merge remote-tracking branch 'refs/remotes/mamedev/master'
Second attempt
2016-02-21 11:48:45 +01:00
ImJezze e57c90084c Quality and Performance improvements
- HLSL now uses NPOT sized target surfaces (breaks compatibility with
graphics cards based on R300/R400/NV30 and older)
- HLSL target surfaces now have the size of the screen canvas
- removed HLSL pre-scale factor
- HLSL now uses a sharp bilinear interpolation to pre-scale textures to
screen canvas size, based on [Themaister's] implementation
- improved overall performance (based on the previously required
pre-scale factor, you might notice a 5-50% speed-up depending on your
graphics card, more if you used a higher pre-scale factor)
- improved shadow mask quality (pixel-perfect) in screen-mode
- fixed half source texel offset of bloom level alignment
- removed ./hlsl/artwork_support folder
- all shaders after pre-scale are now based on screen coordinate
(workaground, till both raster and vector pass can work on texture
coordinates)
- disabled distortion shader for more than one screen and for artworks
in full mode, does not affect artworks in copped mode (workaground, till
both raster and vector pass can work on texture coordinates)
- moved compute_texture_size() from texture_info to texture_manager (nw)
2016-02-20 21:58:56 +01:00
Jeffrey Clark bacced3c81 lua api: cleanup options handling and fix cheat state return value (nw) 2016-02-16 15:28:46 -06:00
Jeffrey Clark 6db430bafc Extend mame LUA api (nw) 2016-02-14 19:30:37 -06:00
Justin Kerk 99d0ae34cc Add a document with Emscripten build instructions 2016-02-04 20:37:36 -08:00
ImJezze d516871e6f NTSC Refactoring and Options
- merged YIQ encode and decode pass into one NTSC pass
- added options for most NTSC settings
- reduced sample count to 64
- changed default O value to 0
- fit NTSC signal jitter between a reasonable limit of 0 and 1
- fit A and B value between a reasonable limit of -1 and 1
- fit scanline jitter between a reasonable limit of 0 and 1
- added hum bar simulation based on [MooglyGuy's] GLSL port of the mame
shader pipeline
- added monochrome-chessboard.png
- added slot-mask-aligned.png (to simulate a TFT LCD)
2016-01-25 22:02:24 +01:00
ImJezze ff77b7897b Cleanup (nw)
- renamed shadow_mask_type to shadow_mask_tile_mode
- renamed bloom_type to bloom_blend_mode
- implemented "Source" shadow mask tile mode for artwork_support/post.fx
2015-12-26 12:27:07 +01:00
ImJezze 1b373eb812 Extended Shadow Mask and Bloom functionality
- added shadow mask type option to choose between "Screen" and "Source"
tile mode ("Screen" is the default as before)
- added bloom type option to choose between "Addition" and "Darken"
blend mode ("Addition" is the default as before)
- the alpha channel of a shadow mask is now filled with the background
color of the screen by the amount of the inverted alpha value
- added monochrome-matrix.png which can be used in combination with
"Source" tile mode and "Darken" blend mode to simulate a STN LCD, for
example
2015-12-25 20:02:47 +01:00
ImJezze b06d506fd5 Fixed reset of HLSL settings
- fixed bug that resets the HLSL settings when the screen size has
changed
- removed hardcoded HLSL presets
- updates HLSL readme
2015-11-08 22:46:08 +01:00
Robbbert 7822e262fe Small doc update. 2015-07-18 11:42:30 +10:00
Olivier Galibert 88949a5b47 memory: Remove support for decrypted bases, use an address space instead [O. Galibert] 2015-06-24 08:43:34 +02:00
Scott Stone 03a5bfa56f Updated documents to reflect new commands added and made some additions and fixes. (nw) 2015-06-23 19:22:06 -04:00
Scott Stone 8f4d8bf37e Addition of commands and details as well as some reordering to match -showusage output (nw) 2015-05-28 14:39:59 -04:00
balr0g 6c34d7366e No longer need this (nw) 2015-05-25 10:20:51 -04:00
balr0g 634eb8edf9 Further clarifications (nw) 2015-05-25 10:00:00 -04:00
balr0g 7006c39be4 Properly, legally handle license stuff as we are still contacting people (nw) 2015-05-25 09:47:10 -04:00
Miodrag Milanovic 24461e1355 Update license information on github (nw) 2015-05-25 14:33:52 +02:00
Luca Bruno 87babe720a docs: document LUA color format and screen origin
Signed-off-by: Luca Bruno <lucab@debian.org>
2015-04-21 21:49:42 +02:00
Zoë Blade 90f110f261 Fix various typos and spelling mistakes
I'm purposefully leaving /src/emu/bus/cbmiec/c1541.c's kernal.bin
as it is, as this particular spelling mistake was originally made
by Robert Russell, therefore is canon.  See
http://en.wikipedia.org/wiki/KERNAL for details.

I'm also leaving /src/emu/machine/nscsi_bus.c's RECIEVE as I don't
want to break anything, but it's worth someone looking into.

I renamed some variables in /src/mame/drivers/sfbonus.c,
/src/mame/video/tia.c and /src/mame/video/tia.h, so if anyone wants
to verify I didn't break anything, that would be nice.
2015-04-11 00:52:26 +01:00
Zoë Blade 4cc89fb552 Tidy whitespace in plain text files 2015-04-08 15:27:15 +01:00
Zoë Blade ef56cf3e1b Tidy documentation 2015-04-05 19:51:18 +01:00
Scott Stone 0d8fea30ec documentation fix for docs/hlsl.txt (nw) 2015-03-25 15:43:57 -04:00
Luca Bruno 1fa8b4ea4f docs: add initial documentation for luaengine API
This commits add some initial documentation for current API
exposed via luaengine. This doc is meant to be a quick
walkthrough for script writers coming from mame-rr.

Full methods reference is not yet included, as the API is still
rapidly changing.

Signed-off-by: Luca Bruno <lucab@debian.org>
2015-03-16 12:03:09 +01:00
Zoë Blade 52e9bfd75d Tidy comments
Squashed commit of the following:

commit 8d8a0d9713d4614b22f06fda4cf948d4d5561de0
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Tue Dec 2 17:15:42 2014 +0000

    Revert fixes to libraries

    I'll fix those at the source, where possible.

commit 5dde94e3e60dcc622d5b782acaa62e590c62bafb
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Tue Dec 2 16:57:32 2014 +0000

    Add apostrophes

commit b27e168b58861f1ad0ca7af1c6ca1629cc6730ce
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Mon Dec 1 16:28:58 2014 +0000

    Fix some more word duplication

    I've left some instances of " in in " in, as they're ambiguous and
    may actually be correct.

commit a3dfd10cd501c3a521010942f950f5ca2c5395a7
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Mon Dec 1 10:35:03 2014 +0000

    Fix another typo

commit 01a3702209d9e880ac8f60dc4d74f26d426234fb
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Mon Dec 1 10:33:57 2014 +0000

    Fix more typos

commit 56c6fffd8769cdfab62c59c04d41b98b7f425262
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Mon Dec 1 10:30:19 2014 +0000

    Hopefully fix typos

    I'm not entirely sure about src/mame/drivers/nova2001.c line 933,
    as it could plausibly be either "which is not the top bit" or "which
    is now the top bit", with almost opposite meaning.

commit 906507b221de0175d236e252dc51f122cb56db23
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Mon Dec 1 08:39:55 2014 +0000

    Fix another typo

commit 14fcd939ae1c0570c10aacf00c6ea86724086f92
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Mon Dec 1 08:38:16 2014 +0000

    Fix some more word doubling in comments

commit d21283a447b94b28a38ec742a09fe425d77b55b2
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Sun Nov 30 23:06:07 2014 +0000

    Fix some more typos

commit 59b14d204af6d5983ea6dea2f5c8ad5bcc80460c
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Sun Nov 30 22:56:53 2014 +0000

    Tidy more

commit 9b3c9a868596c04c1a61b35aa8c96fb82c885149
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Sun Nov 30 22:43:30 2014 +0000

    Tidy more comments
2014-12-02 17:16:41 +00:00
Michaël Banaan Ananas 4f193a31da and what a fine horse it was 2014-10-26 02:00:27 +02:00
Michaël Banaan Ananas 818be1ef5e test 2014-10-26 01:55:15 +02:00
Olivier Galibert f5570dc9c6 If we were documented, we'd be dangerous (nw) 2014-09-17 20:50:32 +00:00
Alex W. Jackson f661e32ec8 Change remaining references to -nosound to -sound none in code and docs; move description of -sound option to OSD-specific doc files to be orthogonal to -video (nw) 2014-06-13 21:01:35 +00:00
Scott Stone 1358278e4d Correct format of -sound command in documents to match recent changes. (nw) 2014-06-13 20:17:06 +00:00
Scott Stone eb86cbcb77 Updated hlsl.txt to mirror fact that some commands are no longer valid (nw) 2014-03-22 09:56:40 +00:00
Olivier Galibert 7a9492213b (mess): Floppy subsystem documentation checkpoint. Incomplete, but
there's too many people looking at it not to push it. [O. Galibert]
2014-01-30 20:13:38 +00:00
Olivier Galibert f692af9cc0 placeholder 2014-01-30 20:13:05 +00:00
Dirk Best f503c9a88c add license info for some things i worked on, some small cleanups 2013-10-17 14:26:24 +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
Jonathan Gevaryahu e78f9c7638 add licenseinfo.txt for lookup of the newly added license tags; please add to this file if you multi-license using a license not listed in it 2013-10-15 22:13:10 +00:00
R. Belmont 5fa112b5a4 SDL.txt: edited by someone who actually knows what these do ;-) (nw) 2013-06-09 00:22:42 +00:00
Scott Stone 54915f17b1 Further SDL.txt document improvement (nw) 2013-06-08 22:31:35 +00:00
Scott Stone 4d2ee5eb67 Added SDL.txt document for users of SDL builds containing up to date listing of commands as well as updating parts of windows.txt and config.txt to take in account SDL differences. (nw) 2013-06-08 22:10:35 +00:00
Scott Stone 451c10e146 Updated windows related documentation (nw) 2013-06-07 12:57:05 +00:00
Scott Stone dbd2a940eb Adding recently added commands to official documentation (nw) 2013-06-07 11:57:26 +00:00
Scott Stone 01326586a9 Updating of DOCS/hlsl.txt for cover new command additions. (nw) 2013-06-06 22:18:40 +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
Olivier Galibert 90362d4baf m6502: Seriously untested multi-dispatch-table support [O. Galibert] 2013-03-20 16:14:39 +00:00
Curt Coder 9eb41bb391 2013 2013-01-01 09:00:57 +00:00