dsa.h
来自「ESS3890+SL原代码(1*16内存)」· C头文件 代码 · 共 198 行
H
198 行
/* Copyright 1996, ESS Technology, Inc. *//* SCCSID @(#)dsa.h 4.10 10/08/03 *//* * $Log$ */#ifndef _dsa_h_#define _dsa_h_#include "common.h"/************************************************************************ * Global defines. * ************************************************************************//* * currDSAmode bits * 2:0 sets the speed * 000: illegal * 001: normal CD-DA speed * 010: double speed * other values are reserved * 3 0: audio mode; 1: CD-ROM mode * 5:4 Actual Title, time, index (ATTI) setting * 00: no title, index, or time send during play modes * 01: sending title, index, and absolute time (min/sec) * 10: sending title, index and relative time (min/sec) * 11: reserved * 7-6 reserved */ #define MODE_SPEED_NORMAL 0x1#define MODE_SPEED_DOUBLE 0x2#define MODE_AUDIO 0x0#define MODE_CDROM 0x8#define MODE_ATTI_NONE 0x0#define MODE_ATTI_ABS 0x10#define MODE_ATTI_REL 0x20/* CD speed and settings */#define SET_CD_1X 0 /* Set servo speed to 1X */ #define SET_CD_2X 1 /* Set servo speed to 2X */#define SET_CD_4X 2 /* Set servo speed to 4X *//* 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#if (defined(DATA_CD) || defined(MEMORY_DEVICE))#define CD_DATA 5#endif/* "VIDEO_CD" and "ENTRYVCD" strings */#define VIDE 0x56494445 /* "VIDE" */#define O_CD 0x4f5f4344 /* "O_CD" */#define ENTR 0x454e5452 /* "ENTR" */#define YVCD 0x59564344 /* "YVCD" */#define CD_I 0x43442d49 /* "CD-I" *//* for CD7II */#define SET_CD_DATA_1X 1 /* Set servo to 1X data CD (e.g. VCD) */#define SET_CD_AUDIO 2 /* Set speed and DAC for CD7II audio *//* 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 SONY3D/* tray state */#define TRAY_OPENED 1#define TRAY_CLOSED 2#define TRAY_OPENING 3#define TRAY_CLOSING 4#endif#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; int firsttrack; /* first track # */ int lasttrack; /* last track # */ unsigned int leadout; /* lead out time */} CDINFO;/************************************************************************ * Global variables. * ************************************************************************/#ifdef PLAY20GBLDEF0(unsigned char num_of_session); /* number of session */GBLDEF0(int last_session_msf); /* last session msf */GBLDEF_0(char tv_changed, 0);#endif /* PLAY20 *//* for playSectors_step_by_step() */#define PLAY_SECTOR_INIT 0#define PLAY_SECTOR_DSA_GO 1#define PLAY_SECTOR_DSA_FIND_INIT 2#define PLAY_SECTOR_DSA_FIND 3GBLDEF(int play_sector_state, PLAY_SECTOR_INIT);/* for playCDDA_step_by_step() */#define PLAY_CDDA_INIT 0#define PLAY_CDDA_XPORT_START 1#define PLAY_CDDA_DSA_GO 2#define PLAY_CDDA_WAIT_BEGIN 3#define PLAY_CDDA_TDM_ON 4#define PLAY_CDDA_MATCH 5GBLDEF(int play_cdda_state, PLAY_CDDA_INIT);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 char servo_track_changed;EXPORT unsigned int servo_info;EXPORT unsigned int last_servo_info;EXPORT unsigned char program_on;EXPORT char use_dig_out; /* 1 to enable digital mute */EXPORT char limit_sw_active_high;/************************************************************************ * Exported functions (called from routines in EPROM) * ************************************************************************/EXPORT int dsa_open(void);EXPORT int dsa_close(int power_down);EXPORT 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);EXPORT int playSectors_step_by_step(uint, uint, int, int);EXPORT int playCDDA_step_by_step(int, int, int, int);EXPORT int dsa_go(unsigned int);EXPORT int dsa_mode(int);/************************************************************************ * Exported functions (called from routines in SRAM) * ************************************************************************/EXPORT void service_dsa(int);#endif /* _dsa_h_ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?