Dangerous Dave

From ModdingWiki
Jump to navigation Jump to search
Dangerous Dave
Dangerous Dave.png
Mod-Dangerous Dave.png
Levels?Tick.png Editable
Tiles?Tick.png Editable
Sprites?Tick.png Editable
Sound?X mark.svg Not editable
Text?X mark.svg Not editable
UI/menus?X mark.svg Not editable
Demos?X mark.svg Not editable

Dangerous Dave is the first installment in the popular Dangerous Dave series, preceding Dangerous Dave 2 (And DDiCI.)

In this installment Dave navigates the lair of his nemesis, looking for the ten special trophies he needs to steal, and get out alive. The game features ten levels plus bonus areas and separate CGA, EGA and VGA graphics.


The following tools are able to work with this game.

Name PlatformGroup/archives Levels Graphics Music Sounds Text Saves .exe patch Notes
Camoto Linux/WindowsN/AEditEditN/ANoNoN/ANo
Wombat WindowsN/AViewViewN/AViewNoN/ANo

File formats

File name Description
dave.exe See below for details.
egadave.dav EGA tiles in Dangerous Dave Tileset Format.
scores.dav High scores in Dave Score format.


When decompressed with UNLZEXE, dave.exe contains the following data:

Offset Length Format Description
0x0b510 ? ? Unknown data - UINT32LE count, UINT32LE[count] len, ...
0x0c620 0x5AD0 Dangerous Dave Tileset Format CGA tiles
0x120f0 0xA3F0 Dangerous Dave Tileset Format VGA tiles
0x1c4e0 0x12A0 Inverse Frequency Sound format PC Speaker sound effects
0x1d780 0x12C0 ? CGA font + menu graphics
0x1ea40 0x2480 ? EGA font + menu graphics
0x20ec0 0x4800 ? VGA font + menu graphics
0x2583a 0x14 UINT16LE array Mapping between normal levels and Warp Zones
0x25b66 0x320 Dangerous Dave Level format Monster properties for each level
0x25ea4 0x46 Dangerous Dave Level format Small 10×7 level shown on title screen
0x2643f 0xE NUL-terminated ANSI string Intro screen title
0x26451 0x17 NUL-terminated ANSI string Intro screen sub-title
0x26ea9 0x21 Raw 8bpp pixel data Gradient border shown above and below level, with trailing 0x00
0x26b0a 0x300 VGA Palette 6-bit RGB
0x26e0a 0x3200 Dangerous Dave Level format Game levels (10 @ 1280 bytes each)

There are a number of variables stored in the .exe:

Offset Type Description
0x92B5 UINT16LE Pixel offset of top map border (0 = first line, 320 = second line, etc.)
0x92BE UINT16LE Pixel offset of bottom map border
0z265D1 UINT16LE[8] Which row and column the F2 control panel elements appear on
0x26A99 UINT16LE[10] Initial horizontal scroll position of map at level start (only viewport though?)
UINT16LE[10] Something to do with the offset where the game looks for the tiles
UINT32LE[10] Additional map data, unknown purpose

Some EGA graphics are stored internally and use the Commander Keen EGA Header.


Dave can use CGA, EGA and VGA graphics, with the default being the best card available. All of the CGA and VGA graphics are stored internally, while the EGA graphics are stored in an external file, and have no relation to the CGA/VGA graphics (i.e. the game will work fine in CGA or VGA mode even if EGADAVE.DAV is missing.) The font and menu graphics (for CGA/VGA and EGA) are all stored in the main .exe file (as it is still possible to press F2 to change in and out of EGA mode with a missing/corrupted EGADAVE.DAV file.)

Related links