base.h

来自「好记星的控件,包括button,list,对文件操作」· C头文件 代码 · 共 454 行 · 第 1/2 页

H
454
字号
#define MVK_CAPTITAL    0x0B    // Caps Lock大小写转换键
#define MVK_CAPS        MVK_CAPTITAL
#define MVK_SHIFT       0x0C    // SHIFT功能键

#define MVK_ENTER       0x0D    // 回车键
#define MVK_RETURN      0x0D    // 回车键

#define MVK_UP          0x11    // Up向上光标键
#define MVK_DOWN        0x12    // Down向下光标键
#define MVK_LEFT        0x13    // Left向左光标键
#define MVK_RIGHT       0x14    // Right向右光标键
#define MVK_PGUP        0x15    // PageUp向上翻页键
#define MVK_PGDN        0x16    // PageDown向下翻页键
#define MVK_PAGEUP      MVK_PGUP
#define MVK_PAGEDOWN    MVK_PGDN

#define MVK_ESCAPE      0x17    // Esc退出键
#define MVK_ESC         0x17    // 返回(退出)之功能键

#define MVK_SPACE       0x20    // Space空格键
    //--------------------------------------------
#define MVK_POWERDOWN   0x81           // GuanJi        //
#define MVK_POWEROFF    MVK_POWERDOWN  // Turn OFF        //One key
#define MVK_POWERUP     0x82           // KanJi         //
#define MVK_POWERON     MVK_POWERUP    // Turn On        //

#define MVK_FUNC00        0x83
#define MVK_FUNC01        0x84
//#define MVK_FUNC02        0x85
//#define MVK_FUNC03        0x86

#define MVK_HELP        0x87    // Help             \ ONE KEY
//#define MVK_TIMERPT     0x88    // TIME REPROT      /

#define MVK_FIND        0x89    // Find
#define MVK_VOICE       0x8A    // 发音键
#define MVK_IME         0x8B    // 输入法切换键
#define MVK_FOLDER      0x8C    // 目录
#define MVK_HOME		MVK_FOLDER       

#define MVK_NULL         0x94

#ifdef _WIN32
    #define MVK_PCF1        0x94    // PC功能键1
    #define MVK_PCF2        0x95    // PC功能键2
    #define MVK_SET         MVK_PCF1
    #define MVK_GET         MVK_PCF2
#endif

#define MVK_NJXD        0x96		// 牛津现代
#define MVK_NJJJ        (MVK_NJXD+1)		// 牛津进阶
#define MVK_NJDY        (MVK_NJXD+2)		// 牛津短语
#define MVK_NJXY        (MVK_NJXD+3)		// 牛津习语
#define MVK_NJTY        (MVK_NJXD+4)		// 牛津同义
#define MVK_XHCD        (MVK_NJXD+5)		// 新华词典
#define MVK_GHY         (MVK_NJXD+6)		// 古汉语
#define MVK_DGY         (MVK_NJXD+7)		// 多国语

//#define MVK_KEYPAD_KEY1	(MVK_NJXD+8)	//小键盘的键1
//#define MVK_KEYPAD_KEY2	(MVK_NJXD+9)	//小键盘的键2
//#define MVK_KEYPAD_KEYUP	(MVK_NJXD+10)	//小键盘的向上键
//#define MVK_KEYPAD_KEYOK	(MVK_NJXD+11)	//小键盘的确认键
//#define MVK_KEYPAD_KEYDWN	(MVK_NJXD+12)	//小键盘的向下键

#define MVK_XYH         (MVK_NJXD+13)		// 新英汉
#define MVK_HYCD       (MVK_NJXD+14)		// 汉英词典


struct tagAPGUI_STRUCT_MODEL;
#define GUI_RESERVE_MARK        0x55AA
#define GUI_MP3AP_MARK           0xAA55		//王旻:MP3 AP的特殊标记		
typedef INT   (*FPGUIHANDLEEVENT)( struct tagAPGUI_STRUCT_MODEL *pGui,
                                   UINT uEvent, UINT uParam );  // 事件处理函数
// AP的GUI结构模板定义:
typedef struct tagAPGUI_STRUCT_MODEL
{
    UINT                uReserveMark;       /* AP或控件结构的识别标志,暂时固定为0x55AA */
    INT16               nX;                 /* 控件占用屏幕区域的绝对坐标 */
    INT16               nY;
    UINT16              uWidth;
    UINT16              uHeight;
    FPGUIHANDLEEVENT    fpHandleFunc;       /* AP或控件事件处理函数入口 */
    INT                 nCtrlParam1;        /* 控件参数1(用途由具体的控件决定) */
    INT                 nCtrlParam2;        /* 控件参数2(用途由具体的控件决定) */
    INT                 nCtrlParam3;        /* 控件参数3(用途由具体的控件决定) */
    INT                 nCtrlParam4;        /* 控件参数4(用途由具体的控件决定) */
} APGUI_STRUCT_MODEL;           /* GUI控制块结构 */


// AP的GUI结构定义:
typedef struct tagAPGUI_STRUCT
{
    UINT	            uReserveMark;		/* AP或控件结构的识别标志,暂时固定为0x55AA */
    INT16  	            nX;					/* 控件占用屏幕区域的绝对坐标 */
    INT16  	            nY;
    UINT16	            uWidth;
    UINT16	            uHeight;
    FPGUIHANDLEEVENT    fpHandleFunc; 		/* AP事件处理函数入口 */
    UINT                uCurrentIme;        /* 对应当前AP的输入法ID号 */
    INT                 nCtrlParam1;        /* 控件参数1(用途由具体的控件决定) */
    INT                 nCtrlParam2;        /* 控件参数2(用途由具体的控件决定) */
    INT                 nCtrlParam3;        /* 控件参数3(用途由具体的控件决定) */
} APGUI_STRUCT;                 /* GUI控制块结构 */


//-------------------
// Dennyhan added this resource for error
#ifndef	IDB_FILEMNG_BMP03
#define	IDB_FILEMNG_BMP03	0
#endif
//-------------------

#define		SYSUPD_VAR1				0x0000000
#define		SYSUPD_VAR2				0x0000004
#define     SYSUPD_VAR3             0x0000008
#define     SYSUPD_VAR4             0x000000C
#define		SYSUPD_VAR1_FG			0x5a5aa5a5
#define		SYSUPD_VAR2_FG			0x0000a5a5
#define		SYSUPD_VAR3_FG			0x5a5a0000

// 
#define		SYSUPD_USB_VAR1			0x0000010
#define		SYSUPD_USB_VAR2			0x0000014
#define		SYSUPD_USB_FG1			0x5a5aa5a5
#define		SYSUPD_USB_FG2			0x5a5aa5a5
#ifndef _WIN32
	#define		ChckUSBFg()				(  ((*(UINT*)SYSUPD_USB_VAR1)==SYSUPD_USB_FG1)  \
										&& ((*(UINT*)SYSUPD_USB_VAR2)==SYSUPD_USB_FG2) )
	#define		ClrUSBFg()				{ (*(UINT*)SYSUPD_USB_VAR1)=0;\
(*(UINT*)SYSUPD_USB_VAR2)=0;}
	#define		SetUSBFg()				{ (*(UINT*)SYSUPD_USB_VAR1)=SYSUPD_USB_FG1;\
(*(UINT*)SYSUPD_USB_VAR2)=SYSUPD_USB_FG2;}
#else
	#define		ChckUSBFg()				(0)
	#define		ClrUSBFg()				
	#define		SetUSBFg()				
#endif

// for Normal Power On Flag
#define     SYSUPD_NORMAL_VAR1      0x0000018
#define     SYSUPD_NORMAL_VAR2      0x0000018   //0x0001c
#define		SYSUPD_NORMAL_FG1		0x5a5aa5a5
#define		SYSUPD_NORMAL_FG2		0x5a5aa5a5
#ifndef _WIN32
	#define		ChckNormalFg()		(  ((*(UINT*)SYSUPD_NORMAL_VAR1)==SYSUPD_NORMAL_FG1)  \
										&& ((*(UINT*)SYSUPD_NORMAL_VAR2)==SYSUPD_NORMAL_FG2) )
	#define		ClrNormalFg()				{ (*(UINT*)SYSUPD_NORMAL_VAR1)=0;\
(*(UINT*)SYSUPD_NORMAL_VAR2)=0;}
	#define		SetNormalFg()				{ (*(UINT*)SYSUPD_NORMAL_VAR1)=SYSUPD_NORMAL_FG1;\
(*(UINT*)SYSUPD_NORMAL_VAR2)=SYSUPD_NORMAL_FG2;}
#else
	#define		ChckNormalFg()				(1)
	#define		ClrNormalFg()				
	#define		SetNormalFg()				
#endif

#define     SYS_ALARM_VAR1          0x000001C
#define		SYS_ALARM_FG1	        0x5a5aa5a5

