主题 : 【精品】DreamShell → DreamShell 4.0.0 RC 2(5.29更新)
YZB
级别: 超级版主

UID: 12451
精华: 6
发帖: 19094
威望: 173 星
金钱: 1977 浮游币
贡献值: 10043 点
好评度: 54858 点
人气: 4322 点
在线时间: 19578(时)
注册时间: 2004-10-02
最后登录: 2024-10-31
楼主  发表于: 2014-05-15 13:30

【精品】DreamShell → DreamShell 4.0.0 RC 2(5.29更新)

管理提醒: 本帖被 YZB 执行提前操作(2014-08-21)
原帖:http://www.dc-swat.ru/blog/dreamshell/875.html

DreamShell 4.0.0 RC 2

 






Update 29.05.2014:
Updated ISO Loader firmware, module and app up to v0.4.1
— Improved compability
— Improved read speed for CDI and unoptimized GDI images
— Disabled autosave for presets, make new checkbox for it
Updated KallistiOS
Improved image loading in SDL
Update 24.05.2014: Fixed «luaKOS» and «ffmpeg» modules, removed checking core on CD in Boot loader.
Update 17.05.2014: Added «ds_core_sd.bios» and «SD_DS_CORE.BIN», see comment for details.





Благодарности
Большое спасибо всем тем, кто участвовал в разработке приложений, тестировании и помогал найти решения для возникших проблем.
YevDev,嬀/backcolor]Megavolt85,嬀/backcolor]cybdyn,嬀/backcolor]kof888и嬀/backcolor]Bad_Ad84всем большое спасибо! А так же спасибо авторам KallistiOS за проделанную работу!

Screenshots

File Manager




ISO Loader




Bios Flasher




GD Ripper


Speedtest


Уже заждались свежего релиза? Понимаю :)
Я хотел сделать все что задумал, прежде чем опубликовать новую версию, но некоторые не решенные проблемы задерживали релиз уже больше месяца и решения для них я пока не вижу. Поэтому я решил пока опубликовать версию как есть, а потом уже думать над решением проблем, так как не известно сколько это займет еще времени. Да и хочется уже отдохнуть от разработки, последнее время очень плотно занимался этим проектом.
Как обычно все необходимое вы можете скачать на странице嬀甀爀氀=http://www.dc-swat.ru/page/dreamshell/]DreamShell[/url].

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

Core

    Исправлены ошибки в видео режимахИсправлено множество графических артифактовУлучшена синхронизация видео процесса с основным процессом. Полное разделение видео рендеринга и вводаУлучшена работа GUI, добавлены новые возможности, функции, а так же улучшена стабильностьДобавлено дополнительное управление для виджета GUI_FileManager с помощью джойстика (X + Analog для скроллинга и X + D-Pad для перехода по списку)Улучшена навигация по активным виджетам на джойстике с помощью D-Pad (убраны лишние переходы, добавлена возможность перехода сразу в начало и конец)Полностью переработана поддержка файловой системы FAT (thread safe, DMA ready, blockdev, multi-partition)Добавлена поддержка файловой системы EXT2Добавлена полноценная поддержка G1-ATA(IDE) устройств в PIO (3-3.5 МБ/с) и Multiword DMA mode 2 (10-12 МБ/с) режимахУлучшен Soft SPI драйвер и переработан драйвер для SD Card. Увеличена скорость чтения до ~700 КБ/с и записи до ~800 КБ/сАвтоматический поиск и монтирование во время старта всех партиций с файловыми системами на всех поддерживаемых устройствахДобавлена поддержка автоматического сканирования и монтирования romdisk из BIOS (если не найдено ни одного устройства)Улучшен Exception Guard (thread safe, recursion, API macros)Увеличена скорость загрузки ядра и приложенийУменьшено потребление ресурсов выпадающей консольюПоддержка запуска команд в консоли отдельным процессом, при добавлении в конце знака &Добавлена поддержка авто-дополнения наименования команды в консоли при нажатии на TABДобавлены новые команды для консоли, а так же доработаны/изменены старыеЗначительные изменения и оптимизации API в целомОбновлены библиотеки: KallistiOS, Newlib, fatfs, zlib, mxml, SDL_gfx, SDL_ttf и другие...Весь код собран на компиляторах GCC 4.7.3 с Newlib 2.0.0 и последней на сегодняшний день версией KallistiOS

