Комментарии 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 выкинули.
Сравнительно недавно нашли исходники 1995 (?) года:
https://github.com/fluddsskark/DOOM-DOS-src
https://www.doomworld.com/forum/topic/139867-is-this-macpc-doom-source-code-on-ebay-legit/
на полноценные сорцы не похоже
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 графику и оптимизацию, там как раз много разбиралось про использование ассемблера.

Как Майкл Абраш удвоил скорость Quake