E71.RU E71.RU
Добро пожаловать, Гость! [ ИнфоБлокОбновленияУчастникиПравилаПоискFAQ-ЧаВо ] Регистрация недоступна • Вход RSS
Пятница, 04.10.2024
1 терапевт - это 1024 гигапевта или 1048576 мегапевтов.
  • Страница 1 из 1
  • 1
Модератор форума: Maggot  
want to fix "MP refresher sound.dis"
loquatДата: Четверг, 06.05.2010, 21:25 | Сообщение # 1
Подполковник
Имя: loquat
С нами с: 26.03.2010
Сообщений: 115
Награды: 1
Модель телефона: S7Cv47&SK6Cv50
Статус: Offline
code is here
Code
ROM:A0000020 00 B5                       PUSH    {LR}
ROM:A0000022 1C 48                      LDR     R0, =0xAD03
ROM:A0000024 C4 DF                      SWI     0xC4
ROM:A0000026 0D D0                      BEQ     loc_A0000044

ROM:A0000028 07 1C                      ADD     R7, R0, #0   
ROM:A000002A 78 7B                      LDRB    R0, [R7,#0xD]  //[color=red]why does it select R7 to store "{13 cb...}"?Can we use R4 or R5?[/color]
ROM:A000002C 00 28                      CMP     R0, #0
ROM:A000002E 09 D0                      BEQ     loc_A0000044
ROM:A0000030 0F A1                      ADR     R1, RefresherRune ; "Refresher runed!"  //[color=red]R1 lgp_id[/color]
ROM:A0000032 01 20                      MOV     R0, #1    // [color=red]R0 flag?if I do "MOV R0, #0" means there will be no flag.^_^[/color]
ROM:A0000034 C7 DF                      SWI     0xC7  
ROM:A0000036 48 01                      LSL     R0, R1, #5  //call lib function 0x148 extern int ShowMSG(int flag, int lgp_id)

ROM:A0000038 38 1C                      ADD     R0, R7, #0  //[color=red]So what does R7 store now after ShowMSG?[/color]
ROM:A000003A 10 30                      ADD     R0, #0x10  // [color=red]*htimer   where does pointer point at?[/color]
ROM:A000003C 08 49                      LDR     R1, =0x64  //long ms
ROM:A000003E 02 A2                      ADR     R2, loc_A0000048
ROM:A0000040 01 32                      ADD     R2, #14     //void ptr() what is 0x14?
ROM:A0000042 4D DF                      SWI     0x4D  //GBS_StartTimerProc(void *htimer, long ms, void ptr())
ROM:A0000044             loc_A0000044     
ROM:A0000044 00 BD                      POP     {PC}
ROM:A0000046 C0 46                      NOP

ROM:A0000048             loc_A0000048               
ROM:A0000048 00 B5                      PUSH    {LR}
ROM:A000004A 12 48                      LDR     R0, =0xAD03
ROM:A000004C C4 DF                      SWI     0xC4
ROM:A000004E F9 D0                      BEQ     loc_A0000044  // why not BEQ loc_A000005C?
ROM:A0000050 07 1C                      ADD     R7, R0, #0

ROM:A0000052 78 78                      LDRB    R0, [R7,#1]
ROM:A0000054 B9 78                      LDRB    R1, [R7,#2]
ROM:A0000056 3A 89                      LDRH    R2, [R7,#8]  //LDRH,but not LDRB.>_<,I think I need read books about ARM for more times.
ROM:A0000058 3B 7B                      LDRB    R3, [R7,#0xC]
ROM:A000005A 98 DF                      SWI     0x98  //PlaySoundVibra(char SndNum, char VibraPower, unsigned int VibraDuration, char VibraIfOff)

ROM:A000005C 00 BD                      POP     {PC}
ROM:A000005E C0 46                      NOP

ROM:A0000060 64 00 00 00 dword_A0000060 DCD 0x64 //[color=red]what is this?[/color]

ROM:A0000070
                          RefresherRune  
                    DCB "Refresher runed!",

and cfg file here.

Code
{p=`MP refresher sound` id=AD03 cp=`-=(Kad)=-` ver=1.1}
{sm `Sound settings`}
{1 h `Sound` v=0}
{2 b `Frequency` v=10}
{8 ms `Duration` v=133}
{12 cb `Play if vibra off` v=1}
{endsm}
{13 cb `Show message` v=1}

Now if we do not select the checkbox "Show message",the "sound settings" will be ineffective.
I want to change it to that in which the 2nd checkbox does not affect PlayVibraSound,that to say whether value of checkbox 13 is 0 or 1,the Sound settings works.

Having understood half code below.But do not kown how to fix.


Table-tennis,volleyball,swimming
Good good study,day day up.
Lifting my head I watched the brignt moon,Lowering my head I dreamed that I'm home.
 
loquatДата: Вторник, 11.05.2010, 21:29 | Сообщение # 2
Подполковник
Имя: loquat
С нами с: 26.03.2010
Сообщений: 115
Награды: 1
Модель телефона: S7Cv47&SK6Cv50
Статус: Offline
Quote

ROM:A1304004 sub_A1304004 ; DATA XREF: ROM:off_A1304448o
ROM:A1304004 70 40 2D E9 STMFD SP!, {R4-R6,LR}
ROM:A1304008 F8 62 9F E5 LDR R6, =0xA8D80250
ROM:A130400C 00 40 A0 E1 MOV R4, R0
ROM:A1304010 01 00 A0 E3 MOV R0, #1
ROM:A1304014 2E 01 00 EF SWI 0x12E //GetPaletteAdrByColorIndex_2(int ColorIndex)
ROM:A1304018 00 50 A0 E1 MOV R5, R0
ROM:A130401C 00 00 A0 E3 MOV R0, #0
ROM:A1304020 2E 01 00 EF SWI 0x12E
ROM:A1304024 20 00 2D E9 STMFD SP!, {R5}
ROM:A1304028 01 00 2D E9 STMFD SP!, {R0}
ROM:A130402C DC 30 A0 E3 MOV R3, #0xDC //Y2 220
ROM:A1304030 EB 20 A0 E3 MOV R2, #0xEB //X2 235
ROM:A1304034 64 10 A0 E3 MOV R1, #0x64 //Y2 100
ROM:A1304038 00 00 A0 E3 MOV R0, #0 //X1 0
ROM:A130403C 01 00 2D E9 STMFD SP!, {R0}
ROM:A1304040 01 00 2D E9 STMFD SP!, {R0}
ROM:A1304044 01 00 2D E9 STMFD SP!, {R0}
ROM:A1304048 00 50 A0 E3 MOV R5, #0
ROM:A130404C 05 00 A0 E3 MOV R0, #5 //X1 5
ROM:A1304050 50 01 00 EF SWI 0x150 //DrawRoundedFrame(int x1,int y1,int x2,int y2,int x_round,int y_round,int flags,int *pen,int *brush)
R0 is x1.but here what does R0 - R3 get when we do SWI 0x150?
ROM:A1304054 38 00 94 E5 LDR R0, [R4,#0x38]
ROM:A1304058 00 10 A0 E3 MOV R1, #0
ROM:A130405C 26 01 00 EF SWI 0x126 //CutWSTR(void *WSHDR,int len)
ROM:A1304060 14 D0 8D E2 ADD SP, SP, #0x14
ROM:A1304064 03 00 00 EA B loc_A1304078
ROM:A1304064
ROM:A1304068 ; ---------------------------------------------------------------------------
ROM:A1304068
ROM:A1304068 loc_A1304068 ; CODE XREF: sub_A1304004+7Cj
ROM:A1304068 38 00 94 E5 LDR R0, [R4,#0x38]
ROM:A130406C 2A 10 A0 E3 MOV R1, #0x2A
ROM:A1304070 1C 00 00 EF SWI 0x1C //wsAppendChar(void *WSHDR,int wchar)
ROM:A1304074 01 50 85 E2 ADD R5, R5, #1
ROM:A1304074
ROM:A1304078
ROM:A1304078 loc_A1304078 ; CODE XREF: sub_A1304004+60j
ROM:A1304078 00 00 96 E5 LDR R0, [R6]
ROM:A130407C 00 00 55 E1 CMP R5, R0
ROM:A1304080 F8 FF FF BA BLT loc_A1304068
ROM:A1304080
ROM:A1304084 17 00 A0 E3 MOV R0, #0x17
ROM:A1304088 2E 01 00 EF SWI 0x12E //GetPaletteAdrByColorIndex_2(int ColorIndex)
ROM:A130408C 00 50 A0 E1 MOV R5, R0
ROM:A1304090 00 00 A0 E3 MOV R0, #0
ROM:A1304094 2E 01 00 EF SWI 0x12E //GetPaletteAdrByColorIndex_2(int ColorIndex)
ROM:A1304098 20 00 2D E9 STMFD SP!, {R5}
ROM:A130409C 01 00 2D E9 STMFD SP!, {R0}
ROM:A13040A0 E6 30 A0 E3 MOV R3, #0xE6 //Y2
ROM:A13040A4 96 20 A0 E3 MOV R2, #0x96 //X2
ROM:A13040A8 0A 10 A0 E3 MOV R1, #0xA //Y1
ROM:A13040AC 00 00 A0 E3 MOV R0, #0 //X1
ROM:A13040B0 01 00 2D E9 STMFD SP!, {R0}
ROM:A13040B4 0B 00 A0 E3 MOV R0, #0xB
ROM:A13040B8 01 00 2D E9 STMFD SP!, {R0}
ROM:A13040BC AA 00 A0 E3 MOV R0, #0xAA //
ROM:A13040C0 01 00 2D E9 STMFD SP!, {R0}
ROM:A13040C4 38 00 94 E5 LDR R0, [R4,#0x38] //
ROM:A13040C8 4C 01 00 EF SWI 0x14C //DrawString(WSHDR *WSHDR,int x1,int y1,int x2,int y2,int font,int text_attribute,int *Pen,int *Brush)
Here what are the four coordinates.


Table-tennis,volleyball,swimming
Good good study,day day up.
Lifting my head I watched the brignt moon,Lowering my head I dreamed that I'm home.
 
  • Страница 1 из 1
  • 1
Поиск:
Использование материалов сайта возможно только при согласовании с администрацией