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

📄 oemioctl.cod

📁 EP9315的BSP包(WINCE下的BSP,内有各种驱动的详细的代码)
💻 COD
📖 第 1 页 / 共 5 页
字号:
; Listing generated by Microsoft (R) Optimizing Compiler Version 12.20.9615 

	TTL	d:\wince420\platform\ep931x\kernel\hal\.\oemioctl.c
	CODE32

  00000			 AREA	 |.drectve|, DRECTVE
	DCB	"-defaultlib:coredll.lib "
	DCB	"-defaultlib:corelibc.lib "

	EXPORT	|HALPlatformStr| [ DATA ]
	EXPORT	|HALOEMStr| [ DATA ]

  00000			 AREA	 |.data|, DATA
	 COMMON	|fIntrTime|, 0x4

	 COMMON	|wNumInterrupts|, 0x2

	 COMMON	|dwIsrTime1|, 0x4

	 COMMON	|dwIsrTime2|, 0x4

	 COMMON	|dwSPC|, 0x4

	 COMMON	|dwIntrTimeCountdown|, 0x4

	 COMMON	|dwIntrTimeCountdownRef|, 0x4

	 COMMON	|csWakeIntMask|, 0x14

	 COMMON	|csPCIConfig|, 0x14


  00000			 AREA	 |.rdata|, DATA, READONLY
|EdbgVendorIds| DCW 0x0
	DCW	0x0
	DCD	0x4033
	DCB	0x1
	DCB	"AD", 0x0
	DCW	0x1050
	DCW	0x940
	DCD	0x4005
	DCB	0x1
	DCB	"LS", 0x0
	DCW	0x1050
	DCW	0x940
	DCD	0x2078
	DCB	0x1
	DCB	"LS", 0x0
	DCW	0x10ec
	DCW	0x8029
	DCD	0xc0f0
	DCB	0x1
	DCB	"KS", 0x0
	DCW	0x10ec
	DCW	0x8129
	DCD	0x0
	DCB	0x4
	DCB	"RT", 0x0
	DCW	0x10ec
	DCW	0x8139
	DCD	0x900b
	DCB	0x4
	DCB	"RT", 0x0
	DCW	0x10ec
	DCW	0x8139
	DCD	0xd0c9
	DCB	0x4
	DCB	"RT", 0x0
	DCW	0x10ec
	DCW	0x8139
	DCD	0xe04c
	DCB	0x4
	DCB	"RT", 0x0
	DCW	0x1186
	DCW	0x1300
	DCD	0x50ba
	DCB	0x4
	DCB	"DL", 0x0
	DCW	0x100b
	DCW	0x20
	DCD	0xa0cc
	DCB	0x5
	DCB	"NG", 0x0
	DCW	0x10b7
	DCW	0x9050
	DCD	0x6008
	DCB	0x6
	DCB	"3C", 0x0
	DCW	0x10b7
	DCW	0x9200
	DCD	0x476
	DCB	0x6
	DCB	"3C", 0x0
|HALPlatformStr| DCB "E", 0x0, "P", 0x0, "9", 0x0, "3", 0x0, "1", 0x0, "x"
	DCB	0x0, " ", 0x0, "E", 0x0, "v", 0x0, "a", 0x0, "l", 0x0, "u"
	DCB	0x0, "a", 0x0, "t", 0x0, "i", 0x0, "o", 0x0, "n", 0x0, " "
	DCB	0x0, "B", 0x0, "o", 0x0, "a", 0x0, "r", 0x0, "d", 0x0, 0x0
	DCB	0x0
|HALOEMStr| DCB	"C", 0x0, "i", 0x0, "r", 0x0, "r", 0x0, "u", 0x0, "s", 0x0
	DCB	0x0, 0x0
	EXPORT	|OEMIoControl|
	EXPORT	|??_C@_17MPOF@?$AAA?$AAR?$AAM?$AA?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_1BA@DNL@?$AAA?$AAR?$AAM?$AA9?$AA2?$AA0?$AAT?$AA?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_1BC@HAPB@?$AAA?$AAR?$AAM?$AA?5?$AAL?$AAt?$AAd?$AA?4?$AA?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_1DC@OEGE@?$AAP?$AAe?$AAr?$AAf?$AAo?$AAr?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAw?$AAa?$AAr?$AAm?$AA?5?$AAr?$AAe?$AAs?$AAe@| [ DATA ] ; `string'
	EXPORT	|??_C@_06PBAG@ARMINT?$AA@| [ DATA ]	; `string'
	EXPORT	|??_C@_1EK@EPBI@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAE?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AA?$CI?$AA?$EA?$AA?5?$AAe@| [ DATA ] ; `string'
	EXPORT	|??_C@_1CG@LCDJ@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAD?$AAi?$AAs?$AAa?$AAb?$AAl?$AAe?$AA?$AN?$AA?6?$AA?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_1CE@PAIH@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAG?$AAe?$AAt?$AAP?$AAF?$AAN?$AA?$AN?$AA?6?$AA?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_1EG@IKKE@?$AAI?$AAO?$AAC?$AAT?$AAL?$AA_?$AAH?$AAA?$AAL?$AA_?$AAI?$AAL?$AAT?$AAI?$AAM?$AAI?$AAN?$AAG?$AA?3?$AA?5@| [ DATA ] ; `string'
	IMPORT	|NKDbgPrintfW|
	IMPORT	|EnterCriticalSection|
	IMPORT	|LeaveCriticalSection|
	IMPORT	|InitializeCriticalSection|
	IMPORT	|OEMRequestSysIntr|
	IMPORT	|OEMTranslateSysIntr|
	IMPORT	|OEMGetInterrupt|
	IMPORT	|VBridgeUGetOneTxPacket|
	IMPORT	|VBridgeUGetOneTxPacketComplete|
	IMPORT	|VBridgeUGetOneRxPacket|
	IMPORT	|VBridgeUGetOneRxPacketComplete|
	IMPORT	|VBridgeUGetEDBGMac|
	IMPORT	|VBridgeUCurrentPacketFilter|
	IMPORT	|VBridgeUWildCard|
	IMPORT	|INTERRUPTS_ENABLE|
	IMPORT	|SetKernelCommDev|
	IMPORT	|OEMSetRealTime|
	IMPORT	|gBoardInformation|
	IMPORT	|gBoardInformationValid|
	IMPORT	|OEMEthCurrentPacketFilter|
	IMPORT	|OEMEthMulticastList|
	IMPORT	|strlenW|
	IMPORT	|CreateDeviceName|
	IMPORT	|g_dwWakeIntMask|
	IMPORT	|PerfCountSinceTick|
	IMPORT	|PerfCountFreq|
	IMPORT	|memcpy|
	IMPORT	|memset|
; File d:\wince420\platform\ep931x\kernel\hal\oemioctl.c

  00000			 AREA	 |.text| { |OEMIoControl| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$OEMIoControl|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMIoControl| } ; comdat associative
