From aedf710aef6d181532ab12fef41c203a1c8b22e6 Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Wed, 27 Nov 2024 21:20:46 +0100 Subject: [PATCH] added using old BD engine for tapes from 4.4.0.0-test-3 and earlier --- src/tools.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/tools.c b/src/tools.c index 8416aae1..e59ee2c3 100644 --- a/src/tools.c +++ b/src/tools.c @@ -10673,8 +10673,23 @@ int getBeltSwitchElementFromBeltNrAndBeltDir(int belt_nr, int belt_dir) boolean useOldEngine_BD(void) { - // only use old BD game engine if playing specifically tagged tapes - return (tape.playing && (tape.property_bits & TAPE_PROPERTY_BD_OLD_ENGINE)); + // never use old BD game engine for new games (but only when playing tapes) + if (!tape.playing) + return FALSE; + + // use old BD game engine if playing specifically tagged native BD replays + if (tape.bd_replay) + return TRUE; + + // use old BD game engine if playing specifically tagged or patched tapes + if (tape.property_bits & TAPE_PROPERTY_BD_OLD_ENGINE) + return TRUE; + + // use old BD game engine if playing tapes from old 4.4.0.0 pre-release versions + if (tape.game_version < VERSION_IDENT_FULL(4,4,0,0, 0,4,0)) + return TRUE; + + return FALSE; } boolean getTimePlayed_BD(void) -- 2.34.1