File: CHANGES

package info (click to toggle)
deutex 4.4.902-13
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 1,120 kB
  • sloc: ansic: 10,794; sh: 424; makefile: 340; perl: 145; csh: 4
file content (583 lines) | stat: -rw-r--r-- 28,710 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
THIS IS A GENERATED FILE -- DO NOT EDIT !
Edit docsrc/changes.html instead.

                 History of changes for DeuTex

DeuTex 4.4.902 (AYM 2005-08-31)

  * Build: vanilla make compatibility: removed all occurrences of "$<"
    not in inference rules in the makefile.
  * Build: vanilla make compatibility: removed all "\" followed by empty
    lines. On NCR MP-RAS, make quotes all empty lines that follow !
  * Build: there is now a "./configure" script (GNU autoconf
    work-alike).

    Installing somewhere else than /usr/local is now done by giving
    ./configure the --prefix option.

    CC, CFLAGS and LDFLAGS are now auto-detected. The defaults can be
    overridden by passing ./configure the --cc, --cflags and --ldflags
    options.

    The fixed-size types (Int16 etc.) are now correctly set on all LP64
    platforms, not just Alpha.

  * Build: the OPTIONS section is now updated automatically. This
    impacts no-one but hackers.
  * Code: two char[8] were used as char[9] (caught by NCR/MetaWare cc on
    NCR MP-RAS).
  * Code: C89 compatibility: removed a few "//" comments that had
    slipped into the source.
  * Code: a few functions were declared as static but defined as extern
    (caught by NCR/MetaWare cc on NCR MP-RAS).
  * Code: static- and const-correctness fixes.
  * Code: removed the little-used Legal() function.
  * Doc: man page: in DESCRIPTION, added a short list of examples to
    help new users getting started. Added a FILES section. Made the SEE
    ALSO section a bit more specific.
  * Doc: in --help and the man page, divided the options into groups and
    sorted them alphabetically within each group. It seems to be clearer
    that way.
  * Doc: added a FAQ.
  * Doc: obfuscated all email addresses (tr .@ +=).
  * Game: Strife: the SCRIPTnn lumps are now extracted in human-readable
    form into the scripts/ directory. The reverse operation is not
    implemented. Since we understand the Strife script format only
    partially, the output format is still in flux. New option -scripts
    to extract only the scripts. The reverse engineering was done in
    collaboration with Matthew W. Miller.
  * Graphics: it's now possible to build wads that use a custom PLAYPAL.
    Previously, DeuTex always used the PLAYPAL from the iwad when
    building. It now uses the one in lumps/ if it exists. Thanks to Ras2
    for reporting the problem.
  * Graphics: rewrote COLdiff() as a macro. On my system, the time to
    build a wad made of a single 1M-pixel patch is down from 1.32s to
    0.85s (35% faster), which is not surprising since DeuTex used to
    spend about 40% of its time in COLdiff(). The time to rebuild the
    Strife iwad is down from 8.6s to 7.2s (16% faster).
  * Graphics: removed the "quantisation is slow" warnings that DeuTex
    used to spew when composing from PPMs and 24-bit BMPs. Those
    warnings were relevant to an old quantisation algorithm that has not
    been used since at least version 3.8 (#ifdef QUANTSLOW).
  * Graphics: lifted the arbitrary limit of 256 patches per texture.
    DeuTex will now accept as many patches as the wad format allows
    (32,767). If a texture definition has more than that many patches,
    DeuTex will discard the excess patches with a warning, instead of
    dying with a cryptic message like "Line n: Illegal char '*'".
  * Graphics: lifted the arbitrary limit of 4096 on patch width. DeuTex
    now handles patches as wide as the wad format allows (32,767).
  * Graphics: textures wider than 4096 are now accepted with a warning.
    PrBoom 2.2.3 is known to take textures as wide as 16,384 pixels.
    8192 *128 textures make XDoom 20001001 crash in Z_Malloc. 1024 *128
    textures make Doom freeze in R_Init. The maximum acceptable widths
    might be higher if the height of the texture is lesser than 128 but
    I haven't looked into it. Thanks to David Damerell for testing.
  * Misc: removed the annoying startup banner.
  * Misc: if no command is given, emit a meaningful error message
    instead of suggesting to switch to WinTex. And exit with code 1
    instead of 255.
  * Misc: all messages now look like this :

      c code string

    c is the class of the message : "i" for information, "w" for
    warning, "E" for error, "B" for bug.

    code is a unique 4-character alphanumeric code which unambiguously
    identifies the message.

    Some of the messages have been rewritten to be more informative
    (mention the filename, the nature of the error, etc.).

  * Misc: at the request of Kim "Sparky" Parrott, all messages are now
    copied to a file named "deutex.log" ("deusf.log" for DeuSF). The
    default log file name can be overridden through the "-log" option.
    If you don't want a log file, try "-log /dev/null" (Unix) or "-log
    nul" (DOS).

    The log is only written if a command that works with wads is given.
    --help, --version etc. do not create a log.

  * Misc: removed the 30 command-line arguments limit.
  * Misc: made exit status a little bit more normal (2 for errors and 3
    for bugs instead of -5 and -10).
  * Sound: new option -rate to specify what DeuTex should do when
    including sound files whose sample rate is not exactly 11025 Hz. The
    choices are :

         reject
                 consider it a fatal error and exit immediately with a
                 non-zero exit code.

         force
                 emit a warning and force it to 11025 Hz by resampling
                 up or down.

         warn
                 emit a warning but include it as is anyway.

         accept
                 silently include it as is.

    Previously, the default (and only option) used to be "force". It's
    now "warn".

    Thanks to Matthew W. Miller for telling me about this issue (which
    he did in 1999 ; the six-year delay is mine, all mine).

  * Sound: write errors while extracting PC speaker sounds are now
    actually detected and reported.

DeuTex 4.4.0 (AYM 2000-01-05)

  * Game: Hexen: musics are now identified and extracted properly.

    The old music identification code assumed that any lump whose name
    does not begin with either "D_" or "MUS_" can't be a music. It
    worked for Doom, Heretic and Strife but, for Hexen, it caused all
    musics to be seen as plain lumps and extracted accordingly into the
    lumps/ directory. DeuTex even tried to interprete STALKR and WINNOWR
    as pictures and said silly things about them having a "width greater
    than 4096".

    The new code really checks whether the lump begins with "MUS\x1a"
    instead of just looking at its name. A lump is now deemed to be a
    music if and only if it begins with "MUS\x1a".

    As a side-effect, certain operations (appending sprites and flats
    and merging) must have become slower. Furthermore, since these used
    to blindly assume that any lump whose name begins with either "D_"
    or "MUS_" is a music, their semantics might have changed. If you
    find they don't do what you want, try again using the -musid option
    and let me know whether it improves your condition.
  * Game: Hexen, Doom alpha 0.4/0.5: levels are now properly extracted
    and included.

    There have been changes in the undocumented details of DeuTex's
    behaviour with respect to levels. The one that is most likely to be
    noticed is that, when including a level, DeuTex now copies the
    entire contents of the levels/ pwad, starting from the level label.
    Previously, it included at most the 11 following lumps, and only if
    they had the expected names (THINGS, VERTEXES and so on).

    But, basically, if the levels/ pwads contain, as they should, all
    the needed lumps and nothing else, there shouldn't be any trouble.
  * Game: Heretic and Hexen: does not abort anymore with "Bug: *** idinx
    (12) ***" when trying to include the graphic lumps (resp. CREDIT,
    E2END, FINAL1, FINAL2, HELP1, HELP2, TITLE and CREDIT, FINALE1,
    FINALE2, FINALE3, HELP1, HELP2, INTERPIC, TITLE). More generally,
    DeuTex now accepts to compose wads even when there are graphic files
    in lumps/.
  * Game: Hexen: does not abort anymore with "Height of FLAT
    ./flats/x_001.ppm is not 64 or 65" when trying to include flats
    X_001 through X_011. In addition, DeuTex now just emits a warning
    instead of aborting for other oddball heights (i.e. not 64, 65 or
    128). Have fun. ;-) This is true for all iwads, not only Hexen.
  * Graphics: the annoying "quantisation is slow" warnings now appear at
    most once.
  * Misc: to disambiguate the "<count> warnings omitted" message, added
    optional scope prefix and changed the picture extraction function to
    use it.
  * Misc: got rid of the "don't bother Olivier" banner. People must have
    got the message by now.

