str_os_prologic2.inc
上传用户:caisangzi8
上传日期:2013-10-25
资源大小:15756k
文件大小:4k
源码类别:

DVD

开发平台:

C/C++

  1. #include "user_init.h"
  2. #include "global.h"
  3. #include "osd.h"
  4. #include "auddrv.h" //2004AUDDRV oliver 20041004 for using audio driver purpose
  5. //#include "audif.h"
  6. void
  7. str_os_prologic2(int sub_id)
  8. {
  9. #ifdef DVD_SETUP_REENG//dengh add for DVD_SETUP_REEN2004-9-24 13:32
  10. UINT16 P=0;
  11. UINT16 I=0,S=0;
  12. #endif 
  13. BYTE type=0x23;
  14. if (sub_id!=STR_OS_OFF) // alan, 2003/8/11 02:17PM
  15. {
  16. //to avoid the bug:
  17. //when audio_channel is LC or RC,  open proloic II.
  18. //after exit SETUP, the volume of left channel and 
  19. //right channel is very small.
  20. //zhaoyanhua add 2004-2-11 14:06
  21. audio_channel = 0;
  22. AUDIF_Set_OutputMode(audio_channel+1, 0);//2004AUDDRV AudioSetOutputMode(audio_channel+1, 0);
  23. #ifdef DVD_SETUP_REENG   //denghg  add2004-9-30 11:43
  24.     P=setup_getItemPos(STR_OS_KEY);
  25.     I=P&0xff;
  26.         P=P>>8;
  27.         setup_VA[SETUP_VA_KEY]=8;   
  28.         setup_sel[P][I]=8;
  29.         audio_key=0;
  30.     AUDIF_Set_Key(setup_VA[SETUP_VA_KEY]);//2004AUDDRV AudioSetKey(setup_VA[SETUP_VA_KEY]);     
  31.     run_save_sel_cmd( setup_VA[SETUP_VA_KEY],SETUP_VA_KEY);    
  32. #else       //end dvd_setup_reeng
  33. SETUP_KEY = 8;
  34. audio_key=0;
  35. AUDIF_Set_Key(SETUP_KEY);//2004AUDDRV AudioSetKey(SETUP_KEY);
  36. run_save_sel_cmd(AUDPAGE, KEYITEM);//nono 20031117
  37. #endif//#ifdef DVD_SETUP_REENG  //dengh add for DVD_SETUP_REEN2004-9-24 13:32
  38. }
  39. if (sub_id==STR_OS_PL_MOVIE)
  40. {
  41. pl2_init_val|=(1<<20); // set prologic-II enable
  42. pl2_init_val|=(1<<16); // set init-val to movie mode
  43. //DSP set prologic-II enable
  44.         AUDIF_Set_ProLogicII(0x11);//2004AUDDRV AudioIOControl(PROLOGIC,0x11,0);
  45. type=0x23;
  46. //printf("<MOVIE>, pl2_init_val=0x%06xn",pl2_init_val);
  47.   #ifdef DVD_SETUP_REENG    //denghg  add  2004-9-30 11:43
  48.        P=setup_getItemPos(STR_OS_PROLOGIC);
  49.            I=P&0xff;
  50.            P=P>>8;
  51.            for( S=0; S<MAX_ITEM_SEL; S++) {
  52.            if (setup_item[P][I][S]==STR_OS_PL_MOVIE) break;
  53.           }
  54.           setup_sel[P][I]=S;
  55.           setup_VA[SETUP_VA_PROLOGIC]=setup_sel[P][I]; 
  56.       #endif      
  57. } else if (sub_id==STR_OS_PL_MUSIC) 
  58. {
  59. pl2_init_val|=(1<<20); // set prologic-II enable
  60. pl2_init_val&=(~(1<<16)); // set init-val to music mode
  61. //DSP set prologic-II enable
  62.         AUDIF_Set_ProLogicII(0x11);//2004AUDDRV AudioIOControl(PROLOGIC,0x11,0);
  63.         #ifdef USE_MATRIX_PROLOGICII_MODE//nono 4-2-25 23:07
  64. type=0x24;
  65.         #else
  66. type=0x22;
  67.         #endif
  68.        #ifdef DVD_SETUP_REENG//denghg  add  2004-9-30 11:44
  69.        P=setup_getItemPos(STR_OS_PROLOGIC);
  70.        I=P&0xff;
  71.        P=P>>8;
  72.        for( S=0; S<MAX_ITEM_SEL; S++) {
  73.            if (setup_item[P][I][S]==STR_OS_PL_MUSIC) break;
  74.           }
  75.           setup_sel[P][I]=S;
  76.           setup_VA[SETUP_VA_PROLOGIC]=setup_sel[P][I];       
  77.        #endif
  78.     
  79.        
  80. //printf("<MUSIC>, pl2_init_val=0x%06xn",pl2_init_val);
  81. } else if (sub_id==STR_OS_OFF) 
  82. {
  83. //pl2_init_val&=(~(1<<20)); // set prologic-II disable
  84. pl2_init_val=0x037300;
  85. //DSP set prologic-II disable
  86.         AUDIF_Set_ProLogicII(0x10);//2004AUDDRV AudioIOControl(PROLOGIC,0x10,0);
  87. #ifdef SUPPORT_PROLOGIC_II //terry,2004/2/10 03:43PM
  88. #ifdef DVD_SETUP_REENG//denghg  add  2004-9-30 11:44
  89.        P=setup_getItemPos(STR_OS_PROLOGIC);
  90.        I=P&0xff;
  91.        P=P>>8;
  92.          for( S=0; S<MAX_ITEM_SEL; S++) {
  93.            if (setup_item[P][I][S]==STR_OS_OFF) break;
  94.           }
  95.           setup_sel[P][I]=S;
  96.           setup_VA[SETUP_VA_PROLOGIC]=setup_sel[P][I];
  97. #else//#ifdef DVD_SETUP_REENG//denghg  add  2004-9-30 11:44
  98. SETUP_PROLOGIC_II = PROLOGIC_OFF;
  99. #endif//#ifdef DVD_SETUP_REENG//denghg  add  2004-9-30 11:44
  100. #endif
  101. }
  102. //set_dsp3_pcm_value(35,pl2_init_val);
  103. //DSP set prologic-II Decoder Mode Select
  104.     AUDIF_Set_ProLogicII(type);//2004AUDDRV AudioIOControl(PROLOGIC,type,0);
  105. #ifdef USE_PROLOGIC_II_KEY
  106.   #ifdef DVD_SETUP_REENG
  107.     prologic_val=setup_VA[SETUP_VA_PROLOGIC]-MIN_ITEM_SEL;
  108.   #else
  109. prologic_val=SETUP_PROLOGIC_II-2;
  110. #endif//#ifdef DVD_SETUP_REENG//denghg  add  2004-9-30 11:44
  111. #endif 
  112. //break;//nono mark 2004-6-6 17:58
  113. }