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

Создание Эльфов : Эльфостроение : Эльфы : Форум : Для Sony Ericsson патчи эльфы моддинг прошивка
/  Список форумов
   /  Эльфы
      /  Эльфостроение
   /  Создание Эльфов
На печать 
Правила 
Страница 177 из 211: « 1 ... 173 174 175 176 [177] 178 179 180 181 ... 211 »

nvoid


Expert


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





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

Black_Roland


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


Регистрация: 24.10.10
Сообщений: 71
Репутация: 368
Откуда: , откуда?




 
  #1762 [06.05.11, 16:12] Re: Создание Эльфов   

 
Therion, Ну я это уже понял :) Я сначала перебирал все ID, пока до обоев не дошел. Вопрос немного в другом был.




Зарезервировано ;-)

Skorp1992


Elfmaker


Регистрация: 6.3.08
Сообщений: 147
Репутация: 1008
Откуда: Луганск, Украина




 
  #1763 [06.05.11, 16:35] Re: Создание Эльфов   

 
Black_Roland, держи:
Код: 
wchar_t* GetFileName(wchar_t* file) // file - полный путь к файлу
{
  int num = 0;
  wchar_t* name = new wchar_t[wstrlen(file)+1];
  wstrcpy(name, file);
  for(int i = wstrlen(file)-1; i >= 0; i--)
  {
    if(file[i] != '/')
      num = i;
    else
      break;
  }
  for(int i = 0; i < wstrlen(name)-num; i++)
  {    
    name[i] = name[i+num];
  }
  for(int i = wstrlen(name)-num; i < wstrlen(name); i++)
  {
    name[i] = '\0';
  }
  return name;
}

wchar_t* GetFilePath(wchar_t* file)
{
  wchar_t* path = new wchar_t[wstrlen(file)+1];  
  
  wstrcpy(path, file);
  for(int i = wstrlen(path)-1; i >= 0; i--)
  {
    if(path[i] != '/')
      path[i] = '\0';
    else
      break;
  }
  
  return path;
}




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

Va_st


Patchmaster


Регистрация: 3.8.08
Сообщений: 440
Репутация: 1142





 
  #1764 [07.05.11, 09:14] Re: Создание Эльфов   

 
Код: 

wchar_t* GetFileName(wchar_t* s)
{
  for(int b=wstrlen(s)-1;b>=0;b--)
  {
    if(s[b]=='/')
    {
      s=s+b+1;
      break;
    }
  }
  return s;
}




j10i2 r7ca061
Спасибо сказали: farid, toha257

Joker XT


VIP Developer


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





 
  #1765 [07.05.11, 09:49] Re: Создание Эльфов   

 
typedef enum
{
UIBackgroundManagerImage_None,
UIBackgroundManagerImage_Current,
UIBackgroundManagerImage_Standby,
UIBackgroundManagerImage_Desktop,
UIBackgroundManagerImage_General,
UIBackgroundManagerImage_UserStandby,
UIBackgroundManagerImage_Overlay,
UIBackgroundManagerImage_MoreList,
UIBackgroundManagerImage_HomeScreen,
UIBackgroundManagerImage_Title,
UIBackgroundManagerImage_TitleSmall,
UIBackgroundManagerImage_TitleTab,
UIBackgroundManagerImage_TitleOverlay,
UIBackgroundManagerImage_TitleTabHomeScreen,
UIBackgroundManagerImage_Highlight,
UIBackgroundManagerImage_HighlightLarge,
UIBackgroundManagerImage_HighlightDesktop,
UIBackgroundManagerImage_HighlightOverlay,
UIBackgroundManagerImage_HighlightMoreList,
UIBackgroundManagerImage_HighlightHomeScreen,
UIBackgroundManagerImage_HighlightLargeHomeScreen,
UIBackgroundManagerImage_StandbyStatusBar,
UIBackgroundManagerImage_StandbySoftkeys,
UIBackgroundManagerImage_TabSelected,
UIBackgroundManagerImage_TabSelectedHomeScreen,
UIBackgroundManagerImage_TabUnSelected,
UIBackgroundManagerImage_TabUnSelectedHomeScreen,
UIBackgroundManagerImage_SoftkeyLeftPressed,
UIBackgroundManagerImage_SoftkeyMiddlePressed,
UIBackgroundManagerImage_SoftkeyRightPressed ,
UIBackgroundManagerImage_Input,
UIBackgroundManagerImage_InputSmall,
UIBackgroundManagerImage_SecondDisplayCurrent,
UIBackgroundManagerImage_SecondDisplayStandby,
UIBackgroundManagerImage_UserSecondDisplayStandby,
UIBackgroundManagerImage_MediaPortrait,
UIBackgroundManagerImage_MediaLandscape,
UIBackgroundManagerImage_Last
} UIBackgroundManagerImage_t;


Вот какие изображения можно установить с помощью StandbyBackground_SetImage

А вообще надо переименовать StandbyBackground_SetImage в BackgroundManager_SetImage




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

UltraShot


Developer/Moder


Регистрация: 21.5.07
Сообщений: 1729
Репутация: 1827
Откуда: Санкт-Петербург / Череповец




 
  #1766 [07.05.11, 13:43] Re: Создание Эльфов   

 
Skorp1992, Va_st, а зачем придумывать велосипеды, когда есть wstrrchr?



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

Black_Roland


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


Регистрация: 24.10.10
Сообщений: 71
Репутация: 368
Откуда: , откуда?




 
  #1767 [07.05.11, 14:29] Re: Создание Эльфов   

 
Вот что нашел:
Код:
wchar_t* buffer = new wchar_t[0x128];
wchar_t* fpath = new wchar_t[0x128];
wchar_t* fullpath = L"/card/music/artist/song.mp3";
wchar_t* pos = wstrrchr(fullpath,'/');
*pos = _NULL;
snwprintf( buffer, 0x128, L"Path: %ls\nFile: %ls\n",fullpath,pos+1 );

(с) blacklizard

Пока не проверял, но думаю работает :-) UltraShot, Спасибо за wstrrchr.




Зарезервировано ;-)

diezil


Patcher


Регистрация: 22.9.07
Сообщений: 83
Репутация: 2033
Откуда: England




 
  #1768 [07.05.11, 15:13] Re: Создание Эльфов   

 
Код: 
wchar_t *GetFileName( const wchar_t* wstr )
{    
    const wchar_t *pwstr( wstr );
    for ( ;; ++wstr )
    {
        if ( *wstr == '/' || *wstr == '\\' ) 
            pwstr = wstr;
        else if ( *wstr == '\0')
            return ( (wchar_t*)pwstr+1 );
    }
}

int GetFolderLen( const wchar_t* wstr )
{  
    const wchar_t *plen( 0 ), *pwstr( wstr );
    for ( ;; ++wstr )
    {
        if ( *wstr == '/' || *wstr == '\\' ) 
            plen = wstr;
        
        else if ( *wstr == '\0')
            if ( plen )
                return ( plen-pwstr );
            else 
                return (0);
    } 
}


Код:

    wchar_t *fullpath = L"\\testing/path\\and/filename\\file.ext" ; 
    
    //MessageBox( EMPTY_TEXTID, TextID_Create( GetFileName( fullpath ), (TEXT_ENCODING)0, TEXTID_ANY_LEN ), NOIMAGE, 1, 5000, book );
    MessageBox( EMPTY_TEXTID, TextID_Create( fullpath, (TEXT_ENCODING)0, GetFolderLen( fullpath )), NOIMAGE, 1, 5000, book );




C902 R3EG004 AS
Извините за мой русский (Google Translate :oops:)

Joker XT


VIP Developer


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





 
  #1769 [07.05.11, 16:08] Re: Создание Эльфов   

 
Black_Roland, ято ты хочешь? тебе же UltraShot написал, делай так


Код:
wchar_t* fullpath = L"/card/music/artist/song.mp3";
wchar_t* dir = new wchar_t[wstrlen(fullpath)+1];
wstrcpy(dir,fullpath);
wchar_t* name = wstrrchr(dir,'/') + 1;
*wstrrchr(dir,'/') = 0;
вот тебе и dir и name




SE C901 [R1GA028]

Black_Roland


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


Регистрация: 24.10.10
Сообщений: 71
Репутация: 368
Откуда: , откуда?




 
  #1770 [07.05.11, 17:03] Re: Создание Эльфов   

 
Joker XT, Спасибо, я уже понял. Уже нашел красивый вариант.




Зарезервировано ;-)

Joker XT


VIP Developer


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





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

 
Black_Roland, красивый не значит быстрый)




SE C901 [R1GA028]
Страница 177 из 211: « 1 ... 173 174 175 176 [177] 178 179 180 181 ... 211 »


Похожие темы

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

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