Все для Sony Ericsson, патчи, эльфы, моддинг, прошивка
  
Логин: Пароль: Запомнить: Привет гость! Зарегистрируйся или авторизируйся для получения доп. возможностей!
Разделы
PDA версия сайта
TrackIDentify
Новости
Статьи
Файлы
Патчи
Патчи A2
Патчи db2020
Эльфы
Исходники эльфов
Wiki
Форум
Опросы
Обратная связь
Развернуть/Свернуть
 
Развернуть/Свернуть

Создание Эльфов : Эльфостроение : Эльфы : Форум : Для Sony Ericsson патчи эльфы моддинг прошивка
/  Список форумов
   /  Эльфы
      /  Эльфостроение
   /  Создание Эльфов
На печать 
Правила 
Страница 199 из 211: « 1 ... 195 196 197 198 [199] 200 201 202 203 ... 211 »

nvoid


Expert


Регистрация: 29.11.07
Сообщений: 1375
Репутация: 380





 
  #1981 [28.12.07, 11:46] Создание Эльфов   

 
Предлагаю создать тему, посвященную созданию Эльфов. Думаю, удобнее будет собрать ссылки, посвященные Эльфам, в одной теме, а не оффтопить в разных...

Список функций находится в файле *.lib.vkp

Ссылки:
Описание некоторых функций в Wiki
Созадние ELF под Siemens
Создание ELF под Siemens (здесь больше)
Урезанная IAR
Патч для IAR
Учебник по СИ
Основы программирования эльфов

SVN:
TortoiseSVN (программа для работы с SVN)
svn://svn.boba.su/ARM - Зеркало (http mirror) Siemens SVN
svn://svn.boba.su/SE - Зеркало (http mirror) Sony Ericsson SVN
для доступа на svn используйте guest/guest

Другие темы:
Вопросы о СИ (языке)
Исходники Эльфов
Компиляция ЭП

Уроки:
Создание простого эльфа Фонарик от arban.
Создание GUI от arban: часть 1, часть 2.

---------------------------------------------
elfcheck - простая прога, которая проверяет, используются ли в эльфах (включая эльфлоадер) функции, которых нет в либе.
simple tool which checks whether there are functions used in elfs (including elfloader) that are not included in library.

Q: How use elfcheck?
Q: Как использовать?
R: Look this page here

saveevents.elf - сохранение евентов (EVENT)

(c) den_po

---------------------------------------------

Шаблоны эльфов для IAR
Некоторые полезные для разработчиков шаблоны эльфов.
На данный момент имеются:
1) Пустой эльф
2) Пустой эльф со своей книгой
3) Эльф-рисовальщик на главном экране
4) Эльф для RegFile (по сути - пустой эльф, но с дополнительными входными параметрами)
5) Эльф с графическим интерфейсом - списком
6) Эльф-патч, который можно конвертировать в *.vkp при помощи elf2vkp

Установка: скопируйте содержимое архива в IAR\ARM\config\template\
Использование: Project->New project->Elf SDK->Нужный шаблон

(C) UltraShot

---------------------------------------------

Раздел в Wiki, посвященный созданию эльфов



Прикрепленный к сообщению файл:

elfcheck.rar elfcheck.rar (32.56 kb; 1014 hits) Скачать файл
saveevents.elf saveevents.elf (1.13 kb; 439 hits) Скачать файл
iar_templates.zip iar_templates.zip (114.52 kb; 720 hits) Скачать файл


Motorola EM30
Спасибо сказали: pahon, Zormax, scorpion1616, Evil-Racer, Alex_E, avens, DuMOHsmol, TahaSpawn, vodoo999, Alex1992, ELECTRO-NIC, JohnNorth, HotRabbit, ENSAIER, Olegat0r, scorpion16_Richi, Oganyan-Arthur, Melodic_Death, toha257, farid, mugen, VovanLS, blacklizard, ZuZiK aka pavelsh, Metaler, Atreyu, Nook, Vov4ик, KnoonK, a6b6

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #1982 [21.12.11, 17:10] Re: Создание Эльфов   

 
SummerWood, вот из-за того, что некоторые такие идиоты занимаются написанием эльфов, среди некоторых пользователей бытует мнение, мол патчи стабильней эльфов




