DC-SWAT Forum

Полная версия: DreamShell 4.0 - Beta Testing
Вы просматриваете yпpощеннyю веpсию форума. Пеpейти к полной веpсии.
Страниц: 1 2 3 4
Начинается набор для закрытого Beta тестирования новой DreamShell.
Тестирование касается конкретно разработки приложений под нее.
Нужны люди хотябы немного разбирающиеся в программинге lua, Си (по надобности) или в дизайне. Для каждого есть работа.
Желательно записываться парами, дизайнер + программист. Потому что визуальная часть приложений и их программный код, это теперь совершенно разные вещи.
За счет этого приложения для DreamShell 4.0 создавать стало очень просто, ибо визуальная их часть делается элементарно (буквально в одном xml файле), а программная часть на lua, хотя можно внедрять и Си модули.
Жду желающих делать свои приложения для Dreamcast, при этом сильно не заморачиваясь в подробностях.
В статусе Beta, DreamShell будет только на Dreamcast, на PSP она будет уже только в релизе.
Луа + Си =)
Принят:)
Вечером жди образ.
мда желающих конечно кот наплакал:)

какая версия Lua в дримшелл ?
Цитата:какая версия Lua в дримшелл ?
5.0... Но в финальном билде должна быть 5.1.. Как пишет сват, отличаются только апи и все. =)
zaero образ у тебя на почте.
Сегодня отправил обновленный образ.
Beta тестирование стало открытым:)
Ждем и надеемся:)))
Скинул новость к нашим испанским коллегам и от админа получил такое сообщение
Цитата:I've heard dreamshell 4.0 is on beta testing now, could you tell the swat team I'd like to beta test it? I don't know russian :S

I have a BBA if that helps and have a decent programming and debugging experience


Что ответить ??
Скажи пусть немного подождет второй беты, а то эта не работает на дриме, только в nullDC.
Потом я постараюсь дописать документацию, но переводить ему ессно придется переводчиком:)
Хотя есть ребята и понимающие русский, перевели же многие доку к Region Changer как то нормально:)
Переезжаем из лички сюда:)
И так.
alex, попробуй в startup.lua заменить функцию:

Код:
function OpenMainApp()

local app = DS.GetAppByName("Main");

if not app or not DS.OpenApp(app) then
print("DS_ERROR: Can't open Main app");
DS.ShowConsole();
end
end


на
Код:
function OpenMainApp()

local app = DS.GetAppByName("File Manager");

if not app or not DS.OpenApp(app) then
print("DS_ERROR: Can't open File Manager");
DS.ShowConsole();
end
end

Чтобы обойти висяк с главным приложением и проверить работоспособность LFN.
Если с FM тоже будут проблемы, сделай вообще заглушку в этой функции и пользуйся консолью.
отредактировал startup.lua как ты писал выше, с FM проблем невозникло, он запустился нормально.

Вот результат тестов:
Длинные имена поддерживает, пробовал копировать файл games4alluserbarcomlete.txt с карты и на карту скопировалось нормально, также нормально скопировались с VMU на SD карту файлы без расширения (RED_DOG__SYS, SHUTOKOU2GF0). При попытке скопировать файл с пробелом в названии (online shop.txt) выкинуло в консоль с ошибкой DS_ERROR: Error opening //sd/online.
Вместо русских имен на экране высвечивается непонятный набор символов, при копировании FM выкидывает в консоль с ошибкой DS_ERROR: Error opening //sd/ЕЕЕЕЕЕЕ

Скриншот.
В левом окне директория SD, в правом RAM, желтым выделен файл с русским именем.
[Изображение: pqobHqyjyG.jpg]
Ок, хорошо. Главное LFN работает. Хрен с ним с русскими буквами в именах файлов. Тут скорее всего просто шрифт не поддерживает кирилицу, поэтому че попало показывает.
Пробелы не поддерживает файловая система KOS, хотя хз может и проканает, но по крайне мере в консоль не получится написать имя файла с пробелом (а тут все действия над файлами происходят через консоль функцией dsystem), отсюда и ошибка.
Осталось понять почему глючит приложение Main... Может потыкаешся через кабель? Проблема где то в функции AddToList скорее всего.
да через кабель то непроблема запустить
а что сделать то нужно?
Да просто комментируй код по блочно, чтобы понять в каком месте висяк и запускай. Или выводи после каждой строчки принтом действие. Нужно понять на какой именно строке виснет.
вобщем вот:

Main.lua
Код:
print("Init Desktop...");

function InitializeDesktop()

if desktop.app == nil then

print("1...");
desktop.app = DS.GetAppById(THIS_APP_ID);
print("2...");

if desktop.app ~= nil then

print("3...");

local f = DS.listGetItemByName(desktop.app.resources, "arial");
print("4...");

if f~= nil then
desktop.font = DS.GUI_AnyToFont(f.data);
end

print("5...");

local p = DS.listGetItemByName(desktop.app.elements, "applist");
print("6...");

if p~= nil and desktop.font ~= nil then
print("7...");

desktop.apps.panel = DS.GUI_AnyToWidget(p.data);
print("8...");

BuildAppList();
print("9...");

ShowVersion();
print("10...");

end

end
end  
end

Log с кабеля
Код:
OUTPUT:> fs_iso9660: disc change detected
OUTPUT:> vid_set_mode: 640x480IL PAL
OUTPUT:> App: /cd/apps/filemanager/app.xml File Manager 0.1 Beta 2 /cd/gui/icons/normal/file_manager.png
OUTPUT:> DS_OK: Installed app File Manager /cd/apps/filemanager/app.xml (ID=41)
OUTPUT:> App: /cd/apps/main/app.xml Main 1.0.0 /cd/gui/icons/normal/default_app.png
OUTPUT:> DS_OK: Installed app Main /cd/apps/main/app.xml (ID=42)
OUTPUT:> DS_PROCESS: Loading app - 'Main' ...
OUTPUT:> Add to app list...
OUTPUT:> Opening app...
OUTPUT:> Building app list...
OUTPUT:> Show version...
OUTPUT:> Init Desktop...
OUTPUT:> 1...
OUTPUT:> 2...
OUTPUT:> 3...
OUTPUT:> 4...
OUTPUT:> 5...
OUTPUT:> 6...
OUTPUT:> 7...
OUTPUT:> 8...

Получается проблема в BuildAppList();
:)))
Я знаю, я же тебе сказал примерно где проблема:))
Функция BuildAppList проходится по сиску приложений и каждый раз когда находит его, вызывает функцию AddToList, вот в ней то и косяк.

Цитата:Проблема где то в функции AddToList скорее всего.
а если так:)

main
Код:
print("Add to app list...");

function AddToList(app)

print("1...");  
if app.name == "Main" then return end
print("2...");  
local ts = DS.GUI_FontGetTextSize(desktop.font, app.name);
print("3...");  
local b = DS.GUI_ButtonCreate(app.name, desktop.apps.pos.x, desktop.apps.pos.y, 53 + ts.w, 48);
print("4...");  
local s = DS.GUI_SurfaceLoad(app.icon);
print("e...");  
if s ~= nil then

DS.GUI_ButtonSetNormalImage(b, s);
DS.GUI_ButtonSetHighlightImage(b, CreateHighlight(s));
DS.GUI_ButtonSetPressedImage(b, s);
DS.GUI_ButtonSetDisabledImage(b, s);
print("5...");  
end
print("6...");  

local c = DS.GUI_LuaCallbackCreate(desktop.app.id, string.format("OpenApp(%d)", app.id));
DS.GUI_ButtonSetClick(b, c);
print("7...");  

local l = DS.GUI_LabelCreate(app.name, 0, 0, ts.w + 53, 48, desktop.font, app.name);
print("8...");  
DS.GUI_LabelSetTextColor(l, 0, 0, 0);
print("9...");  
DS.GUI_WidgetSetAlign(l, DS.WIDGET_HORIZ_RIGHT);
print("10...");  
DS.GUI_WidgetSetAlign(l, DS.WIDGET_VERT_CENTER);
print("11...");  

DS.GUI_ButtonSetCaption(b, l);
print("12...");  
DS.GUI_ContainerAdd(desktop.apps.panel, b);

print("13...");  
desktop.apps.pos.y = desktop.apps.pos.y + 56;
print("14...");  

if desktop.apps.pos.y >= 460 then
desktop.apps.pos.x = desktop.apps.pos.x + 200;
desktop.apps.pos.y = 20;
print("15...");  
end

end

log
Код:
OUTPUT:> fs_iso9660: disc change detected
OUTPUT:> vid_set_mode: 640x480IL PAL
OUTPUT:> App: /cd/apps/filemanager/app.xml File Manager 0.1 Beta 2 /cd/gui/icons/normal/file_manager.png
OUTPUT:> DS_OK: Installed app File Manager /cd/apps/filemanager/app.xml (ID=41)
OUTPUT:> App: /cd/apps/main/app.xml Main 1.0.0 /cd/gui/icons/normal/default_app.png
OUTPUT:> DS_OK: Installed app Main /cd/apps/main/app.xml (ID=42)
OUTPUT:> DS_PROCESS: Loading app - 'Main' ...
OUTPUT:> Add to app list...
OUTPUT:> Opening app...
OUTPUT:> Building app list...
OUTPUT:> Show version...
OUTPUT:> Init Desktop...
OUTPUT:> 16...
OUTPUT:> 17...
OUTPUT:> 18...
OUTPUT:> 19...
OUTPUT:> 20...
OUTPUT:> 21...
OUTPUT:> 22...
OUTPUT:> 23...
OUTPUT:> 1...
OUTPUT:> 1...
OUTPUT:> 2...
Угу, странно....
Ладно, я перезалил архив, пробуй.
В эмуле почему то не загружаются модули ogg, mp3 и vcdc. Я их обновил, по идее после их загрузки должны появится новые команды в консоли. Так же файловый менеджер сам их может загружать, если кликнуть на подходящий файл (музыка, видео). Не пойму почему виснет.
Еще добавил в консоль команды для работы с gzip и bzip2 архивами, gzip работает нормально, а bzip2 в эмуле виснет.
блин при запуске с диска опять в черный экран уходит:(
Появляется рабочий стол и иконка консоль, потом в черный экран уходит.
Страниц: 1 2 3 4
URL ссылки