OpenRakis / Cryogenic

An open-source reimplementation of Cryo's DUNE game (WIP)
Apache License 2.0
24 stars 1 forks source link

The code crashes the emulator #1

Closed maximilien-noal closed 2 years ago

maximilien-noal commented 2 years ago

After a Grp5 instruction. The DOSInt21Handler is asked for a service at index 0 It doesn't exist -> exception -> crash.

Doesn't happen in the Java original, with or without running overrides from CryoDuneRE.

maximilien-noal commented 2 years ago

Also neither does the call for the service at index 0, neither the crash happen with the emulator alone (: without cryogenic injecting any code)

It also doesn't happen if --UseCodeOverrides is not specified.

kevinferrare commented 2 years ago

Fixed in spice86 with commit https://github.com/OpenRakis/Spice86/commit/951894aa3595a42078eebefd11b8be8f09e1576d ! The emulator was not calling what the override was returning and this was causing anything overridden to be called twice.