59 lines
1.8 KiB
Markdown
59 lines
1.8 KiB
Markdown
|
# libDGL
|
||
|
|
||
|
libDGL is a "retro coding" C library aimed at MS-DOS [VGA Mode 13h](https://en.wikipedia.org/wiki/Mode_13h) game development. It is developed with DJGPP with 486 DX2 systems as a baseline target for performance.
|
||
|
|
||
|
### Why?
|
||
|
|
||
|
Because it's fun.
|
||
|
|
||
|
If you were looking for something for "retro" MS-DOS game development that is fully featured, really performant and bug-tested that's ready right now, have a look at Allegro 3.x or possibly 4.x depending on what hardware you're targetting.
|
||
|
|
||
|
### Status
|
||
|
|
||
|
This library is currently under early development and is lacking many things and probably chock-full of bugs.
|
||
|
|
||
|
**Done / Mostly Done**
|
||
|
|
||
|
* Primitive drawing support
|
||
|
* Text rendering
|
||
|
* Blitting
|
||
|
* Graphics clipping
|
||
|
* Keyboard input
|
||
|
* Mouse input
|
||
|
* PCX loading/saving
|
||
|
* Math library (general helpers, 2D vector, 3x3 matrix)
|
||
|
* Basic error handling / results
|
||
|
|
||
|
**TODO**
|
||
|
|
||
|
* Scaled/rotated blitting support
|
||
|
* Blending
|
||
|
* "Mode 7" like support
|
||
|
* Custom font loading (BIOS-like format?)
|
||
|
* Joystick / Gravis GamePad support
|
||
|
* PC speaker sounds
|
||
|
* Sound Blaster compatible sound/music
|
||
|
* Gravis Ultrasound compatible sound/music
|
||
|
* Fixed point math
|
||
|
* Sine/cosine lookup table optimizations
|
||
|
* BMP, LBM, GIF image loading (and saving?)
|
||
|
|
||
|
### DJGPP Toolchain
|
||
|
|
||
|
Along the same theme as this library itself, I am using an older version of DJGPP from the late 90's. I have not tested with any other versions of the DJGPP toolchain other than:
|
||
|
|
||
|
```
|
||
|
15 Jan 1998 bnu281b.zip
|
||
|
24 Oct 1997 csdpmi4b.zip
|
||
|
31 Oct 1996 djdev201.zip
|
||
|
18 Jan 1997 faq210b.zip
|
||
|
6 Jun 1998 gcc281b.zip
|
||
|
18 Oct 1996 gdb416b.zip
|
||
|
6 Jun 1998 gpp281b.zip
|
||
|
1 Mar 1998 mak3761b.zip
|
||
|
30 Sep 1997 rhide14b.zip
|
||
|
```
|
||
|
|
||
|
This is a pretty arbitrary selection that was based on a cut-off of about 1998 (which was when I first came across DJGPP when I was younger).
|
||
|
|