📄 macro.h
字号:
#ifndef __MACRO_H
#define __MACRO_H
#include "sig.h"
#include "avd.h"
void MacroSync(void);
void MacroAbort(void);
void MacroContinue(void);
void MacroDisplayBackground(void);
void MacroDisplayPreviewBackground(void);
void MacroForward(void);
void MacroBackward(void);
void MacroSearch(void);
void MacroFreeze(void);
void MacroOSD_OnOff(void);
void MacroPause(void);
void MacroPlay(void);
void MacroPlayLBA(void);
void MacroPlayOneSlide(void);
void MacroPlayRomSlide(void);
void MacroPlaySector(void);
void MacroPlayMP3(void);
void MacroPlayMSF(void);
void MacroPlayMSFPreview();
void MacroPlayTrackPreview(void);
void MacroPlayTrack();
void MacroPlayEntry();
void MacroPlaySegment();
void MacroPlaySlides(void);
void MacroPreview(void);
void MacroPreviewSector(void);
void MacroReadCD(void);
void MacroReadSeqheader(void);
void MacroSelectStream(void);
void MacroSetBackgroundColor(void);
void MacroSetOsdColor(void);
void MacroSetVideoFormat(void);
void MacroSetVolume(void);
void MacroSlowMotion(void);
void MacroStep(void);
void MacroStop(void);
void MacroVolUp(void);
void MacroVolDn(void);
enum {
ID_Abort = 0xf0,
ID_Continue = 0x10,
ID_DisplayBackground = 0x14,
ID_DisplayOsdFifo = 0x02,
ID_FastCDPlay = 0x13,
ID_Freeze = 0x08,
ID_OSD_OnOff = 0x12,
ID_Pause = 0x09,
ID_Play = 0x0a,
ID_PlayOneSlide = 0x04,
ID_PlayRomSlide = 0x05,
ID_PlaySector = 0x0b,
ID_PlaySlides = 0x06,
ID_Preview = 0x15,
ID_PreviewSector = 0x16,
ID_ReadCD = 0x07,
ID_ReadSeqheader = 0x1a,
ID_Search = 0x0c,
ID_SelectStream = 0x0d,
ID_SetBackgroundColor = 0x01,
ID_SetOsdColor = 0x03,
ID_SetVideoFormat = 0x0e,
ID_SetVolume = 0x18,
ID_SlowMotion = 0x0f,
ID_Step = 0x11
};
#define Abort() MacroAbort()
#define Sync() MacroSync()
#define Continue() MacroContinue()
#define DisplayBackground() MacroDisplayBackground()
#define DisplayPreviewBackground() MacroDisplayPreviewBackground()
#define OSD_OnOff(OnOff) \
do { \
MacroParam.OSD_OnOff.on_off=(OnOff); \
MacroOSD_OnOff(); \
} while (0)
#define FastForward() MacroForward()
#define FastBackward() MacroBackward()
/*
#define Search() MacroSearch()
#define Freeze() MacroFreeze()
#define Pause() MacroPause()
*/
#define Play() MacroPlay()
/*
#define Step() MacroStep()
*/
#define Stop() MacroStop()
#define PlayMSF(msf) \
do { \
MacroParam.PlayMSF.addr_msf = (msf); \
MacroPlayMSF(); \
} while (0)
#define PlayLBA(a, b) \
do { \
MacroParam.PlayLBA.lba = (a); \
MacroParam.PlayLBA.len = (b); \
MacroPlayLBA(); \
} while (0)
#define PlayMSFPreview(a, b, msf, trk) \
do { \
MacroParam.PlayMSFPreview.x = (a); \
MacroParam.PlayMSFPreview.y = (b); \
MacroParam.PlayMSFPreview.addr_msf = (msf); \
MacroParam.PlayMSFPreview.track = (trk); \
MacroPlayMSFPreview(); \
} while (0)
#define PlayTrackPreview(a, b, trk) \
do { \
MacroParam.PlayTrackPreview.x = (a); \
MacroParam.PlayTrackPreview.y = (b); \
MacroParam.PlayTrackPreview.track = (trk); \
MacroPlayTrackPreview(); \
} while (0)
#define PlayTrack(trk) \
do { \
MacroParam.PlayTrack.track = (trk); \
MacroPlayTrack(); \
} while (0)
#define PlayEntry(ent) \
do { \
MacroParam.PlayEntry.entry = (ent); \
MacroPlayEntry(); \
} while (0)
#define PlaySegment(seg) \
do { \
MacroParam.PlaySegment.segment = (seg); \
MacroPlaySegment(); \
} while (0)
#define PlayMP3(msf, len) \
do { \
MacroParam.PlayMP3.address_msf = (msf); \
MacroParam.PlayMP3.length = (len); \
MacroPlayMP3(); \
} while (0)
#define PlayRomSlide(RomAddr) \
do { \
MacroParam.PlayRomSlide.rom_addr = (RomAddr); \
MacroPlayRomSlide(); \
} while (0)
#define PlaySector() MacroPlaySector()
#define PlaySlides() MacroPlaySlides()
#define Preview() MacroPreview()
#define PreviewSector() MacroPreviewSector()
#define ReadCD() MacroReadCD()
#define ReadSeqheader() MacroReadSeqheader()
#define SelectStream(A, V) \
do { \
MacroParam.SelectStream.audio = (A); \
MacroParam.SelectStream.video = (V); \
MacroSelectStream(); \
} while (0)
#define SetBackgroundColor() MacroSetBackgroundColor()
#define SetOsdColor(Region, Color, Y, U, V) \
do { \
MacroParam.SetOsdColor.region = (Region); \
MacroParam.SetOsdColor.color = (Color); \
MacroParam.SetOsdColor.y = (Y); \
MacroParam.SetOsdColor.u = (U); \
MacroParam.SetOsdColor.v = (V); \
MacroParam.SetOsdColor.b = 0x03; \
MacroSetOsdColor(); \
} while (0)
#define SetVideoFormat(Fmt) \
do { \
MacroParam.SetVideoFormat.format = (Fmt); \
MacroSetVideoFormat(); \
} while (0)
#define Step(a) \
do { \
MacroParam.Step.factor = (a); \
MacroStep(); \
} while (0)
#define Pause(a) \
do { \
MacroParam.Pause.factor = (a); \
MacroPause(); \
} while (0)
#define Search(a) \
do { \
MacroParam.Search.factor = (a); \
MacroSearch(); \
} while (0)
#define SlowMotion(a) \
do { \
MacroParam.SlowMotion.slow = (a); \
MacroSlowMotion(); \
} while (0)
#define Freeze(a) \
do { \
MacroParam.Freeze.enable = (a); \
MacroFreeze(); \
} while (0)
#define SetVolume() MacroSetVolume()
/*
#define SlowMotion() MacroSlowMotion()
*/
#define VolumeUp() MacroVolUp()
#define VolumeDown() MacroVolDn()
/*
** SetVideoFormat(BYTE format)
*/
enum {
TV_NTSC = 0,
TV_PAL = 1,
TV_PALM = 2,
// TV_NTSC_D = 2,
// TV_PAL_D = 3,
// TV_NTSC_A = 4,
// TV_PAL_A = 5
};
/*
** MacroParam
** Parameter for macros
*/
typedef struct
{
BYTE mm, ss, ff;
BYTE sectors;
BYTE *dst;
} t_ReadCD;
typedef struct
{
BYTE region;
BYTE color;
BYTE y, u, v, b;
} t_SetOsdColor;
typedef struct
{
BYTE on_off;
} t_OSD_OnOff;
typedef struct
{
BYTE format;
} t_SetVideoFormat;
typedef struct
{
BYTE video;
BYTE audio;
} t_SelectStream;
typedef struct
{
BYTE volume;
} t_SetVolume;
typedef struct
{
BYTE *rom_addr;
} t_PlayRomSlide;
typedef struct
{
UINT32 addr_msf;
} t_PlayMSF;
typedef struct
{
UINT32 lba;
UINT32 len;
} t_PlayLBA;
typedef struct
{
BYTE track;
} t_PlayTrack;
typedef struct
{
UINT16 x;
UINT16 y;
UINT32 addr_msf;
BYTE track;
} t_PlayMSFPreview;
typedef struct
{
UINT16 x;
UINT16 y;
BYTE track;
} t_PlayTrackPreview;
typedef struct
{
UINT16 entry;
} t_PlayEntry;
typedef struct
{
UINT16 segment;
} t_PlaySegment;
typedef struct
{
UINT32 address_msf;
UINT32 length;
} t_PlayMP3;
typedef struct
{
BYTE factor;
} t_Step;
typedef struct
{
BYTE factor;
} t_Pause;
typedef struct
{
int factor;
} t_Search;
typedef struct
{
BYTE slow;
} t_SlowMotion;
typedef struct
{
BYTE enable;
} t_Freeze;
/*
** Command Record
*/
EXTERN union
{
t_ReadCD ReadCD;
t_SetOsdColor SetOsdColor;
t_OSD_OnOff OSD_OnOff;
t_SetVideoFormat SetVideoFormat;
t_SelectStream SelectStream;
t_PlayRomSlide PlayRomSlide;
t_PlayTrack PlayTrack;
t_PlayTrackPreview PlayTrackPreview;
t_PlayMSF PlayMSF;
t_PlayMSFPreview PlayMSFPreview;
t_PlayLBA PlayLBA;
t_PlayEntry PlayEntry;
t_PlaySegment PlaySegment;
t_PlayMP3 PlayMP3;
t_SetVolume SetVolume;
t_Step Step;
t_Pause Pause;
t_Search Search;
t_SlowMotion SlowMotion;
t_Freeze Freeze;
} MacroParam;
#endif __MACRO_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -