Авторизация



Напомнить пароль
Регистрация

DreamShellDreamShell 4.0.0 RC 1 by SWAT

DreamShell 4.0 RC 1 Main app

Update 05.02.2012
— Added ask for 60Hz for non US DCs.
— Added dummy files to CDI images
— Updated isoldr to v0.3.1:
— fixed boot homebrew iso
— improve speed of boot.bin start executing.
— added return back to DS if some games make write to memory with the loader.

Redownload DreamShell and enjoy!

То, чего многие уже давно ждут, наконец то свершилось :)
Представляю вашему вниманию DreamShell 4.0.0 RC 1
Да да, это наконец то релиз кандидат и она реально заслуживает такого статуса.


  • Ядро системы стало легче и быстрее.
  • Новая виртуальная клавиатура, с возможностью масштабирования (нажать 2 шифта одновременно), которая позволяет ускорить набор текста на порядок. Имеет 3 слоя, которые переключаются шифтами джойстика. Вызывается на кнопку старт.
  • Консоль стала работать быстрее, а размер шрифта был увеличен. Вызывается на клавишу Esc на клавиатуре (виртуальной тоже).
  • Новый переработанный рендеринг. Теперь картинка SDL рисуется как текстура с помощью PVR. Это позволяет дополнительно, в не зависимости от SDL, рисовать с помощью PVR, т.е. использовать быструю аппаратную графику и 3D.
  • Поддержка виртуальных разрешений экрана. Теперь вы можете выставить разрешение до 1024х1024 (для экономии памяти в текущем релизе я сделал лимит в 1024x512), правда в таком случае все будет слишком мелким :)
  • Добавлено множество новых модулей. Раньше их было 15, теперь стало 30 (без учета модулей приложений). Это с учетом того, что некоторые старые модули были удалены за ненадобностью. Я не буду перечислять все изменения, скажу только про некоторые:

    ffmpeg — Последняя стабильная версия одноименной библиотеки для декодирования видео. Вместе с модулем идет простой, консольный проигрыватель видео. Он еще далек от совершенства, но все же он частично работает :)
    mpg123 — Последняя стабильная версия одноименной библиотеки для декодирования MP1/MP2/MP3, вместе с модулем идет простой консольный проигрыватель. Так же он используется в ffmpeg.
    oggvorbis — Последняя стабильная версия одноименной библиотеки для декодирования ogg/vorbis, так же идет с проигрывателем. Используется в ffmpeg.
    adx — Библиотека для декодирования adx, так же идет с проигрывателем.
    s3m — Библиотека для декодирования S3M, так же идет с проигрывателем.
    xvid — Последняя стабильная версия одноименной библиотеки для декодирования видео. Не используется пока в системе.
    kglx — Библиотека OpenGL 1.2
    tolua и tolua++ — В предыдущих версия DS, библиотека tolua была интегрирована в ядро, теперь я ее вынес в модуль, а так же добавил модуль tolua++
    isofs — Модуль дает возможность привязывать ISO/CSO/ZSO образы как файловую систему в ядре, для работы с файлами в образе. В основном используется следующим по списку модулем :)
    isoldr — Это всем известный модуль sdiso, но он был переименован по нескольким причинам, а так же вернулся в статус модулей, в отличие от предыдущей версии, где он был командой. Далее я расскажу более подробно об изменениях в нем.
    minilzo — Модуль для поддержки LZO компрессии, используется модулем isofs и isoldr для сжатых образов.
    http — Этот модуль работает только совместно с модулем lwip и позволяет добавлять в файловую систему ядра возможность работы с tcp/udp и http протоколами.
    angelscript — Модуль для использования AngelScript. Пока не используются в системе.
    sqlite3 и luaSQL — Модули SQLite в виде библиотеки и lua представления. Пока не используются в системе.
    и прочие…

    Сразу оговорюсь по поводу проигрывания медиа файлов. Они не плохо проигрываются, но все же стабильности этим модулям еще не хватает, особенно ffmpeg.
    А так же отсутствие приложения медиаплеера дает о себе знать, файл менеджер никак не следит за проигрыванием, поэтому вы легко можете повесить систему не аккуратными действиями.
    Здесь я полагаюсь на сторонних разработчиков, теперь вам есть чем заняться :)
    Все модули для декодирования аудио и видео, оптимизированы специально под Dreamcast.

    Модуль luaDS был разбит на 3 модуля:
    luaDS
    luaSDL
    luaGUI
  • Обновление основных библиотек:

    SDL = 1.2.13
    SDL GFX = 2.0.22
    SDL Image = 1.2.10
    SDL TTF = 2.0.10
    SDL RTF = 0.1.1 (новая)
    FreeType = 2.4.4

    Zlib = 1.2.5
    PNG = 1.5.1
    Lua = 5.1.4-2
    tolua, tolua++ = 5.1.4
    fatfs = R0.09

    Так же была использована последняя ревизия (741) KallistiOS и собрано все это на компиляторах GCC 4.5.2 с newlib 1.19
  • Новые команды в консоли.
  • Fatfs теперь используется не только SD но и HDD (только в PIO режиме). К сожалению у меня нет рабочего прототипа с HDD, но теоретически это должно работать, буду очень признателен если кто то это проверит! Драйвер для файловой системы ядра был так же улучшен, переписан под использование несколькими устройствами, были исправлены баги, а так же увеличена скорость работы.
  • Переписан драйвер для SPI протокола, теперь его могут использовать драйвера для разных SPI устройств, не только SD карта.
  • Новый драйвер для Ethernet контроллера ENC28J60 (для SPI протокола). На сайте уже давно есть схема по его подключению. Драйвер этот пока экспериментальный и я не гарантирую его нормальную работу.
  • Модуль isoldr поддерживает разные устройства: SD Card, HDD, CD-ROM, BBA, LAN.
    Загрузчик образов с CD вам может показаться бессмысленным, с некоторой точки зрения так и есть, он был сделан специально для тестирования в эмуляторе и сравнения с другими устройствами.
    Загрузчик с CD помог сделать несколько важных выводов. Например что тормоза в играх появляются далеко не только по причине скорости передачи данных… но это все пища для дальнейших размышлений.
    Вообще загрузчик был полностью переосмыслен и переписан, я не скажу что это дало некий прорыв в совместимости игр, но это хороший задел на будущее.
    Появилось множество настроек запуска игр, разными загрузчиками и разными методами. Чтобы все это задействовать, необходимо использовать новое приложение ISO Loader. К примеру загрузчики есть для разных участков памяти, есть возможность стартовать не напрямую с boot.bin, а с IP.BIN, эмуляция DMA и прочее.
    За счет модуля isofs, который непосредственно используется модулем isoldr, будет расширяться список поддерживаемых образов.
    Сейчас поддерживаются вручную созданные ISO (как было раньше), оригинальные GD-RIP конвертированные в ISO, конвертированные CDI/NRG в ISO, а так же все эти образы можно сжать в CSO/ZSO. Для создания, конвертирования и сжатия образов я сделал новый iso make pack v2.
    Уточню по поводу формата сжатых образов. Модуль isofs поддерживает как CSO (сжатый методом zlib), так и ZSO (сжатый методом LZO), а загрузчики поддерживают образы только сжатые методом LZO. Именую я их одинаково как CSO, так как это формат такой же как у PSP образов, просто я сделал два разных метода сжатия, он определяется по заголовку, а не по расширению файла. Загрузчики не поддерживают zlib сжатие по причине экономии памяти, да и LZO распаковывается гораздо быстрее.
    Сжатие образов позволяет значительно сэкономить место, особенно это касается GD RIP, которые занимают 1 Гбайт. Более того, в играх, где налету подгружаются хорошо сжимаемые данные (текстуры, модели, но не музыка!), это может дать неплохой прирост в скорости, так как распаковка данных происходит на порядок быстрее чем их считывание. Я наблюдал за загрузкой данных игрой и если загружались не музыка или видео, а текстуры и модели, то полезность сжатия была в среднем в 1.5-2 раза, что примерно во столько же и увеличивало скорость считывания. Жаль что лаги как правило конечно из за музыки, а в этом сжатие образов никак не поможет, а может даже немного ухудшить ситуацию.
    В целом игры стали работать быстрее (и без учета сжатых образов), это хорошо заметно там, где были серьезные лаги, а в некоторых играх их практически не стало совсем. В этом можно убедится посмотрев мое видео. Этого удалось добиться за счет оптимизаций работы с FAT.
    Загрузчик с помощью BBA/LAN пока не закончен, и поверьте, он не дает той надежды на скорость, на которую я думаю многие из вас надеялись, по крайне мере первые версии.
    Может быть в будущем это будет работать лучше SD/HDD, но пока… Я протестировал скорость чтения BBA без использования DMA и она составила ~500 кбайт/сек (а SD у меня показала 617 кбайт/сек!), при этом скорость записи достигла 2 мбайт/сек! Но она нас не интересует.
  • Теперь можно прошить в bios как новый Boot loader 2.0, который позволяет запускать DS с разных устройств, так и специально модифицированный оригинальный bios, в который встроен загрузчик с SD, это позволило не нарушать работу всех системных вызовов и самое главное GD-ROM!
    С помощью этого bios, вы теперь можете запускать DS напрямую без дисков и игры через нее без GD-ROM! Напомню что раньше запуск игр был невозможен, если был прошит не оригинальный bios.
    Как это работает можно посмотреть в моем видео.
  • Приложение DSInstall обновлено. Теперь можно выбрать разные bios для прошивки.
  • Приложение Filemanager было в большей степени переделано, теперь оно использует новые возможности GUI, стало быстрее и стабильней работать, меньше занимать памяти. Так же здесь новый дизайн, более простой и крупный.
  • Новое приложение ISO Loader. Это первое приложение включенное в сборку DreamShell, которое сделал сторонний разработчик на основе моего прототипа, за что я ему очень благодарен, так как у меня времени на все не хватало. Его ник Superdefault, будем надеется что он это дело не бросит и дальше будет развивать данное приложение. Это всего лишь первая версия, которая только только захватывает все возможности нового модуля isoldr.
  • Новое приложение DSN (DreamShell Network). Пока толком ничего из себя не представляет (есть только возможность для подключения сетей), но планы у меня на этот счет большие, понятие DSN только было внедрено, работы здесь еще очень много. Главная проблема, это мой глючный BBA, который отказывается нормально работать в KOS, поэтому мне пришлось отложить все работы с сетью.
  • Стартовое приложение было обновлено. Убрана ненужная кнопка старт, вместо нее теперь есть кнопки влево/вправо для перелистывания экрана, что позволяет размещать большое количество иконок. Логика приложения была перемещена в модуль, для того чтобы не загружать в память lua модули при старте системы. Так же есть небольшие внешние изменения и исправлены баги.
  • Теперь приложения при выходе нормально выгружаются высвобождая ресурсы. Здесь все еще есть небольшая утечка памяти, но в целом стало на порядок лучше.
  • Теперь lua не обязательно использовать в приложениях, вся логика может быть описана и в модуле. За счет этого приложение будет работать быстрее и эффективнее использовать память.
  • События в XML теперь могут быть не только lua функциями, но и Си функциями из модулей или ядра и даже консольными командами!
  • Новый виджет для отображения RTF документов, с поддержкой форматирования. Добавлен и в XML.
  • Новый виджет FileManager, для простого и удобного встраивания в приложение файловых менеджеров. Я думаю это по достоинству оценят разработчики. Добавлен и в XML.
  • Большое количество новых методов для рисования примитивов на GUI_Surface. Некоторые из них были внедрены и в XML.
  • GUI был хорошо оптимизирован и обновлен, но конечно это все еще не идеал :) В любом случае графических багов стало на порядок меньше, а работа в целом улучшена.
  • Добавлена возможность перехода между активными виджетами в GUI с помощью джойстика (вверх/вниз). Это позволяет без аналога или мышки передвигать быстро и удобно курсор к активным элементам.
  • В lua тоже довольно много изменений. Поддержка нативных функций была улучшена и добавлены недостающие функции типа чтения директорий или их создание и удаление без дополнительных модулей как это было раньше.
  • Перехват исключений при загрузке модулей или выполнении событий XML и вывод информации в консоль. Что позволяет не падать всей системе если что то не так в модуле или в коде приложения.

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

