3 * Chocolate Doom now runs on Windows Mobile/Windows CE!
4 * It is possible to rebind most/all of the keys that control
5 the menu, shortcuts, automap and weapon switching. The
6 main reason for this is to support the Windows CE port
7 and other platforms where a full keyboard may not be present.
8 * Memory-mapped WAD I/O is disabled by default, as it caused
9 various issues, including a slowdown/crash with Plutonia 2
10 MAP23. It can be explicitly re-enabled using the '-mmap'
11 command line parameter.
12 * The video mode auto-adjust code will automatically choose
13 windowed mode if no fullscreen video modes are available.
14 * The zone memory size is automatically reduced on systems
15 with a small amount of memory.
16 * There is now a second, small textscreen font, so that the
17 ENDOOM screen and setup tool can be used on low resolution
18 devices (eg. PDAs/embedded devices)
19 * The textscreen library now has a scrollable pane widget.
20 * Doxygen documentation was added for the textscreen library.
21 * The "join game" window in the setup tool now has an option
22 to automatically join a game on the local network.
25 * The A_BossDeath behavior in v1.9 emulation mode was fixed
29 * Crash when saving games due to the ~/.chocolate-doom/savegames
30 directory not being created (thanks to everyone who reported
32 * Chocolate Doom will now under Win95/98, as the
33 SetProcessAffinityMask function is looked up dynamically.
34 * Compilation under Linux with older versions of libc will now
35 work (the semantics for sched_setaffinity were different in
37 * Sound clipping when using libsamplerate was improved (thanks
39 * The audio buffer size is now calculated based on the sample rate,
40 so there is not a noticeable delay when using a lower sample
42 * The manpage documentation for the DOOMWADPATH variable was fixed
44 * Compilation with FEATURE_MULTIPLAYER and FEATURE_SOUND disabled
49 This version just fixes a crash at the intermission screen when
50 playing Doom 1 levels.
54 Happy 15th Birthday, Doom!
56 * Chocolate Doom now has an icon that is not based on the proprietary
58 * There is now memory-mapped WAD I/O support, which should be useful
59 on some embedded systems.
60 * Chex quest emulation support is now included, although an
61 auxiliary dehacked patch is needed (chexdeh.zip in the idgames
65 * The armor class is always set to 2 when picking up a megasphere
67 * The quit screen prompts to quit "to dos" instead of just to quit
69 * The "dimensional shambler" quit message was fixed.
70 * Fix crash related to A_BFGSpray with NULL target when using
71 dehacked patches - discovered with insaned2.deh
73 * NUL characters are stripped from dehacked files, to ensure correct
74 behavior with some dehacked patches (eg. the one with portal.wad).
77 * "Python Image Library" should have been "Python Imaging Library"
79 * The setup tool should no longer ask for elevated permissions
80 on Windows Vista (this fix possibly may not work).
81 * The application icon is set properly when running under Windows
82 XP with the "Luna" theme.
83 * Fix compilation under Cygwin to detect libraries and headers from
84 the correct environment.
85 * The video code does not try to read SDL events before SDL has
86 been properly initialised - this was causing problems with some
87 older versions of SDL.
91 The previous release (v1.1.0) included a bug that broke compilation
92 when libsamplerate support was enabled. The only change in this
93 version is to fix this bug.
97 * The video mode code has been radically restructured. The video mode is
98 now chosen by directly specifying the mode to use; the scale factor is
99 then chosen to fit the screen. This is helpful when using widescreen
100 monitors (thanks Linguica)
101 * MSVC build project files (thanks GhostlyDeath and entryway).
102 * Unix manpage improvements; the manpage now lists the environment
103 variables that Chocolate Doom uses. Manpages have been added for
104 chocolate-setup and chocolate-server, from the versions for the Debian
105 Chocolate Doom package (thanks Jon Dowland).
106 * INSTALL file with installation instructions for installing Chocolate
107 Doom on Unix systems.
108 * Support for high quality resampling of sound effects using
109 libsamplerate (thanks David Flater).
110 * A low pass filter is applied when doing sound resampling in an
111 attempt to filter out high frequency noise from the resampling
113 * R_Main progress box is not displayed if stdout is a file (produces
115 * Client/server version checking can be disabled to allow different
116 versions of Chocolate Doom to play together, or Chocolate Doom
117 clients to play with Strawberry Doom clients.
118 * Unix manpages are now generated for the Chocolate Doom
120 * The BSD PC speaker driver now works on FreeBSD.
123 * Use the same spechits compatibility value as PrBoom+, for consistency
125 * The intercepts overrun code has been refactored to work on big
127 * The default startup delay has been set to one second, to allow
128 time for the screen to settle before starting the game (some
129 monitors have a delay before they come back on after changing modes).
130 * If a savegame buffer overrun occurs, the savegame does not get saved
131 and existing savegames are not overwritten (same behaviour as
135 * Desync with STRAIN demos and dehacked Misc values not being set
136 properly (thanks Lemonzest)
137 * Don't grab the mouse if the mouse is disabled via -nomouse or use_mouse
138 in the configuration file (thanks MikeRS).
139 * Don't center the mouse on startup if the mouse is disabled (thanks
141 * Reset the palette when the window is restored to clear any screen
142 corruption (thanks Catoptromancy).
143 * mus2mid.c should use MEM_SEEK_SET, not SEEK_SET (thanks Russell)
144 * Fast/Respawn options were not being exchanged when starting netgames
145 (thanks GhostlyDeath).
146 * Letterbox mode is more accurately described as "pillarboxed" or
147 "windowboxed" where appropriate (thanks MikeRS)
148 * Process affinity mask is set to 1 on Windows, to work around a
149 bug in SDL_mixer that can cause crashes on multi-core machines
151 * Bugs in the joystick configuration dialog in the setup tool have
156 This release is dedicated to Dylan 'Toke' McIntosh, who was
157 tragically killed in a car crash in 2006. I knew Dylan
158 from IRC and the Doomworld forums for several years, and he had
159 a deep passion for this game. He was also a huge help for me while
160 developing Chocolate Doom, as he helped point out a lot of small
161 quirks in Vanilla Doom that I didn't know about. His death is a
162 great loss. RIP Toke.
164 This is the first release to reach full feature parity with
165 Vanilla Doom. As a result, I have made this version 1.0.0, so
166 Chocolate Doom is no longer beta!
169 * Multiplayer! This version includes an entirely new multiplayer
170 engine, based on a packet server architecture. I'd like to thank
171 joe, pritch, Meph and myk, and everyone else who has helped test
172 the new code for their support, feedback and help in testing this.
173 The new code still needs more testing, and I'm eager to hear any
175 * A working setup tool. This has the same look and feel as the
176 original setup.exe. I hope people like it! Note that it has
177 some advantages over the original setup.exe - for example,
178 you can use the mouse.
181 * New mus conversion code thanks to Ben Ryves. This converts the
182 Doom .mus format to .mid a lot better. As one example, tnt.wad
183 Map02 is now a lot closer to how Vanilla says. Also, the music
184 on the deca.wad titlescreen now plays!
185 * x3, x4 and x5 display scale (thanks to MikeRS for x5 scale).
186 * Fullscreen "letterbox" mode allows Chocolate Doom to run on machines
187 where 1.6:1 aspect ratio modes are unavailable (320x200/640x400).
188 The game runs in 320x240/640x480 instead, with black borders.
189 The system automatically adjusts to this if closer modes are
191 * Aspect ratio correction: you can (also) run at 640x480 without black
192 borders at the top and bottom of the screen.
193 * PC speaker sound effect support. Chocolate Doom can output real
194 PC speaker sounds on Linux, or emulate a PC speaker through the
196 * Working three-screen mode, as seen in early versions of Doom!
197 To test this out, put three computers on a LAN and type:
198 chocolate-doom -server
199 chocolate-doom -autojoin -left
200 chocolate-doom -autojoin -right
201 * Allow a delay to be specified on startup, to allow the display to
202 settle after changing modes before starting the game.
203 * Allow the full path and filename to be specified when loading demos:
204 It is now possible to type 'chocolate-doom -playdemo /tmp/foo.lmp'
206 * Savegames are now stored in separate directories depending on
207 the IWAD: eg. the savegames for Doom II are stored in a different
208 place to those for Doom I, Final Doom, etc. (this does not affect
210 * New mouse acceleration code works based on a threshold and
211 acceleration. Hopefully this should be closer to what the DOS
212 drivers do. There is a 'test' feature in the setup tool to help
214 * New '-nwtmerge' command line option that emulates NWT's '-merge'
215 option. This allows TiC's Obituary TC to be played.
216 * The ENDOOM screen no longer closes automatically, you have to click
217 the window to make it go away.
218 * Spechit overrun fixes and improvements. Thanks to entryway for
219 his continued research on this topic (and because I stole your
220 improvements :-). Thanks to Quasar for reporting a bug as well.
221 * Multiple dehacked patches can be specified on the command line,
222 in the same way as with WADs - eg. -deh foo.deh bar.deh baz.deh.
223 * Default zone memory size increased to 16MB; this can be controlled
224 using the -mb command-line option.
225 * It is now possible to record demos of unlimited length (by default,
226 the Vanilla limit still applies, but it can now be disabled).
227 * Autoadjusting the screen mode can now be disabled.
228 * On Windows, the registry is queried to detect installed versions of
229 Doom and automatically locate IWAD files. IWADs installed through
230 Steam are also autodetected.
231 * Added DOOMWADPATH that can be used like PATH to specify multiple
232 locations in which to search for IWAD files. Also, '-iwad' is
233 now enhanced, so that eg. '-iwad doom.wad' will now search all
234 IWAD search paths for 'doom.wad'.
235 * Improved mouse tracking that should no longer lag. Thanks to
236 entryway for research into this.
237 * The SDL driver can now be specified in the configuration file.
238 The setup tool has an option on Windows to select between
241 * Configuration file option to change the sound sample rate.
242 * More than three mouse buttons are now supported.
244 Portability improvements:
245 * Chocolate Doom now compiles and runs cleanly on MacOS X. Huge
246 thanks go to Insomniak who kindly gave me an account on his machine
247 so that I could debug this remotely. Big thanks also go to
248 athanatos on the Doomworld forums for his patience in testing
249 various ideas as I tried to get Chocolate Doom up and running
251 * Chocolate Doom now compiles and runs natively on AMD64.
252 * Chocolate Doom now compiles and runs on Solaris/SPARC, including
253 the Sun compiler. Thanks to Mike Spooner for some portability
255 * Improved audio rate conversion, so that sound should play properly
256 on machines that don't support low bitrate output.
259 * Check for IWADs in the same order as Vanilla Doom.
260 * Dehacked code will now not allow string replacements to be longer than
261 those possible through DOS dehacked.
262 * Fix sound effects playing too loud on level 8 (thanks to myk
263 for his continued persistence in getting me to fix this)
264 * Save demos when quitting normally - it is no longer necessary to
265 press 'q' to quit and save a demo.
266 * Fix spacing of -devparm mode dots.
267 * Fix sky behavior to be the same as Vanilla Doom - when playing in
268 Doom II, the skies never change from the sky on the first level
269 unless the player loads from a savegame.
270 * Make -nomouse and config file use_mouse work again.
271 * Fix the -nomusic command-line parameter. Make the snd_sfxdevice
272 snd_musicdevice values in the configuration file work, so that it
273 is possible to disable sound, as with Vanilla.
274 * Repeat key presses when the key is held down (this is the Vanilla
275 behavior) - thanks to Mad_Mac for pointing this out.
276 * Don't print a list of all arguments read from response files - Vanilla
278 * Autorun only when joyb_speed >= 10, not >= 4. Thanks to Janizdreg
280 * Emulate a bug in DOS dehacked that can overflow the dehacked
281 frame table and corrupt the weaponinfo table. Note that this means
282 Batman Doom will no longer play properly (identical behavior
283 to Vanilla); vbatman.deh needs to also be applied to fix it.
285 * Allow dehacked 2.3 patches to be loaded.
286 * Add more dehacked string replacements.
287 * Compatibility option to enable or disable native key mappings. This
288 means that people with non-US keyboards can decide whether to use
289 their correct native mapping or behave like Vanilla mapping (which
290 assumes all keyboards are US).
291 * Emulate overflow bug in P_FindNextHighestFloor. Thanks to
292 entryway for the fix for this.
293 * Add -netdemo command line parameter, for playing back netgame
294 demos recorded with a single player.
295 * The numeric keypad now behaves like Vanilla Doom does.
296 * Fix some crashes when loading from savegames.
297 * Add intercepts overrun emulation from PrBoom-plus. Thanks again
298 to entryway for his research on this subject.
299 * Add playeringame overrun emulation.
302 * Fix crash when starting new levels due to the intermission screen
303 being drawn after the WI_ subsystem is shut down (thanks
305 * Catch failures to initialise sound properly, and fail gracefully.
306 * Fix crasher in 1427uv01.lmp (thanks ultdoomer)
307 * Fix crash in udm1.wad.
308 * Fix crash when loading a savegame with revenant tracer missiles.
309 * Fix crash when loading a savegame when a mancubus was in the middle
311 * Fix Doom 1 E1-3 intermission screen animations.
312 * Fix loading of dehacked "sound" sections.
313 * Make sure that modified copyright banners always end in a newline
314 - this fixes a bug with av.wad (thanks myk)
315 * Added missing quit message ("are you sure you want to quit this
317 * Fix when playing long sound effects - the death sound in marina.wad
318 now plays properly, for example.
319 * Fix buffer overrun on the quicksave prompt screen that caused a
320 mysterious cycling character to appear.
321 * IDCLEV should not work in net games (thanks Janizdreg)
322 * Stop music playing at the ENDOOM screen.
323 * Fix sound sample rate conversion crash.
324 * Fix 'pop' heard at the end of sound effects.
325 * Fix crash when playing long sounds.
326 * Fix bug with -timedemo accuracy over multi-level demos.
327 * Fix bug with the automap always following player 1 in multiplayer
328 mode (thanks Janizdreg).
332 NWT-style merging command line options (allows Mordeth to be played)
333 Unix manpage (thanks Jon Dowland)
334 Dehacked improvements/fixes:
335 * Allow changing the names of graphic lumps used in menu, status bar
336 intermission screen, etc.
337 * Allow changing skies, animated flats + textures
338 * Allow changing more startup strings.
339 * Allow text replacements on music + sfx lump names
340 Fix for plutonia map12 crash.
341 Fix bug with playing long sfx at odd sample rates.
342 Big Endian fixes (for MacOS X). Thanks to athanatos for helping
344 Install into /usr/games, rather than /usr/bin (thanks Jon Dowland)
348 Imported the spechit overrun emulation code from prboom-plus. Thanks to
349 Andrey Budko for this.
350 New show_endoom option in the chocolate-doom.cfg config file allows
351 the ENDOOM screen to be disabled.
352 Chocolate Doom is now savegame-compatible with Vanilla Doom.
354 Fixes for big endian machines (thanks locust)
355 Fixed the behavior of the dehacked maximum health setting.
356 Fix the "-skill 0" hack to play without any items (thanks to Janizdreg
357 for pointing out that this was nonfunctional)
358 Fix playing of sounds at odd sample rates (again). Sound effects at
359 any sample rate now play, but only sounds with valid headers.
360 This is the *real* way Vanilla Doom behaves. Thanks to myk for
361 pointing out the incorrect behavior.
365 Silence sounds at odd sample rates (rather than bombing out); this
366 is the way Vanilla Doom behaves.
367 Handle multiple replacements of the same sprite in a PWAD.
368 Support specifying a specific version to emulate via the command line
370 Fix help screen orderings and skull positions. Behave exactly as
371 the original executables do.
374 Display startup "banners" if they have been modified through
376 Dehacked "Misc" section support.
379 * Doom 1 skies always using Episode 1 sky
380 * Crash when switching applications while running fullscreen
381 * Lost soul bounce logic (do not bounce in Registered/Shareware)
382 * Mouse buttons mapped incorrectly (button 1 is right, 2 is middle)
383 * Music not pausing when game is paused, when using SDL_mixer's
384 native MIDI playback.
385 * Pink icon on startup (palette should be fully set before anything is
392 Fix bug with invalid MUS files causing crashes
396 Application icon and version info included in Windows .exe files
397 Fixes for non-x86 architectures
398 Fix uac_dead.wad (platform drop on e1m8 should occur when all
399 bosses die, not just barons)
400 Fix "loading" icon to work for all graphics modes
403 Mouse acceleration code to emulate the behaviour of old
404 DOS mouse drivers (thanks to Toke for information about
405 this and suggestions)
406 Lock surfaces properly when we have to (fixes crash under
410 Remove temporary MIDI files generated by sound code.
411 Fix sound not playing at the right volume
412 Allow alt-tab away while running in fullscreen under Windows
413 Add second configuration file (chocolate-doom.cfg) to allow
414 chocolate-doom specific settings.
415 Fix switches not changing in Ultimate Doom