Commit Graph

12444 Commits

Author SHA1 Message Date
Nathan Woods
1cda375d5e Eliminated device_image_interface::make_readonly()
Take note that I eliminated make_readonly(); here is why I think the calls were unnecessary:
1.  All image loads through softlists are done through common_process_file(), and thus going to be readonly anyways
2.  The cassette.cpp call to make_readonly() seems to be a residual hack, if a failure occurs the image will be unloaded anyways
2016-08-09 22:27:24 -04:00
AJR
f9939f28a8 UI-related cleanup (nw)
- Create class ui::machine_info for holding calculated machine info and generating descriptive strings for the UI. This absorbs a number of unimportant core functions that existed only for the UI's convenience.
2016-08-09 20:31:34 -04:00
Vas Crabb
61579a4f16 Merge pull request #1214 from npwoods/more_diimage_softlist_stdstring_stuff
More softlist-related conversions of strings to std::string
2016-08-09 10:51:28 +10:00
Nathan Woods
01844ed061 More softlist-related conversions of strings to std::string 2016-08-08 19:51:32 -04:00
AJR
828f824708 Make address maps complain when entry bounds lie outside the global mask (nw)
- Alter a bunch of address maps so all validity checks pass. These includes global address masks in Hexaa and the Newbrain FDC (regression testing should be done here).
- Remove the Lisa wraparound read/write handlers.
2016-08-08 13:38:40 -04:00
Vas Crabb
6c8bb59ba2 Merge pull request #1206 from ajrhacker/memory_reset
New core input type: "Memory Reset"
2016-08-09 01:10:08 +10:00
Miodrag Milanović
f67311c5a5 Merge pull request #1180 from npwoods/split_softlist_code_redo
Redo of split of src/emu/softlist.[cpp|h]
2016-08-08 13:43:06 +02:00
therealmogminer@gmail.com
74e1aa4619 Fix benchmarking by adding additive-blend YUY16 support to rendersw, nw 2016-08-08 11:08:47 +02:00
AJR
c8d1050110 New core input type: "Memory Reset"
- In machines that store their settings and/or bookkeeping logs in some form of non-volatile memory, "Memory Reset" will reset them to some system-provided default.
- This replaces all existing inputs named "Memory Reset" and a few simply named "Reset" which are known to do this rather than reboot the system (a confusion to be avoided, though many systems will only acknowledge this input at boot time); others should be checked.
- The default key binding (F1) for this new input type is chosen partly to avoid conflicts with those used by gambling/mahjong games which are currently the only systems to use this, though broader use is envisioned.
2016-08-07 22:10:58 -04:00
R. Belmont
8b6f09adcc Merge pull request #1202 from npwoods/use_romentry_vector
C++-fiied code that iterates over rom_entry arrays (without usage of rom_[first|next]_*)
2016-08-07 16:05:30 -04:00
R. Belmont
9342233fda Merge pull request #1188 from npwoods/more_diimage_stdstring
More conversion of 'const char *' --> std::string in diimage
2016-08-07 15:58:00 -04:00
R. Belmont
d7370ae5fe Merge pull request #1159 from shattered/_74dec47
keyboard: add F16..F20 keys (present on DEC LK201 keyboard and its cl…
2016-08-07 15:52:57 -04:00
Nathan Woods
f5968efcea C++-fiied code that iterates over rom_entry arrays (without usage of rom_[first|next]_*) 2016-08-07 10:29:51 -04:00
Nathan Woods
7f5e233933 Created a tiny_rom_entry structure for the purposes of rom_entry declarations in code, and a first pass at the required core changes
to unpack tiny_rom_entry structures at runtime.

WARNING - I've done preliminary testing on a tiny build (pacman works), but nothing more.  I know for a fact that a full compile fails
2016-08-06 08:54:37 -04:00
AJR
da754c8078 Devfind revision phase 2 (nw)
- Eliminate read_safe as a global function and make it a method of optional_ioport (and required_ioport, for which it makes less sense).
- New constructor for optional_ioport_array and required_ioport_array using std::initializer_list to specify tag list
- Remove pointer/reference conversion operators for required_ioport and optional_ioport. Explicit getters like found() and target() are now required when dereferencing isn't wanted. Many drivers have been changed to use required_ioport_array and optional_ioport_array to make this cleaner.
- Update numerous drivers that were using read_safe to use I/O port finders generally. Port names have been kept the same as far as possible to avoid breaking saves.(Some of the optional finders should probably be required.)
- Give edfbl and monkelf their own memory maps so hacky input reading routines can be removed.
- Clean up some legacy static handlers in amiga.cpp and cubo.cpp.
2016-08-05 19:05:01 -04:00
Robbbert
a475f61dd8 Fixed ROM_FILL when fill value is hex. 2016-08-05 14:06:16 +10:00
Nathan Woods
ff064ba37a More conversion of 'const char *' --> std::string in diimage 2016-08-04 07:21:27 -04:00
Vas Crabb
ae0e3fbf57 quick fixes to some more stuff that isn't supplementary plane clean 2016-08-03 14:54:28 +10:00
Nathan Woods
a9e706915c This fixes issues where softlist items (that were not for floppies) were loaded from the software list menu
I'm still not 100% satisfied with this patch.  While I got rid of the weird path when hook_proc() was called for a software list item,
I still don't like the whole m_init_phase infrastructure in devices, which seems to be an arbitrary piece of state.  Baby steps...
2016-08-02 20:06:08 -04:00
Nathan Woods
f9db568146 Redo of split of src/emu/softlist.[cpp|h]
This is a redo of the split first submitted in #137, with the following differences:
* The newly refactored rom_entry data structure is used
* I've kept the refactored softlist code in src/emu, in order to defer the mechanical process of moving it
* I've kept includes of softlist[_dev].h out of diimage.h, so that changes to either do not trigger an emu.h recompilation
* Obviously, this goes against the latest master
2016-08-02 17:40:49 -04:00
Vas Crabb
889ecdfd4f Let's give the new srcclean a spin... 2016-08-02 16:59:02 +10:00
Nathan Woods
af967d1ee7 Fixed issue that prevented softlist items specified on devices from loading
The issue is that I expected any softlist items passed to devices to be fully qualified (e.g. - apple2e:flop1:agentusa) when in reality, they might not be.  Therefore, I changed the regex that identifies softlist items passed to devices from:

	\\w+\\:\\w+\\:\\w+

to:

	\\w+(\\:\\w+\\:\\w+)?
2016-08-01 23:16:46 -04:00
Nathan Woods
a7b00e3f6d Converted more stuff in diimage to use std::string instead of 'const char *' 2016-08-01 20:24:06 -04:00
Vas Crabb
062017977d Merge pull request #1176 from npwoods/fix_romload_fill
Fixed breakage caused by a change in how the byte for ROM_FILL is represented with recent changes
2016-08-02 09:52:42 +10:00
Nathan Woods
a2b0b2fbd4 Fixed breakage caused by a change in how the byte for ROM_FILL is represented with recent changes 2016-08-01 19:46:53 -04:00
Nathan Woods
764371c72c Changed device_image_interface::load() to take 'const std::string &' 2016-08-01 19:44:01 -04:00
Vas Crabb
871656c98c Merge pull request #1171 from npwoods/romentry_move_redo
Changes rom_entry from a struct to a class, storing its strings as stdd::string and separated the declaration into a new header
2016-08-01 22:51:23 +10:00
Nathan Woods
7384598c25 Added some default constructors to rom_entry(), and made it so changes to flags are done through a set_flags() accessor method 2016-08-01 08:48:23 -04:00
Nathan Woods
2d2a193c02 Fixing a stupid merge error that broke image loading 2016-08-01 08:13:10 -04:00
Nathan Woods
ee302246c9 Changes rom_entry from a struct to a class, storing its strings as std::string and separated the declaration into a new header.
This should really be followed up by further changes to eliminate the usage of the weird accessor macros in favor of conventional C++
accessors
2016-08-01 08:01:34 -04:00
Vas Crabb
15e7be7ac8 Turn image init/validate into scoped enums to avoid accidental casts to/from integer and boolean types
The image error should also be turned into a scoped enum - the menus were assuming it was the same thing as an init result
2016-08-01 18:47:22 +10:00
Nathan Woods
59ca4d1763 1. Merge branch 'master' into diimage_filetype_as_stdstring
2.  Introduced is_filetype(), instead of normalizing filetype() to lower case
2016-07-31 23:52:57 -04:00
Nathan Woods
7b7faffd01 Merge branch 'master' into separate_softlist_image_load 2016-07-31 22:42:27 -04:00
Nathan Woods
9d1a53bef3 Made a bunch of device_image_interface members private (instead of protected) 2016-07-31 17:55:26 -04:00
Nathan Woods
024f698364 Merge branch 'master' into separate_softlist_image_load 2016-07-31 15:20:49 -04:00
Nathan Woods
a4f24a24d3 This changes device_image_interface::filetype() to return 'const std::string &' instead of 'const char *'.
In the interests of removing burdens from client code, I also changed the following:
- filetype() will always return the file extension in lower case
- device_image_interface::filetype() will return the correct extension for files loaded as a part of softlists
- The code for extracting a file extension is now encapsulated in core_filename_extract_extension()

Client code has been updated
2016-07-31 15:06:06 -04:00
Miodrag Milanovic
91fcff1b6d cleanup (nw) 2016-07-31 20:29:24 +02:00
Miodrag Milanovic
22c7a00d57 reverse logic of IMAGE_VERIFY (nw) 2016-07-31 20:02:56 +02:00
Miodrag Milanovic
6f5e223853 for bool type use true and false (nw) 2016-07-31 20:02:56 +02:00
Vas Crabb
a0ce6c3b37 fix after pass through the diff 2016-08-01 01:20:03 +10:00
Miodrag Milanovic
f127621e13 made constexprs lower case and used constexpr for returning input value as well for rest of defines in osdcomm.h (nw) 2016-07-31 16:47:26 +02:00
Miodrag Milanovic
eaa70ae031 cleanup of some conversions (nw) 2016-07-31 16:41:26 +02:00
Miodrag Milanovic
d91322223b fixed clang (nw) 2016-07-31 15:59:39 +02:00
Miodrag Milanovic
184f7e5605 win compile fix due to previous changes (nw) 2016-07-31 15:31:22 +02:00
Miodrag Milanovic
aeadbfe2b1 fix linux compile (nw) 2016-07-31 14:59:01 +02:00
Vas Crabb
c703235246 Merge pull request #1165 from npwoods/diimage_add_format
Created device_image_interface::add_format() protected member and made device_image_interface::m_formatlist be private
2016-07-31 22:54:28 +10:00
Nathan Woods
b1b29cd44e Created device_image_interface::add_format() protected member and made device_image_interface::m_formatlist be private 2016-07-31 08:47:49 -04:00
Miodrag Milanovic
9667c6a8cc std::min and std:max instead of MIN and MAX, also some more macros converted to inline functions (nw) 2016-07-31 14:41:02 +02:00
Nathan Woods
5f1bb05263 Removed device_image_interface::has_been_created()
This method was necessary long ago when devices didn't have distinct load and create paths, which has since been addressed
2016-07-30 14:41:09 -04:00
Nathan Woods
81c8de57ca Changed device_image_interface::load() so that it is no longer responsible for both loading images and softlist items; now the latter
is done through a new method - device_image_interface::load_software()
2016-07-30 10:59:54 -04:00
Nathan Woods
0df4a2339a Three times is a charm 2016-07-30 09:28:48 -04:00
Sergey Svishchev
e86fd713e7 keyboard: add F16..F20 keys (present on DEC LK201 keyboard and its clones) 2016-07-30 16:26:00 +03:00
Nathan Woods
eb79ffac88 <+cuavas> you've changed the function, you get to change it properly! 2016-07-30 09:15:27 -04:00
Nathan Woods
cfd4397f3c Miscellaneous cleanups:
- Removed some c_str() calls when using util::zippath_parent()
- Removed the error code return value from set_image_filename()
- Consolidated error code translation (osd_file::error ==> image_error_t) in image_error_from_file_error()
- Other cosmetic improvements
2016-07-30 08:56:37 -04:00
Vas Crabb
5fe3b907af make buffered serial a mixin to promote reuse [Vas Crabb] 2016-07-30 20:34:16 +10:00
Vas Crabb
9c9ee49c9f Merge pull request #1156 from npwoods/zippath_strstring
Converted a number of zippath calls that took 'const char *' to std::string
2016-07-30 12:25:22 +10:00
Nathan Woods
a7bfc73cfb Changed various string arguments for emu_file::open() from 'const char *' to std::string 2016-07-29 20:53:46 -04:00
Nathan Woods
bf111bbc6e Converted a number of zippath calls that took 'const char *' to std::string 2016-07-29 18:00:46 -04:00
Nathan Woods
b12da9c090 Miscellaneous cleanups to diimage.[cpp|h]; mostly std::string stuff 2016-07-29 08:29:47 -04:00
Vas Crabb
90e457928f Make some constexpr functions comply with older C++11 rules to keep Visual Studio happy (nw) 2016-07-28 10:18:23 +10:00
AJR
af80bf0e69 Validity checking improvements
- Always print the name of each driver checked with -validate -verbose, and print before beginning the check to help detect crashes
- Fix already_checked test so that softlists get validated the first time, not every time but the first
- Remove #include "validity.h" where not required (nw)
- attotime::from_double cannot be constexpr because it uses floor (nw)
2016-07-27 09:12:55 -04:00
Vas Crabb
eac2a1fcc5 Keyboard/terminal improvements: [Vas Crabb]
* Mark lots of things constexpr in attotime and turn macros into functions
* Add base classes for HLE matrix keyboard and buffered RS232 device
* Make generic keyboard/terminal more usable
* Keyboard has configurable typematic delay/rate
* Keyboard has selectable JIS/ANSI layout
* Keyboard handles simultaneous keypresses more intuitively
* Keyboard uses meta to set high bit
* Terminal has configurable auto LF on CR, auto CR on LF and local echo
* Terminal has audible bell
* Untangle Olivetti M20 keyboard from generic_keyboard
* Add notes to Olivetti M20 keyboard emulation
* Make Olivetti M20 keyboard match physical layout
* Untangle RM Nimbus keyboard from generic_keyboard
* Fix natural keyboard mode with RM Nimbus
* Untangle x68k keyboard from generic_keyboard
* Improve x68k key names and mapping
* Improve x68k typematic behaviour
* Untangle QX-10 keyboard from generic_keyboard
* Keep NGEN keyboard barely working
2016-07-27 21:59:32 +10:00
Miodrag Milanovic
4887ce1844 Cleanups and version bump 2016-07-27 09:26:22 +02:00
Vas Crabb
7f784f365d Merge pull request #1146 from ajrhacker/debugcpu_valid
debugcpu: prevent nullptr exceptions when devices named in expression…
2016-07-26 13:42:07 +10:00
AJR
566c12db31 debugcpu: prevent nullptr exceptions when devices named in expressions lack memory interfaces 2016-07-25 23:20:52 -04:00
mahlemiut
ef22943d01 make ioport_list a map instead of unordered_map, should fix INP incompatibilities across compilers and platforms. 2016-07-25 21:28:19 +12:00
Vas Crabb
2ba37fd95d Merge pull request #1138 from ajrhacker/diimage_cleanup
Cleanups for device_image_interface (nw)
2016-07-25 14:01:26 +10:00
R. Belmont
41875a92af Merge pull request #1117 from shattered/_ded41cad
sm7238: new NOT_WORKING driver: SM 7238 (aka T3300) serial terminal
2016-07-24 14:43:01 -04:00
AJR
d7df2df4a7 Cleanups for device_image_interface (nw)
- Remove the loaded_through_softlist virtual method and add a boolean getter with the same name, replacing a few variables that provided similar but redundant flags.
- Remove call_softlist_load, which the previous change reduces to a simple, unnecessary wrapper.
2016-07-23 21:56:44 -04:00
Nathan Woods
4aa0ab1724 Moved src/emu/hash.[cpp|h] into src/lib/util, and namespaced that code (and hashing.[cpp|h]) into util:: 2016-07-23 12:49:33 -04:00
Vas Crabb
fe956e9aa9 Merge pull request #1131 from npwoods/consolidate_call_softlist_load
Consolidated implementations of device_image_interface::call_softlist_load()
2016-07-23 23:18:50 +10:00
Nathan Woods
e45d316bc9 Vas Crabb feedback: Replacing the enum with a class hierarchy, derived from 'software_list_loader' 2016-07-23 09:10:14 -04:00
Miodrag Milanovic
52f5d4d0c1 This part was not meant to be commited (nw) 2016-07-23 11:30:30 +02:00
Miodrag Milanovic
b2ebca6189 prevent crashing (nw) 2016-07-23 11:10:17 +02:00
Nathan Woods
87d53be505 Added a usage of std::find_if() in softlist 2016-07-22 07:51:56 -04:00
Nathan Woods
ae5dab64d7 device_image_interface::call_softlist_load() was a virtual function where every implementation was one of two copy-and-paste jobs. This change consolidates all of these implementations, replacing that virtual function with a mere hook that chooses which technique to perform 2016-07-21 21:10:18 -04:00
AJR
8995d84034 Cure software lists of validity checking errors (nw)
- Fix stupid logic errors in software_list_device::internal_validity_check
- Allow info and feature list entries to provide an empty string as the value
- Change a couple of null publisher entries in vz_cass.xml to "<unknown>"
2016-07-21 18:58:03 -04:00
Nathan Woods
7e729626ce Incorporating Vas Crabb feedback 2016-07-21 06:40:07 -04:00
Nathan Woods
a1e4e90619 Changed some usage of simple_list to std::list in the softlist code 2016-07-21 06:17:14 -04:00
Vas Crabb
880d31a573 std::string::c_str() const never returns nullptr
also get rid of extra length parameter using a template
2016-07-21 13:42:39 +10:00
Nathan Woods
40a9e78704 Vas Crabb feedback: Better adoption of move constructors, other cleanups 2016-07-20 19:16:30 -04:00
Nathan Woods
c86ab9dbac Exposed several strings as std::string on softlist objects, and fixed a few bugs 2016-07-20 09:44:27 -04:00
Nathan Woods
8e169de1cd Using std::string more pervasively in softlist.cpp 2016-07-19 22:19:08 -04:00
Nathan Woods
12369fe758 const correctness related changes to softlist 2016-07-19 20:40:45 -04:00
Sergey Svishchev
1930242988 sm7238: new NOT_WORKING driver: SM 7238 (aka T3300) serial terminal 2016-07-18 00:54:34 +03:00
R. Belmont
bc33ee65c4 Merge pull request #1073 from ajrhacker/render_crosshair
Crosshair refactoring (nw)
2016-07-16 06:07:11 -04:00
Vas Crabb
7d5da01f94 check a bunch more RGB operations in validity (nw)
implement the missing ones in rgbgen
format similar one-liners in a more tabular way
use default copy construct/assign
2016-07-15 16:18:42 +10:00
therealmogminer@gmail.com
c643372753 Make loop collation optional for debugger trace and traceover commands 2016-07-14 16:13:52 +02:00
Nathan Woods
109c81d17d Consolidating implementations of create_option_guide() that return nullptr 2016-07-13 20:04:45 -04:00
Vas Crabb
ac7c2ce2d4 Introduce validity checks for RGB utilities and fix bugs uncovered [Vas Crabb]
* Added several missing functions to rgbgen
* Fixed logical shift right in rgbgen
* Fixed sra that should be sra_imm in rdptpipe
* Added some simple SSE4.1 optimisations in rgbsse
* Re-organised rgbsse, rgbvmx and rgbgen to be in more logical order
* Fixed return on some modifying operators
* Made some more reference parameters const
* Removed inline qualifier from a number of methods as it's implied when body is present at declaration
* Mark some constructors explicit
2016-07-14 00:50:19 +10:00
Vas Crabb
5020bb162e fix item hilighting in debugger state view when scrolling [Vas Crabb]
better encapsulate debug_view_state::state_item

also check for debugger access for reads with side effects in osborne1 and s2636
2016-07-13 15:02:48 +10:00
Vas Crabb
f45998872c rgbvmx: fix the last little endian issue 2016-07-12 15:50:24 +10:00
Vas Crabb
91973008fa rgbvmx: fix bilinear_filter and blend on ppc64le 2016-07-12 14:57:59 +10:00
Vas Crabb
5bd80a2173 more const, start fixing ppc64le 2016-07-12 04:20:31 +10:00
Vas Crabb
21bde640e0 more PPC fix (nw) 2016-07-11 23:38:12 +10:00
Vas Crabb
269ed5c815 rgbvmx: use function-style casts, add explicit casts to keep newer GCC happy 2016-07-11 23:19:04 +10:00
Vas Crabb
066dab4bde better enum increment/decrement operators:
* deduce underlying type rather than assuming int
* return old value from post-increment/decrement
* return reference from pre-increment/decrement
2016-07-11 23:18:16 +10:00
Vas Crabb
7f3ced8c96 Fix scroll in debugger state view 2016-07-11 19:21:39 +10:00
Nathan Woods
4c25315d59 Introduced running_machine::compose_saveload_filename() function to convert a filename (for state save/load) to a fully qualified path 2016-07-10 16:25:10 -04:00
AJR
35b6cb7af1 Crosshair refactoring (nw)
- Individual crosshairs are now first-class objects, rather than bits of state scattered across half a dozen arrays. The class is named render_crosshair with a view towards incorporating crosshairs into layouts in the future, rather than managing them separately as crosshair_manager still does now.
- Removed the old crosshair_user_settings interface for adjusting crosshair settings, since the UI can access the new crosshair objects directly.
2016-07-10 10:26:49 -04:00
Vas Crabb
aaa3090dd3 clean up includes (nw) 2016-07-08 14:04:20 +10:00
Vas Crabb
1c0947a717 Merge pull request #1056 from npwoods/opresolv_cplusplusification
C++-ification of src/lib/util/opresolv.[cpp|h]
2016-07-08 12:37:58 +10:00
Nathan Woods
80a7239950 Changed image_device_format::extensions() to be a vector 2016-07-07 19:23:03 -04:00
Nathan Woods
e3cb2c7d78 C++-ification of src/lib/util/opresolv.[cpp|h] (moved to util:: namespace, changed option_resolution to be a class, etc) 2016-07-07 06:59:35 -04:00
Nathan Woods
4079da505e Changed diimage.cpp to use C++ comments 2016-07-05 21:47:30 -04:00
Nathan Woods
a620ba26cd Converted properties on image_device_format to return 'const std::string &' instead of 'const char *' 2016-07-05 21:36:04 -04:00
Nathan Woods
3b5d83e48b Created a typedef to define the type for device_image_interface::m_formatlist 2016-07-05 21:17:21 -04:00
ajrhacker
71053ad9dd feversoc: Hook up EEPROM; remap buttons (#1028)
feversoc.cpp: Hook up EEPROM; remap buttons, hook up lamps and serial RTC [AJR];

rtc4543.cpp: More complete implementation with better logging features. Added JRC6355E variant used by feversoc. [AJR]
2016-07-05 17:52:30 +02:00
Vas Crabb
9af1661a8b Merge pull request #1037 from npwoods/file_create_refactoring
File create refactoring
2016-07-05 13:26:30 +10:00
Nathan Woods
bdf2059bf4 As per Vas Crabb, readding overloads that take a std::string& parameter for the result 2016-07-04 23:22:37 -04:00
AJR
20427d78b4 Don't need debugcpu to translate (nw) 2016-07-03 17:23:47 -04:00
AJR
90b08e2995 Consolidate disassemble functions (nw) 2016-07-03 13:46:21 -04:00
Nathan Woods
de6bbdf176 Changed a few zippath related functions to return their strings as a return value, as opposed to passing in a destination buffer 2016-07-03 13:28:09 -04:00
Vas Crabb
4142ecd794 Use std::map for mapping XML tag name to layout component creation function - makes the code simpler and easier to read as well as being more scalable
Fix problem using layout_element::texture in vector - destructor frees resources but generated copy/assignment operators don't release them, leading to a problem any time vector expands or element is added/removed anywhere but end
2016-07-02 14:18:44 +10:00
AJR
421b8b28c0 Fix undefined symbols error in clang compile (nw) 2016-07-01 17:23:55 -04:00
Miodrag Milanovic
6e1adc4386 simplified memory management for save states and states (nw) 2016-07-01 19:51:07 +02:00
Miodrag Milanovic
bc01a8bfeb simple_list to vector in rendlay (nw) 2016-07-01 14:46:18 +02:00
Miodrag Milanović
17d2a77aa3 Merge pull request #1019 from ajrhacker/laycomp
Polymorphize layout_element::component (nw)
2016-07-01 13:59:20 +02:00
Miodrag Milanović
5886ed531e Merge pull request #994 from ajrhacker/dasm_override
Move disasm overrides into interface, reducing driver-debugger depend…
2016-07-01 13:55:12 +02:00
Miodrag Milanovic
d34724b3ab - removed FUNC_NULL macro
- made emu_timer register_save properly handle timer_expired_delegate()
- removed timer_expired_func and calls using it
2016-07-01 11:47:12 +02:00
AJR
dd96ec0f2f Polymorphize layout_element::component (nw) 2016-06-30 13:05:21 -04:00
Miodrag Milanovic
63f9a01f8c Cleanup and version bump 2016-06-29 08:34:30 +02:00
AJR
c88953784c Override method (nw) 2016-06-26 13:08:45 -04:00
AJR
7870e6d539 Delegatize dasm overrides (nw) 2016-06-26 13:03:08 -04:00
Miodrag Milanovic
8042037fd9 Added PugiXML and used it for hashfile (nw) 2016-06-25 19:54:44 +02:00
AJR
38c4b762f0 Move disasm overrides into interface, reducing driver-debugger dependencies (nw) 2016-06-24 22:34:13 -04:00
Vas Crabb
5cee9e9bc4 POSIX implementation for new directory read features, cleanup of Windows implementation, return directory handle as smart pointer, fix full build [Vas Crabb] 2016-06-25 03:35:23 +10:00
Nathan Woods
7509a56dc0 Incorporated cleanups requested by Vas Crabb 2016-06-24 07:55:10 -04:00
Nathan Woods
cd8b414e6b C++-ified osd_directory (now osd::directory), and added last_modified to osd::directory::entry 2016-06-24 07:13:18 -04:00
Nathan Woods
f63148b735 "game" ==> "machine" 2016-06-23 06:40:06 -04:00
AJR
d6f9e3bc1c Eliminate some unnecessary pass-through methods from debugcpu (nw) 2016-06-22 16:52:55 -04:00
Sergey Svishchev
0c04a3c893 debugger: parse octal expressions (prefixed by '0') 2016-06-21 00:23:16 +03:00
AJR
7f3699e69d More efficient device error logging 2016-06-20 14:31:08 -04:00
Olivier Galibert
1c3a6595ff emumem: Fix some issues [O. Galibert]
It's actually a very old bug that was uncovered.  Direct access update
mistaked the per-handler mask and the global mask.  As it happened the
per-handler mask was often the global mask, but I made the frontend
*way* more agressive w.r.t masks now.  So the bug became way more
visible.
2016-06-19 22:54:59 +02:00
AJR
c81e0c43da Forgot a few (nw) 2016-06-19 12:49:46 -04:00
AJR
dd056fd769 Use unshifted addrmask (not bytemask) in check_optimize_foo (nw)
This allows hp9845b to boot again.
2016-06-19 12:39:49 -04:00
Miodrag Milanovic
286a7e06b9 m_formatlist is now vector (nw) 2016-06-19 10:10:11 +02:00
Miodrag Milanovic
1071a620f5 simple_list to vector in screen (nw) 2016-06-19 10:10:11 +02:00
Miodrag Milanovic
025756c2d6 simple_list to vector in sound (nw) 2016-06-19 10:10:11 +02:00
Nathan Woods
f01066bcbb Modernized the cassette animation 2016-06-18 23:48:22 -04:00
AJR
f87a5de446 Prevent NaN errors by initializing variable in ui::text_layout (nw)
Use osd_printf_verbose instead of popmessage in ay8910 (too annoying even for debug build)
2016-06-18 21:00:08 -04:00
R. Belmont
321e593923 Merge pull request #965 from ajrhacker/debugspace
Suppress 'no matching space' debugger error when disassembling CPUs w…
2016-06-18 17:10:26 -04:00
Dankan1890
ba3eba5690 Merge pull request #967 from npwoods/miscellaneous_text_fixes_and_cleanups
Miscellaneous text fixes and cleanups
2016-06-18 22:42:06 +02:00
Nathan Woods
5619297374 Added rgb_t::transparent constant 2016-06-18 14:03:50 -04:00
Olivier Galibert
21af6ad0a8 I need a vacation (nw) 2016-06-18 19:23:32 +02:00
Olivier Galibert
cefd4fe46b Fix stupid typo 2016-06-18 19:22:30 +02:00
AJR
1702c3fc97 Suppress 'no matching space' debugger error when disassembling CPUs without decrypted opcodes 2016-06-18 10:51:06 -04:00
Miodrag Milanovic
408ce16683 removed simple_list from emumem (nw) 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
ae8f989a8b cleanup (nw) 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
1d0e0ac12a remove all usages of tagmap 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
78c3929217 tagged_list to unordered_map in emumem (nw) 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
fc8e18d893 tagged_list to unordered_map for debugger (nw) 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
d705e4a28d ioport tagged_list to unordered_map (nw) 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
cb9d158d57 proper exception handling (nw) 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
a07b82ac11 tagged_list to unordered_map for slots (nw) 2016-06-18 15:32:15 +02:00
Miodrag Milanovic
62805f7cac no need for custom allocators (nw) 2016-06-18 15:32:15 +02:00
hap
a205b38cf6 Merge pull request #962 from ajrhacker/addrvalid
Validity checking for AM_MASK/AM_MIRROR/AM_SELECT, based on OG's rece…
2016-06-17 21:10:55 +02:00
R. Belmont
11ed715659 Merge pull request #955 from belegdol/master
Made the way jpeglib.h is included more pretty
2016-06-17 14:26:57 -04:00
AJR
0d6f7bc4b0 Validity checking for AM_MASK/AM_MIRROR/AM_SELECT, based on OG's recent restrictions (nw)
- Update address maps so all drivers pass checks
- Comment out some irregularly-patterned mirrors on RAM areas (needs better solution)
2016-06-17 14:05:34 -04:00
Olivier Galibert
402f0c86ab emumem: Handlers on different subunits of the same address with different address masks are now supported. [O. Galibert] 2016-06-17 19:00:50 +02:00
Olivier Galibert
a903e4c59c Merge pull request #956 from Dagarman/master
Fix comment
2016-06-17 18:27:07 +02:00
Miodrag Milanovic
5e906e9fcf simple_list to std::vector (nw) 2016-06-17 15:40:26 +02:00
Miodrag Milanovic
402ad8ef85 small debugger cleanup (nw) 2016-06-17 13:39:42 +02:00
Angelo Salese
2e8a87393b ... and analog noise being generated like ass (nw) 2016-06-17 12:53:20 +02:00
Angelo Salese
dc5d8a94e6 Improved doxygen-style comments for some defs in screen.h, thumbs down for the class (nw) 2016-06-17 12:49:22 +02:00
Miodrag Milanovic
3969f6e749 Fixed debugger regression (nw) 2016-06-17 12:04:28 +02:00
angelosa
c3770fe54e Some misc updates, nw 2016-06-16 23:09:30 +02:00
Dagarman
8454e117a9 Add files via upload 2016-06-16 07:47:59 -07:00
Olivier Galibert
7099d6eaa2 gcc 6.1.1 warning fixes (nw) 2016-06-16 14:21:44 +02:00
Vas Crabb
20833d9530 nullptr to nullptr doesn't deserve a warning (nw) 2016-06-16 17:42:58 +10:00
Vas Crabb
523b8d1de8 Fix GCC6 warnings 2016-06-16 17:35:02 +10:00
Julian Sikorski
6208ca7d34 Made the way jpeglib.h is included more pretty 2016-06-15 22:26:56 +02:00
angelosa
b49b23b7df Added command strobe callback interface for LDV1000, and hooked it up to esh.cpp driver. [Angelo Salese]
(out of whatsnew: also fixed irq 0 hookup, using device_timer to ack an irq for MAME is never a good idea)
2016-06-15 19:38:04 +02:00
angelosa
6df371a0f1 romload.cpp: added ROMX_FILL, passing a ROM_SKIP(param_value) will fill and skip just like a ROM_LOAD16_BYTE macro [Angelo Salese]
Added line blinking and overlay opacity selectors for esh.cpp [Angelo Salese]
Some minor improvements for LDP-1000 (nw)
2016-06-15 03:51:52 +02:00
Olivier Galibert
b82d7c4aef Memory fun [O.Galibert]
- Added AM_SELECT/addrselect field.  Replaces the old
  AM_MIRROR/AM_MASK combo used to mirror a handler and get the mirrored
  bits in the offset.

- Removed mask and/or mirror from where it didn't belong.  Simplified
  a lot of instances of mask that just weren't needed, especially in bus
  handlers.  Used the short forms of install handlers where possible.

- Replaced the 60s hippy, "It's cool man" range parameter handling in
  map_range that tried to guess what was meant when the values passed
  were not entirely sensible, by a cranky, diner waitress-turned IRS
  auditor curmudgeon.  Main control function has a series of 14 tests
  just to find a reason to fatalerror out your requests.  You have
  been warned.

Some drivers, hopefully not many, will fail the gate-guarding
bureaucrat trials.  Should be easy to fix actually, I worked on the
error messages.  A full regression test would be welcome.
2016-06-14 23:21:58 +02:00
Ivan Vangelista
ab9d8aa8bf driver.cpp: removed the old soundlatch methods. (nw) 2016-06-12 12:07:34 +02:00
fulivi
c7d9059466 Moved things a bit around to better decouple
device_image_interface::call_display and UI front-end
2016-06-09 18:03:07 +02:00
therealmogminer@gmail.com
f1fcc209e7 remove #include addition due to smf's better fix 2016-06-08 20:44:38 +02:00
therealmogminer@gmail.com
0ae82382cb Fix build on MSVC thanks to Rene, also fix debug_break crashes 2016-06-08 20:43:59 +02:00
therealmogminer@gmail.com
1079f45424 Fix -nodebug crash (nw) 2016-06-08 10:11:42 +10:00
therealmogminer@gmail.com
56bd36c5ef Major refactoring of debugger core [Ryan Holtz]
* Eliminate globals/file statics
* Remove lots of stuff from global scope
* Use std::function for custom command registration
* Eliminate some trampolines
* Build fixes from Vas Crabb and balr0g
2016-06-08 08:10:55 +10: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
Miodrag Milanovic
dba7c1ac94 Placed back old output system as module "-output windows" need more things cleaned (nw) 2016-06-05 21:11:56 +02:00
angelosa
62b82f2937 TODO note, nw 2016-06-05 16:11:28 +02:00
angelosa
ea46245a9a Added commit command to debugger. [Angelo Salese] 2016-06-05 16:11:27 +02:00
Nathan Woods
65720796a8 Changed UI handlers to be stored as std::function(); implemented old set_handler() on top of this 2016-06-04 15:06:39 -04:00
angelosa
6aa1d4d66c Update help file, the whole help string parser is so 90s, nw 2016-06-04 19:43:26 +02:00
angelosa
a9a5cceb72 Added comlist comment to debugger [Angelo Salese]
Added notes wrt dangarj protection, nw
2016-06-04 19:43:25 +02:00
Olivier Galibert
5cc0284cf7 Damn, missed that one (nw) 2016-06-04 12:36:47 +02:00
Vas Crabb
7dd07bdfae Merge pull request #912 from npwoods/ui_option_as_enum
Changed the backing representation of OPTION_UI from being a string t…
2016-05-30 22:43:53 +10:00
Vas Crabb
bbb2e917b5 MT6225 MT6226 MT6227 debugger may crash when validating expression with non-existent memory space name 2016-05-30 14:17:01 +10:00
Nathan Woods
d134d16d7d Changed the backing representation of OPTION_UI from being a string to an enum 2016-05-29 10:05:21 -04:00
ImJezze
6af3202119 Fixed MT06222
- fixed offset of vector lines and clipping rectangle when vector primitives are prepared to be rendered into a texture (HLSL) instead of directly on the screen (GDI, D3D)
2016-05-28 16:33:59 +02:00
Miodrag Milanović
369cfd658f Merge pull request #892 from ajrhacker/port_optional
Add flag to mark input fields as optional [AJR]
2016-05-25 10:46:39 +02:00
Miodrag Milanovic
68785dccfe Cleanups and version bump 2016-05-25 08:19:21 +02:00
Paul Priest
25d907c348 psikyosh.cpp/drawgfx.cpp - Fix debug asserts MT3753
Psikyosh uses bitmap_rgb32, but should really use argb32, but that requires overloading lots of drawgfx for this one driver. Removed assert was wrong and unavoidable. Fixed boundary condition tripping daraku as per MT3753.
2016-05-24 21:45:24 +01:00
AJR
5139c32d8f Unnecessary leftover (nw) 2016-05-23 15:51:48 -04:00
AJR
9707fdbf09 Add flag to mark input fields as optional
Inputs marked as optional should be controls that are not required for normal operation and may not be hooked up on actual hardware, but are still worth emulating because the hardware does respond to them in some way. Currently this flag is only exposed through the Lua interface and "reqbuttons" XML field; the intent is for frontends to map all optional buttons by default if this is possible and convenient. MT #6136 has inspired the addition of this flag to gijoe and clones.

Remove the generally useless PORT_UNUSED to make way for PORT_OPTIONAL; IPT_UNUSED, which most drivers were using already, is a better way of disabling unused fields. (nw)
2016-05-23 14:23:42 -04:00
ImJezze
052fd0c608 Moved extension of vector lines to where it belongs (nw) 2016-05-22 20:54:31 +02:00
Miodrag Milanovic
81a6b313a8 Fix accessing base() when there is empty buffer (nw) 2016-05-22 11:34:25 +02:00
angelosa
732eef6e0e Added base sprites. Also added STEP2_INV / STEP4_INV, nw 2016-05-19 20:24:48 +02:00
AJR
ea43e9a386 Ioport refactoring and cleanups (nw)
- Completely move mouse hit testing down into the UI input module. This reduces some dependencies.
- Never return a null pointer from ioport_field::name() to prevent potential crashes. All anonymous inputs are classified as INPUT_CLASS_INTERNAL, so several frontend functions now check type_class instead.
- Correct a couple of typos.
2016-05-18 19:23:54 -04:00
Olivier Galibert
8d0d9e1fb0 emumem: Get rid of the install_* return value [O. Galibert] 2016-05-18 14:29:16 +02:00
Scott Stone
9d3fae9cbd Revert "Allow for output to verify that a machine's emulation has ended properly specifically in instances where less than 2 seconds has elapsed. (nw)"
This reverts commit fc4ab036fc.
2016-05-16 23:15:28 -04:00
Scott Stone
fc4ab036fc Allow for output to verify that a machine's emulation has ended properly specifically in instances where less than 2 seconds has elapsed. (nw) 2016-05-16 21:12:23 -04:00
therealmogminer@gmail.com
b06be31dfe Move slider_state and ui_menu_item into src/frontend/mame, nw 2016-05-16 19:59:15 +02:00
Vas Crabb
1615aab5c0 Fix stupid syntax error 2016-05-16 12:35:04 +10:00
Vas Crabb
689c19720a Hopefully fix PPC targets 2016-05-14 16:52:35 +10:00
Miodrag Milanovic
175084897e Added ability to create standalone emulators, added zexall as example (nw) 2016-05-08 19:07:18 +02:00
Miodrag Milanovic
e3ff63cdda no deps between osd and frontend, internal debugger removed (nw) 2016-05-06 14:01:27 +02:00
AJR
32fbe35386 Check software parts for incompatibility as well as compatibility
This new softlist feature is now used by genesis_tmss to exclude several entries from megadriv.xml.

- Use popmessage instead of osd_printf_warning for incompatibility warnings
- Unify some common software loading code, which reduces indentation levels in clifront.cpp
2016-05-03 23:52:32 -04:00
hap
2186d56b31 hh*: reduce svg screen size from 4K to 1080p, this gets rid of framerate hiccup at start for me 2016-05-02 13:13:25 +02:00
Miodrag Milanovic
be67262fc2 INC -> HXX makes editors and code analyzers see it as C++ (nw) 2016-05-01 20:27:50 +02:00
etabeta78
37c7b9eb31 screen.cpp: only log at start the message about deprecated vblank
to avoid spamming logerror debugger window at each frame, which
makes debugging quite hard ;) . nw.
2016-05-01 18:01:43 +02:00
Miodrag Milanovic
90e4e205d4 remove legacy calls (nw) 2016-05-01 07:43:02 +02:00
AJR
dafe4d8e22 Make watchdog timer a separate device
- Separate watchdog implementation from running_machine (once again) and driver_device
- Old-style methods, now hidden behind #ifdefs, will probably be safe to remove soon
2016-04-30 16:39:27 -04:00
AJR
d5aa280c10 Move system name lookup into frontend (nw) 2016-04-28 17:29:27 -04:00
hap
04f0d72045 hh_hmcs40/ucom4: increased screensize 2016-04-27 18:49:01 +02:00
hap
bb91a86cf6 svg artwork: now that caching is done, we can increase screensize without worrying about a speed hit 2016-04-27 18:20:58 +02:00
cracyc
29d7699569 plugins/layout: layout embedded script helper plugin [Carl]
luaengine: callbacks for plugins (nw)
rendlay: layout tag external handler support (nw)
fidel_csc and mdndclab: example layout scripts (nw)
--
Neither layout script is complete.  The chess doesn't handle castling or en passant and the Dungeons and Dragons only does the walls.
2016-04-27 09:37:23 -05:00
Olivier Galibert
7d635eec4b screen: Add svg shapes pre-computation [O. Galibert] 2016-04-27 15:29:22 +02:00
Miodrag Milanovic
cfee536f22 Cleanups and version bump 2016-04-27 08:13:59 +02:00
AJR
596678f2cd Merge remote-tracking branch 'upstream/master' into firstrun 2016-04-25 20:09:51 -04:00
AJR
ec2669cacf Machine management cleanups
- Boolean parameter to running_machine::run is no longer firstrun (which is now a member variable of mame_machine_manager) but quiet, which disables logging and audio recording without explicitly checking the system name.
- Sound recording is now turned on and off by explicit calls. The potential uses of this have not been explored.
- Dependencies reduced on drivenum.h, where the declaration for GAME_NAME(___empty) has been moved to.
2016-04-25 19:59:42 -04:00
Miodrag Milanovic
188ef56516 Fixed cheat issue (nw) 2016-04-25 20:38:12 +02:00
etabeta78
221cce0f06 better solution for rom_ignore in softlists. nw. 2016-04-25 17:58:20 +02:00
Miodrag Milanovic
96d123b42c NULL->nullptr, instead of DEVCB_NULL use always DEVCB_NOOP to prevent confusion (nw) 2016-04-24 15:38:49 +02:00
Miodrag Milanovic
c8c6617862 Fix Clang build (nw) 2016-04-24 13:24:58 +02:00
Miodrag Milanovic
89c5e1f681 Various cleanups suggested by static analyzer (nw) 2016-04-24 12:58:31 +02:00
etabeta78
5d1ce79c3e ioport.cpp: extended core input to support up to 10 players.
[Fabio Priuli]
2016-04-24 07:41:07 +02:00
AJR
fb08fefaee Move a few odds and ends out of the emu core 2016-04-23 15:27:59 -04:00
etabeta78
1f2f3cc98d softlist.cpp: add support for "rom_ignore". [Fabio Priuli]
out of whatsnew: I'll need this only after the release, but since it made sense to have it anyway... here we are :-)
2016-04-23 19:17:48 +02:00
Miodrag Milanovic
a931b486fe cleanup (nw) 2016-04-23 15:27:54 +02:00
Miodrag Milanovic
97a195ef03 Removed specific filter implementation and merged it with placed where used (nw) 2016-04-23 13:31:47 +02:00
Miodrag Milanovic
c6a9773e15 move vector to video devices (nw) 2016-04-23 12:21:53 +02:00
Miodrag Milanovic
1c726824f2 Split UI and frontend part from core [Miodrag Milanovic] 2016-04-23 11:26:47 +02:00
Ivan Vangelista
9167349e5e video.cpp: create final snapshot on -str runs even for screenless systems. Fixes MT04965 (nw) 2016-04-22 15:56:26 +02:00
Miodrag Milanovic
4c9c6c8c16 Added file for mame depended handling of opts (nw) 2016-04-22 09:09:39 +02:00
Miodrag Milanovic
682bc90764 Created mame_options as 1st step towards creating core independent of MAME implementation (nw) 2016-04-21 20:52:21 +02:00
ImJezze
b1c06acb61 Implemented handling for u_screen_scale and u_screen_offset (nw) 2016-04-21 07:52:29 +02:00
dankan1890
a72ad0c4fe fix sdl build. (nw) 2016-04-21 06:48:26 +02:00
Brad Hughes
0f2cdac736 Fix VS compile. Apparently VS doesn't like reintepret_cast<int>(0) - weird. 2016-04-20 10:20:31 -04:00
cracyc
479e0cf927 luaengine: shrug (nw) 2016-04-20 08:15:39 -05:00
Miodrag Milanovic
dc08f48c36 Cleanup (nw) 2016-04-20 13:42:52 +02:00
Miodrag Milanovic
8318d85597 Isolate CLI part (nw) 2016-04-20 09:50:13 +02:00
Miodrag Milanović
2ee3949169 Merge pull request #823 from ajrhacker/deviter
Iterate over devices C++11 style [AJR]
2016-04-20 09:19:08 +02:00
dankan1890
8b490a9fad Forced reset in order to properly apply some options. (nw) 2016-04-20 05:12:40 +02:00
cracyc
520111798e luaengine: save a copy of the search path so it doesn't get thrown away (nw) 2016-04-19 13:15:50 -05:00
AJR
084d3654ca Iterate over devices C++11 style
Replace the old device_iterator and its specialized versions with functionally equivalent classes that use standard operators to yield references to devices/interfaces rather than pointers. With range-based for loops, they no longer have to be stored in named variables, though they can also be reused concurrently since the iteration state is now maintained by a subclass.

Add a few more typical getters to device_t::subdevice_list.
2016-04-18 18:53:28 -04:00
cracyc
b793232c97 plugins/cheat: clear popmessage (nw) 2016-04-17 17:38:16 -05:00