Обновить

Комментарии 11

Для сравнения: в DOOM было всего два файла .asm и три функции для ускорения движка.


В тех сорцах, что от 97-года? Я так понимаю, что их Кармак как раз очень сильно почистил от asm-кода, который был заточен чисто под x86, DOS, аппаратные фичи VGA, таймер и т.п., и переписал на Си. А пару файлов с ассемблером приложил чисто для лулзов, как исторический артефакт.

Или где-то есть оригинальные сорцы Doom'a, который был под DOS, использовал DOS4GW, и все такое?

А как он должен был выпустить всё из версии для DOS в 1997 году, если там некая закопирайченная аудиобиблиотека? Буквально это и было указано в ридми:

We couldn't release the dos code because of a copyrighted sound library we used (wow, was that a mistake -- I write my own sound code now)

Выпустил он в 1997 году версию для Linux, там то же и указано:

this code only compiles and runs on linux

Насколько я понимаю, полные исходники версии DOS/Watcom + DOS4GW нигде не публиковались.

Более того, некоторые DOS-специфичные файлы (i_ibm.c, i_ibm_a.asm, planar.asm и так далее) в релизе исходников версии для Linux выкинули.

ну, дык, о том и речь. Что в оригинальном Doom'e скорее всего ассемблера было более чем дофига. Да и в DOS версии Quake его явно поболее,, чем в той, что описывает автор.

на полноценные сорцы не похоже

DMX самого нет, возможно, каких-то других библиотек...

Некий товарищ на форуме по ссылке пишет, что удалось с помощью доступных в других местах файликов (dmx и мелочёвка типа makefile) получить бинарник идентичный оригинальному.

Или где-то есть оригинальные сорцы Doom'a, который был под DOS, использовал DOS4GW, и все такое?

Есть, восстановленные: https://doomwiki.org/wiki/Gamesrc-ver-recreation.
Да и исходники DMX уже утекли: https://doomwiki.org/wiki/Talk:DMX#DMX_sources_leaked_in_2015.

Вот это реально крутая инженерия. D_DrawSpans8 по сути и делал весь фпс. Неудивительно что там самый жирный прирост

Может только у меня так, но цветные строки из оригинала сломаны в переводе.

У Абраша была книга про 3D графику и оптимизацию, там как раз много разбиралось про использование ассемблера.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации