There's a newer version of the Marathon engine (as Marathon 2 is open-source) that uses OpenGL and such. I do believe it's called Aleph One, and it adds a lot to the game's rather rustic (> 7 years old) engine.
Might be easier to start with the open-source port than the ancient source code provided by Bungie.