Código:
include "x.inc"
include "w760.lib.asm"
;W760 RE3F001
;Selection Style, Mode GUI, Softkeys and ManagementCalls in CallsMenu
;-Style Menu -> Style 1/Style 2/Style 3/Style 4
;-Mode GUI -> Fullscreen/Normalscreen/ActivityStyleMenu
;-Softkeys -> Hide/Show
;-Managent Calls (shortcut)
;-Is Added information in items Style Menu, Mode GUI and Softkeys
;-Is Added automatically refreshes the page
;-Is added state of the currently selected element is updated
;-Is added you can not select the item that is currently used
;Choose a "Style Menu", "Mode GUI" and "Sofkeys" here: Calls -> Options
;(!) Not includes "tab Call Logger" in calls
;(!) Should edit LNG file:
;
;0x1A3- "Style Menu"
;0x1A4- "Style 1"
;0x1A5- "Style 2"
;0x1A6- "Style 3"
;0x1A7- "Style 4"
;0x1A8- "MODE GUI"
;0x1A9- "ActivityMenuStyle"
;0x1AA- "Softkeys"
;0x1AB- "Hide"
;0x1AD- "Show"
;0x1AE- "Softkeys Hide/Show in calls"
;0x1C1- "This element is already in use."
;0x1C2- "Choose a Style Menu for the Calls."
;0x1C3- "Select the display mode for the Calls."
;
;V. 3
;(c) Antoniomun
;(p) josthyn05
org 0x10BF5152 ; 14E3B0EE
LDR R3, off_14E3B0F4
BLX R3
align 4
off_14E3B0F4 DCD loc_15DCCE3C+1
org 0x10BF50EA ; 14E3B086
LDR R3, off_14E3B08C
BLX R3
align 4
off_14E3B08C DCD body+1
org 0x10BF50D2 ; 14E3B06E
LDR R3, off_14E3B074
BLX R3
align 4
off_14E3B074 DCD loc_15DCCDEC+1
org 0x12842480
body:
LDR R0, [R5]
MOV R1, 0
BL sub_15DCD384
BL sub_15DCD1B0
CMP R0, 1
BEQ loc_15DCCDB2
BL sub_15DCD1BA
CMP R0, 1
BEQ loc_15DCCDB6
BL sub_15DCD1C4
CMP R0, 1
BEQ loc_15DCCDBA
B loc_15DCCDBC
loc_15DCCDB2:
MOV R1, 4
B loc_15DCCDBC
loc_15DCCDB6:
MOV R1, 1
B loc_15DCCDBC
loc_15DCCDBA:
MOV R1, 9
loc_15DCCDBC:
LSL R0, R5, 0
LDR R0, [R5]
BL sub_15DCD374
BL sub_15DCD1F6
CMP R0, 1
BEQ loc_15DCCDD4
BL sub_15DCD200
CMP R0, 1
BEQ loc_15DCCDDC
loc_15DCCDD4:
LDR R0, [R5]
BL sub_15DCD3E4
B loc_15DCCDE2
loc_15DCCDDC:
LDR R0, [R5]
BL sub_15DCD3EC
loc_15DCCDE2:
LDR R3, off_15DCCDE8
BX R3
align 4
off_15DCCDE8 dw 0x10BF50FA+1 ; 14E3B096+1
loc_15DCCDEC:
LDR R1, off_15DCD0E8
LSL R0, R7, 4
ADD R0, R1, R0
STR R0, [SP,0]
LDR R1, [R0,8]
LDR R0, [R5]
BL sub_15DCD38C
BL sub_15DCD1CE
CMP R0, 1
BEQ loc_15DCCE1E
BL sub_15DCD1D8
CMP R0, 1
BEQ loc_15DCCE22
BL sub_15DCD1E2
CMP R0, 1
BEQ loc_15DCCE26
BL sub_15DCD1EC
CMP R0, 1
BEQ loc_15DCCE2A
B loc_15DCCE2C
loc_15DCCE1E:
MOV R1, 3
B loc_15DCCE2C
loc_15DCCE22:
MOV R1, 2
B loc_15DCCE2C
loc_15DCCE26:
MOV R1, 1
B loc_15DCCE2C
loc_15DCCE2A:
MOV R1, 0
loc_15DCCE2C:
LSL R0, R5, 0
LDR R0, [R5]
BL sub_15DCD37C
LDR R3, off_15DCCE38
BX R3
off_15DCCE38 dw 0x10BF50EA+1 ; 14E3B086+1
loc_15DCCE3C:
LDR R0, [R5]
ADD R4, 0xBE
LDRH R2, [R4]
ADD R1, R7, 0
BL sub_15DCD39C
LDR R0, [R5]
LDR R2, dword_15DCD0F4
MOV R1, 0xF1
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF1
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD0F8
MOV R1, 0xF1
BL sub_15DCD364
adr R2, loc_15DCD134
ADD R2, 1
MOV R1, 0xF2
LDR R0, [R5]
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD0FC
MOV R1, 0xF2
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF1
MOV R2, 0xF2
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1CE
CMP R0, 0
BEQ loc_15DCCEA2
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xF2
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xF2
MOV R2, 0
BL sub_15DCD3DC
loc_15DCCEA2:
adr R2, loc_15DCD140
ADD R2, 1
MOV R1, 0xF3
LDR R0, [R5]
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD100
MOV R1, 0xF3
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF1
MOV R2, 0xF3
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1D8
CMP R0, 0
BEQ loc_15DCCEE0
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xF3
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xF3
MOV R2, 0
BL sub_15DCD3DC
loc_15DCCEE0:
adr R2, loc_15DCD14C
ADD R2, 1
MOV R1, 0xF4
LDR R0, [R5]
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD104
MOV R1, 0xF4
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF1
MOV R2, 0xF4
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1E2
CMP R0, 0
BEQ loc_15DCCF1E
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xF4
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xF4
MOV R2, 0
BL sub_15DCD3DC
loc_15DCCF1E:
adr R2, loc_15DCD158
ADD R2, 1
MOV R1, 0xF5
LDR R0, [R5]
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD108
MOV R1, 0xF5
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF1
MOV R2, 0xF5
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1EC
CMP R0, 0
BEQ loc_15DCCF5C
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xF5
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xF5
MOV R2, 0
BL sub_15DCD3DC
loc_15DCCF5C:
LDR R0, [R5]
LDR R2, dword_15DCD10C
MOV R1, 0xF6
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF6
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD110
MOV R1, 0xF6
BL sub_15DCD364
adr R2, loc_15DCD164
ADD R2, 1
MOV R1, 0xF7
LDR R0, [R5]
BL sub_15DCD3B4
LDR R2, dword_15DCD114
MOV R1, 0xF7
LDR R0, [R5]
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF6
MOV R2, 0xF7
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1B0
CMP R0, 0
BEQ loc_15DCCFB6
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xF7
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xF7
MOV R2, 0
BL sub_15DCD3DC
loc_15DCCFB6:
adr R2, loc_15DCD170
ADD R2, 1
MOV R1, 0xF8
LDR R0, [R5]
BL sub_15DCD3B4
LDR R2, dword_15DCD118
MOV R1, 0xF8
LDR R0, [R5]
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF6
MOV R2, 0xF8
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1BA
CMP R0, 0
BEQ loc_15DCCFF4
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xF8
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xF8
MOV R2, 0
BL sub_15DCD3DC
loc_15DCCFF4:
adr R2, loc_15DCD17C
ADD R2, 1
MOV R1, 0xF9
LDR R0, [R5]
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD11C
MOV R1, 0xF9
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xF6
MOV R2, 0xF9
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1C4
CMP R0, 0
BEQ loc_15DCD032
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xF9
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xF9
MOV R2, 0
BL sub_15DCD3DC
loc_15DCD032:
LDR R0, [R5]
LDR R2, dword_15DCD124
MOV R1, 0xFA
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xFA
BL sub_15DCD3B4
LDR R0, [R5]
LDR R2, dword_15DCD128
MOV R1, 0xFA
BL sub_15DCD364
adr R2, loc_15DCD188
ADD R2, 1
MOV R1, 0xFB
LDR R0, [R5]
BL sub_15DCD3B4
LDR R2, dword_15DCD12C
MOV R1, 0xFB
LDR R0, [R5]
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xFA
MOV R2, 0xFB
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD1F6
CMP R0, 0
BEQ loc_15DCD08C
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xFB
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xFB
MOV R2, 0
BL sub_15DCD3DC
loc_15DCD08C:
adr R2, loc_15DCD194
ADD R2, 1
MOV R1, 0xFC
LDR R0, [R5]
BL sub_15DCD3B4
LDR R2, dword_15DCD130
MOV R1, 0xFC
LDR R0, [R5]
BL sub_15DCD3BC
LDR R0, [R5]
MOV R1, 0xFA
MOV R2, 0xFC
BL sub_15DCD3C4
LDR R0, [R5]
BL sub_15DCD200
CMP R0, 0
BEQ loc_15DCD0CA
LDR R0, [R5]
LDR R2, dword_15DCD120
MOV R1, 0xFC
BL sub_15DCD364
LDR R0, [R5]
MOV R1, 0xFC
MOV R2, 0
BL sub_15DCD3DC
loc_15DCD0CA:
LDR R0, [R5]
LDR R2, dword_15DCD0F0
MOV R1, 0xFD
BL sub_15DCD3BC
LDR R0, [R5]
LDR R2, off_15DCD0EC
MOV R1, 0xFD
BL sub_15DCD3B4
LDR R3, off_15DCD0E4
BX R3
align 4
off_15DCD0E4 dw 0x10BF515E+1 ; 14E3B0FA+1
off_15DCD0E8 dw 0x11C0B490 ; 15A4C6E0
off_15DCD0EC dw loc_15DCD1A6+1
dword_15DCD0F0 dw 0x1375 ; 11AC
dword_15DCD0F4 dw 0x1A3 ; 297E
dword_15DCD0F8 dw 0x1C2 ; 297C
dword_15DCD0FC dw 0x1A4 ; 401
dword_15DCD100 dw 0x1A5 ; 402
dword_15DCD104 dw 0x1A6 ; 403
dword_15DCD108 dw 0x1A7 ; 404
dword_15DCD10C dw 0x1A8 ; 408
dword_15DCD110 dw 0x1C3 ; 297D
dword_15DCD114 dw 0x5A5 ; 2399
dword_15DCD118 dw 0xAAF ; 23B1
dword_15DCD11C dw 0x1A9 ; 2978
dword_15DCD120 dw 0x1C1 ; 409
dword_15DCD124 dw 0x1AA ; 297F
dword_15DCD128 dw 0x1AE ; 2980
dword_15DCD12C dw 0x1AB ; 2981
dword_15DCD130 dw 0x1AD ; 2982
loc_15DCD134:
PUSH {R4,LR}
LSL R4, R0, 0
BL sub_15DCD2C8
B loc_15DCD19C
align 4
loc_15DCD140:
PUSH {R4,LR}
LSL R4, R0, 0
BL loc_15DCD2D8
B loc_15DCD19C
align 4
loc_15DCD14C:
PUSH {R4,LR}
LSL R4, R0, 0
BL loc_15DCD2E8
B loc_15DCD19C
align 4
loc_15DCD158:
PUSH {R4,LR}
LSL R4, R0, 0
BL loc_15DCD2F8
B loc_15DCD19C
align 4
loc_15DCD164:
PUSH {R4,LR}
LSL R4, R0, 0
BL sub_15DCD298
B loc_15DCD19C
align 4
loc_15DCD170:
PUSH {R4,LR}
LSL R4, R0, 0
BL sub_15DCD2A8
B loc_15DCD19C
align 4
loc_15DCD17C:
PUSH {R4,LR}
LSL R4, R0, 0
BL sub_15DCD2B8
B loc_15DCD19C
align 4
loc_15DCD188:
PUSH {R4,LR}
LSL R4, R0, 0
BL loc_15DCD308
B loc_15DCD19C
align 4
loc_15DCD194:
PUSH {R4,LR}
LSL R4, R0, 0
BL loc_15DCD318
loc_15DCD19C:
LDR R1, off_15DCD360
LSL R0, R4, 0
BL sub_15DCD3D4
POP {R4,PC}
loc_15DCD1A6:
PUSH {R0-R7,LR}
adr R0, aCalls_manageca
BL sub_15DCD3CC
POP {R0-R7,PC}
sub_15DCD1B0:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD338
B loc_15DCD208
sub_15DCD1BA:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD33C
B loc_15DCD208
sub_15DCD1C4:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD350
B loc_15DCD208
sub_15DCD1CE:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD340
B loc_15DCD208
sub_15DCD1D8:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD344
B loc_15DCD208
sub_15DCD1E2:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD348
B loc_15DCD208
sub_15DCD1EC:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD34C
B loc_15DCD208
sub_15DCD1F6:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD354
B loc_15DCD208
sub_15DCD200:
PUSH {R1,R2,LR}
LDR R0, dword_15DCD35C
MOV R2, 0
adr R1, dword_15DCD358
loc_15DCD208:
BL sub_15DCD36C
BMI loc_15DCD212
MOV R0, 1
B loc_15DCD214
loc_15DCD212:
MOV R0, 0
loc_15DCD214:
POP {R1,R2,PC}
align 4
sub_15DCD218:
PUSH {LR}
BL sub_15DCD260
BL sub_15DCD268
BL sub_15DCD270
BL sub_15DCD278
POP {PC}
sub_15DCD22C:
PUSH {LR}
BL sub_15DCD248
BL sub_15DCD250
BL sub_15DCD258
POP {PC}
sub_15DCD23C:
PUSH {LR}
BL loc_15DCD280
BL loc_15DCD288
POP {PC}
sub_15DCD248:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD338
B loc_15DCD28E
sub_15DCD250:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD33C
B loc_15DCD28E
sub_15DCD258:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD350
B loc_15DCD28E
sub_15DCD260:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD340
B loc_15DCD28E
sub_15DCD268:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD344
B loc_15DCD28E
sub_15DCD270:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD348
B loc_15DCD28E
sub_15DCD278:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD34C
B loc_15DCD28E
loc_15DCD280:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD354
B loc_15DCD28E
loc_15DCD288:
PUSH {R0-R7,LR}
LDR R0, dword_15DCD35C
adr R1, dword_15DCD358
loc_15DCD28E:
MOV R2, 0
BL sub_15DCD394
POP {R0-R7,PC}
align 4
sub_15DCD298:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD22C
LDR R0, dword_15DCD35C
adr R1, dword_15DCD338
B loc_15DCD326
sub_15DCD2A8:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD22C
LDR R0, dword_15DCD35C
adr R1, dword_15DCD33C
B loc_15DCD326
sub_15DCD2B8:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD22C
LDR R0, dword_15DCD35C
adr R1, dword_15DCD350
B loc_15DCD326
sub_15DCD2C8:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD218
LDR R0, dword_15DCD35C
adr R1, dword_15DCD340
B loc_15DCD326
loc_15DCD2D8:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD218
LDR R0, dword_15DCD35C
adr R1, dword_15DCD344
B loc_15DCD326
loc_15DCD2E8:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD218
LDR R0, dword_15DCD35C
adr R1, dword_15DCD348
B loc_15DCD326
loc_15DCD2F8:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD218
LDR R0, dword_15DCD35C
adr R1, dword_15DCD34C
B loc_15DCD326
loc_15DCD308:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD23C
LDR R0, dword_15DCD35C
adr R1, dword_15DCD354
B loc_15DCD326
loc_15DCD318:
PUSH {R0-R7,LR}
MOV R0, 0
PUSH {R0}
BL sub_15DCD23C
LDR R0, dword_15DCD35C
adr R1, dword_15DCD358
loc_15DCD326:
MOV R2, 4
MOV R3, 0xFF
ADD R3, 0x81
BL sub_15DCD3A4
BL sub_15DCD3AC
ADD SP, SP, 4
POP {R0-R7,PC}
dword_15DCD338 dw 0x4D
dword_15DCD33C dw 0x4E
dword_15DCD340 dw 0x4F
dword_15DCD344 dw 0x50
dword_15DCD348 dw 0x51
dword_15DCD34C dw 0x52
dword_15DCD350 dw 0x53
dword_15DCD354 dw 0x54
dword_15DCD358 dw 0x55
dword_15DCD35C dw 0x11E4AC18 ; 15AFABA4
off_15DCD360 dw 0x11C0B510 ; page_PB_UI_CallList_ShowLists
sub_15DCD364:
LDR R3, off_15DCD368
BX R3
off_15DCD368 dw GUIObject_SoftKeys_SetInfoText+1
sub_15DCD36C:
LDR R3, off_15DCD370
BX R3
off_15DCD370 dw fstat+1
sub_15DCD374:
LDR R3, off_15DCD378
BX R3
off_15DCD378 dw GUIObject_SetStyle+1
sub_15DCD37C:
LDR R3, off_15DCD380
BX R3
off_15DCD380 dw ListMenu_SetItemStyle+1
sub_15DCD384:
LDR R3, off_15DCD388
BX R3
off_15DCD388 dw ListMenu_SetHotkeyMode+1
sub_15DCD38C:
LDR R3, off_15DCD390
BX R3
off_15DCD390 dw GUIObject_SetTitleText+1
sub_15DCD394:
LDR R5, off_15DCD398
BX R5
off_15DCD398 dw FileDelete+1
sub_15DCD39C:
LDR R3, off_15DCD3A0
BX R3
off_15DCD3A0 dw 0x10BF53A0+1 ; 14E3B228+1
sub_15DCD3A4:
LDR R5, off_15DCD3A8
BX R5
off_15DCD3A8 dw _fopen+1
sub_15DCD3AC:
LDR R5, off_15DCD3B0
BX R5
off_15DCD3B0 dw 0x109F4760+1 ; 144827E8+1
sub_15DCD3B4:
LDR R3, off_15DCD3B8
BX R3
off_15DCD3B8 dw GUIObject_SoftKeys_SetAction+1
sub_15DCD3BC:
LDR R3, off_15DCD3C0
BX R3
off_15DCD3C0 dw GUIObject_SoftKeys_SetText+1
sub_15DCD3C4:
LDR R3, off_15DCD3C8
BX R3
off_15DCD3C8 dw GUIObject_SoftKeys_SetItemAsSubItem+1
sub_15DCD3CC:
LDR R3, off_15DCD3D0
BX R3
off_15DCD3D0 dw Shortcut_Run+1
sub_15DCD3D4:
LDR R3, off_15DCD3D8
BX R3
off_15DCD3D8 dw BookObj_GotoPage+1
sub_15DCD3DC:
LDR R3, off_15DCD3E0
BX R3
off_15DCD3E0 dw GUIObject_SoftKeys_SetEnable+1
sub_15DCD3E4:
LDR R3, off_15DCD3E8
BX R3
off_15DCD3E8 dw GUIObject_SoftKeys_Hide+1
sub_15DCD3EC:
LDR R3, off_15DCD3F0
BX R3
off_15DCD3F0 dw GUIObject_SoftKeys_Show+1
aCalls_manageca du "Calls_ManageCalls_Id",0
Marcadores