From 4fa6e2abc0f1506bdf985ec57f1ea545b0ad9d63 Mon Sep 17 00:00:00 2001 From: gered Date: Sat, 28 Apr 2018 11:44:00 -0400 Subject: [PATCH] update README.md with build instructions and some forgotten changes --- MAKEFILE | 2 +- README.md | 27 ++++++++++++++++++++++++++- TEST.PCX | Bin 0 -> 17260 bytes 3 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 TEST.PCX diff --git a/MAKEFILE b/MAKEFILE index c7d02c8..50599dd 100644 --- a/MAKEFILE +++ b/MAKEFILE @@ -1,4 +1,4 @@ -target_config = release +target_config = debug target_name = dgl diff --git a/README.md b/README.md index 3585db2..0e5a071 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ 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. -The project is developed with Watcom C 10.0b. +The project is developed with Watcom C 10.0b and Borland Turbo Assembler 4.0. ### Why? @@ -39,8 +39,33 @@ chock-full of bugs. * "Mode 7" like support * Custom font loading (BIOS-like format?) * Joystick / Gravis GamePad support +* Input device (keyboard/mouse/joystick) events * PC speaker sounds * Sound Blaster compatible sound/music * Gravis Ultrasound compatible sound/music * Sine/cosine lookup table optimizations * BMP, LBM, GIF image loading (and saving?) +* Simple immediate mode GUI + +### Building + +You can use `WMAKE` to build using the included `MAKEFILE`. + +To build the library: + +``` +> wmake target_config=debug build ; debug build + +> wmake target_config=release build ; release build +``` + +Will output `DGL.LIB` in the project directory. + +To build and run a test program from `TEST.C` using the libDGL sources statically linked: + +``` +> wmake run + +> wmake debug ; run through WD debugger +``` + diff --git a/TEST.PCX b/TEST.PCX new file mode 100644 index 0000000000000000000000000000000000000000..41ca0b6b7f24dd8e2ddd644cf0b00f86e96a8e80 GIT binary patch literal 17260 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 literal 0 HcmV?d00001