siepatchdb@conference.jabber.ru - 26/09/2006

[00:03] -- ad вышел(а) из комнаты: Replaced by new connection
[00:04] -- ad вошел(а) в комнату
[00:14] -- Lisa вошел(а) в комнату
[00:14] -- Pavel81 вышел(а) из комнаты
[00:15] <Lisa> Не спится *8)
[00:16] <RainMaker> Lisa: Типа того... Идея посетила..... ;-)
[00:16] <Grizzzzly> Lisa: и тебе тоже?
[00:16] <Lisa> RainMaker: *:)
[00:16] <Grizzzzly> лично я эльфов выкладываю
[00:16] <Lisa> Grizzzzly: угу..
[00:16] -- Pavel81 вошел(а) в комнату
[00:17] <RainMaker> Grizzzzly: Какие и куда? В принципе, куда, я уже понял.... А какие? ;-)
[00:18] <Grizzzzly> RainMaker: не эльфов а эльфлоадер :)
первый на СХ/М75
[00:18] <RainMaker> Grizzzzly: Ясно
[00:19] <Pavel81> страшный и непонятный фильм last cut...
[00:20] <Grizzzzly> Pavel81: ридер завтра возвращается к Кошко (если он придет конечно)
[00:21] <Pavel81> Grizzzzly: патриот. респект!
[00:21] <Pavel81> Grizzzzly: ок
[00:21] <Grizzzzly> Pavel81: всмысле?
[00:21] <Pavel81> Grizzzzly: на планете тему сделал
[00:22] <Grizzzzly> а как же )))
[00:22] <Pavel81> это считай твой подарок :-D
[00:22] <Grizzzzly> Pavel81: ага
[00:23] <Grizzzzly> Pavel81: создал - потому что обсуждения будет многа )
[00:24] <Pavel81> Grizzzzly: а икстаск невозможен?
[00:25] <Grizzzzly> Pavel81: пока нет, но сделать думаю можна, но только это под силу jhellico и kreny
[00:25] <Pavel81> Grizzzzly: понятно. потому что таким телефонам он очень необходим.
[00:26] <Grizzzzly> Pavel81: да, будем надеяться )
[00:27] <Grizzzzly> Pavel81: чуствую вопросами меня завалят )))
[00:28] <Pavel81> Grizzzzly: это точно
[00:29] <Pavel81> RainMaker: под 42 есть библиотека чтоб медиа контроль запустить?
[00:29] -- Pavel81 вышел(а) из комнаты
[00:29] -- Pavel81 вошел(а) в комнату
[00:29] <Grizzzzly> Pavel81: а на S75 эльфы какие-нить настройки имеют?
[00:30] <Pavel81> Grizzzzly: да, через текстовый файл
[00:30] <Grizzzzly> все или избранные?
[00:30] -- Pavel81 вышел(а) из комнаты
[00:30] -- Pavel81 вошел(а) в комнату
[00:31] <RainMaker> Pavel81: Да, Кибаб вроде вчера обновлял для sw47 и sw42
[00:31] <Pavel81> Grizzzzly: избранные, во кидает-то
[00:31] <Pavel81> RainMaker: спс, хочу попробывать
[00:31] <perk11> talkers
[00:31] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15785 72 2828 5.6
perk11 9123 27 1652 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
himtosh 2672 6 477 5.6
RainMaker 2610 10 469 5.6
Lisa 2589 37 622 4.2
Grizzzzly 2588 13 499 5.2
DOMr 2446 4 522 4.7

[00:31] <PapuaUtils>
Болтун Слов /me Фраз Эфф.
perk11 4063 10 512 7.9
perk11 3694 8 433 8.5
Adder 1697 0 165 10
Pavel81 1456 9 307 4.7
sodomised 1356 0 342 4
sodomised 1130 0 284 4
himtosh 844 1 164 5.1
Kibab 668 6 117 5.7
Kjbab 586 2 96 6.1
~nyncuk~ 388 0 50 7.8

[00:32] <perk11> мдя, PapuaUtils zdyuj что-то путает
[00:32] <Grizzzzly> ок, все телефон зарядился и готов на завтра, я спать
всем спокойной ночи
[00:32] <perk11> *явно
[00:32] <perk11> Grizzzzly: пока
[00:32] <Pavel81> Grizzzzly: спокойной
[00:33] <Grizzzzly> ну и по Adderу надо опередить Lisa :-D
[00:33] <Grizzzzly> talkers
[00:33] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15786 72 2829 5.6
perk11 9130 27 1655 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
himtosh 2672 6 477 5.6
RainMaker 2610 10 469 5.6
Grizzzzly 2609 13 501 5.2
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:33] -- ad вышел(а) из комнаты
[00:33] <perk11> :-D
[00:33] <Grizzzzly> все, опередил :-D
[00:34] <perk11> talkers
[00:34] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15786 72 2829 5.6
perk11 9132 27 1656 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
himtosh 2672 6 477 5.6
Grizzzzly 2612 13 502 5.2
RainMaker 2610 10 469 5.6
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:34] <perk11> и творца дождя заодно)
[00:34] <perk11> до химтоша еще 60 слов
[00:34] <Grizzzzly> еще 60 и himtosh опережу :)
[00:34] <Grizzzzly> не успел
[00:34] <RainMaker> Хм, ну и глупости вы творите..... Бред какой-то... ;-)
[00:34] <RainMaker> talkers
[00:34] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15786 72 2829 5.6
perk11 9141 27 1658 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
himtosh 2672 6 477 5.6
Grizzzzly 2620 13 504 5.2
RainMaker 2619 10 470 5.6
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:35] <perk11> RainMaker: :-D
[00:35] <Grizzzzly> что бы еще такого наговорить :)))
[00:35] -- andrey_ua вошел(а) в комнату
[00:35] <RainMaker> Вот аццтой!
[00:35] <perk11> угу
[00:35] <RainMaker> Надо говорить и говорить и говорить и говорить и говорить и говорить и говорить :-D
[00:35] <RainMaker> talkers
[00:35] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15786 72 2829 5.6
perk11 9144 27 1660 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
himtosh 2672 6 477 5.6
RainMaker 2636 10 472 5.6
Grizzzzly 2626 13 505 5.2
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:35] <perk11> :-D
[00:35] <Grizzzzly> andrey_ua: привет
[00:35] <perk11> Grizzzzly: новость какую-нибудь
[00:36] <Grizzzzly> perk11: сча будет
[00:36] * RainMaker только что вылетел с Data Abort'ом в Хз какой функции.....
[00:36] <RainMaker> А всё этот Screen-Shooter v2 by Avkiev
[00:36] <RainMaker> talkers
[00:36] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15786 72 2829 5.6
perk11 9148 27 1662 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
himtosh 2672 6 477 5.6
RainMaker 2654 11 474 5.6
Grizzzzly 2629 13 507 5.2
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:37] <Grizzzzly> моя тема на планете:
Портировал эльфлоадер на M75v25.
Брать здесь.
Эльфы с S75 к нам не подходят. На данный момент есть только 2 эльфа.
Я в разработке эльфов не участвую. Новые эльфы будут выкладываться по мере их портирования.
Сами эльфы Здесь
Обсуждение на СК тута
Сообщения типа: "ХОЧУ XTASK, СДЕЛАЙТЕ ПЛИЗЗЗ" будут удаляться и авторам будет выноситься предупреждение.
[00:37] <Grizzzzly> talkers
[00:37] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15786 72 2829 5.6
perk11 9148 27 1662 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
Grizzzzly 2687 13 508 5.3
himtosh 2672 6 477 5.6
RainMaker 2654 11 474 5.6
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:37] <Grizzzzly> во
[00:37] <RainMaker> Так что мне, сорс своего эльфа тут выложить??? :-D
[00:37] <andrey_ua> Grizzzzly привет
[00:37] <Grizzzzly> :-D
[00:38] <RainMaker> Вместе с swilib.h и сорсами Кибабовской либы...
[00:38] <RainMaker> talkers
[00:38] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15786 72 2829 5.6
perk11 9148 27 1662 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
Grizzzzly 2689 13 510 5.3
himtosh 2672 6 477 5.6
RainMaker 2670 11 476 5.6
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:38] <RainMaker> Прости меня папа.... :-)
[00:38] <Grizzzzly> ладны, это не так интересно как патчи добавлять :-D
[00:38] <Pavel81> прикольно
[00:38] <Grizzzzly> talkers
[00:38] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15787 72 2830 5.6
perk11 9148 27 1662 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
bank! 3045 3 420 7.2
Grizzzzly 2698 13 511 5.3
RainMaker 2674 11 477 5.6
himtosh 2672 6 477 5.6
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:38] <perk11> Grizzzzly: угу
[00:39] <Grizzzzly> ушел
[00:39] <perk11> пока
[00:39] -- Grizzzzly вышел(а) из комнаты
[00:39] <RainMaker> //Release 23.08.2006

typedef unsigned int size_t;
typedef unsigned long time_t;
typedef int jmp_buf[11];

#ifndef _NULL
#define _NULL 0
#endif

#ifndef NULL
#define NULL _NULL
#endif /* NULL */

#define __int16 short

//#include "png/png.h"

//Если S75, расскоментировать сл. строку
#define NEWSGOLD

#ifdef NEWSGOLD

#define MSG_GUI_DESTROYED 0x640E
#define MMI_CEPID 0x4209
#define DISPLACE_OF_EDGUI 0x88
#define DISPLACE_OF_EDGUI_ID 0x4C
#define DISPLACE_OF_IDLEGUI_ID 0x2C
#define DISPLACE_OF_IDLECANVAS 0x18

#else

#define DISPLACE_OF_IDLECANVAS 0x14
#endif

#define NAMECSM_MAGIC1 ((void *(*)(int))0x55AACCCC)
#define NAMECSM_MAGIC2 ((void (*)(void *))0x3333AA55)

typedef struct{
  unsigned long year;
  unsigned char month;
  unsigned char day;
} TDate;

typedef struct{
  unsigned char hour;
  unsigned char min;
  unsigned char param;
  unsigned long param2;
} TTime;

typedef struct{
  unsigned int type;
  unsigned int param2;
  unsigned short param3;
  char wstr[50];
}StructUSSDStr;

typedef struct{
  void *p1;
  void *p2;
  StructUSSDStr *pussdstr;
}StructUSSD;

typedef struct
{
  void *first;
  void *last;
  void (*data_mfree)(void *);
}LLQ;

typedef struct{
  int param0;
  int param1;
  int param2;
  int param3;
} GBSTMR;

typedef struct{
#ifdef NEWSGOLD
  int pid_from;
  int msg;
#else
  short pid_from;
  short msg;
#endif
  int submess;
  void *data0;
  void *data1;
} GBS_MSG;

typedef struct{
  void *next;
  void *prev;
  void /*CSM_DESC*/ *constr;
  int id;
  int state;
  int unk1;
  int unk2;
  LLQ gui_ll;
} CSM_RAM;

typedef struct{
  int (*onMessage)(CSM_RAM*,GBS_MSG*);
  void (*onCreate)(CSM_RAM*);
#ifdef NEWSGOLD
  int zero1;
  int zero2;
  int zero3;
  int zero4;
#endif
  void (*onClose)(CSM_RAM*);
  int datasize;
  int statesize;
  const int *states;
} CSM_DESC;

typedef struct{
  int under_idle_id;
  int idle_id;
  void *csm_q;
} CSMROOT;

typedef struct{
  short x;
  short y;
  short x2;
  short y2;
} RECT;

typedef struct{
  char dummy[0x24];
} DRWOBJ;

typedef struct{
  unsigned short *wsbody;
  void *(*ws_malloc)(int);
  void (*ws_mfree)(void *);
  int unk;
  int maxlen;
} WSHDR;

typedef struct
{
  void *next;
  void *prev;
  void *data;
}EDITQ;

typedef struct
{
  void *next;
  void *prev;
}LLIST;