#ifndef _WIN32
	#define		CheckAlarmFg()		((*(UINT*)SYS_ALARM_VAR1)==SYS_ALARM_FG1)
	#define		ClrAlarmFg()		 (*(UINT*)SYS_ALARM_VAR1)= 0
	#define		SetAlarmFg()		 (*(UINT*)SYS_ALARM_VAR1) = SYS_ALARM_FG1
#else
	#define		CheckAlarmFg()				(0)
	#define		ClrAlarmFg()				
	#define		SetAlarmFg()				
#endif

#define     SYS_PWR_WARM_VAR1       0x0000020
#define		SYS_PWR_WARM_FG1	    0x5a5aa5a5

#ifndef _WIN32
	#define		CheckSysPwrwarnFg()	     ((*(UINT*)SYS_PWR_WARM_VAR1)==SYS_PWR_WARM_FG1)
	#define		ClrSysPwrwarnFg()		 (*(UINT*)SYS_PWR_WARM_VAR1)= 0
	#define		SetSysPwrwarnFg()		 (*(UINT*)SYS_PWR_WARM_VAR1) = SYS_PWR_WARM_FG1
#else
	#define		CheckSysPwrwarnFg()	 (1)
	#define		ClrSysPwrwarnFg()				
	#define		SetSysPwrwarnFg()				
#endif


// 内存区域定义
#define FIRST_INT_MEMROY			0x00000000      // Internal ram:16K
#define SECOND_INT_MEMROY			0x00300000      // VRAM:40K
#define FIRST_EXT_MEMROY			0x02000000      //  external ram: 128K
#define FIRST_EXT_MEMROY_END		0x201FFFF		//  external ram Ending

#define MEMADDR_DUMMY_LCDBUFF		0x3C0000	//(FIRST_EXT_MEMROY+0x00000)   // LCD虚屏缓冲区(40K)
#define MEMADDR_DUMMY_LCDBUFF_END   0x3C9FFF
//#define	MEMADDR_DUMMY_LCDB_SIZE		((((LCD_SCREEN_WIDTH*LCD_SCREEN_HEIGHT*1/8)+3)/4)*4)
#define	MEM_ALLOC_OFFSET			( 0x0006800 )//+ MEMADDR_DUMMY_LCDB_SIZE )		//

#define MEMADDR_FREEALLOC			(FIRST_EXT_MEMROY+MEM_ALLOC_OFFSET)  // 自由分配内存区(52K)
#define MEMADDR_FREEALLOC_END		(FIRST_EXT_MEMROY_END) 
#define MEMADDR_FREEALLOC_SIZE		(MEMADDR_FREEALLOC_END-MEMADDR_FREEALLOC+1)



#if 0
#define MEMADDR_INTERIORRAM			0x30000000  // 内部RAM起始地址(->0x3000FFFF: 64K)
#define MEMADDR_INTERIORRAM_SIZE    0x10000 // 内部RAM大小(64K)
#define MEMADDR_INTERIORRAM_END		(MEMADDR_INTERIORRAM+MEMADDR_INTERIORRAM_SIZE)  // 内部RAM结束地址
#define MEMADDR_OPTIMIZE_COD		(MEMADDR_INTERIORRAM+0x0000)    // 优化代码内存区(2K)
#define MEMADDR_VOICE_RELATIVE		(MEMADDR_INTERIORRAM+0x0800)    // 语音编解码相关内存(35K)
#define MEMADDR_RW_GLOBAL			(MEMADDR_INTERIORRAM+0x9400)    // 有初值全局变量区(0.5K)
#define MEMADDR_ZI_PRIORITY			(MEMADDR_INTERIORRAM+0x9600)    // 重要全局变量区(26.5K)

#define MEMADDR_EXTERNALRAM			0x40000000  // 内部RAM起始地址(->0x4001FFFF: 128K)
#define MEMADDR_EXTERNALRAM_SIZE    0x20000 // 内部RAM大小(128K)
#define MEMADDR_EXTERNALRAM_END		(MEMADDR_EXTERNALRAM+MEMADDR_EXTERNALRAM_SIZE)  // 外部RAM结束地址

#define MEMADDR_AP_GLOBAL			(MEMADDR_EXTERNALRAM+0x0A000)   // 应用程序共享全局变量区(4K)
#define MEMADDR_ZI_GLOBAL			(MEMADDR_EXTERNALRAM+0x0B000)   // 其它系统内核模块全局变量区(32K)
#endif

#ifndef _WIN32
#define	GetUsbChargeState		USBIsConnect
#endif
#ifdef  __cplusplus
}                   /* End of C declarations */
#endif


#endif  /* #ifndef __BASE_H__ */

⌨️ 快捷键说明

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