?? custdsa.h
字號:
/* Copyright 1996, ESS Technology, Inc. *//* SCCSID @(#)custdsa.h 1.34 2/24/98 *//* * This is for communication with Sony loader from customer * Modified from version 1.16 of custdsa.h for ES3204 code */#ifndef _CUSTDSA_H_#define _CUSTDSA_H_/* * In our hardware, AUX0 and AUX1 are open collector pads. * AUX2 and AUX3 are tristate which requires external pull-up resistors * for our application. * * We use * AUX0 as DSA WRN * AUX1 as DSA REQ * AUX2 as DSA CMD * AUX3 as DSA ACK */#ifdef NOHOSTPORT/* For 3210 there is no host port */#define EXT_INPUT (*(int *)x18000000) /* use BANK 2 */#define DSA_WRN 0x02 /* A2 of 74LS244 is connected to WRN */#define DSA_REQ 0x01 /* A1 of 74LS244 is connected to REQ */#define TV_SEL0 0x04 /* A3 of 74LS244 is connected to TV_SEL0 */#define TV_SEL1 0x08 /* A4 of 74LS244 is connected to TV_SEL1 */#ifdef CUST3_63#define SINGLE 0x10 /* A5 of 74LS244 is connected to SINGLE */#endif/*#define SET_HOST_WRN_LOW CLEAR_AUX0*/#define SET_HOST_WRN_HIGH EXT_INPUT = 0x3/*#define SET_HOST_REQ_LOW CLEAR_AUX1*/#define SET_HOST_REQ_HIGH EXT_INPUT = 0x3#define SET_HOST_CMD_LOW CLEAR_AUX7#define SET_HOST_CMD_HIGH SET_AUX7#define SET_HOST_ACK_LOW CLEAR_AUX6#define SET_HOST_ACK_HIGH SET_AUX6#ifdef DSC#define READ_DSC_AUX (DSC_cmd(dsc_aux0_datam, 0))#define MICRO_WRN_HIGH (READ_DSC_AUX & DSA_WRN)#define MICRO_REQ_HIGH (READ_DSC_AUX & DSA_REQ)#else#define MICRO_WRN_HIGH (EXT_INPUT & DSA_WRN)#define MICRO_REQ_HIGH (EXT_INPUT & DSA_REQ)#endif/* e2prom */#ifdef S215#ifdef E2PROM_CHIP#ifdef DSC#define READ_SDA_IN ((GET_EAUX15_8&0x40)?1:0) #define SET_SCL_HIGH SET_EAUX15 #define SET_SCL_LOW CLEAR_EAUX15#define SET_SDA_HIGH SET_EAUX14#define SET_SDA_LOW CLEAR_EAUX14#else#define READ_SDA_IN (mvd[riface_aux2]&0x1) /* aux 4 */#define SET_SCL_HIGH SET_AUX5#define SET_SCL_LOW CLEAR_AUX5#define SET_SDA_HIGH SET_AUX4#define SET_SDA_LOW CLEAR_AUX4#endif#endif#endif#define MICRO_WRN_LOW (!MICRO_WRN_HIGH)#define MICRO_REQ_LOW (!MICRO_REQ_HIGH)#ifdef CUST3_63#define MICRO_SINGLE (EXT_INPUT & SINGLE)#define MICRO_3DISC (!MICRO_SINGLE)#else#define MICRO_SINGLE 0#endif#ifdef CUST3_63#define SET_MUTEON CLEAR_AUX5#define SET_MUTEOFF SET_AUX5#endif/*#define HOST_CMD_HIGH (mvd[riface_aux1] & DSA_CMD)#define HOST_CMD_LOW (!HOST_CMD_HIGH)#define HOST_ACK_HIGH (mvd[riface_aux1] & DSA_ACK)#define HOST_ACK_LOW (!HOST_ACK_HIGH)*/#define DMA_TRE 0x10#define HOST_DMA_TRE 1 /*(mvd[r_hostirqstat] & DMA_TRE) */#define WRITE_HOST_DATA(x) write_data_to_up(x)#define READ_HOST_DATA (mvd[riface_aux1] & 0xf)#ifndef S215#define READ_TV_SYSTEM (((EXT_INPUT & 0x0c)>>2)==TV_NTSC)?\ TV_AUTO:(((EXT_INPUT&0x0c)>>2)==TV_AUTO)?\ TV_NTSC:((EXT_INPUT&0x0c)>>2)#else#ifdef DSC#define READ_VOCAL_ON (READ_DSC_AUX & 0x04)#else#define READ_VOCAL_ON ((EXT_INPUT & 0x1c)>>2)#endif#define READ_LOGO_NUMBER ((EXT_INPUT & 0xe0)>>5)#endif#else#define DSA_WRN 0x01 /* AUX0 is connected to WRN */#define DSA_REQ 0x02 /* AUX1 is connected to REQ *//*#define SET_HOST_WRN_LOW CLEAR_AUX0*/#define SET_HOST_WRN_HIGH SET_AUX0/*#define SET_HOST_REQ_LOW CLEAR_AUX1*/#define SET_HOST_REQ_HIGH SET_AUX1#define SET_HOST_CMD_LOW CLEAR_AUX2#define SET_HOST_CMD_HIGH SET_AUX2#define SET_HOST_ACK_LOW CLEAR_AUX3#define SET_HOST_ACK_HIGH SET_AUX3#define MICRO_WRN_HIGH (mvd[riface_aux1] & DSA_WRN)#define MICRO_WRN_LOW (!MICRO_WRN_HIGH)#define MICRO_REQ_HIGH (mvd[riface_aux1] & DSA_REQ)#define MICRO_REQ_LOW (!MICRO_REQ_HIGH)/*#define HOST_CMD_HIGH (mvd[riface_aux1] & DSA_CMD)#define HOST_CMD_LOW (!HOST_CMD_HIGH)#define HOST_ACK_HIGH (mvd[riface_aux1] & DSA_ACK)#define HOST_ACK_LOW (!HOST_ACK_HIGH)*/#define DMA_TRE 0x10#define HOST_DMA_TRE (mvd[r_hostirqstat] & DMA_TRE)#define WRITE_HOST_DATA(x) { mvd[r_hostdmaport] = (x); }#define READ_HOST_DATA ((mvd[r_hostdmaport] & 0xf0) >> 4 )#define READ_TV_SYSTEM ((mvd[r_hostdmaport] & 0x0f))#endif/* dsa commands */#define DSA_FIRST_MODE_FINISH 0x01#define DSA_RESUME_INFO 0x02#define DSA_PLAY_TRACK 0x03#define DSA_GO_MSF 0x04#define DSA_PAUSE_AHEAD 0x06#define DSA_REVERSE_KICK 0x07#define DSA_TIMING_INFO 0x08#define DSA_REQUEST_NORMAL 0x09#define DSA_VFD_CONTROL 0x0d#define DSA_CD_INFO 0x0e#define DSA_PROG_VFD 0x0f#define DSA_COMMAND 0xaa/* dsa data */#define DSA_EJECT 0x01#define DSA_CLOSE 0x01#define DSA_OPEN 0x01#define DSA_PAUSE 0x03#define DSA_REPEAT 0x04#define DSA_MEMORY 0x05#define DSA_PLAY 0x06#define DSA_STOP 0x07#define DSA_FB 0x0a#define DSA_FF 0x0b#define DSA_NEXT 0x0d#define DSA_5_PLUS 0x0f#define DSA_10_PLUS 0x10#define DSA_1 0x11#define DSA_SHUFFLE 0x1d#define DSA_PROGRAM 0x1e#define DSA_CONTINUE 0x1f#if defined(CUST3_63) || defined(CUST3_52) #define DSA_DISC1 0x21#define DSA_DISC2 0x22#define DSA_DISC3 0x23#define DSA_DISCKP 0x24#define DSA_EXCHANGE 0x25#define DSA_PBCOFF 0x26#else#define DSA_TUNER 0x21#define DSA_CD 0x22#define DSA_TAPE 0x23#define DSA_AUX 0x24#define DSA_CLOCK 0x25#define DSA_TIMER 0x26#define DSA_PBCOFF 0x2c#endif#define DSA_SLEEP 0x27#define DSA_VOLUP 0x28#define DSA_VOLDN 0x29#define DSA_PBC 0x2c#define DSA_REPEAT_AB 0x32#define DSA_REMAIN 0x33#ifdef S215#define DSA_INTRO 0x1b /* for S2.15 */#define DSA_POWER 0x20#define DSA_ECHO 0x34#define DSA_CLEARVFD 0x38#else#define DSA_INTRO 0x34#endif#define DSA_RESUME 0x36#define DSA_MUTEON 0x49#define DSA_MUTEOFF 0x4a#define DSA_INTRO_ON 0x4b#define DSA_INTRO_OFF 0x4c#ifdef CUST3_63#define DSA_TOTAL_TIME 0xb0#else#define DSA_TOTAL_TIME 0x90#endif#define DSA_TOTAL_TRACK 0xa0#define DSA_VCD_20 0x01#define DSA_VCD_11 0x00/* uP commands */#define MICRO_WARNING_STATUS 0x00#define MICRO_NORMAL_CD_STATUS 0x01#define MICRO_VCD 0x01#define MICRO_OSD_STATUS 0x02#define MICRO_CDDA 0x02#define MICRO_CUR_TRACK 0x03#define MICRO_TRACK_CHANGE 0x03#define MICRO_PLAYING_TIME 0x04#define MICRO_TRACK_INFO 0x05#define MICRO_TIME_INFO 0x06#define MICRO_CHANGE_DISK 0x07#define MICRO_RESUME_TRACK 0x08#define MICRO_RESUME_TIME 0x09#define MICRO_KEYCODE_COMMAND 0xaa/* uP data */#define SERVO_OPENED 0x0b#define SERVO_PAUSE 0x01#define SERVO_PLAY 0x03#define SERVO_ACCESS 0x04#define SERVO_STOPPED 0x05#define SERVO_INITIALIZE 0x08#define SERVOERR_NODISC 0x09#define DSA_PAUSERELEASE 0x05#define DSA_GO_MIN 0x10#define DSA_GO_SEC 0x11#define DSA_GO_FRM 0x12#define DSA_LTOC 0x14 /* Long table of content */#define DSA_MODE 0x15#define DSA_A2B_SMIN 0x20#define DSA_A2B_SSEC 0x21#define DSA_A2B_SFRM 0x22#define DSA_A2B_EMIN 0x23#define DSA_A2B_ESEC 0x24#define DSA_A2B_EFRM 0x25#define DSA_RELEASE_A2B 0x26#define DSA_GET_DISC_STATUS 0x50#define DSA_DAC 0x70#define DSA_ROTATE_CLOCKWISE 0x80#define DSA_ROTATE_ANTI_CLOCKWISE 0x81#define SERVO_FOUND 0x01#define SERVO_DISC_STATUS 0x03#define SERVO_ERROR 0x04#define SERVO_MOVING 0x0b#define SERVO_CLOSED 0x0d#define SERVO_TRACK 0x10#define SERVO_INDEX 0x11#define SERVO_MIN 0x12#define SERVO_SEC 0x13#define SERVO_MODE_STATUS 0x17#define SERVO_RELEASE_A2B 0x26#define SERVO_LTOC_TRACK 0x60#define SERVO_LTOC_CTL_ADR 0x61#define SERVO_LTOC_SMIN 0x62#define SERVO_LTOC_SSEC 0x63#define SERVO_LTOC_SFRM 0x64#define SERVO_DAC_STATUS 0x70#define SERVO_CAROUSEL_MOVING 0x80#define SERVO_CAROUSEL_STOPPED 0x81/* * CD-module's mode 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/* * Set DAC mode */#define DAC_IIS_FS 0x1#define DAC_IIS_2FS 0x2#define DAC_IIS_4FS 0x3#define DAC_SONY16_FS 0x4#define DAC_SONY16_2FS 0x5#define DAC_SONY16_4FS 0x6#define DAC_SONY18_FS 0x7#define DAC_SONY18_2FS 0x8#define DAC_SONY18_4FS 0x9/* DSA transmission state (tran_state) */#define D_IDLE 0#define D_UPREQ 1#define D_UPRECV 2/* DSA receiving state (rec_state) */#define R_IDLE 0#define R_UPRDY 1#define R_HOSTRCV 2#define R_RESET 3#ifdef CUST3_63#define FRAME_AHEAD 0x00000005#else/* To read some special disc, this value should be set to 0x50 */#define FRAME_AHEAD 0x00000020#endif#if (CUST3_63 || CUST71 || CUSTDVD)#define MAX_TRACK_SUPPORTED 99#else#define MAX_TRACK_SUPPORTED 18#endif#define INTRO_DURATION TEN_SECOND/*---------------------------------------------------*//* The followings are the regions' definition for *//* the full screen OSD of project S2.15 */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -