📄 display.s
字号:
DATA
DC16 6272, 8840, 8832, 8840, 8832, 3208, 3200, 8328, 8320, 9352, 9344
DC16 9352, 9344, 8840, 8832, 8840, 8832, 51528
SECTION `.rodata`:CONST:NOROOT(2)
TAB_DIV3:
DATA
DC16 2176, 8840, 8832, 648, 640, 5256, 5248, 8328, 8320, 8328, 8320
DC16 1160, 1152, 8840, 8832, 8840, 8832, 18760
SECTION `.rodata`:CONST:NOROOT(2)
TAB_DIV4:
DATA
DC16 2288, 1160, 1264, 3208, 3312, 5256, 5360, 15496, 15600, 15496
DC16 15600, 2184, 2288, 7304, 7408, 8840, 8944, 18760
SECTION `.rodata`:CONST:NOROOT(2)
TAB_DIV5:
DATA
DC16 2056, 2184, 2056, 648, 520, 9352, 9224, 648, 520, 8840, 8712, 2184
DC16 2056, 8840, 8712, 7816, 7688, 18760
SECTION `.rodata`:CONST:NOROOT(2)
TAB_DIV6:
DATA
DC16 2056, 4232, 4104, 648, 520, 16008, 15880, 648, 520, 8840, 8712
DC16 2184, 2056, 8840, 8712, 648, 520, 18760
SECTION `.rodata`:CONST:NOROOT(2)
TAB_DIV7:
DATA
DC16 2184, 8328, 8328, 8840, 8840, 1160, 1160, 8840, 8840, 8840, 8840
DC16 2184, 2184, 8840, 8840, 648, 648, 58928
SECTION `.rodata`:CONST:NOROOT(2)
TAB_DIV8:
DATA
DC16 7280, 15984, 15984, 7280, 7280, 3696, 3696, 7280, 7280, 7280, 7280
DC16 2160, 2160, 7280, 7280, 7280, 7280, 0
SECTION `.rodata`:CONST:NOROOT(2)
TAB_CHANNAL:
DATA
DC16 45794, 52930, 52648, 46528, 12602, 45794, 52930, 52648, 46528
DC16 12858, 45794, 52930, 52648, 46528, 13114, 45794, 52930, 52648
DC16 46528, 13370
SECTION `.rodata`:CONST:NOROOT(2)
SET_BELL:
DATA
DC16 45480, 48815, 52449, 51902, 54004, 14880
SECTION `.rodata`:CONST:NOROOT(2)
TAB_CHANNAL_NODE:
DATA
DC16 12609, 8224, 8224, 12610, 8224, 8224, 12611, 8224, 12865, 8224
DC16 8224, 12866, 8224, 8224, 12867, 8224, 13121, 8224, 8224, 13122
DC16 8224, 8224, 13123, 8224, 13377, 8224, 8224, 13378, 8224, 8224
DC16 13379, 8224, 13633, 8224, 8224, 13634, 8224, 8224, 13635, 8224
SECTION `.data`:DATA:NOROOT(2)
Init_TAB:
DATA
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4064, 32575, 8191, 57407
DC16 57345, 65024, 0, 0, 2032, 65087, 8191, 57599, 63489, 65024, 0, 0
DC16 1017, 64575, 8191, 57855, 64513, 65024, 0, 0, 1017, 64575, 8191
DC16 58367, 65027, 65280, 0, 0, 511, 63551, 252, 1016, 65027, 65280, 0
DC16 0, 255, 61503, 252, 2032, 32519, 65408, 0, 0, 127, 57407, 252
DC16 2016, 16135, 65408, 0, 0, 127, 57407, 252, 2016, 16135, 53120, 0
DC16 0, 63, 49215, 252, 2016, 16143, 53184, 0, 0, 31, 32831, 252, 2016
DC16 16143, 53184, 0, 0, 31, 32831, 252, 2016, 16143, 65472, 0, 0, 31
DC16 32831, 252, 2032, 32543, 65504, 0, 0, 31, 32831, 252, 1016, 65055
DC16 65504, 0, 0, 31, 32831, 252, 1023, 65087, 65520, 0, 0, 31, 32831
DC16 252, 511, 64575, 1008, 0, 0, 31, 32831, 252, 255, 63551, 1008, 0
DC16 0, 31, 32831, 252, 63, 57470, 504, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 54, 12492, 192, 25347, 6144
DC16 0, 0, 7, 65079, 47103, 40957, 64259, 55296, 0, 0, 1, 65079, 45260
DC16 8184, 26595, 56832, 0, 0, 30, 52479, 45104, 6360, 63078, 65280, 0
DC16 0, 15, 46647, 45566, 8188, 65487, 38912, 0, 0, 12, 12343, 45494
DC16 6361, 64262, 6144, 0, 0, 15, 65079, 45494, 8184, 13063, 65280, 0
DC16 0, 12, 63551, 47103, 39104, 16262, 6144, 0, 0, 29, 48359, 45176
DC16 8185, 63366, 6144, 0, 0, 15, 13837, 45260, 13848, 15558, 6144, 0
DC16 0, 12, 12344, 14215, 47096, 14438, 6144, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 0
SECTION `.data`:DATA:NOROOT(2)
ORDER_TAB:
DATA
DC16 0, 0, 0, 0, 0, 0, 0, 0, 3, 14336, 0, 0, 0, 0, 0, 0, 3, 16384, 0, 0
DC16 0, 0, 0, 0, 0, 16384, 0, 0, 0, 0, 0, 0, 0, 16384, 0, 0, 0, 0, 0, 0
DC16 0, 16384, 0, 0, 0, 0, 0, 0, 0, 14336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DC16 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 3584, 0, 0, 0, 0, 0, 0, 0
DC16 5376, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0
DC16 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0
DC16 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0
DC16 0, 0, 0, 0, 0, 0, 3072, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0
DC16 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024
DC16 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0
DC16 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0
DC16 1024, 0, 0, 0, 0, 0, 0, 0, 3072, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0
DC16 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0
DC16 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0
DC16 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0
DC16 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 3072, 0, 0, 0, 0, 0, 0, 0, 1024
DC16 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0
DC16 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0
DC16 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0
DC16 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 3072, 0, 0, 0, 0, 0, 0
DC16 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0
DC16 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0, 0, 0, 1024, 0, 0, 0, 0, 0
DC16 0, 0, 1024, 0, 0, 0, 0, 0, 0, 402, 1024, 0, 0, 0, 0, 0, 0, 594
DC16 1024, 0, 0, 0, 0, 0, 2, 594, 1024, 16388, 32, 512, 4097, 8, 65
DC16 414, 2047, 65535, 65535, 65535, 65535, 65535, 65535, 33362, 12288
DC16 16388, 32, 512, 4097, 8, 65, 594, 18432, 0, 0, 0, 0, 0, 2, 402
DC16 18432, 0, 0, 0, 0, 0, 0, 0, 18432, 0, 0, 0, 0, 0, 0, 0, 12288, 0
DC16 0, 0, 0, 0, 0, 0
SECTION `.XML`:CODE:NOROOT(2)
THUMB
LcdDataOut:
PUSH {R4,LR}
MOVS R4,R0
MOVS R0,R4
MOVS R2,#+1
ANDS R2,R2,R0
MOVS R1,#+4096
LDR.N R0,??LcdDataOut_0 ;; 0x40010c00
BL GPIO_WriteBit
MOVS R0,R4
MOVS R2,#+2
ANDS R2,R2,R0
MOVS R1,#+8192
LDR.N R0,??LcdDataOut_0 ;; 0x40010c00
BL GPIO_WriteBit
MOVS R0,R4
MOVS R2,#+4
ANDS R2,R2,R0
MOVS R1,#+16384
LDR.N R0,??LcdDataOut_0 ;; 0x40010c00
BL GPIO_WriteBit
MOVS R0,R4
MOVS R2,#+8
ANDS R2,R2,R0
MOVS R1,#+32768
LDR.N R0,??LcdDataOut_0 ;; 0x40010c00
BL GPIO_WriteBit
MOVS R0,R4
MOVS R2,#+16
ANDS R2,R2,R0
MOVS R1,#+64
LDR.N R0,??LcdDataOut_0+0x4 ;; 0x40011000
BL GPIO_WriteBit
MOVS R0,R4
MOVS R2,#+32
ANDS R2,R2,R0
MOVS R1,#+128
LDR.N R0,??LcdDataOut_0+0x4 ;; 0x40011000
BL GPIO_WriteBit
MOVS R0,R4
MOVS R2,#+64
ANDS R2,R2,R0
MOVS R1,#+256
LDR.N R0,??LcdDataOut_0+0x4 ;; 0x40011000
BL GPIO_WriteBit
MOVS R0,R4
MOVS R2,#+128
ANDS R2,R2,R0
MOVS R1,#+512
LDR.N R0,??LcdDataOut_0+0x4 ;; 0x40011000
BL GPIO_WriteBit
POP {R4,PC} ;; return
Nop
DATA
??LcdDataOut_0:
DC32 0x40010c00
DC32 0x40011000
SECTION `.XML`:CODE:NOROOT(2)
THUMB
LCMCmd:
PUSH {R4,LR}
MOVS R4,R0
UXTB R4,R4 ;; ZeroExtS R4,R4,#+24,#+24
MOVS R0,R4
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
BL LcdDataOut
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
MVNS R1,#+2048
ANDS R1,R1,R0
LDR.N R0,??DataTable27 ;; 0x4001080c
STR R1,[R0, #+0]
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
MVNS R1,#+4096
ANDS R1,R1,R0
LDR.N R0,??DataTable27 ;; 0x4001080c
STR R1,[R0, #+0]
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
MVNS R1,#+256
ANDS R1,R1,R0
LDR.N R0,??DataTable27 ;; 0x4001080c
STR R1,[R0, #+0]
MOVS R0,#+18
BL delay
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x1000
LDR.N R1,??DataTable27 ;; 0x4001080c
STR R0,[R1, #+0]
MOVS R0,#+9
BL delay_nop
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
MVNS R1,#+4096
ANDS R1,R1,R0
LDR.N R0,??DataTable27 ;; 0x4001080c
STR R1,[R0, #+0]
MOVS R0,#+5
BL delay_nop
POP {R4,PC} ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
LCMData:
PUSH {R4,LR}
MOVS R4,R0
UXTB R4,R4 ;; ZeroExtS R4,R4,#+24,#+24
MOVS R0,R4
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
BL LcdDataOut
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
MVNS R1,#+2048
ANDS R1,R1,R0
LDR.N R0,??DataTable27 ;; 0x4001080c
STR R1,[R0, #+0]
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
MVNS R1,#+4096
ANDS R1,R1,R0
LDR.N R0,??DataTable27 ;; 0x4001080c
STR R1,[R0, #+0]
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x100
LDR.N R1,??DataTable27 ;; 0x4001080c
STR R0,[R1, #+0]
MOVS R0,#+15
BL delay
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x1000
LDR.N R1,??DataTable27 ;; 0x4001080c
STR R0,[R1, #+0]
MOVS R0,#+5
BL delay
LDR.N R0,??DataTable27 ;; 0x4001080c
LDR R0,[R0, #+0]
MVNS R1,#+4096
ANDS R1,R1,R0
LDR.N R0,??DataTable27 ;; 0x4001080c
STR R1,[R0, #+0]
MOVS R0,#+5
BL delay
POP {R4,PC} ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
WriteChar:
PUSH {R4-R6,LR}
MOVS R4,R0
MOVS R5,R1
MOVS R6,R2
MOVS R0,#+48
BL LCMCmd
MOVS R0,R4
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMCmd
??WriteChar_0:
UXTB R5,R5 ;; ZeroExtS R5,R5,#+24,#+24
CMP R5,#+1
BCC.N ??WriteChar_1
LDRH R0,[R6, #+0]
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
LSRS R0,R0,#+8
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMData
LDRH R0,[R6, #+0]
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMData
ADDS R6,R6,#+2
SUBS R5,R5,#+1
B.N ??WriteChar_0
??WriteChar_1:
POP {R4-R6,PC} ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
WriteOneChar:
PUSH {R4-R6,LR}
MOVS R4,R0
MOVS R5,R1
MOVS R6,R2
MOVS R0,#+48
BL LCMCmd
MOVS R0,R4
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMCmd
UXTB R6,R6 ;; ZeroExtS R6,R6,#+24,#+24
CMP R6,#+0
BEQ.N ??WriteOneChar_0
MOVS R0,R5
LSLS R0,R0,#+28 ;; ZeroExtS R0,R0,#+28,#+28
LSRS R0,R0,#+28
MOVS R6,R0
UXTH R5,R5 ;; ZeroExtS R5,R5,#+16,#+16
LSRS R5,R5,#+4
LSLS R5,R5,#+28 ;; ZeroExtS R5,R5,#+28,#+28
LSRS R5,R5,#+28
UXTH R5,R5 ;; ZeroExtS R5,R5,#+16,#+16
LDR.N R0,??DataTable21 ;; ASCII_TAB
LDRB R0,[R0, R5]
BL LCMData
UXTB R6,R6 ;; ZeroExtS R6,R6,#+24,#+24
LDR.N R0,??DataTable21 ;; ASCII_TAB
LDRB R0,[R0, R6]
BL LCMData
B.N ??WriteOneChar_1
??WriteOneChar_0:
UXTH R5,R5 ;; ZeroExtS R5,R5,#+16,#+16
MOVS R0,#+256
SDIV R0,R5,R0
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMData
MOVS R0,R5
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMData
??WriteOneChar_1:
POP {R4-R6,PC} ;; return
SECTION `.XML`:CODE:NOROOT(2)
DATA
??DataTable21:
DC32 ASCII_TAB
SECTION `.XML`:CODE:NOROOT(2)
THUMB
WriteASCIIChar:
PUSH {R0,R4-R7,LR}
MOVS R4,R0
MOVS R5,R1
MOVS R6,R2
MOVS R7,R3
MOVS R0,#+48
BL LCMCmd
MOVS R0,R4
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMCmd
MOVS R0,R5
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMData
MOVS R0,R6
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL LCMData
ADD SP,SP,#+4
POP {R4-R7,PC} ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
initLCDM:
PUSH {R0,LR}
LDR.N R0,??initLCDM_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ANDS R0,R0,#0xDF
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -