Advertisement
Guest User

Untitled

a guest
Aug 18th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;W595 R3EF001
  2. ;Ability to show/hide Statusrow
  3. ;Phone will restart automatically to load changes
  4. ;(c) blacklizard
  5. ;(p) Thilina
  6. ;v.fix
  7. ;<element id="StatusROW_Set_Id">
  8. ;<label type="name"><text>Statusrow</text></label>
  9. ;<link type="internal" />
  10. ;</element>
  11.  
  12. include "x.inc"
  13. include "lib_r3ef.asm"
  14.  
  15. sub_1175E930 = 0x1177079C
  16. loc_114DFFE8 = 0x114F2990
  17. sub_10F46140 = 0x10F61E3C
  18. sub_125DCAD8 = 0x12631BB8
  19. loc_10DBE3D8 = 0x10DDA6AC
  20. sub_10DBE398 = 0x10DDA66C
  21. align 4
  22. hook1 = 0x11770D50
  23. hook2 = 0x11B8470C
  24. body  = 0x127876D0
  25.  
  26. org hook1
  27. dw loc_126A48B4+1
  28.  
  29. org hook2
  30. dw aStatusrow_set_
  31. dw loc_126A4A70+1
  32.  
  33. org body
  34. sub_126A4880:  
  35.         PUSH    {R4,LR}
  36.         MOV R1, 0
  37.         MOV R3, 5
  38.         LSL R4, R0, 0
  39.         adr R0, loc_126A48B0
  40.         PUSH    {R0,R1}
  41.         MOV R2, 1
  42.         LSL R1, R4, 0
  43.         MOV R0, 0
  44.         MVN R0, R0
  45.         BL  sub_126A4AA0
  46.         POP {R2-R4,PC}
  47.         LSL R0, R0, 0
  48.  
  49. sub_126A489C:  
  50.         PUSH    {LR}
  51.         CMP R0, 0
  52.         BEQ locret_126A48AE
  53.         MOV R3, 0
  54.         adr R2, loc_126A48B0
  55.         LSL R1, R0, 0
  56.         MOV R0, 0
  57.         BL  sub_126A4AB0
  58.  
  59. locret_126A48AE:   
  60.         POP {PC}
  61.  
  62.  
  63. loc_126A48B0:  
  64.         STR R4, [R4,0x24]
  65.         LSL R0, R0, 0
  66.        
  67. loc_126A48B4:  
  68.         PUSH    {R4-R7,LR} 
  69.         LSL R4, R0, 0
  70.         LDR R0, off_126A4A0C
  71.         SUB SP, SP, 0x28
  72.         LSL R5, R1, 0
  73.         LSL R6, R2, 0
  74.         LSL R7, R3, 0
  75.         MOV R1, SP
  76.         BL  sub_126A4AC0
  77.         CMP R0, 0
  78.         BMI loc_126A48D0
  79.         MOV R0, 0
  80.         B   loc_126A48DC
  81.  
  82. loc_126A48D0:  
  83.         LSL R3, R7, 0
  84.         LSL R2, R6, 0
  85.         LSL R1, R5, 0
  86.         LSL R0, R4, 0
  87.         BL  sub_126A4AC8
  88.  
  89. loc_126A48DC:  
  90.         ADD SP, SP, 0x28
  91.         POP {R4-R7,PC}
  92.  
  93. loc_126A48E0:  
  94.         PUSH    {R4,LR}
  95.         LSL R4, R0, 0
  96.         BL  sub_126A4AD8
  97.         CMP R0, 1
  98.         BNE loc_126A490A
  99.         LSL R0, R4, 0
  100.         BL  sub_126A4AE0
  101.         CMP R0, 0
  102.         BEQ loc_126A48FE
  103.  
  104. loc_126A48F6:  
  105.         MOVL    R1, 0x2600
  106.         ADD R1, 0x46
  107.         B   loc_126A4904
  108.  
  109. loc_126A48FE:  
  110.         MOVL    R1, 0xA00
  111.         ADD R1, 0x84
  112.  
  113. loc_126A4904:  
  114.         LSL R0, R4, 0
  115.         BL  sub_126A4AE8
  116.  
  117. loc_126A490A:  
  118.         MOV R0, 1
  119.         POP {R4,PC}
  120.         LSL R0, R0, 0
  121.  
  122. loc_126A4910:  
  123.         PUSH    {R4,LR}
  124.         LSL R4, R0, 0
  125.         LSL R0, R1, 0
  126.         BL  sub_126A4AF0
  127.         LSL R0, R4, 0
  128.         BL  sub_126A4AF8
  129.         POP {R4,PC}
  130.         LSL R0, R0, 0
  131.  
  132. loc_126A4924:  
  133.         PUSH    {R4,LR}
  134.         SUB SP, SP, 0x2C
  135.         LDR R4, off_126A4A0C
  136.         LSL R0, R1, 0
  137.         BL  sub_126A4B00
  138.         CMP R0, 0
  139.         BNE loc_126A4950
  140.         ADD R1, SP, 4
  141.         LSL R0, R4, 0
  142.         BL  sub_126A4AC0
  143.         CMP R0, 0
  144.         BMI loc_126A4972
  145.         MOV R2, SP
  146.         LSL R1, R4, 0
  147.         ADD R1, 0x68
  148.         ADD R4, 0x3C
  149.         LSL R0, R4, 0
  150.         BL  sub_126A4B08
  151.         B   loc_126A4972
  152.  
  153.  
  154. loc_126A4950:  
  155.         CMP R0, 1
  156.         BNE loc_126A4976
  157.         MOV R3, 0
  158.         MOVL    R2, 0x180
  159.         MOV R1, 8
  160.         LSL R0, R4, 0
  161.         BL  sub_126A4B18
  162.         LSL R4, R0, 0
  163.         MOV R2, 2
  164.         adr R1, loc_126A497C
  165.         BL  sub_126A4B28
  166.         LSL R0, R4, 0
  167.         BL  sub_126A4B30
  168.  
  169. loc_126A4972:  
  170.  
  171.         BL  sub_126A4B10
  172.  
  173. loc_126A4976:  
  174.         ADD SP, SP, 0x2C
  175.         POP {R4,PC}
  176.  
  177.         NOP
  178.  
  179. loc_126A497C:  
  180.         LSL R1, R6, 0
  181.         LSL R0, R0, 0
  182.  
  183. loc_126A4980:
  184.         PUSH    {R4,R5,LR}
  185.         LDR R5, off_126A4A0C
  186.         SUB SP, SP, 0x28
  187.         LSL R0, R1, 0
  188.         BL  sub_126A4B38
  189.         LSL R4, R0, 0
  190.         MOV R2, 0x28
  191.         MOV R1, 0
  192.         LSL R0, R5, 0
  193.         ADD R0, 0x7C
  194.         BL  sub_126A4B40
  195.         LSL R1, R0, 0
  196.         LSL R0, R4, 0
  197.         BL  sub_126A4B48
  198.         MOV R1, 2
  199.         LSL R0, R4, 0
  200.         BL  sub_126A4B50
  201.         LDR R1, off_126A49F8
  202.         LSL R0, R4, 0
  203.         BL  sub_126A4B58
  204.         MOV R1, SP
  205.         LSL R0, R5, 0
  206.         BL  sub_126A4AC0
  207.         CMP R0, 0
  208.         BMI loc_126A49C2
  209.         MOV R1, 1
  210.         B   loc_126A49C4
  211.  
  212.  
  213. loc_126A49C2:  
  214.         MOV R1, 0
  215.  
  216. loc_126A49C4:  
  217.         LSL R0, R4, 0
  218.         BL  sub_126A4B60
  219.         LDR R5, off_126A49FC
  220.         LDR R2, off_126A4A00
  221.         MOVL    R1, 0xFC0
  222.         LSL R0, R4, 0
  223.         BL  sub_126A4B68
  224.         LDR R1, dword_126A4A04
  225.         LSL R2, R5, 0
  226.         LSL R0, R4, 0
  227.         BL  sub_126A4B68
  228.         LDR R1, dword_126A4A08
  229.         LSL R2, R5, 0
  230.         LSL R0, R4, 0
  231.         BL  sub_126A4B68
  232.         LSL R0, R4, 0
  233.         BL  sub_126A4B70
  234.         MOV R0, 1
  235.         ADD SP, SP, 0x28
  236.         POP {R4,R5,PC}
  237.  
  238. off_126A49F8    dw loc_126A48E0+1  
  239. off_126A49FC    dw loc_126A4924+1  
  240. off_126A4A00    dw loc_126A4910+1  
  241. dword_126A4A04  dw 0xFC2       
  242. dword_126A4A08  dw 0xBC3       
  243. off_126A4A0C    dw aTpaSystemSet_0 
  244.  
  245. loc_126A4A10:
  246.         PUSH    {LR}
  247.         LSL R0, R1, 0
  248.         BL  sub_126A4AF8
  249.         MOV R0, 1
  250.         POP {PC}
  251.  
  252. loc_126A4A1C:  
  253.         ;PUSH   {LR}
  254.         ;BL sub_126A4AF8
  255.         ;POP    {PC}
  256. bx lr      
  257.        
  258. align 4
  259. sub_126A4A24:  
  260.         PUSH    {R4,R5,LR}
  261.         LDR R5, off_126A4A68
  262.         MOV R0, 0x18
  263.         BL  sub_126A4880
  264.         LSL R4, R0, 0
  265.         MOV R2, 0x18
  266.         MOV R1, 0
  267.         BL  sub_126A4B78
  268.         MOV R1, 0
  269.         MOV R0, 0
  270.         MVN R0, R0
  271.         PUSH    {R0,R1}
  272.         LSL R3, R5, 0
  273.         LDR R1, off_126A4A6C
  274.         LSL R2, R5, 0
  275.         ADD R2, 0x10
  276.         LSL R0, R4, 0
  277.         BL  sub_126A4B80
  278.         ADD SP, SP, 8
  279.         CMP R0, 0
  280.         BNE loc_126A4A5C
  281.         LSL R0, R4, 0
  282.         BL  sub_126A489C
  283.         POP {R4,R5,PC}
  284.  
  285. loc_126A4A5C:  
  286.         ADD R5, 0x1C
  287.         LSL R1, R5, 0
  288.         LSL R0, R4, 0
  289.         BL  sub_126A4B90
  290.         POP {R4,R5,PC}
  291. off_126A4A68    dw aStatusrow_book 
  292.  
  293. off_126A4A6C    dw loc_126A4A1C+1  
  294.  
  295. loc_126A4A70:
  296.         PUSH    {R4,LR}    
  297.         LSL R4, R0, 0
  298.         BL  sub_126A4B98
  299.         CMP R0, 0
  300.         BEQ loc_126A4A82
  301.         CMP R0, 1
  302.         BEQ loc_126A4A88
  303.         POP {R4,PC}
  304.  
  305. loc_126A4A82:  
  306.         BL  sub_126A4A24
  307.         POP {R4,PC}
  308.  
  309. loc_126A4A88:  
  310.         LDR R0, off_126A4A9C
  311.         MOV R2, 0x28
  312.         MOV R1, 0
  313.         BL  sub_126A4B40
  314.         LSL R1, R0, 0
  315.         LSL R0, R4, 0
  316.         BL  sub_126A4BA0
  317.         POP {R4,PC}
  318. off_126A4A9C    dw aShowHideStatus 
  319.  
  320. sub_126A4AA0:  
  321.         PUSH    {R3}
  322.         LDR R3, dword_126A4AAC
  323.         MOV R12, R3
  324.         POP {R3}
  325.         BX  R12
  326.         NOP
  327. dword_126A4AAC  dw 0x4BB00584      
  328.  
  329. sub_126A4AB0:  
  330.         PUSH    {R3}
  331.         LDR R3, dword_126A4ABC
  332.         MOV R12, R3
  333.         POP {R3}
  334.         BX  R12
  335.         NOP
  336. dword_126A4ABC  dw 0x4BB005AC      
  337.  
  338. sub_126A4AC0:  
  339.         LDR R3, off_126A4AC4
  340.         BX  R3     
  341. off_126A4AC4    dw w_fstat     
  342.  
  343. sub_126A4AC8:  
  344.         PUSH    {R3}
  345.         LDR R3, off_126A4AD4
  346.         MOV R12, R3
  347.         POP {R3}
  348.         BX  R12
  349.         NOP
  350. off_126A4AD4    dw sub_1175E930+1  
  351.  
  352. sub_126A4AD8:  
  353.         LDR R3, off_126A4ADC
  354.         BX  R3     
  355. off_126A4ADC    dw GUIonMessage_GetMsg
  356.  
  357. sub_126A4AE0:  
  358.         LDR R3, off_126A4AE4
  359.         BX  R3     
  360. off_126A4AE4    dw GUIonMessage_GetCreatedItemIndex
  361.  
  362. sub_126A4AE8:  
  363.         LDR R3, off_126A4AEC
  364.         BX  R3     
  365. off_126A4AEC    dw GUIonMessage_SetMenuItemText
  366.  
  367. sub_126A4AF0:  
  368.         LDR R3, off_126A4AF4
  369.         BX  R3     
  370. off_126A4AF4    dw GUIObject_Destroy   
  371.  
  372. sub_126A4AF8:  
  373.         LDR R3, off_126A4AFC
  374.         BX  R3     
  375. off_126A4AFC    dw FreeBook    
  376.  
  377. sub_126A4B00:  
  378.         LDR R3, off_126A4B04
  379.         BX  R3     
  380. off_126A4B04    dw ListMenu_GetSelectedItem
  381.  
  382. sub_126A4B08:  
  383.         LDR R3, off_126A4B0C
  384.         BX  R3     
  385. off_126A4B0C    dw FileDelete  
  386.  
  387. sub_126A4B10:  
  388.         LDR R3, off_126A4B14
  389.         BX  R3
  390. off_126A4B14    dw loc_114DFFE8+1  
  391.  
  392. sub_126A4B18:  
  393.         PUSH    {R3}
  394.         LDR R3, off_126A4B24
  395.         MOV R12, R3
  396.         POP {R3}
  397.         BX  R12    
  398.         NOP
  399. off_126A4B24    dw w_fopen     
  400.  
  401. sub_126A4B28:  
  402.         LDR R3, off_126A4B2C
  403.         BX  R3     
  404. off_126A4B2C    dw w_fwrite    
  405.  
  406. sub_126A4B30:  
  407.         LDR R3, off_126A4B34
  408.         BX  R3     
  409. off_126A4B34    dw w_fclose    
  410.  
  411. sub_126A4B38:  
  412.         LDR R3, off_126A4B3C
  413.         BX  R3     
  414. off_126A4B3C    dw CreateOneOfMany 
  415.  
  416. sub_126A4B40:  
  417.         LDR R3, off_126A4B44
  418.         BX  R3
  419. off_126A4B44    dw sub_10F46140+1  
  420.  
  421. sub_126A4B48:  
  422.         LDR R3, off_126A4B4C
  423.         BX  R3     
  424. off_126A4B4C    dw GUIObject_SetTitleText
  425.  
  426. sub_126A4B50:  
  427.         LDR R3, off_126A4B54
  428.         BX  R3     
  429. off_126A4B54    dw OneOfMany_SetItemCount
  430.  
  431. sub_126A4B58:  
  432.         LDR R3, off_126A4B5C
  433.         BX  R3     
  434. off_126A4B5C    dw OneOfMany_SetOnMessage
  435.  
  436. sub_126A4B60:  
  437.         LDR R3, off_126A4B64
  438.         BX  R3     
  439. off_126A4B64    dw OneOfMany_SetChecked
  440.  
  441. sub_126A4B68:  
  442.         LDR R3, off_126A4B6C
  443.         BX  R3     
  444. off_126A4B6C    dw GUIObject_SoftKeys_SetAction
  445.  
  446. sub_126A4B70:  
  447.         LDR R3, off_126A4B74
  448.         BX  R3     
  449. off_126A4B74    dw GUIObject_Show
  450.  
  451. sub_126A4B78:  
  452.         LDR R3, off_126A4B7C
  453.         BX  R3
  454. off_126A4B7C    dw sub_125DCAD8
  455.  
  456. sub_126A4B80:  
  457.         PUSH    {R3}
  458.         LDR R3, off_126A4B8C
  459.         MOV R12, R3
  460.         POP {R3}
  461.         BX  R12    
  462.         NOP
  463. off_126A4B8C    dw CreateBook  
  464.  
  465. sub_126A4B90:  
  466.         LDR R3, off_126A4B94
  467.         BX  R3 
  468. off_126A4B94    dw BookObj_GotoPage
  469.  
  470. sub_126A4B98:  
  471.         LDR R3, off_126A4B9C
  472.         BX  R3
  473. off_126A4B9C    dw loc_10DBE3D8+1  
  474.  
  475. sub_126A4BA0:  
  476.         LDR R3, off_126A4BA4
  477.         BX  R3
  478. off_126A4BA4    dw sub_10DBE398+1
  479.    
  480. aStatusrow_base db "StatusRow_Base_Page",0
  481. aStatusrow_main db "StatusRow_Main_Page",0
  482. aStatusrow_set_ du  "StatusROW_Set_Id",0   
  483.         db    0
  484.         db    0
  485. aTpaSystemSet_0 du  "/tpa/system/settings/SRow.bin",0
  486. aTpaSystemSet_1 du  "/tpa/system/settings/",0
  487. aSrow_bin   du  "SRow.bin",0
  488.         db    0
  489.         db    0
  490. aStatusrow  du  "Statusrow",0
  491. aStatusrow_book db "StatusRow_Book",0  
  492.         db    0
  493.         dw aStatusrow_base 
  494.         dw 0
  495.         dw dword_126A4CE0
  496.         dw aStatusrow_main 
  497.         dw 0
  498.         dw dword_126A4CF8
  499. aShowHideStatus    du    "Show/Hide Statusbar",0
  500.  
  501. dword_126A4CE0  dw 4
  502.         dw loc_126A4A10+1
  503.         dw 0x840
  504.         dw loc_126A4A10+1
  505.         dw 0
  506.         dw 0
  507. dword_126A4CF8  dw 0xF
  508.         dw loc_126A4980+1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement