PS.h
上传用户:super_houu
上传日期:2008-09-21
资源大小:4099k
文件大小:49k
源码类别:

DVD

开发平台:

Others

  1. /****************************************************************************************
  2.  *  Copyright (c) 2002 ZORAN Corporation, All Rights Reserved
  3.  *  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
  4.  *
  5.  *  File: $Workfile: PS.h $             
  6.  *
  7.  * Description: 
  8.  * ============
  9.  * 
  10.  * 
  11.  * Log:
  12.  * ====
  13.  * $Revision: 135 $
  14.  * Last Modified by $Author: Fwang $ at $Modtime: 04-04-02 14:52 $ 
  15.  ****************************************************************************************
  16.  * Updates:
  17.  ****************************************************************************************
  18.  * $Log: /I76/I76_Common/I76_Reference/Playcore/PS/PS.h $
  19.  * 
  20.  * 135   04-04-02 15:01 Fwang
  21.  * Fix green screen by MPP.
  22.  * 
  23.  * 134   04-04-02 14:17 Billt
  24.  * merge some new elements
  25.  * 
  26.  * 133   3/25/04 11:37p Johnk
  27.  * inserted the stillmode interpolation
  28.  * 
  29.  * 132   3/21/04 1:56p Johnk
  30.  * added the DVI Video out mode
  31.  * 
  32.  * 131   3/16/04 11:08p Johnk
  33.  * Merged the latest code of S1 function 
  34.  * 
  35.  * 130   3/12/04 5:45p Johnk
  36.  * Merged EZVIEW function - inserted EZVIEW_ENABLE macro
  37.  * 
  38.  * 129   04-03-09 20:32 Chaol
  39.  * add VE & Melody support, and code clean
  40.  * 
  41.  * 128   04-03-05 16:46 Jerryc
  42.  * 
  43.  * 127   04-03-02 16:43 Chaol
  44.  * remove gtps.mMuteSPDIF
  45.  * 
  46.  * 126   04-03-02 13:20 Chaol
  47.  * add spectrum analyzer and graphic equalizer support
  48.  * 
  49.  * 125   04-02-24 12:04 Janeg
  50.  * Improve EZVIEW implementation.
  51.  * 
  52.  * 124   2/20/04 6:22p Glenl
  53.  * Merged S1 code
  54.  * 
  55.  * 123   2/10/04 7:49p Chaol
  56.  * add karaoke support
  57.  * 
  58.  * 122   28/01/04 9:31 Rinata
  59.  * add downmix_volume gps parameter for headphones volume
  60.  * 
  61.  * 121   18/01/04 13:36 Rinata
  62.  * support selecting between HD and SD Jpeg
  63.  * 
  64.  * 120   1/14/04 9:54a Chaol
  65.  * code clear
  66.  * 
  67.  * 119   1/13/04 12:11 Hamadk
  68.  * Merged with CES DB
  69.  * 
  70.  * 118   1/08/04 5:05p Einavz
  71.  * add sacd support
  72.  * 
  73.  * 117   1/07/04 10:26a Fwang
  74.  * Add PS_UPDATE_TV_SHAPE.
  75.  * 
  76.  * 116   03-12-23 12:51 Fwang
  77.  * Add Orinal as new view mode
  78.  * 
  79.  * 115   12/18/03 12:15p Leslie
  80.  * Remove INTERPOLATION_CONTROL on I76
  81.  * 
  82.  * 114   12/01/03 10:41a Chaol
  83.  * fix comment
  84.  * 
  85.  * 113   11/28/03 5:52p Fwang
  86.  * Implement manual scaling and clean code.
  87.  * 
  88.  * 112   11/28/03 5:08p Chaol
  89.  * change down sample
  90.  * 
  91.  * 111   11/26/03 6:05a Chaol
  92.  * add free bits to SPEAKERS_CONFIG_TABLE  and change define of DRC
  93.  * 
  94.  * 110   11/15/03 12:42p Leonh
  95.  * Angieh:add support for the display menu.
  96.  * 
  97.  * 109   11/14/03 11:33a Chaol
  98.  * change PS_UPDATE_A_V_PRIORITY from video setting ground  to general
  99.  * setting ground, it isn't for video 
  100.  * 
  101.  * 108   11/13/03 4:18p Leonh
  102.  * Angieh:Add support for Priority Content.
  103.  * 
  104.  * 107   9/11/03 10:50 Rinata
  105.  * Update HDCD support code
  106.  * 
  107.  * 106   11/04/03 12:54p Chaol
  108.  * remove gps->compression_mode & AC3_COMPRESSION_MODE_SETTING define, add
  109.  * PINK_NOISE_SETTING to support ping noise
  110.  * 
  111.  * 105   11/03/03 11:27a Chaol
  112.  * change DRC_ON from 0x7FFF to 0xFFFF
  113.  * 
  114.  * 104   10/24/03 1:14p Chaol
  115.  * implement new bass management
  116.  * 
  117.  * 103   10/22/03 11:29a Chaol
  118.  * change gps->ucDRCCtrl from BYTE to WORD
  119.  * 
  120.  * 102   10/15/03 8:47a Leslie
  121.  * Remove Karaoke Recording
  122.  * Re-Order TEMP_SETTINGS
  123.  * 
  124.  * 101   14/10/03 16:41 Rinata
  125.  * remove mMuteSPDIF
  126.  * 
  127.  * 100   10/10/03 12:08p Chaol
  128.  * 
  129.  * 99    10/10/03 8:48a Chaol
  130.  * 
  131.  * 98    9/29/03 12:02p Chaol
  132.  * code clear & rewrite
  133.  * 
  134.  * 97    9/23/03 6:36p Chaol
  135.  * checkin in stage4
  136.  *
  137.  ****************************************************************************************/
  138. #include "Config.h" // Global Configuration - do not remove!
  139. #ifndef _PS_H
  140. #define _PS_H
  141. #include "Includesysdefs.h"
  142. #include "Playcorenav_dvdHeaderdvddef.h"
  143. #ifdef A_SD340E 
  144. #ifdef USE_I64_TV_SHAPE_SETTING
  145. typedef enum {
  146. PS_USER_TV43PS,
  147. PS_USER_TV43LB,
  148. PS_USER_TV169 
  149. }PS_USER_TV_SHAPE;
  150. #endif
  151. #endif
  152. // <<< Glen.Lim.1024.2004
  153. #ifdef D_AUTO_PLAY_MODE_SUPPORT
  154. typedef enum{
  155. Auto_Play_Mode_Off = 0,
  156. Auto_Play_Mode_On  = 1,
  157. } Auto_Play_Setup;
  158. #endif
  159. //jeanz_0331_2005
  160. #ifdef D_SURROUND_PERFERENCE_SUPPORT
  161. typedef enum
  162. {
  163. SPP_Stereo = 1,
  164. SPP_3D  = 2,
  165. SPP_DD =3,
  166. SPP_DTS =4
  167. }SurroundPerferenceParam;
  168. #endif
  169. typedef enum {
  170. PS_TV43, 
  171. PS_TV169 
  172. }PS_TV_SHAPE;
  173. #ifdef D_YOUR_DVD_SUPPORT
  174. typedef enum{
  175. Your_DVD_Off = 0,
  176. Your_DVD_On  = 1,
  177. } Your_DVD_Setup;
  178. #endif
  179. #ifdef D_SCART_OUTPUT //BT012603: added
  180. enum {
  181. SCART_VMOD_STANDBY,
  182. SCART_VMOD_16V9,
  183. SCART_VMOD_4V3,
  184. SCART_VFMD_CVBS,
  185. SCART_VFMD_RGB,
  186. };
  187. #endif //D_SCART_OUTPUT //BT012603: added
  188. #ifdef FOUR_LEVEL_TRANSPARENCY //BT030703
  189. enum{
  190. PS_TRANS_LEVEL_1= 0,
  191. PS_TRANS_LEVEL_2,
  192. PS_TRANS_LEVEL_3,
  193. PS_TRANS_LEVEL_4,
  194. };
  195. #endif //FOUR_LEVEL_TRANSPARENCY
  196. #define PS_TV_FULL_SCREEN PS_TV169
  197. #ifdef I77_COMPANION_CHIP
  198. /* Don't change the order of the below enums, they relate to the I77 params tables */
  199. typedef enum
  200. {
  201. HD_NTSC_IN_OUT_480P     = 0,
  202. HD_NTSC_IN_OUT_720P     = 1,
  203. HD_NTSC_IN_OUT_1080I    = 2,
  204. HD_NTSC_IN_OUT_800X600  = 3,
  205. HD_NTSC_IN_OUT_1064X600 = 4,
  206. HD_NTSC_IN_OUT_1024X768 = 5,
  207. HD_NTSC_IN_OUT_1360X768 = 6,
  208. HD_NTSC_IN_OUT_848X480  = 7,
  209. HD_NTSC_IN_OUT_1280X768 = 8,
  210. HD_NTSC_IN_NUM_OF_MODES = 9
  211. } HD_NTSC_IN_VID_OUT_MODE;
  212. typedef enum
  213. {
  214. HD_PAL_IN_OUT_576P     = 0,
  215. HD_PAL_IN_OUT_720P     = 1,
  216. HD_PAL_IN_OUT_1080I    = 2,
  217. HD_PAL_IN_OUT_800X600  = 3,
  218. HD_PAL_IN_OUT_1064X600 = 4,
  219. HD_PAL_IN_OUT_1024X768 = 5,
  220. HD_PAL_IN_OUT_1360X768 = 6,
  221. HD_PAL_IN_NUM_OF_MODES = 7
  222. } HD_PAL_IN_VID_OUT_MODE;
  223. #define SD_JPEG_MODE 0xff
  224. #ifdef I77_BRAIN_STORM
  225. #define HD_JPEG_MODE 0x00
  226. #define HD_MODE_UNLOCKED 0x00
  227. #define HD_MODE_LOCKED 0x01
  228. #endif//I77_BRAIN_STORM
  229. #endif // I77_COMPANION_CHIP
  230. enum {
  231. TV_SYS_NTSC,
  232. TV_SYS_PAL, 
  233. TV_SYS_PAL60,
  234. TV_SYS_PAL60R,
  235. TV_SYS_PALM,
  236. TV_SYS_AUTO,
  237. TV_SYS_PALN,
  238. TV_SYS_PALNC,
  239. };
  240. #ifdef D_AUX_SUBTITLE_SELECT
  241. enum {
  242. AUX_SUB_WESTERN_EUR,
  243. AUX_SUB_CENTRAL_EUR,
  244. AUX_SUB_CHINESE_GB2312,
  245. AUX_SUB_CHINESE_BIG5,
  246. AUX_SUB_KOREAN_HANGUL,
  247. AUX_SUB_CYRILLIC,
  248. AUX_SUB_HEBREW,
  249. AUX_SUB_OFF
  250. };
  251. #endif
  252. #ifdef DVD_AUDIO_SUPPORT
  253. enum
  254. {
  255. DVD_AUDIO_PRIORITY,
  256. DVD_VIDEO_PRIORITY,
  257. };
  258. #endif
  259. #ifdef EXINO2   //<<ZKR ML:0406  Dts digital out  option.
  260. #ifdef D_DIGITAL_DTS_OUT_OPTION
  261. enum
  262. {
  263. DTS_AUDIO_OUT_OFF,
  264. DTS_AUDIO_OUT_ON,
  265. };
  266. #endif
  267. #endif
  268. enum {
  269.     VID_OUT_CVBS,
  270.     VID_OUT_YUV,
  271.     VID_OUT_RGB,
  272.     VID_OUT_S_VIDEO,
  273.     VID_OUT_YPbPr, //BT040903: Added
  274. VID_OUT_VGA, //DM070203
  275. };
  276. enum {
  277. VID_OUT_HD_RGB,
  278. VID_OUT_HD_YPbPr,
  279. };
  280. enum{
  281. BG_BLUE,
  282. BG_GRAY,
  283. BG_PICTURE,
  284. BG_JACKET,
  285. };
  286. #ifdef D_VIDEO_HD_COM_SETTING
  287. enum
  288. {
  289. VIDEO_COMMON,
  290. VIDEO_HD,
  291. } ;
  292. #endif
  293. #ifdef VIRTUAL_SURROUND_ENABLE
  294. enum
  295. {
  296. VIRTUAL_SURROUND_OFF,
  297. VIRTUAL_SURROUND_ON,
  298. } ;
  299. #endif
  300. enum
  301. {
  302. PSO_OFF,
  303. PSO_ON,
  304. } ;
  305. //<<< Roger Add, 020624
  306. enum{
  307. PSO_YPbPr,
  308. PSO_VGA,
  309. };
  310. //>>>
  311. //SeanL_0915_2003_A
  312. enum{
  313. DRC_ON = 0xFFFFU,
  314. DRC_7_8TH = 0x7000U,
  315. DRC_6_8TH = 0x6000U,
  316. DRC_5_8TH = 0x5000U,
  317. DRC_4_8TH = 0x4000U,
  318. DRC_3_8TH = 0x3000U,
  319. DRC_2_8TH = 0x2000U,
  320. DRC_1_8TH = 0x1000U,
  321. DRC_OFF = 0x0000U
  322. };
  323. //<<<SeanL_0915_2003_A
  324. enum{
  325. PS_3D_AUREAL,
  326. PS_3D_QSURROUND,
  327. PS_3D_SPATIALIZER,
  328. PS_3D_VBX,
  329. };
  330. //Between 0-5ms in 125us steps
  331. typedef enum{
  332. CNTRCTRL_5MS = 40, 
  333. CNTRCTRL_4MS = 32, 
  334. CNTRCTRL_3MS = 24, 
  335. CNTRCTRL_2MS = 16,
  336. CNTRCTRL_1MS = 8, 
  337. CNTRCTRL_0MS = 0, 
  338. }CENTER_DELAY_SETTING;
  339. //Between 0-15ms in 125us steps
  340. typedef enum{
  341. REARCTRL_15MS = 120, 
  342. REARCTRL_12MS = 96, 
  343. REARCTRL_9MS  = 72, 
  344. REARCTRL_6MS  = 48,
  345. REARCTRL_3MS  = 24, 
  346. REARCTRL_0MS  =  0, 
  347. }SURROUND_DELAY_SETTING;
  348. enum{
  349. DOWN_SAMPLING_SETTING_OFF,
  350. DOWN_SAMPLING_SETTING_ON
  351. };
  352. //FOR PROLOGIC2 SETUP
  353. enum{
  354. PROLOGIC_2_PANORAMA_OFF,
  355. PROLOGIC_2_PANORAMA_ON
  356. };
  357. #ifdef MACROVISION_SELECTION_ENABLE//ZORAN LX0327: merge from ZCH
  358. enum {
  359.     MACROVISION_SELECTION_OFF,
  360.     MACROVISION_SELECTION_ON,
  361. };
  362. #endif    
  363. // FW0310 >>>>>>>
  364. enum {
  365.     VCD_OFF,
  366.     VCD_ON,
  367. };
  368. enum {
  369.     HARDWARE_RESUME_OFF,
  370.     HARDWARE_RESUME_ON,
  371. };
  372. typedef enum {
  373. AUDIO_STREAM_UNKNOWN = 0,
  374. AUDIO_STREAM_AC3 = 1,
  375. AUDIO_STREAM_DTS = 2,
  376. AUDIO_STREAM_MPEG = 3,
  377. AUDIO_STREAM_MP3 = 4,
  378. AUDIO_STREAM_WMA = 5,
  379. AUDIO_STREAM_LPCM = 6,
  380. AUDIO_STREAM_PCM = 7,
  381. AUDIO_STREAM_ADPCM = 8,
  382. AUDIO_STREAM_PNG = 9,
  383. AUDIO_STREAM_SACD  = 10,
  384.     AUDIO_STREAM_MLP  = 11,
  385.     AUDIO_STREAM_AAC  = 12,
  386. AUDIO_STREAM_OGG  = 13
  387. } AUDIO_STREAM_TYPE;
  388. typedef enum {
  389. AUDIO_fs_48khz = 0,
  390. AUDIO_fs_96khz = 1,
  391. AUDIO_fs_192khz = 2,
  392. AUDIO_fs_441khz = 8,
  393. AUDIO_fs_882khz = 9,
  394. AUDIO_fs_1764khz =10
  395. } G_AUDIO_SAMPLING;
  396. #ifdef ADC_KEY_SCAN
  397. typedef enum
  398. {
  399. ADCIN5,
  400. ADCIN6,
  401. ADCIN7
  402. }ADCIN_SELECT;      
  403. #endif
  404. typedef enum {
  405. NO_ANALOG_AUDIO = 0,
  406. ANALOG_AUDIO_2CH = 1,
  407. ANALOG_AUDIO_6CH = 2,
  408.     ANALOG_SURROUND_2CH = 3
  409. } ANALOG_AUDIO_SETTING;
  410. typedef enum {
  411. DIGITAL_AUDIO_BITSTREAM  = 0,
  412. DIGITAL_AUDIO_PCM = 1,
  413. NO_DIGITAL_AUDIO = 2
  414. } DIGITAL_AUDIO_SPDIF_MODE;
  415. #ifdef EXINO2   //<<ZKR ML:040604 Dts digital out option.
  416. #ifdef D_DIGITAL_DTS_OUT_OPTION
  417. typedef enum{
  418. DIGITAL_DTS_OUTPUT_ON = 0,
  419. DIGITAL_DTS_OUTPUT_OFF = 1,
  420. } DIGITAL_DTS_OUTPUT_MODE;
  421. #endif
  422. #endif
  423. typedef enum {
  424. SPDIF_QUANT_16_BITS = 0,
  425. SPDIF_QUANT_18_BITS = 1,
  426. SPDIF_QUANT_20_BITS = 2,
  427. SPDIF_QUANT_24_BITS = 3,
  428. SPDIF_QUANT_MUTE = 4,
  429. SPDIF_QUANT_SAME_AS_BITSTREAM  = 5
  430. } DIGITAL_AUDIO_SPDIF_QUANT;
  431. typedef enum {
  432. SPDIF_TRANS_ENABLE = 0,
  433. SPDIF_TRANS_DISABLE = 1
  434. } DIGITAL_AUDIO_SPDIF_FLAG;
  435. typedef enum {
  436. SPDIF_MODE = 0x0,
  437. SPDIF_SEN = 0x1,
  438. SPDIF_QUANT = 0x2
  439. } DIGITAL_AUDIO_SETTING;
  440. typedef enum{
  441. PROLOGIC_SETTING_OFF = 0,
  442. PROLOGIC_SETTING_ON = 1,
  443. PROLOGIC_SETTING_AUTO = 2,
  444. PROLOGIC_SETTING_MUSIC = 3
  445. } PROLOGIC_OPTIONS_SETTING;
  446. // <<< SEC CH.KO012203 : for rear, center speaker setting
  447. #ifdef D_ENABLE_SPEAKER_SETUP
  448. typedef enum {
  449. BASS_CONFIGRATION_ONE = 0,
  450. BASS_CONFIGRATION_TWO = 1
  451. }BASS_CFG_SETTING;
  452. typedef enum {
  453. PROLOGIC_ACTIVATED = 0,
  454. PROLOGIC_DEACTIVATED = 1
  455. } PROLOGIC_STATE;
  456. typedef enum {
  457. SW_SETTING_OFF = 0,
  458. SW_SETTING_ON = 1
  459. } SW_SETTING;
  460. typedef enum {
  461. CENTER_SETTING_LARGE =0,
  462. CENTER_SETTING_SMALL = 1,
  463. CENTER_SETTING_NONE =2,
  464. } CENTER_SETTING;
  465. typedef enum {
  466. REAR_SETTING_LARGE =0,
  467. REAR_SETTING_SMALL = 1,
  468. REAR_SETTING_NONE =2
  469. } REAR_SETTING;
  470. #endif // SPEAKER_SETUP
  471. // SEC CH.KO031204 >>>
  472. /*<A name="DEC_LL_ADP_RPC">*/
  473. typedef enum {
  474. DEC_LL_ADP_RPC_0 = 0x0,
  475. DEC_LL_ADP_RPC_1 = 0x1,
  476. DEC_LL_ADP_RPC_2 = 0x2,
  477. DEC_LL_ADP_RPC_3 = 0x3,
  478. DEC_LL_ADP_RPC_4 = 0x4,
  479. DEC_LL_ADP_RPC_5 = 0x5,
  480. DEC_LL_ADP_RPC_6 = 0x6,
  481. DEC_LL_ADP_RPC_7 = 0x7
  482. } DEC_LL_ADP_RPC_SETTING;
  483. typedef enum {
  484. DEC_LL_ADP_COMP_CUST_MODE_0 = 0x0,
  485. DEC_LL_ADP_COMP_CUST_MODE_1 = 0x1,
  486. DEC_LL_ADP_COMP_LINE_MODE =0x2,
  487. DEC_LL_ADP_COMP_RF_MODE =0x3
  488. } DEC_LL_ADP_COMP_SETTING;
  489. typedef enum {
  490. BASS_MANAGEMENT_OFF = 0,
  491. BASS_MANAGEMENT_ON = 1,
  492. } BASS_MANAGEMENT_SETTING;
  493. typedef enum {
  494. SPK_SIZE_LARGE = 0x0,
  495. SPK_SIZE_SMALL = 0x1,
  496. SPK_NOT_PRESENT = 0x2,
  497. SPK_PRESENT = SPK_SIZE_LARGE,
  498. } SPK_SIZE_SETTING;
  499. typedef enum {
  500. SW_NOT_PRESENT = 0,
  501. SW_PRESENT = 1
  502. } SUBWOOFER_SETTING;
  503. //SeanL:be sure match the struct BASS_MANAGEMENT_CONFIG
  504. typedef struct {
  505. unsigned int mFrontSpk:1;
  506. unsigned int mCenterSpk:2;
  507. unsigned int mSurroundSpk:2;
  508. unsigned int mSubwoofer:1;
  509. unsigned int mFree:2;
  510. } SPEAKER_CONFIG;
  511. #define NUMBER_MAX_BM_CONFIG 36
  512. #define SPEAKERS_DEFAULT_CONFIG 34 //SeanL:Config 17 matches with Large Front, No center, No surround, No subwoofer
  513. #define SPEAKERS_LSS0_CONFIG 18 //Billt:Config LSS0 matches with Large Front, Small center, Small surround, No subwoofer
  514. #define SPEAKERS_LSS1_CONFIG 19 //Billt:Config LSS0 matches with Large Front, Small center, Small surround, with subwoofer
  515. #define SPEAKERS_SSS1_CONFIG 1     
  516. //SeanL:NOTICE:we can't use the micro defined in adp_API.h to init this struct.otherwise it will overflow.
  517. //we should define micro in PS.h to init it, and conversion it to UINT32 in AS_Get_XXX()
  518. //
  519. typedef struct {
  520. unsigned int mFrontSpk:1; // Front speaker setting : Large or Small
  521. unsigned int mCenterSpk:2; // Center speaker setting : Large, Small, None
  522. unsigned int mSurroundSpk:2; // Center speaker setting : Large, Small, None
  523. unsigned int mSubwoofer:1; // Subwoofer setting : Present or Not present
  524. unsigned int mBCFG:4; // BCFG of bass management config command (value from 0 to 10)
  525. unsigned int mOCFG:3; // OCFG of general application command (value from 1 to 7)
  526. unsigned int mUS:1; //US of bass management config command
  527. unsigned int mS14_S0:15; //S14~S0 of bass management config command
  528. unsigned int mS15:1; //S15 of bass management config command
  529. unsigned int mS16:1; //S16 of bass management config command
  530. unsigned int mFree:1;
  531. } SPEAKERS_CONFIG_TABLE;
  532. //SeanL:obtain all OCFG,BCFG and SW
  533. extern CONST SPEAKERS_CONFIG_TABLE SpeakersConfigTable[NUMBER_MAX_BM_CONFIG];
  534. typedef enum{
  535. BMCONFIG_CMD_BCFG_NO_REDIRECT = 0x0,
  536. BMCONFIG_CMD_BCFG_DOLBY_MULTICH2LR = 0x1,
  537. BMCONFIG_CMD_BCFG_DOLBY_CONFIG1 = 0x2,
  538. BMCONFIG_CMD_BCFG_DOLBY_MULTICH2SW = 0x3,
  539. BMCONFIG_CMD_BCFG_DOLBY_CONFIG2A = 0x4,
  540. BMCONFIG_CMD_BCFG_DOLBY_CONFIG2B = 0x5,
  541. BMCONFIG_CMD_BCFG_DOLBY_CONFIG0 = 0x6,
  542. BMCONFIG_CMD_BCFG_ARCAM_CROSS = 0x7,
  543. BMCONFIG_CMD_BCFG_DOLBY_CONFIG3 = 0x8,
  544. BMCONFIG_CMD_BCFG_DOLBY_CONFIG3B = 0x9,
  545. BMCONFIG_CMD_BCFG_ARCAM_DUPLICATE = 0xA,
  546. BMCONFIG_CMD_BCFG_MASK   = 0xF
  547. } BMCONFIG_CMD_BCFG_SETTING;
  548. typedef enum {
  549. BMCONFIG_CMD_US_OFF = 0x0,
  550. BMCONFIG_CMD_US_ON = 0x1,
  551. BMCONFIG_CMD_US_MASK = 0x1
  552. } BMCONFIG_CMD_US_SETTING;
  553. typedef enum {
  554. DEC_LL_OCFG_2_0_SURROUND_COMPATIBLE = 0x0,
  555. DEC_LL_OCFG_1_0 = 0x1,
  556. DEC_LL_OCFG_2_0_NORMAL = 0x2,
  557. DEC_LL_OCFG_3_0 = 0x3,
  558. DEC_LL_OCFG_2_1 = 0x4,
  559. DEC_LL_OCFG_3_1 = 0x5,
  560. DEC_LL_OCFG_2_2 = 0x6,
  561. DEC_LL_OCFG_3_2 = 0x7,
  562. } DEC_LL_OCFG_SETTING;
  563. //<<<SeanL_0915_2003_A
  564. typedef enum {
  565. KARAOKE_SETTING_OFF = 0,
  566. KARAOKE_SETTING_ON = 1
  567. } KARAOKE_SETTING;
  568. typedef enum {
  569. PARTNER_SETTING_OFF = 0,
  570. PARTNER_SETTING_ON = 1
  571. } PARTNER_SETTING;
  572. typedef enum {
  573. HDCD_DEACTIVATED = 0,
  574. HDCD_ACTIVATED = 1
  575. } HDCD_DETECTION;
  576. typedef enum {
  577. CDDTS_NOT_DETECTED = 0,
  578. CDDTS_DETECTED = 1,
  579. CDDTS_UN_INITIALIZE = 2
  580. } CDDTS_DETECTION;
  581. // <<< Stephane.Hollande.012904:Added CDG detection states
  582. typedef enum {
  583. CDG_NOT_DETECTED = 0,
  584. CDG_DETECTED = 1
  585. } CDG_DETECTION;
  586. // Stephane.Hollande.012904 >>>
  587. typedef enum {
  588. VP_DEACTIVATED = 0, /* Vocal Partner deactivated */
  589. VP_ACTIVATED = 1 /* Vocal Partner activated */
  590. } VOCAL_PARTNER_STATE;
  591. #ifdef D_ENABLE_HEADPHONE_DETECT
  592. typedef enum {
  593. HEADPHONE_PLUG_IN = 0,
  594. HEADPHONE_PLUG_OUT = 1
  595. } HEADPHONE_STATE;
  596. #endif
  597. typedef enum {
  598. KAR_AC3_SETTING_NOVOCAL = 0,
  599. KAR_AC3_SETTING_VOCAL1 = 1,
  600. KAR_AC3_SETTING_VOCAL2 = 2,
  601. KAR_AC3_SETTING_ALL = 3
  602. } KARAOKE_AC3_VOCAL_SETTING;
  603. typedef enum {
  604. KAR_AC3_MELODY_SETTING_OFF = 0,
  605. KAR_AC3_MELODY_SETTING_ON = 1
  606. } KARAOKE_AC3_MEL_SETTING;
  607. typedef enum {
  608. VOICE_CANCEL_SETTING_OFF = 0,
  609. VOICE_CANCEL_SETTING_ON = 1
  610. } VOICE_CANCEL_SETTING;
  611. typedef enum {
  612. EFFECT3D_SETTING_OFF = 0,
  613. EFFECT3D_SETTING_ON = 1
  614. } EFFECT3D_SETTING;
  615. typedef enum {
  616. MUTE_SETTING_OFF = 0,
  617. MUTE_SETTING_ON = 1
  618. } MUTE_SETTING;
  619. typedef enum
  620. {
  621. MUTE_USER_REQUEST,
  622. MUTE_CORE_REQUEST,
  623. MUTE_DETECT_REQUEST
  624. }MUTE_REQUEST_TYPE;
  625. typedef enum{
  626. M_Mode_OFF = 0,
  627. M_Mode_Prologic_EMU = 1,
  628. M_Mode_Matrix = 2,
  629. M_Mode_Movie = 3,
  630. M_Mode_Music = 4,
  631. M_Hall_Effects = 5
  632. };
  633. typedef enum {
  634. M_4_STEREO = 0,
  635. M_NATURAL ,
  636. M_JAZZ_CLUB ,
  637. M_CONCERT_HALL ,
  638. M_STADIUM ,
  639. #ifdef D_ENABLE_MUSIC_CUSTOMER_MODE
  640. M_EXT_BUFF ,
  641. #endif
  642. M_Mode_CANCEL ,
  643. M_MAX_MusicMode
  644. } MUSIC_MODE_SETTING;
  645. #ifdef AUTO_SLEEP
  646. typedef enum {
  647. STANDBY_OFF         =0,
  648. STANDBY_15MINUTES,
  649. STANDBY_30MINUTES,
  650. STANDBY_45MINUTES,
  651. STANDBY_60MINUTES,
  652. STANDBY_90MINUTES,
  653. STANDBY_120MINUTES
  654. }AUTO_STANDBY;
  655. #endif
  656. //ZCH, Sean07102003
  657. #ifdef D_CONTROL_6_CHANNEL_VOLUME
  658. typedef enum {
  659. SEPARATE_ANALOG_AUDIO_CHANNEL_L_A1 = 0,
  660. SEPARATE_ANALOG_AUDIO_CHANNEL_C_A2,
  661. SEPARATE_ANALOG_AUDIO_CHANNEL_R_A3,
  662. SEPARATE_ANALOG_AUDIO_CHANNEL_LS_A4,
  663. SEPARATE_ANALOG_AUDIO_CHANNEL_RS_A5,
  664. SEPARATE_ANALOG_AUDIO_CHANNEL_SW_A6,
  665. };
  666. #endif //D_CONTROL_6_CHANNEL_VOLUME
  667. //SeanLiu_0902_2004
  668. typedef enum {
  669. PINK_NOISE_OFF   = 0,
  670. PINK_NOISE_LEFT ,
  671. PINK_NOISE_CENTER ,
  672. PINK_NOISE_RIGHT ,
  673. PINK_NOISE_LEFT_SURROUND ,
  674. PINK_NOISE_RIGHT_SURROUND ,
  675. PINK_NOISE_SUBWOOFER ,
  676. #ifdef D_ENABLE_DOLBY_EX_SUPPORT 
  677. PINK_NOISE_BACK_LEFT_SURROUND ,
  678. PINK_NOISE_BACK_RIGHT_SURROUND ,
  679. #endif
  680. PINK_NOISE_ALL ,
  681. } PINK_NOISE_SETTING;
  682. #ifdef AUDIO_IN_SUPPORT
  683. //digital in ICFG setting
  684. #define DIGITAL_IN_ICFG_NA 0
  685. #define DIGITAL_IN_ICFG_1_0 1
  686. #define DIGITAL_IN_ICFG_2_0 2
  687. #define DIGITAL_IN_ICFG_3_0 3
  688. #define DIGITAL_IN_ICFG_2_1 4
  689. #define DIGITAL_IN_ICFG_3_1 5
  690. #define DIGITAL_IN_ICFG_2_2 6
  691. #define DIGITAL_IN_ICFG_3_2 7
  692. typedef BYTE DIGITAL_IN_ICFG_SETTING;
  693. //digital in LFE setting
  694. #define DIGITAL_IN_LFE_NOT_PRESENT 0
  695. #define DIGITAL_IN_LFE_PRESENT 1
  696. typedef BYTE DIGITAL_IN_LFE_SETTING;
  697. //audio in mode setting
  698. #define AUDIO_IN_MODE_OFF 0
  699. #define AUDIO_IN_MODE_ANALOG 1
  700. #define AUDIO_IN_MODE_COAXIAL 2
  701. #define AUDIO_IN_MODE_OPTICAL 3
  702. typedef BYTE AUDIO_IN_MODE_SETTING;
  703. #endif //AUDIO_IN_SUPPORT
  704. //<<<SeanLiu_0902_2004
  705. typedef enum{
  706. VIEW_MODE_FILL = 0,
  707. VIEW_MODE_ORIGINAL,
  708. VIEW_MODE_HEIGHT_FIT,
  709. VIEW_MODE_WIDTH_FIT,
  710. VIEW_MODE_AUTO_FIT,
  711. VIEW_MODE_PAN_SCAN,
  712. VIEW_MODE_MAX = VIEW_MODE_PAN_SCAN
  713. } VIEW_MODE;
  714. typedef enum {
  715. DMM_SETTING_NORMAL = 0x00, //L channel to left output, R channel to right output
  716. DMM_SETTING_LEFT_ONLY = 0x01, // L channel to left and right output
  717. DMM_SETTING_RIGHT_ONLY = 0x02, //R channel to left and right output
  718. DMM_SETTING_MIX = 0x03 //(R+L)/2 to left and right output
  719. } DUAL_MONOREP_MODE_SETTING;
  720. typedef BYTE TV_SYS;
  721. /* Brightness Enhancement */
  722. typedef enum {
  723. BE_CTRL_DISABLED = 0,
  724. BE_CTRL_ENABLED = 1
  725. } BE_CTRL_SETTINGS;
  726. /* Edge Enhancement */
  727. typedef enum {
  728. EE_CTRL_DISABLED = 0,
  729. EE_CTRL_SHARPEN = 1,
  730. EE_CTRL_SOFTEN = 2
  731. } EE_CTRL_SETTINGS;
  732. typedef enum {
  733. JPG_SIZE_ORIGINAL = 0,
  734. JPG_SIZE_AUTOFIT = 1
  735. } JPG_SIZE_SETTINGS;
  736. typedef enum {
  737. #ifdef I77_COMPANION_CHIP
  738. JPG_INTERVAL_2_SEC = 2,
  739. #endif
  740. JPG_INTERVAL_5_SEC = 5,
  741. JPG_INTERVAL_10_SEC = 10,
  742. JPG_INTERVAL_15_SEC = 15,
  743. #ifdef S1_GUI // ZKR GLV778
  744. JPG_INTERVAL_FOREVER = 0xff
  745. #endif
  746. } JPG_INTERVAL_SETTINGS;
  747. // <<< ZRN SH0613:Added Video Ouput Interpolation during Still Mode
  748. typedef enum {
  749. INTERPOLATION_AUTO = 0,
  750. INTERPOLATION_PROGRESSIVE = 1,
  751. INTERPOLATION_INTERLACED = 2
  752. } STILL_MODE_INTERPOLATION;
  753. // >>>
  754. // <<< ZORAN CDE0613:Support Front Display setting
  755. typedef enum {
  756. FRONT_DISPLAY_DIM = 0,
  757. FRONT_DISPLAY_BRIGHT = 1,
  758. FRONT_DISPLAY_AUTO = 2
  759. } FRONT_DISPLAY_SETTING;
  760. // >>>
  761. // <<< ZRN SH0731:Added Black Level setting for Internal Video Encoder (CVE)
  762. typedef enum {
  763. BLACKLEVEL_NORMAL = 0,
  764. BLACKLEVEL_STRETCHED = 1
  765. } CVE_BLACKLEVEL_SETTING;
  766. typedef enum {
  767. DIGITAL_KEY = 0,
  768. FUNCTION_KEY = 1
  769. };
  770. /* Languages */
  771. typedef enum {
  772. LANGUAGE_ENGLISH = 0,
  773. #ifdef D_GERMAN
  774. LANGUAGE_GERMAN,
  775. #endif
  776. #ifdef D_FRENCH
  777. LANGUAGE_FRENCH,
  778. #endif
  779. #ifdef D_SPANISH
  780. LANGUAGE_SPANISH,
  781. #endif
  782. #ifdef D_ITALIAN
  783. LANGUAGE_ITALIAN,
  784. #endif
  785. #ifdef D_SWEDISH
  786. LANGUAGE_SWEDISH,
  787. #endif
  788. #ifdef D_PORTUGUESE
  789.     LANGUAGE_PORTUGUESE,
  790. #endif
  791. #ifdef D_DUTCH
  792. LANGUAGE_DUTCH,
  793. #endif
  794. #ifdef D_RUSSIAN
  795.     LANGUAGE_RUSSIAN,
  796. #endif
  797. #ifdef D_TURKISH
  798.     LANGUAGE_TURKISH,
  799. #endif
  800. #ifdef D_POLISH
  801. LANGUAGE_POLISH,
  802. #endif
  803. #ifdef D_CZECH
  804. LANGUAGE_CZECH,
  805. #endif
  806. #ifdef D_FINNISH
  807. LANGUAGE_FINNISH,
  808. #endif
  809. #ifdef D_GREEK
  810. LANGUAGE_GREEK,
  811. #endif
  812. #ifdef D_CHINESE_TRD
  813.     LANGUAGE_CHINESE_TRD,
  814. #endif
  815. #ifdef D_CHINESE_SMP
  816. LANGUAGE_CHINESE_SMP,
  817. #endif
  818. #ifdef D_JAPANESE
  819. LANGUAGE_JAPANESE,
  820. #endif
  821. #ifdef D_CROATIA
  822. LANGUAGE_CROATIA,
  823. #endif
  824. LANGUAGE_LAST
  825. } LANGUAGE_SETTINGS;
  826. /* Parental control levels */
  827. /* These will vary for different countries */
  828. typedef enum {
  829. PARENTAL_LEVEL_NONE = 0,
  830. PARENTAL_LEVEL_1 = 1,
  831. PARENTAL_LEVEL_2 = 2,
  832. PARENTAL_LEVEL_3 = 3,
  833. PARENTAL_LEVEL_4 = 4,
  834. PARENTAL_LEVEL_5 = 5,
  835. PARENTAL_LEVEL_6 = 6,
  836. PARENTAL_LEVEL_7 = 7,
  837. PARENTAL_LEVEL_8 = 8,
  838. } PARENTAL_LEVEL_SETTINGS;
  839. typedef enum {
  840. KARAOKE_OFF,
  841. KARAOKE_ON,
  842. KARAOKE_AUTO
  843. } KARAOKE_MODE_SETTING;
  844. #ifdef AUX_IN_ENABLE
  845. typedef enum
  846. {
  847. AUX_IN_4_CHANNEL = 0,
  848. AUX_IN_3_CHANNEL = 1,
  849. AUX_IN_2_CHANNEL = 2
  850. }AUX_IN_STREAM_TYPE;
  851. #endif //AUX_IN_ENABLE
  852. typedef enum{
  853.   ANGLE_MARK_ON    = 0,
  854.   ANGLE_MARK_OFF = 1
  855. } ANGLE_MARK_SETTINGS;
  856. typedef enum
  857. {
  858. NO_AUTO_STANDBY = 0,
  859. AUTO_STANDBY_IN_5MINUTES = 1500, // 5*60*5
  860. AUTO_STANDBY_IN_15MINUTES = 4500, // 15*60*5,
  861. AUTO_STANDBY_IN_35MINUTES = 10500, // 35*60*5
  862. }AUTO_STANDBY_TIMER;
  863. typedef enum{
  864.   SMART_NAVI_MENU_ON    = 1,
  865.   SMART_NAVI_MENU_OFF = 0
  866. } SMART_NAVI_MENU_SETTINGS;
  867. typedef enum {
  868. DVD_WORKMODE = 0,
  869. AV1_WORKMODE = 1,
  870. AV2_WORKMODE = 2,
  871. RADIO_WORKMODE = 3,
  872. SPDIF_IN_WORKMODE       = 4,  
  873. STANDBY_MODE            =5
  874. } TUNER_WORK_MODE;
  875. typedef enum {
  876.   ORIGN = 0,
  877.   ROCK = 1,
  878.   JAZZ = 2,
  879.   ACOUSTIC = 3,
  880.   CLASSIC = 4,
  881.   DANCE     = 5,//Wesley 030529 add two effect mode
  882.   MOVIE     = 6
  883. } SOUND_EFFECT;
  884. #define MAX_CHANNEL 7
  885. typedef enum {
  886. ALL_CHANNEL = 0,
  887. LEFT_CHANNEL = 1,
  888. RIGHT_CHANNEL = 2,
  889. LEFT_SURR_CHANNEL = 3,
  890. RIGHT_SURR_CHANNEL = 4,
  891. CENTER_CHANNEL = 5,
  892. SW_CHANNEL = 6
  893. } VOLUME_CONTROL_MODE;
  894. typedef enum {
  895. BASE_SET =0,
  896. BASE_TONE_SET =1,
  897. TREMBLE_SET          =2
  898. }BASE_PARAM;
  899. typedef enum {
  900. ANTI_CLIPPING = 0,
  901. DYNAMIC_RANGE_COMPRESSION = 1,
  902. } DYNAMIC_MODE;
  903. typedef enum {
  904. LIMITER1 = 0,
  905. LIMITER2 = 1,
  906. } LIMITER_NUMBER;
  907. typedef enum {
  908. COMPRESSION_RATE = 0,
  909. RELEASE_RATE = 1,
  910. } DYNAMIC_RATE;
  911. typedef enum {
  912. COMPRESSION_THRESHOLD = 0,
  913. RELEASE_THRESHOLD = 1,
  914. } DYNAMIC_THRESHOLD;
  915. #ifdef SPECTRUM_EQUALIZER
  916. typedef enum {
  917. GRAPHIC_EQUALIZER_OFF,
  918. GRAPHIC_EQUALIZER_STD,
  919. GRAPHIC_EQUALIZER_CLASS,
  920. GRAPHIC_EQUALIZER_ROCK,
  921. GRAPHIC_EQUALIZER_JAZZ,
  922. GRAPHIC_EQUALIZER_POP,
  923. GRAPHIC_EQUALIZER_USER
  924. } GRAPHIC_EQUALIZER_MODE;
  925. #define EQUALIZER_BANDGAIN_SZ 6
  926. extern BYTE sa_value[EQUALIZER_BANDGAIN_SZ];
  927. #endif
  928. //SeanLiu_0902_2004
  929. #ifdef D_ENABLE_DOLBY_EX_SUPPORT
  930. #define DOLBY_EX_BS_SPEAKERS_NONE 0
  931. #define DOLBY_EX_BS_SPEAKERS_1 1
  932. #define DOLBY_EX_BS_SPEAKERS_2 2
  933. #endif
  934. //<<<SeanLiu_0902_2004
  935. #define DEC_STATUS_IDLE 0x30
  936. #define DEC_STATUS_SLOW_WO_ACTIVEVIDEO 0x2d
  937. #define DEC_STATUS_SLOW_W_ACTIVEVIDEO 0x25
  938. #define DEC_STATUS_STEP_WO_ACTIVEVIDEO 0x2b
  939. #define DEC_STATUS_STEP_W_ACTIVEVIDEO 0x23
  940. #define DEC_STATUS_NSPB_WO_ACTIVEVIDEO 0x28
  941. #define DEC_STATUS_NSPB_W_ACTIVEVIDEO 0x20
  942. #define DEC_STATUS_PAUSE_WO_ACTIVEVIDEO 0x18
  943. #define DEC_STATUS_PAUSE_W_ACTIVEVIDEO 0x10
  944. #ifdef S1_GUI // ZKR GLV778
  945. #define B_DYNAMIC_COMPRESSION_ON TRUE // ZRN SH0705:Added define for Dyn Compression
  946. #define B_DOWNSAMPLING_ON           TRUE    // ZKR GL010303 : Added define for LCPM Downsampling  
  947. #endif
  948. //////////////////////////////////////////////////////////////
  949. //SeanL:Auddio setting, it MUST be betwen 0x0000 ---> 0x00FF
  950. //
  951. //
  952. //////////////////////////////////////////////////////////////
  953. #define PS_UPDATE_DIGITAL_SETTINGS 0x0000
  954. #define PS_UPDATE_PROLOGIC_SETTING 0x0001
  955. #define PS_UPDATE_KARAOKE_SETTING 0x0002
  956. #define PS_UPDATE_3DEFFECT_SETTING 0x0003
  957. #define PS_UPDATE_KARKEYSHIFT_SETTING 0x0004
  958. #define PS_UPDATE_KARECHODELAY_SETTING 0x0005
  959. #define PS_UPDATE_DMM_SETTING 0x0006
  960. #define PS_UPDATE_PARTNER_SETTING 0x0007
  961. #define PS_UPDATE_PARTNER_STATE 0x0008
  962. #define PS_UPDATE_KAR_AC3_MEL_SETTING 0x0009
  963. #define PS_UPDATE_KAR_AC3_VOCAL_SETTING 0x000A
  964. #define PS_UPDATE_MUTE_SETTING 0x000B
  965. #define PS_UPDATE_VOLUME_SETTING 0x000C
  966. #define PS_UPDATE_KARAOKE_RECORDING_QUALITY    0x000D
  967. #define PS_UPDATE_DYNAMIC_COMPRESSION_SETTING 0x000E
  968. #define PS_UPDATE_GRAPHIC_EQUALIZER_MODE         0x000F
  969. #define PS_UPDATE_DRC_CONTROL 0x0010
  970. #define PS_UPDATE_CNTR_CTRL 0x0011
  971. #define PS_UPDATE_REAR_CTRL 0x0012
  972. #define PS_UPDATE_PANORAMA 0x0013
  973. #define PS_UPDATE_DEC_MODE 0x0014
  974. #define PS_UPDATE_MUSIC_MODE 0x0015
  975. #define PS_UPDATE_DIMENSION_CTRL 0x0016
  976. #define PS_UPDATE_CENTER_WIDTH_CTRL 0x0017
  977. #define PS_UPDATE_DOWN_SAMPLING_SETTING 0x0018
  978. #define PS_UPDATE_AIN_PRLGII_MODE 0x0019
  979. #define PS_UPDATE_BASS_MANAGEMENT 0x001A
  980. #ifdef MULTIPLE_3D_EFFECT_CHOICE
  981. #define PS_UPDATE_3D_EFFECT 0x001B
  982. #endif
  983. #ifdef D_CONTROL_6_CHANNEL_VOLUME
  984. #define PS_UPDATE_SEPARATE_VOLUME 0x001C
  985. #endif //D_CONTROL_6_CHANNEL_VOLUME
  986. #define PS_UPDATE_DOWNMIX_VOLUME_SETTING 0x001D
  987. #if D_SUPPORT_SACD
  988. #define PS_UPDATE_SACDLAYER_SETTING 0x001E
  989. #endif
  990. #define PS_UPDATE_VOICE_CANCEL_SETTING 0x001F
  991. #ifdef D_ENABLE_HEADPHONE_DETECT
  992. #define PS_UPDATE_HEADPHONE_SETTING 0x0020
  993. #endif
  994. // <<< ZKR ML : 042004 change position
  995. #ifdef D_ENABLE_SPEAKER_SETUP 
  996. #define PS_UPDATE_BASS_RECFG_SETTING   0x0021
  997. #define PS_UPDATE_CENTERSPK_SETTING   0x0022 // SEC CH.KO012203: Center speaker setting
  998. #define PS_UPDATE_REARSPK_SETTING         0x0023 // SEC CH.KO012203 : Rear speaker setting
  999. #define PS_UPDATE_SW_SETTING   0x0024
  1000. #endif 
  1001. #ifdef EXINO2   //<<ZKR ML: Dts digital out option.
  1002. #ifdef D_DIGITAL_DTS_OUT_OPTION
  1003. #define PS_UPDATE_DIGITAL_OUT 0x0025
  1004. #endif
  1005. #endif
  1006. #ifdef D_ENABLE_DOLBY_EX_SUPPORT
  1007. #define PS_UPDATE_DOLBY_EX_SETTING 0x0025 //SeanLiu_0902_2004
  1008. #endif
  1009. #ifdef D_AUDIO_DOWNMIX_MODE_SETTING
  1010. #define PS_UPDATE_DOWNMIX_MODE_SETTING 0x0026
  1011. #endif
  1012. //////////////////////////////////////////////////////////////
  1013. //Auddio setting END
  1014. //
  1015. //////////////////////////////////////////////////////////////
  1016. //////////////////////////////////////////////////////////////
  1017. //SeanL:Video setting, it MUST be betwen 0x0100 ---> 0x01FF
  1018. //
  1019. //////////////////////////////////////////////////////////////
  1020. #define PS_UPDATE_TV_STANDARD 0x0100
  1021. #define PS_UPDATE_VIEW_MODE 0x0101
  1022. #define PS_UPDATE_BE_CTRL_SETTING 0x0102 /* Brightness Enhancement */
  1023. #define PS_UPDATE_EE_CTRL_SETTING 0x0103 /* Edge Enhancement */
  1024. #define PS_UPDATE_VID_OUT 0x0104    /* Video output mode: CVBS/YUV */
  1025. #define PS_UPDATE_STILL_MODE_INTERPOLATION 0x0105 /* Still Mode Interpolation */
  1026. #define PS_UPDATE_BG_SELECT 0x0106
  1027. #define PS_UPDATE_JPG_VIEW_SETTING 0x0107
  1028. #define PS_UPDATE_JPG_INTERVAL_SETTING 0x0108
  1029. //#define PS_UPDATE_JPG_VIDBUF_SETTING 0x0109
  1030. #define PS_UPDATE_PROG_INTER_SETTING 0x010A
  1031. #define PS_UPDATE_TV_SHAPE 0x010B
  1032. #ifdef SUPPORT_CAPTURE_LOGO
  1033. #define PS_UPDATE_DISP_LOGO_SETTING 0x010C
  1034. #define PS_UPDATE_CAPTURE_LOGO_SIZE 0x010D
  1035. #define PS_UPDATE_WAIT_FOR_CAPTURE_LOGO_READY 0x010E
  1036. #define PS_UPDATE_CL_AR_SETTING  0x010F
  1037. #define PS_UPDATE_CL_OUTSCALLING_SETTING  0x0110
  1038. #endif
  1039. #ifdef D_CVE_BLACKLEVEL_SETTING
  1040. #define PS_UPDATE_CVE_BLACKLEVEL_SETTING 0x0111 /* Black Level setting for Internal Video Encoder */
  1041. #endif
  1042. #ifdef I77_COMPANION_CHIP
  1043. #define PS_UPDATE_HD_VID_OUT 0x0112
  1044. #define PS_UPDATE_HD_JPEG_MODE_PRIORITY 0x0113
  1045. #ifdef I77_BRAIN_STORM
  1046. #define PS_UPDATE_HD_LOCK_MODE 0x0117
  1047. #define PS_UPDATE_HD_COLOR_SPACE 0x0118
  1048. #endif//I77_BRAIN_STORM
  1049. #endif
  1050. // <<< SEC CH.KO050204 : DVI mode selection between SMPTE and CEA-861
  1051. #if defined(EXINO2) && defined(D_ENABLE_DVI_OUTPUT)
  1052. #define PS_UPDATE_DVI_OUT_MODE 0x0222
  1053. #endif 
  1054. // SEC CH.KO050204 >>>
  1055. #ifdef EZVIEW_ENABLED // ZKR GL031204 : Changed the macro name.
  1056. #define PS_UPDATE_EZVIEW_MODE 0x0114
  1057. #endif
  1058. #ifdef SWITCH_BETWEEN_PSO_AND_NON_PSO
  1059. #define PS_UPDATE_PREV_VID 0x0115 /*previous video output mode*/
  1060. #endif
  1061. #ifdef A_SD340E 
  1062. #ifdef USE_I64_TV_SHAPE_SETTING
  1063. #define PS_UPDATE_USER_TV_SHAPE 0x0116
  1064. #endif
  1065. #endif
  1066. #ifdef MPP_SUPPORT
  1067. #define PS_UPDATE_MPP_ENABLE 0x0119
  1068. #endif
  1069. #define PS_UPDATE_HD_COMPONENT_OUT 0x011A
  1070. //////////////////////////////////////////////////////////////
  1071. //Video setting END
  1072. //
  1073. //////////////////////////////////////////////////////////////
  1074. //////////////////////////////////////////////////////////////
  1075. //SeanL:General Settings, it MUST be betwen 0x0200 ---> 0x02FF
  1076. //
  1077. //////////////////////////////////////////////////////////////
  1078. #define PS_UPDATE_GENERAL_SETTINGS 0x0200 /* Gen Settings = parental ... */
  1079. #define PS_UPDATE_PARENTAL_LEVEL 0x0200 /* Parental level */
  1080. #define PS_UPDATE_DVD_MENU_LANGUAGE 0x0201 /* OSD menu language */
  1081. #define PS_UPDATE_AUDIO_LANGUAGE 0x0202 /* Audio language */
  1082. #define PS_UPDATE_SUBTITLE_LANGUAGE 0x0203 /* Subtitle language */
  1083. #define PS_UPDATE_OSD_MENU_LANGUAGE 0x0204 /* OSD menu language */
  1084. #define PS_UPDATE_PARENTAL_PASSWORD 0x0205 /* Parental password */
  1085. #define PS_UPDATE_KARAOKE_RECORDING_PLAYMODE   0x0206
  1086. #define PS_UPDATE_SPECTRUM_ANALYZER 0x0207
  1087. #define PS_UPDATE_MACROVISION_MODE 0x0208
  1088. #define PS_UPDATE_OSD_SWITCHER 0x0209
  1089. #define PS_UPDATE_VCD_PLAYABLE_MODE 0x020A
  1090. #define PS_UPDATE_DVD_AUDIO_VIDEO_PREFERENCE  0x020B
  1091. #define PS_UPDATE_SCREEN_SAVER_ENABLE 0x020C
  1092. #define PS_UPDATE_TO_FACTORY_SETTING 0x020D
  1093. #define PS_UPDATE_REGION_CODE 0x020F
  1094. #ifdef D_FRONT_DISPLAY_SETTING
  1095. #define PS_UPDATE_FRONT_DISPLAY_SETTING 0x0210 /* Front Display Setting */
  1096. #endif // D_FRONT_DISPLAY_SETTING
  1097. #ifdef TV_GUARDIAN_ENABLE
  1098. #define PS_UPDATE_TVG_MODE 0x0211
  1099. #define PS_UPDATE_TVG_CC 0x0212
  1100. #define PS_UPDATE_TVG_CC_CHANNEL 0x0213
  1101. #endif
  1102. #ifdef ANGLE_MARK_SETTING
  1103. #define PS_UPDATE_ANGLE_MARK_SETTING 0x0214
  1104. #endif
  1105. #ifdef SMART_NAVI_MENU_SETTING
  1106. #define PS_UPDATE_SMART_NAVI_SETTING 0x0215
  1107. #endif
  1108. #ifdef FOUR_LEVEL_TRANSPARENCY
  1109. #define PS_UPDATE_TRANSPARENCY_LEVEL 0x0216
  1110. #endif
  1111. #ifdef SPDIF_IN_CH_SELECT
  1112. #define PS_UPDATE_DIGITAL_AUDIO_IN_CH 0x0218
  1113. #endif
  1114. #ifdef DVD_AUDIO_SUPPORT
  1115. #define PS_UPDATE_A_V_PRIORITY 0x021A
  1116. #endif
  1117. #define PS_UPDATE_CUSTOMER_RESERVED 0x021B // ZKR GLV778
  1118. // Robin_1003_2004_G
  1119. #ifdef USE_AUX_SUBTITLES
  1120. //define PS_UPDATE_DIVX_SUBTITLE_LANGUAGE 0x021C /* DivX Subtitle language */
  1121. #endif
  1122. #ifdef D_AUTO_PLAY_MODE_SUPPORT
  1123. #define PS_UPDATE_AUTO_PLAY_MODE        0x0232
  1124. #endif
  1125. #ifdef D_SURROUND_PERFERENCE_SUPPORT
  1126. #define PS_UPDATE_SURROUND_PERFERENCE 0x0234
  1127. #endif
  1128. #ifdef D_YOUR_DVD_SUPPORT
  1129. #define PS_UPDATE_YOURDVD_SETTING 0x021E
  1130. #endif
  1131. #define PS_UPDATE_TFT_SETTING 0x021C
  1132. #ifdef USE_JOG
  1133. typedef enum {
  1134. ALL_VOLUME,
  1135. LEFT_VOLUME,
  1136. RIGHT_VOLUME,
  1137. LEFT_SUR_VOLUME,
  1138. RIGHT_SUR_VOLUME,
  1139. CENTER_VOLUME,
  1140. SUB_VOLUME,
  1141. LAST_VOLUME
  1142. } VOLUME_CHANNEL;
  1143. //this order must be same as above!!
  1144. #define PS_UPDATE_MAIN_VOLUME 0x0222
  1145. #define PS_UPDATE_MAIN_VOL_LEFT 0x0223
  1146. #define PS_UPDATE_MAIN_VOL_RIGHT 0x0224
  1147. #define PS_UPDATE_SUR_VOL_LEFT 0x0225
  1148. #define PS_UPDATE_SUR_VOL_RIGHT 0x0226
  1149. #define PS_UPDATE_CENTER_VOL 0x0227
  1150. #define PS_UPDATE_SUB_VOL 0x0228
  1151. #define PS_UPDATE_ALL_VOLUME 0x0229
  1152. #endif
  1153. #ifdef D_AUX_SUBTITLE_SELECT
  1154. #define PS_UPDATE_AUX_SUBTITLE 0x022A
  1155. #endif
  1156. //////////////////////////////////////////////////////////////
  1157. //General Settings END
  1158. //
  1159. //////////////////////////////////////////////////////////////
  1160. //////////////////////////////////////////////////////////////
  1161. //SeanL:Tuner Settings, it MUST be betwen 0x0300 ---> 0x03FF
  1162. //
  1163. //////////////////////////////////////////////////////////////
  1164. #define PS_UPDATE_TUNER_WORKMODE 0x0300
  1165. #define PS_UPDATE_AMFM_FLAG 0x0301 /* Indicate active radio band */
  1166. #define PS_UPDATE_FMSTATION_TOTALNUM 0x0302 /* Real amount of Radio FM stations */
  1167. #define PS_UPDATE_AMSTATION_TOTALNUM 0x0303 /* Real amount of Radio AM stations */
  1168. #define PS_UPDATE_FMSTATION_CURNUM 0x0304 /* Real amount of Radio FM stations */
  1169. #define PS_UPDATE_AMSTATION_CURNUM 0x0305 /* Real amount of Radio AM stations */
  1170. #define PS_UPDATE_FMSTATION_FREQUENCY 0x0306 /* Recode FM station */
  1171. #define PS_UPDATE_AMSTATION_FREQUENCY 0x0307 /* Recode AM station */
  1172. #define PS_CLEAR_ALL_AM_STATION_PARAM 0x0308 /* Initial all radio station param */
  1173. #define PS_CLEAR_ALL_FM_STATION_PARAM 0x0309 /* Initial all radio station param */
  1174. #define PS_UPDATE_AMPLIFIER_VOLUME 0x030A
  1175. #define PS_UPDATE_STEREO_MONO 0x030B
  1176. #define PS_UPDATE_ONE_FMSTATION_FREQUENCY 0x030C /* Recode one FM station */
  1177. #define PS_UPDATE_ONE_AMSTATION_FREQUENCY 0x030D /* Recode one AM station */
  1178. #define PS_UPDATE_PRETUN_FLAG 0x030E /* Indicate active radio band */
  1179. #define PS_UPDATE_FREQUENCY 0x030F /* Indicate active radio band */
  1180. //#ifdef SAVE_STEREO_MONO_MODE
  1181. #define PS_STEREO_MONO 0x0311
  1182. //#endif
  1183. //////////////////////////////////////////////////////////////
  1184. //Tuner Settings END
  1185. //
  1186. //////////////////////////////////////////////////////////////
  1187. //////////////////////////////////////////////////////////////
  1188. //SeanL:Amplifier Settings, it MUST be betwen 0x0400 ---> 0x04FF
  1189. //
  1190. //////////////////////////////////////////////////////////////
  1191. #define PS_UPDATE_BASE_TONE 0x0400
  1192. #define PS_UPDATE_TREMBLE_TONE 0x0401
  1193. #define PS_UPDATE_DRC_MODE 0x0402
  1194. #define PS_UPDATE_DRC_ATTACK_SPEED 0x0403
  1195. #define PS_UPDATE_DRC_RELEASE_SPEED 0x0404
  1196. #define PS_UPDATE_DRC_ATTACK_RANGE 0x0405
  1197. #define PS_UPDATE_DRC_RELEASE_RANGE 0x0406
  1198. #define PS_UPDATE_SOUND_EFFECT 0x0407
  1199. #define PS_UPDATE_BASE_SET 0x0409
  1200. //////////////////////////////////////////////////////////////
  1201. //Amplifier Settings END
  1202. //
  1203. //////////////////////////////////////////////////////////////
  1204. //////////////////////////////////////////////////////////////
  1205. #ifdef AVI_DRM_SUPPORT
  1206. #define PS_UPDATE_DRM_MEMORY 0x0500
  1207. #endif
  1208. //////////////////////////////////////////////////////////////
  1209. #ifdef D_MEMORY_SETTING
  1210. #define PS_UPDATE_MEMORY_SETTING 0x0501
  1211. #endif
  1212. #ifdef D_CLOSE_CAPTION_SETTING
  1213. #define PS_UPDATE_CLOSE_CAPTION_SETTING 0x0502
  1214. #endif
  1215. #ifdef D_LANGUAGE_OTHERS
  1216. #define PS_UPDATE_SUBTITLE_OTHERS_LANGUAGE 0x0503
  1217. #define PS_UPDATE_AUDIO_OTHERS_LANGUAGE 0x0504
  1218. #define PS_UPDATE_DVD_MENU_OTHERS_LANGUAGE 0x0505
  1219. #endif
  1220. #ifdef VIRTUAL_SURROUND_ENABLE
  1221. #define PS_UPDATE_VITUAL_SURROUND_EFFECT 0x0506
  1222. #endif
  1223. #ifdef D_VIDEO_HD_COM_SETTING
  1224. #define PS_UPDATE_VIDEO_HD_COM 0x0507
  1225. #endif
  1226. #ifdef D_AUTO_STANDBY_SETTING
  1227. #define PS_UPDATE_AUTO_STANDBY_SETTING 0x0508
  1228. #endif
  1229. // below define the HardWare Limitation due to the decoder capabilities
  1230. #define HW_MAX_VOLUME 0x7fffUL //Max gain for ADP Volume 
  1231. #define HW_MAX_ECHO_DELAY 256 // Max Echo Delay = 240ms
  1232. #define HW_MAX_KEY_SHIFT 7 // Max Key Shift Value : -7 to +7
  1233. // Special values for subtitle_language
  1234. #define SUBTITLE_AUTO   0xffff
  1235. #define SUBTITLE_OFF   0
  1236. // <<< ZORAN CDE0619 : Support original audio language
  1237. // Special values for audio language
  1238. #define AUDIO_ORIGINAL   0xfffe
  1239. // ZORAN CDE0619 >>>
  1240. //<<< FW0917 Move from ms_lib.h
  1241. #define INITIAL_PASSWORD 0xffff
  1242. #ifdef NEW_MASTER_PASSWORD
  1243. #ifdef MASTER_PASSWORD
  1244. #undef MASTER_PASSWORD
  1245. #endif
  1246. #define MASTER_PASSWORD   NEW_MASTER_PASSWORD
  1247. #endif
  1248. #define IS_UNLOCKED  (gps->parental_password == INITIAL_PASSWORD)
  1249. #define PASSWORD_MATCHES(_password_)  ( ((_password_) == gps->parental_password) || ((_password_) == MASTER_PASSWORD) )
  1250. // FW0917 >>>
  1251. #define MAX_FM_STATION 50
  1252. #define MAX_AM_STATION 5
  1253. #define MAX_TUNER_WORK_MODE 4
  1254. #define MAX_CHANNEL 7
  1255. #ifdef PS_9702B
  1256. #define DEFAULT_SATELLITE_VOLUME     0x06
  1257. #define DEFAULT_LFE_VOLUME           0x10
  1258. #define DEFAULT_MASTER_VOLUME        0x28
  1259. #elif  TAS5026_VOL_MAP
  1260. #define DEFAULT_SATELLITE_VOLUME     12
  1261. #define DEFAULT_LFE_VOLUME           12
  1262. #define DEFAULT_MASTER_VOLUME        0x9d
  1263. #elif  TAS3103_VOL_MAP
  1264. #define DEFAULT_SATELLITE_VOLUME     12
  1265. #define DEFAULT_LFE_VOLUME           12
  1266. #define DEFAULT_MASTER_VOLUME        20
  1267. #else
  1268. #define DEFAULT_SATELLITE_VOLUME     0x20
  1269. #define DEFAULT_LFE_VOLUME           0x0c
  1270. #define DEFAULT_MASTER_VOLUME        0x28
  1271. #endif
  1272. #ifdef AVI_DRM_SUPPORT
  1273. #define PACKED_ALLOCATION_BYTES 48
  1274. #endif
  1275. #ifdef I77_BRAIN_STORM
  1276. typedef struct {
  1277. BYTE hdmi_model_ID[8];
  1278. BYTE output_resolution:5;
  1279. BYTE color_space:2;
  1280. BYTE hdmi_mode:1;
  1281. }HDMI_MODE_STRUCT;
  1282. #endif//I77_BRAIN_STORM
  1283. typedef struct {
  1284. WORD digital_setting; /* Digital Audio Settings for every audio stream ->PCM or Bitstream */
  1285. WORD volume;
  1286. WORD dvd_menu_language;
  1287. WORD audio_language;
  1288. WORD subtitle_language;
  1289. WORD osd_menu_language;
  1290. WORD parental_password;  /* 0xFFFF means not defined, unlocked */
  1291. WORD parental_country;
  1292. BYTE region_code;
  1293. #if defined(EXINO2) && defined(D_ENABLE_HDCP_FREE) //ZKR JK0428 : for hdcp free
  1294. BYTE hdcp_free;
  1295. #endif
  1296. BYTE parental_level;
  1297. BYTE tv_standard;
  1298. BYTE view_mode;
  1299. BYTE tv_shape;
  1300. #ifdef A_SD340E 
  1301. #ifdef USE_I64_TV_SHAPE_SETTING
  1302. BYTE user_tv_shape; //use i64 tv shape setting, {4:3PS, 4:3LB, 16:9}
  1303. #endif
  1304. #endif
  1305. BYTE BassManagement;
  1306. BYTE SpeakersConfigIndex;
  1307. #ifdef D_ENABLE_DOLBY_EX_SUPPORT
  1308. BYTE Dolby_EX_BS_Speakers;
  1309. #endif
  1310. #if defined(D_SIMPLIFIED_AUDIO_SETUP)&&defined(D_ENABLE_SUBWOOFER_OPTION)
  1311. BYTE SpeakersConfigIndexBak;
  1312. #endif
  1313. BYTE prologic;
  1314. BYTE be_ctrl; /* Brightness Enhancement control */
  1315. BYTE ee_ctrl; /* Edge Enhancement Control and Mode */
  1316. BYTE osd_onoff; /* Osd On/Off mode */
  1317. BYTE jpg_size; /* option for orginal/full screen size*/
  1318. BYTE jpg_interval;
  1319. #ifdef D_STILL_MODE_INTERPOLATION_ENABLED //ZKR JK0325 : add 
  1320. BYTE still_mode_interpol;
  1321. #endif 
  1322. BYTE frontDisplay;
  1323. #ifdef I77_COMPANION_CHIP
  1324. BYTE hd_vid_out_mode;
  1325. BYTE hd_component_out; //add by wl070505
  1326. BYTE hd_jpeg_mode_preference;
  1327. #ifdef I77_BRAIN_STORM
  1328. BYTE hd_lock_mode;
  1329. HDMI_MODE_STRUCT lastest_hdmi_mode;
  1330. #endif//I77_BRAIN_STORM
  1331. #endif//I77_COMPANION_CHIP
  1332. BYTE vid_out;
  1333. #ifdef SWITCH_BETWEEN_PSO_AND_NON_PSO
  1334. BYTE prev_vid_out; /*previous video output mode*/
  1335. #endif
  1336. BYTE macrovision_mode;
  1337. BYTE vcd_playable_mode;
  1338. #ifdef D_USE_CUSTOMER_RESERVED_SETTING
  1339. BYTE customer_reserved; /* Customer-specific setting information */
  1340. #endif
  1341. #ifdef D_CVE_BLACKLEVEL_SETTING
  1342. BOOL cve_blacklevel; // Black level set or not (if SET, strech level to 7.5 IRE)
  1343. #endif
  1344. #ifdef TV_GUARDIAN_ENABLE
  1345. BYTE tvg_mode;
  1346. #endif
  1347. BYTE prog_inter_select;    /* ON for progressive output, else OFF */
  1348. BYTE pso_mode;
  1349. BYTE screen_saver_enable;
  1350. #ifdef SUPPORT_CAPTURE_LOGO
  1351. BYTE disp_logo;
  1352. int  captureLogoKWords;
  1353. BYTE cl_AR;
  1354. BYTE  cl_OutScalling;
  1355. #endif
  1356. BYTE ucBackGroundSelect; // Blue, Gray, Picture(LOGO), Jacket?
  1357. WORD ucDRCCtrl; //0x0000 - OFF, 0xFFFF - ON
  1358. #ifdef MULTIPLE_3D_EFFECT_CHOICE
  1359. BYTE uc3DEffect; // 0 - QSurround, 1 - Aureal, 2 - VBX, 3 - Spatializer
  1360. #endif
  1361. #ifdef D_ENABLE_SETUP_CNTRCTRL
  1362. BYTE cntr_speaker_ctrl;
  1363. #endif
  1364. #ifdef D_ENABLE_SETUP_REARCTRL
  1365. BYTE rear_speaker_ctrl;
  1366. #endif
  1367. BYTE downsampling_setting;
  1368. #ifdef ANGLE_MARK_SETTING
  1369. BYTE angle_mark;
  1370. #endif
  1371. BYTE smart_navi;
  1372. #if defined(AUX_IN_ENABLE) || defined(TUNER_ENABLE)
  1373. BYTE ain_mode;
  1374. #endif
  1375. #ifdef SPDIF_IN_CH_SELECT
  1376. BYTE dig_aud_in_chan;    // defined for SPDIF_IN channel select.
  1377. #endif
  1378. #ifdef FOUR_LEVEL_TRANSPARENCY 
  1379. BYTE menuTrans;
  1380. #endif
  1381. #ifdef D_CONTROL_6_CHANNEL_VOLUME
  1382. BYTE separate_volume[6];
  1383. #endif //D_CONTROL_6_CHANNEL_VOLUME
  1384. #ifdef TUNER_ENABLE
  1385. BYTE TunerWorkmode;
  1386. BYTE bAmFm;
  1387. WORD FMRadioStations[MAX_FM_STATION];
  1388. WORD AMRadioStations[MAX_AM_STATION];
  1389. BYTE TotalFMStationNum;
  1390. BYTE TotalAMStationNum;
  1391. BYTE CurrentFMStationIndex;
  1392. BYTE CurrentAMStationIndex;
  1393. BYTE CurrentPretunStation;
  1394. WORD CurrentFrequency;
  1395. //#ifdef SAVE_STEREO_MONO_MODE
  1396. BYTE CurrentStereoMono;
  1397. //#endif
  1398. #endif
  1399. #ifdef USE_JOG
  1400.        BYTE left_volume;
  1401. BYTE right_volume;
  1402. BYTE sur_left_volume;
  1403. BYTE sur_right_volume;
  1404. BYTE center_volume;
  1405. BYTE sub_volume;
  1406. BYTE main_volume;
  1407. #endif
  1408. #ifdef DIGITAL_AMPLIFIER_ENABLE
  1409. BYTE ChannelVolume[MAX_CHANNEL];
  1410. BYTE BaseSet;
  1411. BYTE BaseTone;
  1412. BYTE TrembleTone;
  1413. BYTE DRCMode;
  1414. BYTE DRCAttackSpeed;
  1415. BYTE DRCReleaseSpeed;
  1416. BYTE DRCAttackThreshold;
  1417. BYTE DRCReleaseThreshold;
  1418. BYTE SoundEffect;
  1419. #endif
  1420. #if defined(EXINO2) && defined(D_USE_CUSTOMER_RESERVED_SETTING)   // SEC CH.KO041604
  1421. WORD parental_password_saved;
  1422. #endif
  1423. #ifdef DVD_AUDIO_SUPPORT
  1424. BYTE dvd_a_v_preference;
  1425. #endif
  1426. #if D_SUPPORT_SACD
  1427. BYTE playCDLayerOfSACD;
  1428. #endif
  1429. BYTE enhancement_mode; 
  1430. BYTE restricted_enhancement_mode;
  1431. BYTE Dimension_ctrl;
  1432. BYTE Center_width_ctrl;
  1433. BYTE Panorama;
  1434. BYTE Hall_effect;
  1435. WORD downmix_volume;
  1436. #ifdef EZVIEW_ENABLED // ZKR GL031204 : Changed the macro name.
  1437. BYTE ezview_mode;
  1438. #endif
  1439. // <<< SEC CH.KO012203
  1440. #ifdef D_ENABLE_SPEAKER_SETUP 
  1441. BYTE bass_configration;
  1442. BYTE centerspk;
  1443. BYTE rearspk ;
  1444. BYTE subwoofer;
  1445. #endif 
  1446. #ifdef EXINO2  //<<ZKR ML:040704  Dts digital out  option.
  1447. #ifdef D_DIGITAL_DTS_OUT_OPTION
  1448. BYTE dts_digital_out;
  1449. #endif 
  1450. #endif
  1451. // <<< SEC CH.KO050204 : add dvi mode
  1452. #if defined ( D_ENABLE_DVI_OUTPUT) && defined (EXINO2)
  1453. BYTE dvi_out_mode;
  1454. #endif // D_ENABLE_DVI_OUTPUT
  1455. #ifdef D_MEMORY_SETTING
  1456. unsigned int  memory_mode:1;
  1457. #endif
  1458. #ifdef D_CLOSE_CAPTION_SETTING
  1459. unsigned int  close_caption_mode:1;
  1460. #endif
  1461. #ifdef D_LANGUAGE_OTHERS
  1462. WORD subtitle_others_language;
  1463. WORD audio_others_language;
  1464. WORD menu_others_language;
  1465. #endif
  1466. #ifdef VIRTUAL_SURROUND_ENABLE
  1467. BYTE threeD_effect;
  1468. #endif
  1469. #ifdef D_VIDEO_HD_COM_SETTING
  1470. unsigned int  video_hd_com:1;
  1471. #endif
  1472. #ifdef D_AUDIO_DOWNMIX_MODE_SETTING
  1473. unsigned int downmix_mode:2;
  1474. #endif
  1475. #ifdef D_AUTO_STANDBY_SETTING
  1476. unsigned int auto_standy_enable:1;
  1477. #endif
  1478. #ifdef AVI_DRM_SUPPORT
  1479. BYTE drmmemoryPacked[PACKED_ALLOCATION_BYTES];
  1480. #endif
  1481. #ifdef D_AUX_SUBTITLE_SELECT
  1482. BYTE aux_subtitle;
  1483. #endif
  1484. #ifdef D_AUTO_PLAY_MODE_SUPPORT
  1485. BYTE bAutoPlayMode;
  1486. #endif
  1487. #ifdef D_SURROUND_PERFERENCE_SUPPORT
  1488. BYTE surround_perference;
  1489. #endif
  1490. #ifdef D_YOUR_DVD_SUPPORT
  1491. unsigned int  your_dvd_enable:1;
  1492. #endif
  1493. //Warnning: startting from address 0x30: the area will be reserved for DVD/SVCD/VCD/CDDA HW_Power_ON_RESUME if enabled
  1494. //make sure there is no conflict with it
  1495. }NV_SETTINGS;
  1496. typedef union{
  1497. NV_SETTINGS settings;
  1498. BYTE data[sizeof(NV_SETTINGS)+1]; /* add 1 for check sum */
  1499. }NV_STORAGE;
  1500. #ifdef TV_GUARDIAN_ENABLE
  1501. #define TVG_MODE_M 0x03
  1502. #define TVG_CC_M 0x0C
  1503. #define TVG_CC_CHANNEL_M 0x30
  1504. BYTE PS_Get_TVG_Mode_Value(void);
  1505. BYTE PS_Get_TVG_CC_Value(void);
  1506. BYTE PS_Get_TVG_CC_Channel_Value(void);
  1507. void PS_Set_TVG_Mode_Value(BYTE value);
  1508. void PS_Set_TVG_CC_Value(BYTE value);
  1509. void PS_Set_TVG_CC_Channel_Value(BYTE value);
  1510. #endif
  1511. #ifdef AVI_DRM_SUPPORT
  1512. BOOL PS_LoadDrmMemory(unsigned char *data, unsigned int count);
  1513. BOOL PS_SaveDrmMemory(unsigned char *data, unsigned int count);
  1514. #endif
  1515. typedef struct {
  1516. //Leon.He_1008_05: Clean up the code for DVD Audio HGR.
  1517. #ifdef DVD_AUDIO_SUPPORT
  1518. DWORD dwDvdaHgrUserPwd;
  1519. #endif
  1520. WORD mKarEchoDelay; /* Echo Delay in ms */
  1521. BYTE mKarKeyShift; /* Capabilites -127 to 128 depending on HW */
  1522. unsigned int m3dEffect:1;
  1523. unsigned int mKaraoke:1;
  1524. unsigned int mPartner:1;
  1525. unsigned int mDMM:2; /* Dual Mono Reproduction Mode */
  1526. unsigned int mAC3KarVocal:2; /* Type of vocal mode for AC3 Karaoke */
  1527. unsigned int mAC3KarMel:1; /* Melody On or Off for AC3 Karaoke */
  1528. unsigned int mVoiceCanel:1; /* voice cancel setting */
  1529. unsigned int mMute:1;
  1530. #ifdef SPECTRUM_EQUALIZER
  1531. unsigned int mGeMode:3; //graphic equalizer mode
  1532. #endif
  1533. #ifdef AUTO_SLEEP
  1534. unsigned int mAutoStandby:3;          /*standby time set in minutes*/
  1535. #endif
  1536. #ifdef D_ENABLE_HEADPHONE_DETECT
  1537. unsigned int mHeadPhone:1;
  1538. #endif
  1539. #ifdef AUDIO_IN_SUPPORT
  1540. unsigned int mAudioInMode:2;
  1541. #endif
  1542. } TEMP_SETTINGS;
  1543. typedef struct {
  1544. WORD mVolume;
  1545. //ZCH, Sean07102003
  1546. #ifdef D_CONTROL_6_CHANNEL_VOLUME
  1547. BYTE mSeparateVolumeFlag;
  1548. #endif //D_CONTROL_6_CHANNEL_VOLUME
  1549. WORD mKarEchoDelay; /* Current Echo Delay in ms */
  1550. char mKarKeyShift; /* Current Karaoke Key Shift value */
  1551. BYTE mStreamID; /* Current Stream ID (may be != for the same AudioStream) */
  1552. BYTE mDecStatus;
  1553. BYTE mAudioChannels;
  1554. BYTE actual_tv_std;
  1555. unsigned int m3dEffect:1; /* 3D Effect currently activated */
  1556. unsigned int mKaraoke:1; /* Karaoke activated */
  1557. unsigned int mPartner:1; /* Partner currently activated */
  1558. unsigned int mDMM:2; /* Current Dual Mono Rep mode */
  1559. unsigned int mAC3KarVocal:2; /* Current AC3 Vocal Mode */
  1560. unsigned int mAC3KarMel:1; /* Current state of Melody setting */
  1561. unsigned int mAudioStream:4; /* Current Audio Stream */
  1562. unsigned int mHDCDDetected:1; /* HDCD has been detected */
  1563. unsigned int mCDDTSDetected:2; /* CD-DTS has been detected */
  1564. unsigned int mCDGDetected:1; /* CDG Notification flag */
  1565. unsigned int mAnalogOut:2; /* Current Analog output mode */
  1566. unsigned int mDigitalOut:2; /* Current Digital Output mode */
  1567. unsigned int mMute:1; /* Audio currently Mute */
  1568. unsigned int mProLogicDetected:1; /* Current audio is prologic */
  1569. unsigned int mNeedScaling:1; // Flag indicating if sequence infomation changed
  1570. unsigned int mUseManualScaling:1; 
  1571. #ifdef S1_GUI // ZKR GLV778
  1572. UINT mLogoDisplayed:1; /* Logo display request fulfilled */
  1573. #endif
  1574. #ifdef MPP_SUPPORT
  1575. unsigned int mMPP_Enable:1;    /* MPP activated */
  1576. #endif
  1577. //SeanLiu_0902_2004
  1578. #ifdef AUDIO_IN_SUPPORT
  1579. unsigned int mDinDetectedBitStream:6;
  1580. unsigned int mDinSampleRate:4;
  1581. unsigned int mAudioInMode:2;
  1582. unsigned int mAudioInICFG:3;
  1583. unsigned int mAudioInLFE:1;
  1584. #endif
  1585. //<<<SeanLiu_0902_2004
  1586. #ifdef I77_COMPANION_CHIP
  1587. #ifdef I77_BRAIN_STORM
  1588. unsigned char hd_jpeg_mode_preference;
  1589. #endif//I77_BRAIN_STORM
  1590. #endif //I77_COMPANION_CHIP
  1591. } CURRENT_STATES;
  1592. void PS_RestoreFactoryDefault( void );
  1593. void PS_Save( void );
  1594. void PS_NVM_Save(BOOL bUpdateFlash);
  1595. void PS_Restore( void );              // Restores form EEPROM and restores gPlayerSettings according to spec.
  1596. void PS_Update(DWORD);
  1597. //Change the gps->** to function.
  1598. WORD PS_GetDVDMenuLanguage(void);
  1599. WORD PS_GetAudioLanguage(void);
  1600. WORD PS_GetSubtitleLanguage(void);
  1601. WORD PS_GetParentalCountry(void);
  1602. BYTE PS_GetRegionCode(void);
  1603. BYTE PS_GetParentalLevel(void);
  1604. BYTE PS_GetTVStandard(void);
  1605. BYTE PS_GetViewMode(void);
  1606. BYTE PS_GetTVShape(void);
  1607. #ifdef EZVIEW_ENABLED 
  1608. BYTE PS_GetEzviewMode();
  1609. #endif
  1610. BYTE PS_GetVideoMode();
  1611. #ifdef D_AUTO_PLAY_MODE_SUPPORT
  1612. BYTE PS_GetAutoPlayMode(void);
  1613. #endif
  1614. #ifdef D_SURROUND_PERFERENCE_SUPPORT
  1615. BYTE PS_GetSurroundPerferenceParam(void);
  1616. #endif
  1617. #define PS_GET_ANALOG_AUDIO_SETTING() (((SPK_NOT_PRESENT == SpeakersConfigTable[gps->SpeakersConfigIndex].mCenterSpk) 
  1618. && (SPK_NOT_PRESENT == SpeakersConfigTable[gps->SpeakersConfigIndex].mSurroundSpk) 
  1619. && (SW_NOT_PRESENT == SpeakersConfigTable[gps->SpeakersConfigIndex].mSubwoofer)) 
  1620. ? ANALOG_AUDIO_2CH : ANALOG_AUDIO_6CH)
  1621. #define PS_SET_DIGITAL_AUDIO_SETTING(AStr,ASet) do {gps->digital_setting = ( (~( (0xF) << ((AStr)<<2) ) ) & gps->digital_setting) | ( ((WORD)(ASet)) << ((AStr)<<2));} while(0)
  1622. #define PS_GET_DIGITAL_AUDIO_SETTING(AStr) ((gps->digital_setting>>((AStr)<<2)) & 0xF)
  1623. #define PS_GET_TV_STANDARD_SETTING() ((gps->tv_standard & 0x7L))
  1624. #define PS_GET_OSD_ONOFF_SETTING() (gps->osd_onoff & 0x1L)
  1625. #ifdef I77_COMPANION_CHIP
  1626. #define PS_GET_HD_VIDEO_OUTMODE() (gps->hd_vid_out_mode)
  1627. #endif
  1628. #ifdef FOUR_LEVEL_TRANSPARENCY //BT030703
  1629. #define PS_GET_TRANSPARENCY_LEVEL  (gps->menuTrans)
  1630. #endif
  1631. #ifdef D_ENABLE_SETUP_JPG_SIZE
  1632. #if defined(I77_COMPANION_CHIP) && defined(I77_BRAIN_STORM)
  1633. #define PS_GET_JPEG_SIZE_SETTING() (gps->hd_jpeg_mode_preference==HD_JPEG_MODE ? JPG_SIZE_ORIGINAL : gps->jpg_size)
  1634. #else
  1635. #define PS_GET_JPEG_SIZE_SETTING() (gps->jpg_size)
  1636. #endif // MilesD1009_2005: Changed auto fit mode into original mode in HD JPEG, for ADP does not support auto fit mode in HD JPEG.
  1637. #else
  1638. #define PS_GET_JPEG_SIZE_SETTING() (JPG_SIZE_ORIGINAL)
  1639. #endif
  1640. #ifdef D_ENABLE_SETUP_JPG_INTERVAL
  1641. #define PS_GET_JPEG_INTERVAL_SETTING() (gps->jpg_interval)
  1642. #elif defined(I77_COMPANION_CHIP)
  1643. #define PS_GET_JPEG_INTERVAL_SETTING() (JPG_INTERVAL_2_SEC)
  1644. #else
  1645. #define PS_GET_JPEG_INTERVAL_SETTING() (JPG_INTERVAL_5_SEC)
  1646. #endif //D_ENABLE_SETUP_JPG_INTERVAL
  1647. //#ifdef D_VIDEO_OUTMODE_SINGLEKEY
  1648. #ifndef DONT_USE_PROGRESSIVE
  1649. #define PS_GET_VIDEO_OUTMODE() gps->vid_out
  1650. #define PS_GET_PSO_STAT() gps->prog_inter_select
  1651. #define PS_GET_PSO_MODE() gps->pso_mode
  1652. #endif
  1653. #define PS_GET_SCREEN_SAVER_ENABLE gps->screen_saver_enable //DM092502
  1654. #ifdef D_USE_CUSTOMER_RESERVED_SETTING
  1655. // Bit value for gps->customer_reserved
  1656. #define B_CUSTOMER_PREVIOUSLY_POWERED_ON   0x01
  1657. #define B_CUSTOMER_PREVIOUSLY_SET_PASSWORD 0x02
  1658. #endif // D_USE_CUSTOMER_RESERVED_SETTING
  1659. #ifdef DDX_8000_AMPLIFIER
  1660. #define  AM_MODE_ON                                                0x00050801
  1661. #define  AM_MODE_OFF                                              0x00050800
  1662. #define  EAPD_MUTE_ON                                                      0x00058000
  1663. #define  EAPD_MUTE_OFF                                                     0x00058001 
  1664. #define  AM_VOLUME_TRICK_ON                                  0x01000001 
  1665. #define  AM_VOLUME_TRICK_OFF                                0x01000000 
  1666. #define Satellite_volume_base    0x14
  1667. #define LFE_volume_base            0x00
  1668. #define Satellite_tuner_am_offset        Satellite_volume_base// 
  1669. #define LFE_tuner_am_offset                LFE_volume_base// 
  1670. #else
  1671. #define Satellite_tuner_am_offset        0// 
  1672. #define LFE_tuner_am_offset                0//
  1673. #endif
  1674. #endif  // _PS_H