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

Создание Эльфов : Эльфостроение : Эльфы : Форум : Для Sony Ericsson патчи эльфы моддинг прошивка
/  Список форумов
   /  Эльфы
      /  Эльфостроение
   /  Создание Эльфов
На печать 
Правила 
Страница 192 из 211: « 1 ... 188 189 190 191 [192] 193 194 195 196 ... 211 »

nvoid


Expert


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





 
  #1911 [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

Metaler


Elfmaker


Регистрация: 26.4.10
Сообщений: 201
Репутация: 2158
Откуда: Пенза




 
  #1912 [08.11.11, 22:11] Re: Создание Эльфов   

 
Подскажите в чём проблема:
хотел использовать в эльфе функцию
Код:
StringInput_GetCursorPosition(GUI*, u16 pos, char _zero);

но при её вызове ребут. Написал отдельно эльф для проверки, вот часть кода, непосредственно использующего ф-ю:
Код: 

if(key==KEY_VOL_UP && mode==KBD_SHORT_PRESS && !(isKeylocked()) )                                                                        
     {
        u16 c_pos;
        wchar_t * src=new wchar_t[256];
        StringInput_GetCursorPosition( DispObject_GetGUI(Display_GetFocusedDispObject(0)), &c_pos, 0 );
        snwprintf(src, 255, L"%i", c_pos ); 
        MessageBox(EMPTY_TEXTID,TextID_Create(src,ENC_UCS2,TEXTID_ANY_LEN),NOIMAGE,1,0,0);
        delete src;
        return(-1);
      } 

так же при вызове ребут. При использовании, например
Код:
StringInput_GetStringAndLen( GUI*, wchar_t**, u16* );

всё нормально.
P.S.: Проверял на 3 телефонах.




К800 SW-R8BF003
W995 SW-R1GA026

Joker XT


VIP Developer


Регистрация: 5.8.06
Сообщений: 1292
Репутация: 7582





 
  #1913 [08.11.11, 23:11] Re: Создание Эльфов   

 
из VEFa
Код: 
void EditFile_SetCursor(BOOK *MsgBxBook, GUI *gui_si)
{
  wchar_t *InputText;
  u16 len;
  StringInput_GetStringAndLen(gui_si, &InputText, &len);
  
  u16 current_cur_pos;
  char zero;
  StringInput_GetCursorPosition(gui_si, &current_cur_pos, &zero);
  
  second_strinp = CreateStringInputVA(0,
                      VAR_BOOK(MsgBxBook),
                      VAR_STRINP_MODE(IT_INTEGER),
                      VAR_OK_PROC(SetCursor_ActionOk),
                      VAR_PREV_ACTION_PROC(SetCursor_ActionBack),
                      VAR_STRINP_SET_INT_VAL(current_cur_pos),
                      VAR_STRINP_MIN_INT_VAL(0),
                      VAR_STRINP_MAX_INT_VAL(len),
                      0);
}




SE C901 [R1GA028]
Спасибо сказали: dimony, Metaler

IDOL1234


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


Регистрация: 29.3.11
Сообщений: 113
Репутация: 1
Откуда: СПб




 
  #1914 [25.11.11, 17:33] Re: Создание Эльфов   

 
Как сэмулировать нажатие клавиши?
Как сгенерировать эвент?




пшшшшшшшшшшшшшш!

Rc


Elfmaker


Регистрация: 22.6.08
Сообщений: 229
Репутация: 1208
Откуда: г. Арзамас




 
  #1915 [25.11.11, 18:37] Re: Создание Эльфов   

 
IDOL1234 пишет:
Как сэмулировать нажатие клавиши?
Как сгенерировать эвент?

Переназначение клавиши - return (NEEDED_KEY) в кейхуке, но только для достаточно новых ревизий ЭП
Нажатие для конкретного disp_obj
Код:
DISP_OBJ_ONKEY_METHOD onmykey=DispObject_GetOnKey (Display_GetFocusedDispObject(0));
onmykey (Display_GetFocusedDispObject(0),NEEDED_KEY,0,0,0);
onmykey (Display_GetFocusedDispObject(0),NEEDED_KEY,0,0,3);

Не знаю, работает ли с современными ревизиями инклудов

Для ивентов кури функи UI_Event




K750i R1CA021
С901 R1GA028
Siemens ME75
Спасибо сказали: IDOL1234

IDOL1234


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


Регистрация: 29.3.11
Сообщений: 113
Репутация: 1
Откуда: СПб




 
  #1916 [25.11.11, 19:18] Re: Создание Эльфов   

 
Спасибо большое!
А то я уже пытался генерировать эвент нажатия клавиши и ловить это нажатие кейхуком :-o
----
Скажите, можно ли как-нибудь отключить кейхук с ошибочным условием, из-за которого всегда возвращается (-1), без перезагрузки телефона?
----
Не.. То ли я туплю, то ли что-то не так.
Код: 
      if (x > 1000)
      {
         // MessageBox(EMPTY_TEXTID,STR("Hello Wordl!\n\nExample elf.."), NOIMAGE, 1, 500,NULL);
          //UI_Event( OPERATORKEY_PRESSED_EVENT );
        
           DISP_OBJ_ONKEY_METHOD onmykey=DispObject_GetOnKey (Display_GetFocusedDispObject(0));
           onmykey (Display_GetFocusedDispObject(0),KEY_LEFT,0,0,0);
           onmykey (Display_GetFocusedDispObject(0),KEY_LEFT,0,0,3);
        
      }

Месседж, если его раскомментировать, появляется, а кнопка не срабатывает. Я правильно заменил KEY_NEEDED на код клавиши?

[ Редактировано IDOL1234 в 25.11.11 19:30 ]




пшшшшшшшшшшшшшш!
Спасибо сказали: SERGK393
'Фу' сказали: gordan33-92

SERGK393


Elfmaker


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




 
  #1917 [25.11.11, 19:57] Re: Создание Эльфов   

 
IDOL1234 пишет:
Месседж, если его раскомментировать, появляется, а кнопка не срабатывает.

IDOL1234, Правильно, потому что он генерирует нажатие, когда мессадж в фокусе. Это тебе надо сначала клавиши сэмулировать, а потом вывести сообщение.




K310I - R4HA014
WMR 795407939817
WMZ 160582394547

IDOL1234


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


Регистрация: 29.3.11
Сообщений: 113
Репутация: 1
Откуда: СПб




 
  #1918 [25.11.11, 20:15] Re: Создание Эльфов   

 
Ненене, я его затем и закомментировал, чтобы такого не происходило. А до этого я его специально написал, чтобы проверить, срабатывает ли условие.
----
Можно ли получить текст из "чужого" поля ввода (Например, при редактировании sms) при помощи StringInput_GetStringAndLen?

[ Редактировано IDOL1234 в 25.11.11 20:32 ]




пшшшшшшшшшшшшшш!

Metaler


Elfmaker


Регистрация: 26.4.10
Сообщений: 201
Репутация: 2158
Откуда: Пенза




 
  #1919 [26.11.11, 00:34] Re: Создание Эльфов   

 
IDOL1234, можно




К800 SW-R8BF003
W995 SW-R1GA026
Спасибо сказали: IDOL1234, MrGraL

IDOL1234


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


Регистрация: 29.3.11
Сообщений: 113
Репутация: 1
Откуда: СПб




 
  #1920 [26.11.11, 20:42] Re: Создание Эльфов   

 
Так всё же, как сгенерировать нажатие на кнопку? Интересуют кнопки влево, вправо, вверх, вниз. Приведённый выше код почему-то не работает.




пшшшшшшшшшшшшшш!

Metaler


Elfmaker


Регистрация: 26.4.10
Сообщений: 201
Репутация: 2158
Откуда: Пенза




 
  #1921 [27.11.11, 01:22] Re: Создание Эльфов   

 
IDOL1234, вот так примерно
Код: 
int MyKey(int key,int r1,int mode,LPARAM,DISP_OBJ*dispobj)

  if(key==KEY_DIGITAL_0+2 && mode==KBD_SHORT_PRESS)                                                                        
  {  
    return( KEY_UP );
  }
}

int main (void)
{
   ModifyKeyHook(MyKey,KEY_HOOK_ADD,NULL);
   return(0);




К800 SW-R8BF003
W995 SW-R1GA026
Страница 192 из 211: « 1 ... 188 189 190 191 [192] 193 194 195 196 ... 211 »


Похожие темы

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

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