| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
|
|
|
| |
* Bumped minimum clang version to 13 - clang 12 is just too buggy.
* Assume Qt 6 will be used, dropped Qt 5 support.
* Fixed finding Qt headers on Fedora and hopefully other distros.
* Always use static SDL2 on Windows.
* debugger/qt/debuggerview.cpp: Fixed build with Qt < 6.6.
* imgtool/modules/vzdos.cpp: Fixed build with Linux GCC 11.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
* imgtool: Take ownership of stream in pc_chd_image_open
`imgtool::image::internal_open` passes an rvalue reference to the stream to the `open` function of the image format module. It expects the `open` function to take ownership if it keeps a reference to the stream. If `open` does not do so, the `stream` is going to be destroyed at the end of `internal_open`.
`pc_chd_image_open` fails to take ownership, yet it persists a reference to the stream as part of `info->hard_disk`. This causes an use-after-free condition
* imgtool: Correct determination of total sectors of a FAT volume
The number of total sectors of a FAT volume is stored either in the 16-bit word at offset 19 or, if that word is zero, in the 32-bit word at offset 32 instead. The 32-bit word is not a high word to build a 48-bit value in conjunction with the 16-bit word at offset 19, but it supersedes it.
|
| |
|
|
|
|
|
|
| |
-tools/imgtool/modules/vzdos.cpp: Fixed function returning floperr_t
value as imgtoolerr_t.
-devices: Fixed a bunch more #include guards that don't match file
paths.
|
| |
|
|
| |
In particular, this fixes a delegate getting nuked in cpu/powerpc.
|
| | |
|
| |
|
|
| |
get_sectors_per_track() (#11673)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|
| |
|
|
|
|
| |
the simpler functions in multibyte.h
* multibyte.h: Add constexpr for getters and noexcept for all functions
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
before?) [R. Belmont]
|
| |
|
|
|
|
|
|
| |
* gbcolor.xml, bus/gameboy: Renamed slot option for Rocket Games
cartridges from "rom_atvrac" to "rom_rocket".
* emu/config.cpp: Made error messages more detailed when opening a
configuration file fails, and bumped error messages to warning level.
* tools/imgtool: Fixed build.
|
| |
|
|
|
| |
(#10287)
Note that the implementation is still not UTF-8 aware.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
* Patched up a pile of code that was rotting behind UNUSED_FUNCTION, and
switched to [[maybe_unused]] attribute so it can't rot so easily.
* Reduced a bit more redundancy in fruit machine layouts.
|
| |
|
|
|
|
| |
- Remove opresolv.h from emu.h and some other base headers
- Split legacy floppy image class into a separate file
- Clean up a lot of #includes in src/lib and src/tools/imgtool
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
| |
* formats/hti_tape.cpp: Added support for Manchester encoded DC100 cassettes.
* machine/hp2640_tape.cpp: added emulation of DC100 tape drives.
* machine/hp_dc100_tape.cpp: Added unit name display.
|
| |
|
|
|
|
| |
I've guessed whether break or [[fallthrough]] is appropriate. In cases
where it looked particularly suspicious, I added a FIXME comment. All
of these changes should be reviewed by someone familiar with the code.
|
| |
|
|
|
|
|
| |
* Updated sol2 to 3.2.2
* Updated pugixml to 1.10
* Increased minimum clang version to 6
* Cleaned up some stuff that can use new features
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The global_alloc/global_free functions have outlived their usefulness.
They don't allow consistently overriding the default memory allocation
behaviour because they aren't used consistently, and we don't have
standard library allocator wrappers for them that we'd need to use them
consistently with all the standard library containers we're using. If
you need to change the default allocator behaviour, you can override the
new/delete operators, and there are ways to get more fine-grained
control that way. We're already doing that to pre-fill memory in debug
builds.
Code was already starting to depend on global_alloc/global_free wrapping
new/delete. For example some parts of the code (including the UI and
Windows debugger) was putting the result of global_alloc in a
std::unique_ptr wrappers without custom deleters, and the SPU sound
device was assuming it could use global_free to release memory allocated
with operator new. There was also code misunderstanding the behaviour
of global_alloc, for example the GROM port cartridge code was checking
for nullptr when a failure will actually throw std::bad_alloc.
As well as substituting new/delete, I've made several things use smart
pointers to reduce the chance of leaks, and fixed a couple of leaks,
too.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
(nw)
|
| |
|
|
|
|
| |
and image handling (nw)
Note that this does not apply to machine drivers or device implementations for a single machine family (e.g. Amiga chips or VTech expansion bus)
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Tidy up comments
* Fix typos
* Fix spelling
* Tidy
* Tidy
|
| | |
|
| |
|
|
|
|
|
|
|
| |
* hp9825: fixed a bug in 9825t
* hp9845: TACO driver re-written from scratch, DC100 tape separated into
a new device, various adaptations
* hp9845: "new TACO" renamed to just "TACO"
|
| |
|
|
|
|
| |
* [Imgtool] Add reading accents support for Thomson BASIC
* [Imgtool] Add writing accents support for Thomson BASIC
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* [Imgtool] Add write support for Thomson BASIC
* [Imgtool] Fix passing --filter= to imgtool get command
This command should work:
imgtool get thom_fd inondation-d-additions.fd INONDATI.BAS TEST.BAS --filter=thombas7
as it matches the expected syntax:
Usage: imgtool get <format> <imagename> <filename> [newname] [--filter=filter] [--fork=fork]
but does not because imgtool fewer "maxargs".
Increase the maximum number of arguments by 2 to cater for --filter and
--fork being passed.
* [Imgtool] Fix handling multiple tokens in BASIC tokenizer
The line:
10 LIMIT$=STR$(LIMIT(N))
was not getting tokenised properly because the loop looking for tokens
wasn't exited and consumed consecutive tokens.
So $ was getting detected, token_shift and token_value were set, the
cursor position got incremented, then = got detected on the next
iteration of the loop.
We should instead exit the loop, and write what we already have.
Closes: #5478
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|