libretro / dosbox-libretro

Port of DOSBox (upstream) to the libretro API.
GNU General Public License v2.0
62 stars 40 forks source link

Crashes when starting (CIA) #45

Open Teuns opened 7 years ago

Teuns commented 7 years ago

Hi,

I am trying to get it work in the latest RetroArch that is available, but after I compiled everything (with the changes inside), the CIA version is printing out "sdmc:/retroarch/ but after that it freezes and it crashes the application. However, the homebrew version just works as expected.

Any hotfixes to make this work?

Thanks

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/39426390-crashes-when-starting-cia?utm_campaign=plugin&utm_content=tracker%2F2175333&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F2175333&utm_medium=issues&utm_source=github).
meepingsnesroms commented 7 years ago

What is the cia version/homebrew version? What os is this? Is that a valid path?(it looks like a URL not a file path)(at least not for any os I know)

Teuns commented 7 years ago

The CIA version is 1.3.6, same as the homebrew version.

Operating system is CTR & yes, it is a valid path. The same logged in the homebrew version as well, but their side it doesn't crash.

meepingsnesroms commented 7 years ago

This is likely data execution prevention as the 3ds is "secure" capitalist crapware. (my opinion;may or may not reflect the beliefs of libretro as a whole)

Try a dosbox.conf with:core=normal If there is a line core=auto or core=dynamic set it to normal

That will disable the dynarec.(which executes data it generates from the dos game)

Post if that works or not. (if not could you post a debug log or stack trace)

aliaspider commented 7 years ago

the 3ds nightlies include a dosbox cia build, is that one broken too ? by the way, dynarec is possible from a 3ds cia build, it just requires some function calls on the translation buffer to set it to RWX, which wasn't done yet for dosbox, so for now you need to disable the dynarec.

Teuns commented 7 years ago

Nope, that one not, somehow...

andres-asm commented 7 years ago

May I ask... why are you compiling instead of using our nighlies?

Teuns commented 7 years ago

Just to learn about it - and adding other features if I can. Will try tomorrow again to check if it works, I may have forgotten somewhat in the compiling (Netherlands time)

aliaspider commented 7 years ago

you made some changes to the code I assume? those are probably the cause. it is probably best to try to compile the unmodified source first before trying out your modifications, that way you can single out the cause a lot easier.

andres-asm commented 7 years ago

Also changes are better implemented in a desktop version first, easier to test, deploy and debug

meepingsnesroms commented 7 years ago

This must be an issue with your code,compiler,toolchain or device exploit. Since the nightly works that means its not the dynarec.

Jimmy-Z commented 7 years ago

so dynarec is still not available for 3DS? I tried core=dynamic and it crashes the 3DS immediately.

and apparently it's available for PSVita? it runs significantly faster than N3DS.

ShadowEO commented 4 years ago

Dynarec still causing crashes on the 3DS in installable format (CIA). Was getting crashes when attempting to run protected mode applications until I switched the core into interpreter mode. Using latest nightly of the core.