@cpasjuste Thanks to that save file I now understand exactly what causes the issue.
First the setup for the explanation.
Broken Sword 1 has three sound layers.
Type 1: BGM
Type 2: speech
Type 3: contextual sound clues (think of Link opening a chest).
All get played "over each other" so sometimes at the same time.
The game uses the third kind (contextual sound clues) very frequently - to guide the player.
From the savefile uploaded above:
1. You pick up the phone, click on the name on the envelope, and the game transitions into a dialogue screen with a type 3 sound clue starting to play.
2. You click on the gear on the lower right of the tent, it triggers a type 3 sound clue.
3. You exit the screen on the left, it triggers a type 3 sound clue.
4. You go through the gateway on the right of the screen you are in right now, it triggers a type 3 sound clue.
5. You use the manholecover tool (you got in step 2) on the manhole cover, it triggers a type 3 sound clue. (Entering the manhole triggers a video sequence.)
Whenever a type 3 sound clue plays on its own - everything is fine, no issue. Whenever a type 3 sound clue plays in combination with speech or BGM, everything is fine, no issue (this might be
new in the current build!). Whenever a type 3 sound clue plays - and you "initialize" another type 3 sound clue - while the first one is playing - the game crashes.
Now to the fun part - look at transitions 1 to 5 above. The game crashes on every one of those, when the first type 3 is still playing, and you go into the transition where another type 3 is triggered. If you wait for the sound queue to "finish playing" though, you can trigger the next one, WITHOUT the game crashing. The first one (telephone dialogue) takes a long time to finish, and is deceptive at the end, so wait longer than you think you have to wait on that one..
You can go past
four 100% reproducable crashes in the 1 to 5 sequence above, if you just wait for one type 3 sound clue to finish, before you continue.
This all ends once you enter the manhole though, because the game seems to transition from one type 3 into another type 3 on its own. So this time you cant wait.
Not finished.
From my knowledge of the game, all type 3 sound clues are stored as .ogg or .flac files, so it might be your implementation of the playback of those files that causes the crashes. (One file is played, then another play is triggered, while the first one is still playing.)
I understand, that this is _the_ definition of a race condition issue, but maybe its something slightly different (.ogg or .flac playback engine related).
Maybe you can look into it, if you find the time.