promt is better than google translate
Спасибо сказали: Nook, MrGraL

SummerWood


Пользователь


Регистрация: 26.8.10
Сообщений: 101
Репутация: 161





 
  #1983 [21.12.11, 17:10] Re: Создание Эльфов   

 
den_po,так и ожидал что ты так скажешь
увы ,но твоё мнение ошибочно
но я же не идиот =)
да,но где им прочитать как надо делать правильно?


[ Редактировано SummerWood в 21.12.11 16:14 ]

[ Редактировано SummerWood в 21.12.11 16:19 ]


Предупреждение от den_po
Нарушение правил:
5.3.21. Нежелание или неумение неторопливо прочитать Форум и найти ответы, не задавая глупых вопросов в виде флуда в несоответствующей теме.


Спасибо сказали: IDOL1234

blacklizard


Patchmaster


Регистрация: 22.7.08
Сообщений: 347
Репутация: 2213





 
  #1984 [21.12.11, 19:11] Re: Создание Эльфов   

 
D3mon пишет:
den_po, стало чуть понятнее, спасибо!

У класса IShell есть метод:
Код:
int IShell_CreateInstance(PUUID cid, PUUID iid, void** pInterface);

отличается ли этот метод от функции CoCreateInstance ?

в прошивке встречается и такое, и такое использование..


if you dump IShell object, you can see the IShell_CreateInstance pointer store the address of CoCreateInstance




Respect: mc_kibel, moedjs, myrzeug, den_po, IronMaster
Спасибо сказали: farid

SERGK393


Elfmaker


Регистрация: 25.1.09
Сообщений: 330
Репутация: 1897
Откуда: Воронеж, Россия




 
  #1985 [24.12.11, 14:55] Re: Создание Эльфов   

 
SummerWood пишет:
в wiki не описаны функции
DispObject_SetRefreshTimer
DispObject_Show
DISP_DESC_SetOnRedraw
DISP_DESC_SetOnRefresh
можете подсказать как их использовать
и какие параметры за что отвечают?

А что тут блин догадываться?

DispObject_SetRefreshTimer - это таймер, выставляет паузу
DispObject_Show - показывает дисп обж, который относится к гуи, к дисп деск, ну итд.
DISP_DESC_SetOnRedraw - назначается функа, где можно рисовать
DISP_DESC_SetOnRefresh - это к первой функе, но тут как раз назначается функа к таймеру

Для начала надо простенький эльф сделать, перебрать все уроки, а потом спрашивать что то




K310I - R4HA014
WMR 795407939817
WMZ 160582394547
Спасибо сказали: SummerWood

SummerWood


Пользователь


Регистрация: 26.8.10
Сообщений: 101
Репутация: 161





 
  #1986 [30.12.11, 18:23] Re: Создание Эльфов   

 
КАК сделать чтобы гуй на полный экран рисовался,а то видно статусбар и софты



D3mon


Developer


Регистрация: 23.2.08
Сообщений: 1141
Репутация: 10348
Откуда: Краснодар




 
  #1987 [30.12.11, 18:29] Re: Создание Эльфов   

 
SummerWood,
неужели так сложно найти исходники эльфов/патчей с таким гуи ????

Код:
GUIObject_SetStyle( gui, UI_OverlayStyle_TrueFullScreen );
GUIObject_SoftKeys_Hide( gui );


[ Редактировано D3mon в 30.12.11 18:55 ]




Sony Xperia XZ3 Green
Sony Xperia Z3 Compact Orange
W995i SW-R1GA026
:(
Спасибо сказали: SummerWood

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #1988 [30.12.11, 18:49] Re: Создание Эльфов   

 
D3mon, не нужно использовать числа, нужно использовать константы из types.h. глянь UI_OverlayStyle_t




promt is better than google translate
Спасибо сказали: D3mon, SummerWood

albertnet3


Patcher/Elfmaker


Регистрация: 12.6.09
Сообщений: 283
Репутация: 1826
Откуда: Argentina-Bs. As.




 
  #1989 [31.12.11, 04:37] Re: Создание Эльфов   

 
how to perform an action without restart in this type of gui.
I hope your help, thanks:)

I tried this way and reboot my phone:

Код: 
int action1()
{
 
    MessageBox(EMPTY_TEXTID,STR(" NofMany 1"),0, 1 ,5000,0);
  
    return (1);
}


int action2()
{

    MessageBox(EMPTY_TEXTID,STR(" NofMany 2"),0, 1 ,5000,0);
  
    return (1);
}


int action3()
{
 
    MessageBox(EMPTY_TEXTID,STR(" NofMany 3"),0, 1 ,5000,0);
  
    return (1);
}


int action4()
{
 
    MessageBox(EMPTY_TEXTID,STR(" NofMany 4"),0, 1 ,5000,0);
 
    return (1);
}

void onEnterSettings(BOOK *book,GUI* )
{
  MyBOOK *m_bk = (MyBOOK *)book;
u16 checked_table[4];
NOfMany_GetChecked( m_bk->nom , checked_table );

if(checked_table[0])

action1();

if(checked_table[1])

action2();

if(checked_table[2])

action3();

if(checked_table[3])

action4();

}

int CreateNofMany(void *r0, BOOK *book)
{
GUI_NOFMANY * nom = CreateNOfMany( book );
int sid[4];
sid[0]=STR( "texto 1" );
sid[1]=STR( "texto 2" );
sid[2]=STR( "texto 3" );
sid[3]=STR( "texto 4" );
NOfMany_SetTexts( nom , sid , 4 );
...
...
GUIObject_Softkey_SetAction(nom,ACTION_ACCEPT, onEnterSettings);
}


and this reboot my phone:

Код: 
typedef struct{
  int Estyle1;
  int Estyle2;
  int Estyle3;
  int Estyle4;
}FILE_DATA;

typedef struct{
  int is1;
  int is2;
  int is3;
  int is4; 
}MY_DATA;

typedef struct
{
  BOOK * book;
  GUI_NOFMANY * nom;
  FILE_DATA MY_DATA;
}MyBOOK;

int action1()
{
  if(GetChecked()==0){
    MessageBox(EMPTY_TEXTID,STR(" NofMany 1"),0, 1 ,5000,0);
   } 
    return (1);
}


int action2()
{
  if(GetChecked()==1){
    MessageBox(EMPTY_TEXTID,STR(" NofMany 2"),0, 1 ,5000,0);
    }
    return (1);
}


int action3()
{
  if(GetChecked()==2){
    MessageBox(EMPTY_TEXTID,STR(" NofMany 3"),0, 1 ,5000,0);
    }
    return (1);
}

int action4()
{
  if(GetChecked()==2){
    MessageBox(EMPTY_TEXTID,STR(" NofMany 4"),0, 1 ,5000,0);
    }
    return (1);
}

int GetChecked()
{
  int f;
  int ret=0;
  if ( (f = _fopen( FILE_PATH,FILE_NAME, FSX_O_RDONLY, FSX_S_IREAD|FSX_S_IWRITE, 0)) >=0 )
  {
    FILE_DATA *fd  = (FILE_DATA*)malloc(sizeof(FILE_DATA));
    memset (fd,0,sizeof(FILE_DATA));
    fread( f, fd, sizeof(FILE_DATA));
         if(fd->Estyle1==1)ret=0;
    else if(fd->Estyle2==1)ret=1;
    else if(fd->Estyle3==1)ret=2;
    else if(fd->Estyle4==1)ret=3;
    fclose (f);
    mfree(fd);
  }
  return ret;
}

void SetChecked(int level, BOOK*book)
{
    MyBOOK *m_bk = (MyBOOK *)book;
    int f;
    if ( (f = _fopen( FILE_PATH,FILE_NAME, FSX_O_RDONLY, FSX_S_IREAD|FSX_S_IWRITE, 0)) >=0 )
    {
      FILE_DATA *fd  = (FILE_DATA*)malloc(sizeof(FILE_DATA));
      memset (fd,0,sizeof(FILE_DATA));
      fread( f, fd, sizeof(FILE_DATA));
      m_bk->MY_DATA=*fd;
      fclose (f);
      mfree(fd);
    } 
    if (level==0)
    {
      m_bk->MY_DATA.Estyle1=1;
      m_bk->MY_DATA.Estyle2=0;
      m_bk->MY_DATA.Estyle3=0;
      m_bk->MY_DATA.Estyle4=0;
    }
    else if(level==1)
    {
      m_bk->MY_DATA.Estyle1=0;
      m_bk->MY_DATA.Estyle2=1;
      m_bk->MY_DATA.Estyle3=0;
      m_bk->MY_DATA.Estyle4=0;

    }
    else if(level==2)
    {
      m_bk->MY_DATA.Estyle1=0;
      m_bk->MY_DATA.Estyle2=0;
      m_bk->MY_DATA.Estyle3=1;
      m_bk->MY_DATA.Estyle4=0;
    }
   else if(level==3)
    {
      m_bk->MY_DATA.Estyle1=0;
      m_bk->MY_DATA.Estyle2=0;
      m_bk->MY_DATA.Estyle3=0;
      m_bk->MY_DATA.Estyle4=1;
    }
        
    if ( (f = _fopen( FILE_PATH,FILE_NAME, FSX_O_WRONLY, FSX_S_IREAD|FSX_S_IWRITE, 0)) >=0 )
    {
      FILE_DATA *fd  = (FILE_DATA*)malloc(sizeof(FILE_DATA));
      memset (fd,0,sizeof(FILE_DATA));    
      *fd=m_bk->MY_DATA;
      fwrite(f,fd,sizeof(FILE_DATA));
      fclose (f);
      mfree(fd);
    }    
}

void onEnterSettings(BOOK *book,GUI* )
{
  MyBOOK *m_bk = (MyBOOK *)book;
u16 checked_table[4];
NOfMany_GetChecked( m_bk->nom , checked_table );

if(checked_table[0])

SetChecked(0,book);

if(checked_table[1])

SetChecked(1,book);

if(checked_table[2])

SetChecked(2,book);

if(checked_table[3])

SetChecked(3,book);

}

{
GUI_NOFMANY * nom = CreateNOfMany( book );
int sid[4];
sid[0]=STR( "texto 1" );
sid[1]=STR( "texto 2" );
sid[2]=STR( "texto 3" );
sid[3]=STR( "texto 4" );
NOfMany_SetTexts( nom , sid , 4 );
...
...
GUIObject_Softkey_SetAction(nom,ACTION_ACCEPT, onEnterSettings);
}

if I press softkey action accept or action "Yes" in the question save change reboot my phone.
I hope your help, thanks:)




Sе Confidence in yourself is the first secret of success(R. W. Emerson)

ZverUA


Elfmaker


Регистрация: 6.3.09
Сообщений: 131
Репутация: 724
Откуда: Полтава




 
  #1990 [08.01.12, 02:42] Re: Создание Эльфов   

 
Что более оптимально использовать? Ловушку для всех событий (NIL_EVENT) или таймер?




WMZ 360930633630
WMR 368626930223
WMU 185607343806

mmcorp


Patcher/Elfmaker


Регистрация: 14.5.08
Сообщений: 358
Репутация: 2528
Откуда: Ржев




 
  #1991 [08.01.12, 18:12] Re: Создание Эльфов   

 
ZverUA, в плане производительности - таймер. Но тут зависит от поставленной задачи, есть такие, где оптимальнее поставить ловушку на событие.




не занимаюсь эльфами и патчами (=
Siemens c75 -> SonyEricsson k610i + SonyEricsson w595 + SonyEricsson w580i -> HTC Desire Z
Спасибо сказали: ZverUA, Metaler
Страница 199 из 211: « 1 ... 195 196 197 198 [199] 200 201 202 203 ... 211 »


Похожие темы

  • Поиск
  • Права
Вы не можете начинать темы.
Вы не можете редактировать свои сообщения.
Вы не можете создавать опросы.
Вы не можете вкладывать файлы в сообщения.
Вы не можете отвечать на сообщения.
Вы не можете удалять свои сообщения.
Вы не можете голосовать.

Главная Новости Статьи Файлы Патчи Форум Опросы PDA
- Генерация страницы: 0.31 секунд | 13 Запросов | HTML: 62.66 КБ -