📄 dashboard.txt
字号:
|L5.160|
0000a0 00000000 DCD ||.data||
|L5.164|
0000a4 00000000 DCD ||.bss||
AREA ||i._SetDialogGrad||, CODE, READONLY, ALIGN=2
_SetDialogGrad PROC
;;;6362 */
;;;6363 static void _SetDialogGrad(int Scale) {
000000 b538 PUSH {r3-r5,lr}
;;;6364 _InitDialog = 1;
000002 4d28 LDR r5,|L6.164|
000004 2101 MOVS r1,#1
;;;6365 _SetSlider(_hDialogGrad, GUI_ID_SLIDER0, 0, 80, _Scale[Scale].GradDist);
000006 6169 STR r1,[r5,#0x14] ; _InitDialog
000008 212f MOVS r1,#0x2f
00000a 4348 MULS r0,r1,r0
00000c 4926 LDR r1,|L6.168|
00000e 2200 MOVS r2,#0
000010 eb01eb01 ADD r4,r1,r0,LSL #2
000014 f854f854 LDR r3,[r4,#0x38]!
000018 9300 STR r3,[sp,#0]
00001a 2350 MOVS r3,#0x50
00001c f44ff44f MOV r1,#0x130
000020 f9b5f9b5 LDRSH r0,[r5,#0xa] ; _hDialogGrad
000024 f7fff7ff BL _SetSlider
;;;6366 _SetSlider(_hDialogGrad, GUI_ID_SLIDER1, 1, 20, _Scale[Scale].NumStep);
000028 69a3 LDR r3,[r4,#0x18]
00002a 9300 STR r3,[sp,#0]
00002c 2314 MOVS r3,#0x14
00002e 2201 MOVS r2,#1
000030 f240f240 MOV r1,#0x131
000034 f9b5f9b5 LDRSH r0,[r5,#0xa] ; _hDialogGrad
000038 f7fff7ff BL _SetSlider
;;;6367 _SetSlider(_hDialogGrad, GUI_ID_SLIDER2, 0, 9, _Scale[Scale].NumStart);
00003c 69e3 LDR r3,[r4,#0x1c]
00003e 9300 STR r3,[sp,#0]
000040 2309 MOVS r3,#9
000042 2200 MOVS r2,#0
000044 f44ff44f MOV r1,#0x132
000048 f9b5f9b5 LDRSH r0,[r5,#0xa] ; _hDialogGrad
00004c f7fff7ff BL _SetSlider
;;;6368 _SetSlider(_hDialogGrad, GUI_ID_SLIDER3, 0, 3, _Scale[Scale].NumExp);
000050 6a23 LDR r3,[r4,#0x20]
000052 9300 STR r3,[sp,#0]
000054 2303 MOVS r3,#3
000056 2200 MOVS r2,#0
000058 f240f240 MOV r1,#0x133
00005c f9b5f9b5 LDRSH r0,[r5,#0xa] ; _hDialogGrad
000060 f7fff7ff BL _SetSlider
;;;6369 _SetSlider(_hDialogGrad, GUI_ID_SLIDER4, -90, 90, _Scale[Scale].TextDist);
000064 6b63 LDR r3,[r4,#0x34]
000066 9300 STR r3,[sp,#0]
000068 235a MOVS r3,#0x5a
00006a 425a RSBS r2,r3,#0
00006c f44ff44f MOV r1,#0x134
000070 f9b5f9b5 LDRSH r0,[r5,#0xa] ; _hDialogGrad
000074 f7fff7ff BL _SetSlider
;;;6370 _SetCheckbox(_hDialogGrad, GUI_ID_USER + 0, _Scale[Scale].Flags & (1 << FLAG_SHOW_GRAD));
000078 8f20 LDRH r0,[r4,#0x38]
00007a f44ff44f MOV r1,#0x800
00007e f000f000 AND r2,r0,#4
000082 f9b5f9b5 LDRSH r0,[r5,#0xa] ; _hDialogGrad
000086 f7fff7ff BL _SetCheckbox
;;;6371 _SetCheckbox(_hDialogGrad, GUI_ID_USER + 1, _Scale[Scale].Flags & (1 << FLAG_SHOW_TEXT));
00008a 8f20 LDRH r0,[r4,#0x38]
00008c f640f640 MOV r1,#0x801
000090 f400f400 AND r2,r0,#0x100
000094 f9b5f9b5 LDRSH r0,[r5,#0xa] ; _hDialogGrad
000098 f7fff7ff BL _SetCheckbox
;;;6372 _InitDialog = 0;
00009c 2000 MOVS r0,#0
;;;6373 }
00009e 6168 STR r0,[r5,#0x14] ; _InitDialog
0000a0 bd38 POP {r3-r5,pc}
;;;6374
ENDP
0000a2 0000 DCW 0x0000
|L6.164|
0000a4 00000000 DCD ||.data||
|L6.168|
0000a8 00000000 DCD ||.bss||
AREA ||i._SetDialogScale||, CODE, READONLY, ALIGN=2
_SetDialogScale PROC
;;;6378 */
;;;6379 static void _SetDialogScale(int Scale) {
000000 e92de92d PUSH {r3-r9,lr}
;;;6380 _InitDialog = 1;
000004 4d26 LDR r5,|L7.160|
000006 2101 MOVS r1,#1
;;;6381 _SetSlider(_hDialogScale, GUI_ID_SLIDER0, 0, 360, _Scale[Scale].ArcStart);
000008 6169 STR r1,[r5,#0x14] ; _InitDialog
00000a 212f MOVS r1,#0x2f
00000c 4348 MULS r0,r1,r0
00000e 4f25 LDR r7,|L7.164|
000010 4606 MOV r6,r0
000012 eb07eb07 ADD r4,r7,r0,LSL #2
000016 6923 LDR r3,[r4,#0x10]
000018 9300 STR r3,[sp,#0]
00001a f44ff44f MOV r8,#0x168
00001e 4643 MOV r3,r8
000020 2200 MOVS r2,#0
000022 f44ff44f MOV r1,#0x130
000026 f9b5f9b5 LDRSH r0,[r5,#0xc] ; _hDialogScale
00002a f7fff7ff BL _SetSlider
;;;6382 _SetSlider(_hDialogScale, GUI_ID_SLIDER1, 0, 360, _Scale[Scale].ArcEnd);
00002e 6963 LDR r3,[r4,#0x14]
000030 9300 STR r3,[sp,#0]
000032 4643 MOV r3,r8
000034 2200 MOVS r2,#0
000036 f240f240 MOV r1,#0x131
00003a f9b5f9b5 LDRSH r0,[r5,#0xc] ; _hDialogScale
00003e f7fff7ff BL _SetSlider
;;;6383 _SetSlider(_hDialogScale, GUI_ID_SLIDER2, 35, 160, _Scale[Scale].ArcRadius);
000042 69a3 LDR r3,[r4,#0x18]
000044 9300 STR r3,[sp,#0]
000046 23a0 MOVS r3,#0xa0
000048 2223 MOVS r2,#0x23
00004a f44ff44f MOV r1,#0x132
00004e f9b5f9b5 LDRSH r0,[r5,#0xc] ; _hDialogScale
000052 f7fff7ff BL _SetSlider
;;;6384 _SetSlider(_hDialogScale, GUI_ID_SLIDER3, 0, 639, _Scale[Scale].x);
000056 f857f857 LDR r3,[r7,r6,LSL #2]
00005a 9300 STR r3,[sp,#0]
00005c f240f240 MOV r3,#0x27f
000060 2200 MOVS r2,#0
000062 f240f240 MOV r1,#0x133
000066 f9b5f9b5 LDRSH r0,[r5,#0xc] ; _hDialogScale
00006a f7fff7ff BL _SetSlider
;;;6385 _SetSlider(_hDialogScale, GUI_ID_SLIDER4, 0, 479, _Scale[Scale].y);
00006e 6863 LDR r3,[r4,#4]
000070 9300 STR r3,[sp,#0]
000072 f240f240 MOV r3,#0x1df
000076 2200 MOVS r2,#0
000078 f44ff44f MOV r1,#0x134
00007c f9b5f9b5 LDRSH r0,[r5,#0xc] ; _hDialogScale
000080 f7fff7ff BL _SetSlider
;;;6386 _SetCheckbox(_hDialogScale, GUI_ID_USER, _Scale[Scale].Flags & (1 << FLAG_SHOW_SCALE));
000084 f8b4f8b4 LDRH r0,[r4,#0x70]
000088 f44ff44f MOV r1,#0x800
00008c f400f400 AND r2,r0,#0x200
000090 f9b5f9b5 LDRSH r0,[r5,#0xc] ; _hDialogScale
000094 f7fff7ff BL _SetCheckbox
;;;6387 _InitDialog = 0;
000098 2000 MOVS r0,#0
;;;6388 }
00009a 6168 STR r0,[r5,#0x14] ; _InitDialog
00009c e8bde8bd POP {r3-r9,pc}
;;;6389
ENDP
|L7.160|
0000a0 00000000 DCD ||.data||
|L7.164|
0000a4 00000000 DCD ||.bss||
AREA ||i._SetDialogMisc||, CODE, READONLY, ALIGN=2
_SetDialogMisc PROC
;;;6393 */
;;;6394 static void _SetDialogMisc(int Scale) {
000000 b538 PUSH {r3-r5,lr}
;;;6395 _InitDialog = 1;
000002 4d1e LDR r5,|L8.124|
000004 2101 MOVS r1,#1
;;;6396 _SetSlider(_hDialogMisc, GUI_ID_SLIDER0, 0, 4, _Scale[Scale].NeedleType);
000006 6169 STR r1,[r5,#0x14] ; _InitDialog
000008 212f MOVS r1,#0x2f
00000a 4348 MULS r0,r1,r0
00000c 491c LDR r1,|L8.128|
00000e 2200 MOVS r2,#0
000010 eb01eb01 ADD r4,r1,r0,LSL #2
000014 f854f854 LDR r3,[r4,#0x48]!
000018 9300 STR r3,[sp,#0]
00001a 2304 MOVS r3,#4
00001c f44ff44f MOV r1,#0x130
000020 f9b5f9b5 LDRSH r0,[r5,#0xe] ; _hDialogMisc
000024 f7fff7ff BL _SetSlider
;;;6397 _SetSlider(_hDialogMisc, GUI_ID_SLIDER1, 50, 100, _Scale[Scale].NeedleRadius);
000028 6863 LDR r3,[r4,#4]
00002a 9300 STR r3,[sp,#0]
00002c 2364 MOVS r3,#0x64
00002e 2232 MOVS r2,#0x32
000030 f240f240 MOV r1,#0x131
000034 f9b5f9b5 LDRSH r0,[r5,#0xe] ; _hDialogMisc
000038 f7fff7ff BL _SetSlider
;;;6398 _SetSlider(_hDialogMisc, GUI_ID_SLIDER2, 10, 60, _Scale[Scale].AxisRadius);
00003c 6a23 LDR r3,[r4,#0x20]
00003e 9300 STR r3,[sp,#0]
000040 233c MOVS r3,#0x3c
000042 220a MOVS r2,#0xa
000044 f44ff44f MOV r1,#0x132
000048 f9b5f9b5 LDRSH r0,[r5,#0xe] ; _hDialogMisc
00004c f7fff7ff BL _SetSlider
;;;6399 _SetCheckbox(_hDialogMisc, GUI_ID_USER + 0, _Scale[Scale].Flags & (1 << FLAG_NEEDLE_FRAME));
000050 8d20 LDRH r0,[r4,#0x28]
000052 f44ff44f MOV r1,#0x800
000056 f400f400 AND r2,r0,#0x400
00005a f9b5f9b5 LDRSH r0,[r5,#0xe] ; _hDialogMisc
00005e f7fff7ff BL _SetCheckbox
;;;6400 _SetCheckbox(_hDialogMisc, GUI_ID_USER + 1, _Scale[Scale].Flags & (1 << FLAG_NEEDLE_LINE));
000062 8d20 LDRH r0,[r4,#0x28]
000064 f640f640 MOV r1,#0x801
000068 f400f400 AND r2,r0,#0x800
00006c f9b5f9b5 LDRSH r0,[r5,#0xe] ; _hDialogMisc
000070 f7fff7ff BL _SetCheckbox
;;;6401 _InitDialog = 0;
000074 2000 MOVS r0,#0
;;;6402 }
000076 6168 STR r0,[r5,#0x14] ; _InitDialog
000078 bd38 POP {r3-r5,pc}
;;;6403
ENDP
00007a 0000 DCW 0x0000
|L8.124|
00007c 00000000 DCD ||.data||
|L8.128|
000080 00000000 DCD ||.bss||
AREA ||i._SetDialogs||, CODE, READONLY, ALIGN=1
_SetDialogs PROC
;;;6407 */
;;;6408 static void _SetDialogs(int Scale) {
000000 b510 PUSH {r4,lr}
000002 4604 MOV r4,r0
;;;6409 _SetDialogColor(Scale);
000004 f7fff7ff BL _SetDialogColor
;;;6410 _SetDialogMark(Scale);
000008 4620 MOV r0,r4
00000a f7fff7ff BL _SetDialogMark
;;;6411 _SetDialogPitch(Scale);
00000e 4620 MOV r0,r4
000010 f7fff7ff BL _SetDialogPitch
;;;6412 _SetDialogArc(Scale);
000014 4620 MOV r0,r4
000016 f7fff7ff BL _SetDialogArc
;;;6413 _SetDialogGrad(Scale);
00001a 4620 MOV r0,r4
00001c f7fff7ff BL _SetDialogGrad
;;;6414 _SetDialogScale(Scale);
000020 4620 MOV r0,r4
000022 f7fff7ff BL _SetDialogScale
;;;6415 _SetDialogMisc(Scale);
000026 4620 MOV r0,r4
000028 e8bde8bd POP {r4,lr}
00002c f7fff7ff B.W _SetDialogMisc
;;;6416 }
;;;6417
ENDP
AREA ||i._CalcNeedle||, CODE, READONLY, ALIGN=2
_CalcNeedle PROC
;;;6445 */
;;;6446 static int _CalcNeedle(const SCALE* pObj, int Index, int Radius) {
000000 e92de92d PUSH {r4-r10,lr}
000004 4681 MOV r9,r0
000006 460c MOV r4,r1
000008 4617 MOV r7,r2
;;;6447 int NumPoints, Shape;
;;;6448 float Angel;
;;;6449 Shape = pObj->NeedleType;
;;;6450 NumPoints = GUI_COUNTOF(_aNeedleSrc[Shape]);
00000a 2605 MOVS r6,#5
;;;6451 Angel = -((pObj->ArcStart * PI) + (_GetArcLen(pObj) * _Needle[Index].NeedlePos * PI) / NEEDLE_GRAD) / 180;
00000c 6c85 LDR r5,[r0,#0x48]
00000e f7fff7ff BL _GetArcLen
000012 492e LDR r1,|L10.204|
000014 eb01eb01 ADD r1,r1,r4,LSL #4
000018 6809 LDR r1,[r1,#0]
00001a 4348 MULS r0,r1,r0
00001c f7fff7ff BL __aeabi_i2d
000020 a42b ADR r4,|L10.208|
000022 e9d4e9d4 LDRD r2,r3,[r4,#0]
000026 f7fff7ff BL __aeabi_dmul
00002a a22b ADR r2,|L10.216|
00002c ca0c LDM r2,{r2,r3}
00002e f7fff7ff BL __aeabi_ddiv
000032 4680 MOV r8,r0
000034 468a MOV r10,r1
000036 f8d9f8d9 LDR r0,[r9,#0x10]
00003a f7fff7ff BL __aeabi_i2d
00003e cc0c LDM r4!,{r2,r3}
000040 f7fff7ff BL __aeabi_dmul
000044 4653 MOV r3,r10
000046 4642 MOV r2,r8
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -