Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
EugeneP писал(а): | Цитата: | 11) Для правильной работы получившейся игры необходимо чтобы размер скриптового файла был кратен размеру сектора образа контейнера. Т.е. скрипт должен занимать у нас 512 байт. Это легко проверить, посмотрев вниз на поле lenght строки состояния Notepad++. Оно должно показывать число 512. Если это не так, то добейте или уберите лишние символы в конце скриптового файла.
Всё это сохраняем под именем проекта и идем дальше. |
Не обязательно кратный сектору, просто размер должен быть заранее оговорен (прописан в скрипте) |
Таки желательно для нормальной трансляции. Баловство с размерами информационного хеадера и исправление информации о его длине в скрипте вчера приводило к глюкам. Поэтому так и написал.
Цитата: | Цитата: | Поскольку символические ссылки создать невозможно немного неясной видится судьба сейвов в контейнере. |
Если определились куда класть сейвы, то mount --bind /real/folder /bind/folder легко заменяет симлинк (правда при активном I/O даёт повышенные накладные расходы). Ну и размонтировать под конец надо. |
Да, проверил, смоунтить в существующую директорию даёт. Проблема решена и закрыта.
Вижу такую структуру стандартного приложения:
1) Неизменяемая часть + темповый мусор - использовать главный контейнер. Ложится в стандартную папку /mnt/sd/game/Имя_игры или /mnt/sd/app/Имя_софтинки
Если размер темповых промежуточных файлов не известен и резервировать под них место не хочется - моунтим точку по пути /mnt/sd/temp в качестве временной директории
2) Сейвы и конфиги, если есть возможность хранить их отдельно от главного контейнера хранятся в папке /mnt/sd/profile/Имя_приложения.
Если такой возможности нет и файл контейнера довольно большой - необходимо реализовать два скрипта - первый скрипт бекапит сейвы из контейнера в папку /mnt/sd/profile/Имя_приложения, второй восстанавливает данные из такого бекапа либо предусмотрет такую возможность в самом приложении.
Итого структурка по папкам:
корень SD-шки
---------app
-----------------имя_софтинки - каталог куда кладётся контейнер с софтинкой
---------game
-----------------имя_игрушки - каталог куда кладется контейнер с игрушкой
---------profile
-----------------имя_приложения - каталог где должны хранится сейвы и по возможности конфиги
---------roms
-----------------название-платформы - каталог, куда кладутся игры для эмуляторов, разбиваются по целевым платформам
---------temp - каталог для временных файлов, если их размер непредсказуем. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Что-то не совсем правильно делаем (точнее грабли похоже с не совсем корректным размонтированием дисков). После выхода в меню и повторного запуска контейнерного приложения без выключения/включения консоли висюн или в лучшем случае слетаем обратно в оболочку. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Результаты последних ковыряний с бандлами.
Теория международного заговора подтвердилась. На теплом сбросе приложений (без выключения консоли) контейнеры так и остаются примонтированны к каталогу /mnt/ubifs/tmp
Отсюда грабли с запуском приложений повторно и вывод о том, что даже приложения от notaz-а, похоже выходят через
cd /usr/gp2x/
./gp2xmenu
в самом коде, а не батнике, не давая нормально размоунтится нашим верным контейнерам.
Если запускать после выхода из приложения в меню ручками такой скрипт:
Код: | umount -d /mnt/ubifs/tmp/bundle-имя приложения
losetup -d /tmp/loop0
sync |
то всё удачно размонтируется и после этого удачнейшим образом снова запускается.
EugeneP сбацал вариант контейнера состоящий в релиз версии из двух файлов, ini-шки и контейнера, содержащего в себе и тайтлник и иконку и сварганеный верхним способом контейнер. Подробности в следующих выпусках данной темы. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
EugeneP
Местный
Возраст: 43 Зарегистрирован: 04.06.2009 Сообщения: 170
Группы:
|
|
Последние новости из секретных лабораторий:
- отлажен элегантный и универсальный метод перехвата традиционно чудовищного способа возвращения в меню на платформе GPH
Головной пост обновлён.
теперь метод хитрых бандлов начинает приобретать практическое значение. |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Как обычно со старта ничего не запустилось. Пошел ковыряться в чем дело.
.add
По if-у у меня на Кену всегда выполняется указаное там условие. Отсюда командный файл после манипуляций размонтирования (на любом старте) просто перезапускает оболочку. версия прошивки 1.5.0 _________________ Просто Вовк |
|
Вернуться к началу |
|
|
Nuсlear
Постоялец
Пол: Возраст: 28 Зарегистрирован: 29.12.2009 Сообщения: 20
Группы: Нет
|
|
а можно ещё раз показать старую версию скрипта? |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Посмотри шаблон в моем посте про винду. Он на данный момент самый рабочий. И сделан на основе того что Евгений выкладывал в первом посте раньше. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Плюнул на поиск глюков (что бы не делал - скрипты подвисают на повторном запуске контейнерных приложений) и поставил в конце скрипта один большой и жирный init 6
Отнимает на выход всего на 10-15 секунд больше времени, чем без init-а, зато никаких глюков после полного ремаунта всех дисков не остаётся и приложение запускается на ура повторно без выключения питания консоли.
Но в туду таки разобраться до конца с тем что всё-таки глючит.
Сейчас добацаю систему трейлеров и выложу первый тестовый бета-релиз контейнера с Yumemi Mystery Mansion. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
EugeneP
Местный
Возраст: 43 Зарегистрирован: 04.06.2009 Сообщения: 170
Группы:
|
|
Да ты суров, Hahahoj, реинитом маунты лечить. Разберёмся сегодня что откуда. |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Дело по ходу не только в моунтах/анмаунтах.
Поскольку всё что замаунтил я размаунтил, удалил всё как и должно быть читая мануалы по losetup-e но зависон не исчез. В общем надо разбираться. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
Nuсlear
Постоялец
Пол: Возраст: 28 Зарегистрирован: 29.12.2009 Сообщения: 20
Группы: Нет
|
|
всё делаю по инструкции, но ничего не запускается
я на убунте
записываю Brasero, может через терминал надо (пока не понял как)?
при монтировании файла, показывает записанную информацию |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Попробуй сначала собрать образ Термулы.
Потом посмотрев что и куда примоунтится будешь представлять что происходит лучше и глюк такого рода найдешь. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Благодаря жутким эксперементам над естеством скриптов выложенных выше Евгений таки нашел причину глюков с запуском и менюшкой.
В ближайшие несколько дней он собирается выложить автоматическую создавалку контейнеров. Так что пока торопится со сборкой не стоит. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
EugeneP
Местный
Возраст: 43 Зарегистрирован: 04.06.2009 Сообщения: 170
Группы:
|
|
Публикую отлаженный скрипт для бандлоклипания. Смотрим первый и второй пост темы.
-----
edit:
И, это. Кто будет пользоваться - отпишитесь. Нужно решить пару вопросов с стандартизацией, чтобы пакеты получались более-менее однородными |
|
Вернуться к началу |
|
|
Hahahoj
Site Admin
Пол: Возраст: 50 Зарегистрирован: 08.10.2008 Сообщения: 1848
Группы:
|
|
Еще раз. Как вижу ситуацию я.
1) Сам релиз упаковывается в один файл контейнером. В финальном релизе на раздаче получившийся образ еще и жмется архиватором.
У gpe-шника контейнера несколько полей.
а) Имя релиза (название игры и т.п.)
б) Номер релиза (состоит из номера приложения (все приложения разделены по имени /номер версии / имени нативной платформы (для эмуляторной игры сокращеное имя, к примеру SCD (Sega CD), для оригинальных игр - CAN для оригинального релиза для Кену) / можно добавить идентификатор релизера.
Таким образом игра выходившая на Сеге и Денди, к примеру, будет иметь один номер приложения, но засчет имени платформы релизы будут разные.
в) релизер
г) дата релиза
2) К релизу идет .wrn файл - это трейлер игры. Он тоже запакован в свой контейнер, но не архивируется на раздаче.
В нем запакованы картинки для оригинальной менюшки (иконка и тайтлбар), ресурсы для расширенной менюшки, прохождение игры, паспорт игры).
Он скачивается с инета или вместе с релизом, имеет не слишком большую величину и проигрывается даунлоадером АппСтора или расширенного меню- приложений.
Возможно стоит встроить проигрыватель врн-а в контейнер 1)
Паспорт, как я уже писал - это описание релиза позволяющее его идентифицировать и отсортировать по нужным параметрам, а также поддерживать базу его работоспособности.
3) Третий файл - это ини-шка для стандартного меню. Стандартная ини-шка, ничего особого, указывает на запуск контейнера 1) в пункте исполняемого файла и на ресурсный wrn в пунктах иконки и тайтлника.
Файл паспорта в финальной на сегодня редакции содержит поля:
Код: | #секция заголовка описания
# версия описания на релиз
VERSION=0001
# версия использованного стандарта описания
DRULES=0001
# дата релиза
DRELEASE=03.05.2011
# объем релиза
BYTES=223477906
# CRC релиза
CRC=2FDC45A0
MD5=a27b1b20d0e91a72e383699e6d959205
#секция описания оригинальной игры
#первый параметр TITLE - название игры в той версии которая конвертирована
TITLE=Yumemi Mystery Mansion
#регион оригинальной игры -PAL/USA/JAP/FREE
REGION=PAL
#внутренний номер версии оригинальной игры
SOURCE=4430-50
#дата выхода игры
DATE=1993
#Разработчик
DEVELOPER=System Sacom
#Издатель
PUBLISHER=Sega
#Доступные языки в игре English, Russian, Japan - перечисление всех возможных
RELEASER=Rrhany
LANGUAGE=English
# группа Games/App/Video/Music/Text/Media/Tutorial
GROUP=Games
# жанры игр:
# тип приложения:
GENRE=Horror
GENRE=Adventure
GENRE=Interactive Movie
#Короткое описание для подстрочника с названием файла. Желательно не больше нескольких слов
RUSSHORT=Квест в стиле интерактивного фильма
ENGSHORT=Interactive movie adventure
#Полное описание игры. Заканчивается командой END
RUSFULL=В темном лесу есть странное место. Издавна ходят легенды о том, что люди оказавшиеся там превращаются в бабочек.
Вот и вашу сестру ждало это событие. Сможете ли вы спасти её, пока еще можно?
END
ENGFULL=More more and more
END
#Работоспособность, перечисляются только те платформы которые тестились
CAANOO=YES
WIZ=YES
GP2X=YES
#Совместимость с железом
NETWORK=NO
TVOUT=NO
USBJOYSTICK=YES
#Проверена ли проходимость релиза до конца
FULLTEST=YES
#Описание возможных проблем
TROUBLERUS=Легкие тормоза на стартовом и заключительном видео. Игра проходима.
END
TROUBLEENG=more and more
END
#добавочные описания альтернативных версий
#альтернативные названия игры
TITLE=Mansion of Hidden Souls
TITLE=Yumemi Yataki no Monogatari
# альтернативный издатель
PUBLISHER=Vic Tokai
#Описание необходимых для запуска стороних к оригинальной игре элементов (встроенных в контейнер)
#Необходим Picodrive
NEEDTITLE=PicoDrive 1.80
#Номер регистрации пикодрайва в общей базе - пока не зарегестрирован
NEEDSERIAL=NO |
Прошу таки высказать своё мнение по теме. _________________ Просто Вовк |
|
Вернуться к началу |
|
|
|