ФАК по эльфу "Меню "Пуск"
(по мотивам README.txt, составленного автором эльфа)
Эльф можно скачать отсюда, обсуждения и самые свежие версии - здесь
Чтобы меню "Пуск" заработало, вам понадобится сам эльф :). В принципе, в будущем его место — в папке "daemons", чтобы он загружался при старте телефона. Но на период настройки лучше сохранить его где-нибудь в другом месте (где именно значения не имеет).
В папке 4:\Zbin\ сделайте папку smenu, в ней должны быть такие подпапки и файлы:
zbin\smenu\mnu\ - файлы меню
zbin\smenu\data\menu.cfg - настройки графики
zbin\smenu\data\images - графика
По большому счету местонахождение папки smenu не принципиально - его в любом случае следует указать в настройках эльфа (4:\Zbin\etc\sMenu81.bcfg)
Здесь же можно указать клавишу, при нажатии на которую вызывается меню Пуск (по умолчанию - клавиша выключения телефона).
Коды клавиш:
* : 2A
# : 23
SK left : 01
SK right : 04
joy up : 3B
down : 3C
left : 3D
right : 3E
joy center : 1A
callkey : 0B
on/off : 0C
0...9 : 30...39
Camera key( Vol+ ) : 14
PTT key( Vol- ) : 15
Клавиша вызова интернет-браузера 11
Структура меню
Описание главного меню находится в файле ZBin\smenu\mnu\main.mnu
Формат файла:
название_пункта|иконка|тип_ссылки|ссылка
название_пункта - название пункта меню
иконка - может быть задана из прошивки (например, #1AB) или из файла:
0:\pic\file.bmp -> полный путь
icons\ico.gpf -> путь относительно ZBin\smenu\images
тип_ссылки|ссылка:
SUBMENU|submenu.mnu ->файл подменю(!!! рекурсия не поддерживается, main.mnu НЕ ПРОПИСЫВАТЬ)
ROOTMENU ->возврат в главное меню
FILES|0:\Zbin\*.elfs -> файл эксплорер
FILE|0:\path\to\file.elf -> открыть файл
FILE|0:\path\to\file.elf|0:\target\file.dat - эльф/жава с параметром
CALL|A0000000 - вызов функции прошивки
CALL|AB000000|#13|Sstring|Wwidestring - вызов функции(до 4 параметров)
ENTRY|shutdown - вызов функции прошивки(адрес берётся из entrypoints.txt)
ENTRY|shutdown|#13|Sstring|Wwidestring - вызов функции(до 4 параметров)
FOLDER|0:\zbin - открыть папку
SHORTCUT|ELSE_STOPWATCH
KEYSEND|*200#@ - эмулировать клавиши
0-9*# 09*#
@ GREEN_BUTTON;
! RED_BUTTON;
+ ENTER_BUTTON;
L LEFT_SOFT;
R RIGHT_SOFT;
~ Long Press(dont work now)
' ' pause(0.2 sec)
P pause(1 sec)
планируются:
FILES|4:\games\nes\*.nes
SUICIDE|hahaha!!!
TASKS|0:\zbin\xtask\csmlist.txt
Пример main.mnu:
ReadManiac|icons\readmaniac.gpf|FILE|0:\Applications\ReadManiac\ReadManiac.jar
TMO-editor|icons\programms.gpf|FILE|4:\ZBin\Kibab\TMO.elf
Все проги|icons\programms.gpf|SUBMENU|programms.mnu
Перезагрузка|icons\reload.bmp|CALL|A023476C
Выключение|icons\shutdown.bmp|CALL|A0234760
Адреса вызова функций прошивки могут быть вынесены в отдельный файл entrypoints.txt (он должен находиться в zbin\smenu\). В таком случае вместо строки
Выключение|icons\shutdown.bmp|CALL|A0234760
вы можете указать:
Выключение|icons\shutdown.bmp|ENTRY|shutdown
entrypoints.txt:
;entrypoints for s75sw47
;(r) avkiev, ManOfWar
A095168C GPRSOnOff
A023476C Reboot
A0234760 PowerOff
A0B17384 IrdaBtOnOff
;с параметром 0 переключает bluetooth, 1 - переключает IRDA
A0060C91 Refresh
A032DE09 Calc
A032DD25 Calend
A032D8EF NewSMS
A032D8FB NewMMS
Структура файлов подменю абсолютно такая же.
menu.cfg
Ясно из названия, надеюсь (с) Captain_SISka
MainBGimg: bg.gpf
ItemTopImg: top.gpf
ItemImg: item.gpf
ItemBtmImg: btm.gpf
ArrowItemTopImg: atop.gpf
ArrowItemImg: aitem.gpf
ArrowItemBtmImg: abtm.gpf
StartButtonImg: button.gpf
MainCursorImg: mcursor.gpf
SubCursorImg: scursor.gpf
цвет текста ItemColor:64000000
цвет обводки ItemBorder:64FFFFFF
цвет текста элемента, откр. подменю SmItemColor:64FFFFFF
цвет обводки элемента, откр. подменю SmItemBorder:64000000
цвет текста выделенного элемента SelItemColor:6400FFFF
цвет обводки выделенного элемента SelItemBorder:64000000
цвет текста выделенного элемента, откр. подменю SmSelItemColor:640000FF
цвет обводки выделенного элемента, откр. подменю SmSelItemBorder:64000000
смещение меню по Х слева X0:2
смещение меню по У снизу Y0:12
смещение по горизонтали элемента гл.меню ItemXofsMain:17
смещение по горизонтали элемента подменю ItemXofsSub:4
смещение по вертикали нижнего элемента гл.меню ItemYofsMain:4
смещение по горизонтали текста отн. левого края элемента меню ItemTextXofs:16
Для изменения размещения меню на экране попробуйте задать такие координаты:
X0 :0
Y0 :16
ItemXofsMain :4
ItemXofsSub :4
ItemYofsMain :4
ItemTextXofs :17
Формат графических файлов иконок
Поддерживаются следующие форматы иконок:
gpf
png полупрозрачности нет
bmp 24бит прозрачный цвет (255,0,255)
Для bmp и gpf можно указать качество: 8бит-по умолчанию, 16бит если к имени файла в конфиге приписать `!`: file.png!
|