| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
#12081). (#12087)
This should greatly improve data integrity when creating and extracting GD-ROM images.
* util/cdrom.cpp: Refactored parse_cue to handle GD-ROMs.
* util/cdrom.cpp: Don't discard any data from GD-ROM cue/bin input including pre-gap data.
* tools/chdman.cpp: Fixed splitframes handling.
* tools/chdman.cpp: Added warning when extracting GD-ROM CHDs to cue/bin format.
|
| |
|
|
|
| |
emu/diimage.h: Removed fread overloads that allocate memory for output.
util/core_file.cpp: Changed output size of load to size_t.
|
| |
|
|
|
| |
It would never use template_id uninitialised because the same condition
applied for assigning it and using it, but compilers are dumb.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support input start/size options for createdvd.
Fixed not reporting an error on unrecognised command line options.
Fixed --fix/-f option for verify command not working.
Report an error when conflicting options are supplied (e.g. hard disk
template and C/H/S geometry, or input start offset in both bytes and
hunks). Previously the results would be unpredictable.
Detect more invalid combinations of options, and detect when output unit
size or hunk size doesn't match parent.
Changed order of processing options for createhd so using a template
cannot not inadvertently result in an invalid combination of sector size
and hunk size.
Don't require an explicit unit size for createraw if an output parent
CHD file is supplied.
Fixed an object leak in createcd.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
tools/chdman.cpp: Added --hunksize/-hs option for createdvd command and
default to 4K hunks (2 sectors, same size as hard disk hunks). Also
removed --outputbin/-ob option from extractdvd command - it did nothing
as it's CD-specific.
docs: Added preliminary chdman documentation. Most common options have
at least basic descriptions, supported options are listed for all
commands, and supported compression algorithms are described.
docs: Cleaned up heading levels in tools section.
|
| |
|
|
| |
This reverts commit 901a68e2e0bb0d9178ffdb59e128718c1495250f.
|
| |
|
|
|
|
|
|
|
| |
- Return std::error_condition from set_raw_sha1 and set_parent_sha1 instead of throwing exceptions
- Fix a few cases where error codes could be swallowed
- Catch exceptions in is_XXX predicates
- Add const qualifier to SHA-1 extraction methods
- Add noexcept qualifier to a few internal functions
- Clean up various comments
|
| | |
|
| |
|
|
|
|
| |
- Use multibyte.h functions and std::swap
- Turn most macro constants into enums and move them down into classes
- Change comments to C++ style
|
| | |
|
| |
|
|
| |
arcade-type drivers
|
| | |
|
| |
|
|
| |
warnings for VLAs in C++.
|
| |
|
|
|
| |
* xinput.h depends on windows.h
* avoid use of non-standard variable-length arrays
|
| | |
|
| | |
|
| |
|
|
|
|
| |
- Use std::string_view for filename parameters
- Use ioprocs rather than core_file
- Reduce commenting out of miscellaneous logging
|
| | |
|
| | |
|
| |
|
|
|
| |
* Turned `core_file` into an implementation of `random_read_write`.
* Turned PNG errors into a standard error category.
* Added a helper for generating what look like derived classes on-the-fly.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* The UI controls are described as zoom in/out, but they had the
opposite effect on the palette and tile viewers. That has been
changed to make them consistent with the tilemap viewer.
* Made the default zoom key not act as a toggle. People are familiar
with the function of Ctrl+0/=/- in web browsers, so making them behave
similarly in MAME should make it more approachable. Also added the
default zoom key to the relevant documentation page.
* Implemented the default zoom key for the palette and tile viewers.
* In the tilemap viewer, if the view is in default expand to fit mode,
zoom in/out starting from the actual zoom ratio. Once again, this
behaves more like the zoom controls in a web browser displaying an
image so it should be more intuitive.
* Made more messages from the tilemap viewer localisable.
-util/zippath.cpp: Fixed MT08074.
* There were multiple issues at play here. After #8443 was applied,
is_root was simply never returning true on Windows, as OSD_WINDOWS
isn't actually defined outside libosd and libocore. This caused
phantom parent items to appear in disk roots on Windows, but it meant
that the check in zippath_resolve would always fail so the trailing
backslash would be trimmed. Fixing the macro test in is_root meant
the trailing backslash from C:\ would no longer be trimmed, which
caused the stat in zippath_resolve to fail.
-bigbord2.cpp: Hooked up floppy DRQ that had somehow got lost.
-Reduced tag map lookups in several drivers and devices.
-util/coretmpl.h: Removed an overload of bitswap that can be avoided
using if constexpr.
-Added doxygen comments to some classes, and fixed several doxygen
warnings.
-util, osd: Test for _WIN32 rather than WIN32.
* In C++17 mode, WIN32 is no longer a predefined macro, although various
things in 3rdparty define it to maintain legacy support. We're better
off moving forward anyway for when WIN32 disappears entirely. (WIN32
is not a reserved name, while _WIN32 is, starting with an underscore
follwed by an uppercase letter.)
|
| |
|
|
|
|
|
|
|
| |
Added more modern generic I/O interfaces with implementation backed by stdio, osd_file and core_file, replacing io_generic. Also replaced core_file's build-in zlib compression with a filter.
unzip.cpp, un7z.cpp: Added option to supply abstract I/O interface rather than filename.
Converted osd_file, core_file, archive_file, chd_file and device_image_interface to use std::error_condition rather than their own error enums.
Allow mounting TI-99 RPK from inside archives.
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
* osdcomm.h: Move definition of EQUIVALENT_ARRAY to coretmpl.h
* sharc.cpp, gt64xxx.cpp, ym2413.cpp, gb_lcd.cpp, snes_ppu.cpp: Use STRUCT_MEMBER for save state registration
* gio/newport.cpp, megadrive/svp.cpp, nes_ctrl/bcbattle.cpp, arm7.cpp, tms9995.cpp, pckeybrd.cpp, sa1110.cpp, sa1111.cpp, jangou_blitter.cpp, vic4567.cpp: Use std::fill(_n) instead of memset
* emucore.h: Remove obsolete typedef
|
| |
|
|
|
|
|
|
| |
-osd/modules/osdwindow.cpp: Clean up window title formatting.
* Show data type model in window title.
* Moved window title formatting to a single place.
-tools/chdman.cpp: Removed some unnecessary .c_str() calls.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove corestr.h from emu.h; update a few source files to not use it at all
- Change strtrimspace, strtrimrightspace and core_filename_extract_* to be pure functions taking a std::string_view by value and returning the same type
- Change strmakeupper and strmakelower to be pure functions taking a std::string_view and constructing a std::string
- Remove the string-modifying version of zippath_parent
- Change tag-based lookup functions in device_t to take std::string_view instead of const std::string & or const char *
- Remove the subdevice tag cache from device_t (since device finders are now recommended) and replace it with a map covering directly owned subdevices only
- Move the working directory setup method out of device_image_interface (only the UI seems to actually use the full version of this)
- Change output_manager to use std::string_view for output name arguments
- Change core_options to accept std::string_view for most name and value arguments (return values are still C strings for now)
- Change miscellaneous other functions to accept std::string_view arguments
- Remove a few string accessor macros from romload.h
- Remove many unnecessary c_str() calls from logging/error messages
|
| |
|
|
|
|
|
| |
- vecstream.h: Revert changes made in aa29519528cb3dbdbfac56819bea670ed8c56c5d. The std::string_view conversion has been made a non-member function (util::buf_to_string_view) and moved to coretmpl.h.
- strformat.h: Remove the using declaration importing util::string_format into the global namespace. It has been moved to emucore.h and a few tool sources; other references have been qualified.
- osdcore.h: Split out file, directory and path classes and methods to a new header (osdfile.h), Doxygenizing the documentation comments.
- Disaggregate many #includes that were including other standard or custom headers. emu.h now includes basically the same things that it did, but other headers have been streamlined; for instance, emucore.h no longer stealth-includes osdcore.h several ways.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* initial check-in of Redump bin/cue support for Dreamcast GDI
* correctly identifies multi-cue format and sets GDROM flags
* creates a working Crazy Taxi chd from a Redump bin/cue
* disabled debugging code and started tidying up
* simple tool to compare chdman bin/cue and bin/gdi conversions, should be identical
* final tidy up, the testing is going well
* testing failed for Aero Dancing i (Japan), didnt zero last track
* added some comments about .gdi compatibility
* addressing review feedback on pull request #7422
* match TOSEC layout for Pattern I discs (3 tracks)
* initial support for Pattern III discs
* Pattern III discs now work and match TOSEC layout
* reading datasize from wrong track, same result though
* identify the GDI pattern, makes the code clearer
* support for Pattern II and consecutive AUDIO tracks
* use C99 type not POSIX type to build on Windows
* support Redump tracks split across two .bin files
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Made const-qualified pixel accessors (pix, pixt, raw_pixptr) return
const-qualified references/pointers to pixesl, and added non-const
versions. This makes bitmap more like standard library containers where
const protects the content as well as the dimensions.
Made the templated pixt accessor protected - having it public makes it
too easy to inadvertently get a pointer to the wrong location.
Removed the pix(8|16|32|64) accessors from the specific bitmaps. You
could only use the "correct" one anyway, and having the "incorrect" ones
available prevented explicit instantiations of the class template
because the static assertions would fail. You can still see the pixel
type in the bitmap class names, and you can't assign the result of
&pix(y, x) to the wrong kind of pointer without a cast.
Added fill member functions to the specific bitmap template, and added
a explicit instantiations. This allows the bitmap size check to be
skipped on most bitmap fills, although the clipping check is still
there. Also fixed a couple of places that were trying to fill an
indexed 16-bit bitmap with rgb_t::black() exposed by this (replaced with
zero to get the same net effect). The explicit template instantiations
in the .cpp file mean the compiler can inline the function if necessary,
but don't need to generate a local out-of-line body if it chooses not
to.
Extended the size of the fill value parameter in the base bitmap class
to 64 bits so it works correctly for 64-bit bitmaps.
Fixed places where IE15 and VGM visualiser weren't accounting for row
bytes potentially being larger than width.
Fixed an off-by-one in an HP-DIO card where it was treating the Topcat
cursor right edge as exclusive.
Updated everything to work with the API changes, reduced the scope of
many variables, added more const, and replaced a few fill/copy loops
with stuff from <algorithm>.
|
| |
|
|
| |
long format flags.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This effectively reverts b380514764cf857469bae61c11143a19f79a74c5 and
c24473ddff715ecec2e258a6eb38960cf8c8e98e, restoring the state at
598cd5227223c3b04ca31f0dbc1981256d9ea3ff.
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.
|
| |
|
|
|
| |
This reverts commit c24473ddff715ecec2e258a6eb38960cf8c8e98e, reversing
changes made to 009cba4fb8102102168ef32870892438327f3705.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Use standard uint64_t, uint32_t, uint16_t or uint8_t instead of UINT64, UINT32, UINT16 or UINT8
also use standard int64_t, int32_t, int16_t or int8_t instead of INT64, INT32, INT16 or INT8
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
to inline functions (nw)
|
| | |
|