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

📄 mn80rom.c

📁 phs 源代码 小灵通协议源代码 phs source code
💻 C
字号:
#ifndef PM_ONPC
#ifdef __cplusplus
extern "C"{
#endif

#include	"phs_def.h"
#include	"mn80.h"

 MN_EVENTREC	M0EVENT[] =
{
	EPWRON, ZERO_WORD, 	Mn_MInitial,
	PM_MNG, (U2)PMMN_RESET, Mn_SReset,
	END, 	END, 			err_dsp
};

MN_EVENTREC	M1EVENT[] =
{
	PM_MNG, (U2)PMMN_INITDDL1 , 	Mn_MInitData1,
	PM_MNG, (U2)PMMN_INITDDL2 ,	Mn_MInitData2,
	PM_MNG, (U2)PMMN_RESET, 		Mn_SReset,
	END, 	END, 				err_dsp
};

MN_EVENTREC	M2EVENT[] =
{
	PM_MNG, (U2)PMMN_RESET, Mn_SReset,
	END, 	SRCH, 			Mn_SSeparate
};



MN_EVENTREC	PSEVENT[] =
{
	TIACCALL , 	ZERO_WORD, Mn_PAccTimer,
	TIACLOC , 	ZERO_WORD, Mn_PAccTimer,
	TIRETRY  ,	ZERO_WORD,	Mn_Retry,
	TIPAGE , 		ZERO_WORD,	Mn_ti_page,
	END , 		END , 		err_dsp
};

MN_EVENTREC	PCEVENT[] =
{	EL1_STAT, 	ZERO_WORD, 			Mn_PTchL1Err,
	PM_MNG, 	(U2)PMMN_COMM_DIS , 	Mn_PCutReq,
	PM_MNG, 	(U2)PMMN_RADIO_FREE, 	Mn_PRadCutReq,
	ECC, 		PSCALDIS,				Mn_PCutDsp,
	ECC, 		PSCALFRE, 				Mn_PReleaseDsp,
	ECC, 		PSCALFAL, 				Mn_PReleaseEnd,
	ERT, 		PSRCHDIS, 				Mn_PRadioCut,
	ERT, 		PSRCHEND, 				Mn_PRadioEnd,
	ERT, 		PSSYNC, 					Mn_PTchSyncOK,
	ERT, 		PSSYNNG, 				Mn_PTchSyncNG,
	ERT, 		PSDWBRMV, 				Mn_PSyncBstrcv,
	ERT, 		DOWN_BST, 				Mn_Bst_Ho,	 
	PM_MNG, 	(U2)PMMN_FACILITY, 		Mn_PFacReq,
	ECC, 		PSFCLTY, 				Mn_PFacDsp,
	ECC, 		PSTHRU, 					Mn_PThruDsp,
	PM_MNG, 	(U2)PMMN_DIAL_OUT, 		Mn_PDialReq,/*拨号请求*/
	ECC, 		PSADDINF, 				Mn_PCCValDsp,
	ECC, 		PSTXCOMP, 				Mn_HTxComp,
	ERT, 		PSRTOPT, 				Mn_PRTOptDsp,
	ECC, 		PSCALOPT, 				Mn_PCCOptDsp,
	TIACCALL, 	ZERO_WORD, 			Mn_PAccTimer,
	TIACLOC, 	ZERO_WORD, 			Mn_PAccTimer,
	TIRETRY,		ZERO_WORD,				Mn_Retry,
	TIPAGE,		ZERO_WORD,				Mn_ti_page,
	TITC309P, 	ZERO_WORD, 			Mn_PTC309PTo,
	PM_MNG, 	PMMN_TCH_SWT , 			Mn_PowerSearch,
	END, 		END, 					err_dsp };

MN_EVENTREC	P0EVENT[] =
{
	PM_MNG, (U2)PMMN_CCH_EST , 	Mn_PCCHEstablish,
	END, 	SRCH, 				(void (*)(void))PSEVENT
};

MN_EVENTREC	P1EVENT[] =
{	TICCHMON, 	ZERO_WORD, 		Mn_PCCHMonTo,
	PM_MNG, 	(U2)PMMN_CCH_FREE, 	Mn_PCCHLiberate,
	PM_MNG, 	(U2)PMMN_COMM_DIS, Mn_PRadioInit,
	END, 		SRCH, 				(void (*)(void))PSEVENT
};


MN_EVENTREC	P2EVENT[] =
{	ERCHINFO, ZERO_WORD, Mn_PRadioInfo,
	ESYSINFO, ZERO_WORD, Mn_PSysInfo,
	ESY2INFO, ZERO_WORD, Mn_PSysInfo,
	ESY3INFO, ZERO_WORD, Mn_PSysInfo,
	ESCCH, ZERO_WORD, Mn_PCsyncOut,
	EPCH, ZERO_WORD, Mn_PIncomCall,
	PM_MNG, (U2)PMMN_CCH_FREE, Mn_PCCHLiberate,
	PM_MNG, (U2)PMMN_COMM_DIS, Mn_PRadioInit,
	TICCHEST, ZERO_WORD, Mn_PCCHTimUp,
	TICSYNC, ZERO_WORD, Mn_PCCHTimUp,
	TICCHSHT, ZERO_WORD, Mn_PCCHTimUp,
	END, SRCH, (void (*)(void))PSEVENT };

MN_EVENTREC	P3EVENT[] =
{	PM_MNG, (U2)PMMN_LOC_REG, Mn_PLocReg,
	PM_MNG, (U2)PMMN_COMM_SET, Mn_PCallSet,
	EPCH, ZERO_WORD, Mn_PIncomCall,
	PM_MNG, (U2)PMMN_INCALL_REP, Mn_PIncomRs,
	PM_MNG, (U2)PMMN_COMM_DIS, Mn_PRadioInit,
	PM_MNG, (U2)PMMN_CCH_FREE, Mn_PCCHLiberate,
	PM_MNG, (U2)PMMN_CCH_EST , Mn_PCCHReEstab,
	ESCCH, ZERO_WORD, Mn_PCsyncOut,
	ERCHINFO, ZERO_WORD, Mn_PReRadioInfo,
	ESYSINFO, ZERO_WORD, Mn_PReSysInfo,
	ESY2INFO, ZERO_WORD, Mn_PReSysInfo,
	ESY3INFO, ZERO_WORD, Mn_PReSysInfo,
	TICSYNC, ZERO_WORD, Mn_PCCHTimUp,
	TICCHSHT, ZERO_WORD, Mn_PCCHTimUp,

	TICCHMON, ZERO_WORD, Mn_PWaitCCHMonTo,
	TIWMONIT1, ZERO_WORD, Mn_Atimerstop,

	TICCHEST, ZERO_WORD, Mn_PCCHTimUp,

	END, SRCH, (void (*)(void))PSEVENT };

MN_EVENTREC	P4EVENT[] =
{	ERT, PSLCHASG, Mn_PLink,
	ERT, PSLCHREF, Mn_PLinkNG,
	ERT, PSLCHNG, Mn_PRadioInit,
	ERT, PSSYNC, Mn_PSamePeriod,
	PM_MNG, (U2)PMMN_COMM_DIS, Mn_PRadioInit,
	ERCHINFO, ZERO_WORD, Mn_PCsyncRssiChk,
	ESY2INFO, ZERO_WORD, Mn_PCsyncRssiChk,
	ESY3INFO, ZERO_WORD, Mn_PCsyncRssiChk,
	ESCCH, ZERO_WORD, Mn_PCsyncRssiChk,
	EPCH, ZERO_WORD, Mn_PCsyncRssiChk,
	TICSYNC, ZERO_WORD, Mn_PRadioInit,
	TICCHSHT, ZERO_WORD, Mn_PRadioInit,
	END, SRCH, (void (*)(void))PSEVENT };

MN_EVENTREC	P5EVENT[] =
{	EL3SETRS, ZERO_WORD, Mn_PCallDLSet,
	EL3FRERS, ZERO_WORD, Mn_PCallDLF,
	ECC, PSCALREC, Mn_PCallSetAcp,
	ERT, PSDEFINF, Mn_PCallDefInfo,
	ERT, PSRTFUNC, Mn_PCallRTFncRes,
	EMM, MMMN_FUNCTION_RES , Mn_PCallMMFncRes,
	EMM, MMMN_AUTHENICATION_REQ , Mn_PCallMMCtf,
	ERT, PSDEFING, Mn_PFuncReqNG,
	ERT, PSRTFUNG, Mn_PFuncReqNG,
	EMM, MMMN_FUNCTION_REQ_FAIL , Mn_PFuncReqNG,
	ECC, PSCALFAL, Mn_PReleaseEnd,
	ECC, PSCALCON, Mn_PCCCall,
	ECC, PSCALPRC, Mn_PCCRspns,
	ECC, PSPRGRES, Mn_PProgress,
	EMDLERRDSP, ZERO_WORD, Mn_PRadioInit,
	END, SRCH, (void (*)(void))PCEVENT };

MN_EVENTREC	P6EVENT[] =
{	ECC, PSCALCON, Mn_PCCCall,
	ECC, PSCALPRC, Mn_PCCRspns,
	ECC, PSPRGRES, Mn_PProgress,
	ERT, PSZONINF, Mn_PZoneInfo,
	EL3FRERS, ZERO_WORD, Mn_HakDLRrcv,
	EL3SETRS, ZERO_WORD, Mn_PTchDLSrcv,
	END, SRCH, (void (*)(void))PCEVENT };

MN_EVENTREC	P7EVENT[] =
{	ERT, PSLCHASG, Mn_PLink,
	ERT, PSLCHREF, Mn_PLinkNG,
	ERT, PSLCHNG, Mn_PRadioInit,
	ERT, PSSYNC, Mn_PSamePeriod,
	PM_MNG, (U2)PMMN_COMM_DIS, Mn_PRadioInit,
	ERCHINFO, ZERO_WORD, Mn_PCsyncRssiChk,
	ESY2INFO, ZERO_WORD, Mn_PCsyncRssiChk,
	ESY3INFO, ZERO_WORD, Mn_PCsyncRssiChk,
	ESCCH, ZERO_WORD, Mn_PCsyncRssiChk,
	EPCH, ZERO_WORD, Mn_PCsyncRssiChk,
	TICSYNC, ZERO_WORD, Mn_PRadioInit,
	TICCHSHT, ZERO_WORD, Mn_PRadioInit,
	END, SRCH, (void (*)(void))PSEVENT };

MN_EVENTREC	P8EVENT[] =
{	EL3SETRS, ZERO_WORD, Mn_PIncomDLSet,
	EL3FRERS, ZERO_WORD, Mn_PTchDLRrcv,
	ECC, PSCALSET, Mn_PIncomSet,
	ERT, PSDEFINF, Mn_PCallDefInfo,
	ERT, PSRTFUNC, Mn_PCallRTFncRes,
	EMM, MMMN_FUNCTION_RES , Mn_PCallMMFncRes,
	EMM, MMMN_AUTHENICATION_REQ, Mn_PCallMMCtf,
	ECC, PSPRGRES, Mn_PProgress,
	ERT, PSDEFING, Mn_PFuncReqNG,
	ERT, PSRTFUNG, Mn_PFuncReqNG,
	EMM, MMMN_FUNCTION_REQ_FAIL,  Mn_PFuncReqNG,
	EMDLERRDSP, ZERO_WORD, Mn_PRadioInit,
	END, SRCH, (void (*)(void))PCEVENT
 };

MN_EVENTREC	P9EVENT[] =
{
	PM_MNG , (U2)PMMN_ALERT , Mn_PIncomAlertRq,
	PM_MNG , (U2)PMMN_COMM_REP, Mn_PIncomRsRq,
	ECC , PSCALPRC, Mn_PIncomRsDp,
	EL3SETRS , ZERO_WORD, Mn_PTchDLSrcv,
	EL3FRERS , ZERO_WORD, Mn_PIncomDLF,
	END , SRCH, (void (*)(void))PCEVENT
};

MN_EVENTREC	P10EVENT[] =
{
	EL1_STAT, ZERO_WORD, Mn_PTchChange,
	ERT, PSTCHASS, Mn_PTchChgIns,
	ERT, PSTCHACA, Mn_PTchChgRelease,
	ERT, PSTCHAPH, Mn_PTchChgRegul,
	ERT, PSSYNC, Mn_PTchSyncOK,
	ERT, PSSYNNG, Mn_PTchSyncNG,
	ERT, PSZONINF, Mn_PZoneInfo,
	EL3FRERS, ZERO_WORD, Mn_PDLinkRDsp,
	ERT, DOWN_BST, Mn_Bst_Ho,
	PM_MNG, (U2)PMMN_TCH_DATA, Mn_HTCHDatReq,
	END, SRCH, (void (*)(void))PCEVENT };

MN_EVENTREC	P11EVENT[] =
{	PM_MNG, (U2)PMMN_COMM_DIS, Mn_PCutReq,
	PM_MNG, (U2)PMMN_RADIO_FREE, Mn_PRadCutReq,
	PM_MNG, (U2)PMMN_COMM_FREE, Mn_PReleaseReq,
	ECC, PSCALDIS, Mn_PCutDsp,
	ECC, PSCALFRE, Mn_PReleaseDsp,
	ECC, PSCALFAL, Mn_PReleaseEnd,
	EL3FRERS, ZERO_WORD, Mn_PLinkCut,
	ERT, PSRCHDIS, Mn_PRadioCut,
	ERT, PSRCHEND, Mn_PRadioEnd,
	ERT, PSSYNNG, Mn_PRadioInit,
	ECC, PSTXCOMP, Mn_HTxComp,
	ECC, PSFCLTY, Mn_PFacDsp,
	TITCHFRE, ZERO_WORD, Mn_PRadioRelease,
	EL1_STAT, ZERO_WORD, Mn_PTchL1Err,
	END, SRCH, (void (*)(void))PSEVENT };

MN_EVENTREC	P12EVENT[] =
{	ERT, 		PSTCHASS, 	Mn_PTchChgIns,
	ERT, 		PSSYNC, 		Mn_PTchChgSync,
	EL3SETRS, 	ZERO_WORD, Mn_PTchChgEnd,
	ERT, 		PSSYNNG, 	Mn_PTchChgNG,
	ERT, 		PSTCHARE, 	Mn_PTchChgStp,
	ERT, 		PSTCHACA, 	Mn_PTchChgRelease,
	ERT, 		PSTCHAPH, 	Mn_PTchChgRegul,
	EL3FRERS, 	ZERO_WORD, Mn_PRadioInit,
	TIHANDOV, 	ZERO_WORD, Mn_PHOTimOut,
	END, 		SRCH, 		(void (*)(void))PCEVENT };

MN_EVENTREC	P13EVENT[] =
{	ERT, 		PSTCHASS, 	Mn_PTchChgIns,
	ERT, 		PSLCHASG, 	Mn_PLink,
	ERT, 		PSLCHNG, 	Mn_PRadioInit,  /*  for protocol simulator */
	ERT, 		PSSYNC, 		Mn_PTchChgSync,
	EL3SETRS, 	ZERO_WORD, Mn_PHORCall,
	ERT, 		PSSYNNG, 	Mn_PTchChgNG,
	ERT, 		PSTCHARE, 	Mn_PTchChgStp,
	ERT, 		PSTCHACA, 	Mn_PTchChgRelease,
	ERT, 		PSTCHAPH, 	Mn_PTchChgRegul,
	EL3FRERS, 	ZERO_WORD, Mn_PRadioInit,
	TIHANDOV, 	ZERO_WORD, Mn_PHOTimOut,
	END, 		SRCH, 		(void (*)(void))PCEVENT };

MN_EVENTREC	P14EVENT[] =
{	ERT, 		PSLCHASG, 				Mn_PLink,
	ERT, 		PSSYNC, 					Mn_PSamePeriod,
	ERT, 		PSLCHREF, 				Mn_PLocSyncNG,
	ERT, 		PSLCHNG, 				Mn_PLocSyncNG,
	PM_MNG, 	(U2)PMMN_RADIO_FREE, 	Mn_PLocFrcInit,
	PM_MNG, 	(U2)PMMN_COMM_DIS, 		Mn_PLocHakInit,
	TICCHSHT, 	ZERO_WORD, 			Mn_PRadioInit,
	END, 		SRCH, 					(void (*)(void))PSEVENT };

MN_EVENTREC	P15EVENT[] =
{	EL3SETRS, 	ZERO_WORD, 						Mn_PLocDLSet,
	ERT, 		PSDEFINF, 							Mn_PCallDefInfo,
	ERT, 		PSRTFUNC, 							Mn_PCallRTFncRes,
	EMM, 		MMMN_FUNCTION_RES , 				Mn_PCallMMFncRes,
	EMM, 		MMMN_AUTHENICATION_REQ , 			Mn_PCallMMCtf,
	EMM, 		MMMN_LOCATION_REGISTRATION_ACK , 	Mn_PLocAcpt,
	EMM, 		MMMN_LOCATION_REGISTRATION_REJ , 	Mn_PLocNG,
	EL3FRERS, 	ZERO_WORD, 						Mn_PTchDLRrcv,
	PM_MNG, 	(U2)PMMN_RADIO_FREE, 				Mn_PLocFrcRel,
	PM_MNG, 	(U2)PMMN_COMM_DIS, 					Mn_PLocHakRel,
	ERT, 		PSRCHDIS, 							Mn_PLocRRel,
	EMM, 		MMMN_LOCATION_REGISTRATION_FAIL , 	Mn_PLocDLNG,
	EMM, 		MMMN_FUNCTION_REQ_FAIL , 			Mn_PLocDLNG,
	ERT, 		PSRTFUNG, 							Mn_PLocDLNG,
	ERT, 		PSDEFING, 							Mn_PLocDLNG,
	ERT, 		PSDWBRMV, 							Mn_PRadioInit,
	EL1_STAT, 	ZERO_WORD, 						Mn_PTchL1Err,
	TITC309P, 	ZERO_WORD,							Mn_PTC309PTo,
	END, 		SRCH, 								(void (*)(void))PSEVENT };

MN_EVENTREC	P16EVENT[] =
{	EL3FRERS, 	ZERO_WORD, 			Mn_PLinkCut,
	ERT, 		PSRCHDIS, 				Mn_PLocRRel,
	ERT, 		PSRCHEND, 				Mn_PLocRRel,
	ERT, 		PSSYNNG, 				Mn_PRadioInit,
	PM_MNG, 	(U2)PMMN_RADIO_FREE, 	Mn_PLocFrcRel,
	PM_MNG, 	(U2)PMMN_COMM_DIS, 		Mn_PLocHakRel,
	TITCHFRE, 	ZERO_WORD, 			Mn_PRadioRelease,
	END, 		SRCH, 					(void (*)(void))PSEVENT };

 /****************************************************************************/
/* 									State Table								*/
/****************************************************************************/
/*--------------------MN layer state in PHS_COMMON_STS mode--------------------*/
/*状态表*/
MN_EVENTREC	*COMM_STATE[3] = {M0EVENT, M1EVENT, M2EVENT};

/*----------------MN layer state in PHS_PUBLIC_STS or PHS_PRIVATE_STS mode---------*/
MN_EVENTREC	*PUB_PRV_STATE[17] = {
							P0EVENT, P1EVENT, P2EVENT, P3EVENT, P4EVENT,
							P5EVENT, P6EVENT, P7EVENT, P8EVENT, P9EVENT,
							P10EVENT, P11EVENT, P12EVENT, P13EVENT, P14EVENT,
							P15EVENT, P16EVENT};

/****************************************************************************/




U1	PAREADEF[7] = {	0x2C,
					0x2C,
					0x2C,
					0x2C,
					0x2C,
					0xF0,
					0x00 };


U1	RTFUNCDEF[8] = {	0x00,
						0x10,
						0x00,
						0xD0,
						0x07,
						0x00,
						0x00,
						0xC0 };


U1	MMFUNCDEF[2] = {0x01,
					0x80 };


U1	UAPOUT[] = {
				PMMN_CCH_EST,
				PMMN_CCH_FREE,
				UCCHDATA,
				PMMN_INCALL_REP,
				PMMN_COMM_SET,
				PMMN_LOC_REG,
				USORDER,
				END };


U1	SYSIFDF[2][8] = {	0x0A,0x03,0x00,0x01,0x00,0x00,0x00,0x00,
						0x0A,0x03,0x80,0x00,0x00,0x00,0x00,0x00 };


U1	FCINFDEF[39] = {0x1C,
					0x00,
					0x91,
					0xA1,
					0x00,
					0x02,
					0x01,
					0x01,
					0x06,
					0x09,
					0x02,
					0x83,
					0x38,
					0x8C,
					0x9A,
					0x5C,
					0x41,
					0x01,
					0x02,
					0x31,
					0x00,
					0x82,
					0x01,
					0x01,
					0x83,
					0x08,
					0x00,
					0x00,
					0x00,
					0x00,
					0x00,
					0x00,
					0x00,
					0x00,
					0x40,
					0x00,
					0x6C,
					0x00,
					0xA1};


U1	PMAILUUI[27] = {0x7E,
					0x07,
					0x43,
					0x01,
					0x04,
					0x80,
					0x7E,
					0x01,
					0x80};


U1	CSId_msk[8] = {0xFF, 0x80, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, 0xFE};


U1	CLSCSID[6] = {	0x00,0x00,0x00,0x00,0x00,0x00};


U1	CLSAREA[7] = {	0x00,0x00,0x00,0x00,0x00,0x00,0x00};


U1	ANSKEY[8] = {	0x01,0x03,0x05,0x10,0x30,0x50,0xFF,0x01};


MN_INFTBL CHKTBL[12] = {
						1, 1,
						ISCCHDAT,0,0,0,0,0,0,0,0,0,
					  	6,0,0,0,0,0,0,0,0,0,
						MJ,0,0,0,0,0,0,0,0,0,

						1, 1,
						IINCNO,0,0,0,0,0,0,0,0,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,0,0,0,0,0,0,0,0,0,

						9, 3,
						IBEARCAP,ICALLNUM,IINCONUM,IFACILIT,IPROGRES,
					  	IKEYPADF,ICALLADR,IINCOADR,IDDISVS,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,MJ,MJ,OJ,OJ,OJ,OJ,OJ,OJ,0,

					  	9, 2,
						IBEARCAP,ICALLNUM,IINCONUM,IFACILIT,IPROGRES,
					  	IKEYPADF,ICALLADR,IINCOADR,IDDISVS,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,OJ,MJ,OJ,OJ,OJ,OJ,OJ,OJ,0,

					  	2, 1,
						IREASON0,IFACILIT,0,0,0,0,0,0,0,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,OJ,0,0,0,0,0,0,0,0,

					  	2, 2,
						IPSNUMBR,ISODATA,0,0,0,0,0,0,0,0,
					  	8,0,0,0,0,0,0,0,0,0,
						MJ,MJ,0,0,0,0,0,0,0,0,

					  	1, 1,
						IKEYPADF,0,0,0,0,0,0,0,0,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,0,0,0,0,0,0,0,0,0,

					  	1, 1,
						IPFREQ,0,0,0,0,0,0,0,0,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,0,0,0,0,0,0,0,0,0,

					  	1, 1,
						IREASON,0,0,0,0,0,0,0,0,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,0,0,0,0,0,0,0,0,0,

					  	1, 1,
						IPFREQ,0,0,0,0,0,0,0,0,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,0,0,0,0,0,0,0,0,0,

					  	2, 2,
						IPSNUMBR,ISODATA,0,0,0,0,0,0,0,0,
					  	8,0,0,0,0,0,0,0,0,0,
						MJ,MJ,0,0,0,0,0,0,0,0,

					  	1, 1,
						IFACILIT,0,0,0,0,0,0,0,0,0,
					  	0,0,0,0,0,0,0,0,0,0,
						MJ,0,0,0,0,0,0,0,0,0

					};

MN_INFTBL DTINFTBL[2] = {
						6, 5,
						ICARINF,IANSKEY,IPRIORT,ICAROPT,IREWTKY,IREADKY,0,0,0,0,
						0,9,2,0,9,9,0,0,0,0,
						MJ,MJ,MJ,OJ,MJ,MJ,0,0,0,0,

						6, 2,
						ISYSINFO,IANSKEY,IPRIORT,ISYSOPT,IREWTKY,IREADKY,0,0,0,0,
						0,9,2,0,9,9,0,0,0,0,
						MJ,MJ,OJ,OJ,OJ,OJ,0,0,0,0

					};


#ifdef __cplusplus
}
#endif


#endif

⌨️ 快捷键说明

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