Chocolate Doom and LZDoom - EmuELEC/EmuELEC GitHub Wiki

Chocolate Doom is a Doom source port that accurately reproduces the experience of Doom as it was played in the 1990s. LZDoom is a fork of GZDoom which itself is a modder-friendly source port based on the DOOM engine

A few words about file locations

There are two directories you need to be aware of:

  1. The first one is called "roms/ports/doom" in the rest of this document. This directory can be found in different ways.
    • As the path "/storage/roms/ports/doom" if you ssh into the device.
    • Via samba as "\YOUR_IP\roms\ports\doom
    • If you put the sd card into a pc it is EEROMS:\ports\doom
    • ...
  2. The second one is called "roms/ports/doom-mods" in the rest of this document. This directory can also be found in different ways.
    • As the path "/storage/roms/ports/doom-mods" if you ssh into the device.
    • Via samba as "\YOUR_IP\roms\ports\doom-mods
    • If you put the sd card into a pc it is EEROMS:\ports\doom-mods
    • ...

Original Games

If you just want to play single-wad/megawad games, copy those wads, iwads or pwads to "roms/ports/doom/" and you are done. Those wads are playable with Chocolate Doom, LZDoom and prboom.

Mods/Addons

If you want to play any mods or addons, you have to put special files with the extension ".doom" in "roms/ports/doom/". .doom files only run with Chocolate Doom and LZDoom. If you select prboom as the default core for Doom, you will get errors!

Format of .doom files

For EmuELEC version 4.2 and lower .doom files have to be in Unix format, line endings have to be just LF. If you use files in DOS format (CR+LF) you will get errors. Put a line feed (LF) on the last line. As of EmuELEC version 4.3 this is no longer necessary.

.doom files can contain three keywords

  • GAMETYPE (can be "doom", "hexen", "heretic" or "strife" and will choose the corresponding executable. Only needed for Chocolate Doom, leave empty for LZDoom)
  • SUBDIR (the directory from where chocolate-* or lzdoom is started, some mods need to be started in its own folder. Leave empty if not used)
  • PARAMS (the command line parameters needed for this mod to run with chocolate-* or lzdoom)

Examples

Chex

For the mod/addon "Chex" you have to do these steps

  • create a subfolder "roms/ports/doom-mods/chex/"
  • place all files of the mod/addon into this subfolder
  • create a file "roms/ports/doom/Chex 1.doom" with this content

GAMETYPE=doom SUBDIR= PARAMS=-iwad /storage/roms/ports/doom-mods/chex/chex.wad -deh /storage/roms/ports/doom-mods/chex/chex.deh

After restarting emulationstation there is a new entry "Chex 1" in system doom. This works with Chocolate Doom and LZDoom.

Strife

  • create a subfolder "roms/ports/doom-mods/strife/"
  • place all wads for strife into this subfolder
  • create a file "roms/ports/doom/Strife.doom" with this content

GAMETYPE=strife SUBDIR= PARAMS=-iwad /storage/roms/ports/doom-mods/strife/strife.wad

After restarting emulationstation there is a new entry "Strife" in system doom. This works with Chocolate Doom and LZDoom.

Doom64 for Doom2

  • create a subfolder "roms/ports/doom-mods/Doom64_for_Doom2/"
  • place all wads for Doom64 for Doom2 into this subfolder
  • place doom2.wad in "roms/ports/doom/"
  • create a file "roms/ports/doom/Doom64.doom" with this content

GAMETYPE=doom SUBDIR= PARAMS=-iwad /storage/roms/ports/doom/doom2.wad -merge /storage/roms/ports/doom-mods/Doom64_for_Doom2/D64D2.wad -deh /storage/roms/ports/doom-mods/Doom64_for_Doom2/d64d2.deh

After restarting emulationstation there is a new entry "Doom64" in system doom. This works only with Chocolate Doom. According to the wiki of Chocolate Doom you have to use the option "-merge" in this case. LZDoom does not have the command line parameter "-merge". Instead you have to use the parameter "-file" there, so the file "roms/ports/doom-mods/Doom64.doom" looks like this for LZDoom:

GAMETYPE=doom SUBDIR= PARAMS=-iwad /storage/roms/ports/doom/doom2.wad -file /storage/roms/ports/doom-mods/Doom64_for_Doom2/D64D2.wad -deh /storage/roms/ports/doom-mods/Doom64_for_Doom2/d64d2.deh

Configure Gamepad for chocolate-doom

In order to setup your gamepad for use with chocolate-doom you have to use a keyboard. Here are the steps required:

  • connect a keyboard to the device
  • select Setup-Scripts -> Launch Terminal
  • type „chocolate-setup“ on the keyboard, press enter
  • you have to press a cursor key once to see the gui of the setup
  • configure the keys to your liking
  • ESC -> save config
  • press the buttons H5 and H2 together (for OGS, on others you have to try). This will end the terminal.

If you want to setup the gamepad for hexen, heretic or strife, you have to add an option:

chocolate-setup -game [hexen|heretic|strife]