ElfPack2: различия между версиями
(Набросал заготовку) |
(нет различий) |
Версия 21:13, 29 октября 2009
ElfPack2 — это развитие предыдущей версии ElfPack-а для Motorola, где учтён опыт его использования как со стороны конечного пользователя, так и со стороны разработчика эльфов, исправлено множество моментов, досаждавших ранее, а также значительно расширена функциональность.
Отличия от предыдущей версии
ElfPack2 является улучшенной и полностью переработанной версией своего предшественника. Достаточно упомянуть, что объём кода увеличился почти в 4 раза, и при этом они не имеют общего кода.
- Для сборки эльфов используется компилятор GCC вместо ADS
Переход на GCC позволил реализовать полноценную систему импортов и динамических библиотек - Основная библиотека функций имеет более сложный формат, при этом в ней хранится её версия и версия прошивки, для которой библиотека предназначена. При этом библиотека может быть перезагружена в любой момент - для этого более не требуется перезагружать телефон.
- Исправлена недоработка, связанная с передачей параметров в эльф в виде char вместо WCHAR
- Более совершенный обработчик auto.run
Нововведения
- Добавлена полноценная система импортов функций по их именам. Если ранее для этой цели использовались механизмы сомнительной надёжности, что не раз приводило к различным проблемам, то теперь процедура загрузки эльфа стала гораздо более надёжной. Это в том числе означает, что для каждого загружаемого эльфа проверяется наличие в библиотеках всех требуемых им функций, и выводится сообщение об ошибке, если обнаружены несоответствия.
- Добавлена "Консоль" - встроенное в ElfPack средство для вывода текстовой информации на дисплей. В основном используется для вывода информации самим ElfPack-ом, но ещё позволяет выводить информацию и эльфам. Консоль будет полезна для фоновых эльфов.
- Система callback-ов для вывода на дисплей средствами AHI параллельно с UIS
- Shared libraries
- API
- Config
- Пропуск auto.run
- PortKit