typedef struct
{
#ifdef NEWSGOLD
  const char *ext;
  int unical_id;
  int unk1;
  const int *icon1;
  const int *icon2;
  int unk4; //0x109
  int unk5; //0x10A
  int unk6; //0x7FFFC0FB
  void *proc;
  int zero;
#else
  const char *ext;
  int unical_id;
  int unk1; //0x57807FF
  const int *icon1;
  const int *icon2;
  void *proc;
  int zero;
#endif
}REGEXPLEXT;

typedef struct
{
  RECT *canvas;
  void *methods;
  void *definition;
  char state;
  char unk2;
  char unk3;
  char unk4;
  int color1; //Параметр GeneralFunc пишется сюда?????
  int color2;
  LLQ item_ll;
  int unk5;
  char unk6;
  char unk7;
  char unk8;
  char unk9;
  int unk10;
  int flag30; //Используется при создании (бывает |=0x02)
}GUI;

typedef struct
{
  char zero;
  char unk1;
  short keys;
  GBS_MSG *gbsmsg;
}GUI_MSG;

//Constants
//Seek
#define S_SET 0
#define S_CUR 1
#define S_END 2

//Permissions
#define P_WRITE 0x100
#define P_READ 0x80

//Access
#define A_ReadOnly 0
#define A_WriteOnly 1
#define A_ReadWrite 2
#define A_NoShare 4
#define A_Append 8
#define A_Exclusive 0x10
#define A_MMCStream 0x20
#define A_Create 0x100
#define A_Truncate 0x200
#define A_FailCreateOnExist 0x400
#define A_FailOnReopen 0x800

#define A_TXT 0x4000
#define A_BIN 0x8000

// kbd msg:
#define KEY_DOWN 0x193
#define KEY_UP 0x194
#define LONG_PRESS 0x195
// 196 - sent 1 second after last key release, but not always?
// 197 - ? unknown kbd msg
// 198 - ? unknown kbd msg

// For kbd msg:
// submsg - scan Code:
#ifdef NEWSGOLD
#define LEFT_SOFT 0x01
#define RIGHT_SOFT 0x04
#define GREEN_BUTTON 0x0B
#define RED_BUTTON 0x0C
#define VOL_UP_BUTTON 0x0D
#define VOL_DOWN_BUTTON 0x0E
#define UP_BUTTON 0x3B
#define DOWN_BUTTON 0x3C
#define LEFT_BUTTON 0x3D
#define RIGHT_BUTTON 0x3E
#define ENTER_BUTTON 0x1A
#define MPLAYER_BUTTON 0x1D
#define INTERNET_BUTTON 0x11
#define PLAY_BUTTON 0x15
#define CAMERA_BUTTON 0x14
#else
#define LEFT_SOFT 0x01
#define RIGHT_SOFT 0x04
#define GREEN_BUTTON 0x0B
#define RED_BUTTON 0x0C
#define VOL_UP_BUTTON 0x14
#define VOL_DOWN_BUTTON 0x15
#define UP_BUTTON 0x3B
#define DOWN_BUTTON 0x3C
#define LEFT_BUTTON 0x3D
#define RIGHT_BUTTON 0x3E
#define ENTER_BUTTON 0x1A
#define INTERNET_BUTTON 0x11
#endif
// '*', '#', '0'-'9'

typedef struct
{
  char w;
  char h;
  char bpnum; //For BW=1, 8bit=5, 16bit=8, 0x80 - packed
  char zero;
  char *bitmap;
}IMGHDR;

typedef struct
{
  RECT rc;
  int *icon;
  int lgp_id;
  int lgp_null; //0x7FFFFFFF
}HEADER_DESC;

typedef struct
{
  int *icon;
  int lgp_id_small;
  int lgp_id_large;
  int zero;
  int *softkeys; //{6,0x22,0x1D}
  int flag1; //0
  int flag2; //0x59D
}MENUITEM_DESC;

typedef struct
{
  short key1;
  short key2;
  int lgp_id;
}SOFTKEY_DESC;

typedef struct
{
  SOFTKEY_DESC *desc;
  int n;
}SOFTKEYSTAB;

typedef struct
{
  int flag; //0,8 etc
  void *proc1;
  void *global_hook_proc; //GUI * gui, int cmd
  void *proc3;
  int *softkeys; //{6,0x22,0x1D}, mb default for all items, if item.softkeys==NULL
  SOFTKEYSTAB *softkeystab;
  int flags2; //2
  void *itemproc; //Called when draw item
  MENUITEM_DESC * items; //Table of items desc;
  void ** procs; //Table of procs when item selected
  int n_items; //Number of items
}MENU_DESC;


typedef struct{
#ifdef NEWSGOLD
  char unk1[44];
  unsigned char file_attr;
  char unk2_1[7];
  char folder_name[29];
  char unk2_2[100];
  char file_name[655];
#else
  char unk1[20];
  unsigned int file_size;
  char unk2[16];
  char folder_name[129];
  char file_name[200];
#endif
}DIR_ENTRY;

typedef struct
{
  unsigned short ch_number;
  unsigned short ci;
  unsigned short lac;
  char power;
  char c1;
  char c2;
  char unk;
  unsigned short unk2;
}RAMNET;

//-----------------------------------------

typedef struct
{
  int one;
  int (*onKey)(GUI *gui, GUI_MSG *msg);
  void (*global_hook_proc)(GUI *gui, int cmd);
  void *locret;
  int zero1;
  SOFTKEYSTAB *softkeystab;
  RECT rc;
  int font;
  int _100;
  int _101;
  int zero2;
  int zero3;
  int _0x40000000;
}INPUTDIA_DESC;

typedef struct
{
  char dummy[40];
  WSHDR *pWS;
}EDITCONTROL;

#ifdef NEWSGOLD
#define EDIT_CURSOR_POS(DATA) (((short ****)DATA)[0x88/4][0x84/4][0x28/4][0x34/2])
#else
#define EDIT_CURSOR_POS(DATA) (((short ****)DATA)[0x50/4][0x4C/4][0x28/4][0x30/2])
#endif

typedef struct
{
  short field_0;
  char no_data;
  char item_type;
  int field_4;
  void *data;
}AB_UNPRES_ITEM;

typedef struct
{
  short field_0;
  short number_of_records;
  short field_4;
  short field_6;
  short field_8;
  char field_A;
  char field_B;
  AB_UNPRES_ITEM *record_list;
  char field_10;
  char field_11;
  short field_12;
  int field_14;
  int field_18;
}AB_UNPRES;

#pragma pack(1)
typedef struct
{
  char _1D;
  char format;
  char data_size;
  char _0_1;
  char _0_2;
// char _0_3;
  char data[128];
}PKT_NUM;
#pragma pack()

//================================
// Sockets
//================================
typedef struct
{
  unsigned short family; //1
  unsigned short port; //network order
  unsigned int ip; //network order
  unsigned int unk1;
  unsigned int unk2;
}SOCK_ADDR;

#define IP_ADDR(A,B,C,D) (((unsigned long)A<<24)|((unsigned long)B<<16)|((unsigned long)C<<8)|((unsigned long)D<<0))

#pragma diag_suppress=Ta035

#pragma swi_number=0
__swi __arm void loopback0();
//arm
//pattern=1E,FF,2F,E1

#pragma swi_number=1
__swi __arm void loopback1();
//arm
//pattern=1E,FF,2F,E1

#pragma swi_number=2
__swi __arm void loopback2();
//arm
//pattern=1E,FF,2F,E1

#pragma swi_number=3
__swi __arm void loopback3();
//arm
//pattern=1E,FF,2F,E1

#pragma swi_number=4
__swi __arm void loopback4();
//arm
//pattern=1E,FF,2F,E1

#pragma swi_number=6
__swi __arm int GetAkku(int param1,int param2);
//arm
//pattern=1C,40,2D,E9,??,??,9F,E5,00,21,80,E0,82,20,83,E0,01,20,D2,E7,FF,00,52,E3,??,??,9F,05,??,00,00,0A,80,00,12,E3,??,??,9F,05,00,00,90,05,82,01,80,00,B2,00,D0,01,??,00,00,0A,00,30,A0,E3

#pragma swi_number=8
__swi __arm long SetIllumination(unsigned char dev,unsigned long param1,unsigned short bright,unsigned long delay);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E5,??,??,??,E2,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,E3,??,??,??,03,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,0A,??,??,??,E3,??,??,??,2A,??,??,??,E3,??,??,??,E1,??,??,??,E5,??,??,??,E7,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,E2,??,??,??,E8

