Эмуляция > Эмуляторы консолей 6 поколения и выше
Demul, эмулятор Dreamcast, Naomi etc.
CaH4e3:
Вся необходимая информация находится под спойлером ниже:
* Официальный сайт эмулятора
* Официальный русскоязычный форум
* Скачать Demul
* Багтрекер для сообщений об ошибках
* Часто задаваемые вопросы (FAQ)
* Для работы эмулятора требуются: MSVC 2010 Redist x86 а также последний DirectX
* Биосы консоли SEGA Dreamcast в формате эмулятора можно скачать здесь или там Инструкция Demul в картинках + biospack
Шейдерные фильтры для режима OpenGL можно скачать здесь
Wind:
MetalliC, круто!
MetalliC:
Wind, пасиб.
хотя тут во многом стоит благодарить разрабов инструментов типа Ghidra, с которыми реверс становится относительно легким и ненапряжным по сравнению с тем как было раньше. хотя и с гидрой пришлось подолбаться и дорабатывать ее напильником, чтоб она выдавала удобоваримый декомпил FPU кода SH4.
ну и девелоперам Planet Harriers респект, за то что оставили в игре немало отладочного кода и инструментов.
я вот не помню, в своё время находили отладочное OSD меню в этой игре или нет? скрытый тестмод CaH4e3 находил и он описан там например https://tcrf.net/Planet_Harriers
а про OSD, который во время игры вызывается комбо кнопочек чот ничего не вижу и не помню. вот так оно выглядит
красота короче, все параметры видны, плюс они лежат по статическим адресам в ОЗУ и прямиком шлются командами в гпу, так что по декомпилу без особого напряга читается какие команды чего делают и какие аргументы у них. сожалению, в отладочном коде нет названий для режимов текстур, материала и блендинга, только цифирки показывает, но хоть так.
так что систему команд я раскурил полностью, могу запостить доку если кому интересно.
а вот что со многим из этого потом делать - всё еще темный лес :( кучка цветов в материалах с невнятными названиями, и хрен пойми что с ними делать... они явно аналоги привычных ambient/diffuse/emissive цветов материала из фиксированной модели освещения OpenGL 1, но поди разберись что там есть что.
эх, при наличии реальной железки играясь с цифирками в этих тестах и наблюдая изменения на экране наверное можно было бы за пол дня всё раскурить, а эмпирически конечно это всё долго и нудно :cry:
Wind:
Ты все равно много раскусил, я думал hikaru никогда никуда уже не двинется
MetalliC:
я? не, емнип в хикаре я только I/O часть реверснул и что-то еще по мелочи, а почти всё вы сделали, ну и Стефано тоже помог местами.
а в GPU вообще не заглядывал, вот вплоть до около месяца назад :)
Xbox original:
--- Цитата: Wind от 29 Май 2025, 20:28:23 ---Dx11 (или его аналог) нужен всем эмуляторам Dreamcast и систем на его базе (если вам нужен эмулятор без багов, совсем без багов)
Даже не могу представить это, что же за калькулятор такой у человека, что он умудрился 10 фпс выжать? Эмуль создавался во времена когда у меня duron 700 мгц был (и да я знаю, что вы даже не знаете, что это такое), потом системники подросли, но и качество достигло потолка, дальше его просто некуда развивать. Смотрю на тот же flycast остывание от Demul лет 20 примерно.
Gаelco двухпроцессорная разрабатывалась на середнячке 775 сокета и была фулспид
--- Конец цитаты ---
Приветствую, а есть примеры flycast игр от DC и сравнение с Demul-ом, flycast постоянно развивается, причем в HD текстурами.
Да, в последних сборках Demul ставку ставит уже без HD текстур, но всё же Flycast поддерживает Vulkan и OpenGL, а это мощнейшие библиотеки по сравнению с устаревшим DX11)
Skay:
--- Цитата: Xbox original от 31 Май 2025, 08:16:56 ---OpenGL
--- Конец цитаты ---
--- Цитата: Xbox original от 31 Май 2025, 08:16:56 ---а это мощнейшие библиотеки по сравнению с устаревшим DX11
--- Конец цитаты ---
:rofl:
--- Цитата: Xbox original от 31 Май 2025, 08:16:56 ---Vulkan
--- Конец цитаты ---
как я помню, Demul прекрасно работает через dxvk
CaH4e3:
Демул 0.1 отлично работает под огл лол
stalker4:
Могу ошибаться, но как мне кажется, эмуляторы дримкаста уже выдали из себя всё что можно. Дальнейшего развития у них нет, разве что делать поддержку сторонних текстур, чтоб свои ремастеры делать. Но учитывая своеобразность платформы, вряд ли кому-то это интересно :neznayu:
MetalliC:
ну да ну да, а потом какой-нибудь Рази выпускает порт ГТА3 и все эти классные эмуляторы дримкаста превращаются в тыкву и нифига не работают :lol:
повторю, то что говорил уже дохренадцать лет назад: дримовские игры относительно ненапряжно эмулируются лишь потому, что они используют лишь небольшой набор возможностей дрима и строго определенным образом.
но если шаг влево шаг вправо - так сразу как в том анекдоте, что если бы строители строили дома как программисты пишут программы то первый же залетевший дятел привёл бы к краху цивилизации :lol:
а в целом там еще непаханное поле, вон того же Рази всё никак не попустит и он продолжает ковырять свой "refsw" симулятор (с полной эмуляцией тайлакселератора, потайлового рендеринга и всей фигнёй).
заодно исследует всякие возможности железа, вон недавно накопал что Punch-полигоны оказывается рендерятся два раза, один типа чтоб определить дискарднулся фрагмент или нет, и еще раз чтоб отрендерить с эффектами от теней (модифиеров). сделал демки с этим эффектом, и естественно оно нифига не работает как надо в эмуляторах.
Психиатр:
тогда, думаю, закономерный вопрос, а Demul всё, кончился?
MetalliC:
Психиатр, если под Demul подразумевается эмулятор дримкаста - он "кончился" еще около десятка лет тому назад
stalker4:
И смысл "пахать это поле", если ни одна игра по сути потанцевал не раскрыла? Для чего заморачиваться с эмуляцией всего и вся в консоли, если ни одна игра это не использует и сейчас можно уже пройти в принципе всё что хочется
MetalliC:
а какой вообще смысл создавать эмуляторы с точки зрения разработчика? ;)
--- Цитата: stalker4 от 01 Июнь 2025, 12:42:10 ---Для чего заморачиваться с эмуляцией всего и вся в консоли, если ни одна игра это не использует и сейчас можно уже пройти в принципе всё что хочется
--- Конец цитаты ---
ну не знаю, я периодически заглядываю на emudev в дисе и разрабов с подобной мотивацией (сделать мумуляцию до уровня чтоб список определенных игр работал и всё, шабаш) почему-то не вижу почти...
DreamZzz:
--- Цитата: MetalliC от 30 Май 2025, 16:12:06 ---а про OSD, который во время игры вызывается комбо кнопочек чот ничего не вижу и не помню. вот так оно выглядит
красота короче, все параметры видны, плюс они лежат по статическим адресам в ОЗУ и прямиком шлются командами в гпу, так что по декомпилу без особого напряга читается какие команды чего делают и какие аргументы у них. сожалению, в отладочном коде нет названий для режимов текстур, материала и блендинга, только цифирки показывает, но хоть так.
так что систему команд я раскурил полностью, могу запостить доку если кому интересно.
а вот что со многим из этого потом делать - всё еще темный лес :( кучка цветов в материалах с невнятными названиями, и хрен пойми что с ними делать... они явно аналоги привычных ambient/diffuse/emissive цветов материала из фиксированной модели освещения OpenGL 1, но поди разберись что там есть что.
--- Конец цитаты ---
Когда я ковырял рендер хикары как раз этого и не хватало :lol:
MetalliC:
и я ж о том, жаль что в свое время не нашли это дело, Санчу выговор :D
CaH4e3:
Я задолбался там вертексы курить, долго много и неудобно. Вот нашел читкод первый Ина радостях дальше не смотрел, хотя все тексты видел от дебагового меню. Металлик, добавишь на tcrf новые меню или мне дореверсить? ;)
MetalliC:
я там даже не зареган, добавь если есть время/желание.
нужно чтоб был активирован отладочный режим, кодом что ты нашел,
затем поставить игру на паузу - нажать одновременно влево+вправо 1го игрока, либо button 3 + Start 2го игрока, эффект вроде тот же
и затем нажать button 4 + button 2 2го игрока - появится OSD окошко как на скрине выше
потом просто курсором выбираешь нужный пункт и откроется новое окно.
как закрыть текущее окно или вернуться в главное я чот недопёр, просто жму еще раз 4+2 кнопки и снова открывается главное, а те продолжают отображаться, и даже обновляться, типа многозадачность :)
так же есть frame advance стартом 1го игрока.
и наверное еще кучка всяких фишек до которых я не дорыл, точно есть режим свободной камеры, раз как-то его случайно включил но хз как именно.
чтоб сняться с паузы еще раз нажать влево+вправо 1го игрока, или одновременно старт 1 и 2го игроков.
кстати про вертексы, а там разве есть генерация кода моделей в реалтайме? в харриере емнип я находил только процедурку печатающую текст, и вроде всё, потому решил что все меши готовыми из ромборды читаются.
в Air Trix наверное точно есть, раз там анимация персонажа делается во время игры, но трикс я особо не смотрел еще.
DreamZzz:
Я там тогда не увидел ничего похожего на расчет скелетной анимации. Просто вертексы потоком идут и умножаются на матрицу мира.
MetalliC:
может и так, я код 2го проца лишь поверхностно глянул и увидел там кучку всякой непонятной математики.
ну и плюс там если помнишь, когда еще не было расшифровки куска кода для 2го проца то моделька персонажа была статичной с расставленными руками, так что как-то оно там связано с анимацией.
DreamZzz:
А, ну возможно и так. Там не до конца что-то с синхронизацией раскурили, так как в какой-то момент появилась часть графики, которую раньше не рисовало, но пропала часть графики в других местах (игра про пожарных сильно реагирует на это)
Навигация
Перейти к полной версии