DeuTex 4.3.0 (AYM 1999-12-24)

  * Graphics: fixed ancient bug where DeuTex sometimes failed to include
    custom patches if they were not explicitly listed in the [patches]
    section. If the first patch used in texture1.txt was a custom patch,
    it had to be listed in [patches] or DeuTex would forget to include
    it. This is the same bug Olivier mentioned in the home page :

      The support for wall patches in DeuTex has been modified. You must
      now explicitely declare all your patches in a [PATCHE] section.

      If you don't do this, DeuTex will attempt to work as usual, but
      there seems to ba a bug in this part of the code, so sometime some
      needed patches are not loaded.

    After some summary testing, looks like it's fixed.
  * Misc: more error handling improvements.
  * Misc: bumped version number and cleaned things up for public
    release.
  * Misc: decreased maximum number of warnings per picture from 10 to 5.
  * Platform: fixed ftruncate() being undeclared when compiling with
    DJGPP and updated the building-on-DOS section of the doc.

DeuTex 4.2.2 (AYM 1999-11-20) (not for public consumption)

  * Misc: made certain failure messages more informative.
  * Platform: fixed several bugs that showed in the DOS precompiled
    executables for 4.1.0 and 4.2.0 (most common symptom : DeuTex
    aborting with a "Can't read WAD" error message).

    Lengthy technical explanation : in 4.1.0, I removed the "huge"
    pointer qualifiers that were scattered throughout the source not
    unlike nitrates in groundwater. The reasoning was that, since DeuTex
    is always compiled in the "huge" memory model anyway, those
    qualifiers were redundant. As I found out at the end of a long and
    painful debugging session, they weren't.

    Had I read the doc of the compiler, I would have known that, even
    when in the huge memory model, pointers are "far" by default, not
    "huge". Far pointers wrap around at 64 kB ; this is not what you
    want when you're trying to work with lumps larger than that. And,
    apparently, there is no way to specify that pointers should be huge
    by default.

    On top of that, there was a genuine bug in WADRreadBytes2() that
    would have prevented the DOS port from working, even if all pointers
    had been huge. But this one was fixed in 4.2.1.

    I switched to DJGPP, with which you can get working executables
    without having to contaminate your code with carcinogenic keywords.
    The bad news : firstly, the executables are somewhat larger.
    Secondly, since DJGPP executables use protected mode, they tend to
    be more fussy.

    Thanks to Kim Parrott for reporting the bug and alpha testing my
    fixes.

    All the above applies only to the DOS precompiled executables. Other
    platforms did not have these problems.

DeuTex 4.2.1 (AYM 1999-11-16) (not for public consumption)

  * CLI: fixed segfault on "deutex --vers".
  * Graphics: new option -usedidx. When called with this option, DeuTex
    scans all the graphics in the wad and prints statistics about which
    palette indices they use. (By "graphics" is meant "any data that is
    converted into an RGB triplet by looking up PLAYPAL or TITLEPAL".
    That includes flats, graphics, patches, sneaps, sneats and sprites.)
    I've added this command for my own use, to help me decide which
    index should be used to store the transparent colour for Hexen.
  * Misc: made certain failure messages more informative.
  * Misc: made printing of lump names garbage-proof.
  * Platform: fixed a huge DOS bug that made DeuTex fail with a "Can't
    read WAD" error whenever it had to read more than 65535 bytes from a
    wad at once.
  * Platform: flushing stdout before writing to stderr so that messages
    come out in the right order when both outputs are redirected.
  * Sound: all conditions that used to be fatal errors when extracting
    sound lumps now just elicit a warning message, indicating which lump
    it was and what action was taken.

DeuTex 4.2.0 (AYM 1999-11-14)

  * Doc: fixed error in documentation of -pkgfx, -pknormal and -usedtex.
  * Game: Strife: fixed DeuTex aborting when extracting textures for
    versions of Strife >= 1.1. The problem was that Strife 1.1 and above
    use a different format for the TEXTURE1 and TEXTURE2 lumps
    (Strife 1.0 uses the same format as Doom). New options "-tf
    strife11", "-itf strife11" and "-otf strife11" to support that
    format. Option -strife has been changed to imply "-tf strife11". New
    option -strife10 that is identical to -strife except that it does
    not imply "-tf strife11". Summary :

       * if you have the Strife 1.0 iwad, use "-strife10" (or "-tf
         normal"),
       * if you have Strife 1.1 or above, use "-strife" (or "-tf
         strife11").

    Thanks to Kim Parrott for reporting the bug and Len Pitre for
    pointing me in the right direction.
  * Sound: fixed two bugs in reading Sun audio (.au) files. Fixes error
    "WAV: can't read data of./sounds/foo.au" (sic) when trying to build
    a wad. One of these bugs prevented from reading Sun audio files on
    little-endian machines. It had been there for a long time ; v3.8 has
    it and the v3.6 binary behaves like it had it too. I doubt that
    anyone had ever been able to use .au files on little-endian machines
    before.

DeuTex 4.1.0 (AYM 1999-11-01)

  * CLI: new options -sneas, -sneaps and -sneats.
  * Code: removed all occurrences of "huge" on the theory that, on
    platforms where it's meaningful, we always use the huge memory model
    anyway.
  * Code: replaced certain occurrences of "Int32" by "iolen_t".
  * Code: replaced certain occurrences of "256" by "NCOLOURS".
  * Doom alpha 0.4: AMENA0 and MSKUL* are now correctly recognized as
    graphics and not as lumps anymore. The 21 graphic lumps that ended
    up in lumps/ are now properly extracted (into sneaps/ and sneats/).
    (The first item involved propagating to IDENTgraphic() the changes
    made to PICtoRAW() in v. 4.0.2. The second item needed heavy
    hacking, creating a new image type (christened "snea") and managing
    an alternate palette for TITLEPAL.) Still extracted as lumps :
    GNUM[0-9] and HUFONT.
  * Doom alpha 0.5: the 86 graphic lumps that ended up in lumps/ are now
    properly extracted (into sneaps/ and sneats/). Still extracted as
    lump : HUFONT.
  * Graphics: errors that used to cause DeuTex to give up on extracting
    a picture now just make it skip the rest of column. It also prints
    detailed messages about what it didn't like and in which picture it
    occurred instead of bailing out silently.
  * Misc: new option -di to debug entry identification. Useful mainly to
    hackers.
  * Misc: cosmetic changes in the generated wadinfo.txt and in the phase
    messages.
  * Misc: no more messages "Creating PWAD" and "WAD is complete..."
    during level extraction.
  * Misc: set a limit of 10 warnings per picture, to prevent invalid
    pictures from uselessly flooding the output.

DeuTex 4.0.3 (AYM 1999-10-02)

  * CLI: new option -doom2 as suggested by Matthew Miller.
  * Graphics: now accepts to extract pictures as large as 4096 *4096
    (previously the limit was 320 *200). This fixes "Failed to write
    sprite" errors when trying to extract PSYBA0 and PSYBB0 from
    strain.wad. Thanks to Matthew miller for reporting the bug.
  * Misc: added a useful URL to the GIF warning.
  * Platform: now builds without errors on FAT filesystems (replaced
    .deutex and .deusf by tmp/_deutex and tmp/_deusf).
  * Sound: fixed a bug that caused DeuTex to extract sounds with
    unlikely sample rates like 4 GHz whenever the sample rate in the
    lump was higher than 32767 Hz (for example DSVILACT and DSVILSIT
    from ncc1701.wad, with a sample rate of 44.1 kHz). Thanks to Matthew
    Miller for reporting the bug.

DeuTex 4.0.2 (AYM 1999-09-19)

  * CLI: new options

       * -doom02 (implies -ipf alpha, -itf none and -itl none)
       * -doom04 (implies -ipf alpha, -itf nameless and -itl textures)
       * -doom05 (implies -ipf alpha and -itl textures)
       * -doompr (implies -ipf pr)

    Use those options where you would have used -doom and friends. For
    example, to extract the contents of the Doom 0.4 iwad that is in
    c:\doom0_4, type "deutex -doom04 c:\doom0_4 -xtract".
  * Code: replaced certain unjustified uses of Int32 by long.
  * Doc: removed old/readme.txt. It's so out of date that it's more
    confusing than useful.
  * Game: Doom alpha and Doom PR: it's now possible to extract graphics,
    patches, sprites and textures from those iwads. Three new options :

         -ipf {normal|pr|alpha}
                 Use alpha for Doom alpha 0.2, 0.4 and 0.5.
                 Use pr for Doom PR (press release pre-beta).
                 Use normal for everything else.

         -itf {normal|nameless|none}
                 Use none for Doom alpha 0.2.
                 Use nameless for Doom alpha 0.4.
                 Use normal for everything else, including Doom alpha
                 0.5.

         -itl {normal|textures|none}
                 Use none for Doom alpha 0.2.
                 Use textures for Doom alpha 0.4 and 0.5.
                 Use normal for everything else, including Doom alpha
                 0.5.

    You shouldn't ever have to use those options directly. It's better
    to use just -doom02, -doom04, -doom05 and -doompr, which take care
    of setting ipf, itf and itl properly for you.

    Note that extracting levels and some other lumps from the Doom alpha
    iwads does not work yet.
  * Platform: new target in the makefile to generate a binary DOS
    distribution with the executables and the user documentation in DOS
    format, with DOS-ish names.

DeuTex 4.0.1 (AYM 1999-09-10)

  * CLI: reworked the command line arguments parsing, with the following
    consequences.

       * Options can now be abbreviated freely, as long as the
         abbreviation is not ambiguous. For example, you can use
         -heretic, -hereti, -heret, -here or -her but not -he because
         that could also be the abbreviation for -help (or -hexen, for
         that matter). On the other hand, -h is allowed because it's not
         an abbreviation (there's really a -h option).
       * -heretic and -hexen now work (they were "hidden" by -h[elp]).
       * -v@ has been split in -v0, -v1 ... -v5 because the new code
         does not allow excess characters after an option. -vstring
         where string is anything else than "0" through "5" now triggers
         an error (it used to be accepted silently). I hope no one
         relied on the old undocumented behaviour.
       * Certain silly command line arguments that would have worked
         before would now trigger an error. For example, it used to be
         possible to type -extramarital or -extermination for -extract
         but not anymore. The old code defined relatively short options
         (-ext) and accepted command line arguments as long as the
         defined option was an initial substring of the command line
         argument. The new code does the reverse; it defines relatively
         long options (-extract) and accepts command line argument as
         long as they're an initial substring of the defined option.

  * Code: replaced direct testing of __MSDOS__, __OS2__, __GNUC__,
    __BORLANDC__ by DT_CC and DT_OS. This is hopefully going to make
    Udo's job a bit easier.
  * Code: now uses the same fopen() modes for all platforms: "{rw}b" for
    binary mode and "{rw}" for text mode, as per the ANSI/ISO C
    standard. This will fix the problem Udo Munk reported with the
    Cygwin build opening binary files in text mode and thus failing
    miserably. Note that certain DOS C compilers can be configured so
    that "{rw}" opens files in binary mode. Don't do that ! If you have
    problems with text files on DOS, make sure your C compiler is
    configured so that "{rw}" opens files in text mode.
  * Code: added to the distribution archive gifcodec.c that I had
    forgotten to include (it's not used anyway).
  * Code: added to the distribution archive
    src/{deusf,deusfos,deutex,deutexos}.def that I had forgotten to
    include. I guess that's Windows/OS/2-only stuff.
  * Doc: updated making.txt and renamed it as INSTALL for homogeneity.
    Removed obsolete reference to alpha.sh and the file itself.
  * Doc: made more legal updates.
  * Doc: documented DOOMWADDIR in the man page.
  * Misc: changed the default graphics format for Unix from GIF to PPM,
    so that fewer user sites are broken if and when GIF support is
    removed. For the same reason, added a warning message when -gif is
    used or the first time an image is read from a GIF file.
  * Misc: changed the lookup order for images to PPM, BMP, GIF (was BMP,
    GIF, PPM).
  * Platform: fixed a couple of things that didn't work on 16-bit
    platforms (real-mode DOS).
  * Platform: now compiles on DOS with Borland C++ 4.0.
  * Platform: now compiles on DOS with MSC 6.0. The MSC 6.0 build is
    functional but limited because it can't allocate blocks larger than
    64 kB, which is insufficient for certain images. I can't use
    halloc() instead of malloc() because it does not supporting resizing
    (i.e. there's no hrealloc() function).
  * Platform: in response to Udo's remarks, DJGPP and Cygwin are now
    properly identified (__DJGPP__ and __CYGWIN__).
  * Platform: added sanity checks on specified-size types Int32 and
    friends.

DeuTex 4.0.0a3 (AYM 1999-09-05)

  * Code: removed incongruous #define-ing of O_BINARY and SEEK_SET.
  * Code: after Udo Munk's report, fixed warnings in

       * src/color.c(74)
       * src/ident.c(583)
       * src/ident.c(658)
       * src/mkwad.c(78)
       * src/mkwad.c(79)
       * src/mkwad.c(80)
       * src/mkwad.c(81)
       * src/picture.c(903)
       * src/picture.c(912)

  * Doc: updated making.txt.
  * Legal: as agreed to by Olivier Montanuy, DeuTex is now entirely
    GPL'd. Well, almost entirely, since it includes code written by
    different authors in lzw.c and elsewhere. Changed the notices in the
    source files and added new file LICENSE to clarify things.
  * Makefile: should now work with all C compilers (removed -Wall from
    CFLAGS).
  * Makefile: clean now removes the DOS executables if they exist.
  * Makefile: does not compile with debug information in by default
    anymore.
  * Makefile: new targets dall, ddt, dds, ddeutex and ddeusf for
    compiling with debug information and all warnings.
  * Makefile: new target help.
  * Makefile: new target distdos.
  * Platform: replaced unlink() by remove() for portability. Thanks to
    Udo for reporting this.
  * Platform: on 8.3 filesystems, make should not choke on
    docsrc/changes.html anymore. Thanks to Udo for reporting this.
  * Sound: corrected some misleading endianness comments in sound.c.

DeuTex 4.0.0a2 (AYM 1999-08-14)

  * Game: easier to use with Strife (now looks for "strife1.wad", new
    option "-strife").
  * Game: easier to use with Hexen (new option "-hexen").
  * Command line: new options "-hexen" and "-strife".
  * Command line: new option "--version" (prints version number and
    returns 0).
  * Doc: various changes in the man page, in the output of "-help" and
    "-man" and elsewhere.
  * Makefile: various improvements.
  * Distribution: set modes straight.

DeuTex 4.0.0a1 (AYM 1999-08-12)

  * General: fixed many segfaults that were caused by attempts to fclose
    (NULL).
  * Game: Strife is now supported.
  * Wad: new options -be, -le, -ibe, -ile, -obe and -ole to control the
    endianness of the wads. Caution: don't use them if you don't know
    what you're doing ! As far as I know, wads are always little-endian
    regardless of the architecture of the host. Therefore, I see no
    reason for someone in his/her right mind to create a big-endian wad.
    Those options are here more for the sake of completeness than
    anything else.
  * Wad: made "%" legal in names, to deal with Strife's "INVFONG%" and
    "INVFONY%".
  * Wad, graphics: end-of-flats marker is now F_END by default instead
    of FF_END. The reason for this change is that, with F_END, you don't
    need DeuSF to get Doom to see your new flats. Should you need to,
    it's still possible to get FF_END by using -fend.
  * Graphics: the default transparent colour is now a dark blue-green
    (rgb:00/2f/2f). It used to be cyan (rgb:00/ff/ff) which was
    blindingly bright, especially compared to the usually dark colours
    used in Doom textures. It's no fun to tweak shades of dark brown on
    a cyan background.

    To reuse images done with/for a previous version of DeuTex, you need
    to either invoke DeuTex with "-rgb 0 255 255" or convert your images
    by replacing all occurrences of colour (0, 255, 255) by colour (0,
    47, 47). To preserve compatibility with WinTex, I didn't change the
    default transparent colour in WinTex mode ; it's still (0, 255,
    255).
  * Graphics: fixed segfaults due to bug in conversion of bitmap images
    to Doom pictures. Occured in certain 2-pixel high images such as
    STBFN045 in the Strife iwad.
  * Graphics: now supports pictures and textures up to 509 high (was
    limited to 128).
  * Graphics: now supports pictures and textures up to 1024 wide (was
    limited to 512).
  * Graphics: new option "-pf" to deal with the different picture format
    in the Doom alpha iwad (the underlying functionality is not
    implemented yet !)
  * Graphics: using -ppm does not cause anymore DeuTex to abort with
    "Bug: *** psvit ***".
  * Graphics: fixed "-ppm" message.
  * Sound, platform: a bug that must have prevented reading .wav files
    on big endian machines has been squashed.
  * Command line: options can't start with a slash ("/") anymore. I
    don't think anyone used it and was a silly feature for a Unix
    program.
  * Command line: not case insensitive anymore.
  * Command line: changed the wording of error messages to use "option"
    instead of "command".
  * Command line: added options "-?" and "--help" as synonyms for
    "-help".
  * Doc: new option "-man" to print help in troff -man source format for
    inclusion in the man page.
  * Doc: the version number is now a free-form string.
  * Doc: Made on-line help more compact.
  * Doc: updated "making.txt".
  * Doc: made a proper README file.
  * Makefile: renamed "unix" target as "strip".
  * Makefile: new target "install".
  * Makefile: new target "dist".
  * Platform: reworked the handling of endianness. DeuTex used to deal
    with that through a set of macros that swapped bytes whenever the
    required endianness was not the same as the native endianness. To
    known the native endianness, DeuTex relied on a macro defined via
    -D.

    There were two problems with this scheme. Firstly, Olivier got the
    meaning of "little endian" and "big endian" backwards and defining
    LITTLE_ENDIAN in fact caused DeuTex to believe it was being compiled
    for a big endian machine. As the glibc headers happen to define
    LITTLE_ENDIAN if the machine is little endian, compiling DeuTex on a
    glibc little endian Linux system was impossible unless you made
    changes to the source.

    The other, more fundamental, objection against the old approach is
    that, as it needed the user to tell it about the native endianness
    by modifying the makefile, it prevented unattended builds and made
    things difficult for naive users.

    The new method eliminates this problem by using a different
    algorithm that does not need to know the native endianness. The end
    result is that you don't have to worry about endianness anymore.
  * Internal: in TXTinit(), removed useless "% 0xFF" in index of TXTval.