MiSTer-devel / Saturn_MiSTer

Sega Saturn for MiSTer
58 stars 17 forks source link

Salamander Deluxe Pack Plus (Japan) // Salamander 2 can't boot at all (Black screen) #5

Closed Zet-sensei closed 10 months ago

Zet-sensei commented 1 year ago

Issue: The game doesn't start at all when choosing it on the main menu.

CD Image: Redump BIN/CUE

Core Version: 20231010

YLFAndy commented 11 months ago

More details from issue https://github.com/MiSTer-devel/Saturn_MiSTer/issues/42:

The code for the Salamander 2 loader in the Salamander Deluxe Pack executes to the point where it tries to set the VBE register. The register bit then flops high and low (should stay pulled high / 1 until the VBlank erase completes). Initially I thought Salamander 2 used HiRes/8bit mode but TVM remains 000 (standard) and the EWRR shows a frame buffer erase lower right coordinate set of 0x4CC7 (~304x200) when it actually loads. All other Salamander games on the disc use a 320 x 184 coordinate set, 0x50B7, and load fine. Running signal tap shows that the registers which should get blnaked do correctly get blanked on load and FCM/FCT remain set , but then the VBE starts flopping and no further register writes occur. I'm guessing the VDP1 is refreshing the bit to 0 and the actual erase doesn't occur in this case, but that's just speculation.

Expected VDP 1 register state on load: TVM: 000 (Standard) VBE: 0 (VBE off) FBCM: 00111 (Manual Mode, Non-Interlaced) PTMR: 10 (Draw with frame change) (Erase registers as described above) Additionally, differing from the other Salamander games, Local X is set to 0x10, vs 0x20.

Expected during transition: VBE: 1 (stable) All plot/erasure registers zeroed out, everything else the same.

MiSTer does execute code up to the VBE set (you can see the title screen appear for one frame, after the fade to black, like real hardware) but then it hangs with the behavior described above

Zet-sensei commented 10 months ago

Fixed with https://github.com/MiSTer-devel/Saturn_MiSTer/commit/3686a8e7cfc997e134fb4e1ec8ad0794a9da4da4 Core 20240110