CMake Project

This project is known to work with Visual Studio 2005 and 2013.  If surf8rgb.s is fixed to work with GAS then it will compile in MinGW as well (the issue is "(%ecx + 2*%ecx)" is not valid, perhaps it's "(%ecx, 2)" but I'm not familiar with writing assembly).  You will also need to do some fudging to get MinGW to work with the DirectX headers but that's widely known.  I also compiled Engoo for Win64 using 2013 and the demo loop works fine, but starting a single player game crashes.

In all cases though compiling with NO_ASM off produces a binary that crashes in the assembly code.  (Well the 64-bit binary can't use the ASM any how.)  As we discussed in a PM, I suspect for MASM this is Microsoft trying to discourage self modifying ASM, but I really don't have much knowledge to work off there.  I see no reason this can't be used with VC6, so trying that out would be a good starting point.

Oh and compiling with modern MSVC yields over 2,000 warnings.