Создать ответ 
 
Рейтинг темы:
  • Голосов: 1 - Средняя оценка: 5
  • 1
  • 2
  • 3
  • 4
  • 5
ярлыки для образов и бинарников на рабочий стол
Автор Сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7237
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #2
RE: ярлыки для образов и бинарников на рабочий стол
Ты бы хоть из личного сообщения скопировал сюда, а то выглядит странно твоя тема Smile Ну да ладно.
На самом деле, функцию создания ярлыка для игр я думал добавить в приложение ISO Loader. Правда не уверен что сделаю это в ближайшей версии, так что опишу как это сделать вручную.
Приложение Main (ака Рабочий стол), в DreamShell 4.0 RC 2 поддерживает расположение на рабочем столе скриптов DSC и LUA, для которых можно еще сделать свои иконки (есть и стандартные). Кстати говоря, иконка консоли сделана именно этим способом.
Итак по шагам:

1) Открываем директорию apps/main/scripts
2) Создаем в ней текстовый файл с необходимым именованием и расширением .lua
3) В файле-скрипте прописываем следующее:

PHP код:
-- Script for GameName
local path 
os.getenv("PATH");
OpenModule(path .. "/modules/minilzo.klf");
OpenModule(path .. "/modules/isofs.klf");
OpenModule(path .. "/modules/isoldr.klf");
os.execute("isoldr -x 0x8c004000 -e 8 -f /ide/games/name/disk.gdi");
ShowConsole(); 

Путь к образу пишем соответственно свой. У команды isoldr есть все необходимые аргументы, посмотреть их можно набрав эту команду в консоли без аргументов, находясь в приложении ISO Loader. В примере я использовал только основные, размещение загрузчика по определенному адресу и эмуляция асинхронного чтения по 8 секторов за фрейм. К примеру можно добавить еще флаг "-a" для включения DMA режима, если он поддерживается игрой.
Вызов консоли в конце я добавил специально, чтобы в случае ошибки, вы могли ее увидеть. Если игра запустится без проблем, то до ее вызова дело не дойдет.

4) Этот пункт не обязателен, он просто для красоты. Открываем директорию apps/main/images и копируем сюда PNG изображение размером 48х48 пикселей, а имя файла делаем точно такое же как у скрипта, отличаться должно только расширение.
Вот и все что необходимо сделать.

Ну а для более избирательных людей, можно добавить некоторые фишки. Например для пути к играм можно использовать переменную, для этого в lua/startup.lua (в функции Initialize) можно добавить следующий вызов:
PHP код:
os.execute("env GAMES /ide/games"); 
И в дальнейшем в скриптах использовать эту переменную таким образом:
PHP код:
os.execute("isoldr -x 0x8c004000 -e 8 -f " .. os.getenv("GAMES") .. "/name/disk.gdi"); 
Это может вас избавить от правок всех скриптов, если вы вдруг заходите переместить ваши игры в другую директорию, партицию или устройство.

Для обычного BIN файла скрипт гораздо проще. Есть 2 варианта его запуска:
а) Скопировать bin в директорию "cmds" без расширения и для его запуска набираем соответствующую его именованию команду в консоли.
б) Скопировать bin в любое удобное вам место и запускать следующей командой:

DSC:
Код:
exec -b -f /ide/file.bin
LUA:
PHP код:
os.execute("exec -b -f /ide/file.bin"); 

Для обоих вариантов можно создать как LUA так и DSC скрипт. DSC проще и на долю секунды быстрее выполнится, так как это по сути просто консольный скрипт, каждая строка которого интерпретируется как команда для консоли. Как пример можно посмотреть скрипт для запуска консоли - console.dsc

Все доступные параметры для модуля isoldr можно посмотреть здесь: https://github.com/DC-SWAT/DreamShell/bl...?=ts4#L466

[Изображение: barbers.png]
(Последний раз сообщение было отредактировано 19.03.2015 в 20:40, отредактировал пользователь SWAT.)
07.07.2014 17:41
Вебсайт Найти все сообщения Цитировать это сообщение
Создать ответ 


Сообщения в этой теме
RE: ярлыки для образов и бинарников на рабочий стол - SWAT - 07.07.2014 17:41

Похожие темы
Тема: Автор Ответов: Просмотров: Посл. сообщение
  Подтверждение запуская ярлыки на декстопе shwoaps 3 14883 29.01.2016 07:44
Посл. сообщение: SWAT

Переход:


Пользователи просматривают эту тему: 21 Гость(ей)