Applications
Main (рабочий стол)
    Добавлена поддержка запуска lua и dsc скриптов с рабочего стола по ярлыку, с возможностью установки своей иконкиУлучшена навигация между страницамиНовый, оригинальный фон для рабочего столаОптимизирована скорость работы
File Manager
    Добавлена поддержка режима с одним окном (включен по умолчанию)Добавлена поддержка открытия файлов в соответствующем его формату приложенииНезначительные исправления и оптимизации
Bios Flasher (раньше DSInstall)
    Это новое приложение, разработанное в замен старому DSInstall сторонним разработчиком YevDevИспользование нового модуля bflash через APIПоддержка записи, чтения и сравнения BIOS firmwareВыбор файла через виджет файлового менеджера и прием пути к файлу от приложения File Manager
GD Ripper
    Это новое приложение, разработанное сторонним разработчиком Megavolt85Создание резервных копий данных с дисков CD в формате ISOСоздание резервных копий данных с дисков GD в формате GDIВозможность сохранять резервные копии на SD, G1-ATA(IDE) и PC (через dcload)Генерация имени резервной копии в соответствии с названием игры
Speedtest
    Это новое приложение, разработанное сторонним разработчиком Megavolt85, на основе алгоритма из консольной команды speedtest в ядре DSПоддержка тестирования реальной скорости чтения и записи (т.е. с файловой системой) на устройствах: SD, G1-ATA(IDE), PC (dcload) и GD-ROM (только чтение)
ISO Loader
    К сожалению предыдущий автор (Superdefault) не поддерживал это приложение с момента релиза RC1, поэтому теперь этим приложением занимаюсь я самПолностью переписана логика приложенияОптимизирован рендеринг GUI, убраны лишние элементы и добавлены новыеРабота с модулем isoldr осуществляется через API вместо консоли, это дает новые возможности, в том числе использования путей с пробеламиПоддержка основных и новых функций модуля isoldrПоддержка отображения текстуры диска (0GDTEX.PVR), если не найдена обложкаАвтоматическое сохранение и загрузка настроек для каждой игры

Modules
Система модулей имеет значительные изменения в API и системе сборки. Новый link-script для компоновки, более простые и удобные Makefile, обновленный SDK и т.д.
    Новый модуль bflashдля прошивки BootROM, вместо старой команды 'bios'.
    — Поддержка 2-х дополнительных протоколов
    — Поддержка более 20-ти разных (и не очень) flash чипов (некоторые еще не тестировались)
    — Поддержка страничной записи
    — Автоматическое определение бренда и производителя чипа
    — API для работы с модулем в дополнение к консольной команде
    Новый модуль opkgдля работы с пакетами формата Open Pakage основанных на файловой системе SquashFS с компрессией zlib и lzo.
    — Установка и удаление пакетов
    — Возможность автоматического запуска скриптов после установки и удаления
    — Извлечение определенных файлов из пакетов
    — Вывод информации о пакете
    Новый модуль luaTask для работы с threads из luaНовый модуль luaSocket для работы с sockets из luaНовый модуль aicaos с одноименной библиотекой AicaOSНовый модуль gumbo с одноименной библиотекой для парсинга (X)HTMLНовый модуль mongoose с одноименной библиотекой для создания веб-сервераНовые модули telnetd и httpd это перенесенные из ядра одноименные командыНовый модуль SDL_net с одноименной библиотекойОбновлен модуль http для поддержки KOS socket вместо lwipОбновлен модуль vkbОбновлен модуль isofs
    — Добавлена поддержка монтирования множества образов одновременно
    — Добавлена поддержка форматов CDI и GDI
    — Добавлены новые функции в API для получения всей необходимой информации
    — Исправлены ошибки и улучшена работа в целомОбновлен модуль isoldr
    — Добавлен API для работы с модулем в дополнение к консольной команде
    — Используются все новые возможности модуля isofs через API, а так же новых загрузчиков
    — Добавлена возможность размещать загрузчики в любом месте оперативной памяти (теперь можно подобрать неиспользуемое игрой пространство)
    — Новая система передачи параметров и запуска загрузчиков
    — Добавлена начальная поддержка DCIO (GD-ROM эмулятора от cybdyn)
    Все остальные модули так же имеют незначительные изменения и оптимизации

Firmware
Boot Loader
    Добавлена поддержка файловых систем и устройств как в CoreДобавлена поддержка загрузки сжатых с помощью zlib бинарных файлов (ZDS_CORE.BIN)Визуализация загрузки и новые функции в управлении
BIOS
    Обновлен ds_core.bios и добавлен новый ds_core_rd.bios (с минимальным набором файлов для работы Core)Обновлен boot_loader.bios и добавлен новый boot_loader_rd_ext.bios (с расширенным набором файлов для работы Core)Добавлены 2 экспериментальных boot_loader_wsc_bfont.bios и boot_loader_wsc_bfont_sd.bios (только SD) с системными вызовами и шрифтами из оригинального biosК сожалению для тех у кого нет GD привода (для первоначальной загрузки), но есть G1-ATA(IDE) устройство, эти bios бесполезны, так как они не проходят проверку в Holly и G1 Bus блокируется. Пока я не нашел решения данной проблемы, возможно кому то удастся сделать эти bios валидными. А пока можно пользоваться все тем же sd_loader_with.bios, загрузив с SD новый boot loader, а из него уже загрузить Core с любого устройства. Или напрямую загружать Core, но файлы разместить на IDE (по желанию).
ISO loaders
    Код загрузчиков переписан на 90%, теперь он более компактный, быстрый и функциональныйНовый метод запуска в дополнение к старомуИзменены режимы запускаНовая, более четкая система передачи параметровУниверсальные версии исполняемых файлов, которые жестко ограничены в использовании памяти (не более 32 КБ на все). Уменьшено общее потребление памяти всеми загрузчикамиУвеличена скорость запуска образовДобавлена поддержка образов GDI и CDIУлучшена поддержка образов CSO(ZSO)Добавлена поддержка G1-ATA(IDE) устройствЧастичная поддержка DMA для G1-ATA(IDE) и GD-ROM. К сожалению пока с DMA работает очень мало игр, поэтому этот режим по умолчанию выключен. Но исполняемые файлы перед запуском загружаются всегда с DMA.Добавлена поддержка dc-load (IP/Serial/Custom?) для чтения данных по протоколу dc-loadУлучшен драйвер SPI и SD как в CoreПоддержка эмуляции асинхронного чтения (сокращает длительность лагов в играх)Добавлена поддержка разных партиций для FATОтображение текстуры диска на экранеПоддержка всех видео режимов как в CoreУлучшена поддержка запуска образов с GD-ROMУлучшена совместимость с играми

Рекомендации
    Если вы все еще пользуетесь SD Card ;), то по возможности используйте CSO(ZSO) формат образов. Это может увеличить скорость чтенияСтарайтесь использовать ISO формат образов и треков в GDI. Это существенно увеличит скорость чтения, так как образы формата CDI и треки формата BIN в GDI, имеют лишние данные, из за которых приходится читать по 1 сектору за раз, вместо всего необходимого пакета сразуПри форматировании SD Card, CF Card и HDD в FAT, выбирайте размер кластера не меньше 32 КБЕсли вы хотите использовать CF Card вместо HDD, то не скупитесь на ее скоростной класс (но и без фанатизма), простые CF карты могут не выдать максимальной поддерживаемой скорости для G1-ATA, в отличии от любого HDD
[ 此帖被YZB在2014-05-29 15:18重新编辑 ]
级别: 模拟小生
UID: 214595
精华: 0
发帖: 21
威望: 0 星
金钱: 2177 浮游币
贡献值: 0 点
好评度: 63 点
人气: 0 点
在线时间: 22(时)
注册时间: 2007-05-23
最后登录: 2015-10-22
沙发  发表于: 2014-05-16 10:51

給用在线翻译了下    
我想要做的一切计划,发布新版本之前,但推迟一些尚未解决的问题发布了一个多月,并为他们的解决方案,我没有看到它。所以我决定发布版本是什么,然后想解决的问题,因为它不知道需要多久的时间。是的,我想有从发展的突破,最近非常参与这个项目。
像往常一样,你需要的一切你可以在页面DreamShell上下载。

