PDA

View Full Version : QUERY: duke 3d original source code beginners guid


kevingpo
01-23-2006, 10:57 AM
Anyone here a programmer and knows about the icculus & rancidmeat duke ports?

I like to build my own duke, starting from original 3drealms released source code files... and updating it to use SDL & SDL_mixer (for sound). Everything else kept the same. Anyone got tips/advice? I had a look at the rancidmeat & icculus ports, however they have changed a lot over a wide variety of files...

JonoF
01-23-2006, 11:31 AM
How To Port a DOS Build Game to Use SDL, Starting From Scratch

Phase 1: Porting the Build engine
Replace the DOS-specific bits with workalikes built upon SDL, while at the same time sorting out any compiler and tool-chain related issues brought about by the rescucitation of the old code on a new platform.

Phase 2: Porting the Game
Repeat the same process as for the engine.

Caveats in the case of Duke3D and SW thus far
You need to write a replacement for all the pieces of the MACT library that supplies Duke with its config file reading and writing, input device handling, and other ancillary things. You need to port AudioLib, writing new code to mix into an SDL sound buffer, and if you want MIDI, to play MIDI via your platform's MIDI system.
Jonathon

kevingpo
01-23-2006, 06:16 PM
JonoF said:
How To Port a DOS Build Game to Use SDL, Starting From Scratch

Phase 1: Porting the Build engine
Replace the DOS-specific bits with workalikes built upon SDL, while at the same time sorting out any compiler and tool-chain related issues brought about by the rescucitation of the old code on a new platform.

Phase 2: Porting the Game
Repeat the same process as for the engine.

Caveats in the case of Duke3D and SW thus far
You need to write a replacement for all the pieces of the MACT library that supplies Duke with its config file reading and writing, input device handling, and other ancillary things. You need to port AudioLib, writing new code to mix into an SDL sound buffer, and if you want MIDI, to play MIDI via your platform's MIDI system.
Jonathon



Wow. That's nasty stuff! Someone should write a detailed report/specifications on that. Though diffing the files between sources is hard enough.

kevingpo
01-27-2006, 08:54 AM
Is it possible to port/include your server/client network code into rancidmeats?