Commit Graph

33 Commits

Author SHA1 Message Date
Flyinghead 87fdd203b5 android scoped storage (ASS) support
introduce Storage abstraction interfaces
use Storage i/f to load zip and 7z archives, cdi/cue/gdi/chd media,
cheats and to find custom textures.
Use android file picker to add storage. Request persisted access perms.
jni helper classes.

Issue #813
2023-04-08 18:37:50 +02:00
Flyinghead ee3e83e09c Fix loading of Sega Yonin Uchi Mahjong MJ (mj1)
gd cart: load first .bin if the specified one isn't found. Fix loading
of main directory for mj1. Don't update progress too often when
decrypting.
chd: allow loading of 1-track CD-ROMs
Use 2 jvs boards for mj1

Issue  #985
2023-03-22 13:00:59 +01:00
Flyinghead cf031717dd chd: skip invalid media with 0 track 2023-01-12 16:05:07 +01:00
Flyinghead 8a1902e5a8 GDI's and gdrom CHD's must have at least 3 tracks 2023-01-10 11:28:42 +01:00
Flyinghead 1cadd4e923 gdrom: set sub-q channel flag on audio tracks in TOC (ADDR)
Fixes V-Rally 2 CDDA tracks not playing. Issue #534
2022-07-14 16:43:41 +02:00
Flyinghead 20571c5aa1 chd: MIL-CD support
Issue #529
2022-02-15 11:34:11 +01:00
flyinghead 853830a446 log errno when failing to open a disk or folder. Better win32 errors
Log errno when failing to open a disk or folder (game scanner)
Better win32 error codes with GetLastError() for opendir, stat, access
2021-12-15 17:55:42 +01:00
Flyinghead cf653640b3 ggpo: verify md5 of bios, game and savestate
Verify md5 of flash, eeprom, vmus if no savestate used
Use chd header SHA1 as digest
Load .state.net state file at start

Force real BIOS for some games
2021-10-16 17:56:21 +02:00
Flyinghead 951e70328f Use exception when load content fails. ui: graceful stop on fatal error
libretro: catch/detect fatal errors and shutdown
2021-08-03 10:05:09 +02:00
Flyinghead 54c492cac6 Use libchdr as git submodule. bump to latest version 2021-05-22 17:52:17 +02:00
Flyinghead a7d8d31566 double-free when opening corrupted chd. Better error message
Avoid vk/gl/vk quick switching
2021-03-29 16:26:18 +02:00
scribam d715836c40 clang-tidy: run modernize-use-override 2021-03-13 17:28:32 +01:00
flyinghead 16dec49e08 windows: use utf8 internally. Support latin2, cyrillic, etc. pathnames
upgrade libzip to 1.7
imgui: use all glyphs from font including latin2, cyrillic, greek, etc.
2021-01-19 11:11:01 +01:00
scribam a155282fd0 Cleanup compiler warnings (mostly sign-compare) 2020-03-30 23:00:43 +02:00
Flyinghead b79c074444 axe wchar 2020-01-31 23:51:12 +01:00
Flyinghead 79fef77099 Open CDI/GDI/CHE/CUE with their corresponding driver only
don't crash or leak memory when opening an invalid or empty GDI or CUE
file.
Better error reporting
2020-01-31 10:35:10 +01:00
Flyinghead ac310114fe Disable total frame count for CHD to allow patched/homebrew 2019-10-16 16:08:32 +02:00
scribam 49b7e0682b Cleanup 2019-09-07 20:36:13 +02:00
Flyinghead b388fa4377 imgread: use new logging 2019-07-01 16:10:28 +02:00
Flyinghead c809c6c56f Merge branch 'fh/mymaster' into fh/master-merge 2019-03-25 16:47:47 +01:00
Christoph "baka0815" Schwerdtfeger 001a767ab7 CHD: swap bytes of CHDv5+ audio tracks
Thanks @flyinghead
See https://github.com/libretro/reicast-emulator/pull/370
2018-11-03 19:29:55 +01:00
Christoph "baka0815" Schwerdtfeger 161e84598d Respect the offset of the padding
The StartHunk logic was flawed and while working with CHD files before v5 didn't work for v5 (and above).
The extraframes logic did work in some cases (read 3 track CHDv5) but didn't work in all cases and was merely a hack in retrospective.

Thanks to the comment of @flyinghead (see also b6c2508922 (diff-cb507bb17d74342aa45b6e4d10d607af)) the logic is now correct and works for v4 and v5 files.
2018-11-03 19:24:53 +01:00
Flyinghead 2003fc88d7 CHD v5 support 2018-11-02 10:14:25 +01:00
Christoph "baka0815" Schwerdtfeger 6f358ebf8f CHD: Only pad when version >= 5 2018-10-30 21:27:25 +01:00
Christoph "baka0815" Schwerdtfeger 98c1e7253c CHD: Use the hunk caching
We didn't remember the last hunk and always read again.
2018-10-30 21:27:25 +01:00
Christoph "baka0815" Schwerdtfeger 4bb9507695 CHD: Reworked the extra frame handling
This way Sonic 2, F355, Crazy Taxi, Rayman 2 and Daytona USA work.
2018-10-30 21:27:25 +01:00
Christoph "baka0815" Schwerdtfeger 4691418689 CHD: Check for extra frames
If the frame count is not dividable by 4, there are extra frames added to keep a padding.
This is true for F355 (450 frames -> 2 extra frames) and others.

Also move CD_TRACK_PADDING to chd.cpp to work around problems with including from C and C++.
2018-10-30 21:27:25 +01:00
Christoph "baka0815" Schwerdtfeger d24b68f592 CHD: read additional track types
Also don't print "Unable to find metadata" as it's mostly not true (we reach this part after the last track)
2018-10-30 21:27:25 +01:00
Flyinghead 282534d7bc cdi, chd: better error messages 2018-10-22 17:39:02 +02:00
Ender's Games 75215ec0d1 Core: Address some obvious lgtm issues 2018-08-21 02:52:03 -04:00
Stefanos Kornilios Mitsis Poiitidis d59197f843 gdtool: better command line, stdin lists, cleanup
Also, imgread const filenames and such
2014-06-13 18:41:48 +03:00
Stefanos Kornilios Mitsis Poiitidis 2bd1c4c976 First idea for a gdrom tool 2014-05-26 15:35:41 +03:00
Stefanos Kornilios Mitsis Poiitidis 7ef9de3cae Moving code around, cleanups 2013-12-28 22:20:08 +01:00