/* forward declaration for internal use */
static void HandleTapeButtons(struct GadgetInfo *);
+static void TapeStopIndexSearch();
static struct GadgetInfo *tape_gadget[NUM_TAPE_BUTTONS];
if (tape.index_search)
{
- tape.index_search = FALSE;
-
- SetDrawDeactivationMask(REDRAW_NONE);
- audio.sound_deactivated = FALSE;
-
- RedrawPlayfield(TRUE, 0,0,0,0);
- DrawGameDoorValues();
+ TapeStopIndexSearch();
if (tape.quick_resume)
{
tape.playing = FALSE;
tape.pausing = FALSE;
+ if (tape.index_search)
+ TapeStopIndexSearch();
+
DrawVideoDisplay(VIDEO_STATE_PLAY_OFF, 0);
MapTapeEjectButton();
}
return(tape_length * GAME_FRAME_DELAY / 1000);
}
-void TapeIndexSearch()
+static void TapeStartIndexSearch()
{
tape.index_search = TRUE;
}
}
-void TapeSingleStep()
+static void TapeStopIndexSearch()
+{
+ tape.index_search = FALSE;
+
+ SetDrawDeactivationMask(REDRAW_NONE);
+ audio.sound_deactivated = FALSE;
+
+ RedrawPlayfield(TRUE, 0,0,0,0);
+ DrawGameDoorValues();
+}
+
+static void TapeSingleStep()
{
if (options.network)
return;
if (!TAPE_IS_EMPTY(tape))
{
TapeStartGamePlaying();
- TapeIndexSearch();
+ TapeStartIndexSearch();
tape.quick_resume = TRUE;
}
case TAPE_CTRL_ID_INDEX:
if (tape.playing)
- TapeIndexSearch();
+ TapeStartIndexSearch();
else if (tape.recording)
TapeSingleStep();
break;