From aaa0e0cdc38382b42ecdf83c76aa8535025c78f7 Mon Sep 17 00:00:00 2001 From: Sergio Martin Date: Thu, 6 May 2021 08:07:45 +0200 Subject: [PATCH 1/2] Adding exit room timer to quick save --- src/seg000.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/seg000.c b/src/seg000.c index d8c5c95a..e72ffc5d 100644 --- a/src/seg000.c +++ b/src/seg000.c @@ -343,6 +343,8 @@ int quick_process(process_func_type process_func) { process(ctrl1_up); process(ctrl1_down); process(ctrl1_shift2); + // For proper emulation of the overflow glitch + process(exit_room_timer); // replay recording state #ifdef USE_REPLAY process(curr_tick); From e1f386ac463c8e5144105b99161bcce824980e51 Mon Sep 17 00:00:00 2001 From: Sergio Martin Date: Thu, 6 May 2021 08:34:52 +0200 Subject: [PATCH 2/2] Conserving exit room timer --- src/seg000.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/seg000.c b/src/seg000.c index e72ffc5d..9df2bd46 100644 --- a/src/seg000.c +++ b/src/seg000.c @@ -421,7 +421,7 @@ void restore_room_after_quick_load() { // Get rid of "press button" message if kid was dead before quickload. text_time_total = text_time_remaining = 0; //next_sound = current_sound = -1; - exit_room_timer = 0; + //exit_room_timer = 0; // This prevents the overflow glitch from happening } int quick_load() { @@ -1251,6 +1251,7 @@ void __pascal far check_the_end() { end_sequence(); } different_room = 1; + exit_room_timer = 2; // Added to remember exit room timer loadkid(); anim_tile_modif(); start_chompers();