Mercurial > hg > forks > yadex
annotate CHANGES @ 61:0cb3078fff55
Update changelog.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 26 Sep 2011 07:06:45 +0300 |
parents | a862fd9906ec |
children | e74736fa160d |
rev | line source |
---|---|
0 | 1 Changes |
2 | |
61 | 3 Yadex 1.7.2 (2011-09-??) |
4 | |
5 * Fixed a NASTY bug in TEXTURE2 lump directory reading of textures.cc. | |
6 This sometimes/often caused many operations (such as texture aligning) | |
7 to fail in mysterious ways. | |
8 | |
9 * Improved error reporting for some operations. | |
10 | |
11 | |
29 | 12 Yadex 1.7.1 (2011-09-24) |
13 | |
44
a862fd9906ec
Introduce error resilience feature.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
14 * Added error resiliency option (commandline and configuration file) |
a862fd9906ec
Introduce error resilience feature.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
15 for blatantly ignoring some or almost all errors during WAD/map |
a862fd9906ec
Introduce error resilience feature.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
16 loading. May be useful when trying to rescue data from corrupted |
a862fd9906ec
Introduce error resilience feature.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
17 WADs. Will also most likely lead to crashes, though. |
a862fd9906ec
Introduce error resilience feature.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
18 |
29 | 19 * Cleaned out DOS-related mouse and BGI code, or at least most of it. |
20 Also got rid of far memory routines and swapping, etc. cruft. | |
21 | |
22 * Included few of the patches from Yadex Patch Page at | |
23 http://glbsp.sourceforge.net/yadex/ , with fixes and modifications. | |
24 Included are: | |
25 | |
26 - 3D preview patch by Andrew Apted. | |
27 - Find patch by Barry Mead. | |
28 | |
29 * Added in "panning" in the editor via middle/third mouse button. | |
30 | |
31 * Added in incremental selection via secondary mouse button, | |
32 same se ctrl + first mouse button (usually left mouse button.) | |
33 | |
34 * Build system fixes and other smaller fixes. | |
35 | |
36 | |
0 | 37 Yadex 1.7.0 (2003-12-28) |
38 | |
39 * Build: The configure script autodetects the C and C++ compiler (cc, | |
40 c89 or gcc and c++, cxx or g++). To skip the detection and force a | |
41 particular value, use the --cc and --cxx options. | |
42 | |
43 * Code: Minor warningectomy. Fixed potential uses of uninitialised | |
44 pointers if wad I/O errors occurred while reading the texture list. | |
45 | |
46 * Editing: Improved the handling of superimposed objects. | |
47 + The linedef object info box now lists any superimposed linedefs | |
48 (up to seven). No such feature for vertices, sectors and | |
49 things, mainly because it doesn't seem to be as big an issue | |
50 and I'm lazy. | |
51 + When the pointer is over more than one object, it's now the | |
52 highest-numbered one that's highlighted and not the | |
53 lowest-numbered as it used to be. Thus the highlight and the | |
54 info box match the display (that shows the highest-numbered | |
55 object and always has), which should be less confusing. | |
56 Highlighting the highest-numbered object seems to be the right | |
57 thing too, since the object you created last is the one you're | |
58 most likely to want to edit or delete. This change only affects | |
59 vertices, linedefs and things. For sectors, the code hasn't | |
60 changed. | |
61 | |
62 * Game/wad: Heretic: correct definitions for linedef types 28, 33, | |
63 99, 105, 107-141 and sector types 4, 21-51, courtesy of Barry Mead. | |
64 Correct definitions for linedef types 35, 40, 100 and 106 and | |
65 sector type 11. | |
66 | |
67 * Game/wad: Doom (all versions), Heretic and Strife: | |
68 + Linedef type 68 is now described as "raise floor" and not | |
69 "lower floor". This error can be traced back to... DEU 5.21. | |
70 + Linedef types 36 and 98 are now described as "lower turbo | |
71 floor" instead of "lower floor fast". The UDS inaccurately list | |
72 these types (as well as 70 and 71) as "fast", even though | |
73 they're "turbo" (4 × FLOORSPEED). | |
74 + Linedef types 70 and 71 are now described as "lower turbo | |
75 floor" instead of just "lower floor". This one is all mine. | |
76 + Linedef types 35 and 79 are now described as "light level goes | |
77 to 35", not "light level goes to 0". The UDS needs a | |
78 correction. | |
79 | |
80 Thanks to Barry Mead for pointing out these errors. | |
81 | |
82 * Misc: Finished the alternative (black-on-white) colour scheme. To | |
83 use it, compile with CXXFLAGS=-DWHITE_BACKGROUND. There are a few | |
84 remaining problems in view*. | |
85 | |
86 * Misc: Fixed geometry problems in Input2Numbers() (as used in Rotate | |
87 And Scale Objects, Insert Rectangle, etc.). | |
88 | |
89 Yadex 1.6.0 (2003-04-01) | |
90 | |
91 * BSP: Removed the old buggy patched up BSP 2.3. People should | |
92 download BSP 5 from http://doombsp.sourceforge.net/, which is a | |
93 much better nodes builder. | |
94 | |
95 * Build: Changed the "! grep" command in the makefile so that it does | |
96 not match itself. Also added a dummy "true;" in front of it because | |
97 GNU make 3.76.1 does not seem to like commands that begin with "!" | |
98 (says "Error 1" and bails out). | |
99 | |
100 * Build: Removed the empty lines in the makefile's output. Small | |
101 fixes w.r.t. $(HAVE_GCC), "make showconf" and elsewhere. | |
102 | |
103 * Build: As scripts/ftime can't be shared across builds, it's now put | |
104 in obj/0/, making it possible to build for different architectures | |
105 from the same tree without having to type "make clean" between the | |
106 builds. | |
107 | |
108 * Build: Not using "test -e" anymore in the makefile. This should fix | |
109 build problems on OpenServer, UnixWare, Solaris and other unices | |
110 with a non-POSIX /bin/sh. Thanks to Udo Munk and Oliver Kraus for | |
111 telling me about it. | |
112 | |
113 * Build: "make clean" and "make dclean" now remove obj and dobj | |
114 respectively. This is for UnixWare where reportedly "ln -sf" does | |
115 not overwrite dangling symlinks. Thanks to Udo Munk for warning me | |
116 about it. | |
117 | |
118 * Build: "make clean" now removes the doc directory as suggested by | |
119 Udo Munk. | |
120 | |
121 * Build: The man page is now named yadex-VERSION. "yadex" is a | |
122 symlink to the above. This means that the day you install version | |
123 1.7, you will still have access to the man page of version 1.6 by | |
124 typing "man yadex-1.6.0". | |
125 | |
126 * Build: The system fingerprint is now much shorter to avoid build | |
127 errors on QNX where the native fs limits file names to 48 | |
128 characters. | |
129 | |
130 * Build: Files installed by "make install" are now owned by the user | |
131 who ran "make install", instead of the user who ran "make". | |
132 Typically, when installing in /usr/local, files are now owned by | |
133 something like root:root instead of user:user. | |
134 | |
135 * Build: Files installed by "make install" now have their mode forced | |
136 to something sensible (i.e. 755 or 644), regardless of whatever | |
137 umask the users who built and installed happen to have. | |
138 | |
139 * Build: Use "rm -f new && ln -s old new" instead of "ln -sf old new" | |
140 for compatibility with Solaris 2.6 where reportedly "ln -sf" does | |
141 not overwrite the destination. | |
142 | |
143 * Build: New configure script. "Not the famous GNU autoconf, but an | |
144 incredible simulation". | |
145 | |
146 Installing in an other directory than /usr/local is now done by | |
147 giving ./configure the --prefix option. The old method (overriding | |
148 the PREFIX makefile variable) is not supported anymore. | |
149 | |
150 Some configuration variables (whether gettimeofday(), nanosleep(), | |
151 snprintf() and usleep() are present) are now detected automatically | |
152 by configure. | |
153 | |
154 Others (CFLAGS, CXXFLAGS, LDFLAGS, X11LIBDIR and X11INCLUDEDIR) are | |
155 still set in the Makefile. | |
156 | |
157 * Build: Removed the merging of stderr with stdout from the makefile | |
158 recipes. It was just a commodity and nobody else does that. | |
159 | |
160 * Build: The compilation and linking recipes in the makefile now | |
161 print the actual commands being run. Now that the defines are | |
162 passed via config.h and not on the command line, command length is | |
163 not as big an issue as it used to be. | |
164 | |
165 * Code: Changed the input event type from int to unsigned short to | |
166 avoid wasting too much space in the menus. | |
167 | |
168 * Code: Fixed bug in hextoi() : due to a typo, upper case letters in | |
169 hexadecimal numbers were evaluated to 75 instead of 10 through 15. | |
170 | |
171 * Code: Used mkstemp() instead of tempnam() to shut warning on | |
172 FreeBSD (thanks to Colin Phipps for the report) and with recent | |
173 versions of Glibc. While I was at it, changed the temporary file | |
174 name prefix from "{DEU}" to "$TMPDIR/yadexswp??????" (or "/tmp/ | |
175 yadexswp??????" if $TMPDIR is not set). | |
176 | |
177 * Code: Certain variables have been changed from integer to unsigned | |
178 integer. Better syntax checking for unsigned integers. Trailing | |
179 spaces no longer cause syntax errors. | |
180 | |
181 * Code: The diff distribution is now made with "diff -a" to cope with | |
182 binary files that change between versions. Thanks to Ouafae Kotby | |
183 and Benjamin Bayart for telling me about this flag. | |
184 | |
185 * Code: The diff distribution is now a single gzipped file instead of | |
186 a tarball (the README has been inlined). | |
187 | |
188 * Code: Changed all occurrences of "gray" to "grey" since apparently | |
189 "gray" is an americanism. | |
190 | |
191 * Code: Fixed bug in Img::resize() when new width × height was the | |
192 same as old width × height. Spotted by IvL. | |
193 | |
194 * Code: Fixed x/y mix-up in DrawScreenText(). Spotted by IvL. | |
195 | |
196 * Code: Protected against inadvertent assignment or copy-construction | |
197 of classes for which those actions are not implemented by declaring | |
198 the corresponding methods private and not defining them. | |
199 | |
200 * Code: Removed non-portable "t" fopen() mode qualifiers. | |
201 | |
202 * Command-line: Options --help and --version now check for write | |
203 errors and exit with a non zero status should the occasion arise. | |
204 | |
205 * Doc: FAQ fixes. Updated the "supported games" section. | |
206 Clarifications, additions and corrections in the misc. op. | |
207 sections. | |
208 | |
209 * Doc: The welcome banner suggests "c" (instead of "c levelname" | |
210 which is not implemented). | |
211 | |
212 * Doc: Added complete copyright information to the man page and | |
213 "about" box. Author section in man page now gives proper credit to | |
214 contributors. | |
215 | |
216 * Doc: Updates to the hacker's guide. | |
217 | |
218 * Doc: s/ftp.cdrom.com/3darchives.in-span.net/g | |
219 | |
220 * Doc: users_guide.html has numbered heading and working links in the | |
221 TOC. Overhauled the sections about configuration and game | |
222 definition files. | |
223 | |
224 * Editing: Make linedef single-sided: the lower and upper texture are | |
225 cleared. The middle texture is set to the default. | |
226 | |
227 * Editing: Found a funny bug; if you tried to highlight a | |
228 way-off-screen sector at a high (> 3) zoom factor, sometimes the | |
229 sector actually appeared on the window, even though it was supposed | |
230 to be a few thousand pixels off-screen. I don't know if the | |
231 "oddity" is in Xlib, in the X server or in my video card but, | |
232 interestingly, the symptoms show up only when drawing horizontal or | |
233 vertical lines on the window, not when drawing oblique lines or on | |
234 the pixmap. | |
235 | |
236 Since it only occurs at high zoom factors, it must be some sort of | |
237 overflow error though it doesn't look like a 32-bit value being | |
238 truncated to 16 bits because the values are too small. Strange. I | |
239 dumbly worked around it by skipping off-screen objects. | |
240 | |
241 * Editing: A linedef, thing or vertex is highlighted if the pointer | |
242 is within 15 pixels of it. Previously, the threshold was 20 map | |
243 units which was too narrow at low zoom factors and too broad at | |
244 high zoom factors. This change makes drawing selection boxes in | |
245 crowded areas much easier than before. | |
246 | |
247 * Editing: Configuration variables thing_fudge and vertex_fudge are | |
248 gone, since they've been made irrelevant by changes in the | |
249 highlighting code. | |
250 | |
251 * Editing: If the pointer is within highlighting distance of more | |
252 than one thing, the one that is highlighted is the one in which the | |
253 pointer is, or the one that has the smallest radius, or the one | |
254 whose centre is nearest. Previously, the lowest-numbered one was | |
255 highlighted, making it impossible to select, say, a high numbered | |
256 baron standing in the same spot as an arachnotron. | |
257 | |
258 * Editing: Restored [Shift][Ins] that was inadvertently disabled | |
259 during the port to X. Thanks to Ingo van Lil for reporting this | |
260 bug. | |
261 | |
262 * Editing: If a linedef has a negative tag, tagged sectors are now | |
263 shown. | |
264 | |
265 * Editing: As per Ingo van Lil's suggestion, if a linedef is tagged | |
266 to more than one sector, a "+" is appended to the sector number in | |
267 the object info window. Similarly, if a sector is tagged to more | |
268 than one linedef, a "+" is appended to the linedef number in the | |
269 object info window. | |
270 | |
271 * Editing: In the object info window, tag 667 is now marked as | |
272 special. Yadex catches up with that newfangled Doom II thing. | |
273 | |
274 * Editing: The static text in the object info boxes is now a bit | |
275 dimmer to make the important information stand out. | |
276 | |
277 * Editing: Started working on a global mode, where you can work with | |
278 all types of objects at once, vertices, linedefs, sectors and | |
279 things. It's toggled by pressing [Ctrl][g] in the editing window. | |
280 Since it's an experimental feature, it comes with a big fat | |
281 warning, that you should take seriously. One known bug is that | |
282 selection is broken is this mode. Overhauled GetCurObject() to make | |
283 it able to cope with global mode. | |
284 | |
285 * Editing: [1] through [9] and [0] are now configurable through the | |
286 new variables "digit_zoom_base" and "digit_zoom_step". The default | |
287 values are set to roughly emulate the old behaviour but it's now | |
288 possible to have the zoom factor increase across the keyboard, for | |
289 instance. Patch by AJA. | |
290 | |
291 * Editing: New variable "blindly_swap_sidedefs" to prevent Yadex from | |
292 asking for confirmation when swapping sidedefs. Patch by AJA. | |
293 | |
294 * Editing: Placeat AJA, it's now possible to toggle the object info | |
295 boxes with [i]. Toggling the info bar is now bound to [Alt][i]. | |
296 | |
297 * Editing: The "Info bar" item has been moved from the "Help" menu to | |
298 the "View" menu. Fixed misplaced underscore in linedef "Misc" menu. | |
299 Fixed misplaced tick marks (thanks to Ingo van Lil) and added | |
300 separations in the "View" menu. Added missing ellipses here and | |
301 there. | |
302 | |
303 * Editing: Removed the sudden jump (down) in the size of the vertices | |
304 when zooming in. | |
305 | |
306 * Editing: Sectors are now shown in one of three colours : green for | |
307 sectors that have a tag, blue for sectors that have a type and cyan | |
308 for sectors that have both. Previously, all tagged sectors looked | |
309 the same, whether they had a type or not. | |
310 | |
311 * Editing: Integer entry: you can now enter hexadecimal or octal | |
312 numbers by prefixing them with "0x" or "0", as in C. This should | |
313 make it easier to enter Boom generalized types. You are now allowed | |
314 to start the number with an explicit plus sign ("+"). The lower | |
315 limit has been pushed from -32,749 to -32,768. The upper limit has | |
316 been pushed from +32,749 to +32,767. For consistency with the rest | |
317 of the interface, if the current entry is invalid, it is shown in | |
318 red instead of dim grey. You are allowed to type more characters, | |
319 even if the current entry is invalid ([Return] is still disabled, | |
320 however). The message in InputIntegerValue() has been changed from | |
321 "Enter a decimal number" to "Enter a number". | |
322 | |
323 * Editing: Fixed segfault on "Save as..." on a new level (i.e. opened | |
324 with the "create" command). This bug was there ever since 1.1. | |
325 | |
326 * Editing: On a new level (opened with the "create" command), the | |
327 level name and file name are now remembered so you don't have to | |
328 enter them again every time you save. | |
329 | |
330 * Editing: New function "cut a slice out of a sector" to easily split | |
331 doughnut-shaped sectors. Shortcut is [Ctrl][k]. See | |
332 users_guide.html for details. Thanks to Jim Flynn for writing a | |
333 similar function in DETH, which I used as a reference. | |
334 | |
335 * Editing: Setting things flags by value now allows any value between | |
336 0 and 65,535 (instead of 1 through 31). The word "decimal" has been | |
337 removed from the menu item since you can now enter hexadecimal as | |
338 well. | |
339 | |
340 * Editing: [n], [p], [<] and [>] work properly even if no object was | |
341 highlighted. | |
342 | |
343 * Editing: In linedef mode, linedefs that have no first sidedef, or a | |
344 bad sidedef number are drawn in red. | |
345 | |
346 * Game/wad: MBF: changed the radius of the dog from 16 to 12. Thanks | |
347 to AJA for pointing it out. | |
348 | |
349 * Game/wad: Boom: added all of Boom's 130 non-generalized linedef | |
350 types to doom.ygd and doom2.ygd. New "elevator" linedef type group. | |
351 Many thanks to AJA for typing in the ygd data. | |
352 | |
353 * Game/wad: Linedef types 33 and 34 were incorrectly labelled "yel" | |
354 and "red" instead of the other way around. Thanks to Ingo van Lil | |
355 for pointing this out. | |
356 | |
357 * Game/wad: Linedef type 96 was incorrectly marked "W1" instead of | |
358 "WR". Spotted by IvL. | |
359 | |
360 * Game/wad: Hexen: added to hexen.ygd a couple of things types and | |
361 most sector and linedef types. Linedefs now have their tag set to | |
362 arg1. It used to be left uninitialized, which is why so many | |
363 linedefs were shown in red on the map. | |
364 | |
365 * Game/wad: Linedef types 105 and 111 had their descriptions | |
366 reversed. Don't blindly trust the UDS. Spotted by AJA. | |
367 | |
368 * Game/wad: Gave a sprite to Doom thing type 23 (dead lost soul), | |
369 SKULK. | |
370 | |
371 * Game/wad: Strife: definitions for thing types 10, 27, 46, 50, 81, | |
372 137, 138, 2018, 2019 and 2026. | |
373 | |
374 * Game/wad: Hexen: definitions for things 122, 124 and 8004. | |
375 | |
376 * Misc: Flat/patch/sprite/texture viewer: restored ability to save to | |
377 file by pressing [Shift][F1]. | |
378 | |
379 * Misc: Flat/patch/sprite/texture viewer: not unnecessarily | |
380 refreshing the whole image window anymore when browsing patches or | |
381 sprites. | |
382 | |
383 * Misc: Texture viewer: new bindings [Ctrl][a] [Ctrl][x] to change | |
384 the number of patches shown. | |
385 | |
386 * Misc: Most I/O errors occurring while reading wads are now handled | |
387 gracefully (fewer gratuitous calls to fatal_error()). | |
388 | |
389 * Misc: The menu code (menu.cc and oldmenus.cc) has been partly | |
390 rewritten. Made the automatic shortcuts case-sensitive to allow up | |
391 to 61 entries instead of just 35. Option numbers shortcuts are | |
392 framed with dimmer square brackets, instead of parentheses. | |
393 Implemented separations. Two extra pixels of space between lines. | |
394 Tick marks now look like tick marks, not asterisks. Unticked | |
395 entries now have a dash in front of them. | |
396 | |
397 * Misc: The search paths for game definition files and configuration | |
398 files have changed in several ways. | |
399 | |
400 Some config file search directories have changed for conformance to | |
401 the FHS. If the prefix is "/usr/local", the path is now "/etc/ | |
402 yadex" instead of "/usr/local/etc/yadex". If the prefix is "/opt/ | |
403 something", the path is now "/etc/opt/something" instead of "/opt/ | |
404 something/etc/yadex". The practical consequence for the 90% of you | |
405 who install in /usr/local is that the system-wide config file has | |
406 moved from /usr/local/etc to /etc. | |
407 | |
408 Overriding the prefix now actually works for other prefixes than / | |
409 usr and /usr/local. The problem was that, even though the makefile | |
410 installed the files in the proper directories, the yadex binary | |
411 looked for them in /etc, /usr and /usr/local, regardless of the | |
412 prefix. Thanks to Oliver Kraus and Udo Munk for clueing me in. | |
413 | |
414 Yadex used to look for files in places where it shouldn't have. For | |
415 example, it looked for game definition files in /usr even if | |
416 compiled for /usr/local and vice-versa. Yadex now looks for files | |
417 only in the places corresponding to the prefix it was compiled for. | |
418 This makes it possible to have several builds of the same version | |
419 of Yadex on the same machine without unwanted interactions, as long | |
420 as they're compiled for different prefixes. Note, however, that / | |
421 etc/yadex is used by both /usr and /usr/local but that is mandated | |
422 by the FHS and there's nothing I can do. | |
423 | |
424 The search directories relative to $YADEX_DIR have been removed | |
425 from the Unix version (they were intended for DOS). | |
426 | |
427 See users_guide.html for the exact contents of the new search | |
428 paths. | |
429 | |
430 * Misc: Config file: bumped the config file version# from 3 to 4. | |
431 | |
432 * Misc: Fixed strange reactions to percent character ("%") in the | |
433 file name entry box. | |
434 | |
435 * Misc: Slightly less chaotic output in verbose mode. | |
436 | |
437 * Misc: Fixed a memory leak that occurred when repeatedly reloading a | |
438 wad. This log entry is particularly delightful because that leak | |
439 was introduced by me in version 1.5.0 while trying to fix a bug in | |
440 the same code that was, guess what, an fd leak. For the | |
441 historically minded, that fd leak goes back to at least DEU 5.21. | |
442 Try it. It's easily exercised by loading the same wad over and | |
443 over. After about 20 iterations, you are rewarded with "patch wad | |
444 file xxx doesn't exist. Ignored.". | |
445 | |
446 * Misc: Removed from the makefile unflattering comments on bzip2's | |
447 celerity that came from using an old version. | |
448 | |
449 * Misc: Decapitalised object type names (GetObjectTypeName()). | |
450 | |
451 * Misc: Fixed display bug in sector# and sidedef# entry box | |
452 (InputObjectXref()). | |
453 | |
454 * Misc: The config file search algorithm has been modified to support | |
455 multiple config files. The old algorithm was to walk the search | |
456 path front to back and stop at the first match. The new algorithm | |
457 is to walk the path back to front and use all the matches. Thus | |
458 local files inherit parameter settings from global files and still | |
459 have the possibility to selectively override them (i.e. you can | |
460 override some parameters and inherit the others). | |
461 | |
462 For example, assuming /etc/yadex/1.6.0/yadex.cfg contains : | |
463 | |
464 a = old | |
465 b = old | |
466 | |
467 and ./yadex.cfg contains : | |
468 | |
469 a = new | |
470 c = new | |
471 | |
472 the net effect is : | |
473 | |
474 a = new | |
475 b = old | |
476 c = new | |
477 | |
478 The motivation for the change was to allow users to put most of | |
479 their settings in global config files, either system wide or | |
480 per-user. When local files exist, they should contain only the | |
481 minimum, i.e. just those settings you want to override. This way of | |
482 doing has several advantages over the previous all-or-nothing | |
483 system. Obviously, you can now change a setting globally by editing | |
484 just one file, even if you have many local config files. Upgrades | |
485 are also smoother because any new variable definitions appearing in | |
486 global config files propagate even if local config files exist. | |
487 Finally, it's much easier to figure what local files are meant to | |
488 do because everything they contain is meaningful. | |
489 | |
490 * Misc: Removed the start-up message stating that "this program is | |
491 derived from DEU 5.21 by Raphaël Quinet and Brendon Wyber" (for | |
492 clarity, not because I'm in denial). | |
493 | |
494 * Platform: On DOS, the PPM files created by "make_palette_ppm" and | |
495 "mp2" now have correct CRLF line terminators instead of LFCR. | |
496 | |
497 * Platform: Wart in gfx.cc to cope with QNX where DisplayWidth() and | |
498 DisplayHeight() return silly values. | |
499 | |
500 * Platform: Added support for 16-colour displays. Tested with the | |
501 XFree86 VGA16 server which, when running in 640x480x16 (VGA mode | |
502 12h), provides a PseudoColor or StaticColor visual with an 8 bits | |
503 per pixel pixmap format. If there are any servers that expect a | |
504 pixmap format with a number of bits per pixel that is not a | |
505 multiple of 8, they're still unsupported. | |
506 | |
507 * Platform: Reworked the pixmap format selection code. Should not | |
508 change anything for most people. | |
509 | |
510 * Platform: Compiles and runs on HP-UX 10.0 (with GCC 3.0.1). | |
511 | |
512 * Platform: Compiles on Linux PPC (with GCC 3.1). Thanks to Mark | |
513 Brown for the patch. | |
514 | |
515 Yadex 1.5.2 (2001-06-30) | |
516 | |
517 * Platform: Compiles with GCC 3.0 (added std:: qualifiers where they | |
518 were missing and removed #ifdef inside printf()). | |
519 | |
520 Yadex 1.5.1 (2000-12-12) | |
521 | |
522 * Platform: One-line fix in menu.cc to please GCC 2.96 (of Red Hat 7 | |
523 fame). Thanks to Zebediah C. McClure for reporting the problem. | |
524 | |
525 Yadex 1.5.0 (2000-08-27) | |
526 | |
527 * Build: Changed the way the diffs are generated after reading more | |
528 carefully the patch(1) man page and learning the hard way that it's | |
529 a very bad idea to put absolute paths in patches. | |
530 | |
531 * Build: Made it easier to add or remove individual options in CFLAGS | |
532 and friends. | |
533 | |
534 * Command-line: New option -b to benchmark parts of Yadex. For | |
535 hackers only. | |
536 | |
537 * Command-line: Removed option -e in prevision of reuse for another | |
538 function. | |
539 | |
540 * Doc: Completed ygd.html. | |
541 | |
542 * Doc: Documented the usage of the LINES and YADEX_DIR environment | |
543 variables. | |
544 | |
545 * Editing: Things that have an illegal angle are now shown with the | |
546 angle Doom would see, instead of just a dot in the middle. The | |
547 emulation is believed to be accurate for angles comprised between 0 | |
548 and 359. Values outside that range have not been tested. | |
549 | |
550 * Editing: Things flags and linedefs flags now grouped by 4 for | |
551 readability. For linedefs, the decimal value of the flags field is | |
552 not shown anymore. | |
553 | |
554 * Editing: In the object info box, the type and description of the | |
555 current thing are now display in red if the type is invalid (i.e. | |
556 not defined in the .ygd). | |
557 | |
558 * Editing: The things and linedefs flags operations ([a], [b], [c]) | |
559 now set MadeChanges as they should have from the start. | |
560 | |
561 * Editing: The View menu now contains entries for "Show object | |
562 numbers" [&] and "Show grid" [h]. | |
563 | |
564 * Editing: The Edit menu now contains entries for "Snap to grid" [y] | |
565 and "Loc grid step" [z]. | |
566 | |
567 * Editing: Rearranged the sidedef object info windows so that the | |
568 textures are listed in a more intuitive order (upper, middle, lower | |
569 instead of middle, upper, lower). Made labels shorter in | |
570 preparation of the hypothetical inclusion of texture swatches in | |
571 the future. | |
572 | |
573 * Editing: Fixed long-standing buglet with the sidedef info saying | |
574 there are missing upper/lower textures even though both sectors | |
575 have a "sky" ceiling/floor. | |
576 | |
577 * Editing: Implemented showing object numbers for linedefs and | |
578 sectors. The placement of sector numbers is naive and inadequate | |
579 for sectors that don't have a simple convex shape, but it's still | |
580 better than nothing. Picked a somewhat brighter colour for object | |
581 numbers. | |
582 | |
583 * Editing: Linedef object info box: if the first sidedef is missing, | |
584 the message "(no first sidedef)" is printed in red instead of dim | |
585 gray. Same thing for the second sidedef if the "2" flag is set. | |
586 | |
587 * Editing: Removed careless dereferencing of SideDefs[] for bad | |
588 sidedef numbers in the sector selection code. I don't think this is | |
589 what caused the mysterious unreproducible segfault James Caldwell | |
590 reported, though. Made the object deletion function paranoid | |
591 (checks that the objects to delete actually exist). | |
592 | |
593 * Editing: When found superimposed linedefs after merging vertices, | |
594 the dialog box that asks whether they should be merged now mentions | |
595 the numbers of the first two superimposed linedefs found instead of | |
596 a laconic "Some linedefs are superimposed". | |
597 | |
598 * Editing: Zooming: the zoom factor is now displayed in percent, 100% | |
599 being 1/1. | |
600 | |
601 * Editing: Zooming: the zoom factors are now regularly spaced, with a | |
602 ratio of 1.414 between them. This removes the annoying "jump" | |
603 between the zoom factors greater than 1/2. It also fixes the | |
604 oddities that happened when zooming in after [`]. The ratio between | |
605 zoom factors can be controlled through the new parameter | |
606 "zoom_step". | |
607 | |
608 * Editing: Zooming: the "zoom" parameter has been replaced by the new | |
609 parameter "zoom_default". The latter is expressed in percent, not | |
610 in 1/n units. It's now possible to specify an initial zoom factor | |
611 of more than 1/1. When opening a new window, Yadex now adjusts the | |
612 zoom factor so that the level fills the window. Should you want to | |
613 revert to the old behaviour, you can do it by setting zoom_default | |
614 to 12. | |
615 | |
616 * Editing: ['] and [`] now go to the current centre of the level | |
617 (they used to go to where the centre was when the level was opened | |
618 or created). | |
619 | |
620 * Editing: [`] now has a menu item (View -> Whole level). | |
621 | |
622 * Editing: The grid has changed. There are now dots every step map | |
623 units, dim lines every 4×step units, normal lines every 16×step | |
624 units and bold lines every 64×step units. The new grid is supposed | |
625 to be less obtrusive visually, faster to display and more distinct | |
626 when scrolling. | |
627 | |
628 * Editing: New function to swap floor and ceiling flats of selected | |
629 sectors (Misc. operations -> Swap flats). | |
630 | |
631 * Editing: When not in things mode, things are drawn in a dimmer | |
632 shade of gray and do not hide the linedefs anymore. | |
633 | |
634 * Game/wad: Removed the "-g wolf" bit. [For those who still haven't | |
635 got it : the support for Wolfenstein 3D announced in the CHANGES | |
636 for version 1.4.0 was of course a hoax, 1.4.0 having been released | |
637 on April 1st.] Hope you've been having as much fun as I have. :-) | |
638 | |
639 * Game/wad: Heretic: made the golem leader ghost, undead warrior | |
640 ghost and golem ghost look a little more ghostly. Made the gargoyle | |
641 leader, golem leader and golem leader ghost look different from | |
642 their vanilla counterparts by using sprites IMPXD and MUMMY. | |
643 Assigned a sprite to things 31 and 32 (enchanted shield, SHD2 and | |
644 mystic urn, SPHL). | |
645 | |
646 * Game/wad: Heretic: corrected things radii in heretic.ygd, using | |
647 info2ygd and the Heretic source as a reference. Almost all radii | |
648 were wrong, a few grossly so (maulotaur, ironlich and gargoyle). | |
649 | |
650 * Game/wad: Strife: many new things and linedef types thanks to Matt | |
651 Miller. | |
652 | |
653 * Game/wad: Doom alpha 0.4: definitions for thing types 2020, 2036, | |
654 2038 and 2046. | |
655 | |
656 * Game/wad: Updated format comments in *.ygd. | |
657 | |
658 * Game/wad: Sprites in pwads now supported (between S_START/S_END or | |
659 SS_START/SS_END or SS_START/S_END). This fixes Yadex's failure to | |
660 show redefined sprites in alitcsf.wad, basilica.wad and | |
661 strifed1.wad. A few Aliens TC sprites don't work yet but it's for a | |
662 different reason (DEH). | |
663 | |
664 * Game/wad: Sprites now shown on the map when in things mode. You can | |
665 switch between sprites and squares with View -> Show sprites [%]. | |
666 New config file parameter "sprite_scale" to adjust the scale at | |
667 which sprites are displayed (default 100%). | |
668 | |
669 * Game/wad: The right sprite is shown, even if the sprites are not in | |
670 alphabetical order in the wad (cf BARWA0 in Strife). | |
671 | |
672 * Game/wad: The function to add pwads (be it from the command line or | |
673 with the "r" command) has been heavily reworked. It's more robust | |
674 and handles errors better. It does not leak file handles anymore | |
675 when you add the same pwad more than once. It also accepts to add | |
676 iwads, modulo a warning (though you should expect problems later if | |
677 you do that). The merging of the pwad directory into the master | |
678 directory is still lousy. | |
679 | |
680 * Game/wad: Fixed duplicate entries in the flat selector. This bug | |
681 was found by "Ras2". It happened whenever you added the same flat | |
682 thrice or more. | |
683 | |
684 * Game/wad: EDGE: added definitions for EDGE linedef types and things | |
685 types to doom.ygd and doom2.ygd. Thanks to Andrew Apted for | |
686 providing the ygd data. | |
687 | |
688 * Game/wad: EDGE: in sector mode, show information for EDGE | |
689 extrafloors if there are any. | |
690 | |
691 * Misc: A couple of calls to fatal_error() were turned into calls to | |
692 report_error() (don't abort). | |
693 | |
694 * Misc: New game definition file directive "sky_flat" to specify the | |
695 name of the "sky" flat. Replaced all occurrences of F_SKY1 by | |
696 references to this parameter. Fixes Check -> Check for missing | |
697 textures for Hexen and Strife. Bumped game definition file version# | |
698 to 4. | |
699 | |
700 * Misc: Because it seems to disturb people (and for the pleasure of | |
701 proving Matt wrong), I've made the texture selector clip textures | |
702 to size. Since there's no scrolling/zooming system yet, I also | |
703 enlarged the viewing area from 256×128 to 512×256 to alleviate the | |
704 lossage on large textures. | |
705 | |
706 * Misc: Removed the "Press Shift-F1 to save image to file" text in | |
707 the selector. It's been a no-op ever since 1.0, anyway. | |
708 | |
709 * Misc: In the selectors, pressing [F1] prints the location of the | |
710 current item to stdout (file name and offset). Works with flats, | |
711 patches and sprites but not textures. It's there to help trace Ras' | |
712 bug. | |
713 | |
714 * Misc: Made LoadPicture() nicer and safer. It gracefully bails out | |
715 if there are more than 20 errors on a single picture. It does not | |
716 make Yadex abort anymore on read errors in the header or column | |
717 offset table. I've done this by modifying wad_read_i16() and | |
718 wad_read_i32() so other functions might have been impacted. | |
719 | |
720 * Misc: Config file: commented out most settings (this has no visible | |
721 effect since those settings were just reiterations of the default | |
722 values built into the executable). Also changed the initialization | |
723 code so that Yadex can run without a config file. | |
724 | |
725 * Misc: Config file: unknown variables are ignored with a warning | |
726 instead of triggering a fatal error. The intent is to facilitate | |
727 sharing config files between versions. | |
728 | |
729 * Misc: Config file: bumped version# to 3. | |
730 | |
731 * Misc: Made Yadex use YADEX_GAME as documented and not Y_GAME. | |
732 Oops ! | |
733 | |
734 * Misc: New feature in the flat/picture/sprite selector to show where | |
735 the current image comes from (file name and file offset). For | |
736 debugging. | |
737 | |
738 * Misc: The window size (width/height and -w/-h) can now be expressed | |
739 in percent of the screen size, by appending a "%" to the value. The | |
740 default size, instead of being 640×480 in the executable and 900× | |
741 600 in the config file is now 90%×90%. It's still possible to give | |
742 absolute width and heights, of course. | |
743 | |
744 * Misc: No tantrum thrown if the game definition file contains no | |
745 thing directive. | |
746 | |
747 * Misc: Removed the check for sector headroom being < 1024 in Checks | |
748 -> Check for missing textures. It was sometimes annoying and | |
749 inaccurate anyway. | |
750 | |
751 * Platform: Images display correctly on packed 24-bit X servers (i.e. | |
752 bits_per_pixel actually is 24 and not 32). The scanline_pad member | |
753 of the ScreenFormat structure is now honoured (not that XFree86 | |
754 seemed to mind much when it wasn't). | |
755 | |
756 * Platform: Began to clean the code up to make porting less | |
757 difficult. | |
758 | |
759 * Platform: Added patch to get Yadex to compile with GCC 2.7 (patch/ | |
760 gcc-2.7.diff). GCC 2.7 is officially considered unsupported, | |
761 though. You're on your own. | |
762 | |
763 Yadex 1.4.0 (2000-04-01) | |
764 | |
765 * Command-line: The parsing of the command line arguments is now | |
766 case-sensitive. Yes, that's right, it used to be case-insensitive. | |
767 I never knew. I just realized it by accident. DOS is not dead. | |
768 | |
769 * Doc: The man page now has an "OPTIONS" section. | |
770 | |
771 * Doc: Three new makefile targets, man, dvi and ps, for people who | |
772 hack the doc. | |
773 | |
774 * Editing: Made object numbers slightly more legible in crowded | |
775 areas. | |
776 | |
777 * Game/wad: Added support for Wolfenstein 3D (-g wolf). | |
778 | |
779 * Misc: The code that parses the configuration file is smarter and | |
780 its error messages are more informative. Doesn't choke anymore on a | |
781 line containing just spaces or on comments not starting on | |
782 column 1. Thanks to "Ras2" for reporting the bug. | |
783 | |
784 * Misc: New commands "viewtex" and "viewflat" so that you can browse | |
785 textures and flats without having to open a level. This is | |
786 primarily useful to me, for testing purposes. | |
787 | |
788 * Misc: More sanitization : the parsing of the configuration file is | |
789 now case-sensitive when matching option names and values ("yes"/ | |
790 "no", "true"/"false", "on"/"off"). | |
791 | |
792 * Misc: The flat/patch/sprite/texture viewer does not flicker | |
793 anymore, and is somewhat faster when viewing textures. The list of | |
794 names in the flat viewer has grown from 3 to 5 lines. | |
795 | |
796 * Misc: The diffs are now in unified format (supposedly just as good | |
797 and IMHO clearer). | |
798 | |
799 Yadex 1.3.2 (2000-01-14) | |
800 | |
801 * Build: Oops ! I had forgotten to set CC and CXX back to their | |
802 "sane" values before cutting the 1.3.1 tarball. | |
803 | |
804 * Code: "make dist" now also generates a diff. | |
805 | |
806 Yadex 1.3.1 (2000-01-12) | |
807 | |
808 * Build: Fix for "Ras2"'s compile error with g++ 2.7.2.3 : | |
809 | |
810 c++ src/disppic.cc | |
811 In file included from /usr/include/g++-2.7/defalloc.h:24, | |
812 from /usr/include/g++-2.7/map.h:21, | |
813 from /usr/include/g++-2.7/map:6, | |
814 from src/patchdir.h:35, | |
815 from src/disppic.cc:33: | |
816 /usr/include/g++-2.7/algobase.h:47: macro `min' used with too many (3) args | |
817 /usr/include/g++-2.7/algobase.h:57: macro `max' used with too many (3) args | |
818 make: *** [obj/0/disppic.o] Error 1 | |
819 | |
820 * Build: Fix for HAVE_NANOSLEEP being always false. Thanks to "Ras2" | |
821 for pointing it out. | |
822 | |
823 Yadex 1.3.0 (2000-01-11) | |
824 | |
825 * Build: The makefile now honours the dependencies in yadex.dep. | |
826 | |
827 * Build: Support for FHS-compliant systems: "make install" now copies | |
828 the man pages into /usr/local/share/man/man6/ if /usr/local/share/ | |
829 man/ exists. If not, it still uses /usr/local/man/man6/ (requested | |
830 by Joseph Carter). | |
831 | |
832 * Build: Added "#include <stddef.h>" to fix compilation error on | |
833 wads.cc under Solaris. | |
834 | |
835 * Build: Downgraded the makefile and scripts to use the old backquote | |
836 syntax for command substitution, because Oliver Kraus' reports | |
837 suggest that the Solaris sh does not understand the "$()" syntax. | |
838 Barfulation ! | |
839 | |
840 * Build: New makefile target showconf that shows the value of all the | |
841 important macros as well as the output of certain commands. If you | |
842 have trouble compiling Yadex, mail me the output of "make | |
843 showconf". | |
844 | |
845 * Build: A bunch of little changes in the makefile to try to make | |
846 build problems on Solaris go away. | |
847 | |
848 * Doc: Fixed several discrepancies in README. | |
849 | |
850 * Game/wad: Support for the german edition of Doom II (as the iwad | |
851 has no MAP31 and MAP32, Yadex 1.1.0 and 1.2.0 used to say "this is | |
852 the shareware version of the game"). | |
853 | |
854 * Game/wad: Replacement patches in pwads are now supported, even if | |
855 between PP_START and PP_END. Fixes failure to see redefined | |
856 textures with mbfedit!.wad, alitcwad.wad and certainly many others. | |
857 Replacement patches in pwads not between P_START/P_END or PP_START/ | |
858 PP_END are not recognized anymore. Many PNAMES errors that would | |
859 have made previous versions of Yadex abort now just make it print | |
860 warnings. | |
861 | |
862 * Misc: Cleaned up the web page source and makefile. Added | |
863 documentation, should someone else take over maintainership. No | |
864 harm in dreaming. | |
865 | |
866 * Misc: New command viewpat to browse through the patches. | |
867 | |
868 * Misc: It's now possible to have several different versions of Yadex | |
869 installed simultaneously. Some paths have changed : | |
870 + $(PREFIX)/share/games/ is now $(PREFIX)/share/games/yadex/$ | |
871 (VERSION)/ | |
872 + $(PREFIX)/etc/yadex.cfg is now $(PREFIX)/etc/yadex/$(VERSION)/ | |
873 yadex.cfg | |
874 + ~/yadex.cfg is now ~/.yadex/$(VERSION)/yadex.cfg | |
875 + $(PREFIX)/bin/yadex changed to $(PREFIX)/bin/yadex-$(VERSION) | |
876 + $(PREFIX)/bin/ybsp changed to $(PREFIX)/bin/ybsp-$(VERSION) | |
877 + $(PREFIX)/bin/yadex is now a symlink pointing to yadex-$ | |
878 (VERSION) | |
879 + $(PREFIX)/bin/ybsp is now a symlink pointing to ybsp-$(VERSION) | |
880 | |
881 The insertion of a yadex/ component in the paths was done for two | |
882 reasons. In the first place, it was requested by Joseph Carter for | |
883 game definition files, to reduce clutter in $(PREFIX)/share/games/. | |
884 I extended it to configuration files because it I thought it was a | |
885 nice way not to clutter $(PREFIX)/etc/. On the other hand, it was | |
886 not done for man pages and executables because it would have | |
887 interfered. | |
888 | |
889 * Misc: Fixed bug where if you typed "yadex: c level", then created | |
890 or edited a level and then closed the editing window, you got a | |
891 dozen of messages like this one : "Warning: error freeing colour | |
892 00005820h (BadAccess (attempt to access private resource denied))". | |
893 I hope this fixes the related item in TODO. | |
894 | |
895 Yadex 1.2.0 (1999-11-23) | |
896 | |
897 * BSP: Added missing newline in banner. | |
898 | |
899 * BSP: Silenced GCC 2.95.2 warnings about implicit braces. | |
900 | |
901 * Build: The makefile doesn't rebuild doc/ every time a source file | |
902 is changed anymore. | |
903 | |
904 * Build: Can now be built on machines where Perl is not installed. | |
905 | |
906 * Build: The doc can now be built on machines with a non-GNU find. | |
907 | |
908 * Build: Fixed compilation errors with GCC 2.95.2 in src/infobar.cc. | |
909 | |
910 * Build: Silenced most GCC warnings. | |
911 | |
912 * Code: Fixed a typo in the legal notices at the beginning of the | |
913 source files. | |
914 | |
915 * Doc: HISTORY renamed as CHANGES, since that seems to be a more | |
916 widespread convention. | |
917 | |
918 * Editing: The checks don't beep for every error anymore, just the | |
919 first one. | |
920 | |
921 * Editing: Object info window: the sprite and flats graphics don't | |
922 flicker anymore when the pointer moves from one object to another. | |
923 Besides, if the sprite is not found, displays the message | |
924 "sprite_name not found" instead of just a blank area. | |
925 | |
926 * Game/wad: Doom alpha & press release versions: it's now possible to | |
927 save levels. Note: they're saved to regular Doom format, not Doom | |
928 alpha format. | |
929 | |
930 * Game/wad: Doom II: The boss shooter thing now has a sprite | |
931 (BOSFB0). | |
932 | |
933 * Game/wad: Hacx and Aliens TC: fixed a bug that made Yadex segfault | |
934 when trying to edit a Hacx level (or alitcsf.wad from alntc19 | |
935 {a,b}.zip). | |
936 | |
937 * Game/wad: For homogeneity with DeuTex, less confusion and to reduce | |
938 the risk of conflicts with other applications, the game names for | |
939 Doom alpha 0.2, Doom alpha 0.4, and Doom alpha 0.5 are now | |
940 "doom02", "doom04" and "doom05" respectively instead of "alpha02", | |
941 "alpha04" and "alpha05". It follows that some command-line options | |
942 have changed : | |
943 + "-g alpha02" is now "-g doom02", | |
944 + "-g alpha04" is now "-g doom04", | |
945 + "-g alpha05" is now "-g doom05". | |
946 | |
947 Configuration file directives : | |
948 + "game = alpha02" is now "game = doom02", | |
949 + "game = alpha04" is now "game = doom04", | |
950 + "game = alpha05" is now "game = doom05". | |
951 | |
952 Paths : | |
953 + /usr/local/share/games/alpha02/ is now /usr/local/share/games/ | |
954 doom02/, | |
955 + /usr/local/share/games/alpha04/ is now /usr/local/share/games/ | |
956 doom04/, | |
957 + /usr/local/share/games/alpha05/ is now /usr/local/share/games/ | |
958 doom05/, | |
959 + /usr/local/share/games/alpha02.ygd is now /usr/local/share/ | |
960 games/doom02.ygd, | |
961 + /usr/local/share/games/alpha04.ygd is now /usr/local/share/ | |
962 games/doom04.ygd, | |
963 + /usr/local/share/games/alpha05.ygd is now /usr/local/share/ | |
964 games/doom05.ygd. | |
965 | |
966 * Game/wad: Fixed Yadex aborting when trying to view textures for | |
967 versions of Strife >= 1.1. The problem was that Strife 1.1 and | |
968 above use a different format for the TEXTURE1 and TEXTURE2 lumps | |
969 (Strife 1.0 uses the same format as Doom). New game definition file | |
970 directive "texture_format strife11" to support that format. | |
971 strife.ygd now contains "texture_format strife11". Added | |
972 strife10.ygd that is identical to strife.ygd except that it | |
973 contains "texture_format normal". Summary : | |
974 | |
975 + if you have the Strife 1.0 iwad, use "-g strife10" or "game = | |
976 strife10", | |
977 + if you have Strife 1.1 or above, use "-g strife" or "game = | |
978 strife". | |
979 | |
980 Thanks to Kim Parrott for reporting the bug and Len Pitre for | |
981 pointing me in the right direction. | |
982 | |
983 * Misc: The "dump" command now prints correctly the last line even if | |
984 the length of the lump is not a multiple of 16. | |
985 | |
986 * Misc: For homogeneity with DeuTex, the following game definition | |
987 file directives have changed : | |
988 + "texture_format alpha04" is now "texture_format nameless", | |
989 + "texture_lump texture1" is now "texture_lump normal", | |
990 + new choice "texture_lump none". | |
991 | |
992 * Misc: For homogeneity with DeuTex, automatic texture names for Doom | |
993 alpha 0.4 are now "TEXnnnn" where nnnn is zero-based. | |
994 | |
995 * Misc: Bumped game definition file version# to 3. | |
996 | |
997 * Misc: When trying to use a pwad as iwad, emit a warning instead of | |
998 seeing this as a fatal error. | |
999 | |
1000 * Misc: Added a palette viewer (PLAYPAL and COLORMAP). Can be run | |
1001 from the prompt with the viewpal command or from the level editing | |
1002 window with [Ctrl][P]. | |
1003 | |
1004 * Misc: The sometimes tedious pwad loading messages are not displayed | |
1005 anymore, unless in verbose mode. By default, Yadex now just prints | |
1006 which levels the pwad contains. | |
1007 | |
1008 Yadex 1.1.0 (1999-08-22) | |
1009 | |
1010 * BSP: Included Colin Phipps' fix for the bugs in bsp23bug.zip. | |
1011 | |
1012 * BSP: Renamed the executable and the man page as ybsp, to avoid | |
1013 having Yadex and Xwadtools overwrite each other's BSP. | |
1014 | |
1015 * BSP: The whirling baton is now disabled if stderr is not a TTY. | |
1016 This is the same thing Udo Munk did for Xwadtools' BSP with the | |
1017 -noprog option except that here it's automatic. | |
1018 | |
1019 * BSP: Made the man page spell out exactly which version of BSP this | |
1020 is. | |
1021 | |
1022 * BSP: Inserted notice in the banner that this is the version that | |
1023 comes with Yadex. In the online help, replaced "TMP.WAD" by the | |
1024 correct "tmp.wad". | |
1025 | |
1026 * Building: Fixed compilation error on line 44 of bitvec.h. | |
1027 | |
1028 * Code: Removed CR characters that remained in some of the source | |
1029 files. | |
1030 | |
1031 * Code: New function DrawScreenString(). Began to use it instead of | |
1032 DrawScreenText(). This should squash some latent bugs, for example | |
1033 regarding flat and texture names containing percent signs (%). | |
1034 | |
1035 * Code: Fixed constness warnings in cfgfile.cc. | |
1036 | |
1037 * Code: Replaced most occurrences of hard-coded 8 by one of WAD_NAME, | |
1038 WAD_FLAT_NAME, WAD_PIC_NAME and WAD_TEX_NAME. | |
1039 | |
1040 * Code: New directives level_format and level_name in the YGD files. | |
1041 As a result, been able to remove most tests on specific values of | |
1042 the game parameter. | |
1043 | |
1044 * Doc: Too many changes and additions to list. Since the last | |
1045 release, the HTML doc has doubled in size (from 80 kB to 160 kB). | |
1046 Added a dozen of screenshots. | |
1047 | |
1048 * Doc: In an attempt to make it easier to find what you're looking | |
1049 for, I've split the doc in a larger number of files, referred to by | |
1050 a top level index.html. | |
1051 | |
1052 * Doc: Moved the HTML doc and the man pages to the doc/ directory, so | |
1053 as not to clutter the base directory too much. | |
1054 | |
1055 * Doc: Man pages: the first argument of the .TH macro (the name) is | |
1056 now all caps since that's what (almost) everybody else does. | |
1057 | |
1058 * Editing: Autoscroll is now off by default -- use "autoscroll = | |
1059 true" in yadex.cfg if you want it back. | |
1060 | |
1061 * Editing: New bindings [e] and [Ctrl][e] to select all linedefs that | |
1062 belong to the same non-forked path. | |
1063 | |
1064 * Editing: New bindings [E] and [Ctrl][Shift][e] to select all | |
1065 single-sided linedefs that belong to the same non-forked path. | |
1066 | |
1067 * Editing: New functions to flip and mirror linedefs, sectors, things | |
1068 and vertices. | |
1069 | |
1070 * Editing: Fixed the "string art" bug. That was a subtle bug that | |
1071 happened only as a result of a rare chain of events. The recipe to | |
1072 it is to render a vertex unused (for example by deleting all the | |
1073 linedefs that use it), save the level, make a change that does not | |
1074 call for a rebuilding of the nodes (for example, moving a thing or | |
1075 changing an attribute of a sector), save the level, quit and load | |
1076 again. At that point, a nice surprise awaits you: the linedefs are | |
1077 all entangled (hence the name). Spectacular, and even beautiful, | |
1078 but also very annoying if you don't have a backup copy of your | |
1079 level. | |
1080 | |
1081 This is the same bug I thought I had fixed in Yadex 1.0.0_alpha3. | |
1082 In fact, I had cut one of the paths that led to it but the bug | |
1083 itself was still there. It reappeared in february 1999. | |
1084 | |
1085 * Editing: Fixed an old DEU bug where you sometimes couldn't select a | |
1086 newly created sector to the west of the level until you saved. | |
1087 | |
1088 * Editing: It's now possible to toggle linedef flags 8-15 and to | |
1089 specify linedef flags field values greater than 511. | |
1090 | |
1091 * Editing: It's now possible to set/clear/toggle things flags 7-15. | |
1092 | |
1093 * Editing: Made the Not-enough-player-starts and | |
1094 Not-enough-deathmatch-start dialogs on saving more intuitive (it | |
1095 was about time). | |
1096 | |
1097 * Editing: New function "Exchange objects numbers". | |
1098 | |
1099 * Editing: Things types are now displayed in decimal, not in | |
1100 hexadecimal. Other minor cosmetic changes. | |
1101 | |
1102 * Editing: The focus-on-object function now works much better. It | |
1103 does not land off-target or zoom in excessively anymore. | |
1104 Superimposed things and sectors containing other sectors or not | |
1105 containing their own centre don't confuse it anymore. It's still | |
1106 fooled by unclosed sectors, though. | |
1107 | |
1108 * Editing: Changed the meaning of [q]. It used to save and quit. Now | |
1109 it just quits (same thing as [Esc]). | |
1110 | |
1111 * Editing: The edit command can now edit levels of any name. If you | |
1112 had a wad with a level named "FOO" in it, you could edit that level | |
1113 by typing "edit foo". In case you're wondering, no there's no | |
1114 practical application to this (beyond experimenting). | |
1115 | |
1116 * Editing: Reminder to build nodes: the message is now more specific. | |
1117 | |
1118 * Editing: Command mode: typing ^D at the prompt now works. | |
1119 | |
1120 * Editing: Insert linedef and split sector: the new linedef now goes | |
1121 from the first selected vertex to the second and not the other way | |
1122 around. | |
1123 | |
1124 * Editing: Insert linedef and split sector: does not loop forever | |
1125 anymore if there are forks in the edge of the sector (for example | |
1126 like when trying to split between vertices 283 and 278 of MAP01 of | |
1127 Doom II). | |
1128 | |
1129 * Editing: [n], [p], [>] and [<] now move the view so that the object | |
1130 to highlight is under the pointer. | |
1131 | |
1132 * Editing: The messages displayed when loading pwads are more compact | |
1133 (several lumps are printed on the same line and groups of sprites | |
1134 are collapsed). The end marker for groups of flats, patches and | |
1135 sprites is now printed. | |
1136 | |
1137 * Editing: Flat/sprite/texture viewer : added bindings [Ctrl][u] and | |
1138 [Ctrl][w] to erase to start of line, [Ctrl][f] and [Ctrl][v] to | |
1139 page down and [Ctrl][b] to page up. | |
1140 | |
1141 * Editing: Flat/sprite/texture viewer : added bindings [Ctrl][PgUp] | |
1142 and [Ctrl][PgDn] to move to top and bottom of list, because [Home] | |
1143 and [End] will eventually cease to be available for that (they will | |
1144 be bound to SOL and EOL). | |
1145 | |
1146 * Editing: Flat/sprite/texture viewer : made [Up] and [Down] work | |
1147 even when there are duplicate names. | |
1148 | |
1149 * Editing: Flat/sprite/texture viewer : InputNameFromListWithFunc() | |
1150 is now genuinely case insensitive. The positioning in the list of | |
1151 names is now correct, even if the name given is lower-case. | |
1152 | |
1153 * Editing: Flat/sprite/texture viewer : reduced flickering (still | |
1154 room for improvement, though). | |
1155 | |
1156 * Editing: Flat/sprite/texture viewer : the current name was way too | |
1157 dim if not in the list. Fixed. | |
1158 | |
1159 * Editing: Flat/sprite/texture viewer : made image window 320x200 | |
1160 instead of 256x128. | |
1161 | |
1162 * Editing: Sprite viewer : new bindings [Ctrl][n] and [Ctrl][p] to go | |
1163 to start of next/previous group of sprites. | |
1164 | |
1165 * Editing: Sprite viewer : fixed display bug. | |
1166 | |
1167 * Editing: Spectres now look more like spectres. | |
1168 | |
1169 * Editing: Confirm-or-cancel dialogs: more intuitive. You can now | |
1170 confirm with [y] or [Return] and cancel with [n] or [Esc]. All | |
1171 other keys are ignored (previously, [y] confirmed and all other | |
1172 keys cancelled). Expose events are now handled (previously they | |
1173 were ignored). | |
1174 | |
1175 * Editing: Some abnormal conditions that used to trigger fatal errors | |
1176 now just cause a message error to be printed. The current operation | |
1177 is aborted but not the whole program anymore. | |
1178 | |
1179 * Game/wad: Fixed segfault on levels containing a thing of type 0 | |
1180 (like Eternal MAP25 and some Final Doom maps). | |
1181 | |
1182 * Game/wad: When reading a level from a wad, now verifies that the | |
1183 SECTORS, THINGS, VERTEXES, LINEDEFS and SIDEDEFS lumps have correct | |
1184 sizes and that sidedefs, sectors and vertices references are | |
1185 correct. | |
1186 | |
1187 * Game/wad: Final Doom : should be supported now. Yadex does not | |
1188 assume anymore that F1_START is always present, which caused it to | |
1189 segfault on either or both Final Doom iwads. | |
1190 | |
1191 * Game/wad: Heretic : added sprite names for 58 thing types. | |
1192 | |
1193 * Game/wad: Hexen : added very partial support (-g hexen). You can | |
1194 edit levels but not save them. Hexen-specific linedef and things | |
1195 fields are ignored, and so is the BEHAVIOR lump. Most definitions | |
1196 are missing. | |
1197 | |
1198 * Game/wad: Strife : added partial support (-g strife). Yadex now | |
1199 knows about the translucent linedef flag and the new sector types. | |
1200 Thanks to Len Pitre for the help. Still missing : the new things | |
1201 flags, most things types and linedefs types. Anybody wants to work | |
1202 on strife.ygd ? | |
1203 | |
1204 * Game/wad: MBF : supported. Yadex now knows about the friendly thing | |
1205 flag, thing type 888 (Dog) and linedef types 271 and 272 (transfer | |
1206 sky texture). | |
1207 | |
1208 * Game/wad: Doom press release pre-beta : supported (-g doompr). | |
1209 Added support for the PR picture format and the definitions for | |
1210 things 2016 (evil sceptre) and 2017 (unholy bible). | |
1211 | |
1212 * Game/wad: Doom alpha : read-only support (-g alpha02|alpha04| | |
1213 alpha05). Added support for the alpha picture format, the TEXTURES | |
1214 lump, the different level format and the incompatible level names | |
1215 (E1M10 through E1M13). | |
1216 | |
1217 * Game/wad: Added support for FF_START/FF_END in addition of FF_START | |
1218 /F_END. As a result, Yadex does not barf anymore on basilica.wad | |
1219 (but issue a warning). F?_START is not supported anymore ; it has | |
1220 to be FF_START. | |
1221 | |
1222 * Game/wad: Made "Post too long. Wad file might be corrupt" a | |
1223 warning, not a fatal error anymore. | |
1224 | |
1225 * Game/wad: New directives picture_format, texture_format and | |
1226 texture_lump in the YGD files, to support Doom alpha and Doom PR. | |
1227 | |
1228 * Misc: New command make_palette_ppm to generate a raw PPM file | |
1229 containing all the colours of the palette. | |
1230 | |
1231 * Misc: Cosmetic changes in the prompt and character mode interface. | |
1232 | |
1233 * Misc: make_gimp_palette : the generated palette files now include | |
1234 RGB values in the comments. | |
1235 | |
1236 * Misc: Removed from the menus the functions that were not | |
1237 implemented (File->Print, Edit->Find, View->3D preview). | |
1238 | |
1239 * Misc: Failure to load the specified X font is not a fatal error | |
1240 anymore. | |
1241 | |
1242 * Misc: New command line options --help and --version. | |
1243 | |
1244 * Misc: Bumped game definition file version# to 2. | |
1245 | |
1246 * Platform: Removed dependency on nanosleep(), strcasecmp() and | |
1247 strncasecmp(). Thanks to Udo Munk for pointing out that nanosleep() | |
1248 is not always available. | |
1249 | |
1250 * Platform: Now compiles with other compilers than GCC/EGCS without | |
1251 modifying the makefile. | |
1252 | |
1253 * Platform: New parameter idle_sleep_ms to set the time in ms between | |
1254 polls of the X server when the input queue is empty. | |
1255 | |
1256 * Platform: Previously, if the CPU and the X server had different | |
1257 endiannesses and the screen depth was more than 8 bits, sprites, | |
1258 flats and textures were displayed with wrong colours. This is now | |
1259 fixed. | |
1260 | |
1261 * Platform: The build, group, insert and save commands should now | |
1262 work correctly on big-endian machines. | |
1263 | |
1264 * Platform: The bell has been resurrected on X. | |
1265 | |
1266 * Platform: Should now compile on X11R5 systems (to be verified). | |
1267 Thanks to Udo Munk for the fix. | |
1268 | |
1269 Yadex 1.0.1 (1999-01-02) | |
1270 | |
1271 * Doc: New sections "Moving around" and "Other credits" in the user's | |
1272 guide. | |
1273 | |
1274 * Editing: Split linedefs and sector: new linedef now goes from 1 to | |
1275 2 and not the other way around. | |
1276 | |
1277 * Editing: Added scrolling with the arrow keys. | |
1278 | |
1279 * Editing: [Pgup], [Pgdn], [Home] and [End] now scroll one page at a | |
1280 time. | |
1281 | |
1282 * Editing: New variable autoscroll to disable autoscrolling. | |
1283 | |
1284 * Editing: New variables autoscroll_amp and autoscroll_edge to tweak | |
1285 autoscrolling. | |
1286 | |
1287 * Editing: New shortcut [x] to "Split linedef (insert new vertex)". | |
1288 | |
1289 * Editing: New shortcut [w] to "Split linedefs and sector". | |
1290 | |
1291 * Misc: Fixed segfault on trying to edit MAPnm in Doom/Heretic mode | |
1292 or EnMm in Doom II mode. | |
1293 | |
1294 * Misc: New prompt command make_gimp_palette to generate a gimp | |
1295 palette file from PLAYPAL. | |
1296 | |
1297 * Misc: Bumped configuration file version# to 2. | |
1298 | |
1299 Yadex 1.0.0 (1998-12-26) | |
1300 | |
1301 * Code: Moved the source files to a subdirectory. | |
1302 | |
1303 * Doc: A few additions in the user's guide | |
1304 | |
1305 * Editing: Fixed buglet in positioning of newly copied objects. | |
1306 | |
1307 * Game/wad: Game support: added definitions for Boom's things 5001 | |
1308 and 5002 (point pusher and puller). | |
1309 | |
1310 * Misc: Added reminder to build nodes after making changes. | |
1311 | |
1312 * Misc: Added magic string to configuration file. | |
1313 | |
1314 * Misc: Added magic string to game definition file. | |
1315 | |
1316 Yadex 1.0.0_alpha3 (1998-12-23) | |
1317 | |
1318 * Doc: A few additions/corrections in the hacker's guide. | |
1319 | |
1320 * Editing: Fixed spectacular corruption of linedefs (string art bug) | |
1321 that occurred if all you did during a given session was deleting | |
1322 vertices. | |
1323 | |
1324 Yadex 1.0.0_alpha2 (1998-12-22) | |
1325 | |
1326 * BSP: Included BSP 2.3 (thanks to Lee Killough). | |
1327 | |
1328 * Doc: Improved user's guide. | |
1329 | |
1330 * Editing: Added new commands [a], [b] and [c] to set, toggle and | |
1331 clear things and linedefs flags. | |
1332 | |
1333 Yadex 1.0.0_alpha1 (1998-12-17) | |
1334 | |
1335 * Code: Removed dereferencing of NULL pointer in | |
1336 ParseCommandLineOptions() (DEU). | |
1337 | |
1338 * Code: Replaced occurrences of "x==TRUE" and "x==FALSE" by "x" and | |
1339 "!x". | |
1340 | |
1341 * Code: Replaced occurrences of "x=TRUE" and "x=FALSE" by "x=1" and | |
1342 "x=0". | |
1343 | |
1344 * Command-line: You don't have anymore to put "-file" or "-pwad" in | |
1345 front of pwads names on the command line. E.G. you can type "yadex | |
1346 foo.wad". | |
1347 | |
1348 * Command-line: Deleted a few little-used or DOS-specific options. | |
1349 | |
1350 * Editing: Menu bar and pop-up menus much improved. | |
1351 | |
1352 * Editing: Info bar reworked. | |
1353 | |
1354 * Editing: When prompted to "Press a key to continue", you can now | |
1355 also press the left mouse button. | |
1356 | |
1357 * Editing: Grid: the grid step can now adapt automatically as you | |
1358 zoom in/out. | |
1359 | |
1360 * Editing: Grid: whether dragging is snapped to grid is now | |
1361 independent of whether the grid is shown or not (added flags | |
1362 grid_snap and grid_shown). | |
1363 | |
1364 * Editing: Added finer-grained confirmation options. | |
1365 | |
1366 * Editing: General editing: you can now scroll the map further from | |
1367 the centre of the level. | |
1368 | |
1369 * Editing: Added ['] to re-centre the window around the centre of the | |
1370 map. | |
1371 | |
1372 * Editing: Added [`] to re-centre the window around the centre of the | |
1373 map and adjust the zoom so that the map fills the screen. | |
1374 | |
1375 * Editing: Added [&] to show things and vertices numbers. | |
1376 | |
1377 * Editing: Autoscroll: scroll speed is now progressive. | |
1378 | |
1379 * Editing: Autoscroll: easier to use near the top of the window. | |
1380 | |
1381 * Editing: [Left], [Right], [Up], [Down] do nothing. | |
1382 | |
1383 * Editing: [Space] does not toggle move fast/slow anymore; it toggles | |
1384 between nominal zoom and x 4. | |
1385 | |
1386 * Editing: Highlighting of things, vertices and linedefs much | |
1387 improved. | |
1388 | |
1389 * Editing: Dragging objects is now done with the left mouse button | |
1390 instead of the right button. | |
1391 | |
1392 * Editing: Editing object properties is now done by double-clicking | |
1393 on the object. | |
1394 | |
1395 * Editing: Selection and drag-and-drop have changed a lot. | |
1396 | |
1397 * Editing: Selection box: removed the -a option and the addselbox | |
1398 parameter. Whether the selection box is additive or not is now | |
1399 controlled dynamically by the user (with [Ctrl]). | |
1400 | |
1401 * Editing: Sprite viewer: sprites are now centred. | |
1402 | |
1403 * Editing: Linedef info: shortened flags names to one character. | |
1404 | |
1405 * Editing: Linedef info: a missing normal texture on a 1-sided | |
1406 linedef is now flagged in red. | |
1407 | |
1408 * Editing: Linedefs copy: you now have the choice between duplicating | |
1409 the sidedefs too and reusing the same sidedefs. DEU left the new | |
1410 linedefs sidedef-less and, so far, Yadex used to reuse the same | |
1411 sidedefs. | |
1412 | |
1413 * Editing: Linedefs: added function to "unlink" sidedefs. | |
1414 | |
1415 * Editing: Linedefs: dragging linedefs is much faster than before. | |
1416 | |
1417 * Editing: Sectors: in the object info window, added display of floor | |
1418 and ceiling height delta with respect to previous sector. | |
1419 | |
1420 * Editing: Sectors: in the object info window, added display of floor | |
1421 and ceiling texture. | |
1422 | |
1423 * Editing: Sectors: dragging sectors is much faster than before. | |
1424 | |
1425 * Editing: Things: now drawn as squares so that it's easier to see | |
1426 whether they are stuck in a wall or another thing. And you don't | |
1427 have to highlight them to see their angle. Note: the old shape is | |
1428 still available by defining ROUND_THINGS at compile-time. | |
1429 | |
1430 * Editing: Things: changed the colours again. Tried to make important | |
1431 things stand out and conversely. Bonuses are now dark green and | |
1432 player/ deathmatch starts bright green. Keys are magenta. | |
1433 Decoration is dim blue instead of white. Unknown objects are cyan | |
1434 instead of white. Weapons are orange instead of brownish. Heretic | |
1435 sound source things and Boom point pushers are dim turquoise-ish. | |
1436 | |
1437 * Editing: Things: the sprite is now shown in the object info window. | |
1438 | |
1439 * Editing: Vertices: deciding whether a vertex is on a linedef is now | |
1440 done on the distance in pixels, not in map units. So you can now | |
1441 work on very fine details (E.G. vertices only 2 map units away) | |
1442 provided that the zoom factor is high enough. | |
1443 | |
1444 * Editing: Fixed minor glitch in texture viewer that showed with | |
1445 BIGDOOR7, SKY1, TEKWALL1, TEKWALL5 and others (DEU). | |
1446 | |
1447 * Editing: When highlighting a sector, compared SideDefs[LineDef | |
1448 [n].sidedef1].sector with ObjNum even though .sector was -1. | |
1449 Somehow it always tested false (DEU). | |
1450 | |
1451 * Editing: "Check textures names": the name of the offending texture | |
1452 is now printed correctly even if it is 8 characters long (DEU). | |
1453 | |
1454 * Editing: "Check textures names": if you fixed a missing texture, | |
1455 the editor was not made aware that you had made changes to the | |
1456 level (DEU). | |
1457 | |
1458 * Editing: Unused sectors are not selected anymore (DEU). | |
1459 | |
1460 * Editing: Changing the preferences could overwrite other variables | |
1461 (DEU). | |
1462 | |
1463 * Editing: InputNameFromListWithFunc() used to segfault if you | |
1464 pressed [Pgdn] on a list shorter than (listdisp + 1) elements | |
1465 (DEU). | |
1466 | |
1467 * Editing: Removed segfault in AlignTexturesX() (DEU). | |
1468 | |
1469 * Game/wad: Heretic is now supported. | |
1470 | |
1471 * Game/wad: Added support for Boom's new thing flags | |
1472 not-in-deathmatch and not-in-coop. | |
1473 | |
1474 * Game/wad: Added support for Boom's new linedef flag pass-through. | |
1475 | |
1476 * Misc: Renamed as Yadex to avoid confusion with Yet Another Diagram | |
1477 Editor. | |
1478 | |
1479 * Misc: Loading pwads: implemented standard directories. If the pwad | |
1480 to load is in one of the standard directories (or a subdirectory) | |
1481 you don't have to type the whole name. | |
1482 | |
1483 * Misc: Loading pwads: added standard directories and made the | |
1484 messages less verbose for pwads that contain patches (PP_START/ | |
1485 PP_END). | |
1486 | |
1487 * Misc: Removed segfault during fatal_error() on failure to open the | |
1488 iwad (DEU). | |
1489 | |
1490 * Misc: The prompt now groks TTYs with a number of lines other than | |
1491 25. | |
1492 | |
1493 * Misc: Changed the welcome message (a.k.a. "reminder"). | |
1494 | |
1495 * Misc: Added an "About Yadex..." window. | |
1496 | |
1497 * Misc: Don't copy SEGS, SSECTORS, NODES, REJECT and BLOCKMAP from | |
1498 the original file anymore when the map has changed. Makes smaller | |
1499 wad files. Nice for archival. | |
1500 | |
1501 * Misc: Added environment variable YADEX_GAME. | |
1502 | |
1503 * Platform: Ported to X (plain Xlib). This version is not available | |
1504 for DOS. | |
1505 | |
1506 * Platform: Now works on big-endian machines. | |
1507 | |
1508 * Platform: Removed several DOS-isms from file name handling code. | |
1509 |