sgtcrispy Posted June 7, 2014 Looks like the folks at Flat Rock Software have released the source code of id's games from their time at Softdisk, which includes the various Catacomb games and Hovertank 3D. FRS apparently owns the rights to the games. Read more at Phoronix. 0 Share this post Link to post
reality 2.0 Posted June 7, 2014 ah cool. I'll be sure to toy with the source code(s) today. 0 Share this post Link to post
Pencil of Doom Posted June 8, 2014 YEAH!!! Finally someone can make a source port for these games, which is a good thing because it removes the need to use DosBox. And not only that, it could be possible to make mods for them. 0 Share this post Link to post
Stygian Posted June 8, 2014 Awesome. I can't wait to play around with this when I finish my Summer semester. Kind of makes me wonder how much of it is written in C and how much is assembly code. 0 Share this post Link to post
Quasar Posted June 8, 2014 Stygian said:Awesome. I can't wait to play around with this when I finish my Summer semester. Kind of makes me wonder how much of it is written in C and how much is assembly code. Progressively less ASM as the games get older, though none of them are entirely without. 0 Share this post Link to post
ETTiNGRiNDER Posted June 8, 2014 Quasar said:Progressively less ASM as the games get older, though none of them are entirely without. Interesting. I would've predicted the reverse. 0 Share this post Link to post
Remilia Scarlet Posted June 9, 2014 ETTiNGRiNDER said:Interesting. I would've predicted the reverse. Hand-tuned ASM used to be faster (usually, not always) than compiler-produced code. Still is in some cases, but the difference is now much more negligible. Catacomb was written in Turbo Pascal. 0 Share this post Link to post
Quasar Posted June 9, 2014 yukib1t said:Hand-tuned ASM used to be faster (usually, not always) than compiler-produced code. Still is in some cases, but the difference is now much more negligible. Catacomb was written in Turbo Pascal. In this case I think the relative non-maintainability of ASM was a big factor, particularly as the latter Catacomb 3D sequels weren't programmed by Carmack but by other people who had to build on top of his code without his advice to run on. A lot of the ASM that is in there was compiled from C code (which is at least in some cases also included) and then hand-tuned. You can tell as the lines of corresponding C code are interspersed with the assembly in those files, helping to serve as some documentation (should make porting off 16-bit x86 easier too for people who aren't real mode wizards). 0 Share this post Link to post
doomgargoyle Posted June 9, 2014 Anyone tried compiling these sources? I cant find a copy of Borland 3.1, or is it 2.0, to compile them with, much less a copy of turbo pascal. 0 Share this post Link to post
Quasar Posted June 9, 2014 doomgargoyle said:Anyone tried compiling these sources? I cant find a copy of Borland 3.1, or is it 2.0, to compile them with, much less a copy of turbo pascal. For the Pascal you'd probably have to try to port it to a different more modern Pascal compiler, as I don't think Turbo Pascal was released freely later on like Turbo C/C++ was. Either that or port it to C, which is fairly straight forward - aside from a couple of gotchas, Pascal has more or less the same semantics as C with a different syntax. 0 Share this post Link to post
doomgargoyle Posted June 9, 2014 Quasar said:For the Pascal you'd probably have to try to port it to a different more modern Pascal compiler, as I don't think Turbo Pascal was released freely later on like Turbo C/C++ was. Either that or port it to C, which is fairly straight forward - aside from a couple of gotchas, Pascal has more or less the same semantics as C with a different syntax. Thing is, im not a programmer, it'd be the first time i port pascal to c syntax. :D Was turbo c/c++ released freely? Is there a url to it? 0 Share this post Link to post
Quasar Posted June 9, 2014 doomgargoyle said:Thing is, im not a programmer, it'd be the first time i port pascal to c syntax. :D Was turbo c/c++ released freely? Is there a url to it? http://edn.embarcadero.com/article/41337 0 Share this post Link to post
Blzut3 Posted June 9, 2014 Note that if you're looking to port the Pascal to C, just use second game's code base. It's pretty close to a straight Pascal->C source. I think OLDCAT.C is a backup from after the straight port was done.Quasar said:I don't think Turbo Pascal was released freely later on like Turbo C/C++ was. Turbo Pascal 5.5 has been. Doesn't look like the later versions were though. 0 Share this post Link to post
doomgargoyle Posted June 10, 2014 Ok, I was able to find a copy of Borland 3.x, and I compiled Hovertank, and it compiles and runs, but when I compiled Catacomb 3d, it compiles, but when executing the program it gives this error: MM_Getptr: Out of memory! 0 Share this post Link to post
doomgargoyle Posted June 10, 2014 J.B.R said:YEAH!!! Finally someone can make a source port for these games, which is a good thing because it removes the need to use DosBox. And not only that, it could be possible to make mods for them. There's already mods for Hovertank. http://www.moddb.com/mods/demon-hunter Requires the game to work. With the source it could be a standalone game. 0 Share this post Link to post
Rohit_N Posted June 10, 2014 Any way of compiling Catacomb 3D without the supplied OBJ files in the source? 0 Share this post Link to post
Patrol1985 Posted June 10, 2014 Chocolate Catacomb 3D / Hovertank for the win! :D 0 Share this post Link to post
Blzut3 Posted June 10, 2014 doomgargoyle said:but when I compiled Catacomb 3d, it compiles, but when executing the program it gives this error: Probably your data files not being the correct version to match the source release. I can confirm that the source works just fine with the id Anthology data.Rohit_N said:Any way of compiling Catacomb 3D without the supplied OBJ files in the source? Yes, but it wouldn't be of much use. The OBJ files provided are the headers for the game data and the intro screen (which tells you about your hardware). You could extract the C3D files out of the headers and remove the intro screen. To do the former you need to change a define so that it reads the external file instead of the linked data. (Look for where it reads the EGAHEAD.) Not entirely sure what good it would do you though. 0 Share this post Link to post
Solarn Posted June 11, 2014 Does the open sourcing include the Catacomb Fantasy Trilogy or just the original Catacomb 3D? 0 Share this post Link to post
ETTiNGRiNDER Posted June 11, 2014 Solarn said:Does the open sourcing include the Catacomb Fantasy Trilogy or just the original Catacomb 3D? The trilogy's on there. 0 Share this post Link to post
Quasar Posted June 11, 2014 doomgargoyle said:We need source ports! I wouldn't hold your breath. It could be years before people figure this stuff out enough to port it anywhere, let alone start modifying it. The amount of interest is also low. These were never "big" games like Wolf3D or Doom. Most people barely remember them if they know about them at all. 0 Share this post Link to post
doomgargoyle Posted June 11, 2014 Quasar said:I wouldn't hold your breath. It could be years before people figure this stuff out enough to port it anywhere, let alone start modifying it. The amount of interest is also low. These were never "big" games like Wolf3D or Doom. Most people barely remember them if they know about them at all. Then I'll start figuring it out myself! Well, at least this source release will at least put these games on people's attentions. Would you say these codebases are simpler to understand than wolf3d/doom's to the complete beginner? Any tips on how/where to start learning? 0 Share this post Link to post
Quasar Posted June 11, 2014 doomgargoyle said:Then I'll start figuring it out myself! Well, at least this source release will at least put these games on people's attentions. Would you say these codebases are simpler to understand than wolf3d/doom's to the complete beginner? Any tips on how/where to start learning? Absolutely not, because they are mired very deeply in 16-bit real mode architecture with x86 assembly both inline and out, and use highly tuned approaches that only work under DOS on the bare metal. This is not a "my first program" job, for sure, unless you just finished cutting your teeth on Abrash's Black Book and consider Dr. Dobbs to be bathroom reading material. 0 Share this post Link to post
Gez Posted June 12, 2014 Quasar said:These were never "big" games like Wolf3D or Doom. I'd say Doom or Quake instead of Wolf3D or Doom. As far as the source port scene goes at least. Plenty of choices with Doom or Quake, but the Wolf3D port scene is mostly vanilla or Wolf4SDL with some copy-pasted code to make custom executables for a particular mod, and that's all. Good thing there's ECWolf. (Which actually may end up being our best hope for a port of Hovertank 3D and the Catacomb games.) 0 Share this post Link to post
doomgargoyle Posted June 12, 2014 Quasar said:Absolutely not, because they are mired very deeply in 16-bit real mode architecture with x86 assembly both inline and out, and use highly tuned approaches that only work under DOS on the bare metal. This is not a "my first program" job, for sure, unless you just finished cutting your teeth on Abrash's Black Book and consider Dr. Dobbs to be bathroom reading material. ok, what about the first pascal Catacomb game? 0 Share this post Link to post
doomgargoyle Posted June 12, 2014 Gez said:I'd say Doom or Quake instead of Wolf3D or Doom. As far as the source port scene goes at least. Plenty of choices with Doom or Quake, but the Wolf3D port scene is mostly vanilla or Wolf4SDL with some copy-pasted code to make custom executables for a particular mod, and that's all. Good thing there's ECWolf. (Which actually may end up being our best hope for a port of Hovertank 3D and the Catacomb games.) Yes, ECWolf is probably the only port that support wolf3d engine and the like era games these days. 0 Share this post Link to post
doomgargoyle Posted July 4, 2014 Im trying to figure out the source code for Catacomb II , known too as The Catacomb, since it looks like the simplest codebase for begginers. The code mentions a level editor. Could any coder here please point out if thereĀ“s a functioning level editor in the codebase ? 0 Share this post Link to post
marxr Posted July 15, 2014 Something funny i found from the Hovertank 3D code: NOTICE TO ANYONE READING THIS: This is the last gasp of our old routines! Everything is being rewritten from scratch to work with new graphic modes and utilities. This code stinks! 0 Share this post Link to post
clamgor Posted July 16, 2014 Well isn't it nice that we'll get Hovertank source ports soon? 0 Share this post Link to post
Recommended Posts