Hacker Newsnew | past | comments | ask | show | jobs | submit | turol's commentslogin

Unfortunately Doom has a lot of undefined behavior (because it's a 30 year old codebase) so if you enable UBSAN you're inundated with warnings. Finding this specific needle in that haystack would take quite a lot of effort.

For a real world example of how this can affect code check out this commit I made in mesa: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20...


Hieno homma


Kiitos!


That is a very good description of the Paranoia RPG.


> There’s probably another name for this

Race to the bottom


> Right, my humor there was that I'm assuming people specifically did non-debug flags for the build as an optimization.

It used to be the case that the presence of debug symbols would affect GCC code generation. Nowadays that should be fixed. I think it still affects the speed of compilation so if you're building the whole system from source you might want to avoid it.


I think vtune and toplev will report that as a frontend stall in their topdown metrics.


> In theory it should only be about writing a new build script (not based on `wmake` but on a real `make`). And then workout the tiny flag/preprocessor/C compiler discrepancies.

For mostly C code like the original Doom source, yes. But it looks like FastDoom people have added quite a bit of assembly. That needs to be ported to AT&T syntax. Or you need to find out if Intel syntax works in your version of DJGPP's gas. While this should work nowadays I have not tried it. Then there's other differences like Watcom mapping low memory by default into the low part of the address space but DJGPP needing explicit mapping or access.


True. I've tried it on a Pentium 166/MMX with a Voodoo 2 and it runs about 15 fps.


I think that this might be due to the specific version of VESA stuff it ships with causing the problems.


The Voodoo 2 completely takes over display output. VESA stuff shouldn't have any effect in this case.


The Voodoo2 can not completely take over display output - that's why it needed a 2D card for passthrough until the Voodoo Banshee.


If the OS doesn't provide an actual sound API developers will only write support for the most popular sound cards.


I remember games which had extra features if you had a Gravis UltraSound.


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

Search: