pcm.h
来自「是一个手机功能的模拟程序」· C头文件 代码 · 共 1,584 行 · 第 1/4 页
H
1,584 行
#define SIZE_EF_MSSET 10
#define NR_EF_MSSET 1
/*
* buzzer 1
*/
#define calltype 0x00000007,0 /* ringer type incoming calls */
#define calltypem 0x00000007
#define calltypes 0
#define callvol 0x00000038,3 /* ringer volume incoming calls */
#define callvolm 0x00000038
#define callvols 3
#define vib 0x000000c0,6 /* vibrator */
#define vibm 0x000000c0
#define vibs 6
/*
* buzzer 2
*/
#define msgtype 0x00000007,0 /* ringer type messages */
#define msgtypem 0x00000007
#define msgtypes 0
#define msgvol 0x00000038,3 /* ringer volume messages */
#define msgvolm 0x00000038
#define msgvols 3
/*
* buzzer 3
*/
#define keytone 0x00000003,0 /* key tone mode */
#define keytonem 0x00000003
#define keytones 0
#define batw 0x00000004,2 /* low battery warning */
#define batwm 0x00000004
#define batws 2
/*
* audio
*/
#define lnamp 0x00000007,0 /* microphone amplification */
#define lnampm 0x00000007
#define lnamps 0
#define outvol 0x00000038,3 /* output volume */
#define outvolm 0x00000038
#define outvols 3
#define ext 0x00000040,6 /* external audio */
#define extm 0x00000040
#define exts 6
#define voicerec 0x00000080,7 /* voice recording */
#define voicerecm 0x00000080
#define voicerecs 7
/*
* miscellenous
*/
#define pmod 0x00000001,0 /* PLMN selection mode */
#define pmodm 0x00000001
#define pmods 0
#define clir 0x00000002,1 /* CLIR */
#define clirm 0x00000002
#define clirs 1
#define clip 0x00000004,2 /* CLIP */
#define clipm 0x00000004
#define clips 2
#define calinf 0x00000008,3 /* call information display */
#define calinfm 0x00000008
#define calinfs 3
#define redial 0x00000030,4 /* redial mode */
#define redialm 0x00000030
#define redials 4
/*
* display
*/
#define ctrt 0x00000007,0 /* contrast */
#define ctrtm 0x00000007
#define ctrts 0
#define brgt 0x00000018,3 /* brightness */
#define brgtm 0x00000018
#define brgts 3
#define bckdr 0x000000E0,5 /* duration for back light */
#define bckdrm 0x000000E0
#define bckdrs 5
/********************************************************************
*
* Field LAST DIALLED NUMBERS
*
********************************************************************/
typedef struct pcm_EFldn_Type /* Last Dialed Numbers */
{
UBYTE calDrMsb;
UBYTE calDrLsb;
UBYTE year;
UBYTE month;
UBYTE day;
UBYTE hour;
UBYTE minute;
UBYTE second;
UBYTE len; /* length of BCD number */
UBYTE numTp;
UBYTE dldNum[10]; /* dialed number */
UBYTE ccp; /* capability/configuration id */
UBYTE ext1; /* extension1 record identifier */
} EF_LDN;
#define SIZE_EF_LDN 22
#define NR_EF_LDN 1
/*
* numTp
*/
#define numTp_npi 0x0000000F,0 /* numbering plan identification */
#define numTp_npim 0x0000000F
#define numTp_npis 0
#define numTp_ton 0x00000070,4 /* Type of number */
#define numTp_tonm 0x00000070
#define numTp_tons 4
/********************************************************************
*
* Field LAST RECEIVED NUMBERS
*
********************************************************************/
typedef struct pcm_EFlrn_Type /* Last Received Numbers */
{
UBYTE calDrMsb;
UBYTE calDrLsb;
UBYTE year;
UBYTE month;
UBYTE day;
UBYTE hour;
UBYTE minute;
UBYTE second;
UBYTE id;
UBYTE len; /* length of BCD number */
UBYTE numTp;
UBYTE dldNum[10]; /* dialed number */
UBYTE ccp; /* capability/configuration id */
UBYTE ext1; /* extension1 record identifier */
} EF_LRN;
#define SIZE_EF_LRN 23
#define NR_EF_LRN 1
/********************************************************************
*
* Field LAST MISSED NUMBERS
*
********************************************************************/
typedef struct pcm_EFlmn_Type /* Last Missed Numbers */
{
UBYTE year;
UBYTE month;
UBYTE day;
UBYTE hour;
UBYTE minute;
UBYTE second;
UBYTE id;
UBYTE len; /* length of BCD number */
UBYTE numTp;
UBYTE dldNum[10]; /* dialed number */
UBYTE ccp; /* capability/configuration id */
UBYTE ext1; /* extension1 record identifier */
} EF_LMN;
#define SIZE_EF_LMN 21
#define NR_EF_LMN 1
/********************************************************************
*
* Field USER PERSONAL NUMBERS
*
********************************************************************/
typedef struct pcm_EFupn_Type /* User Personal Numbers */
{
UBYTE alphId[10];
UBYTE len;
UBYTE numTp; /* bitmap same as EF_LDN */
UBYTE usrNum[10];
UBYTE ccp;
UBYTE ext1;
} EF_UPN;
#define SIZE_EF_UPN 24
#define NR_EF_UPN 1
/********************************************************************
*
* Field MAILBOX NUMBERS
*
********************************************************************/
typedef struct pcm_EFmbn_Type /* Mailbox Numbers */
{
UBYTE alphId[10];
UBYTE len;
UBYTE numTp; /* bitmap same as EF_LDN */
UBYTE mbNum[10];
} EF_MBN;
#define SIZE_EF_MBN 22
#define NR_EF_MBN 4
/********************************************************************
*
* Field Voice Mail Number
*
********************************************************************/
/*
* note that with new 04.08 the called party bcd number of the CC
* protocol can have up to 43 octets, 3 are used for other things
* than the BCD coded digits
*/
#define MAX_CALLED_PARTY_BCD_NO_OCTETS 40
typedef struct pcm_EFvmn_Type /* Voice mail Number */
{
UBYTE vmNum[MAX_CALLED_PARTY_BCD_NO_OCTETS + 1];
/* implementation uses delimiter of 0xFF */
UBYTE numTp;
} EF_VMN;
#define SIZE_EF_VMN MAX_CALLED_PARTY_BCD_NO_OCTETS + 1 + 1
#define NR_EF_VMN 1
/********************************************************************
*
* Field CALL TIMER
*
********************************************************************/
typedef struct pcm_EFctim_Type /* Call Timer */
{
UBYTE moVcDrHm[4];
UBYTE mtVcDrHm[4];
UBYTE moDtDrHm[4];
UBYTE mtDtDrHm[4];
UBYTE moFxDrHm[4];
UBYTE mtFxDrHm[4];
UBYTE moVcDrRm[4];
UBYTE mtVcDrRm[4];
UBYTE moDtDrRm[4];
UBYTE mtDtDrRm[4];
UBYTE moFxDrRm[4];
UBYTE mtFxDrRm[4];
} EF_CTIM;
#define SIZE_EF_CTIM 48
#define NR_EF_CTIM 1
/********************************************************************
*
* Field CALL COUNTER
*
********************************************************************/
typedef struct pcm_EFccnt_Type /* Call Counter */
{
UBYTE total[4];
UBYTE moVcDrHm[4];
UBYTE mtVcDrHm[4];
UBYTE moDtDrHm[4];
UBYTE mtDtDrHm[4];
UBYTE moFxDrHm[4];
UBYTE mtFxDrHm[4];
UBYTE moVcDrRm[4];
UBYTE mtVcDrRm[4];
UBYTE moDtDrRm[4];
UBYTE mtDtDrRm[4];
UBYTE moFxDrRm[4];
UBYTE mtFxDrRm[4];
} EF_CCNT;
#define SIZE_EF_CCNT 52
#define NR_EF_CCNT 1
/********************************************************************
*
* Field EMERGENCY CALL CODES
*
********************************************************************/
typedef struct pcm_EFecc_Type /* Emergency Call Codes */
{
UBYTE ecc1[3]; /* emergency call code */
UBYTE ecc2[3];
UBYTE ecc3[3];
UBYTE ecc4[3];
UBYTE ecc5[3];
} EF_ECC;
#define SIZE_EF_ECC 15
#define NR_EF_ECC 1
/********************************************************************
*
* Field ORGANIZER AND ALARM
*
********************************************************************/
typedef struct pcm_EForg_Type /* Organizer and Alarm */
{
UBYTE date[6]; /* bitmap same as EF_LDN */
UBYTE alrm;
UBYTE alphMem[16]; /* alpha memo */
} EF_ORG;
#define SIZE_EF_ORG 23
#define NR_EF_ORG 1
/*
* alrm
*/
#define alrm_stat 0x00000001,0
#define alrm_statm 0x00000001
#define alrm_stats 0
#define alrm_type 0x0000000E,1
#define alrm_typem 0x0000000E
#define alrm_types 1
/********************************************************************
*
* Field CAPABILITY AND CONFIGURATION PARAMETERS
*
********************************************************************/
typedef struct pcm_EFccp_Type /* Capability and Configuration Parameters */
{
UBYTE usrRate; /* user rate */
UBYTE bearServ; /* bearer service */
UBYTE conElem; /* connection element */
UBYTE stopBits; /* stop bits */
UBYTE dataBits; /* data bits */
UBYTE parity; /* parity */
UBYTE flowCntrl; /* flow control */
} EF_CCP;
#define SIZE_EF_CCP 7
#define NR_EF_CCP 1
/********************************************************************
*
* Field EXTENSION 1
*
********************************************************************/
typedef struct pcm_EFext1_Type /* Extension 1 */
{
UBYTE recTp; /* record type */
UBYTE extDat[11]; /* extension data */
UBYTE id; /* identifier */
} EF_EXT1;
#define SIZE_EF_EXT1 13
#define NR_EF_EXT1 1
/********************************************************************
*
* Field SIM LOCK and Extended SIM LOCK (use alternativly)
*
********************************************************************/
typedef struct pcm_EFsimlck_Type /* SIM Lock */
{
UBYTE locks1; /* lock status */
UBYTE locks2;
UBYTE cnt; /* lock counter */
UBYTE maxcnt; /* lock counter */
UBYTE PKey[8]; /* SIM control key */
UBYTE SPKey[8]; /* SP control key */
UBYTE NSKey[8]; /* NS control key */
UBYTE CKey[8]; /* corporate control key */
UBYTE NKey[8]; /* network control key */
UBYTE len_imsi; /* bytes of IMSI */
UBYTE imsi[15]; /* IMSI */
UBYTE gidl1; /* Group Identifier Level 1 */
UBYTE gidl2; /* Group Identifier Level 1 */
} EF_SIMLCK;
#define SIZE_EF_SIMLCK 62
#define NR_EF_SIMLCK 1
typedef struct pcm_EFsimlckext_Type /* Extended SIM Lock */
{
UBYTE locks1; /* lock status */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?