X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftape.h;h=934239f202d030d2c51cd4826185bee807017f9d;hb=9c92df9586b75ab4afc1345e944108e95e2f8174;hp=6b536fb1901baa68dedefdf1bbc649301c1328cc;hpb=f7f811394065061581b0fb679687e473b4ce03cc;p=rocksndiamonds.git diff --git a/src/tape.h b/src/tape.h index 6b536fb1..934239f2 100644 --- a/src/tape.h +++ b/src/tape.h @@ -50,37 +50,40 @@ #define VIDEO_STATE_TIME_OFF (1 << 8) #define VIDEO_STATE_TIME_ON (1 << 9) #define VIDEO_STATE_TIME (VIDEO_STATE_TIME_OFF | VIDEO_STATE_TIME_ON) +#define VIDEO_STATE_FRAME_OFF (1 << 10) +#define VIDEO_STATE_FRAME_ON (1 << 11) +#define VIDEO_STATE_FRAME (VIDEO_STATE_FRAME_OFF | VIDEO_STATE_FRAME_ON) -#define VIDEO_STATE_FFWD_OFF (1 << 10) -#define VIDEO_STATE_FFWD_ON (1 << 11) +#define VIDEO_STATE_FFWD_OFF (1 << 12) +#define VIDEO_STATE_FFWD_ON (1 << 13) #define VIDEO_STATE_FFWD (VIDEO_STATE_FFWD_OFF | VIDEO_STATE_FFWD_ON) -#define VIDEO_STATE_PBEND_OFF (1 << 12) -#define VIDEO_STATE_PBEND_ON (1 << 13) +#define VIDEO_STATE_PBEND_OFF (1 << 14) +#define VIDEO_STATE_PBEND_ON (1 << 15) #define VIDEO_STATE_PBEND (VIDEO_STATE_PBEND_OFF | VIDEO_STATE_PBEND_ON) -#define VIDEO_STATE_WARP_OFF (1 << 14) -#define VIDEO_STATE_WARP_ON (1 << 15) +#define VIDEO_STATE_WARP_OFF (1 << 16) +#define VIDEO_STATE_WARP_ON (1 << 17) #define VIDEO_STATE_WARP (VIDEO_STATE_WARP_OFF | VIDEO_STATE_WARP_ON) -#define VIDEO_STATE_WARP2_OFF (1 << 16) -#define VIDEO_STATE_WARP2_ON (1 << 17) +#define VIDEO_STATE_WARP2_OFF (1 << 18) +#define VIDEO_STATE_WARP2_ON (1 << 19) #define VIDEO_STATE_WARP2 (VIDEO_STATE_WARP_OFF | VIDEO_STATE_WARP_ON) -#define VIDEO_STATE_1STEP_OFF (1 << 18) -#define VIDEO_STATE_1STEP_ON (1 << 19) +#define VIDEO_STATE_1STEP_OFF (1 << 20) +#define VIDEO_STATE_1STEP_ON (1 << 21) #define VIDEO_STATE_1STEP (VIDEO_STATE_1STEP_OFF | VIDEO_STATE_1STEP_ON) -#define VIDEO_PRESS_PLAY_ON (1 << 20) -#define VIDEO_PRESS_PLAY_OFF (1 << 21) +#define VIDEO_PRESS_PLAY_ON (1 << 22) +#define VIDEO_PRESS_PLAY_OFF (1 << 23) #define VIDEO_PRESS_PLAY (VIDEO_PRESS_PLAY_OFF | VIDEO_PRESS_PLAY_ON) -#define VIDEO_PRESS_REC_ON (1 << 22) -#define VIDEO_PRESS_REC_OFF (1 << 23) +#define VIDEO_PRESS_REC_ON (1 << 24) +#define VIDEO_PRESS_REC_OFF (1 << 25) #define VIDEO_PRESS_REC (VIDEO_PRESS_REC_OFF | VIDEO_PRESS_REC_ON) -#define VIDEO_PRESS_PAUSE_ON (1 << 24) -#define VIDEO_PRESS_PAUSE_OFF (1 << 25) +#define VIDEO_PRESS_PAUSE_ON (1 << 26) +#define VIDEO_PRESS_PAUSE_OFF (1 << 27) #define VIDEO_PRESS_PAUSE (VIDEO_PRESS_PAUSE_OFF | VIDEO_PRESS_PAUSE_ON) -#define VIDEO_PRESS_STOP_ON (1 << 26) -#define VIDEO_PRESS_STOP_OFF (1 << 27) +#define VIDEO_PRESS_STOP_ON (1 << 28) +#define VIDEO_PRESS_STOP_OFF (1 << 29) #define VIDEO_PRESS_STOP (VIDEO_PRESS_STOP_OFF | VIDEO_PRESS_STOP_ON) -#define VIDEO_PRESS_EJECT_ON (1 << 28) -#define VIDEO_PRESS_EJECT_OFF (1 << 29) +#define VIDEO_PRESS_EJECT_ON (1 << 30) +#define VIDEO_PRESS_EJECT_OFF (1 << 31) #define VIDEO_PRESS_EJECT (VIDEO_PRESS_EJECT_OFF | VIDEO_PRESS_EJECT_ON) /* tags to draw video display labels or symbols only */ @@ -143,6 +146,8 @@ struct TapeTextInfo struct TextPosInfo time_hh; struct TextPosInfo time_mm; struct TextPosInfo time_ss; + + struct TextPosInfo frame; }; struct TapeInfo @@ -157,6 +162,7 @@ struct TapeInfo unsigned int date; unsigned int counter; unsigned int length; + unsigned int length_frames; unsigned int length_seconds; unsigned int delay_played; boolean pause_before_death; @@ -210,7 +216,8 @@ void TapeStopPlaying(void); byte *TapePlayAction(void); void TapeStop(void); void TapeErase(void); -unsigned int GetTapeLength(void); +unsigned int GetTapeLengthFrames(void); +unsigned int GetTapeLengthSeconds(void); void TapeQuickSave(void); void TapeQuickLoad(void); void InsertSolutionTape(void);