⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uiflow.c

📁 台湾凌阳方案300万数码相机源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
/********************************************************************************
  Copyright (c) 2002 Sunplus Technology Co., Ltd.
  Module Name:  uiflow.c
  Function   :  The UI flow related functions
  Environment:  Keil C51 Compiler
  Creation   :  2002/04/18 yichang
***********************************************************************************/

//version4.0@yichang@0513 for new UI of SPCA533 turnkey

#include "general.h"
#include "main.h"
#include "dosusr.h"
#include "dosvar.h"
//#include "cardvar.h"
#include "cardlink.h"
#include "initio.h"
#include "storage.h"
#include "dpof.h"
#include "quantdef.h"
#include "img533.h"
#include "exiffunc.h"
#include "lcdtv.h"
#include "uiflow.h"
#include "playback.h"
#include "audiorw.h"
#include "sidcinit.h"

//version4.0@ada@0513
#include "sdramhw.h"

//version4.0@ada@0513 for Card Write Protect
#include "cardusr.h"

//patch4.4@yichang@0624 for OSD, begin
#include "ui.h"
//patch4.4@yichang@0624 for OSD, end
//patch4.4@yichang@0624 for WB/SHARP UI, begin
#include "l1_3a.h"
//patch4.4@yichang@0624 for WB/SHARP UI, end
//patch4.4@richie@cisp test
//testtest
#include "initio.h"

//patch4.5@richie@mlun
#include "usbmsdc2.h"

//patch4.4@ada@MP3 begin
#if (MP3_OPTION)
#include "mp3.h"
#include "ui.h"
#endif
//patch4.4@ada@MP3 end

#include "timer.h"

//patch4.4@ada@DPOF skip AVI & WAV begin
#include "dosusr.h"
//patch4.4@ada@DPOF skip AVI & WAV end
#include "string.h"// Davis:patch3.11 add
extern data UCHAR G_ucISPCheck2;
extern xdata UCHAR isFirstRun;
void L1_InitPreviewForUiflow(UCHAR OnOff) ;
void L1_InitPreview1(UCHAR OnOff) ;

UCHAR CARD_ISP(void);

extern  int Tidx;
extern   unsigned long Ylevel,Yreff,Ylayer,Kback;//patch4.4@jhyu@release_getavglum

 code unsigned char *TOO_DARK[]={
 				"Too Dark",
 				"Trop sombre",
 				"zu dunkel",
 				"Troppo scuro",
 				"Demasiado oscuro",
 				"\x01\x8c\x01\x8d\x01\xd6\x01\xd7\x01\xd8\x01\xd9\x01\xda\x01\xdb\x01\xdc\x01\xdd\x01\xde\x01\xdf",//J
 				"\x01\x4a\x01\x4b\x01\xd8\x01\xd9\x01\x6a\x01\x6b\x01\xda\x01\xdb",
 				"\x01\x4a\x01\x4b\x92\x93\x01\x6a\x01\x6b\x01\xda\x01\xdb"
 			};
//Joe@2003.2.25 10:12 add begin
#include "JoeToEvb.h"	//joe add for function from turnkey

extern xdata UCHAR AEtype;//patch4.5@jhyu@50HzTable
extern unsigned char G_OLD_PICTURE_WB_Flag;
extern void ChangeTable(int index);//patch4.4@jhyu@50/60HzTable
//Joe@2003.2.25 10:12 add end
extern void Playback_DownInitial(void);
extern void Playback_UpInitial(void);
extern void WaitOsd(void);
extern void SetManualWB(USHORT wb_index);
void UI_SetMenuPalette_1(void);
//wendy@2004/10/20
UCHAR L2_SetColorPalette_1(UCHAR index, UCHAR r, UCHAR g, UCHAR b);
UCHAR L2_SetFOSDIndex_1(UCHAR y, UCHAR x, USHORT value);
UCHAR L2_SetFOSDAttr_1(UCHAR y, UCHAR x, USHORT value);
//wendy@2004/10/20

extern void L2_TurnOnOffDisplayFrist(void);
void UI_DestroyMenu();
sbit	VIDEO_DET = P3^5;


//=============================================================================
//Symbol
//=============================================================================
//patch4.2@yichang@0524 for EV UI
extern UCHAR G_AE_com_index;

//version4.3@richie@zo
extern	xdata	UCHAR	G_ucZoomFactor;

//patch5.0@richie@sdram mapping begin
//patch4.5@richie@smooth zoom
extern	xdata	USHORT	G_usZoomX;
//patch5.0@richie@sdram mapping end

xdata USHORT G_usZoomOSDTimer;
extern	xdata ULONG G_AutoTimeInSec;
extern code unsigned char *LOW_BATTERY[];

//-----------------------------------------------------------------------------
//Constant
//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------
//Variable
//-----------------------------------------------------------------------------



xdata UCHAR G_Timer0StopFlag;

xdata UCHAR  G_UI_USBConnect;

xdata UCHAR  G_IsKeyRelease;
xdata USHORT G_UIStatus;
xdata USHORT G_UIStatusH;//wendy
xdata USHORT CardNumber;
xdata UCHAR  G_UIAction;
xdata USHORT G_TIMER;