Для загрузки доступен и новый SDK, он стал более богатым на библиотеки, а так же я включил в него последнюю сборку 3D движка CubicVR для DC.
Есть примеры для создания модулей и команд, а P@S@f снял даже видео урок по настройке окружения для компилирования (он не входит в SDK, вы можете его посмотреть на Youtube).

Буду очень признателен за любую поддержку — Donate, разработка приложений или Bug report. Этим вы поможете развитию проекта!

Рекомендации:
Если у вас отказывается работать SD адаптер, скорее всего у вас слишком длинный провод, укоротите его до 5-10 сантиметров, а лучше вообще от него избавится.
Если вы хотите использовать максимум скорости, то вам необходима SD карта не меньше 6 класса.

Благодарности
Спасибо alex как постоянному тестировщику, он нашел много багов, которые я не видел.
Спасибо Superdefault за то что занимается приложением ISO Loader. Так же спасибо ему за первый и пока единственный Donate :)
Спасибо P@S@f за видео урок по установке SDK.

Скачать
Скачать DreamShell и SDK вы можете на странице DreamShell.

Видео:
Part 1 — www.youtube.com/watch?v=0hvxXkaf-TY
Part 2 — www.youtube.com/watch?v=0VZsmaUEsPQ
Part 3 — www.youtube.com/watch?v=osjTYuwMado
Part 4 — www.youtube.com/watch?v=Ho_Pts3ZeX0
Part 5 — www.youtube.com/watch?v=gC_UiBb9KVg
Part 6 — www.youtube.com/watch?v=3Zu6FYUIaWQ
Видео урок по настройке SDK от P@S@f — www.youtube.com/watch?v=UWPEb8daFwY

Скриншоты:
Console and virtual keyboard

DSInstall

Filemanager

ISO Loader

ISO Loader settings

Boot Loader
  • +1
  • SWAT
  • 02 февраля 2012, 20:12

Комментарии (20)

rss свернуть / развернуть
  • avatar
  • SWAT
  • 02 февраля 2012, 11:53
  • #
  • 0
Те у кого есть bios mod и вы только что скачали все архивы, перекачайте пожалуйста еще раз через 10 минут, так как в архивах был испорченный bios с boot loader. Хотя может я и ошибся, но на всякий случай я заменил его.
свернуть ветку
Еще немного дополнил описание.
свернуть ветку
Гутен таг SWAT! Когда обновление гредёт? Тут библиотеки новые появились
свернуть ветку
Пока не знаю. Тут это где? :)
свернуть ветку
Я имею в ввиду на сегодняшний день обновились некоторые библиотеки для твоей системки. Не ну можно и подождать пока все до одной библиотеки обновятся-)
свернуть ветку
i'm a dc fan in china,can you make a ds combined every tools in it such as emus, players, explorer.
by the way, has your USB to DC-Serial adaptor succeed?
свернуть ветку
привет swat! чё-то понять не могу — ds4rc1 никак не хочет работать с sd картой. просто не заходит в директорию sd. перепробовал штук 7, разных карт, какие-то вообще не определяются… с ds4b4 таких проблем не было… провод от картридера короткий, около 5 см. в чём может быть такая беда?
свернуть ветку
Постарайся вообще убрать провод, сделай донгл.
свернуть ветку
ни av, ни serial порта на моём дриме уже нет. вместо них поставил DB-25 «маму». для тестов припаялся к материнке одножильными проводами 2 см… результат тот-же… помню, где-то читал, что у кого-то были проблемы с dcplaya, типа, тоже не входит в директорию sd…
свернуть ветку
самое интересное, beta4 работает со всеми картами на ура…
свернуть ветку
так, разобрался! для тех у кого проблемы с чтением карточек в dreamshell 4 rc1, нужно на плате убрать RA601 и вместо него поставить перемычки… у меня сразу всё заработало.
свернуть ветку
или подпаяться не к порту, а к тестпоинтам. yam.20to4.net/dreamcast/va1.html
свернуть ветку
  • avatar
  • egv83
  • 11 февраля 2013, 01:31
  • #
  • 0
I make a sd connector in my dreamcast and put a SD card power on the dramcast with dreamshell CD but I don see the SD what is the problen or the dreamshell need a owner fotmat for this sd if this don't duport fat32
свернуть ветку
  • avatar
  • egv83
  • 11 февраля 2013, 03:54
  • #
  • 0
And help me I have other Dreamcast but when I power on this around 10 seconds maybe the screen show in black and turn off and power on again and never can play
свернуть ветку
Шеф вышла библиотека SDL 2.0. много всяких плюшек
свернуть ветку
Не спорю, плюшек не мало. Только вот портировать на дрим ее нужно практически с нуля, на это нужно много времени.
свернуть ветку
На офф сайте написано что уже существует порт под dreamcast
свернуть ветку
Я качал исходники версии 2, нету там дрима вообще.
свернуть ветку
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.