b47e17b34cb069381b8c7a0a13330e6f32558c2c
Renamed all occurrences of 'osx' to 'sdl', deleted binary files (doomgeneric, doomgeneric/DOOM1.WAD)
doomgeneric
The purpose of doomgeneric is to make porting Doom easier. Of course Doom is already portable but with doomgeneric it is possible with just a few functions.
To try it you will need a WAD file (game data). If you don't own the game, shareware version is freely available (doom1.wad).
porting
Create a file named doomgeneric_yourplatform.c and just implement these functions to suit your platform.
- DG_Init
- DG_DrawFrame
- DG_SleepMs
- DG_GetTicksMs
- DG_GetKey
| Functions | Description |
|---|---|
| DG_Init | Initialize your platfrom (create window, framebuffer, etc...). |
| DG_DrawFrame | Frame is ready in DG_ScreenBuffer. Copy it to your platform's screen. |
| DG_SleepMs | Sleep in milliseconds. |
| DG_GetTicksMs | The ticks passed since launch in milliseconds. |
| DG_GetKey | Provide keyboard events. |
| DG_SetWindowTitle | Not required. This is for setting the window title as Doom sets this from WAD file. |
sound
Sound is much harder to implement! If you need sound, take a look at SDL port. It fully supports sound and music! Where to start? Define FEATURE_SOUND, assign DG_sound_module and DG_music_module.
platforms
Ported platforms include Windows, X11, SDL, Soso. Just look at (doomgeneric_win.c or doomgeneric_xlib.c).
Windows
X11 - Ubuntu
X11 - FreeBSD
SDL
Description
Languages
C
99.9%



