📄 dsa.h
字号:
/* Copyright 1996, ESS Technology, Inc. *//* SCCSID @(#)dsa.h 1.20 12/12/97 *//* * $Log$ */#ifndef _dsa_h_#define _dsa_h_#include "common.h"/************************************************************************ * Global defines. * ************************************************************************//* CD type */#define CD_UNKNOWN 0 /* Has to be 0 */#define CD_CDDA 1#define CD_CDI 2#define CD_VCD 3#define CD_NODISC 4/* "VIDEO_CD" and "ENTRYVCD" strings */#define VIDE 0x56494445 /* "VIDE" */#define O_CD 0x4f5f4344 /* "O_CD" */#define ENTR 0x454e5452 /* "ENTR" */#define YVCD 0x59564344 /* "YVCD" *//* "CD-I" string */#define CD_I 0x43442d49 /* "CD-I" *//* Global error code (for communication with external micro processor) */#define ERR_LTOC 0x80 /* LTOC error ("Disc error") */#define ERR_UNKNOWNCD 0x81 /* Unknown CD type ("Unknown CD type") */#define ERR_TRAYEMPTY 0x82 /* Empty CD tray ("Insert CD") */#define ERR_DISCERR 0x83 /* Disc error ("Disc error") */#define ERR_DSAMODE 0x84 /* DSA mode error ("CD drive error") */#define ERR_DSADAC 0x85 /* DSA DAC error ("CD drive error") */#define ERR_DSARELEASE 0x86 /* DSA release A->B error ("CD driver") */#define ERR_DSAA2B 0x87 /* DSA go A->B error */#define ERR_GETSECTOR 0x90 /* getSector error */#define ERR_EARLYQUIT 0x91 /* User requests to quit */#define ERR_EXCEEDTK 0x92 /* Too many tracks */#define ERR_EXCEEDSEG 0x93 /* Too many segments */#define ERR_PLAYSECTORS 0x94 /* playSectors error */#ifdef SERVO_6003/* Philips 6003 CD loader define */#define ROTATE_CLOCK_MOVE DSC_set_aux(1, 0, 0x20)#define ROTATE_CLOCK_ANTI_MOVE DSC_set_aux(1, 0, 0x10)#define ROTATE_STOP DSC_set_aux(1, 1, 0x30)#define TRAY_OPEN DSC_set_aux(1, 0, 0x01)#define TRAY_CLOSE DSC_set_aux(1, 0, 0x02)#define TRAY_STOP DSC_set_aux(1, 1, 0x03)#define CD_UP_IS_HIGH EAUX10_HIGH /*test up CD */#define CD_UP_IS_LOW EAUX10_LOW /*test down CD*/#define DISC_1_IS_HIGH EAUX6_HIGH /*test disc is not in disc-1*/#define DISC_1_IS_LOW EAUX6_LOW /*test disc is disc-1*/#define TRAY_SH_IS_HIGH EAUX11_HIGH /*test loader is moving*/#define TRAY_SH_IS_LOW EAUX11_LOW /*test loader has stopped*/#define TRISTATE_6003_EAUX { DSC_set_aux(0, 2, 0x40); \ DSC_set_aux(1, 2, 0x0c); }EXPORT int eject_6003_retry; /* philips 6003 loader open/close retry flag */#endifEXPORT unsigned char cd_opened; /* 1 -> CD is open *//************************************************************************ * Shared data type. * ************************************************************************/typedef struct _cd_info { unsigned char type;#ifdef CUST6 /* CUST6 servo module assume unsigned char for '..track' */ unsigned char firsttrack; /* first track # */ unsigned char lasttrack; /* last track # */#else int firsttrack; /* first track # */ int lasttrack; /* last track # */#endif /* CUST6 */ unsigned int leadout; /* lead out time */} CDINFO;/************************************************************************ * Global variables. * ************************************************************************/#ifdef PLAY20GBLDEF_0(char tv_changed, 0);GBLDEF_0(unsigned int servo_track, 0); /* Track number reported by servo */#endifGBLDEF_0(int play_clip, 0);EXPORT int power_up;EXPORT CDINFO CDinfo;EXPORT int CDinited;EXPORT char forceDSAabort;EXPORT int first_seg_ad;EXPORT int num_of_track;EXPORT int bcd_num_of_track;EXPORT int tdm_played;EXPORT unsigned int err_code;EXPORT unsigned int servo_track_changed;EXPORT unsigned int servo_info;EXPORT unsigned int last_servo_info;EXPORT unsigned char program_on;/************************************************************************ * Exported functions (called from routines in EPROM) * ************************************************************************/EXPORT int dsa_open(void);#ifndef CUST3EXPORT int dsa_close(int power_down);#elseEXPORT int dsa_close();#endifEXPORT int dsa_pause(void);EXPORT int dsa_pauserelease(void);EXPORT int dsa_get_disc_status(unsigned char *status);EXPORT int dsa_release(unsigned int, unsigned int);EXPORT int dsa_stop(void);EXPORT int dsa_ltoc(unsigned int *, int);EXPORT int dsa_rotate_disk(int direction);EXPORT void receive_dsa(void);EXPORT void dsa_reset();EXPORT int initCD(void);EXPORT int abortLtoc(void);EXPORT int playCDDA(int, int, int);EXPORT int currentTVmode;EXPORT void fill_screen(int color);EXPORT unsigned char *CDI_ptr;EXPORT int getSectors(unsigned int, int, int);#if (VCDROM || JUMPGAME)EXPORT void JumpGame();#endif/************************************************************************ * Exported functions (called from routines in SRAM) * ************************************************************************/EXPORT void service_dsa(int);#endif /* _dsa_h_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -