nds-bootstrap icon indicating copy to clipboard operation
nds-bootstrap copied to clipboard

Inferno DS homebrew panics/freezes

Open mehlon opened this issue 5 years ago • 4 comments

Your console

Tell us which console you are using:

  • [ ] DS Phat/Lite
  • [ ] DSi (XL)
  • [ ] Old 3DS/2DS (XL)
  • [ X ] New 3DS/2DS (XL)

CFW and configuration

Tell us which CFW do you have:

DSi:

  • [ ] (No CFW) DSiWarehax (such as Flipnote Lenny, Sudokuhax, etc.)
  • [ ] (No CFW) Unlaunch only [please specify version]
  • [ ] Unlaunch+HiyaCFW [please specify versions of both]

3DS/2DS:

  • [ X ] Luma3DS
  • [ ] Rei-Six
  • [ ] Other/Older CFW [specify]

nds-bootstrap version

Tell us which versions you are using:

  • [ ] Release [0.25.3]
  • [ X ] Nightly [bb7ae4e72]

Your device

Tell us which card you are using:

  • [ X ] SD Card
  • [ ] (Slot-1) Flashcard

If this issue only affects a certain game, which game is it?

Inferno DS https://gamebrew.org/wiki/Inferno_DS

Expected behaviour

The Inferno ROM should boot, display "Inferno Fourth Edition" and ask for which root filesystem to use. Using the D-Pad to select it and then pressing Down should open the window manager.

Actual behaviour

Depending on the settings, there are two outcomes:

  1. If the ROM is booted in DS mode, a message panic: arm7 cpu halted will show, then the root filesystem prompt will show as normal, but using the D-Pad does nothing. (Presumably because arm7 controls the D-Pad input)
  2. If the ROM is booted in DSi mode/DSi mode(force), no panic message shows, but the game freezes after Initial Dis: "/osinit.dis"

Notably, none of the other settings, except for DSi mode, change the behavior of the game. Even if you set the arm9 cpu speed to TWL but run it in DS mode, it will still say "panic: arm7 cpu halted". Likewise for VRAM.

Steps to reproduce

  1. Download the NDS file from https://gamebrew.org/wiki/Inferno_DS
  2. Run it with Twilight Menu++ in DS Mode
  3. Try using the D-Pad to select a boot option
  4. Run it again in DSi Mode
  5. Try using the D-Pad again

Other notes

The code can also be found at https://github.com/mjl-/inferno-ds

The game freezes on emulators desmume and no$gba. It runs well on melonDS.

mehlon avatar Oct 14 '19 10:10 mehlon

It seems that "direct boot" also affects the outcome. Running with "Direct boot: yes" in DS mode makes it freeze as per outcome (2).

mehlon avatar Oct 14 '19 11:10 mehlon

Try with a RAM disk.

RocketRobz avatar Oct 14 '19 14:10 RocketRobz

I tried generating an empty ramdisk of 26 megabytes with GodMode9 (put in ramdisks/[romname].img) then selecting ramdisk 0 from Twilight Menu. However this still gave the same results for both (1) and (2). This specific build of Inferno is a standalone so I don't think it requires SD card access to function.

mehlon avatar Oct 14 '19 15:10 mehlon

Just tried it in 0.54.2. While r175 (fixes to screen.c, r4ds reads and arm7/touch.c) still doesn't work, r165 does work for me. A RAM disk made no difference in regards to r175.

spellboundtriangle avatar Mar 09 '22 15:03 spellboundtriangle