DC-SWAT Forum
DreamShell NG v3.0.0.500 Beta - Версия для печати

+- DC-SWAT Forum (http://www.dc-swat.ru/forum)
+-- Форум: DreamShell (/forum-3.html)
+--- Форум: General Discussion (/forum-27.html)
+--- Тема: DreamShell NG v3.0.0.500 Beta (/thread-577.html)

Страниц: 1 2 3


DreamShell NG v3.0.0.500 Beta - SWAT - 07.08.2006 09:03

Ну вот, свершилось чудо:)
Представляю вам бета версию DreamShell NG.
В этом выпуске было заостренно внимание не на графической оболочке(GUI), а на системную сторону DS
этого поколения.
Главными новшествами являются:
Загрузка дополнительных модулей, с помощью них в DS можно добавить практически что угодно, от
новых комманд, до дополнений к lua скриптам или вообще сделать какое либо приложение к DS,
возможности практически не ограничены!
При запуске DS грузятся модули gui, cmd, elf, vfdc.
gui - это графическая оболочка, я ее буду со временем обновлять, а вы будете качать обновления прямо с дрима.
cmd - это модуль с дополнительными командами, elf для запуска elf файлов, vfdc для проигрывания видео.
Все модули в любой момент можно выгрузить или загрузить.
SDK для создания модулей для DreamShell вы найдете в DreamShell Service 5.5.
Еще одним новшеством является переработка lua интерпретатора. Теперь он не инициализирует каждый раз заново библиотеки,
Они будут инициализированны при загрузке DS, теперь скрипты будут запускаться без "раздумий" как это было раньше.
Для комманд на скриптах и для инсталляционного скрипта создается новый процесс, чтобы не засорять мусором главный интерпретатор.
Ведь все глобальные переменные и функции которые пришли с запускаемых скриптов, останутся в нем.
Так же в Lua добавлены новый функции, самым главным дополнением является внедрение DreamShell GUI API,
то есть можно пользоваться интерфейсами gui через скрипты, это поможет создавать оболочки для ваших приложений на скриптах.
Так же теперь не обязательно инициализировать видео SDL заново, можно использовать экран DS, взяв
его спецальной функцией(см. в списке функций на страничке DS).
Кстати префиксы функций изменились, теперь KOS функции идут с префиксом KOS, DreamShell функции с префиксом DS, SDL как и было с SDL префиксом.
Подробнее смотрите в списках функций на страничке DreamShell.
Появилась очень удобная команда install, с помощью нее вы можете делать инсталляционные пакеты для DS,
под управлением lua скрипта. Смотрите пример в DreamShell Service 5.5.
Исправлены архиваторы gzip и zip. gzip теперь не спецефический, а такой же как и везде.
Добавлена Нормальная распаковка и запаковка zip архивов, даже с паролями:)
Вообщем там конечно проделана довольно большая работа, я даже всего и не напишу, много всяких багов убрал, добавил/убрал/исправил команды,
Увеличил шрифт(а то кто то жаловался), перевел все это на более быструю и новую версию SDL, облегчил исполняемый файл и т.п.
Вообщем я хотел создать платформу, способную на максимальный внешний апгрейд, думаю у меня получается:)
Осталось теперь только наблюдать за багами, чтобы исправить их в дальнейшем(если это будет иметь успех).

Теперь немного общего описания.
Все файлы вынесены на диск, так что без диска ее теперь не загрузить.
Если кто то захочет запустить ее через Chankast, то придется немного подредактировать DS.CFG который
лежит в корне диска и запускать с образа.
Изначально DreamShell грузится в консольном режиме, по желанию GUI можно запустить спецальной командой.
Просто пока от GUI толку особого нету, т.к. он не доделан, я решил не грузить его изначально.
Кстати в DS.CFG можно прописать режимы загрузки DreamShell.
Ну на сегодня описания хватить, остальное смотрте сами, потом может дополню, если что упустил важное:)
Жду отзывов...


DreamShell NG v3.0.0.500 Beta - alex - 07.08.2006 21:35

Цитата:Жду отзывов...
СУПЕР:)


DreamShell NG v3.0.0.500 Beta - zaero - 08.08.2006 01:14

