Create site free
Всё для Motorola|Мобильный форум
Пятница, 10.02.2012, 02:07
Приветствую Вас Гость | RSS |Скачать ГОСТ СНиП ЕНиР - Бесплатно

Внимание! Форум является поддоменом основного сайта. Поэтому Вам необходимо заново зарегистрироваться/авторизоваться для принятия участия в жизни форума!

Сайт | Главная Форума | forum.motomaxclub | Регистрация | Вход
 

Всё для Motorola

[ Новые сообщения · Участники · Правила · Поиск · RSS ]
Страница 1 из 11
Модератор форума: MotoWalkman 
forum.motomaxclub » MOTOROLA » ELFPack » Учимся писать эльфов вместе, SDK v0.2
Учимся писать эльфов вместе, SDK v0.2
MotoWalkmanДата: Среда, 18.06.2008, 20:59 | Сообщение # 1
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
Вот и долгожданное обновление SDK до v0.2

Основные новшества с прошлой версии:
+ Добавлено множество функций в SDK
+ Добавлено два новых примера - на этот раз GUI
+ Обновлена библиотека! Так что не забываем обновляться из соответствующей темы: Портация Elfpack v1.0
Данный SDK рассчитан на работу с библиотекой не ниже v071218!

Что внутри:
Папка SDK - ну, и так ясно, заголовочные файлы. За описаниями функций заглядываем в эту папку.

helloworld_snd - первый пример эльфа. Несколько нестандартный HelloWorld, заменяет озвучку цифровой клавиатуры системными звуками. Предназначен в основном для изучения структуры приложения (Application), ну и как пример приложения, работающего в фоне.

helloworld_gui - классический HelloWorld эльф, на этот раз с использованием GUI. Выводит сообщение с помощью диалога Notice. Предназначен для изучения структуры простейшего GUI-приложения.

ListTest - пример использования диалога List. Значительно более сложный пример, предназначен для изучения возможностей и принципов управления диалогами.

make_*.bat - батники для сборки эльфов-примеров. Эльфы расчитаны на компиляцию с комплектом ADS.

Lib.o - для функционирования эльфа под моим загрузчиком, необходимо подлинковать этот файл к проекту (в make.bat уже прописан).
Внимание! Этот файл не зависит от конкретной версии прошивки, под которую собирается эльф, но, тем не менее, зависит от версии библиотеки!
В этом SDK уже включен Lib.o для библиотеки v071218.

Пара слов об т.н. Application.
В телефонах motorola есть система AFW, которая позволяет, не затрачивая лишних ресурсов процессора на обеспечение "полноценной" многозадачности, достаточно полноценно работать нескольким приложениям, ориентированным на диалог с пользователем. Как это работает: приложения представляют собой, фактически, набор обработчиков событий(ивентов, events) + структура данных приложения. Откликаясь на те или иные события, приложения поочерёдно обрабатывают списки накопившихся ивентов. Таким образом, мы фактически имеем невытесняющую многозадачность.

Есть теоретическая возможность писать и эльфы, выделенные в отдельный процесс(task), но эта часть всё ещё в разработке.

Прикрепления: SDKv02.rar(25Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:00 | Сообщение # 2
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
ToneDB Killler

Небольшой мод Hello World, но уже с полезной функцией.
При запуске удаляет файлы:
/a/mobile/audio/MyToneDB.db
/a/mobile/audio/TempToneDB.db.
Выход по любой клавише.
Обладатели моторол знают зачем это нужно.

Прикрепления: ToneDBKiller.zip(2Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:01 | Сообщение # 3
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
Attached file contains sources of SDK with English comments.
Прикрепления: eng_sdk01a.zip(10Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:02 | Сообщение # 4
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
it didn't show warning message,but when i run it,my phone will also restart.Can you help me to find which mistake i have make?<
Attachment is my source file.
Thank you.
Прикрепления: ToneDBKiller.rar(2Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:04 | Сообщение # 5
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
теперь сделать бекап PDS совсем легко. Не прийдется даже переводить телефон во флеш-режим.
Эльф делает бекап памяти длинной в 0x10000 байт начиная с адресса 0x10010000 в файл /b/PDS.smg.

Закачиваем эльф, запускаем.
жмем на теле 1 чтобы сделать бекап (будет звук).
2 чтобы проверить существование бекап-файла (будет звук: да/нет).
3 чтобы удалить бекап (будет звук: да/нет).
* или # чтобы закрыть эльф (будет звук).

Прикрепления: PDSBackuper.rar(3Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:06 | Сообщение # 6
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
Выкладую исходники (если кому интересно) очень косячного файл-браузера. В принципе для ознакомления работы с поиском фалов. Через некоторое время юзания вылазит ребут, хотя с памятью вроде нормально работаю. В акшены нельзя вроде кинуть строку юникод, поэтому в там строки из лэнга - они означают "сменить диск". Иконки в дрм особо не искал. Потом какнибудь доделаю

Требуется наличие в либе функций

Quote
u_strcmp A E35000001351000003A00000012FFF1E
u_strncmp A E3520000135000001351000003A00000
Прикрепления: Motocmd.rar(13Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:07 | Сообщение # 7
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
ListTest.elf - для использования ввода строк, требует функцию
AFW_TranslateEvEvD T B5701C161C0D1C042800D01248682300
Прикрепления: ListTest.rar(4Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:08 | Сообщение # 8
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
updated SDK in english
Прикрепления: SDK.rar(15Kb)
 
MotoWalkmanДата: Среда, 18.06.2008, 21:10 | Сообщение # 9
Генералиссимус
Группа: Модераторы
Сообщений: 2066
Репутация: 13
Статус: Offline
Size RAM
Эльф определяет кол-во памяти, доступной эльфам.
Запускаем. Жмём 0. Смотрим лог мидвея. Как только тело уйдёт в ребут - всё, предел!
Выход - Красная трубка

Принцип: Выделяет по килобайту каждую секунду, не освобождая память. Как только память закончится, тело уйдёт в ребут!

Не знаю насколько эффективный и правильный метод. У меня(E398, 49R) получилось 70 Кб доступно. Маловато

Всё таки не слишком правильный мето. Считает кол-во блоков, а не Кб

Events_log
Эльф предназначен для поиска инвентов. Список инвентов выводится в лог мидвея.
Выход по * (звёздочке)

В конфиге можно забать фильтр. Два значения в пределах которых будут выводится инвенты.
0x00-0x03 - Filtr1
0x04-0x07 - Filtr2

F1 >= x <= F2
где x- выводимые значения инвентов

Прикрепления: Test_events.zip(7Kb) · Test_sizeRAM.zip(6Kb)
 
forum.motomaxclub » MOTOROLA » ELFPack » Учимся писать эльфов вместе, SDK v0.2
Страница 1 из 11
Поиск:
   Статистика Форума
Новые темы: Популярные темы: Новые пользователи:
Создать сайт бесплатно

Copyright  © 2007-2012 forum.motomaxclub.com
Мобильный форум - Всё для телефонов Motorola