Hacker News new | past | comments | ask | show | jobs | submit login

They developed Doom on NeXT with highly portable C code. The reason for that is they were more productive on NeXT workstations (development and map design). Doom has been easily ported to every platform because they designed it to be easily ported. Recommended reading: https://fabiensanglard.net/gebbdoom/



It is the highly portable cross-system C code that makes it so easy to run doom on everything.

Because they were running ut on such different systems, almost all porting bugs were caught in development.


Not only that but it was due to their portable software architecture which was by design. Carmack isolated the platform dependent stuff so that you can port it to any other platform without too much effort.


Correct.

The great majority of platform dependent code is video output, keyboard handling, sound and network.

The functions for that that call dos/x86-specific code are neatly separated by the rest in appropriately named files, so it’s really easy to know what you will need to modify, without a million other distractors.




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: