==== Эльфпак ====
;ELFPack v1.999 (c) Hussein
;SWI_Hook (c) Rst7/CBSIE
;ElfLoader (c)2007 by Rst7/CBSIE, BoBa, Kren
Эльфпак - набор, позволяющий запускать на телефоне исполняемые файлы в формате ELF. Эльфпак содержит:
* Elfloader - [[term:patch|патч]]((для телефонов, имеющих phone_emp_app.cxc - два патча)), содержащий загрузчик исполняемых файлов, а так же код, обеспечивающий перехват таких функций, как обработка нажатий клавиш и обработка системных сообщений.
* Elflib - патч, содержащий [[elflib:elflib|библиотеку функций]]((чтоб определить минимальный набор функций, требуемых для работы эльфлоадера, достаточно проверить скомпилированный ElfPack.elf программами/эльфами вроде elfcheck, плюс заглянуть в конец файла [[http://code.google.com/p/elfpack-se/source/browse/trunk/ElfPack/calls.asm|calls.asm]])).
* dyn_const.bin - двоичный файл, "сглаживающий" разницу между ПО телефонов (в основном разницу между ПО **разных** телефонов), чтоб эльфы могли одинаково работать вне зависимости от того, где они запускаются. Содержит номера шрифтов, коды клавиш, номера системных сообщений и др. Располагается в папке **%PATH_ELF_CONFIG_INT%** (см. папку Target исходников эльфлоадера(([[https://github.com/justdanpo/elfpack-se/tree/master/ElfPack/Target]])))
* LibraryDLL - библиотека, содержащая реализацию отсутствующих на некоторых телефонах функций. Располагается в папке **%PATH_DLL%**. Также содержит загрузчик vkp, позволяющий **обновлять** elflib без переустановки патчем - для этого достаточно помещать обновлённый vkp в %PATH_ELF_CONFIG_*%. LibraryDLL обязательна для A2. Для A1 при необходимости следует использовать Generic версию.
Так же относящимся к эльфпаку можно считать:
* Графический патч, меняющий иконку, ассоциированную с типом ELF (при компиляции эльфлоадера с константой NOICONS используется иконка с изображением мыши - "CALE_LUNAR_12ANIMALS_1ST_MOUSE_ICN"; если компилировать без этой константы, используется встроенная в эльфлоадер иконка, и графическим патчем её не изменить).
* Патч, уменьшающий буфер отладочного вывода. С мая 2010 не используется.
Дополнительно могут понадобиться патчи:
* Shorcut add fix (c) [[people:IronMaster]] - исправление функций работы со ссылками меню на A2
* db3150 messagebox bugfix (c) [[people:den_po]], [[people:IronMaster]] - устранение зависаний в мессаджбоксах со стилем 2
==== См. также ====
[[elfs:list|Описания некоторых эльфов]]