📄 initio.c
字号:
break;
case K_DISPLAY_Ups051:
G_DSPHsize = K_DISPLAY_Ups051Width;
G_DSPVsize = K_DISPLAY_Ups051Height;
G_TmbWidth = K_TmbUps051NineWidth;
G_TmbHeight = K_TmbUps051NineHeight;
G_TmbHGap = K_TmbUps051XGap;
G_TmbVGap = K_TmbUps051YGap;
break;
case K_DISPLAY_Epson:
G_DSPHsize = K_DISPLAY_EpsonWidth;
G_DSPVsize = K_DISPLAY_EpsonHeight;
G_TmbWidth = K_TmbEpsonNineWidth;
G_TmbHeight = K_TmbEpsonNineHeight;
G_TmbHGap = K_TmbEpsonXGap;
G_TmbVGap = K_TmbEpsonYGap;
break;
case K_DISPLAY_Casio:
G_DSPHsize = K_DISPLAY_CasioWidth;
G_DSPVsize = K_DISPLAY_CasioHeight;
G_TmbWidth = K_TmbCasioNineWidth;
G_TmbHeight = K_TmbCasioNineHeight;
G_TmbHGap = K_TmbCasioXGap;
G_TmbVGap = K_TmbCasioYGap;
break;
case K_DISPLAY_StnLcd:
G_DSPHsize = K_DISPLAY_StnLcdWidth;
G_DSPVsize = K_DISPLAY_StnLcdHeight;
G_TmbWidth = K_TmbStnLcdNineWidth;
G_TmbHeight = K_TmbStnLcdNineHeight;
G_TmbHGap = K_TmbStnLcdXGap;
G_TmbVGap = K_TmbStnLcdYGap;
break;
case K_DISPLAY_VgaTftLcd:
G_DSPHsize = K_DISPLAY_VgaTftLcdWidth;
G_DSPVsize = K_DISPLAY_VgaTftLcdHeight;
G_TmbWidth = K_TmbVgaTftLcdNineWidth;
G_TmbHeight = K_TmbVgaTftLcdNineHeight;
G_TmbHGap = K_TmbVgaTftLcdXGap;
G_TmbVGap = K_TmbVgaTftLcdYGap;
break;
case K_DISPLAY_Au015An02:
G_DSPHsize = K_DISPLAY_Au015An02Width;
G_DSPVsize = K_DISPLAY_Au015An02Height;
G_TmbWidth = K_TmbAu015NineWidth;
G_TmbHeight = K_TmbAu015NineHeight;
G_TmbHGap = K_TmbAu015XGap;
G_TmbVGap = K_TmbAu015YGap;
break;
case K_DISPLAY_StnLcd160:
G_DSPHsize = K_DISPLAY_StnLcd160Width;
G_DSPVsize = K_DISPLAY_StnLcd160Height;
G_TmbWidth = K_TmbStnLcd160NineWidth;
G_TmbHeight = K_TmbStnLcd160NineHeight;
G_TmbHGap = K_TmbStnLcd160XGap;
G_TmbVGap = K_TmbStnLcd160YGap;
break;
case K_DISPLAY_Svga:
G_DSPHsize = K_DISPLAY_SvgaWidth;
G_DSPVsize = K_DISPLAY_SvgaHeight;
G_TmbWidth = K_TmbSvgaNineWidth;
G_TmbHeight = K_TmbSvgaNineHeight;
G_TmbHGap = K_TmbSvgaXGap;
G_TmbVGap = K_TmbSvgaYGap;
break;
case K_DISPLAY_Au015Bl01: //patch5.2.1@cwh@AU015BL01;2003/08/08
G_DSPHsize = K_DISPLAY_Au015Bl01Width;
G_DSPVsize = K_DISPLAY_Au015Bl01Height;
G_TmbWidth = K_TmbAu015Bl01NineWidth;
G_TmbHeight = K_TmbAu015Bl01NineHeight;
G_TmbHGap = K_TmbAu015Bl01XGap;
G_TmbVGap = K_TmbAu015Bl01YGap;
break;
// patch 5.2.1_28@mattwang@rename CASIO2G to CASIO2G1181 beg
case K_DISPLAY_Casio2G1181: //patch5.2.1@cwh@CASIO2G;2003/09/24
G_DSPHsize = K_DISPLAY_Casio2G1181Width;
G_DSPVsize = K_DISPLAY_Casio2G1181Height;
G_TmbWidth = K_TmbCasio2G1181NineWidth;
G_TmbHeight = K_TmbCasio2G1181NineHeight;
G_TmbHGap = K_TmbCasio2G1181XGap;
G_TmbVGap = K_TmbCasio2G1181YGap;
break;
// patch 5.2.1_28@mattwang@rename CASIO2G to CASIO2G1181 end
// patch 5.2.1_28@mattwang@add CASIO2G1163 LCD pannel beg
case K_DISPLAY_Casio2G1163:
G_DSPHsize = K_DISPLAY_Casio2G1163Width;
G_DSPVsize = K_DISPLAY_Casio2G1163Height;
G_TmbWidth = K_TmbCasio2G1163NineWidth;
G_TmbHeight = K_TmbCasio2G1163NineHeight;
G_TmbHGap = K_TmbCasio2G1163XGap;
G_TmbVGap = K_TmbCasio2G1163YGap;
break;
// patch 5.2.1_28@mattwang@add CASIO2G1163 LCD pannel end
// patch 5.2.1_30@mattwang@add STNLCD128 LCD pannel beg
case K_DISPLAY_StnLcd128:
G_DSPHsize = K_DISPLAY_StnLcd128Width;
G_DSPVsize = K_DISPLAY_StnLcd128Height;
G_TmbWidth = K_TmbStnLcd128NineWidth;
G_TmbHeight = K_TmbStnLcd128NineHeight;
G_TmbHGap = K_TmbStnLcd128XGap;
G_TmbVGap = K_TmbStnLcd128YGap;
break;
// patch 5.2.1_30@mattwang@add STNLCD128 LCD pannel end
// patch 5.2.1_33@mattwang@add AU015AN04 LCD pannel beg
case K_DISPLAY_Au015An04:
G_DSPHsize = K_DISPLAY_Au015An04Width;
G_DSPVsize = K_DISPLAY_Au015An04Height;
G_TmbWidth = K_TmbAu015An04NineWidth;
G_TmbHeight = K_TmbAu015An04NineHeight;
G_TmbHGap = K_TmbAu015An04XGap;
G_TmbVGap = K_TmbAu015An04YGap;
break;
// patch 5.2.1_33@mattwang@add AU015AN04 LCD pannel end
}
}
//-----------------------------------------------------------------------------
//INITIO_GlobalInitialize
//-----------------------------------------------------------------------------
//ada@0401 For file system refreshing when back from mass storage
//patch3.3@cytsai@0417
void INITIO_GlobalInitialize(void) USING_0
/*++
Routine Description:
enable control of global switch
Arguments:
none
Return Value:
none
--*/
{
//L1_Global varaibles initialization
UCHAR i;
//ISP
G_ISP = 0;
G_ISPDRAMAddr = 0;
G_ISPROMAddr = 0;
G_ISPSecAddr = 0;
G_ISPSecCnt = 0;
//device component
//patch5.0@richie@sdram mapping marked
// G_CardType = 0; //OnBoard NandGate
G_AudioModuleType = 0; //embedded/AC'97/MP3
//patch4.2@ada@0527 for display
#ifdef ANANTSC
G_DisplayType = K_DISPLAY_CompTvNtsc;
#endif
#ifdef ANAPAL
G_DisplayType = K_DISPLAY_CompTvPal;
#endif
#ifdef NTSC656
G_DisplayType = K_DISPLAY_Ccir656Ntsc;
#endif
#ifdef PAL656
G_DisplayType = K_DISPLAY_Ccir656Pal;
#endif
#ifdef NTSC8
G_DisplayType = K_DISPLAY_Ccir601Ntsc8;
#endif
#ifdef PAL8
G_DisplayType = K_DISPLAY_Ccir601Pal8;
#endif
#ifdef NTSC16
G_DisplayType = K_DISPLAY_Ccir601Ntsc16;
#endif
#ifdef PAL16
G_DisplayType = K_DISPLAY_Ccir601Pal16;
#endif
#ifdef UPS051
G_DisplayType = K_DISPLAY_Ups051;
#endif
#ifdef EPSON
G_DisplayType = K_DISPLAY_Epson;
#endif
#ifdef CASIO
G_DisplayType = K_DISPLAY_Casio;
#endif
#ifdef STNLCD
G_DisplayType = K_DISPLAY_StnLcd;
#endif
#ifdef VGATFT
G_DisplayType = K_DISPLAY_VgaTftLcd;
#endif
#ifdef AU015AN02
G_DisplayType = K_DISPLAY_Au015An02;
#endif
#ifdef STNLCD160
G_DisplayType = K_DISPLAY_StnLcd160;
#endif
#ifdef SVGAOUT
G_DisplayType = K_DISPLAY_Svga;
#endif
#ifdef AU015BL01 //patch5.2.1@cwh@AU015BL01;2003/08/08
G_DisplayType = K_DISPLAY_Au015Bl01;
#endif
#ifdef TOPPOLY //patch5.2.1@cwh@Toppoly TC015TREB1;2003/08/27
G_DisplayType = K_DISPLAY_Tc015Treb1;
#endif
// patch 5.2.1_28@mattwang@rename CASIO2G to CASIO2G1181 beg
#ifdef CASIO2G1181 //patch5.2.1@cwh@CASIO2G; 2003/09/24
G_DisplayType = K_DISPLAY_Casio2G1181;
#endif
// patch 5.2.1_28@mattwang@rename CASIO2G to CASIO2G1181 end
// patch 5.2.1_28@mattwang@add CASIO2G1163 LCD pannel beg
#ifdef CASIO2G1163
G_DisplayType = K_DISPLAY_Casio2G1163;
#endif
// patch 5.2.1_28@mattwang@add CASIO2G1163 LCD pannel end
// patch 5.2.1_30@mattwang@add STNLCD128 LCD pannel beg
#ifdef STNLCD128
G_DisplayType = K_DISPLAY_StnLcd128;
#endif
// patch 5.2.1_30@mattwang@add STNLCD128 LCD pannel end
// patch 5.2.1_33@mattwang@add AU015AN04 LCD pannel beg
#ifdef AU015AN04
G_DisplayType = K_DISPLAY_Au015An04;
#endif
// patch 5.2.1_33@mattwang@add AU015AN04 LCD pannel end
// K_DISPLAY_CompTvNtsc 0x00
// K_DISPLAY_CompTvPal 0x01
// K_DISPLAY_Ccir656Ntsc 0x02
// K_DISPLAY_Ccir656Pal 0x03
// K_DISPLAY_Ccir601Ntsc8 0x04
// K_DISPLAY_Ccir601Pal8 0x05
// K_DISPLAY_Ccir601Ntsc16 0x06
// K_DISPLAY_Ccir601Pal16 0x07
// K_DISPLAY_Ups051 0x08
// K_DISPLAY_Epson 0x09
// K_DISPLAY_Casio 0x0a
// K_DISPLAY_StnLcd 0x0b
// K_DISPLAY_VgaTftLcd 0x0c
// K_DISPLAY_Au015An02 0x0d
// K_DISPLAY_StnLcd160 0x0e
// K_DISPLAY_Svga 0x0f
// K_DISPLAY_Au015Bl01 0x10
// K_DISPLAY_Tc015Treb1 0x11
// K_DISPLAY_Casio2G1181 0x12
// K_DISPLAY_Casio2G1163 0x13
// K_DISPLAY_StnLcd128 0x14
// K_DISPLAY_Au015An04 0x15
//herb for TVoutput debug @03/04/18 start
avi_play = 0;
SmallSizeAvi = 0;
//herb for TVoutput debug @03/04/18 end
//herb for Playback bug @03/04/21 start
reset_display = 0;
//herb for Playback bug @03/04/21 end
//mode setting
G_CamMode = K_MODE_IDLE; //default is in idle mode
//G_QtableIndex = K_Q85; //index of Q table //ada@0225
G_Image_QTableIndex = K_Qxx;
G_DRAMint = 0; //DRAM interrupt enable/disable
//user interface
G_ObjectID = 0; //object ID
G_ObjectType= 0; //object type
//patch4.2@ada@0527 for key scan
G_KeyState = K_UI_BUTTON_NULL; //state of key pressed
//component setting
G_FrameRate = K_SENSOR_FrameRate; //
G_Hsize = K_SENSOR_CaptureWidth; //width of capture mode
G_Vsize = K_SENSOR_CaptureHeight; //height of capture mode
G_MHSize =1024; //K_SENSOR_MonitorWidth; //width of monitor mode//wendy@2004/9/3
G_MVSize = 720;//K_SENSOR_MonitorHeight; //height of monitor mode//wendy@2004/9/3
//G_DSPHsize = K_DISPLAY_PlaybackWidth; //display width of playback
//G_DSPVsize = K_DISPLAY_PlaybackHeight; //display height of playback
G_3ACount = 0; //AE/AWB/AF count
G_3AFlag = 0; //AE/AWB/AF enable/disable
G_PVZFactor = 0; //zoom factor of preview
G_PBZFactor = 10; //zoom factor of playback
G_PBID = 0; //object ID of playback
G_GOSDID = 0; //font ID of graphics font
//yichang@0503 for different display device
INITIO_DisplayInitialize();
//date/time //ada@0220
//Joe@2003.3.25 9:15 modify begin
//G_DateStamp = 0; //date stamp enable/disable
G_DateStamp = 0;
//Joe@2003.3.25 9:15 modify end
//Joe@2003.3.18 17:48 modify begin
//G_DATEINFO.Year = 1; //initial date/time
G_DATEINFO.Year = 2; //initial date/time
//Joe@2003.3.18 17:48 modify end
G_DATEINFO.Month = 1;
G_DATEINFO.Day = 1;
//Joe@2003.3.18 17:48 modify begin
//G_DATEINFO.Hour = 0;
G_DATEINFO.Hour = 8;
//Joe@2003.3.18 17:48 modify end
G_DATEINFO.Minute = 0;
G_DATEINFO.Second = 0;
for (i = 0; i < 20; i++) //ada@0220
{
Text_NowDateTime[i] = Text_ResetDateTime[i];
}
L2_RTCTransferText(&G_DATEINFO,Text_NowDateTime); //Initialize date and time
//USB state
G_TurnOnBulkInEn = 0;
G_TurnOnBulkOutEn = 0;
G_TurnOnIntInEn = 0;
G_TurnOnBulkIn2En = 0;
G_TurnOnBulkOut2En = 0;
G_TurnOnIntIn2En = 0;
G_BulkSize = 0;
G_BulkOutSize = 0;
G_BulkDRAMAddr = 0;
G_LastBulk = 0;
//testing
G_L1_ModuleID = 0;
G_L2_ModuleID = 0;
G_L1_FuncID = 0;
G_L2_FuncID = 0;
//status
G_ucState = 0;
G_ucState2 = 0; //cch@10/15
G_ucState3 = 0; //cch@10/15
G_ulErrorCode = 0;
//Exif
G_ucThumbnailWidth = K_THUMB_Width;
G_ucThumbnailHeight = K_THUMB_Height;
//cytsai
G_bRequestLock = 0;
G_bRequestLog = 0;
G_wIndexLock = 0;
G_wValueLock = 0;
//yichang@0430 for UI and playback
G_IsKeyRelease = 0;
G_UIStatus = K_UISTATUS_ROOT;
G_UIStatusH= K_UISTATUS_ROOT;
G_UIAction = K_UI_ACTION_DONOTHING;
G_UI_USBConnect = K_UI_USB_DISCONNECT;
//G_UI_USBConnect = K_UI_USB_CONNECT;
G_Timer0StopFlag = 0;
G_TIMER = 0;
//patch4.2@yichang@0513 for continue snapping
//patch5.0@richie@sdram mapping begin
G_RawImageBufAddr = K_SDRAM_ImageCaptureBufAddr;
//patch5.0@richie@sdram mapping end
//Initial options
G_OLD_PICTURE_WB_Flag=0;
G_CameraOptions.function = K_UIOPTION_FUNCTION_SINGLE;
G_CameraOptions.Manual= K_UIOPTION_MANUAL_AUTO;
G_CameraOptions.ImageSize = K_UIOPTION_IMGSIZE_HIGH;
G_CameraOptions.ImageQty = K_UIOPTION_IMGQTY_STAND;
G_CameraOptions.TVDispType = K_UIOPTION_TVTYPE_NTSC;
G_CameraOptions.DPOF = 0;
//patch4.2@yichang@0517 for rotation function
G_CameraOptions.RotationAngle = K_UIOPTION_ROTATION_0;
G_CameraOptions.Storage = K_UIOPTION_STORAGE_MSDC;
//patch4.2@yichang@0517 for updating auto power time
G_autoTime.min = 1;
G_autoTime.sec = 0;
G_CameraOptions.Timeout=1;
// G_CameraOptions.Flash=0;
G_CameraOptions.Timeout=0;
G_CameraOptions.Record=0;
// G_CameraOptions.AWB=0;
G_CameraOptions.Selft=1;
G_CameraOptions.EV=2;
G_CameraOptions.Buzzer=1;//davis@2004/9/6
//patch3.2@ada@0401 For file system refreshing when back from mass storage
//For system refreshing when back from mass storage
G_MassStorage_Mode = 0;
//version4.0@ada@0513 for Card Write Protect
G_Card_WriteProtect = 0;
//version4.0 richie@ps0503
G_usPostJpegWidth = 320;
G_usPostJpegHeight = 240;
//version4.0@ada@0513 for Play Back
G_Playback_Mode = K_PLAYBACK_MODE_ONE;
G_CameraOptions.PlayMode=0;
G_CameraOptions.Thumb=0;
//patch4.2@ada@0527 for key scan
G_KeyScan = 0;
G_Timer0Stop = 1;
G_MainLoopCount = 0;
//patch4.5@andrew@IR3Y48A_A
#ifdef SHARP_LZ24BP
K_AEAWB_Flag=2; //disable AWB
#else
K_AEAWB_Flag=0;
#endif
//patch4.3@andrw@0606
G_AE_com_index=2;
G_MANUAL_WB_Flag=K_WB_AUTO;
G_MANUAL_SHARP_Flag=K_EDGE_SHARP;//wendy@2004/9/8
//Joe@2003.2.25 14:49 add begin
G_ExtCardStatus = 0;
//patch4.3@richie@zo0606
G_ucZoomFactor =10;
//patch5.0@richie@sdram mapping begin
//patch4.5@richie@smooth zoom begin
G_usZoomX = 100;
//patch4.5@richie@smooth zoom end
//patch5.0@richie@sdram mapping end
G_usZoomOSDTimer = 0; //hx@2003.5.26 updata
//patch4.3@andrew@0610
G_Iris=1;
//patch4.4@andrew@avi_framerate
VIDEO=0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -