X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Ftape.c;h=963ca1e89a6253b7a8f6d25fc9c264612395554c;hp=ff6d10f250c8e48d6e440b0bbbb3eb9690944f9e;hb=00ca5a80f980e039d78ed670e88f88a85d222461;hpb=e9a2029050b7d36830d3a6c7e1b21831ba0d2b42 diff --git a/src/tape.c b/src/tape.c index ff6d10f2..963ca1e8 100644 --- a/src/tape.c +++ b/src/tape.c @@ -1311,21 +1311,27 @@ static void HandleTapeButtonsExt(int id) DrawVideoDisplayPlayState(); } else if (tape.recording) + { TapeSingleStep(); + } break; case TAPE_CTRL_ID_STOP: TapeStop(); + break; case TAPE_CTRL_ID_PAUSE: TapeTogglePause(TAPE_TOGGLE_MANUAL); + break; case TAPE_CTRL_ID_RECORD: if (TAPE_IS_STOPPED(tape)) + { TapeStartGameRecording(); + } else if (tape.pausing) { if (tape.playing) /* PLAY -> PAUSE -> RECORD */ @@ -1333,6 +1339,7 @@ static void HandleTapeButtonsExt(int id) else TapeTogglePause(TAPE_TOGGLE_MANUAL); } + break; case TAPE_CTRL_ID_PLAY: @@ -1357,9 +1364,10 @@ static void HandleTapeButtonsExt(int id) // continue playing in normal mode tape.fast_forward = FALSE; tape.warp_forward = FALSE; - tape.pause_before_end = FALSE; tape.deactivate_display = FALSE; + tape.pause_before_end = FALSE; + TapeTogglePause(TAPE_TOGGLE_MANUAL); } else if (!tape.fast_forward) /* PLAY -> FFWD */ @@ -1387,6 +1395,7 @@ static void HandleTapeButtonsExt(int id) DrawVideoDisplayPlayState(); } + break; default: