File: AUTHORS

package info (click to toggle)
allegro4.1 2%3A4.1.15-6
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 19,924 kB
  • ctags: 14,030
  • sloc: ansic: 121,716; asm: 16,973; cpp: 3,840; sh: 2,114; makefile: 706; objc: 561; python: 181; pascal: 105; perl: 73
file content (902 lines) | stat: -rw-r--r-- 39,392 bytes parent folder | download | duplicates (2)
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
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902

I hope I've remembered everyone who ought to be mentioned here. If your 
name should be included, my apologies, and please tell me so I can correct 
the oversight!



======================================
============ Contributors ============
======================================

   Acho A. Tang (acho at telus dot net).
   Added a Sidewinder Precision Pro joystick driver to the DOS port.
   
   Adrian Oboroc (doba at corefx dot com).
   Wrote the LBM loader.

   aj (aj at visualsynth dot com).
   Reported many problems and suggested many improvements to the
   documentation.

   Alex Demko (alex_demko at mbnet dot mb dot ca).
   Suggested lots of improvements to the datafile system and provided code
   for handling the 8x16 BIOS font format.

   Alessandro Monopoli (almonopo at tin dot it).
   Added the Italian translation of the system messages.

   Andreas Kluge (bitland at aol dot com).
   Wrote the Ensoniq Soundscape driver and fixed division bugs in the fix
   class.

   Andrei Ellman (ae-a at wackonet dot fsnet dot co dot uk).
   Contributed the polygon_z_normal() function, suggested some additions to
   the docs, updated the Cygwin section in docs/build/mingw32.txt, got
   Allegro for MSVC to build with Cygwin, improved the performance of the
   hsv_to_rgb() function, corrected a rounding issue in hsv_to_rgb(),
   improved the exrgbhsv example and the Windows screensaver.

   Andrew Cottrell (andrewc at dbworld dot net dot au).
   Changed the grabber to use a more robust (locale-independent) date format.

   Andrew Ellem (krand at ican dot net).
   Wrote the original version of the digital audio streaming code.

   Andrew Geers (andy at geerswj dot clara dot net).
   Added the -ppassword and -nosound options to the grabber, scrolling
   support in the image viewer and the flipped rotated sprite routines.

   Andy Goth (unununium at openverse dot com).
   Made the gfx_card config variable more flexible, added the 256x256 tweaked
   VGA mode, wrote the d_text_list_proc() dialog object and fixed the
   constructor support in dat2s on Unix.

   Angelo Mottola (a dot mottola at libero dot it).
   Added the BeOS joystick, MIDI and windowed graphics drivers, added mouse
   wheel, display switching and close button support for BeOS, wrote the
   DGA2 driver and close button support for X, contributed the bfixicon
   utility, added triple buffering support, a BWindow-based windowed driver
   and a fullscreen overlay driver to the BeOS port and reorganized its gfx
   subsystem. And, oh, contributed the QNX and MacOS X ports too.

   Annie Testes (annie at kezako dot net).
   Added font_height, render_char, char_length hooks to FONT_VTABLE, fixed
   several glitches in the unicode support, added a pack_fdopen() function,
   caught a misordering in the X system shutdown, fixed some device name
   strings, lifted several hardcoded length limitations in the configuration
   routines, added a mouse driver based on the event interface (EVDEV) to the
   Linux port, fixed numerous bugs and did plenty of other things too.

   Antoine Mathys (mmathys at bluewin dot ch).
   Added the Swiss keyboard mapping.

   Anton Ragnarsson (anton dot ragnarsson at swipnet dot se).
   Contributed the Swedish keyboard mapping table.

   Antti Haapala (ztane at lyseo dot edu dot ouka dot fi).
   Fixed the setup program to display the right frequency list for each
   type of soundcard and contributed the Finnish translation of the system
   messages.

   Antti Koskipaa (antti dot koskipaa at nic dot fi).
   Wrote the DOS driver for WSS (Windows Sound System) cards.

   Arne Steinarson (arst at ludd dot luth dot se).
   The fixed point square root routine came from his fix-float library.

   Attila Szilagyi (attilabox at hotmail dot com).
   Fixed SVGAlib horizontal scrolling.

   Ben Chauveau (bendomc at worldnet dot fr).
   Added support for Tseng ET6000 cards (now available as part of the
   FreeBE/AF project).

   Ben Darnell (bdarnell at vnet dot net).
   Put together the 2.11 release of Allegro while I was away from the net
   and wrote the original version of the Allegro FAQ.

   Ben Davis (entheh at users dot sf dot net).
   Added set_volume_per_voice(), made silent voices continue playing,
   fixed other minor bugs in the mixer, fixed a bug in create_rgb_table(),
   adapted polygon functions to handle two coincident vertices, added the
   set_window_close_button() and set_window_close_hook() framework, added
   support for timers with parameters under Windows, corrected several
   compilation warnings and documented the behaviour of pack_feof().

   Benjamin Joel Stover (stovertech at intellisys dot net).
   Wrote the initial version of the fullscreen X-Windows graphics driver.

   Benny Colyn (email unknown).
   Added a Dutch translation. 

   Bertrand Coconnier (bcoconni at club-internet dot fr).
   Modified 3D polygones routines for subpixel and subtexel accuracy, made
   speed enhancements in these routines, fixed blending in C version of
   atex_lit scanline functions, added scanline subdivisions in C scanline
   functions and Z-buffer polygon functions and merged in Calin Andrian's
   P3D library.

   Burton Radons (loth at gec dot net).
   Optimised the truecolor pixel blending function, converted the blenders
   to the new single-handler format, and added the range of
   Photoshop-compatible blender functions.

   Calin Andrian (calin at ibd dot dbio dot ro).
   Wrote the truecolor, MMX, 3DNow!, masked lit mode, translucent and
   Z-buffered polygon rendering routines, the clip3d_f() function and also
   the scanline sorting functions for 3D scene rendering, and his P3D
   addon library was merged in.

   Calvin French (frenchc at home dot com).
   Added the -w (always update) switch to dat.exe.

   Carsten Schmidt (email unknown).
   Wrote the the initial version of the Linux GGI driver.

   Carsten Sorensen (csorensen at ea dot com).
   Wrote the the ESS AudioDrive soundcard driver.

   Cloud Wu (cloudwu at 263 dot net).
   Optimised the truecolor pixel blending functions.

   Charles Bilyue (Esaelon at aol dot com).
   Optimized the i386 blitters and suggested to not force yielding timeslice
   with non-blocking menus.

   Chris Graham (chris_graham at postmark dot net).
   Suggested to add a new flag for Windows NTFS compressed files.

   Chris Jones (cj at jibblers dot plus dot com).
   Fixed a bug with 16-bit samples loading, worked around a problem with DOS
   file attributes under Win2k, let the MIDI player pass controller events to
   the raw player by default, made the MIDI player handle the 'All Sound Off'
   controller message and added support for the bitfield compressed BMP image
   format.

   Chris La Mantia (celamantia at home dot com).
   Wrote the d_radio_proc(), d_icon_proc(), and d_slider_proc() dialog
   objects, added the D_DISABLED flag, improved the GUI handling of
   different font heights, and added the right aligned text functions.

   Chris Robinson (crobin_99 at yahoo dot com).
   Wrote the fixed point clip3d() function, improved the performance of the
   DIGMID driver, implemented the digmid_set_pan function, rewrote part of
   the Allegro mixer, improved the threaded UNIX timer code, helped improve
   responsiveness under X11 and tweaked tests/play.c.

   Christer Sandberg (christer dot sandberg at mdh dot se).
   Made dat2c work better with ISO C90 compilers, made dat2c correctly detect
   the native line ending, fixed a problem with the include guard generated
   by dat2c and fixed a bug in the 24-bit graphics code of fixup_datafile().
   
   Christian Schueler (cschueler at gmx dot de).
   Changed the optimisation settings for better performance.

   Daniel Nilsson (daniel7 at algonet dot se).
   Enlarged the starfield in exstars, and fixed an incorrect range in
   exlights.

   Daniel Schlydler (daniel at dascdev dot net).
   Fixed problems with get_executable_name() under Windows, another one with
   set_window_title() under BeOS and potentially unsafe constructs in the
   Windows code.

   David A. Capello (dacap at users dot sourceforge dot net).
   Made dotted_rect() avoid bank switches, fixed a problem with lost GUI
   mouse clicks, made d_menu_proc() steal/return focus when activated then
   deactivated, fixed a problem with submenus and fixed a bug with FLI
   frames containing odd-sized chunks

   David Kuhling (dkuelhin at hell1og dot be dot schule dot de).
   Optimised the fsqrt() routine, and added fhypot().

   Dave Thomson (gameskitchen at geocities dot com).
   Added the RGB <-> HSV conversion routines, the autocrop function to
   the grabber and wrote the 3d starfield example program (exstars.exe).

   David Calvin (calvid at rpi dot edu).
   Wrote the original version of the sound setup utility.

   David Cullen (dcullen7 at bellsouth dot net).
   Added multiple bullets and extra lives to the demo game.

   Deepak T (coolbool at gmx dot net).
   Fixed clipping in three C sprite drawing routines.

   Dmitriy Kazimirow (mariann at mail dot ru).
   Provided the Russian keyboard mapping and message translation files.

   Dominique Biesmans (Dominique dot Biesmans at ping dot be).
   Wrote the mode-X version of draw_sprite() and the mode-X <-> linear
   blitting functions.

   Doug Eleveld (D dot J dot Eleveld at anest dot azg dot nl).
   Wrote the d_textbox_proc() dialog object and the new grabber help system.

   Eduard Bloch (edi at gmx dot de).
   Fixed a freeze caused by the ESD detection code, fixed a bad behaviour
   of the config routines and suggested better ways to find the path to
   the executable on Unix.

   Edward Boone (Lucien dot Boone at ping dot be).
   Provided scancode mapping tables for the AZERTY keyboard layout.

   Elias Pschernig (eliaspschernig at aon dot at).
   Added a COLORCONV_KEEP_TRANS mode, contributed the wfixicon utility,
   contributed several enhancements to the grabber, fixed menu dimensions in
   the GUI engine, fixed the get_camera_matrix*() functions, added support
   for the CHM and Devhelp documentation formats, fixed a bug in midi_seek(),
   made load_datafile_object() load the object properties, made the GUI code
   scare the mouse more intelligently and did plenty of other things too.

   Eric Botcazou (ebotcazou at libertysurf dot fr).
   Made the DGA driver work better in 8bpp and 32bpp modes, improved the
   DirectX windowed driver and Windows graphics subsystem, partially
   revamped the Unicode API and added uszprintf(), added file_select_ex(),
   the unified al_find*() interface, an Unicode example, a new filetest,
   rewrote the fixdll script, revamped the Borland C++ build process, fixed
   lots of bugs and did plenty of other things too.

   Erik Sandberg (eriksandberg at geocities dot com).
   Optimised the 8 bit draw_sprite() and draw_trans_sprite() functions and
   helped with the Swedish message translation.

   Ettore Perazzoli (ettore at comm2000 dot it).
   Optimised the linear -> mode-X blitting function.

   Evert Glebbeek (eglebbk at dds dot nl).
   Put set_gfx_mode on a diet, added a config entry for specifying the card
   to be used for GFX_AUTODETECT_WINDOWED, added a '-fullscreen' switch to
   the grabber, cleaned up the grabber/plugins code, added various commands
   to the grabber, added the detection of SunOS/Solaris, added configure
   options for x86 processor optimisations on Unix systems, added the support
   for relative filenames and did plenty of other things too.

   EvilTypeGuy (eviltypeguy at icculus dot org).
   Cleaned up and fixed the RPM spec file for RedHat 9.

   Fabian Nunez (faybs at iafrica dot com).
   Added support for the CH Flightstick Pro and Logitech Wingman Extreme
   joysticks, 3-button mice, and the extended keys on a Microsoft keyboard.

   Fabrizio Gennari (faybs at iafrica dot com).
   Contributed the DB9 and TurboGraFXoystick drivers.

   Francisco Pires (fmlvp at hotmail dot com).
   Added an FPS counter and an option to disable vsync to the excamera
   example.

   Francois Charton (deef at pobox dot oleane dot com).
   Wrote the Paradise graphics driver (now available as part of the
   FreeBE/AF project), improved the VGA palette setting code and helped
   with the TexInfo conversion of the docs.

   Frodo Baggins (l41273 at alfa dot ist dot utl dot pt).
   Made the Portuguese keyboard mapping.

   Garret Thomson (g at sirsonic dot com).
   Wrote the music used in the demo game.

   George Foot (gfoot at users dot sourceforge dot net).
   Did a great deal of work on the Linux console version, wrote the AWE32
   driver, added the MIDI pause/seek functions, provided the basis of the
   SoundFont reader used in the pat2dat utility, fixed the C fceil()
   function, added the ffloor() function and added non-FM support to the
   OSS MIDI driver.

   Gorka Olaizola (olsago at jet dot es).
   Added the Redhat RPM .spec file.

   Grady Martin (shadygrady at budweiser dot com).
   Fixed a bug in the handling of %n in the printf style text functions.

   Greg Hackmann (hacker at ididitmyway dot com).
   Contributed the Borland C++ Builder port.

   Grzegorz Adam Hankiewicz (gradha at users dot sourceforge dot net).
   Wrote several of the example programs, suggested the "compress" makefile
   target, translated the docs and system error messages into Spanish,
   suggested the idea of embedding the setup utility into other programs,
   wrote some documentation and corrected the .texi generation to improve
   texi2dvi output, improved the makedoc utility and contributed a new doc
   format, added reload_config_texts() and did plenty of other things too.

   Grzegorz Godlewski.
   Contributed a Polish localization patch, and added support for lower and
   upper altgr tables.

   Grzegorz Ludorowski (pajonk at ajax dot umcs dot lublin dot pl).
   Wrote several of the example programs, and made the intro animation and
   graphics for the demo game.

   Guilherme Silveira (thedarkage at geocities dot com).
   Modified the file selector to only list valid drive letters.

   Gunter Ladwig (gladwig at iname dot com).
   Wrote the OS/2 detection routines and added the three-button mouse
   emulation.

   Haruhiko Okumura, 12-2-404 Green Heights, 580 Nagasawa, Yokosuka 239, JP.
   Wrote the original version of the LZSS compression code.

   Hein Zelle (hein at icce dot rug dot nl).
   Revamped the cross-compilation section of docs/build/mingw32.txt,
   clarified a requirement when cross-compiling from Linux, reworked the
   paragraph on the location of shared libraries under Unix in the docs and
   added a FAQ entry on the same subject.

   Henrik Schmidt (hbs at ks dot informatik dot uni-kiel dot de).
   Found a workaround for the switching problem under Windows, made gcc pass
   '-h' instead of '-soname' to the linker and replaced '-L' by '-h' in shell
   comparisons so as not to break on Solaris.

   Henrik Stokseth (hensto at online dot no).
   Contributed a native Mingw32 port which can also be built with a
   cross-compiler and the Cygwin compiler, much improved OS detection, added
   get_gfx_mode_list() and methods for querying the VGA, Mode-X, Xtended,
   VESA, VBE/AF and DirectX drivers for a list of possible GFX modes,
   rewrote the mode-selector to use get_gfx_mode_list(), reworked the build
   system many times and did plenty of other things too.

   Igor Gnip (gnipi at mindnever dot org).
   Removed the requirements for fileutils on DOS/Windows platforms and added
   the detection of MSYS to the MingW32 port.

   Isaac Cruz (icruzbal at teleline dot es).
   Fixed a bug with accelerated drawing onto sub bitmaps of DirectDraw
   surfaces, added the GFX_DIRECTX_WIN driver, fixed a Windows sub bitmap
   locking bug, added Windows desktop_color_depth and yield_timeslice
   routines, and made extensive modifications to other aspects of the
   Windows code.

   Ivan Baldo (lubaldo at adinet dot com dot uy).
   Wrote the 15/16 bit dithering code and optimised the sprite rotation
   routines.

   James Arthur (jaa at arfa dot clara dot net).
   Documented the Photoshop-style truecolor blender routines.

   James Hyman (frooge at mindless dot com).
   Added support for quoted strings in the get_config_argv() function and
   the dithering code for paletted images.

   James Ponder (james at squish dot net).
   Suggested to remove the DJGPP makefile from the Unix tar archive and
   clarified a requirement when cross-compiling from Linux.
   
   Jan Bruun Andersen (jba-dk at users dot sourceforge dot net).
   Fixed a compilation problem with Cygwin.

   Jan Hubicka (hubicka at horac dot ta dot jcu dot cz).
   Vastly improved the speed of the create_rgb_table() function.

   Jason Wilkins (fenix at io dot com).
   Wrote the quaternion math routines and contributed the BeOS port.

   Javier Gonzalez (xaviergonz at hotmail dot com).
   Corrected mouse movement speed, made allegro_message() use title from
   set_window_title(), added close button hook support and improved
   switching in Windows, fixed bad clearing of subbitmaps, made bug
   reports and suggestions for improvement, contributed bidirectional
   looping support, backward playing support and bugfixes for the
   DirectSound driver and did plenty of other things too.

   Jeremiah Blanchard (squirminworm at yahoo dot com).
   Contributed modifications in order for Allegro to build on Darwin/MacOS X
   and updated the build instructions for this new port afterwards.

   Jim Flynn (jflynn at pacbell dot net).
   Removed floating point calculations from the AWE32 MIDI driver.

   Jim Grainger (Grainger_Jim/world_europe_samuro_WYN-CTV at samsung dot co dot kr).
   Spotted a broken link in the docs and updated it.

   Joaquin Hierro Diaz (Joaquin dot Hierro dot Diaz at fresno dot csic dot es).
   Made the mapping table for Spanish keyboards.

   Joerg Rueppel (sharky-x at gmx dot net).
   Added more flexible wildcard matching for object names in dat.exe and
   the find_datafile_object() function.

   Johan Peitz (d98peitz at dtek dot chalmers dot se).
   Fixed and enhanced the Win32 joystick driver, and contributed the 'Alex
   the Allegator' icon.

   Johan Venter (leonjventer at bigpond dot com).
   Fixed some problems with the RSXNT and Mingw32 makefiles.

   John Holden (johnh at psych dot usyd dot edu dot au).
   Fixed a bug in load_wav().

   John Utz (Johnut01 at noa dot nintendo dot com).
   Corrected a wrong assumption about the VRAM layout in the Linux
   framebuffer console driver.

   Jon Rafkind (workmin at ccs dot neu dot edu).
   Added more ASSERTs to the code, implemented the Cohen-Sutherland clipping 
   algorithm for the line() function and supplied an m4 macro for allegro.

   Jonas Petersen (joXonoX at berlin dot snafu dot de).
   Added the save_bmp() function and support for the OS/2 BMP format.

   Jonathan Tarbox (jonattar at rocketmail dot com).
   Wrote the mode-X setup code, the FLI/FLC player and contributed parts of
   the joystick handler.

   Jorrit Rouwe (j dot rouwe at cpedu dot rug dot nl).
   Provided a new and much cooler set of FM instrument definitions for the
   Adlib MIDI driver.

   Jose Antonio Luque (skylord at LatinMail dot com).
   Improved the Windows joystick driver, and optimised the 16-bit blit() and
   masked_blit() functions.

   Joshua Heyer (joshua_heyer at yahoo dot com).
   Wrote the original version of the OSS sound driver.

   Julien Cugnire (jcugniere at free dot fr).
   Improved the support for non-blocking menus, fixed a bug related to the
   retrieval of the inital volume when no primary buffer was present under
   Windows and fixed the crash on exit with the aRts sound driver.

   Kalle Toivonen (allegro at korpiq dot iki dot fi).
   Fixed a bug in _parallelogram_map().

   Keith Gerdes (kwg at softhome dot net).
   Fixed the DirectDraw overlay mode driver.

   Kerry High (khigh01 at umr dot edu).
   Contributed the SNES joypad driver.

   Kester Maddock (dmaddock at xtra dot co dot nz).
   Wrote the Wingman Warrior joystick driver.

   Knut Pape (Knut_Pape at t-online dot de).
   Improved the Mingw32 readme file.

   Kronoman X (kronoman_x at hotmail dot com).
   Added a FAQ entry about the conflict between Allegro headers and the C++
   'using' directive.

   Krzysztof Krzyzaniak (eloy at arrakis dot cs dot put dot poznan dot pl).
   Wrote the load_voc() function.

   Laurence Withers (lwithers at users dot sf dot net).
   Added destroy hook to font structure, worked on const-correctness
   throughout the library, implemented the new FONT structure, made
   some modules avoid linking dependencies, contributed the dat2c
   utility, added two fixed point ratios for converting to and from
   radians, added a '-windowed' switch to the grabber, added a new text
   API and did plenty of other things too.

   Lee Killough (email unknown).
   Added the low-level hook routine to the keyboard handler and fixed a
   couple of bugs.

   Lennart Rolland (chimeni at hotmail dot com).
   Contributed the Norwegian message translation.

   Lennart Steinke (lst at steinke dot net).
   Added the exconfig example.

   Lisa Parratt (lisa at thecommune dot org dot uk).
   Contributed the SGI Audio Library sound driver, spotted a BSDism that
   IRIX doesn't like at all, added IRIX detection and improved the
   performances of the SGI audio driver

   Lorenzo Petrone (_lano_ at libero dot it).
   Contributed the gfxinfo utility, added two FAQ entries, added a
   xwin_set_window_name() function to the X11 port, added support for
   switch callbacks under X11 and refactored the display switching code.

   Lucas Vignoli Reis (lucasvr at bestway dot com dot br).
   Added the Portuguese (Brazil) message translation and keyboard mapping.

   Magnus Henoch (mange at freemail dot hu).
   Made the gfx mode selector keep the current selection as much as possible
   and fixed a problem when compiling without 8bpp support.
   
   Maiolino Carmelo (cmaiolino at ctonline dot it).
   Added the Italian keyboard mapping table.

   Manni Heumann (manfred dot heumann at uni-bielefeld dot de).
   Fixed some problems with the German keyboard mapping table.

   Marcel de Kogel (m dot dekogel at student dot utwente dot nl).
   Not content with fixing my broken MPU-401 driver, Marcel went on to
   provide a set of vastly improved drum sounds for the OPL driver, to help
   me sort out some problems with reentrant interrupts, to supply the half
   of the joystick code that didn't come from Jonathan and to locate a
   stupid mistake in my VESA linear framebuffer code.

   Marcel Smit (marcel dot athlon at hccnet dot nl).
   Corrected a bug that caused errors when drawing persp. correct polygons
   facing the screen, corrected an error in the packfile format write-up and
   made the show_video_bitmap() method of the Windows windowed driver wait
   for a vsync.

   Marco Campinoti (marco at etruscan dot li dot it).
   Added 15 and 24 bit support to the native Tseng ET4000 driver (now
   available as part of the FreeBE/AF project).

   Marco Marmulla (Viper005 at usa dot net).
   Added 16 bit support to the load_voc() routine.

   Marian Dvorsky (mdvorsky at dodo dot sk).
   Wrote the Windows GDI interface routines.

   Marius Fodor (iceman at teleport dot com).
   Added support for the Sidewinder and Gravis GamePad Pro.

   Marek Habersack (grendel at ananke dot amu dot edu dot pl).
   Did the original Linux console port (brave man: this was the first ever
   work done on porting Allegro away from DOS), which is the basis of the
   code we are still using today and added support for the more recent
   Trident chipsets (now available as part of the FreeBE/AF project).

   Mark Wodrich (mwodric at eleceng dot uct dot ac dot za).
   The brain behind sub-bitmaps, flicker-free mouse pointers, and the
   ability to import GRX .FNT files into the grabber.

   Markus F.X.J. Oberhumer (markus dot oberhumer at jk dot uni-linz dot ac dot at).
   Fixed the Video-7 scrolling function (now available as part of the
   FreeBE/AF project), optimised the color mapping routines, and made many
   useful suggestions like the addition of a vid_phys_base field to the
   graphics driver structure.

   Martijn Van Lersel (amarillion at yahoo dot com).
   Fixed an overflow in create_light_table().

   Martijn Versteegh (m dot versteegh at hccnet dot nl).
   Added the config hook extension mechanism.

   Mathieu Lafon (mlafon at ifhamy dot insa-lyon dot fr).
   Added the French keyboard mapping, support for the Pause/PrtScr keys and
   changed the key[] table to a normal/extended bitfield.

   Matt Witherspoon (spoon at vt dot edu).
   Fixed a bug in the scroll() method of the Linux SVGAlib driver.

   Matthew Bowie (catcat at nmt dot edu).
   Added support for 4-button joysticks.

   Matthew Leverton (matthew at leverton dot cc).
   Fixed a bug with mouse mickeys in windowed mode under Windows, fixed a
   problem with al_find*() and NTFS partitions under Windows, added missing
   header files to be installed by the Windows binary distribution, made the
   DOS/Windows makefiles use 'copy /B' instead of 'copy', added the detection
   of left-hand mouse configuration under Windows and fixed a bug with
   pack_fgets().

   Maxime Carey (werfu at users dot sourceforge dot net).
   Contributed the Canada (French) keyboard mapping file.

   Michael Bevin (michael dot bevin at stonebow dot otago dot ac dot nz).
   Optimised the create_trans_table() function.

   Michael Bukin (M dot A dot Bukin at inp dot nsk dot su).
   Ported the whole thing to Unix/X, and contributed a _lot_ of patches to
   improve the portability, robustness, and performance of pretty much the
   entire library.

   Michael Rickmann (mrickma at gwdg dot de).
   Ported the Windows code to Mingw32.

   Michael Tanczos (webmaster at logic-gate dot com).
   Fixed some bugs in the FLIC player.

   Michal Mertl (mime at eunet dot cz).
   Wrote all the 24 bit graphics code, the optimised palette generation
   function and a fair amount of the other truecolor stuff too (bitmap
   scaling, image loading, etc).

   Michal Molhanec (molhanec at seznam dot cz).
   Simplified the build instructions for Dev-C++ and replaced all occurences
   of MingW32 by MinGW in the docs.

   Michail Pishchagin (mblsha at users dot sourceforge dot net).
   Contributed the ustrnicmp() function.

   Nathan Albury, aka Rubicant (gt4558a at prism dot gatech dot edu).
   Improved the fire routine in examples/exflame.c (my original version
   didn't really look very much like flames :-) and gave me some extremely
   useful ideas about how to implement translucency.

   Nathan Smith (white_door at dread dot nl).
   Implemented the recursive handling of directories for the dat utility.

   Neil Townsend (neil at robots dot ox dot ac dot uk).
   Improved the accuracy of the timer routines and added the callback
   parameters.

   Neil Roy (neilroy at cogeco dot ca).
   Suggested many improvements to the documentation.

   Nicholas Davies(master_goodbytes at hotmail dot com).
   Made the fix class not trigger warnings with gcc -Weffc++.

   Nick Kochakian (nickk at worldnet dot att dot net).
   Wrote the DirectSound input driver.

   Ole Laursen (98zOLaw at aalborghus dot dk).
   Contributed the Danish keyboard mapping table and system message
   translation, and made the Unicode utolower() and utoupper() functions
   understand the entire 16 bit character set.

   Olly Betts (olly at muscat dot co dot uk).
   Modified the djgpp makefile to support cross-compiling on a Linux machine.

   Omar Cornut (cornut at noos dot fr).
   Spotted an asm locking bug under Windows, bumped the maximum number of
   buttons per joystick to 32, fixed the Windows joystick driver to handle a
   weird peculiarity of the DirectInput API and improved the handling of
   KEY_COLON2 on Japanese keyboards.

   Oscar Giner (O_giner at hotmail dot com).
   Added the Catalan translation, corrected the Spanish translation, fixed a
   bug with binary data exporting in the grabber and fixed a conflict between
   the magic main and the MFC.

   Owen Embury (owen at gememail dot demon dot co dot uk).
   Wrote part of the translucency/lighting code.

   Owen Rudge (alleg at orudge dot freeuk dot com).
   Contributed a DLL version resource script and the mkdata.bat script.

   Ove Kaaven (ovek at arcticnet dot no).
   Fixed a bug in the ATI mach64 driver (now available as part of the
   FreeBE/AF project), added native truecolor and linear framebuffer support
   to the ATI driver, contributed the Norwegian keyboard mapping, and added
   MIDI and sample input features to the MPU and SB drivers respectively.

   Patrick Hogan (patter at iname dot com).
   Wrote the draw_gouraud_sprite() function, and made Windows audiostreams
   work properly.

   Paul Bartrum (bartrum at xtra dot co dot nz).
   Contributed the ellipse drawing functions.

   Paul Furber (paul at sprintlink dot co dot za).
   Provided the floating point apply_matrix_f() function.

   Paul Hampson (Paul dot Hampson at Pobox dot Com).
   Improved and fixed some problems in the SNES gamepad driver.

   Paul Pinault (diskaleg at infonie dot fr).
   Translated the system error messages into French.

   Pavlos Touboulidis (gtoub at otenet dot gr).
   Made file_select() able to include or exclude files based on their
   attributes.

   Pedro Cardoso (pcardoso at viriato dot ipv dot pt).
   Contributed the tweaked 80x80 VGA mode.

   Peter Cech (7cech at nw dot fmph dot uniba dot sk).
   Added grabber support for the 8x8 BIOS font format, support for
   hot-swapping between a custom keyboard layout and the standard US
   mapping, optimised the alpha sprite blending routines and added non-ASCII
   space recognition to uisspace().

   Peter Monks (pmonks at iname dot com).
   Wrote the Video-7 graphics driver (now available as part of the FreeBE/AF
   project) and showed me how to set up the unchained 640x400 mode.

   Peter Palotas (blizzar at hem1 dot passagen dot se).
   Added the keyboard callback routine.

   Peter Pavlovic (Peter dot Pavlovic at st dot fmph dot uniba dot sk).
   Added the Slovak keyboard mapping and message translation, stopped the
   DOS file selector from listing virtual drives, did the same for the
   Windows file selector, improved the support for accented character maps in
   the keyboard driver and made aesthetic modifications to the GUI menu
   system.

   Peter Puck (zaqhaq at netscape dot net).
   Helped with the Mingw32 native build.

   Peter Wang (tjaden at users dot sourceforge dot net).
   Added the mouse_z wheel input support to the Linux code, fixed problems
   with the ESD sound driver, wrote the ALSA sound driver, wrote the BeOS
   sound driver, added OSS MIDI and sample input support, added banked mode
   support to the SVGAlib driver, wrote the X DGA mode switching code,
   improved the Linux joystick driver, X11 fullscreen, DGA2 and DGA driver,
   added pthread timers under Linux/Unix and did loads of other things too.

   Phil Frisbie, Jr. (pfrisbie at geocities dot com).
   Wrote the CPU type detection code.

   Philipp Thomas (pthomas at suse dot de).
   Fixed all comparisons between signed and unsigned types, fixed compilation
   on x86-64, fixed all function prototypes, converted the configure
   machinery to autoconf 2.53 or later and added multi-arch support, DESTDIR
   support and the German translation to the RPM spec file.

   Przemek Podsiadly (ppodsiad at elka dot pw dot edu dot pl).
   Added hicolor versions of the 3d polygon code.

   Revin Guillen (revin at phylo dot com).
   Added the position_dialog() function.

   Richard Davies (richard at debaser dot force9 dot co dot uk).
   Added support for PSX and N64 joypads.

   Richard Mitton (100740 dot 1271 at compuserve dot com).
   Added support for 6-button joysticks, and wrote the 12-bit color example
   program (ex12bit.c).

   Richard Reeve (r dot e dot reeve at stir dot ac dot uk).
   Fixed a silly mistake with gcc 3.0.x detection.

   Robert J. Ragno (rjr at mit dot edu).
   Wrote the Gravis GrIP driver, made some improvements to the Wingman, PSX
   and throttle input code.

   Robert J. Ohannessian (voidstar at ifrance dot com).
   Added MMX optimisation for the 8 and 16-bit clear() functions, fixed bad
   clearing of subbitmaps, added SSE detection and optimised some masked
   blits with SSE instructions, added some routines to the unified color
   convertor and made some of them more robust, fixed the docs for
   pivot_scaled_sprite_v_flip(), revamped the retrieval mechanism of CPU
   capabilities, separated the CSS file and did plenty of other things too.

   Roberto Alfonso (rpgrca at labint dot frba dot utn dot edu dot ar).
   Fixed a couple of memory problems in the dat2c utility and added an
   srand() call in the demo game.

   Robin Burrows (rburrows at bigfoot dot com).
   Provided a new page flipping code for the DirectDraw subsytem, added a
   Windows sound driver using the Allegro mixer and another using waveOut,
   fixed two glitches in the DirectDraw code.

   Romano Signorelli (romanos at bigfoot dot com).
   Added an arc plotting routine.

   Ronaldo Hideki Yamada (r dot yamada at uol dot com dot br).
   Contributed the MacOS 9 port of Allegro.

   S.Sakamaki (emt at geocities dot co dot jp).
   Added the VESA 3.0 refresh rate control code.

   S.Suzuki (s-suz at sunfield dot ne dot jp).
   Wrote the IF-SEGA /PCI, /PCI2, and /ISA joystick interface drivers.

   Salvador Eduardo Tropea (salvador at inti dot edu dot ar).
   Improved the keyboard routines (better handling of extended scancodes,
   keyboard LED support, capslock and numlock, and alt+numpad input),
   contributed the 320x100 VGA graphics mode, added support for proper 16
   bit sample mixing, fixed compilation on gcc 3.x and made numerous other
   useful suggestions, contributions and bugfixes.

   Sam Hocevar (sam at zoy dot org).
   Fixed a Bashism in fix.sh that makes Solaris' sh choke, and a race
   condition in the mixer under Unix w/ threads, Windows, BeOS and MacOS X.

   Santeri Saarimaa (gridle at mbnet dot fi).
   Made the Finnish keyboard mapping.

   Sask Allegro (sask_allegro at iespana dot es).
   Added support for more than two joysticks in the Windows port.

   Scott Harrison (scotth at calderauk dot com).
   Added the OpenDOS detection code.

   Sean Gugler (sean at epal dot com).
   Added the set_leds() function.

   Seunghwan Ji (email unknown).
   Made makedoc output correct html and rtf files for Korean.

   Serge Semashko (serge at lxnt dot info).
   Fixed a bug with the letter P in the Russian keyboard configuration
   file.

   Seymour Shlien (seymour at dgbt dot doc dot ca).
   Contributed the Windows BMP file reader, bezier spline drawer, and
   justified text plotting function.

   Shawn Hargreaves (shawn at talula dot demon dot co dot uk).
   Progenitor. Wrote everything that wasn't written by somebody else.

   Stefan Eilert (seilert at rz dot Uni-Osnabrueck dot DE).
   Added support for a second joystick.

   Stefan Schimanski (1Stein at gmx dot de).
   Wrote the original Windows version pretty much single-handedly.

   Stefan T. Boettner (virtual dot man at t-online dot de).
   Wrote the Linux SVGAlib driver.

   Stepan Roh (src at srnet dot cz).
   Added a Czech keyboard mapping and system message translation, the Latin
   Extended-A characters in the default font, the codepage support in the
   textconv utility, fixed some problems with the ESD sound driver, helped
   make Allegro build better on some Unix platforms, fixed const related
   problems in C versions of routines and added support for a automake-style
   DESTDIR variable in the Unix makefile.

   Stephan Brauss (sbrauss at optronic dot ch).
   Made a few fixes to let the Linux port compile again on Linux 2.2.x,
   corrected a few nits in the Swiss keyboard configuration file and added
   new keysyms to the X11-to-BIOS conversion table in order to catch missing
   keycodes for the keypad when NumLock is on.

   Stephen Kittelson (stickman2000 at juno dot com).
   Made bugfixes and tweaks to the keyboard system.

   Sven Sandberg (svens at it dot uu dot se).
   Fixed a problem with save_bitmap() rounding the image widths, optimised
   the create_light_table() function, optimised the fixed point trigonometric
   routines, provided the Swedish message translations, improved the file
   selector sorting algorithm, optimised the spline routines, added
   ustrrchr(), improved the usprintf() handling of floats, changed the
   Z-buffer API, and did plenty of other things too.

   TBD/FeR (tbd at usa dot net).
   Added the 320x600 and 360x600 resolutions to the mode-X driver.

   Teijo Hakala (teijo dot hakala at imnetti dot fi).
   Added wheel support to the Windows mouse driver.

   Tero Parvinen (Tero dot Parvinen at hut dot fi).
   Designed most of the new sound API.

   Theuzifan Sumachingun (uzi at simauria dot upv dot es).
   Improved the cpu detection for Cyrix chips and made the file selector
   only list valid drive letters.

   Thomas Fjellstrom (tfjellstrom at home dot com).
   Wrote the ALSA 0.5.x MIDI driver and added support for ALSA 0.9.x.

   Thomas Klausner (wiz at danbala dot ifoer dot tuwien dot ac dot at).
   Added NetBSD detection.

   Thomas Wolf (two at chello dot at).
   Corrected some errors in the German keyboard mapping and added the
   German translation of the system messages.

   Tim Bird (tbird at caldera dot com).
   Worked on the Linux console port.

   Tim Gunn (timgunn at eastwind dot com dot au).
   Wrote the TGA reading/writing routines.

   Timothy Terriberry (sundance at sprintmail dot com).
   Fixed several bugs in the RGB <-> HSV conversion routines.

   Tobi Vollebregt (email unknown) spotted a bug in ustrerror(), which was
   not returning a pointer to a static buffer.

   Tom Breton (tob at world dot std dot com).
   Added the functionality selection #ifndefs to allegro.h.

   Tom Novelli (tnovelli at cyber3 dot servtech dot com).
   Wrote the original version of the digital MIDI driver.

   Tom St Denis (tomstdenis at yahoo dot com).
   Fixed clipping of transparent objects.

   Tomohiko Sugiura (tmsugi at d4 dot dion dot ne dot jp).
   Added the KEY_ABNT_C1, KEY_YEN, KEY_KANA, KEY_CONVERT, KEY_NOCONVERT
   and other keys to the input handler, organised getting the IF-SEGA
   joystick drivers by S.Suzuki merged into my codebase and added a more
   aggressive Sidewinder joystick driver.

   V Karthik Kumar (karthikkumar at gmail dot com).
   Added a Tamil language greeting to exunicode.

   Ville Skytt (scop at users dot sourceforge dot net).
   Fixed a problem with make install libdir= and modules on Unix systems.

   Vincent Penquerc'h (lyrian at kezako dot net).
   Added the D_DIRTY flag and mouse button press/release events to the GUI
   system, optimised the 256 to truecolor blitting code to avoid repeated
   conversions of the palette table, added scare_mouse_area(), added the
   yield_timeslice() function, added the update selection function to the
   grabber, added the XCRP and YCRP properties to datafiles in general,
   implemented the big header split and did plenty of other things too.

   VolkerOth (VolkerOth at aol dot com).
   Integrated the concepts of scrolling and edit_proc objects.