//xdata USHORT L_KFOCUS;
//xdata USHORT L_KFOCUS1;

xdata UCHAR G_RTCBitOffset;
xdata UCHAR G_OptionYesNo;

xdata CameraOption G_CameraOptions;
xdata dateTime G_defaultTime;
xdata AutoTime G_autoTime;

//patch4.4@yichang@0624 for OSD, begin
xdata UCHAR G_FlashStatus;
xdata UCHAR G_BatteryStatus;
xdata UCHAR G_ExtCardStatus;
//patch4.4@yichang@0624 for OSD, end

//patch4.4@ada@MP3 begin
#if (MP3_OPTION)
#define K_MP3_MAX_VOLUME        ((UCHAR)10)
xdata USHORT G_MP3SelectItem;
xdata UCHAR  G_NoMp3Song;
xdata USHORT UI_Mp3NowFileIndex,UI_Mp3NewFileIndex;
xdata UCHAR  G_MP3_Mode;
xdata UCHAR  G_Mp3KeyState;
#endif
//patch4.4@ada@MP3 end

//herb for TVoutput debug @03/04/18 start
extern xdata UCHAR SmallSizeAvi;
//herb for TVoutput debug @03/04/18 end

//patch4.3@yichang@0611 for version B/C chip co-exist
sfr     MemStretch = 0x8E;

//Maximum Menu String Length
//patch5.0@richie@avi size begin 14->11
#define UI_MENU_MAXLEN_PRE                   ((UCHAR)22)
//patch5.0@richie@avi size end
#define UI_MENU_MAXLEN_IMGSIZE            ((UCHAR)22)
#define UI_MENU_MAXLEN_TIMEOUT              ((UCHAR)22)//11)
#define UI_MENU_MAXLEN_SELF                ((UCHAR)22)//11)
#define UI_MENU_MAXLEN_AETYPE             ((UCHAR)22)
#define UI_MENU_MAXLEN_LANGUAGE           ((UCHAR)22)
#define UI_MENU_MAXLEN_FLASH		 ((UCHAR)22)
#define UI_MENU_MAXLEN_EXPOSURE		 ((UCHAR)22)
#define UI_MENU_MAXLEN_AWB		 ((UCHAR)22)
#define UI_MENU_MAXLEN_TVOUT		 ((UCHAR)22)
//Joe@2003.3.21 12:51 add end
#define UI_MENU_MAXLEN_PLAY		    ((UCHAR)22)
#define UI_MENU_MAXLEN_THUMB              ((UCHAR)22)
#define UI_MENU_MAXLEN_ERASEONE              ((UCHAR)22)
#define UI_MENU_MAXLEN_ERASEALL             ((UCHAR)0x22)
#define UI_MENU_MAXLEN_FORMAT             ((UCHAR)0x22)//hx@2003.5.28 add

#define UI_MENU_MAXLEN_VIDEO		    ((UCHAR)22)
//#define UI_MENU_MAXLEN_VIDEO_SIZE              ((UCHAR)22)
#define UI_MENU_MAXLEN_VIDEO_TIME              ((UCHAR)22)
#define UI_MENU_MAXLEN_AUDIO		    ((UCHAR)22)
#define UI_MENU_MAXLEN_AUDIO_PLAY              ((UCHAR)22)
//#define UI_MENU_MAXLEN_WB                 ((UCHAR)14)
//#define UI_MENU_MAXLEN_SHARP              ((UCHAR)14)
//patch4.4@yichang@0624 for OSD, end

//Joe@2003.3.22 18:54 add begin
//Davis_peng@2004/8/18 modify begin
//MAXLEN all be 22
#define UI_MENU_MAXLEN_FUNCTION_C           ((UCHAR)22)
#define UI_MENU_MAXLEN_MANUAL_C             ((UCHAR)22)
#define UI_MENU_MAXLEN_IMGSIZE_C            ((UCHAR)22)
#define UI_MENU_MAXLEN_IMGQTY_C             ((UCHAR)22)
#define UI_MENU_MAXLEN_POWER_C              ((UCHAR)22)
#define UI_MENU_MAXLEN_RTC_C                ((UCHAR)22)
#define UI_MENU_MAXLEN_TVOUT_C              ((UCHAR)22)
#define UI_MENU_MAXLEN_AETYPE_C             ((UCHAR)22)
#define UI_MENU_MAXLEN_LANGUAGE_C           ((UCHAR)22)
#define UI_MENU_MAXLEN_ZOOM_C               ((UCHAR)22)
#define UI_MENU_MAXLEN_EXIT_C               ((UCHAR)22)
#define UI_MENU_MAXLEN_ERASE_C              ((UCHAR)22)
#define UI_MENU_MAXLEN_ERASE2_C             ((UCHAR)22)//hx@2003.5.28 add
#define UI_MENU_MAXLEN_DPOF_C               ((UCHAR)22)
#define UI_MENU_MAXLEN_ROTATION_C           ((UCHAR)22)
#define UI_MENU_MAXLEN_STORAGE_C            ((UCHAR)22)
#define UI_MENU_MAXLEN_EV_C                 ((UCHAR)22)
#define UI_MENU_MAXLEN_ERASE1_C             ((UCHAR)22)
#define UI_MENU_MAXLEN_WB_C                 ((UCHAR)22)
#define UI_MENU_MAXLEN_SHARP_C              ((UCHAR)22)
//Davis_peng@2004/8/18 modify end
//Joe@2003.3.21 18:54 add end

