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