#pragma swi_number=10
__swi __arm int fopen(const char * cFileName, unsigned int iFileFlags, unsigned int iFileMode, unsigned int *ErrorNumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E8,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E8

#pragma swi_number=11
__swi __arm int fread(int FileHandler, void *cBuffer, int iByteCount, unsigned int *ErrorNumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E5,34,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E8

#pragma swi_number=12
__swi __arm unsigned int fwrite(int FileHandler, void const * cBuffer, int iByteCount, unsigned int *ErrorNumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E5,68,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E8

#pragma swi_number=13
__swi __arm void fclose(int FileHandler, unsigned int *ErrorNumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E8,??,??,??,E3,??,??,??,E3,??,??,??,E1

#pragma swi_number=15
__swi __arm unsigned int lseek(int FileHandler, unsigned int offset, unsigned int origin, unsigned int *ErrorNumber, unsigned int *ErrorNumber2);
//arm
//pattern=??,??,??,E9,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E2,??,??,??,E8

#pragma swi_number=16
__swi __arm int mkdir(const char * cFileName, unsigned int *ErrorNumber);
//arm
//pattern=38,40,2D,E9,01,50,A0,E1,00,40,A0,E1,??,??,??,??,00,30,E0,E3,??,??,??,??,28,C0,90,E5,00,00,A0,E3,05,30,A0,E1,00,20,A0,E3

#pragma swi_number=18
__swi __arm int GetFileAttrib(const char *cFileName, unsigned char *cAttribute, unsigned int *ErrorNumber);

#pragma swi_number=19
__swi __arm int SetFileAttrib(const char *cFileName, unsigned char cAttribute, unsigned int *ErrorNumber);

#pragma swi_number=20
__swi __arm void *malloc(unsigned int size);
//arm
//pattern=??,??,??,E1,02,??,??,E3,_blf(??,??,??,E9,??,??,??,E1,??,??,??,E3,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,2A,??,??,??,??,??,??,??,E3,??,??,??,??,??,??,??,8A,??,??,??,E3,??,??,??,03,??,??,??,0A,??,??,??,E3,??,??,??,03,??,??,??,0A,??,??,??,E3,??,??,??,03,??,??,??,13,??,??,??,EA)

#pragma swi_number=0x8014
__swi __arm void *malloc_adr(void);

#pragma swi_number=21
__swi __arm void mfree(void *);
//arm
//pattern=??,??,??,E3,??,??,??,01,??,??,??,E9,??,??,??,E5,??,??,??,E2,??,??,??,??,??,??,??,??,??,??,??,E1,??,??,??,11,??,??,??,??,??,??,??,??,??,??,??,0A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3

#pragma swi_number=0x8015
__swi __arm void *mfree_adr(void);

#pragma swi_number=22
__swi __arm int sprintf(char *buf, const char *str, ...);
//thumb
//pattern=??,B4,??,B5,??,B0,??,90,??,48,??,A9,??,91,??,44,??,90,??,48,??,44,??,90,??,AD,??,1C,??,AB,??,AA,??,99,??,??,??,??,??,1C,??,1C,??,20,??,??,??,??,??,1C,??,B0,??,BC,??,BC,??,B0,??,47

#pragma swi_number=23
__swi __arm char * strcat (char *,const char *);
//thumb
//pattern=??,78,??,1C,??,2B,??,D0,??,32,??,78,??,2B,??,D1,??,78,??,31,??,70,??,32,??,2B,??,D1,??,47

#pragma swi_number=24
__swi __arm char * strchr (const char *,int);
//thumb
//pattern=??,06,??,0E,??,38,??,30,??,78,??,42,??,D0,??,29,??,D1,??,42,??,D0,??,20,??,47

#pragma swi_number=25
__swi __arm int strcmp (const char *,const char *);
//arm
//pattern=??,??,??,E3,??,??,??,03,??,??,??,1A,??,??,??,E9,??,??,??,??,??,??,??,E4,??,??,??,E4,??,??,??,E0,??,??,??,E1,??,??,??,E0,??,??,??,01,??,??,??,0A,??,??,??,E8,??,??,??,E1,??,??,??,E0,??,??,??,03,??,??,??,1A,??,??,??,E1,??,??,??,E0,??,??,??,03,??,??,??,1A,??,??,??,E1,??,??,??,E0,??,??,??,03,??,??,??,00,??,??,??,11,??,??,??,E1,??,??,??,E4,??,??,??,E4,??,??,??,E3,??,??,??,21,??,??,??,1A,??,??,??,E4,??,??,??,E4,??,??,??,E3,??,??,??,21,??,??,??,0A,??,??,??,E0,??,??,??,E1

#pragma swi_number=26
__swi __arm char * strcpy (char *dest,const char *source);
//thumb
//pattern=??,1C,??,1C,??,43,??,07,??,B4,??,D1,??,??,??,01,??,E0,??,C2,??,C9,??,1B,??,43,??,40,??,D0,??,06,??,0E,??,70,??,32,??,29,??,D0,??,0A,??,E7,??,78,??,31,??,70,??,32,??,2B,??,D0,??,78,??,31,??,70,??,32,??,2B,??,D1,??,BC,??,47

#pragma swi_number=27
__swi __arm unsigned int strlen(const char *);
//thumb
//pattern=??,B4,??,1C,??,07,??,D0,??,78,??,30,??,29,??,D1,??,1B,??,BC,??,47,??,07,??,D1,??,??,??,01,??,C8,??,1A,??,43,??,40,??,D0,??,1B,??,06,??,D1,??,38,??,E7,??,04,??,0E,??,D1,??,38,??,E7,??,02,??,0E,??,D1,??,38,??,E7

#pragma swi_number=28
__swi __arm void wsAppendChar (void *WSHDR,int wchar);
//thumb
//pattern=??,B5,??,1C,??,D0,??,1C,??,??,??,??,??,68,??,88,??,42,??,D9,??,33,??,04,??,0C,??,80,??,68,??,00,??,52,??,BD

#pragma swi_number=35
__swi __arm void DrawImg(unsigned char x, unsigned char y, short picture);
//thumb
//pattern=??,4B,??,B5,??,42,??,D0,??,??,??,??,??,BD

#pragma swi_number=37
__swi __arm void DrawCanvas(void *data, int x1, int y1, int x2, int y2, int flag_one);
//thumb
//pattern=??,B5,??,1C,??,1C,??,AB,??,98,??,9C,??,80,??,80,??,80,??,80,??,46,??,??,??,??,??,2D,??,D0,??,2C,??,D0,??,1C,??,46,??,47,??,BD

#pragma swi_number=50
__swi __arm void PlaySound(long param1, long param2, long param3, long tone, long param5);
//arm
//pattern=??,??,??,E9,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,1A,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,EF,??,??,??,E3,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,EA

#pragma swi_number=0x43
__swi __arm int IsUnlocked(void);
//thumb
//pattern=??,48,??,B5,??,68,??,28,??,D0,??,??,??,FF,??,28,??,D1,??,20,??,BD

#pragma swi_number=77
__swi __arm void GBS_StartTimerProc(void *htimer, long ms, void ptr());
//arm
//pattern_s75_32=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,1A,??,??,??,E3,??,??,??,E2,??,??,??,??,??,??,??,EF,??,??,??,E3,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E1,??,??,??,E2,??,??,??,E1,??,??,??,E8
//thumb
//pattern_s75_24=??,B5,??,1C,??,1C,??,1C,??,D1,??,21,??,??,??,??,??,??,??,DF,??,22,??,20,??,??,??,??,??,??,??,??,??,1C,??,??,??,??,??,21,??,1C,??,??,??,??,??,68,??,65,??,20,??,68,??,02,??,31,??,82,??,??,??,??,??,68,??,31,??,82,??,1C,??,1C,??,??,??,??,??,68,??,30,??,88,??,31,??,80,??,BD

#pragma swi_number=92
__swi __arm unsigned char GetCPUClock();
//arm
//pattern=??,??,??,E9,??,??,??,??,??,??,??,E2,??,??,??,E3,??,??,??,90,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,E3,??,??,??,E8,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,EA

#pragma swi_number=93
__swi __arm unsigned char GetCPULoad();
//thumb
//pattern=??,B5,??,4C,??,68,??,28,??,D1,??,??,??,??,??,20,??,60,??,20,??,BD,??,??,??,??,??,BD
//thumb
//pattern=??,B5,??,??,??,68,??,28,??,D1,??,??,??,??,??,20,??,60,??,20,??,BD,??,??,??,??,??,BD

#pragma swi_number=107
__swi __arm int FindFirstFile (DIR_ENTRY *DIRENTRY,char *mask,unsigned int *ErrorNumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E8

#pragma swi_number=108
__swi __arm int FindNextFile (DIR_ENTRY *DIRENTRY,unsigned int *ErrorNumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,0A,??,??,??,E1,??,??,??,??,??,??,??,EA,??,??,??,??,20,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E8,??,??,??,E3,??,??,??,??,??,??,??,E1

#pragma swi_number=109
__swi __arm int FindClose (DIR_ENTRY *DIRENTRY,unsigned int *ErrorNumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,0A,??,??,??,E1,??,??,??,??,??,??,??,EA,??,??,??,??,10,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E8,??,??,??,E3,??,??,??,??,??,??,??,E1

#pragma swi_number=124
__swi __arm unsigned int SetVibration(unsigned int power);
//thumb
//pattern=??,B5,??,??,??,1C,??,20,??,39,??,71,??,1C,??,68,??,??,??,27,??,26,??,42,??,??,??,68,??,DA,??,??,??,??,??,??,??,3C,??,78,??,28,??,D9,??,??,??,??,??,70,??,78,??,31,??,70,??,70,??,??,??,??,??,20,??,68,??,??,??,??,??,28,??,D1,??,DF,??,E0

#pragma swi_number=127
__swi __arm int IsPlayerOn(void);
//

#pragma swi_number=128
__swi __arm int ShowCallList(int list, int zero);
//thumb
//pattern=??,B5,??,B0,??,91,??,A9,??,72,??,A9,??,20,??,80,??,90,??,22,??,73,??,90,??,90,??,90,??,90,??,90,??,A9,??,62,??,63,??,61,??,21,??,AC,??,1C,??,??,??,??,??,20,??,72,??,??,??,22,??,46,??,??,??,??,??,B0,??,BD

#pragma swi_number=0x8A
__swi __arm int GetFreeFlexSpace(int DriveNum, unsigned int *ErrorNumber);

#pragma swi_number=0x8B
__swi __arm int GetTotalFlexSpace(int DriveNum, unsigned int *ErrorNumber);

#pragma swi_number=140
__swi __arm void RegExplorerExt(REGEXPLEXT const *);
//thumb
//pattern=??,B5,??,68,??,1C,??,68,??,??,??,??,??,28,??,D1,??,??,??,3A,??,68,??,29,??,DA,??,20,??,43,??,1D,??,18,??,31,??,60,??,22,??,1C,??,??,??,??,??,BD

#pragma swi_number=163
__swi __arm void ws2str(WSHDR *ws, char *str, unsigned int size);
//arm
//pattern=??,??,??,E9,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E2,??,??,??,E2,??,??,??,E3,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,E3,??,??,??,E5,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,EA

#pragma swi_number=171
__swi __arm void loopback171();
//arm
//pattern=1E,FF,2F,E1

#pragma swi_number=180
__swi __arm void GetDateTime(TDate *, TTime *);
//thumb
//pattern=??,B5,??,1C,??,1C,??,28,??,D1,??,AC,??,2D,??,D1,??,46,??,1C,??,??,??,??,??,1C,??,??,??,??,??,??,??,??,??,1C,??,1C,??,1C,??,??,??,??,??,22,??,43,??,23,??,1C,??,1C,??,??,??,??,??,BD
//pattern=??,B5,??,1C,??,1C,??,28,??,D1,??,AD,??,2C,??,D1,??,46,??,1C,??,??,??,??,??,1C,??,??,??,??,??,1C,??,1C,??,??,??,??,??,1C,??,??,??,??,??,1C,??,1C,??,1C,??,??,??,??,??,23,??,43,??,1C,??,19,??,1C,??,??,??,??,??,BD

#pragma swi_number=181
__swi __arm char GetWeek(TDate*);
//thumb
//pattern=??,B5,??,??,??,??,??,1D,??,20,??,??,??,??,??,06,??,0E,??,BD

#pragma swi_number=182
__swi __arm char GetProfile();
//thumb
//pattern=??,B5,??,22,??,21,??,46,??,??,??,??,??,??,??,28,??,D0,??,??,??,??,??,99,??,42,??,DD,??,1C,??,BD,??,21,??,??,??,??,??,??,??,??,??,3C,??,1C,??,20,??,??,??,??,??,25,??,28,??,D0,??,DF,??,1C,??,1C,??,22,??,20,??,??,??,??,??,E0,??,DF,??,1C,??,1C,??,22,??,20,??,??,??,??,??,??,??,38,??,68,??,E7

#pragma swi_number=183
__swi __arm char SetProfile(char);
//thumb
//pattern=??,B5,??,1C,??,??,??,??,??,??,??,??,??,??,??,1C,??,20,??,??,??,??,??,42,??,D0,??,20,??,??,??,??,??,42,??,D0,??,22,??,21,??,1C,??,??,??,??,??,??,??,1C,??,??,??,??,??,1C,??,1C,??,??,??,??,??,22,??,21,??,1C,??,??,??,??,??,??,??,BD

#pragma swi_number=184
__swi __arm int dwMODdw(int denom,int number);
//arm
//pattern=80,24,10,E2,00,00,60,42,41,30,32,E0,00,10,61,22,A1,C1,70,E0

#pragma swi_number=0x80C8
__swi __arm unsigned short *RamCap();
//thumb

#pragma swi_number=0x80CA
__swi __arm RAMNET * RamNet();
//thumb

#pragma swi_number=0x80DD
__swi __arm unsigned short* RamCurrentTrack(void);

#pragma swi_number=0x80E1
__swi __arm unsigned int* RamMPlayer_CtrlCode(void);

#pragma swi_number=0x0100
__swi __arm void GBS_SendMessage(int cepid_to, int msg, ...); //int submess, void *data1, void *data2
//arm
//pattern=??,??,??,E9,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E8,??,??,??,E5,??,??,??,E2,??,??,??,??,??,??,??,E8

#pragma swi_number=0x0101
__swi __arm int GBS_ReciveMessage(GBS_MSG *);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E2,??,??,??,??,??,??,??,E2,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E5,??,??,??,E1,??,??,??,E8

#pragma swi_number=0x0102
__swi __arm void GBS_AcceptMessage(void);
//arm
//pattern=??,??,??,E9,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,1A,??,??,??,E5,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,E5,??,??,??,E5,??,??,??,E1,??,??,??,??,??,??,??,E2,??,??,??,??,??,??,??,E2,??,??,??,E5,??,??,??,??,??,??,??,??,??,??,??,E5,??,??,??,E1,??,??,??,E3,??,??,??,92,??,??,??,??,??,??,??,E5,??,??,??,E8

#pragma swi_number=0x0103
__swi __arm void GBS_ClearMessage(void);
//arm
//pattern=??,??,??,E9,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E2,??,??,??,??,??,??,??,E2,??,??,??,??,??,??,??,E8,??,??,??,??

#pragma swi_number=0x0104
__swi __arm void GBS_PendMessage(GBS_MSG *);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E1,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E2,??,??,??,??,??,??,??,E1,??,??,??,E5,??,??,??,E1,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E9,??,??,??,E2,??,??,??,E2,??,??,??,??,??,??,??,E2,??,??,??,E5,??,??,??,??,??,??,??,E8

#pragma swi_number=0x0105
__swi __arm void CreateGBSproc(int cepid, const char *name, void (*onMsg)(void), int prio, int unk_zero);
//arm
//pattern=??,??,??,E9,??,??,??,E2,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E8

#pragma swi_number=0x8106
__swi __arm CSMROOT *CSM_root();
//
#pragma swi_number=0x0107
__swi __arm int CreateCSM(const CSM_DESC*,void *,int);
//thumb
//pattern=??,1C,??,1C,??,1C,??,??,??,B5,??,68,??,??,??,??,??,BD

#pragma swi_number=0x0108
__swi __arm CSM_RAM * FindCSMbyID (int id);
//thumb
//pattern=??,1C,??,??,??,B5,??,68,_blf(??,28,??,D1,??,47,??,68,??,E0,??,68,??,2A,??,D0,??,68,??,42,??,D1,??,E0,??,6A,??,E0,??,68,??,2A,??,D0,??,68,??,42,??,D1,??,1C,??,47),??,BD

#pragma swi_number=0x0109
__swi __arm void DoIDLE(void);
//thumb
//pattern=??,1C,??,??,??,B5,??,68,??,68,??,??,??,??,??,??,??,BD

#pragma swi_number=0x010A
__swi __arm void *GetConfig(unsigned int id); //BoBaPack

#pragma swi_number=0x810B
__swi __arm void *GetMinAdrScan(); //BoBaPack
//adr=0xA0030000

#pragma swi_number=0x810C
__swi __arm void *GetMaxAdrScan(); //BoBaPack
//adr=0xA0040000

#pragma swi_number=0x810D
__swi __arm unsigned short *GetCI();

#pragma swi_number=0x010E
__swi __arm void Vibration(unsigned int power, unsigned int duration); //BoBaPack

#pragma swi_number=0x010F
__swi __arm void freeUSSD();
//thumb
//pattern=??,B5,??,??,??,68,??,28,??,D0,??,78,??,28,??,D1,??,20,??,??,??,??,??,68,??,??,??,??,??,20,??,60,??,61,??,BD

#pragma swi_number=0x0110
__swi __arm char *wstrcopy(char *dst, char *src);
//thumb
//pattern=??,B5,??,1C,??,88,??,00,??,19,??,32,??,1C,??,??,??,??,??,1C,??,BD

#pragma swi_number=0x0111
__swi __arm char GetTypeUSSD();
//thumb
//pattern=??,??,??,68,??,28,??,D1,??,20,??,47,??,78,??,47

#pragma swi_number=0x0112
__swi __arm unsigned int SetUSSD(StructUSSDStr *);
//thumb
//pattern=??,B5,??,1C,??,78,??,??,??,??,??,28,??,D1,??,BD,??,??,??,??,??,??,??,60,??,??,??,??,??,26,??,28,??,??,??,??,??,D1,??,1C,??,22,??,E0,??,??,??,??,??,28,??,D8,??,??,??,??,??,28,??,D1,??,1C,??,22,??,1C,??,1C,??,96,??,??,??,??,??,??,??,??,??,28,??,D8,??,??,??,??,??,28,??,D0,??,1C,??,22,??,93,??,E0,??,1C,??,1C,??,96,??,1C,??,1C,??,??,??,??,??,20,??,E7

#pragma swi_number=0x0113
__swi __arm char * strpbrk (const char *s1,const char *s2);
//thumb
//pattern=??,B4,??,1C,??,1C,??,78,??,2D,??,D1,??,1A,??,BC,??,47,??,78,??,1C,??,2A,??,D0,??,42,??,D1,??,1A,??,E7,??,78,??,33,??,2A,??,D1,??,34,??,E7

#pragma swi_number=0x0114
__swi __arm char * strncat (char *dest,const char *substr,int maxSubLen);
//thumb
//pattern=??,B4,??,78,??,1C,??,2C,??,D0,??,33,??,78,??,2C,??,D1,??,2A,??,D0,??,78,??,31,??,70,??,33,??,2C,??,D0,??,3A,??,D1,??,21,??,70,??,BC,??,47

#pragma swi_number=0x0115
__swi __arm int strncmp (const char *s1,const char *s2,int n);
//thumb
//pattern=??,1C,??,43,??,07,??,B4,??,D1,??,??,??,01,??,E0,??,30,??,31,??,3A,??,2A,??,D3,??,68,??,68,??,42,??,D1,??,1B,??,43,??,40,??,D0,??,2A,??,D1,??,20,??,BC,??,47,??,78,??,78,??,31,??,30,??,2B,??,D3,??,42,??,D1,??,3A,??,D1,??,1B,??,E7

#pragma swi_number=0x0116
__swi __arm int strncpy (char *dest,const char *source,int maxlen);
//thumb
//pattern=??,B4,??,1C,??,1C,??,43,??,07,??,D1,??,??,??,01,??,E0,??,31,??,3A,??,C3,??,2A,??,D3,??,68,??,1B,??,43,??,40,??,D0,??,2A,??,D0,??,78,??,31,??,70,??,33,??,2C,??,D0,??,3A,??,D1,??,BC,??,47,??,2A,??,D9,??,1E,??,22,??,70,??,33,??,39,??,D1,??,E7

#pragma swi_number=0x0117
__swi __arm char * strrchr (const char *s,int c);
//thumb
//pattern=??,22,??,06,??,0E,??,78,??,30,??,42,??,D1,??,1E,??,29,??,D1,??,1C,??,47

#pragma swi_number=0x0118
__swi __arm char * strstr (const char *s1,const char *s2);
//thumb
//pattern=??,B4,??,1C,??,1C,??,78,??,78,??,34,??,33,??,2A,??,D3,??,42,??,D0,??,2D,??,D0,??,2A,??,D1,??,1C,??,BC,??,47,??,30,??,E7

#pragma swi_number=0x0119
__swi __arm int strtol (const char *nptr,char **endptr,int base);
//thumb
//pattern=??,B5,??,B4,??,1C,??,1C,??,27,??,9C,??,??,??,??,??,78,??,34,??,29,??,D0,??,68,??,5C,??,07,??,D4,??,29,??,D0,??,29,??,D1,??,??,??,02,??,43,??,E0,??,3C,??,1C,??,1C,??,1C,??,??,??,??,??,1C,??,2D,??,D0,??,68,??,42,??,D1,??,98,??,60,??,05,??,25,??,??,??,??,??,1C,??,2C,??,DA,??,42,??,28,??,DD,??,60,??,07,??,B0,??,BC,??,BC,??,47,??,1C,??,2E,??,DA,??,60,??,??,??,E7

#pragma swi_number=0x011A
__swi __arm int strtoul (const char *nptr,char **endptr,int base);
//thumb
//pattern=??,B5,??,B4,??,B0,??,1C,??,27,??,9C,??,??,??,??,??,1C,??,68,??,90,??,??,??,??,??,78,??,34,??,29,??,D0,??,68,??,5C,??,07,??,D4,??,29,??,D0,??,29,??,D1,??,??,??,02,??,43,??,E0,??,3C,??,21,??,60,??,1C,??,1C,??,9A,??,??,??,??,??,1C,??,2D,??,D0,??,68,??,42,??,D1,??,98,??,60,??,68,??,28,??,D1,??,1C,??,B0,??,BC,??,BC,??,47,??,9A,??,60,??,42,??,05,??,D4,??,1C,??,E7

#pragma swi_number=0x011B
__swi __arm int snprintf (char *,int n,const char *format,...);
//thumb
//pattern=??,B4,??,B5,??,B0,??,1C,??,A9,??,91,??,90,??,D0,??,19,??,38,??,90,??,??,??,44,??,90,??,??,??,44,??,90,??,AE,??,1C,??,46,??,AA,??,99,??,??,??,??,??,1C,??,2C,??,D0,??,1C,??,20,??,??,??,??,??,1C,??,B0,??,BC,??,BC,??,B0,??,47

#pragma swi_number=0x011C
__swi __arm int memcmp (void *m1,void *m2,int n);
//thumb
//pattern=??,B4,??,2A,??,D3,??,1C,??,43,??,07,??,D1,??,C8,??,C9,??,42,??,D1,??,3A,??,2A,??,D2,??,42,??,D0,??,38,??,39,??,2A,??,D1,??,20,??,BC,??,47,??,07,??,D5,??,32,??,E0,??,78,??,78,??,31,??,30,??,42,??,D1,??,78,??,78,??,31,??,30,??,42,??,D1,??,3A,??,D1,??,1B,??,E7

#pragma swi_number=0x011D
__swi __arm void zeromem (void *dest,int n);
//arm
//pattern=??,??,??,E3,??,??,??,E3,??,??,??,3A,??,??,??,E2,??,??,??,0A,??,??,??,E2,??,??,??,E3,??,??,??,E4,??,??,??,A4,??,??,??,C4,??,??,??,E0,??,??,??,EA,??,??,??,E1,??,??,??,24,??,??,??,24,??,??,??,44,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E2,??,??,??,28,??,??,??,28,??,??,??,22,??,??,??,2A,??,??,??,E1,??,??,??,28,??,??,??,48,??,??,??,E8,??,??,??,E1,??,??,??,24,??,??,??,01,??,??,??,44,??,??,??,44,??,??,??,E3,??,??,??,14,??,??,??,E1
//есть еще такая же...

#pragma swi_number=0x011E
__swi __arm void * memcpy (void *dest,const void *source,int cnt);
//arm
//pattern=??,??,??,E3,??,??,??,9A,??,??,??,E2,??,??,??,0A,??,??,??,E4,??,??,??,E3,??,??,??,E0,??,??,??,94,??,??,??,E4,??,??,??,34,??,??,??,E2,??,??,??,94,??,??,??,34,??,??,??,E2,??,??,??,0A,??,??,??,E2,??,??,??,3A,??,??,??,E7,??,??,??,E3,??,??,??,0A,??,??,??,8A,??,??,??,E1,??,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,E4,??,??,??,2A,??,??,??,E2,??,??,??,EA,??,??,??,E1,??,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,E4,??,??,??,2A,??,??,??,E2,??,??,??,EA,??,??,??,E1,??,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,E4,??,??,??,2A,??,??,??,E2,??,??,??,EA

#pragma swi_number=0x011F
__swi __arm WSHDR * wstrcpy (WSHDR *wshdr_d,WSHDR *wshdr_s);
//thumb
//pattern=??,B5,??,29,??,D0,??,28,??,D0,??,68,??,88,??,8A,??,42,??,D3,??,3A,??,??,??,??,??,BD,??,??,??,??,??,BD

#pragma swi_number=0x0120
__swi __arm WSHDR * wstrncpy (WSHDR *,WSHDR *,int);
//thumb
//pattern=??,B5,??,1C,??,D0,??,29,??,D0,??,1C,??,??,??,??,??,42,??,D2,??,1C,??,??,??,??,??,1C,??,1C,??,??,??,??,??,BD

#pragma swi_number=0x0121
__swi __arm WSHDR * wstrcat (WSHDR *wshdr_d,WSHDR *wshdr_s);
//thumb
//pattern=??,B5,??,1C,??,D0,??,29,??,D0,??,68,??,88,??,68,??,88,??,1C,??,??,??,??,??,18,??,42,??,D2,??,8A,??,38,??,1A,??,1C,??,??,??,??,??,BD,??,1C,??,??,??,??,??,BD

#pragma swi_number=0x0122
__swi __arm WSHDR * wstrncat (WSHDR *wshdr_d,WSHDR *wshdr_s,int n);
//thumb
//pattern=??,B5,??,1C,??,D0,??,29,??,D0,??,68,??,88,??,1C,??,??,??,??,??,19,??,42,??,D2,??,8A,??,38,??,1B,??,1C,??,??,??,??,??,BD

#pragma swi_number=0x0123
__swi __arm int wstrlen (WSHDR *wshdr);
//thumb
//pattern=??,28,??,D1,??,47,??,68,??,88,??,47

#pragma swi_number=0x0124
__swi __arm int wsprintf (WSHDR *,const char *format,...);
//thumb
//pattern=??,B4,??,B5,??,B0,??,B0,??,1C,??,22,??,32,??,46,??,A9,??,??,??,??,??,1C,??,98,??,??,??,??,??,1C,??,1C,??,99,??,??,??,??,??,A8,??,90,??,1C,??,21,??,1C,??,AB,??,??,??,??,??,B0,??,B0,??,BC,??,BC,??,B0,??,47

#pragma swi_number=0x0125
__swi __arm WSHDR * AllocWS (int len);
//thumb
//pattern=02,04,80,B5,12,0C,??,48,??,49,??,??,??,ED,80,BD

#pragma swi_number=0x0126
__swi __arm void CutWSTR (void *WSHDR,int len);
//thumb
//pattern=??,B5,??,28,??,D0,??,68,??,88,??,42,??,D2,??,??,??,??,??,BD

#pragma swi_number=0x0127
__swi __arm WSHDR * CreateLocalWS (WSHDR *wshdr, unsigned short *wsbody, int len);
//thumb
//pattern=??,B5,??,1C,??,1C,??,1C,??,29,??,D0,??,00,??,1C,??,??,??,??,??,1C,??,1C,??,1C,??,??,??,??,??,BD

#pragma swi_number=0x0128
__swi __arm int CreateWS (void *malloc,void *mfree,int len);
//thumb
//pattern=??,B5,??,1C,??,20,??,1C,??,1C,??,2D,??,D0,??,2E,??,D0,??,20,??,47,??,1C,??,D1,??,20,??,BD,??,00,??,30,??,47,??,60,??,28,??,D1,??,1C,??,47,??,E7,??,21,??,80,??,1C,??,1C,??,68,??,??,??,??,??,21,??,60,??,60,??,60,??,E7

#pragma swi_number=0x0129
__swi __arm void FreeWS (WSHDR *wshdr);
//thumb
//pattern=??,B5,??,1C,??,D0,??,68,??,29,??,D0,??,68,??,28,??,D1,??,68,??,47,??,68,??,1C,??,47,??,20,??,BD,??,20,??,BD
//две таких...

#pragma swi_number=0x012A
__swi __arm void DrawObject (DRWOBJ *);
//thumb
//pattern=??,B5,??,1C,_blf(??,B5,??,46,??,??,??,??,??,??,??,28,??,D0,??,AB,??,78,??,01,??,58,??,BD,??,??,??,??,??,6B,??,42,??,D1,??,??,??,??,??,E7,??,20,??,E7),??,28,??,D0,??,1C,??,??,??,??,??,BD

#pragma swi_number=0x012B
__swi __arm void AddKeybMsgHook (void *proc);
//thumb
//pattern=??,B5,_blf(??,B5,??,??,??,1C,??,68,??,25,??,28,??,D1,??,??,??,60,??,60,??,60,??,20,??,??,??,??,??,28,??,D0,??,60,??,73,??,1C,??,1C,??,??,??,??,??,BD),??,BD

#pragma swi_number=0x012C
__swi __arm int AddKeybMsgHook_end (void *proc);
//thumb
//pattern=??,B5,_blf(??,B5,??,??,??,1C,??,68,??,28,??,D1,??,60,??,60,??,48,??,60,??,20,??,??,??,??,??,68,??,29,??,D0,??,7B,??,29,??,D0,??,28,??,D1,??,20,??,BD,??,21,??,60,??,73,??,1C,??,1C,??,??,??,??,??,20,??,BD),??,BD

#pragma swi_number=0x012D
__swi __arm void RemoveKeybMsgHook (void *proc);
//thumb
//pattern=??,B5,_blf(??,??,??,B5,??,68,??,E0,??,68,??,42,??,D1,??,1C,??,??,??,??,??,BD,??,68,??,29,??,D1,??,BD),??,BD

#pragma swi_number=0x012E
__swi __arm int *GetPaletteAdrByColorIndex (int ColorIndex);
//thumb
//pattern=??,??,??,28,??,D2,??,00,??,E0,??,??,??,31,??,28,??,D0,??,38,??,28,??,D2,??,??,??,00,??,18,??,47,??,1C,??,47

#pragma swi_number=0x012F
__swi __arm void getRGBcolor (int ColorIndex,void *dest);
//thumb
//pattern=??,B5,??,1C,_blf(??,49,??,28,??,D2,??,00,??,E0,??,??,??,31,??,28,??,D0,??,38,??,28,??,D2,??,??,??,00,??,18,??,47,??,1C,??,47),??,1C,??,??,??,??,??,BD

#pragma swi_number=0x0130
__swi __arm void getRGBbyPaletteAdr (int *paletteAdr,void *dest);
//thumb
//pattern=??,29,??,D0,??,28,??,D1,??,20,??,??,??,78,??,70,??,78,??,70,??,78,??,70,??,78,??,70,??,47

#pragma swi_number=0x0131
__swi __arm void setColor (int a,int r,int g,int b,void *dest);
//thumb
//pattern=??,B5,??,9C,??,2C,??,D0,??,70,??,70,??,70,??,70,??,BD

#pragma swi_number=0x0132
__swi __arm void deleted();

#pragma swi_number=0x0133
__swi __arm void StoreXYWHtoRECT (void *RECT,int x,int y,int w,int h);
//thumb
//pattern=??,B5,??,9C,??,80,??,18,??,39,??,80,??,80,??,19,??,39,??,80,??,BD

#pragma swi_number=0x0134
__swi __arm void StoreXYXYtoRECT (void *RECT,int x,int y,int x2,int y2);
//thumb
//pattern=??,B5,??,9C,??,80,??,80,??,80,??,80,??,BD

#pragma swi_number=0x0135
__swi __arm int IsGuiOnTop (int id);
//thumb
//pattern=??,1C,??,??,??,B5,??,68,_blf(??,68,??,1C,??,D0,??,68,??,20,??,42,??,D0,??,20,??,47),??,BD

#pragma swi_number=0x0136
__swi __arm int CreateGUI_ID (void *gui,int id);
//thumb
//pattern=0A,1C,01,1C,??,??,80,B5,00,68,_blf(13,1C,00,22),80,BD

#pragma swi_number=0x0137
__swi __arm int CreateGUI (void *gui);
//thumb
//pattern=01,1C,??,??,80,B5,00,68,_blf(00,23,00,22),80,BD

#pragma swi_number=0x0138
__swi __arm int CreateGUI_30or2 (void *gui);
//thumb
//pattern=??,1C,??,??,??,B5,??,68,_blf(??,6B,??,23,??,43,??,63,??,23,??,22,??,11100???),??,BD

#pragma swi_number=0x0139
__swi __arm int CreateGUIWithDummyCSM (void *gui,int flag);
//thumb
//pattern=??,1C,??,1C,??,??,??,B5,??,68,_blf(??,B5,??,B0,??,1C,??,1C,??,91,??,??,??,??,??,90,??,95,??,94,??,6F,??,23,??,46,??,??,??,??,??,??,??,98,??,B0,??,BD),??,BD

#pragma swi_number=0x013A
__swi __arm int CreateGUIWithDummyCSM_30or2 (void *gui,int flag);
//thumb
//pattern=??,1C,??,1C,??,??,??,B5,??,68,_blf(??,B5,??,6B,??,24,??,43,??,63,??,??,??,??,??,BD),??,BD

#pragma swi_number=0x013B
__swi __arm void GeneralFuncF1 (int cmd);
//thumb
//pattern=01,1C,??,??,80,B5,00,68,_blf(0A,1C,01,68,8B,68,00,2B,??,??,C9,68),80,BD

#pragma swi_number=0x013C
__swi __arm void GeneralFuncF0 (int cmd);

#pragma swi_number=0x013D
__swi __arm void GeneralFunc_flag1 (int id,int cmd);

#pragma swi_number=0x013E
__swi __arm void GeneralFunc_flag0 (int id,int cmd);
//thumb
//pattern=??,1C,??,1C,??,??,??,B5,??,68,_blf(??,29,??,D0,??,23,??,11100???,??,47),??,BD

#pragma swi_number=0x013F
__swi __arm void DirectRedrawGUI (void);
//thumb
//pattern=??,??,??,B5,??,68,_blf(??,B5,??,1C,??,68,??,26,??,68,??,B0,??,28,??,D0,??,1C,??,69,??,35,??,28,??,D0,??,1C,??,??,??,??,??,20,??,61,??,61,??,20,??,C5,??,C5,??,3D,??,69,??,28,??,D0,??,68,??,68,??,6B,??,07,??,D5,??,21,??,??,??,??,??,28,??,D1,??,1C,??,??,??,??,??,61,??,6A,??,28,??,D0,??,??,??,??,??,A9,??,??,??,??,??,20,??,AB,??,74,??,20,??,??,??,??,??,1C,??,20,??,AA,??,92,??,90,??,91,??,23,??,5E,??,23,??,5E,??,23,??,5E,??,23,??,5E,??,1C,??,??,??,??,??,62,??,68,??,1C,??,68,??,??,??,??,??,68,??,21,??,68,??,??,??,??,??,28,??,D0,??,1C,??,31,??,??,??,??,??,68,??,21,??,68,??,??,??,??,??,28,??,D0,??,20,??,E0,??,20,??,61,??,68,??,68,??,68,??,68,??,47,??,61,??,B0,??,BD),??,BD

#pragma swi_number=0x0140
__swi __arm void DirectRedrawGUI_ID (int id);
//thumb
//pattern=??,1C,??,??,??,B5,??,68,_blf(??,68,??,68,??,2B,??,D0,??,68,??,42,??,D1,??,??,??,47),??,BD

#pragma swi_number=0x0141
__swi __arm void PendedRedrawGUI (void);
//thumb
//pattern=??,??,80,B5,00,68,_blf(98,B5,04,1C,80,6E,01,68,24,20,88,47),80,BD


#pragma swi_number=0x0142
__swi __arm CSM_RAM * FindCSM (void *csm_q,int id);
//thumb
//pattern=??,28,??,D1,??,47,??,68,??,E0,??,68,??,2A,??,D0,??,68,??,42,??,D1,??,E0,??,6A,??,E0,??,68,??,2A,??,D0,??,68,??,42,??,D1,??,1C,??,47

#pragma swi_number=0x0143
__swi __arm void GBS_StartTimer (GBSTMR *tmr,int time,int msg,int unk,int cepid);
//arm
//pattern=??,??,??,E9,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,E5,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E1,??,??,??,E2,??,??,??,E1,??,??,??,E8

#pragma swi_number=0x0144
__swi __arm void GBS_StopTimer (GBSTMR *tmr);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E5,??,??,??,E3,??,??,??,E2,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E2,??,??,??,E2,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,EF,??,??,??,E3,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,E5,??,??,??,E1,??,??,??,E2,??,??,??,E1,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E8

#pragma swi_number=0x0145
__swi __arm int GBS_GetCurCepid (void);
//arm
//pattern=??,??,??,E5,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,E5,??,??,??,E3,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,0A,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,0A,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,05,??,??,??,01,??,??,??,04,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,E2,??,??,??,1A,??,??,??,E5,??,??,??,E1,??,??,??,E4,??,??,??,E5,??,??,??,E3,??,??,??,11,??,??,??,14,??,??,??,??,??,??,??,E4

#pragma swi_number=0x0146
__swi __arm void LockSched(void);
//arm
//pattern=??,??,??,E9,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E8,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,EA,??,??,??,E5,??,??,??,??,??,??,??,E1,??,??,??,1A,??,??,??,E2,??,??,??,E5,??,??,??,E2,??,??,??,E5,??,??,??,E1,??,??,??,E2,??,??,??,E1,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E5,??,??,??,E2,??,??,??,E5,??,??,??,??,??,??,??,E5,??,??,??,E5,??,??,??,EA

#pragma swi_number=0x0147
__swi __arm void UnlockSched(void);
//arm
//pattern=??,??,??,E9,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E8,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,EA,??,??,??,E5,??,??,??,??,??,??,??,E1,??,??,??,1A,??,??,??,E2,??,??,??,E1,??,??,??,E3,??,??,??,0A,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,1A,??,??,??,??,??,??,??,E5,??,??,??,E5,??,??,??,E0,??,??,??,E0,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E1,??,??,??,85,??,??,??,E5,??,??,??,??,??,??,??,EA

#pragma swi_number=0x0148
__swi __arm extern int ShowMSG(int flag, int lgp_id);

#pragma swi_number=0x0149
__swi __arm void SetPropTo_Obj1(DRWOBJ *drwobj,void *rect,int rect_flag,WSHDR *wshdr,int font,int text_flag);
//thumb
//pattern=??,B5,??,1C,??,20,??,9F,??,70,??,1C,??,1C,??,1C,??,30,??,22,??,??,??,??,??,70,??,20,??,70,??,06,??,D5,??,1C,??,??,??,??,??,1C,??,??,??,??,??,??,??,??,??,1C,??,1C,??,??,??,??,??,61,??,E0

#pragma swi_number=0x014A
__swi __arm void FreeDrawObject_subobj(DRWOBJ *drwobj);
//thumb
//pattern=??,B5,??,1C,??,78,??,28,??,D0,??,28,??,D0,??,28,??,D0,??,28,??,D1,??,69,??,??,??,??,??,69,??,??,??,??,??,21,??,1C,??,??,??,??,??,20,??,70,??,BD

#pragma swi_number=0x014B
__swi __arm void SetColor(DRWOBJ *drwobj, int *color1, int *color2);
//thumb
//pattern=??,B5,??,1C,??,1C,??,1C,??,1C,_blf(??,29,??,D0,??,28,??,D1,??,20,??,E7,??,78,??,70,??,78,??,70,??,78,??,70,??,78,??,70,??,47),??,1D,??,1C,??,??,??,??,??,78,??,21,??,43,??,70,??,BD

#pragma swi_number=0x014C
__swi __arm void DrawString(WSHDR *WSHDR,int x1,int y1,int x2,int y2,int font,int text_attribute,int *Pen,int *Brush);
//thumb
//pattern=??,B5,??,B0,??,9C,??,9F,??,9E,??,1C,??,D0,??,68,??,28,??,D1,??,A0,??,??,??,??,??,??,??,1C,??,20,??,??,??,??,??,28,??,D0,??,DF,??,22,??,1C,??,20,??,??,??,E0

#pragma swi_number=0x014D
__swi __arm GUI *GetTopGUI(void);
//thumb
//pattern=??,??,??,B5,??,68,??,28,??,D1,??,BD,??,??,??,??,??,BD

#pragma swi_number=0x014E
__swi __arm void *FindItemByID(GUI *gui,int id);
//thumb
//pattern=??,B5,??,28,??,D1,??,??,??,3C,??,1C,??,20,??,??,??,??,??,??,??,28,??,D0,??,DF,??,1C,??,1C,??,22,??,20,??,??,??,??,??,E0,??,DF,??,1C,??,1C,??,22,??,20,??,??,??,??,??,E0,??,69,??,E0,??,68,??,42,??,D0,??,68,??,28,??,D1,??,20,??,BD

#pragma swi_number=0x014F
__swi __arm void *GetDataOfItemByID(GUI *gui,int id);
//thumb
//pattern=??,B5,_blf(??,B5,??,28,??,D1,??,??,??,3C,??,1C,??,20,??,??,??,??,??,??,??,28,??,D0,??,DF,??,1C,??,1C,??,22,??,20,??,??,??,??,??,E0,??,DF,??,1C,??,1C,??,22,??,20,??,??,??,??,??,E0,??,69,??,E0,??,68,??,42,??,D0,??,68,??,28,??,D1,??,20,??,BD),??,28,??,D0,??,68,??,BD,??,20,??,BD

#pragma swi_number=0x0150
__swi __arm void DrawRoundedFrame(int x1,int y1,int x2,int y2,int x_round,int y_round,int flags,int *pen,int *brush);
//thumb
//pattern=??,B5,??,B0,??,1C,??,23,??,9C,??,20,??,1C,??,2C,??,90,??,93,??,9D,??,DA,??,24

#pragma swi_number=0x0151
__swi __arm void SetPropTo_Obj5(DRWOBJ *, RECT *, int zero, IMGHDR *Image);
//thumb
//pattern=??,B5,??,1C,??,20,??,70,??,70,??,1C,??,1C,??,25,??,30,??,22,??,70,??,??,??,??,??,20,??,61,??,76,??,76,??,76,??,61,??,1C,??,BD

#pragma swi_number=0x0152
__swi __arm int CreateMenu(int is_small,int zero1,MENU_DESC *menu,HEADER_DESC *hdr,int zero2,int n_items,int zero4,int zero5);
//thumb
//pattern=??,B5,??,B0,??,1C,??,AA,??,1C,??,1C,??,CA,??,91,??,21,??,9F,??,91,??,92,??,1C,??,1C,??,90,??,1C,??,97,??,??,??,??,??,B0,??,BD

#pragma swi_number=0x0153
__swi __arm int GBS_RecActDstMessage(GBS_MSG *);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,E2,??,??,??,??,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E2,??,??,??,??,??,??,??,E2,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,0A,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,01,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E1,??,??,??,E8

#pragma swi_number=0x0154
__swi __arm void KillGBSproc(int cepid);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,0A,??,??,??,E1,??,??,??,E3,??,??,??,1A,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,EF,??,??,??,E3,??,??,??,E3,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,1A,??,??,??,??,??,??,??,??,??,??,??,E8,??,??,??,??,??,??,??,??,??,??,??,EA
/*
#pragma swi_number=0x0155
__swi __arm png_structp png_create_read_struct(png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,E5,??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,_blf(??,??,??,E9,??,??,??,E2,??,??,??,E2,??,??,??,E8,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,1A),??,??,??,E2,??,??,??,E8

#pragma swi_number=0x0156
__swi __arm png_infop png_create_info_struct(png_structp png_ptr);
//arm
//pattern=??,??,??,E9,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,11,??,??,??,13,??,??,??,??,??,??,??,E5,??,??,??,E8

#pragma swi_number=0x0157
__swi __arm void png_destroy_read_struct(png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr);
//arm
//pattern=??,??,??,E9,??,??,??,E3,??,??,??,E3,??,??,??,15,??,??,??,E3,??,??,??,E3,??,??,??,15,??,??,??,E3,??,??,??,E3,??,??,??,15,??,??,??,E3,??,??,??,15,??,??,??,15,??,??,??,03,??,??,??,03,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,E1

#pragma swi_number=0x0158
__swi __arm void png_set_sig_bytes(png_structp png_ptr,int num_bytes);
//arm
//pattern=??,??,??,E9,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,C1,??,??,??,??,??,??,??,E3,??,??,??,B3,??,??,??,E5,??,??,??,E8

#pragma swi_number=0x0159
__swi __arm void png_read_info(png_structp png_ptr, png_infop info_ptr);
//arm
//pattern=??,??,??,E9,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,2A,??,??,??,E0,??,??,??,E2,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,2A,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3

#pragma swi_number=0x015A
__swi __arm png_uint_32 png_get_IHDR(png_structp png_ptr,png_infop info_ptr, png_uint_32 *width, png_uint_32 *height, int *bit_depth, int *color_type, int *interlace_method, int *compression_method, int *filter_method);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E2,??,??,??,E1,??,??,??,13,??,??,??,E1,??,??,??,13,??,??,??,E1,??,??,??,13,??,??,??,E8,??,??,??,13,??,??,??,13,??,??,??,03,??,??,??,0A,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,3A,??,??,??,E3,??,??,??,9A

#pragma swi_number=0x015B
__swi __arm png_voidp png_malloc(png_structp png_ptr, png_uint_32 size);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,13,??,??,??,03,??,??,??,0A,??,??,??,E5,??,??,??,E1,??,??,??,E3,??,??,??,0A,??,??,??,E1,??,??,??,EA,??,??,??,??,??,??,??,E1,??,??,??,05,??,??,??,03,??,??,??,02,??,??,??,01,??,??,??,??,??,??,??,E1,??,??,??,E8

#pragma swi_number=0x015C
__swi __arm void png_read_image(png_structp png_ptr, png_bytepp image);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E1,??,??,??,E3,??,??,??,E5,??,??,??,EA,??,??,??,E1,??,??,??,E3,??,??,??,EA,??,??,??,E3,??,??,??,E1,??,??,??,E5,??,??,??,??,??,??,??,E2,??,??,??,E2,??,??,??,E1,??,??,??,3A,??,??,??,E2,??,??,??,E1,??,??,??,??,??,??,??,E8

#pragma swi_number=0x015D
__swi __arm void png_read_end(png_structp png_ptr, png_infop info_ptr);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,??,E2,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,1A,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,EA

#pragma swi_number=0x015E
__swi __arm void png_destroy_read_struct(png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr);
//arm
//pattern=??,??,??,E9,??,??,??,E3,??,??,??,E3,??,??,??,15,??,??,??,E3,??,??,??,E3,??,??,??,15,??,??,??,E3,??,??,??,E3,??,??,??,15,??,??,??,E3,??,??,??,15,??,??,??,15,??,??,??,03,??,??,??,03,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,E3,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,E1

#pragma swi_number=0x015F
__swi __arm png_uint_32 png_get_rowbytes(png_structp png_ptr,png_infop info_ptr);
//arm
//pattern=00,00,50,E3,00,00,51,13,00,00,a0,03,0c,00,91,15,1e,ff,2f,E1

#pragma swi_number=0x0160
__swi __arm png_read_row(png_structp png_ptr,png_bytep row,png_bytep dsp_row);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E5,??,??,??,E1,??,??,??,E3,??,??,??,01,??,??,??,E1,??,??,??,??,??,??,??,E5,??,??,??,E5,??,??,??,??,??,??,??,E3,??,??,??,15,??,??,??,13,??,??,??,0A,??,??,??,E5,??,??,??,E3,??,??,??,90,??,??,??,EA

#pragma swi_number=0x0161
__swi __arm png_init_io(png_structp png_ptr, int fp);
//arm
//pattern=94,10,80,e5,1e,ff,2f,e1
*/
#pragma swi_number=0x0162
__swi __arm setjmp(jmp_buf jmpbuf);
//arm
//pattern=??,??,??,E8,??,??,??,E8,??,??,??,E8,??,??,??,E9,??,??,??,EB,??,??,??,E8,??,??,??,E8,??,??,??,E3,??,??,??,E1

#pragma swi_number=0x0163
__swi __arm EDITQ *AllocEQueue(void *malloc_a, void *mfree_a);
//thumb
//pattern=??,B5,??,1C,??,1C,??,20,??,47,??,21,??,60,??,60,??,60,??,60,??,61,??,BD

#pragma swi_number=0x0164
__swi __arm EDITCONTROL *PrepareEditControl(EDITCONTROL *);
//thumb
//pattern=??,B5,??,1C,_blf(??,21,??,70,??,60,??,72,??,72,??,83,??,83,??,83,??,83,??,84,??,62,??,62,??,30,??,E7),??,1C,??,BD

#pragma swi_number=0x0165
__swi __arm void ConstructEditControl(EDITCONTROL *EditControl,int type,int flag,WSHDR *ws,int maxlen);
//thumb
//pattern=??,B5,??,B0,??,1C,??,1C,??,1C,??,29,??,9F,??,D0,??,2D,??,D1,??,2E,??,D0,??,DF,??,22,??,20,??,??,??,??,??,??,??,??,??,1C,??,??,??,??,??,70,??,98,??,60,??,62,??,83,??,B0,??,BD

#pragma swi_number=0x0166
__swi __arm void AddEditControlToEditQend(void *EditQ,EDITCONTROL *EditControl,void *malloc_a);
//thumb
//pattern=??,B5,??,1C,??,1C,??,1C,??,??,??,??,??,30,??,04,??,0C,??,1C,??,1C,??,1C,_blf(??,B5,??,1C,??,1C,??,B0,??,A8,??,22,??,6A,??,??,??,??,??,8B,??,68,??,69,??,??,??,??,??,1C,??,2E,??,68,??,D0,??,1C,??,1C,??,??,??,??,??,E0,??,21,??,1C,??,??,??,??,??,22,??,92,??,1C,??,1C,??,9A,??,95,??,A9,??,??,??,??,??,B0,??,BD),??,BD

#pragma swi_number=0x0167
__swi __arm int CreateInputTextDialog(const INPUTDIA_DESC *input_desc, const HEADER_DESC *header_desc,void *editq,int do_mfree,WSHDR *);
//thumb
////pattern=F0,B5,85,B0,16,1C,0D,1C,??,??,??,??,0A,9F,04,1C,??,??,02,91,03,92,32,1C,29,1C,01,90,20,1C,00,97,??,??,??,??,05,B0,F0,BD


#pragma swi_number=0x0168
__swi __arm void SetSoftKey(void *gui,SOFTKEY_DESC *,int n);
//thumb
//pattern=??,B5,??,1C,??,30,??,68,??,1C,??,30,??,1C,??,1C,??,68,??,??,??,??,??,28,??,D0,??,1C,??,1C,??,1C,_blf(??,B5,??,1C,??,1C,??,28,??,D1,??,??,??,1C,??,20,??,??,??,??,??,??,??,??,??,28,??,D0,??,DF,??,1C,??,1C,??,22,0D,20,??,??,??,??,??,BD,??,DF,??,1C,??,1C,??,22,??,20,??,??,??,??,??,BD,??,21,??,??,??,??,??,1C,??,1C,??,??,??,??,??,BD),??,BD

#pragma swi_number=0x0169
__swi __arm int ExtractEditControl(void *guidata,int n,EDITCONTROL *);


#pragma swi_number=0x016A
__swi __arm int StoreEditControl(void *guidata,int n,EDITCONTROL *);

#pragma swi_number=0x016B
__swi __arm int unlink(const char *cFileName,unsigned int *errornumber);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,E5,58,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E8

#pragma swi_number=0x016C
__swi __arm int str2ws(WSHDR *ws,char *str,unsigned int size);
//arm
//pattern=??,??,??,E9,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E2,??,??,??,E3,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,E2,??,??,??,E5,??,??,??,E3,??,??,??,E5,??,??,??,E1,??,??,??,AA,??,??,??,E7,??,??,??,E3,??,??,??,13,??,??,??,13,??,??,??,13,??,??,??,1A,??,??,??,E0,??,??,??,E2,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E0,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E2,??,??,??,E3,??,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,2A,??,??,??,E7,??,??,??,E3,??,??,??,0A,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,??,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,1A,??,??,??,E1,??,??,??,E2,??,??,??,E8

#pragma swi_number=0x016D
__swi __arm int UnpackABentry(AB_UNPRES *,void *abentry,int filesz,int flag);
//arm
//pattern=??,??,??,E9,??,??,??,E2,??,??,??,E3,??,??,??,E1,??,??,??,E1,??,??,??,E5,??,??,??,E2,??,??,??,E3,??,??,??,13,??,??,??,1A,??,??,??,E2,??,??,??,E5,??,??,??,E2,??,??,??,E3,??,??,??,03,??,??,??,E5,??,??,??,0A,??,??,??,??,??,??,??,E5,??,??,??,??,??,??,??,E5,??,??,??,E3,??,??,??,AA,??,??,??,E3,??,??,??,E3,??,??,??,??,??,??,??,EA,??,??,??,E3,??,??,??,??,??,??,??,E1,??,??,??,13,??,??,??,??,??,??,??,1A,??,??,??,??,??,??,??,E3,??,??,??,E1,??,??,??,??,??,??,??,E3,??,??,??,0A,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,EA,??,??,??,EF,??,??,??,E1,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,??,??,??,??,E3,??,??,??,E2,??,??,??,E8

#pragma swi_number=0x016E
__swi __arm int FreeUnpackABentry(AB_UNPRES *, void *mfree_adr);
//arm
//pattern=??,??,??,E9,??,??,??,E1,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E3,??,??,??,E3,??,??,??,0A,??,??,??,E1,??,??,??,E3,??,??,??,EA,??,??,??,E5,??,??,??,E0,??,??,??,E0,??,??,??,E5,??,??,??,E3,??,??,??,0A,??,??,??,E1,??,??,??,E5,??,??,??,??,??,??,??,E2,??,??,??,EA,??,??,??,E5,??,??,??,E0,??,??,??,E0,??,??,??,E5,??,??,??,E2,??,??,??,E1,??,??,??,05,??,??,??,05,??,??,??,E2,??,??,??,E1,??,??,??,3A,??,??,??,E2,??,??,??,E2,??,??,??,E1,??,??,??,3A,??,??,??,E5,??,??,??,E1,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,E1,??,??,??,E5,??,??,??,E5,??,??,??,E3,??,??,??,E3,??,??,??,E3,??,??,??,E3,??,??,??,E3,??,??,??,E5,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E1,??,??,??,E3,??,??,??,E5,??,??,??,E1,??,??,??,E3,??,??,??,E8

#pragma swi_number=0x016F
__swi __arm int GetTypeOfAB_UNPRES_ITEM(int);
//arm
//pattern=??,??,??,E1,??,??,??,E3,??,??,??,E3,??,??,??,90,??,??,??,E1,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,E1,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,E1,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA,??,??,??,EA

#pragma swi_number=0x0170
__swi __arm int MakeVoiceCall(char *number,int _0x10, int _0x20C0);
//thumb
//pattern=??,B5,??,1C,??,22,??,92,??,04,??,0C,??,23,??,06,??,0E,??,??,??,??,??,BD

#pragma swi_number=0x0171
__swi __arm void SUBPROC(void *,...); //(void (*)(void *, int),void *, int);

#pragma swi_number=0x0172
__swi __arm void REDRAW(void);

//===========================================
//Sockets
//===========================================
#pragma swi_number=0x0173
__swi __arm int socket(int af,int type,int protocol);

#pragma swi_number=0x0174
__swi __arm int connect(int sock,SOCK_ADDR *,int name_length);

#pragma swi_number=0x0175
__swi __arm int bind(int sock,SOCK_ADDR *,int name_length);

#pragma swi_number=0x0176
__swi __arm int closesocket(int socket);

#pragma swi_number=0x0177
__swi __arm int shutdown(int socket,int how);

#pragma swi_number=0x0178
__swi __arm int recv(int socket,void *buf,int len,int flag);

#pragma swi_number=0x0179
__swi __arm int send(int socket,const void *buf,int len,int flag);

#pragma swi_number=0x017A
__swi __arm unsigned __int16 htons(unsigned __int16);

#pragma swi_number=0x017B
__swi __arm unsigned int htonl(unsigned int);

#pragma swi_number=0x817C
__swi __arm int socklasterr(void);
[00:39] <RainMaker> talkers
[00:40] <RainMaker> #include "..\..\lib\swilib.h"
#include "..\..\lib\mplayer.h"

extern int mode;
extern CSM_RAM *under_idle;

typedef enum
  {mCtrl=0, mCredits, mNoMP, mSetup}
MODE;

typedef struct
{
  CSM_RAM csm;
  int gui_id;
}MAIN_CSM;

typedef struct
{
  GUI gui;
  WSHDR *ws1;
  WSHDR *ws2;
}MAIN_GUI;

MODE Mode, OldMode_Setup, OldMode_Credits;

char* szSoftText[] = {
    "Опции Назад",
    "Назад Назад",
    "Опции Назад",
    "Сохранить Отмена"};

int my_csm_id;

char csm_text[32768];

const char percent_t[]="%t";

char* szCredits[] = {
    "Media Control Elf Version 0.5 © 2006 RainMaker",
    ">> MP Control Lib by Kibab",
    ">> Respects to • Rst7/CBSIE • Siemens-Club.org",
    "24.09.2006 02:50"};

char szNoMP[] = "Не запущен медиаплейер!";




void method0(MAIN_GUI *data)
{
  if ( !(Mode == mCredits || Mode == mSetup) )
  {
    DrawRoundedFrame(0,0,131,175,0,0,0,
                        GetPaletteAdrByColorIndex(0),
                        GetPaletteAdrByColorIndex(20));
    
    wsprintf(data->ws1,"Media Control v 0.5\n(C)2006 by RainMaker\n\nMP Control Lib by Kibab");
    DrawString(data->ws1,3,3,128,51,11,0,GetPaletteAdrByColorIndex(0),GetPaletteAdrByColorIndex(23));
  }
  
  WSHDR* wsMsg = AllocWS(0x100);
  switch (Mode)
  {
  case mCtrl:
    DrawImg(6, 52, 19019);
    break;
  case mCredits:
    DrawImg(3, (132 - 87) / 2, 1368);
    DrawImg(3, 3, 407);
    
    wsprintf(wsMsg, percent_t, "Об Эльфе...");
    DrawString(wsMsg, 35, 3, 129, 19, 12, 0, GetPaletteAdrByColorIndex(6), GetPaletteAdrByColorIndex(20));
    
    wsprintf(wsMsg, percent_t, szCredits[0]);
    DrawString(wsMsg, 30, 20, 128, 90, 11, 0, GetPaletteAdrByColorIndex(0), GetPaletteAdrByColorIndex(23));
    
    wsprintf(wsMsg, percent_t, szCredits[1]);
    DrawString(wsMsg, 30, 60, 128, 90, 11, 0, GetPaletteAdrByColorIndex(0), GetPaletteAdrByColorIndex(23));
    
    wsprintf(wsMsg, percent_t, szCredits[2]);
    DrawString(wsMsg, 30, 90, 128, 155, 11, 0, GetPaletteAdrByColorIndex(0), GetPaletteAdrByColorIndex(23));
    
    wsprintf(wsMsg, percent_t, szCredits[3]);
    DrawString(wsMsg, 20, 140, 128, 155, 11, 0, GetPaletteAdrByColorIndex(10), GetPaletteAdrByColorIndex(23));
    break;
  case mNoMP:
    DrawImg(3, 52, 1356);
    wsprintf(wsMsg, percent_t, szNoMP);
    DrawString(wsMsg, 33, 80, 128, 155, 5, 0, GetPaletteAdrByColorIndex(2), GetPaletteAdrByColorIndex(1));
    break;
  case mSetup:
    wsprintf(wsMsg, percent_t, "Настройки");
    DrawString(wsMsg, 35, 3, 129, 19, 12, 0, GetPaletteAdrByColorIndex(6), GetPaletteAdrByColorIndex(20));
  }
  FreeWS(wsMsg);
  
  wsprintf(data->ws2,percent_t, szSoftText[Mode]);
  DrawString(data->ws2,3,157,128,172,5,2,GetPaletteAdrByColorIndex(0),GetPaletteAdrByColorIndex(23));
}

void method1(MAIN_GUI *data, void *(*malloc_adr)(int))
{
  data->ws1=AllocWS(256);
  data->ws2=AllocWS(256);
  data->gui.state=1;
  Mode = IsPlayerOn()?mCtrl:mNoMP;
  void SetCSMName(void);
  SetCSMName();
  //load
}

void method2(MAIN_GUI *data, void (*mfree_adr)(void *))
{
  FreeWS(data->ws1);
  FreeWS(data->ws2);
  data->gui.state=0;
}

void method3(MAIN_GUI *data, void *(*malloc_adr)(int), void (*mfree_adr)(void *))
{
  data->gui.state=2;
}

void method4(MAIN_GUI *data, void (*mfree_adr)(void *))
{
  if (data->gui.state!=2) return;
  data->gui.state=1;
}

int method5(MAIN_GUI *data, GUI_MSG *msg)
{
  switch (Mode)
  {
  case mCtrl:
    if (msg->gbsmsg->msg==KEY_DOWN)
    {
      switch(msg->gbsmsg->submess)
      {
      case '0':
        OldMode_Credits = Mode;
        Mode = mCredits;
        break;
      case LEFT_SOFT:
        OldMode_Setup = Mode;
        Mode = mSetup;
        break;
      case RIGHT_SOFT:
        return(1);
      case ENTER_BUTTON:
        MPlayer_Toggle();
        //return(1);
        break;
      case RIGHT_BUTTON:
        MPlayer_Prev();
        //return(1);
        break;
      case LEFT_BUTTON:
        MPlayer_Next();
        //return(1);
        break;
      case UP_BUTTON:
        MPlayer_Start();
        //return(1);
        break;
      case DOWN_BUTTON:
        MPlayer_Stop();
        //return(1);
        break;
      case VOL_DOWN_BUTTON:
        MPlayer_VolChange(-1);
        break;
      case VOL_UP_BUTTON:
        MPlayer_VolChange(1);
        break;
      case '*':
        MPlayer_Mute();
        break;
      }
    }
    break;
    
    case mSetup:
      if (msg->gbsmsg->msg==KEY_DOWN)
      {
        switch(msg->gbsmsg->submess)
        {
        case LEFT_SOFT:
          //save
        case RIGHT_SOFT:
          Mode = OldMode_Setup;
          break;
        case ENTER_BUTTON:
        case RIGHT_BUTTON:
        case LEFT_BUTTON:
          //change item
          break;
        case UP_BUTTON:
          //index--
          break;
        case DOWN_BUTTON:
          //index++
          break;
        }
      }
      break;
    
    case mCredits:
      if (msg->gbsmsg->msg==KEY_DOWN)
      {
        switch(msg->gbsmsg->submess)
        {
        case RIGHT_SOFT:
        case LEFT_SOFT:
        case ENTER_BUTTON:
        case RIGHT_BUTTON:
        case LEFT_BUTTON:
        case UP_BUTTON:
        case DOWN_BUTTON:
          Mode = OldMode_Credits;
        }
      }
      break;
  case mNoMP:
    if (msg->gbsmsg->msg==KEY_DOWN)
      {
        switch(msg->gbsmsg->submess)
        {
        case '0':
          OldMode_Credits = Mode;
          Mode = mCredits;
          break;
        case LEFT_SOFT:
          OldMode_Setup = Mode;
          Mode = mSetup;
          break;
        case RIGHT_SOFT:
        case ENTER_BUTTON:
        case RIGHT_BUTTON:
        case LEFT_BUTTON:
        case UP_BUTTON:
        case DOWN_BUTTON:
          return(1);
        }
      }
  }
  DrawRoundedFrame(0,0,131,175,0,0,0,
                        GetPaletteAdrByColorIndex(0),
                        GetPaletteAdrByColorIndex(20));
  DirectRedrawGUI();
  return(0);
}

void method7(MAIN_GUI *data, void (*mfree_adr)(void *))
{
  mfree_adr(data);
}

int method8(void){return(0);}

int method9(void){return(0);}

const void * const gui_methods[11]={
  (void *)method0, //Redraw
  (void *)method1, //Create
  (void *)method2, //Close
  (void *)method3, //Focus
  (void *)method4, //Unfocus
  (void *)method5, //OnKey
  0,
  (void *)method7, //Destroy
  (void *)method8,
  (void *)method9,
  0
};

const RECT Canvas={0,0,131,175};

void maincsm_oncreate(CSM_RAM *data)
{
  MAIN_GUI *main_gui=malloc(sizeof(MAIN_GUI));
  MAIN_CSM*csm=(MAIN_CSM*)data;
  zeromem(main_gui,sizeof(MAIN_GUI));
  main_gui->gui.canvas=(void *)(&Canvas);
  main_gui->gui.flag30=2;
  main_gui->gui.methods=(void *)gui_methods;
  main_gui->gui.item_ll.data_mfree=(void (*)(void *))mfree_adr();
  csm->csm.state=0;
  csm->csm.unk1=0;
  csm->gui_id=CreateGUI(main_gui);
}

void maincsm_onclose(CSM_RAM *csm)
{
  SetIllumination(1, 1, 0, 5);
  SetIllumination(0, 1, 0, 5);
  mode=0;
}

int maincsm_onmessage(CSM_RAM *data, GBS_MSG *msg)
{
  MAIN_CSM *csm=(MAIN_CSM*)data;
  if ((msg->msg==MSG_GUI_DESTROYED)&&((int)msg->data0==csm->gui_id))
  {
    csm->csm.state=-3;
  }
  return(1);
}

const int minus11=-11;

unsigned short maincsm_name_body[];

const struct
{
  CSM_DESC maincsm;
  WSHDR maincsm_name;
}MAINCSM =
{
  {
  maincsm_onmessage,
  maincsm_oncreate,
  0,
  0,
  0,
  0,
  maincsm_onclose,
  sizeof(MAIN_CSM),
  1,
  &minus11
  },
  {
    maincsm_name_body,
    NAMECSM_MAGIC1,
    NAMECSM_MAGIC2,
    0x0,
    139
  }
};

void SetCSMName(void)
{
  wsprintf((WSHDR *)(&MAINCSM.maincsm_name),"Media Control GUI");
}

void do_gui(void)
{
  char dummy[sizeof(MAIN_CSM)];
  my_csm_id=CreateCSM(&MAINCSM.maincsm, dummy,0);
  mode=-1;
}
[00:40] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15787 72 2830 5.6
perk11 9150 27 1664 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
RainMaker 5594 11 478 12
bank! 3045 3 420 7.2
Grizzzzly 2699 13 512 5.3
himtosh 2672 6 477 5.6
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:41] <RainMaker> Во, мля.... :x
[00:41] <perk11> RainMaker: :-D
[00:41] <perk11> talkers
[00:42] <PapuaUtils>
Болтун Слов /me Фраз Эфф.
perk11 4092 10 525 7.8
RainMaker 3930 2 72 55
RainMaker 3735 2 37 1e+02
perk11 3723 8 446 8.3
Adder 2257 0 175 13
Pavel81 1458 9 309 4.7
sodomised 1356 0 342 4
sodomised 1130 0 284 4
himtosh 844 1 164 5.1
Kibab 668 6 117 5.7

[00:42] <RainMaker> Да, ещё чуть-чуть и буду №1 :-!
[00:43] <perk11> ping
[00:44] <perk11> RainMaker: это у папуаса
[00:44] <perk11> а сумматор повис
[00:44] <RainMaker> ping
[00:44] <Pavel81> неудобна
[00:44] <RainMaker> perk11: ХЗ, нахъ.... Ответил же вроде после всего...
[00:44] <Adder>
Болтун Слов /me Фраз Эфф.
Pavel81 15787 72 2830 5.6
perk11 9152 27 1665 5.5
sodomised 8308 5 2027 4.1
Kibab 8202 55 1489 5.5
RainMaker 6232 11 480 13
bank! 3045 3 420 7.2
Grizzzzly 2699 13 512 5.3
himtosh 2672 6 477 5.6
Lisa 2589 37 622 4.2
DOMr 2446 4 522 4.7

[00:44] <perk11> он считал слова....
[00:44] <RainMaker> perk11: Ага
[00:44] -- andrey_ua вышел(а) из комнаты
[00:44] <perk11> у меня папуас уже 50 секунд процессорного времени отъел)
[00:44] <RainMaker> perk11: ГГ ;-)
[00:44] <RainMaker> perk11: Хочешь, ещё минуту скушает?
[00:44] <perk11> обычно не больше 10 секунд)
[00:44] <Adder> perk11: Понг от тебя 36.4 секунды
[00:44] <Adder> RainMaker: Понг от тебя 3.26 секунды
[00:44] <perk11> Adder: (Y)
[00:44] <Adder> perk11: Мда, поговорили...чет моя сегодня у меня(порт от более применимо, относительно поднятой проблемы
[00:44] <RainMaker> ping
[00:44] <Adder> RainMaker: Понг от тебя 0.404 секунды
[00:44] <RainMaker> Он думает.... :-)
[00:45] <Pavel81> RainMaker: что за косяки?
[00:45] <RainMaker> Pavel81: В смысле?
[00:45] <Pavel81> вызываю эльф, выролнил действие и клава опять в блок
[00:45] <Pavel81> *выполнил
[00:46] <RainMaker> Pavel81: Так и надо. А вообще, это вынесу в настройки в след. версии....
[00:46] <Pavel81> что потом опять вызывать на каждое действие по разу??? неудобно
[00:47] <RainMaker> Pavel81: Думаю, завтра выйдет версия 0.5 .... А если Илья (точнее, мы с ним) разберёмся с его Либой в0.3, то и вся 0.6, возможно RC1/2 ;-)
[00:47] <Pavel81> RainMaker: это круто!
[00:48] -- Lisa вышел(а) из комнаты
[00:48] <RainMaker> Вот такие вот пироги... Конечно, МастерЭльф + конфиги а-ля МП-патчи было бы круче, но моя идея мне тоже нравится
[00:49] <Pavel81> да пофиг как, лишь бы настройки были, а то помню текстинфо в иде открывал...
[00:49] -- Lisa вошел(а) в комнату
[00:50] <Lisa> *:)
[00:50] <RainMaker> Pavel81: В этом эльфе настройки попроще будут.... Типа да/нет
[00:53] -- ad вошел(а) в комнату
[00:54] -- Pavel81 вышел(а) из комнаты
[00:54] -- Pavel81 вошел(а) в комнату
[00:55] <Lisa> *:)
[00:55] -- ad вышел(а) из комнаты
[00:55] -- perk11 вышел(а) из комнаты
[00:59] -- perk11 вошел(а) в комнату
[01:00] <Pavel81> perk11: у тебя тема какая у бомбуса?
[01:00] <Lisa> Всетаки приятных снов я бай *:)
[01:00] <perk11> Night
[01:00] <RainMaker> Lisa: Adios!
[01:00] <Pavel81> Lisa: спокойной ночи
[01:00] <perk11> Lisa: Снов
[01:01] <Pavel81> а у меня tkabber
[01:01] <Lisa> :-*
[01:01] -- Lisa вышел(а) из комнаты
[01:01] <perk11> version Pavel81
[01:01] <Adder> perk11: у Pavel81 клиент Bombus 0.4.ZLib.699M_ad(1) (ru) - MIDP2 Platform=SIE-S75/42
[01:02] <perk11> Pavel81: Дай ссылку на мод ада, плиз
[01:02] <Pavel81> perk11: там конструктор сейчас же... погоди у меня реестр на компе жмется.
[01:03] <perk11> Ок
[01:04] -- PapuaUtils вышел(а) из комнаты
[01:04] <perk11> Я на это сжатие забил уже. После очередного раза приходиться лить бэкап. То офис перестает работать, то винда активацию просит, то еще что-нибудь. И проблемы возникают со всеми программами.
[01:04] <Pavel81> в смысле?
[01:04] <perk11> Со всеми программами для сжатия, я имел ввиду
[01:05] <perk11> Это не сжатие, а чистка, по сути
[01:05] <Pavel81> а. понял. я думал ты про бомбу.
[01:07] -- andrey_ua вошел(а) в комнату
[01:08] <perk11> :-D а смайлы для мазохистов работают?
[01:11] -- bank! вошел(а) в комнату
[01:12] <perk11> Мдя, у меня 560 кб получилось. А история там есть?
[01:14] -- perk11 вышел(а) из комнаты
[01:16] -- Pavel81 вышел(а) из комнаты: Replaced by new connection
[01:17] -- perk11 вошел(а) в комнату
[01:17] -- Pavel81 вошел(а) в комнату
[01:18] <Pavel81> perk11: ты трехмерные улыбки выбрал? история есть.
[01:18] <perk11> Истории нет
[01:18] <perk11> Улыбки да, трехмерные
[01:18] <Pavel81> есть
[01:19] <perk11> Как включить историю тогда?
[01:19] <Pavel81> perk11: только что смотрел наш с тобой разговор
[01:19] <Pavel81> в настройках включить
[01:19] -- perk11 вышел(а) из комнаты
[01:20] <Pavel81> perk11: и ещё надо повернуть слеш в путях
[01:22] -- Pavel81 вышел(а) из комнаты
[01:22] -- perk11 вошел(а) в комнату
[01:23] -- perk11 вышел(а) из комнаты
[01:24] -- perk11 вошел(а) в комнату
[01:24] <perk11> Все, разобрался, спасибо
[01:25] -- Pavel81 вошел(а) в комнату
[01:26] <perk11> Ладно, пойду спать, всем пока
[01:26] -- perk11 вышел(а) из комнаты
[01:26] <Pavel81> perk11: спокойной. я тоже. всем спокойной.
[01:27] <RainMaker>


Pavel81: Спок!
[01:38] -- RainMaker вышел(а) из комнаты