//patch4.4@yichang@0624 for continue-shotting, begin
#define K_CONTINUE_SNAP_NUM               ((UCHAR)0x05)
//patch4.4@yichang@0624 for continue-shotting, end
//English
code PUCHAR CAPMenu[] =
{
"Flash",
"Self-Timer",
"Size",
"Timeout",
"Exposure",
"White balance",
"Tv output",
"Language",
"Frequency",
"Beep"	//Davis@2004/9/6
};
code PUCHAR ExposureMenu[] =
{
"+2",//Davis@2004/8/26
"+1",
"0",
"-1",
"-2",
};

code PUCHAR SELFMenu[] =
{
"On(10S)",
"Off",
};

code PUCHAR TIMEOUTMenu[] =
{
"Off",
"On(60S)",
};


code PUCHAR AETypeMenu[] =
{
"50Hz",
"60Hz",
};

code PUCHAR FLASHMenu[] =
{
"On",
"Off",
"Auto",
};
code PUCHAR WHITEMenu[] =
{
"Auto",
"Daylight",
"Cloudy",
"Tungsten",
"Fluorescent",
};

code PUCHAR SIZEMenu[] =
{
"2048X1536",
"1600X1200",
"800X600",
};

code PUCHAR TVMenu[] =
{
"NTSC",
"PAL",
};

code PUCHAR LanguageMenu[] =
{
"English",
"French",
"Italian",
"German",
"Spanish",
"Japanese",
"Chinese simplify",
"Chinese traditional",
};

code PUCHAR PLAYMenu[] =
{
"Delete last",
"Delete all",
"Format",
"Thumbnail",
};

code PUCHAR EraseOneMenu[] =
{
"Yes",
"No",
};

code PUCHAR EraseAllMenu[] =
{
"Yes",
"No",
};

code PUCHAR FormatMenu[] =
{
"Yes",
"No",
};

code PUCHAR ThumbnailMenu[] =
{
"SINGLE",
"3x3",
};

code PUCHAR VideoMenu[] =
{
"Date/Time",
};
code PUCHAR VideoTimeMenu[] =
{
"set",
};
code PUCHAR AudioMenu[] =
{
"Record",
};

code PUCHAR AudioRecordMenu[] =
{
"Yes",
"No",
};
code UCHAR PCCamera[] =
{
"PC CAMERA",
};
code PUCHAR BUZMenu[]={//Davis@2004/9/6
						"Off",
						"On"
			};

//english end
//french begin
code PUCHAR CAPMenuF[] =
{
"Flash",
"Retardat.Auto",
"Taille Image",
"Arret Auto",
"Compens.Expo.",
"Bal.De Balancs",
"Tv",
"Langue",
"Frequency",
"Beep"
};
code PUCHAR ExposureMenuF[] =

{
"+2",//Davis@2004/8/26
"+1",
"0",
"-1",
"-2",
}

;

code PUCHAR SELFMenuF[] =
{
"Marche(10S)",
"Arret",
};

code PUCHAR TIMEOUTMenuF[] =
{
"Arret",
"Marche(60S)",
};


code PUCHAR AETypeMenuF[] =
{
"50Hz",
"60Hz",
};

code PUCHAR FLASHMenuF[] =
{
"Marche",
"Arret",
"Auto",
};
code PUCHAR WHITEMenuF[] =
{
"Auto",
"Exterieur",
"Ombre",
"Lampe",
"Fluorescent",
};

code PUCHAR SIZEMenuF[] =
{
"2048X1536",
"1600X1200",
"800X600",
};

code PUCHAR TVMenuF[] =
{
"NTSC",
"PAL",
};

code PUCHAR LanguageMenuF[] =
{
"Anglais",
"Francais",
"Italien",
"Allenmand",
"Espagnol",
"Japanais",
"Chinois Simplifiez",
"Chinois Traditionnel",
};

code PUCHAR PLAYMenuF[] =
{
"Cette Photo",//Davis:patch3.1 modify(string is too long)
"Effacer Tout",
"Format",
"Thumbnail",
};

code PUCHAR EraseOneMenuF[] =
{
"Oui",
"Non",
};

code PUCHAR EraseAllMenuF[] =
{
"Oui",
"Non",
};

code PUCHAR FormatMenuF[] =
{
"Oui",
"Non",
};

code PUCHAR ThumbnailMenuF[] =
{
"Simple",
"3x3",
};

code PUCHAR VideoMenuF[] =
{
"Date Heure",
};
code PUCHAR VideoTimeMenuF[] =
{
"set",
};
code PUCHAR AudioMenuF[] =

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -