summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/imagedev
Commit message (Collapse)AuthorAgeFilesLines
* imagedev/cassette.cpp, formats/flacfile.cpp: Added support for saving ↵ wilbertpol2024-03-222-2/+14
| | | | | cassette images in FLAC format. (#12115) util/flac.cpp: Implemented seek/tell callbacks for FLAC library.
* osd: Cleaned up MIDI and network interfaces a little more. Vas Crabb2024-03-014-20/+16
|
* util/ioprocs.cpp: Added wrappers for common patterns. (#11608) Vas Crabb2024-02-251-10/+10
| | | | | emu/diimage.h: Removed fread overloads that allocate memory for output. util/core_file.cpp: Changed output size of load to size_t.
* imagedev/floppy.cpp: Delete unused getter that leaked details AJR2024-02-112-6/+0
| | | | * util/options.h: Use forwarding header
* -imagedev/harddriv.cpp: Report unsuitable CHDs rather than crashing. Vas Crabb2024-02-102-29/+40
| | | | | -imagedev/cdrom.cpp: Report unsuitable CHDs as "invalid image" rather than "unsupported operation".
* imagedev/cdromimg.cpp: Fixed object lifecycles when loading from softlist or ↵ Vas Crabb2024-01-261-14/+21
| | | | | | | ROM region. * Reverted workaround 4c0957d7f0ba6a72e7267270db07ee06fe717109. * Cleaned up a few things.
* floppy.cpp: Update class variables to current naming convention. (#11851) Mark Garlanger2024-01-202-610/+610
|
* harddriv.cpp, mccs1850.cpp: Use multibyte.h helpers AJR2024-01-071-3/+4
|
* imagedev/cassette.cpp: Fix stereo output for stereo input images. (#11897) wilbertpol2024-01-071-1/+5
|
* New systems marked not working Ivan Vangelista2024-01-041-1/+1
| | | | | | | | | ------------------------------ Cuty Line Limited (ver.1.30) [freaktech] - igs/goldstar.cpp: enabled girls display for cmast91 and other games on same hw, removed 2nd ppi as PCB pics and readme only show one - various files: removed superfluous semicolons
* imagedev/floppy.cpp: Remvoed hard-sectored floppy support. Vas Crabb2023-11-022-43/+6
| | | | | | | | | This caused numerous regressions, including floppy formats not working and application hangs when using some formats. This reverts commit b2c399c61d65063ae95e8387d34b098e9516b1a9. This reverts commit cf510adc9d34b4ad9a065f3d5bfbcf17115ea06f.
* Revert "chd.cpp: Refactoring, part 2" Vas Crabb2023-10-271-25/+9
| | | | This reverts commit cc772072fa635146b1df39a5694d2a8f8aa5a34f.
* chd.cpp: Refactoring, part 2 AJR2023-10-231-9/+25
| | | | | | | - Change is_XXX to return std::error_condition instead of bool so that errors can be passed down the line; rename these to check_is_XXX to indicate that they are no longer basic predicates - Change return type of internal function metadata_find to std::error_condition so that errors can be returned rather than thrown * imagedev/cdromimg.cpp: Fix bug where cdrom_file object could be constructed twice in a row for CD-ROMs and once for DVDs
* srcclean in preparation for MAME 0.260 release branch Vas Crabb2023-10-221-1/+1
|
* midiin_device: support loading sysex dumps (#11625) Devin Acker2023-10-202-5/+33
|
* Floppy format API refinements AJR2023-10-081-3/+3
| | | | | - Add noexcept to format information overrides and several simple floppy_image accessors. - Be more const-correct and use references instead of raw pointers wherever applicable. In particular, floppy_image_device::load and floppy_image_device::save now take a reference to floppy_image rather than a pointer, const-qualified in the latter case.
* imagedev/floppy.cpp: Workaround for index timing regression AJR2023-10-021-2/+2
|
* Miscellaneous change roll-up: Vas Crabb2023-09-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | render/drawbgfx.cpp: Return an error if Wayland EGL surface can't be created for additional windows. emu/emucore.h: Added explicitly defaulted copy and move constructors for emu_fatalerror. Fixed apparent misunderstanding of const. Returning const value types and casting to const value types is pointless outside very narrow use cases. Putting const value type parameters in interfaces just makes trouble. cpu/adsp2100: Use count_leading_ones_32 where it's simple rather than inverting and counting leading zeroes. util/multibyte.h: Don't pollute global namespace, constexpr implies inline, make narrowing casts explicit. imagedev/simh_tape_image.h: inline is implied for member functions with bodies supplied at declaration. Tidied up some ugly casts in various places.
* Remove flopimg.h and fsmgr.h from floppy device header AJR2023-09-242-13/+26
|
* nscsi: Add SCSI tape device based on SIMH tape image format (#11430) Miëtek Bak2023-09-142-0/+137
|
* imagedev/floppy.cpp: Add hard-sector floppy support Eric Anderson2023-09-052-6/+43
|
* emu/devcb.h: Eliminated the need to call resolve() on callbacks. (#11333) Vas Crabb2023-06-174-11/+3
| | | | | | | | | | | | Read callbacks now need a default return value supplied at construction. Replaced isnull() with isunset() which tells you if the callback wasn't configured rather than whether it isn't safe to call. Enabled validation of device callbacks (it seems it was disabled at some point, probably accidentally). Device callbacks and object finders now implement the same interface for resolution.
* floppy.cpp: add Teac FD55-A and FD55-B drive types (#11342) Mark Garlanger2023-06-162-2/+64
|
* ti99: Some debug output improvements Michael Zapf2023-06-081-4/+5
|
* Clean up several sprintf() deprecation warningss in non-3rdparty code. [R. ↵ arbee2023-06-031-1/+1
| | | | Belmont]
* emu/device.h: Removed device (READ|WRITE)_LINE_MEMBER in favor of explicit ↵ MooglyGuy2023-06-014-40/+40
| | | | function signatures. (#11283) [Ryan Holtz]
* srcclean in preparation for MAME 0.255 branch Vas Crabb2023-05-281-1/+1
|
* imagedev/midiin.cpp: fix error condition handling so midi files can be ↵ Devin Acker2023-05-271-3/+3
| | | | loaded again (#11280)
* Cleaned up logging across the codebase (GitHub #10183). (#11250) [Ryan Holtz] MooglyGuy2023-05-232-15/+15
| | | | | * Converted various logging patterns to use logmacro.h consistently. * Removed redefinitions of LOG_GENERAL. * Use LOGMASKED in more places.
* Remove stray fprintf Olivier Galibert2023-05-081-1/+0
|
* image: Fix initialisation order, fix file menu enable, refine gdrom support Olivier Galibert2023-05-082-10/+5
|
* atapicdr, cdromimg: Fix gdrom support Olivier Galibert2023-05-051-2/+2
|
* cdrom: Bunch of fixes Olivier Galibert2023-05-051-5/+28
|
* chd: Add dvd support. better abstraction in general, multi-image support in ↵ Olivier Galibert2023-05-045-137/+335
| | | | arcade-type drivers
* Restored ability of for image devices to report specific error messages. Vas Crabb2023-04-0832-191/+198
| | | | | | | | | | | | | | Restores ability to give specific/detailed messages removed in 6f7e4141ea14acaaf9cb973c66788fabb3457023 while pandering to obsession with single return value. Moved responsibility for displaying the error message in the UI to the caller rather than device_image_interface, and made device_image_interface always log the error along with the full path and error condition content. Gave several image devices more detailed error messages. Added some FIXME comments for apparent bugs.
* -Improved some Lua APIs: Vas Crabb2023-04-0723-195/+184
| | | | | | | | | | | | | | | | * Moved several machine lifecycle callbacks to the notifier/subscriber model. The old callback registration model is still available for them for now, but prints a deprecation warning. * Added pre-save/post-load notifications. * Use a single allocated timer rather than one anonymous timer per waiter. Waiters no longer prevent saved states from being loaded. * Clean up outstanding waiters on stop or state load rather than just leaking them. * Started documenting parts of the emulator interface object that should be relatively stable. -imagedev/avivideo.cpp: Fixed an object leak on unload. Also changed some other media image devices to use smart pointers.
* neogeo/neogeo.cpp, neogeo/ng_memcard.cpp: Hooked up more control lines. Vas Crabb2023-04-051-2/+2
| | | | | | | | | | | | Hooked up the memory card write enable/disable and register select lines, and corrected the address range where memory card access is enabled. Card addressing still isn't quite right - the card bank register isn't hooked up. Neo Geo CD consoles also haven't been updated. Also, more of the same mechanical cleanup of copy/pasted comments, const, and variable scope.
* Small fixes and cleanup: Vas Crabb2023-04-043-6/+6
| | | | | | | | | * emu/devfind.h: Allow range-based for loops on memory share finders. * emu/emucore.h: Choose correct emu_fatalerror constructor when format string is an rvalue. * osborne/osborne1.cpp: Allocate main RAM as a flat share, and use a view to switch in atttribute RAM. * Reduced scope of some variables and edited some copy/pasted comments.
* emu/rgbvmx.h: Fixed some corner cases (fixes GitHub #11051). Vas Crabb2023-04-013-6/+9
| | | | Also changed a pile of comments.
* API change for device_image_interface AJR2023-03-3032-139/+157
| | | | | | | | | - Remove the seterror method for recording error messages and conditions. Condition codes have been made return values for call_load, call_create and various related callbacks. Error messages (which many devices weren't generating) are now displayed through osd_printf_error. - Eliminate the image_init_result and image_verify_result pass/fail enumeration types. Update many functions that were returning these enumerations or simply bools to return std::error_condition instead. In some cases, this type is now passed down from internal parsing/loading functions which were already returning it. In various other cases, the former default UNSPECIFIED has been used as a catchall for I/O errors; anticipated future refactorings should make these error returns more specific. - Expand the image_error categories to include INVALIDLENGTH, NOSOFTWARE and BADSOFTWARE. The first is largely self-explanatory. The second is generated by the core to indicate failure to find software items in lists. The third is provided for devices to indicate semantic errors in software list entries. - Change the return type of floppy_image_device::identify to a pair so the potential error condition can be passed along to the UI without storing it in a member variable. - Move device_image_interface::message down into snapshot_image_device and change its implementation to use string_format instead of printf. - Correct a typo in the shortname of the generic snapshot device.
* imagedev/floppy.cpp: Fix build AJR2023-02-261-1/+1
|
* imagedev/floppy: Eliminate superfluous return value for load callback AJR2023-02-261-1/+1
|
* Various cleanups: Vas Crabb2023-02-273-14/+14
| | | | | | | * cpu/dsp56156: Removed vestigial (and excessively slow) "new" execution code. * apple/bandit.cpp: Got rid of unnecessary friend declaration. * nintendo/n64_v.cpp: More const. * Fixed a few "const qualifier has no effect" warnings.
* diimage.h: Move a few macro and delegate definitions down into subclasses AJR2023-01-012-0/+6
|
* imagedev: Allow command-line creation for tapes/memory cards/printouts. Vas Crabb2022-12-244-0/+4
| | | | | Also made image devices not request read access when creating files for write-only devices.
* floppy sound: fix spin sample oob access hap2022-12-061-3/+6
|
* harddisk.h: #include shuffling AJR2022-11-261-0/+1
|
* Changed fs::manager_t::enumerate_f() to simplify logic within file system ↵ npwoods2022-09-192-4/+11
| | | | | | | | | | | | | | | | | | | | | drivers (#10106) * Changed fs::manager_t::enumerate_f() to simplify logic within file system drivers enumerate_f() used to contain quite a bit of boilerplate logic to determine whether a particular floppy type should be added. This change attempts to move this logic outside the file system drivers to simplify the drivers. The riskiest part of this change is unformatted_image::enumerate_f(). I attempted to replicate the logic that was previously determining with unformatted image types to use, but the logic is tricky and it isn't clear to me that replicating the logic is the correct action - I may be cargo culting. * Fix to floppy_image_device::fs_enum::add_raw() * Updating FS_FAT to reflect this PR * On the advise of Sarayan, I moved the filtering to the fs::manager_t::fs_enum base class. This is actually a less intrusive change than what I originally had because it keeps the unformatted raw image handling closer to what we had previously. Some misgivings about these changes: 1. We now have fs::manager_t::fs_enum::add() being a thin call that invokes a protected method called fs::manager_t::fs_enum::add_format(). Better ideas for names are welcome. 2. It feels odd that we've removed the need to do filtering from the various FS modules, but the unformatted module has to ask the fs_enum() for its internal variables for filtering to perform the same logic. This seems to be the least worst option Feedback is welcome
* -gameboy.xml, gbcolor.xml: Demoted HuC-3 games to partially working. Vas Crabb2022-09-121-1/+1
| | | | | -imagedev/picture.cpp: Added extensions for supported BMP and JPEG formats.
* OSD/network interface cleanup AJR2022-08-284-1/+11
| | | | | | | - Move osd_midi_device from osdcore.h to osdepend.h - Move osd_list_network_adapters from osdcore.h to osdnet.h (was already defineduniquely in osdnet.cpp) - Move #include <cstdarg> from osdcore.h to emu.h - Remove dinetwork.h from emu.h