Ептеть! Наконец-то!!! Судя по описанию ты нехило попотел!!! И всунул много чего нужного! Молодец!!

ПС уже качаю как скачаю отпишусь )))



DreamShell NG v3.0.0.500 Beta - DCSLP - 08.08.2006 08:36

качаемс....


DreamShell NG v3.0.0.500 Beta - ring - 08.08.2006 23:20

Сват........Я ТЕБЯ ЛЮБЛЮ....:lol:


DreamShell NG v3.0.0.500 Beta - SWAT - 09.08.2006 05:49

Жесть:)Держите себя в руках:)А то еще не то поймут:)


DreamShell NG v3.0.0.500 Beta - zaero - 10.08.2006 02:31

Теперь вопросы.

1) Можно ли запустит из под binload дримшелл
2) раскажи поподробней про

.klf - Дополнительный модуль(программа или просто библиотека) для DS, используется командой - module

.dsi - Это файл инсталлятора, используется командой - install

как это будет выглядить?? И что из себя представляет. Или как ты это представляешь в дримшелл???

3) "thread" - менеджер процессов??? Хотелось бы по подробней узнать.

4) Еще хотелось бы узнать про нововедения в луа. Что изменил, что добавил. Этот же вопрос и про СДЛ.



DreamShell NG v3.0.0.500 Beta - SWAT - 10.08.2006 06:15

klf - Это полноценная программа, просто выполненная как модуль, как у Windows dll, в него не линкуются библиотеки при компиляции, все функции которые в ней используются, экспортируются в него из DreamShell, эта особенность делает их очень маленькими в размере, что очень даже неплохо для самого DC:)
Формат klf модуля - elf.
В модуле должны быть 4 обязательных функции, это:
Код:
const char * lib_get_name();
uint32 lib_get_version();
int lib_open(klibrary_t * lib);
int lib_close(klibrary_t * lib);
При открытии модуля срабатывает функция lib_open, при закрытии lib_close. Вообщем эти функции можно наблюдать в SDK для их создания в DreamShell Service v5.5.


.dsi - Это вообщем обычный zip архив, в котором должен быть обязательно файл ds_install.lua. При наборе команды:

install /ram/pack.dsi

DreamShell извлекает из архива файл ds_install.lua, создает отдельный процесс луа, отправляет в него полный адрес dsi файла и запускает этот скрипт. В самом скрипте уже расписана остальная манипуляция с этим архивом, что куда извлечь, удалить, запустить и т.п.
Пример можно можно посмотреть в DreamShell Service v5.5.
Да и еще, dsi может быть как чистым архивом, так и конвертированный в VMU файл, команда install сама распознает что это за формат и сделает нужные действия.

thread - В данный момент он на стадии разработки. Сейчас там можно запустить отдельным процессом lua, dsc скрипт и elf файл(специализированный). Все это можно запустить только по 1.

Про луа сорри позже, я на работу поехал:)


DreamShell NG v3.0.0.500 Beta - SWAT - 10.08.2006 17:03

И так о lua...
Про изменения в интерпретаторе я писал выше.
Списки функций можно посмотреть на страничке DreamShell или в DreamShell Service v5.5
Хмм... а что еще писать то?:)Может уточниш?:)
Вот могу тебе сказать что теперь видео SDL не обязательно заново инициализировать(хотя и это я писал, но все же уточню), обычный экран SDL можно взять функцией:

Код:
SDL.GetDScreen();
Она возвращает указатель на экран DS (тот самый SDL_Surface *screen)

А вот эта устанавливает новый экран:
Код:
SDL.SetDScreen(SDL_Surface *new_screen);


Такие же есть для работы с GUI:
Код:
SDL.GUI_SetScreen(GUI_Screen *);
SDL.GUI_GetScreen();

Попозже может дам пример как использовать экран DreamShell.




DreamShell NG v3.0.0.500 Beta - DCSLP - 12.08.2006 02:24

Воистину круто что под дримшелл можнополноценные проги писать. Вскоре завались будет прог со всего мира!!! МАЗА!!!


DreamShell NG v3.0.0.500 Beta - zaero - 05.09.2006 08:05

Сегодя наконец записал ее... )))

И так :
GUI режим меня порадовал! Перемещение курсора сделано класно! Курсор сразу же реагирует на аналог.

Луа наконец-то выполняется без задержек!

Также порадовало наличие моих скриптов в релизе ))

Из багов:
Довольно частое зависание в консоли.
Почему-то мои скрипты бывают вешают дримшелл. Почему еще не разобрался.
Также как и в XT проблема с вывода картинок на экран ((
Но тут впринципи удивлятся не чему т.к. это бета...

Из пожеланий:
Увеличить размер шрифта в GUI. Исправить баги. Положить последнюю версию блокнота на луа и моего imageviewer!
И еще потом доделаю Launcher от заеро и скину тебе его в асю. Надо чтоб ты его впихнул в финал релиз... Просто хочу сделать тодну хрень там...

Это пока все на что обратил внимание ))
Dreamshell NG рулит..... ))))))


DreamShell NG v3.0.0.500 Beta - SWAT - 05.09.2006 15:15

На счет лаунчела...
Я для удобного запуска приложений сделал команду install, юзай ее, очень удобно! Ведь она сама все делает. Смотри пример инсталлятора в DSS.

Цитата:Довольно частое зависание в консоли.
Почему-то мои скрипты бывают вешают дримшелл. Почему еще не разобрался.


Ну если вешают значить что то не то
Врятли я что то накосячил с луа, я ее много раз тестил.
Ты смотри, там же изменения в синтаксисе использования внедренных функций. А вообще выкладывай скрипты которые вешают DS, посмотрим че не так.

А про показ картинок я вообще забыл млин

А нафиг шрифт увеличивать в GUI? Что неужели так мелко?


DreamShell NG v3.0.0.500 Beta - zaero - 07.09.2006 01:17

Цитата:Я для удобного запуска приложений сделал команду install, юзай ее, очень удобно!
ок!
Цитата:Ну если вешают значить что то не то
Врятли я что то накосячил с луа, я ее много раз тестил.
Ты смотри, там же изменения в синтаксисе использования внедренных функций. А вообще выкладывай скрипты которые вешают DS, посмотрим че не так.
Я брал те мои скрипты которые ты кинул в бету... Например notepad после 2-го запуска вешает. Также и калькулятор после второго запуска вешает ( Надо будет еще твои скрипты потестить)

Цитата:А про показ картинок я вообще забыл млин
Вот вот... Как всегда ))
Цитата:А нафиг шрифт увеличивать в GUI? Что неужели так мелко?
Я б сказал, что не совсем комфортно. Ты б конфиг сделал бы GUI? Хотяб чтоб размер и тип шрифта минять... ))




DreamShell NG v3.0.0.500 Beta - SWAT - 07.09.2006 10:54

Цитата:Например notepad после 2-го запуска вешает. Также и калькулятор после второго запуска вешает ( Надо будет еще твои скрипты потестить)

Про это я уже говорил при выпуске, не нада мусорить там, ведь теперь не инициализируется луа каждый раз, все глобальные твои переменные остаются там, поэтому при втором запуске и происходит висяк.


DreamShell NG v3.0.0.500 Beta - zaero - 10.09.2006 01:14

Цитата:Про это я уже говорил при выпуске, не нада мусорить там, ведь теперь не инициализируется луа каждый раз, все глобальные твои переменные остаются там, поэтому при втором запуске и происходит висяк.
Блин. Я про это и забыл как-то ((...


DreamShell NG v3.0.0.500 Beta - Shining_Lord - 10.09.2006 13:21

Очень рад, что новая DS вышла!


DreamShell NG v3.0.0.500 Beta - SWAT - 11.09.2006 08:27

Толку то, некому не нужна она уже...


DreamShell NG v3.0.0.500 Beta - zaero - 12.09.2006 01:39

Цитата:Толку то, некому не нужна она уже...
Как некому? Мне нужна!


DreamShell NG v3.0.0.500 Beta - SWAT - 12.09.2006 06:11

Кхе... Ну знаеш ли, заниматься таким далеко не маленьким проектом из за одного человека, помоему это извращение:)


DreamShell NG v3.0.0.500 Beta - zaero - 16.09.2006 01:11

Согласен. Просто хотел тебя как-то морально поддержать )