bbbradsmith / hatariB

Libretro core for Hatari emulation of Atari ST STE TT Falcon
GNU General Public License v2.0
20 stars 3 forks source link

Double-Sided IPF crashes cpu (Deliverance) #45

Closed kristheb closed 6 months ago

kristheb commented 6 months ago

message is "CPU has crashed!" when loading.

using libreto 1.15.0 and hatarib 0.3. details of my config see in attached debug log file.

retroarch2024_04_2721_41_32.log

DJM75 commented 6 months ago

Yes... I just tested the game and got the same error using the .ipf rom (the .st one works fine). Just to be sure, I tried to run the "Deliverance" .ipf rom on Hatari 2.4.1 and 2.5.0 (using the same hatariB settings) and it doesn't crash, so it seems to be a problem related to hatariB.

bbbradsmith commented 6 months ago

@kristheb Is this a report specifically about an IPF version of Deliverance, or about more than one game?

kristheb commented 6 months ago

tried a few, this one was brokenAm 28.04.2024 um 18:08 schrieb Brad Smith @.***>: @kristheb Is this a report specifically about an IPF version of Deliverance, or about more than one game?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

bbbradsmith commented 6 months ago

Okay thanks. I'll add Deliverance to the issue title to help myself organize.

DJM75 thank you for comparing against Hatari 2.4.1, that's always the first step I have to go through with error reports. :)

Edit: I can confirm that I can reproduce the crash in hatariB but not Hatari 2.4.1.

bbbradsmith commented 6 months ago

I noticed a few things wrong with the IPF code which I've corrected now, but it didn't change this bug. I tried transplanting my dynamic-loading IPF code into Hatari 2.4.1 too and... it doesn't reproduce the problem there.

I had noticed in the log some bus warnings with EmuTOS and sometimes the cold reset requires two resets to work. I have a feeling it might be the problem if I could diagnose that. I think IPF is unrelated, it just happens to be a case that exposes the existing issue. (A reliable test case, thankfully!) Currently working on some debug instrumentation to try and figure it out...

bbbradsmith commented 6 months ago

Okay, should be fixed in b488da3 please try the unstable build if you have a chance.

The bug was that I had made a "single sided drive" setting that was 0 off, 1 on... but I put that into the variable for number of drive sides... which was supposed to be 2 or 1. It turns out all the other code only checks if the value is 1 or not, but IPF depends on it being 2 for 2 sided. Who knows that its code does with a "0 sided drive". Well, that was silly of me.

kristheb commented 6 months ago

tried it with the new build, stil the cpu error.Am 29.04.2024 um 10:38 schrieb Brad Smith @.***>: Okay, should be fixed in b488da3 please try the unstable build if you have a chance. The bug was that I had made a "single sided drive" setting that was 0 off, 1 on... but I put that into the variable for number of drive sides... which was supposed to be 2 or 1. It turns out all the other code only checks if the value is 1 or not, but IPF depends on it being 2 for 2 sided. Who knows that its code does with a "0 sided drive". Well, that was silly of me.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

bbbradsmith commented 6 months ago

Are you sure it was an unstable build? You should be able to get it here: https://nightly.link/bbbradsmith/hatariB/workflows/build/main

DJM75 commented 6 months ago

Okay, should be fixed in [b488da3]

I confirm it is fixed, the game works fine, no more cpu error ;)

kristheb commented 6 months ago

my bad. i used the eight build but the wrong tos 1.04.worked with emutos 1.3. thxAm 29.04.2024 um 17:58 schrieb Brad Smith @.***>: Are you sure it was an unstable build? You should be able to get it here: https://nightly.link/bbbradsmith/hatariB/workflows/build/main

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

DJM75 commented 6 months ago

my bad. i used the eight build but the wrong tos 1.04.worked with emutos 1.3

Btw it works fine with TOS 1.04 as well...

bbbradsmith commented 6 months ago

Deliverance is interesting, I hadn't tried it before. I thought it was going to be a river canoeing game or something based on the movie, but it was more like Gods or Shadow of the Beast, and inspired by Hewson's Stormlord? The character art was really impressive, though the scrolling is really rough. I got as far as the dragon boss.