GetMissedEventsPtr() function
|
|
hotter | Дата: Среда, 12.10.2011, 00:19 | Сообщение # 1 |
Сержант
Имя: hotter
С нами с: 30.12.2010
Сообщений: 27
Модель телефона: S68sw52
Статус: Offline
| What stucture does GetMissedEventsPtr() return?
Could someone explane this assembler code in c code? Code GetAllMissedEventCount PUSH {R1-R7,LR} MOV R6, #0 LDR R0, =0xA02EF342+1 //GetMissedEventsPtr BLX R0 CMP R0, #0 BEQ loc_A006F2D6 ADD R0, #0xCA LDRH R6, [R0,#0] ADD R5, R6, #0 LDRH R6, [R0,#2] ADD R5, R5, R6 LDRH R6, [R0,#4] ADD R6, R5, R6 loc_A006F2D6 ADD R0, R6, #0 POP {R1-R7,PC}
Is it possible to clear missed events?
|
|
| |
ANDRE | Дата: Пятница, 14.10.2011, 20:29 | Сообщение # 2 |
Лейтенант
Имя: Андрей
С нами с: 05.10.2007
Сообщений: 41
Модель телефона: E71sw45, C75sw22
Статус: Offline
| try it
Code struct MEvents{ short calls; short mess; short other; }
int GetAllMissedEventCount (){
MEvents *mevents=GetMissedEventsPtr ();
int count=0;
if (mevents){ count+=mevents->calls; count+=mevents->mess; count+=mevents->other; }
return count; }
Сообщение отредактировано ANDRE - Пятница, 14.10.2011, 20:30 |
|
| |
hotter | Дата: Пятница, 14.10.2011, 21:02 | Сообщение # 3 |
Сержант
Имя: hotter
С нами с: 30.12.2010
Сообщений: 27
Модель телефона: S68sw52
Статус: Offline
| Thx for try, but I get: mevents->calls = 27140 mevents->mess = -21153 mevents->other = -9180 and thous numbers changes... so something is wrong
|
|
| |
ANDRE | Дата: Пятница, 14.10.2011, 22:29 | Сообщение # 4 |
Лейтенант
Имя: Андрей
С нами с: 05.10.2007
Сообщений: 41
Модель телефона: E71sw45, C75sw22
Статус: Offline
| may be Code typedef struct{ char unk[0xCA]; short calls; short mess; short other; }MEvents; I can't check, becouse this function always return 0, but early it worked int call=GetMissedEventCount(1); int mes=GetMissedEventCount(2); int other=GetMissedEventCount(3);
|
|
| |
hotter | Дата: Суббота, 15.10.2011, 11:49 | Сообщение # 5 |
Сержант
Имя: hotter
С нами с: 30.12.2010
Сообщений: 27
Модель телефона: S68sw52
Статус: Offline
| Yes this function returns 0 always int call = 0 int mes = 0 int other = 0
But I found how to fix! Code typedef struct{ char unk[0xCD]; // 0xCD short calls; short mess; short other; }MEvents; Now it works, but if I want to reset missed events, it reset temporary, when its back on main screen it updates again...
maybe this function has something to do with it? Code Update_MissedEventsPtr PUSH {R1-R7, LR} MOV R0, #0 MOV R1, #0 MOV R2, #0 MOV R3, #0 MOV R4, #0 LDR R7, =0xA02EF348+1 //FEB500AB0026BC4D1E81A8690024A030 BLX R7 POP {R1-R7, PC}
|
|
| |
ANDRE | Дата: Воскресенье, 16.10.2011, 12:23 | Сообщение # 6 |
Лейтенант
Имя: Андрей
С нами с: 05.10.2007
Сообщений: 41
Модель телефона: E71sw45, C75sw22
Статус: Offline
| I don't find code similiar with your code in first post in E71, it is right address in E71 library?
Quote (hotter) Now it works, but if I want to reset missed events, it reset temporary, when its back on main screen it updates again...
Yes. I use alternative main screen, therefore this function always return 0. int call=GetMissedEventCount(1); int mes=GetMissedEventCount(2); int other=GetMissedEventCount(3);
|
|
| |