很多重构是与该项目的代码和结构做了,我渐渐准备的源代码公布。但不要指望这在不久的将来,它会逐渐发生。目前的SDK ,你可以下载源代码,所有的应用程序,以及一些模块和团队。在不久的将来我会把这一切在GitHub上的存储库,并会逐渐填满所有新的和新的代码。
所有的工作都做了,我就不一一例举,在内部它是巨大的,所以我会只注重基础知识,最重要的,可见的最终用户的变化。也许我忘了东西在此期间,我将添加到列表中,如果你还记得别的东西。


核心
在视频模式下修复的错误
修正了一些图形化的文物
改进的视频同步过程的主要过程。视频渲染和输入完全分离
改进的图形用户界面,增加了新的特性,功能,以及改进的稳定性
添加额外的控制小部件GUI_FileManager与操纵杆( X +模拟滚动和X + D - 垫滚动列表)
在使用D - 垫在操纵杆上活跃的部件改进的导航(删除不必要的转换,增加了能力直接跳到开头和结尾)
完全重新设计的文件系统支持FAT (线程安全的, DMA准备好了, BLOCKDEV ,多分区)
增加了对文件系统的支持EXT2
为G1 -ATA PIO中(IDE )设备( 3-3.5 MB / s)和多字DMA模式2 ( 10-12 MB ​​/秒)模式的完全支持
改进软SPI驱动和SD卡重新设计的驱动程序。提高阅读速度可达〜 700 KB / s和写入最高可达〜 800 KB /秒
自动寻找并在所有受支持设备上的启动与文件系统的所有分区的挂载
增加了自动扫描支持和安装的BIOS romdisk (如果你没有找到任何设备)
改善异常卫队(线程安全的,递归的API宏)
更快的加载内核和应用程序
减少资源消耗弹出控制台
支持在控制台在一个单独的进程中运行的命令,增加了标志的结尾&
增加了通过按TAB键在控制台自动加载name命令支持
增加了新的命令控制台,以及修改和/或改变旧的
显著的变化和优化整个API
更新库: KallistiOS , NEWLIB , FATFS , ZLIB ,MXML SDL_gfx , SDL_ttf等...
在编译GCC 4.7.3编译器NEWLIB 2.0.0和最新的版本现在KallistiOS的所有代码


应用
主(桌面)

增加了对运行和DSC Lua脚本与您的桌面快捷方式,用他们的图标可能支持
页面之间改进的导航
为您的桌面全新原装背景
优化速度
文件管理器

增加了对政权的支持有一个窗口(默认启用)
增加了在其应用的适当的格式打开文件支持
小幅修正和优化
BIOS闪光( DSInstall前)

这是设计了一个新的应用程序,以取代旧的第三方开发者DSInstall YevDev
通过API使用新的模块bflash
支持写作,阅读和比较的BIOS固件
通过文件管理器窗口小部件中选择一个文件,并接收从文件管理器文件路径
GD开膛手

这是由第三方开发Megavolt85开发新的应用程序
从ISO格式的光盘备份数据
从磁盘GD格式的GDI备份数据
能够将备份保存到SD , G1- ATA(IDE)和PC (通过dcload )
按照游戏的名称生成备份名称
SPEEDTEST

这是由第三方开发Megavolt85开发新的应用程序,基于内核SPEEDTEST DS控制台命令的算法
支持实时测试读写速度上的设备(例如,文件系统) : SD , G1- ATA(IDE) ,个人电脑( dcload )和GD -ROM(只读)
ISO加载器

不幸的是,以前的作家( Superdefault )不支持这个应用程序,因为RC1的发布,所以现在这个程序做我自己
完全重写应用程序逻辑
优化渲染图形用户界面,去掉不必要的元素,并添加了新的
通过API,而不是控制台模块isoldr工作,它提供了新的机遇,包括使用的路径有空格
支持主要的新功能和模块isoldr
支持纹理磁盘( 0GDTEX.PVR )显示,如果发现不能覆盖
自动保存,并为每个游戏加载设置


模块
系统模块具有API和构建系统的显著变化。新的链接脚本来构建,更简单,更方便的Makefile ,更新的SDK ,等等。

固件bflash BootROM的新模块,而不是老班底“ BIOS ” 。
- 支持2个附加议定书
- 支持超过20种不同的(和不那么)闪存芯片(有些尚未测试)
- 支持分页记录
- 自动检测的品牌和芯片的制造商
- 与该模块除了控制台命令工作的API