|$T15101| DCD	|OEMIoControl|
	DCD	0x4002fd02

  00000			 AREA	 |.rdata| { |??_C@_1DC@OEGE@?$AAP?$AAe?$AAr?$AAf?$AAo?$AAr?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAw?$AAa?$AAr?$AAm?$AA?5?$AAr?$AAe?$AAs?$AAe@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1DC@OEGE@?$AAP?$AAe?$AAr?$AAf?$AAo?$AAr?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAw?$AAa?$AAr?$AAm?$AA?5?$AAr?$AAe?$AAs?$AAe@| DCB "P"
	DCB	0x0, "e", 0x0, "r", 0x0, "f", 0x0, "o", 0x0, "r", 0x0, "m"
	DCB	0x0, "i", 0x0, "n", 0x0, "g", 0x0, " ", 0x0, "w", 0x0, "a"
	DCB	0x0, "r", 0x0, "m", 0x0, " ", 0x0, "r", 0x0, "e", 0x0, "s"
	DCB	0x0, "e", 0x0, "t", 0x0, ".", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
	DCB	0x0					; `string'

  00000			 AREA	 |.rdata| { |??_C@_17MPOF@?$AAA?$AAR?$AAM?$AA?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_17MPOF@?$AAA?$AAR?$AAM?$AA?$AA@| DCB "A", 0x0, "R", 0x0, "M", 0x0, 0x0
	DCB	0x0					; `string'

  00000			 AREA	 |.rdata| { |??_C@_1BA@DNL@?$AAA?$AAR?$AAM?$AA9?$AA2?$AA0?$AAT?$AA?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1BA@DNL@?$AAA?$AAR?$AAM?$AA9?$AA2?$AA0?$AAT?$AA?$AA@| DCB "A", 0x0
	DCB	"R", 0x0, "M", 0x0, "9", 0x0, "2", 0x0, "0", 0x0, "T", 0x0
	DCB	0x0, 0x0				; `string'

  00000			 AREA	 |.rdata| { |??_C@_1BC@HAPB@?$AAA?$AAR?$AAM?$AA?5?$AAL?$AAt?$AAd?$AA?4?$AA?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1BC@HAPB@?$AAA?$AAR?$AAM?$AA?5?$AAL?$AAt?$AAd?$AA?4?$AA?$AA@| DCB "A"
	DCB	0x0, "R", 0x0, "M", 0x0, " ", 0x0, "L", 0x0, "t", 0x0, "d"
	DCB	0x0, ".", 0x0, 0x0, 0x0			; `string'

  00000			 AREA	 |.rdata| { |??_C@_06PBAG@ARMINT?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_06PBAG@ARMINT?$AA@| DCB "ARMINT", 0x0		; `string'

  00000			 AREA	 |.rdata| { |??_C@_1EG@IKKE@?$AAI?$AAO?$AAC?$AAT?$AAL?$AA_?$AAH?$AAA?$AAL?$AA_?$AAI?$AAL?$AAT?$AAI?$AAM?$AAI?$AAN?$AAG?$AA?3?$AA?5@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1EG@IKKE@?$AAI?$AAO?$AAC?$AAT?$AAL?$AA_?$AAH?$AAA?$AAL?$AA_?$AAI?$AAL?$AAT?$AAI?$AAM?$AAI?$AAN?$AAG?$AA?3?$AA?5@| DCB "I"
	DCB	0x0, "O", 0x0, "C", 0x0, "T", 0x0, "L", 0x0, "_", 0x0, "H"
	DCB	0x0, "A", 0x0, "L", 0x0, "_", 0x0, "I", 0x0, "L", 0x0, "T"
	DCB	0x0, "I", 0x0, "M", 0x0, "I", 0x0, "N", 0x0, "G", 0x0, ":"
	DCB	0x0, " ", 0x0, "B", 0x0, "A", 0x0, "D", 0x0, " ", 0x0, "M"
	DCB	0x0, "E", 0x0, "S", 0x0, "S", 0x0, "A", 0x0, "G", 0x0, "E"
	DCB	0x0, "!", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_1CE@PAIH@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAG?$AAe?$AAt?$AAP?$AAF?$AAN?$AA?$AN?$AA?6?$AA?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1CE@PAIH@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAG?$AAe?$AAt?$AAP?$AAF?$AAN?$AA?$AN?$AA?6?$AA?$AA@| DCB "I"
	DCB	0x0, "L", 0x0, "T", 0x0, "i", 0x0, "m", 0x0, "i", 0x0, "n"
	DCB	0x0, "g", 0x0, " ", 0x0, "G", 0x0, "e", 0x0, "t", 0x0, "P"
	DCB	0x0, "F", 0x0, "N", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_1CG@LCDJ@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAD?$AAi?$AAs?$AAa?$AAb?$AAl?$AAe?$AA?$AN?$AA?6?$AA?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1CG@LCDJ@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAD?$AAi?$AAs?$AAa?$AAb?$AAl?$AAe?$AA?$AN?$AA?6?$AA?$AA@| DCB "I"
	DCB	0x0, "L", 0x0, "T", 0x0, "i", 0x0, "m", 0x0, "i", 0x0, "n"
	DCB	0x0, "g", 0x0, " ", 0x0, "D", 0x0, "i", 0x0, "s", 0x0, "a"
	DCB	0x0, "b", 0x0, "l", 0x0, "e", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
	DCB	0x0					; `string'

  00000			 AREA	 |.rdata| { |??_C@_1EK@EPBI@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAE?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AA?$CI?$AA?$EA?$AA?5?$AAe@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1EK@EPBI@?$AAI?$AAL?$AAT?$AAi?$AAm?$AAi?$AAn?$AAg?$AA?5?$AAE?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AA?$CI?$AA?$EA?$AA?5?$AAe@| DCB "I"
	DCB	0x0, "L", 0x0, "T", 0x0, "i", 0x0, "m", 0x0, "i", 0x0, "n"
	DCB	0x0, "g", 0x0, " ", 0x0, "E", 0x0, "n", 0x0, "a", 0x0, "b"
	DCB	0x0, "l", 0x0, "e", 0x0, " ", 0x0, "(", 0x0, "@", 0x0, " "
	DCB	0x0, "e", 0x0, "v", 0x0, "e", 0x0, "r", 0x0, "y", 0x0, " "
	DCB	0x0, "%", 0x0, "d", 0x0, " ", 0x0, "t", 0x0, "i", 0x0, "c"
	DCB	0x0, "k", 0x0, "s", 0x0, ")", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
	DCB	0x0					; `string'
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |OEMIoControl| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |OEMIoControl| PROC

; 117  : {

  00000	e92d47f0	 stmdb     sp!, {r4 - r10, lr}
  00004	e24dd030	 sub       sp, sp, #0x30
  00008		 |$M15099|
  00008	e1a06000	 mov       r6, r0
  0000c	e1a09001	 mov       r9, r1
  00010	e1a05002	 mov       r5, r2
  00014	e1a08003	 mov       r8, r3

; 118  :     DWORD len;
; 119  :     PIP_INFO pIPInfo;
; 120  :     EDBG_ADDR *pEdbgAddr;
; 121  :     ULONG       ulTemp;
; 122  : 
; 123  : 
; 124  :     DEBUGMSG(0, (TEXT("+OEMIoControl %X\r\n"), dwIoControlCode));
; 125  : 
; 126  :     switch (dwIoControlCode)  {

  00018	e59f0bd0	 ldr       r0, [pc, #0xBD0]
  0001c	e3a07001	 mov       r7, #1
  00020	e1560000	 cmp       r6, r0
  00024	8a0001c8	 bhi       |$L15063|
  00028	0a0001bb	 beq       |$L14983|
  0002c	e59f0bb8	 ldr       r0, [pc, #0xBB8]
  00030	e1560000	 cmp       r6, r0
  00034	8a0000c1	 bhi       |$L15064|
  00038	0a00020b	 beq       |$L15001|
  0003c	e59f0ba4	 ldr       r0, [pc, #0xBA4]
  00040	e1560000	 cmp       r6, r0
  00044	0a000081	 beq       |$L14794|
  00048	e59f0b94	 ldr       r0, [pc, #0xB94]
  0004c	e1560000	 cmp       r6, r0
  00050	0a000051	 beq       |$L14858|
  00054	e59f0b84	 ldr       r0, [pc, #0xB84]
  00058	e1560000	 cmp       r6, r0
  0005c	0a000030	 beq       |$L14827|
  00060	e59f0b74	 ldr       r0, [pc, #0xB74]
  00064	e1560000	 cmp       r6, r0
  00068	0a000028	 beq       |$L14886|
  0006c	e59f0b64	 ldr       r0, [pc, #0xB64]
  00070	e1560000	 cmp       r6, r0
  00074	0a000010	 beq       |$L14889|
  00078	e59f0b54	 ldr       r0, [pc, #0xB54]
  0007c	e1560000	 cmp       r6, r0
  00080	1a000224	 bne       |$L15041|

; 315  :                 return(TRUE);
; 316  :             }
; 317  :         }
; 318  :         return(FALSE);
; 319  : 
; 320  :     case IOCTL_HAL_REBOOT:
; 321  :         //
; 322  :         // Perform a warm reset of the device.
; 323  :         //
; 324  :         RETAILMSG(1, (TEXT("Performing warm reset.\r\n")));

  00084	e59f0b44	 ldr       r0, [pc, #0xB44]
  00088	eb000000	 bl        NKDbgPrintfW

; 325  :         ulTemp = *CSC_DEVCFG;

  0008c	e59f4b38	 ldr       r4, [pc, #0xB38]

; 326  :         *CSC_SYSLOCK    = 0xAA;

  00090	e59f3b30	 ldr       r3, [pc, #0xB30]
  00094	e3a020aa	 mov       r2, #0xAA
  00098	e5941000	 ldr       r1, [r4]
  0009c	e5832000	 str       r2, [r3]

; 327  :         *CSC_DEVCFG     = ulTemp | DEVCFG_SWRST;

  000a0	e3810102	 orr       r0, r1, #2, 2
  000a4	e5840000	 str       r0, [r4]

; 328  :         *CSC_SYSLOCK    = 0xAA;
; 329  :         *CSC_DEVCFG     = ulTemp & ~DEVCFG_SWRST;

  000a8	e3c10102	 bic       r0, r1, #2, 2
  000ac	e5832000	 str       r2, [r3]
  000b0	e5840000	 str       r0, [r4]

; 620  :         return(FALSE);

  000b4	e3a00000	 mov       r0, #0
  000b8	ea00028f	 b         |$L14784|
  000bc		 |$L14889|

; 288  : 
; 289  :     case IOCTL_HAL_INIT_RTC:
; 290  :         if (!lpInBuf || !lpBytesReturned || (nInBufSize < sizeof(SYSTEMTIME)))

  000bc	e3590000	 cmp       r9, #0
  000c0	0a00000c	 beq       |$L14892|
  000c4	e59d4054	 ldr       r4, [sp, #0x54]
  000c8	e3540000	 cmp       r4, #0
  000cc	0a000009	 beq       |$L14892|
  000d0	e3550010	 cmp       r5, #0x10
  000d4	3a000007	 bcc       |$L14892|

; 293  :             return(FALSE);
; 294  :         }
; 295  : 
; 296  :         if (OEMSetRealTime((LPSYSTEMTIME)lpInBuf))

  000d8	e1a00009	 mov       r0, r9
  000dc	eb000000	 bl        OEMSetRealTime
  000e0	e3500000	 cmp       r0, #0
  000e4	0a000257	 beq       |$L14791|

; 297  :             *lpBytesReturned = sizeof(SYSTEMTIME);

  000e8	e3a00010	 mov       r0, #0x10
  000ec	e5840000	 str       r0, [r4]

; 631  :     }
; 632  : 
; 633  :     return(TRUE);

  000f0	e1a00007	 mov       r0, r7
  000f4	ea000280	 b         |$L14784|
  000f8		 |$L14892|

; 291  :         {
; 292  :             SetLastError( ERROR_INVALID_PARAMETER );

  000f8	e59f1a14	 ldr       r1, [pc, #0xA14]
  000fc	e3a00057	 mov       r0, #0x57
  00100	e1a0e00f	 mov       lr, pc
  00104	e12fff11	 bx        r1

; 620  :         return(FALSE);

  00108	e3a00000	 mov       r0, #0
  0010c	ea00027a	 b         |$L14784|
  00110		 |$L14886|

; 280  :         break;
; 281  : 
; 282  :     case IOCTL_SET_KERNEL_COMM_DEV:
; 283  :         //
; 284  :         // Routine to change underlying communications device for
; 285  :         // kernel services
; 286  :         //
; 287  :         return SetKernelCommDev((UCHAR)nInBufSize,(UCHAR)nOutBufSize);

  00110	e59d0050	 ldr       r0, [sp, #0x50]
  00114	e20010ff	 and       r1, r0, #0xFF
  00118	e20500ff	 and       r0, r5, #0xFF
  0011c	eb000000	 bl        SetKernelCommDev
  00120	ea000275	 b         |$L14784|
  00124		 |$L14827|

; 185  : 
; 186  :             return TRUE;
; 187  :         }
; 188  :         
; 189  :     case IOCTL_HAL_DDK_CALL:
; 190  :         if (!lpInBuf || (nInBufSize != sizeof(BUSDATA_PARMS)) || !lpBytesReturned)

  00124	e3590000	 cmp       r9, #0
  00128	0a000015	 beq       |$L14845|
  0012c	e3550020	 cmp       r5, #0x20
  00130	1a000013	 bne       |$L14845|
  00134	e59d0054	 ldr       r0, [sp, #0x54]
  00138	e3500000	 cmp       r0, #0
  0013c	0a000010	 beq       |$L14845|

; 193  :             return(FALSE);
; 194  :         }
; 195  : 
; 196  :         //
; 197  :         // I hope by setting the return code to zero fails the PCI bus configuration
; 198  :         // stuff.
; 199  :         //
; 200  :         if (*(DWORD *)lpInBuf == IOCTL_HAL_SETBUSDATA) 

  00140	e5990000	 ldr       r0, [r9]
  00144	e3500001	 cmp       r0, #1

; 201  :         {
; 202  :             ((PBUSDATA_PARMS)lpInBuf)->ReturnCode = 0;

  00148	03a01000	 moveq     r1, #0
  0014c	05891004	 streq     r1, [r9, #4]

; 629  :         
; 630  :         return TRUE;

  00150	03a00001	 moveq     r0, #1
  00154	0a000268	 beq       |$L14784|
  00158	e3500002	 cmp       r0, #2
  0015c	03a00000	 moveq     r0, #0
  00160	05890004	 streq     r0, [r9, #4]
  00164	03a00001	 moveq     r0, #1

⌨️ 快捷键说明

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