Home

Awesome

LemonDOOM

Port of doomgeneric to Lemon OS.

porting

Create a file named doomgeneric_yourplatform.c and just implement these functions to suit your platform.

FunctionsDescription
DG_InitInitialize your platfrom (create window, framebuffer, etc...).
DG_DrawFrameFrame is ready in DG_ScreenBuffer. Copy it to your platform's screen.
DG_SleepMsSleep in milliseconds.
DG_GetTicksMsThe ticks passed since launch in milliseconds.
DG_GetKeyProvide keyboard events.
DG_SetWindowTitleNot required. This is for setting the window title as Doom sets this from WAD file.

platforms

I have ported to Windows, X11, and Soso. Just look at (doomgeneric_win.c or doomgeneric_xlib.c).

Note that X11 port is not efficient since it generates pixmap by XDrawPoint. It can be further improved by using X11 extensions.

Windows

Windows

X11 - Ubuntu

Ubuntu

X11 - FreeBSD

FreeBSD