新的模块opkg的封装格式打开;包装基于文件系统的squashfs压缩的zlib和LZO 。
- 安装和删除软件包
- 能够安装和拆卸后自动运行脚本
- 某些软件包解压缩文件
- 显示有关软件包的信息

新的模块luaTask从LUA线程工作
新的模块luaSocket从LUA插座工作
具有相同名称的新模块aicaos库AicaOS
具有相同名称的秋葵库解析( X)HTML的新模块
与用于创建Web服务器相同的名称猫鼬库中的新模块
新模块的telnetd和httpd的是从同一个名字的核心团队转移
同名SDL_net库新模块
更新模块,支持HTTP KOS插座,而不是LWIP
更新后的模块VKB
更新后的模块isofs的
- 用于安装多个图像的同时添加了支持
- 对CDI格式和GDI增加了支持
- API来获得所有必要的信息的新功能
- 修正错误,改进工作大局
更新后的模块isoldr
- 增加了与模块除了控制台命令工作的API
- 使用模块isofs的通过API的所有新特性,以及新的下载者
- 增加了放置供料器的能力在任何地方内存(现在你可以拿起游戏的未使用空间)
- 新的传输系统参数和运行下载器
- 为DCIO添加初步支持(从cybdyn GD- ROM仿真)

所有其他模块也有小的改动和优化


固件
引导加载程序

增加了对文件系统和设备的核心支持
增加了对负载采用zlib二进制文件( ZDS_CORE.BIN )压缩支持
可视化和下载的管理新功能
BIOS

更新和增加了新的ds_core.bios ds_core_rd.bios (含一组文件的最小核)
更新和增加了新的boot_loader.bios boot_loader_rd_ext.bios (带有扩展的文件集为核心)
加入2实验和boot_loader_wsc_bfont.bios boot_loader_wsc_bfont_sd.bios (只适用于SD )与原始的BIOS系统调用和字体
不幸的是,那些谁没有GD驱动器(初始启动) ,但有一个G1- ATA(IDE)设备,这些BIOS是无用的,因为他们没有在冬青和G1总线测试封锁。虽然我还没有找到一个解决这个问题,也许有人能够做到这些的bios有效。在此期间,您可以使用所有相同的sd_loader_with.bios ,从标清新的引导装载程序启动,并从它已经从任何设备上下载核心。或者直接下载核心,但文件被放置在IDE中(可选)。
ISO装载机

90 %重写引导代码,现在是更紧凑,速度快,功能
除了老新的启动方法
改变的启动模式
新的,更准确的传输参数的系统
通用版本被严格限制使用的内存(最多为32 KB的全部)的可执行文件。降低总内存消耗所有的引导程序
执行图像的速度增加
增加了一个GDI和CDI支持
改进了对民间社会组织( ZSO )支持
增加了G1- ATA(IDE)设备的支持
为DMA G1- ATA(IDE)和GD - ROM的部分支持。不幸的是,直到DMA可以与极少数的游戏,因此,这种模式是默认情况下禁用。但在运行之前可执行文件总是加载的DMA 。
增加了对直流负载的支持( IP /串口/自定义? )要通过直流负载读取数据
改进的SPI驱动和SD卡作为核心
仿真支持异步读取(缩短在游戏中的延迟)
增加了对不同的分区FAT支持
在屏幕上纹理映射盘
支持Core众视频模式
改善与GD- ROM运行图像支持
与游戏兼容性改进


建议
如果你还在使用SD卡;) ,然后可能使用CSO ( ZSO )格式的图像。这样可以提高读取速度
尝试使用ISO映像格式和GDI中的曲目。这将显著增加阅读速度, CDI格式的图片,并跟踪BIN格式GDI中,有冗余数据,这是因为需要读取一个扇区的时间,而不是一次全部必要的包
当格式化SD卡, CF卡和硬盘的FAT ,选择簇的大小小于32 KB
如果你想使用CF卡来代替硬盘,不要在它的速度吝啬类(但不狂热) ,通用的CF卡可能无法提供所支持的最大速度为G1- ATA ,不同于任何硬盘
本帖最近评分记录:
  • 金钱:+10(YZB) 辛苦了,送你 1 点人气