Open shantigilbert opened 5 years ago
I have all my games compressed freshly with newest chdman [ 0.215 ] and none of them crash flycast
For my part CHD 5 never works on Flycast, i must always use v4 from a long time ... i havve try with version 205, i don't have the 215 ??? And i'm not sure it change something ?
It's the only format that I'm using and its chd5 with very recent flycast build [ compiled from master ], you can get one from the buildbot to test it https://buildbot.libretro.com/nightly/
chdman - MAME Compressed Hunks of Data (CHD) manager 0.215 (unknown)
Input file: De La Jet Set Radio (Japan) (En,Ja,Fr,De,Es).chd
File Version: 5
Logical size: 1,344,333,888 bytes
Hunk Size: 19,584 bytes
Total Hunks: 68,645
Unit Size: 2,448 bytes
Total Units: 549,156
Compression: cdlz (CD LZMA), cdzl (CD Deflate), cdfl (CD FLAC)
CHD size: 662,321,225 bytes
Ratio: 49.3%
SHA1: 465686c83183542f8c11115149005cc30d670f97
Data SHA1: 78e68a3ad45b17c1c9cd9fd066c10b9b36520b06
Metadata: Tag='CHGD' Index=0 Length=96 bytes
TRACK:1 TYPE:MODE1_RAW SUBTYPE:NONE FRAMES:450 PAD:0 PREGAP:
Metadata: Tag='CHGD' Index=1 Length=98 bytes
TRACK:2 TYPE:AUDIO SUBTYPE:NONE FRAMES:44550 PAD:43662 PREGA
Metadata: Tag='CHGD' Index=2 Length=99 bytes
TRACK:3 TYPE:MODE1_RAW SUBTYPE:NONE FRAMES:504150 PAD:0 PREG
It might be related to the platform you use? This is on arm board. There is not even an arm version on the buildbot, I am testing a version I compile myself, with latest commits.
That's possible, I'm on Linux x86_64. It seems related to LZMA compression, as that's what is used in v5 but not v4. I've seen some bugs floating around with it on ARM. Most likely not a flycast bug
CHD have some bugs for sure ... on Saturn i found one, All the translated games are not working fine on CHD 5 ou 4 format with YaSanshiro and Kronos !! But working fine in ISO format :( So strange because all original games are working fine in CHD format. But there is a solution for this because !!! so strange !!! All trad games working fine in CHD format with Beetle Saturn ??!! why ?? Maybe something in his source code ?? But some one must search for this and found where is the solution.
I use CHD v5 pretty much exclusively and on all platforms. I just tested a bunch of them on arm32 and they all load fine. Can you share which games you have issue with?
@flyinghead you speak about Dreamcast games ? Not Saturn like i write ? And i try Saturn games on my PC Windows 10 Intel I5 3.4 Ghz, not on ARM device. It's why i'm sure what i write ... and i try V4 V5 there are some strange things on some games with CHD, on Saturn it's only with translated games and really o don't found why because the ISO working fine ...
@Darknior this is the flycast repo, please don't hijack this issue to report about non-flycast issues...
CHDv5 works on my end. If you are using a .cue to create the .chd, it WILL NOT load though. For some reason, you NEED to use a .gdi to create the .chd files. If you have redump matching images, you can still download the .gdi needed from their Download section.
I'm guessing it's something to do with the extra gap info that .cue has compared to .gdi and some offset difference it's messing with loading data. Dunno. I'm just using logic. No idea what may be going on though.
I converted my Ikaruga GDI to CHD using different chdman versions (0.195, 0.202, 0.214, 0.215) and they all load fine. Can you get a stacktrace with a debug build of when it crashes?
You can use the regular non-debug retroarch.
gdb --args retroarch -v -L flycast_libretro.so ikaruga.chd
r
and when it crashes: bt
A debug build will probably be too slow to be usable. Please build a release version but with the -g
option in CFLAGS
so we get debug symbols at least. Then retry with gdb.
Next time you open an issue, give ALL useful details. Why don't you say you're using the NAOMI ikaruga and not the dreamcast one? This is completely different and that way I don't waste my time looking for non-existent problems...
Ok...Sorry for wasting your time!
I've had reports of apparently the same issue on Lakka on Rpi4. I have tried to reproduce it on android 32-bit and RPi3 without success.
It seems to happen only on ARM32 and for CHD v5 Naomi games. Also it doesn't seem to happen on Android (gcc? glibc?)
The workaround I used was to force using -O2 as optimization
--- a/Makefile
+++ b/Makefile
@@ -19,6 +19,7 @@
HAVE_CLANG ?= 0
HAVE_CDROM := 0
THREADED_RENDERING_DEFAULT := 0
+SET_OPTIM := -O2
TARGET_NAME := flycast
@@ -889,7 +890,7 @@
ifneq (,$(findstring msvc,$(platform)))
OPTFLAGS := -O2
else ifneq ($(platform), classic_armv7_a7)
- OPTFLAGS := -O3
+ OPTFLAGS := $(SET_OPTIM)
endif
CORE_DEFINES += -DNDEBUG
As I noticed if I compiled the debug version it worked fine. Not sure this will fix other platforms tho.
Thank you for the information. What version of gcc are you using?
8.3.0
I cross-compiled using gcc 8.3 and still cannot get a crash on the rpi3.
I compile flycast from source and V5 CHDs seem to not be working, I saw an old issue that claims they do work, but everytime I load a v5 it crashes
I have 3 versions of the same game in CHD, 2 are v5 and one is v4, v4 loads and plays fine, but v5 does not, this is the info for the CHDs:
V5, does not work:
Crashes with
V5 does not work:
Crashes with
V4, works fine
I compile with
Amlogic Odroid N2 using Emuelec on ARM 32bit user space