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

DVD

开发平台:

C/C++

  1. extern void wait_v_blank(void); // in vpp+dvd.c
  2. extern BYTE rem_osd_id;//nono 2-7-15 21:34
  3. extern void set_video_default_offset(void);
  4. extern void startup_vpp_now(void);
  5. extern BYTE GetCurrentFileType(void);
  6. #ifdef SUPPORT_OSDID3//suqiaoli add 2004-3-26 
  7. extern void osd_init_OSDID3(void);
  8. extern void show_id3(void);
  9. #endif
  10. #ifdef SUPPORT_MP4_SUBTITLE  // David 2004-5-12
  11. extern void osd_init_OSDSRT(void);
  12. #endif
  13. void ExitSetupPage(BYTE save) //jhuang 2001/5/18 10:30PM
  14. {
  15. #ifdef EASTECH_SETUPMENU
  16. check_show_pscan_wait_time_mode=0;
  17. #endif 
  18.    int play=0;
  19.     //save==1 save and exit setup menu
  20.     //save==-1 NOT save and exit setup menu
  21. //=============================================
  22. //for DVD_SETUP_REENG   //added by JS   //20040728
  23. #ifdef DVD_SETUP_REENG
  24.     printf("setup_tab_ui1   ExitSetupPagen");
  25.     setup_mDir = SETUP_ENTER;
  26.     setup_GetPos(setup_mDir);
  27. #endif
  28. //=============================================
  29.     //In CUSTM page, we set UserSet.parental_ststus=C_UNLOCK, so we resync UserSet.parental_ststus here
  30.     //if (setup_sel[0][1] == (MIN_ITEM_SEL+1) ) {
  31. #ifdef DVD_SETUP_REENG
  32.     UINT16 P, I;
  33.     P=setup_getItemPos(STR_OS_PASSWORD);
  34.     I=P&0xff;
  35.     P=P>>8;
  36.     if (setup_VA[SETUP_VA_PASSWORD] == (MIN_ITEM_SEL+1) ) {
  37.         UserSet.parental_ststus=C_UNLOCK;
  38.     } else {
  39.         UserSet.parental_ststus=C_LOCK;
  40.         setup_VA[SETUP_VA_PASSWORD]=MIN_ITEM_SEL;
  41.     }
  42. #else
  43.     if (SETUP_PASSWORD == (MIN_ITEM_SEL+1) ) {
  44.         UserSet.parental_ststus=C_UNLOCK;
  45.     } else {
  46.         UserSet.parental_ststus=C_LOCK;
  47.         SETUP_PASSWORD=MIN_ITEM_SEL;
  48.     }
  49. #endif  //end of DVD_SETUP_REENG
  50. #ifdef SETUP_PASSWORD_GUI//zhaoyanhua add 2004-1-16 9:58
  51.         //if in PASSWORD GUI state,must set it to NO_GUI_STATE
  52.         passwdGUI_state = NO_GUI_STATE;
  53. #endif  
  54.     safe_srn_forceOFF();
  55.     safe_srn_off();
  56.     osd_disable();
  57. //#ifndef QISHENG_DVD // alan marked, 3-8-9 0:10
  58.     if( (old_play_state==VCD_STATE_NORMAL)&&(play_state==VCD_STATE_PAUSE) )
  59.         play|=0x01;
  60. //#endif
  61. #if 1//def FIX_VIDEO_RATIO_ISSUE//nono 20040518
  62.     if( (NP_P_CFG_for_Video&0x0300) != (UserSet.P_V_CFG&0x0300) )
  63. #else
  64.     if(NP_P_CFG_for_Video != UserSet.P_V_CFG)
  65. #endif
  66.     {
  67.         if(cd_type_loaded==CDDVD)
  68.         {
  69.             set_video_default_offset();//nono 4-9-3 16:07 for ZOOM4 16:9->4:3LB, picture x size error.
  70.             startup_vpp_now();//nono add 2004-7-31 15:59 for ZOOM4 16:9->4:3LB, picture x size error.
  71.             set_video_aspect();
  72.             play|=is_aspect_menu();
  73.         }
  74.     }
  75.     if(save==1) {
  76.         setup_save_exit();//run_save_cmd();
  77.     }
  78.     #ifdef SDRAM_16Mb_Mode
  79.         if (prog_state==2)
  80.         {
  81.             #include "memmap0.h"
  82.             regs0->osd_base_addr=regs0->osdya;
  83.             osd_init();
  84. //nono 20031202
  85.             full_scrn=0;
  86.             ClearOsdMsg(0);
  87.             psprintf(RegionValStr[REGION1], "");
  88.             PrintOsdMsg(STR_OS_SPACE, REGION1, 1, 1);
  89.     
  90.             if ((cd_type_loaded == CDROM) && (pFsJpeg->gifsFuncBtn == 2))
  91.             {
  92.                 prog_state=255;
  93.                 ircmd_post_func(CMD_FUNC | CMD_FUNC_PLAY);
  94.             } else {
  95.                 prog_state=0;
  96.                 ircmd_resume();
  97.             }
  98. //            full_scrn=0;
  99. //            ClearOsdMsg(0);
  100. //            psprintf(RegionValStr[REGION1], "");
  101. //            PrintOsdMsg(STR_OS_SPACE, REGION1, 1, 1);
  102.             return;
  103.         }
  104.     #endif
  105.     //Terry,2002/4/29 01:16AM
  106.     //Note: Don't revise the seq. .
  107.     full_scrn=0;
  108.     //terry,2002/5/10 02:52