Maelstrom: Maelstrom-1.4.3-L2.0.7

From 38626786f1a01689ed73a868e57f4b722d610eeb Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Wed, 16 Nov 2022 22:31:15 -0800
Subject: [PATCH] Maelstrom-1.4.3-L2.0.7

---
 .c++howto                                   |   11 +
 Ambrosia.URL                                |    4 +
 Ask.sh                                      |   20 +
 BUGS                                        |   44 +
 Changelog                                   |  236 ++
 Configure.sh                                |  102 +
 Copyright                                   |   17 +
 Doc/Ambrosia.FAQ                            |  416 ++++
 Doc/Maelstrom-Announce                      |   76 +
 Doc/Maelstrom.FAQ                           |  602 +++++
 Doc/Networking.Paper                        |  202 ++
 Doc/Porting.Paper                           |  390 +++
 Doc/Quotes                                  |   25 +
 Doc/RSA.README                              |   17 +
 Doc/Technical_Notes-v1.0                    |  260 ++
 Doc/Technical_Notes-v1.1                    |   26 +
 Doc/Technical_Notes-v2.0                    |  158 ++
 INSTALL                                     |   27 +
 Images/Maelstrom#701.XPM.gz                 |  Bin 0 -> 5549 bytes
 Images/Maelstrom#704.XPM.gz                 |  Bin 0 -> 6086 bytes
 Images/Maelstrom-1#701.XPM.gz               |  Bin 0 -> 5689 bytes
 Images/Maelstrom_Icon#100.cicn              |  Bin 0 -> 1156 bytes
 Images/Maelstrom_Icon#101.cicn              |  Bin 0 -> 1156 bytes
 Images/Maelstrom_Icon#102.cicn              |  Bin 0 -> 1156 bytes
 Images/Maelstrom_Icon#103.cicn              |  Bin 0 -> 1156 bytes
 Images/Maelstrom_Icon#104.cicn              |  Bin 0 -> 1156 bytes
 Images/Maelstrom_Icon#110.cicn              |  Bin 0 -> 1156 bytes
 Images/Maelstrom_Icon#128.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#129.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#130.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#131.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#132.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#133.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#134.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#135.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#136.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Icon#137.cicn              |  Bin 0 -> 76 bytes
 Images/Maelstrom_Sprites#128.XPM.gz         |  Bin 0 -> 201 bytes
 Images/Maelstrom_Sprites#128.icon           |  Bin 0 -> 39 bytes
 Images/Maelstrom_Titles#100.XPM.gz          |  Bin 0 -> 3589 bytes
 Images/Maelstrom_Titles#100.icon            |  Bin 0 -> 23404 bytes
 Images/Maelstrom_Titles#101.XPM.gz          |  Bin 0 -> 3948 bytes
 Images/Maelstrom_Titles#101.icon            |  Bin 0 -> 21204 bytes
 Images/Maelstrom_Titles#102.XPM.gz          |  Bin 0 -> 3448 bytes
 Images/Maelstrom_Titles#102.icon            |  Bin 0 -> 13304 bytes
 Images/Maelstrom_Titles#128.XPM.gz          |  Bin 0 -> 3586 bytes
 Images/Maelstrom_Titles#128.icon            |  Bin 0 -> 16468 bytes
 Images/Maelstrom_Titles#129.XPM.gz          |  Bin 0 -> 20780 bytes
 Images/Maelstrom_Titles#129.icon            |  Bin 0 -> 41188 bytes
 Images/Maelstrom_Titles#130.XPM.gz          |  Bin 0 -> 65055 bytes
 Images/Maelstrom_Titles#130.icon            |  Bin 0 -> 196612 bytes
 Images/Maelstrom_Titles#133.XPM.gz          |  Bin 0 -> 9839 bytes
 Images/Maelstrom_Titles#133.icon            |  Bin 0 -> 196612 bytes
 Images/Maelstrom_Titles#134.XPM.gz          |  Bin 0 -> 6664 bytes
 Images/Maelstrom_Titles#134.icon            |  Bin 0 -> 196612 bytes
 Images/Maelstrom_Titles#135.XPM.gz          |  Bin 0 -> 7003 bytes
 Images/Maelstrom_Titles#135.icon            |  Bin 0 -> 196612 bytes
 Images/Maelstrom_Titles#999-embossed.XPM.gz |  Bin 0 -> 97621 bytes
 Images/Maelstrom_Titles#999.XPM.gz          |  Bin 0 -> 25698 bytes
 Images/Maelstrom_Titles#999.icon            |  Bin 0 -> 91524 bytes
 Mac_Resource.cpp                            |  403 ++++
 Mac_Resource.h                              |   60 +
 Macres.cpp                                  |   54 +
 Maelstrom Fonts                             |  Bin 0 -> 153211 bytes
 Maelstrom Sounds                            |  Bin 0 -> 413235 bytes
 Maelstrom Sprites                           |  Bin 0 -> 729966 bytes
 Maelstrom Titles                            |  Bin 0 -> 294398 bytes
 Maelstrom-1.4.3-L2.0.7.lsm                  |   22 +
 Maelstrom-Scores                            |  Bin 0 -> 280 bytes
 Maelstrom-Scores.high                       |  Bin 0 -> 279 bytes
 Maelstrom.h                                 |   94 +
 Maelstrom_Globals.h                         |  175 ++
 Maelstrom_Inline.h                          |   41 +
 Maelstrom_icon.xpm                          |  119 +
 Maelstrom_sound.cpp                         |  245 ++
 Makefile                                    |  116 +
 Makeflags                                   |   12 +
 Makeflags.in                                |   39 +
 Makeflags.start                             |   12 +
 README                                      |   17 +
 README.Options                              |  102 +
 README.joystick                             |   26 +
 README.network                              |   38 +
 SetDefault.sh                               |  139 ++
 Sprite.h                                    |   40 +
 Utils.cpp                                   |  121 +
 applefile.h                                 |  353 +++
 bitesex.h                                   |  115 +
 buttons.h                                   |   61 +
 checksum.cpp                                |  259 ++
 checksum.h                                  |   11 +
 colortable.h                                | 2346 +++++++++++++++++++
 controls.cpp                                |  661 ++++++
 controls.h                                  |   32 +
 cursor.h                                    |   45 +
 cursor.xbm                                  |   19 +
 cursor_sprite.h                             |   29 +
 cursorm.xbm                                 |   19 +
 dga_framebuf.cpp                            |  675 ++++++
 dga_framebuf.h                              |  161 ++
 dialog.cpp                                  |  170 ++
 dialog.h                                    |  709 ++++++
 fastlogic/.c++howto                         |   11 +
 fastlogic/Makefile                          |   11 +
 fastlogic/README                            |    3 +
 fastlogic/about.cpp                         |  215 ++
 fastlogic/blit.cpp                          | 1421 +++++++++++
 fastlogic/blit.h                            |    5 +
 fastlogic/fastlogic.h                       |   90 +
 fastlogic/game.cpp                          | 1103 +++++++++
 fastlogic/globals.h                         |   75 +
 fastlogic/logic.cpp                         |  115 +
 fastlogic/make.cpp                          |  567 +++++
 fastlogic/make.h                            |   17 +
 fastrand.cpp                                |   93 +
 fontserv.cpp                                |  350 +++
 fontserv.h                                  |   85 +
 framebuf.cpp                                | 1470 ++++++++++++
 framebuf.h                                  |  378 +++
 gifencode.cpp                               |  692 ++++++
 hash.tmpl                                   |  139 ++
 imagedump.cpp                               |  215 ++
 imagedump.h                                 |   23 +
 init.cpp                                    | 1311 +++++++++++
 joystick.h                                  |  233 ++
 keyboard.h                                  |  526 +++++
 linux/joystick.h                            |   54 +
 list.tmpl                                   |  157 ++
 logic.h                                     |   31 +
 main.cpp                                    |  941 ++++++++
 mixer-dma.cpp                               |  411 ++++
 mixer-dma.h                                 |  149 ++
 mixer-nas.cpp                               |  235 ++
 mixer-nas.h                                 |   67 +
 mixer-std.cpp                               |  629 +++++
 mixer-std.h                                 |  196 ++
 mydebug.h                                   |   18 +
 myerror.cpp                                 |   75 +
 myerror.h                                   |   14 +
 netlogic/.c++howto                          |   11 +
 netlogic/Makefile                           |   11 +
 netlogic/README                             |    3 +
 netlogic/about.cpp                          |  215 ++
 netlogic/blit.cpp                           |  160 ++
 netlogic/game.cpp                           | 1133 +++++++++
 netlogic/globals.h                          |   29 +
 netlogic/logic.cpp                          |  115 +
 netlogic/make.cpp                           |  375 +++
 netlogic/make.h                             |   13 +
 netlogic/netlogic.h                         |   45 +
 netlogic/netplay.cpp                        | 1039 ++++++++
 netlogic/netplay.h                          |   18 +
 netlogic/netplayer.cc.idea                  |   88 +
 netlogic/object.cpp                         |  113 +
 netlogic/object.h                           |  299 +++
 netlogic/objects.h                          |  641 +++++
 netlogic/player.cpp                         |  753 ++++++
 netlogic/player.h                           |  152 ++
 netlogic/protocol.h                         |   23 +
 netlogic/shinobi.h                          |  279 +++
 netplayd/Makefile                           |   14 +
 netplayd/netplayd.c                         |  370 +++
 netscore.cpp                                |  287 +++
 netscore.h                                  |   10 +
 newmem.h                                    |   47 +
 public_key.h                                |    8 +
 queue.tmpl                                  |   87 +
 randtest.cpp                                |   15 +
 sample.h                                    |   13 +
 scores.cpp                                  |  301 +++
 scores.h                                    |   15 +
 shared.cpp                                  |  108 +
 sound.cpp                                   |  448 ++++
 sound.h                                     |   91 +
 sound_cmds.h                                |   58 +
 soundres.cpp                                |  257 ++
 soundres.h                                  |   40 +
 stack.tmpl                                  |   73 +
 testlist.cpp                                |   77 +
 utils/Makefile                              |   30 +
 utils/README                                |   10 +
 utils/Sprite.h                              |   14 +
 utils/clut2cmap.c                           |   57 +
 utils/colormap0.XPM.gz                      |  Bin 0 -> 2448 bytes
 utils/colortable.h                          |  267 +++
 utils/countcolors.cc                        |   71 +
 utils/data2array.c                          |   15 +
 utils/dicon.c                               |   57 +
 utils/dppm.c                                |   48 +
 utils/dsprite.c                             |   63 +
 utils/endianicon.c                          |   27 +
 utils/gen_vgakeys.c                         |   89 +
 utils/genkeypair.c                          |   98 +
 utils/makecmap.c                            |   91 +
 utils/matchcolors.c                         |   63 +
 utils/mergescores.c                         |   78 +
 utils/newcolors.h                           |  259 ++
 utils/populatecmap.c                        |   62 +
 utils/printscores.c                         |   35 +
 utils/swap.c                                |   19 +
 utils/test-asyncio.c                        |  104 +
 utils/verifycolors.c                        |   24 +
 utils/xpm2icon.c                            |  116 +
 utils/xpm2sprite.c                          |  154 ++
 v_framebuf.cpp                              |  138 ++
 v_framebuf.h                                |   39 +
 vga_framebuf.cpp                            |  774 ++++++
 vga_framebuf.h                              |  179 ++
 vga_keys.h                                  |   34 +
 x11_framebuf.cpp                            |  965 ++++++++
 x11_framebuf.h                              |   89 +
 211 files changed, 34201 insertions(+)
 create mode 100644 .c++howto
 create mode 100644 Ambrosia.URL
 create mode 100644 Ask.sh
 create mode 100644 BUGS
 create mode 100755 Changelog
 create mode 100644 Configure.sh
 create mode 100755 Copyright
 create mode 100644 Doc/Ambrosia.FAQ
 create mode 100755 Doc/Maelstrom-Announce
 create mode 100755 Doc/Maelstrom.FAQ
 create mode 100755 Doc/Networking.Paper
 create mode 100644 Doc/Porting.Paper
 create mode 100644 Doc/Quotes
 create mode 100755 Doc/RSA.README
 create mode 100644 Doc/Technical_Notes-v1.0
 create mode 100644 Doc/Technical_Notes-v1.1
 create mode 100644 Doc/Technical_Notes-v2.0
 create mode 100755 INSTALL
 create mode 100644 Images/Maelstrom#701.XPM.gz
 create mode 100644 Images/Maelstrom#704.XPM.gz
 create mode 100644 Images/Maelstrom-1#701.XPM.gz
 create mode 100644 Images/Maelstrom_Icon#100.cicn
 create mode 100644 Images/Maelstrom_Icon#101.cicn
 create mode 100644 Images/Maelstrom_Icon#102.cicn
 create mode 100644 Images/Maelstrom_Icon#103.cicn
 create mode 100644 Images/Maelstrom_Icon#104.cicn
 create mode 100644 Images/Maelstrom_Icon#110.cicn
 create mode 100644 Images/Maelstrom_Icon#128.cicn
 create mode 100644 Images/Maelstrom_Icon#129.cicn
 create mode 100644 Images/Maelstrom_Icon#130.cicn
 create mode 100644 Images/Maelstrom_Icon#131.cicn
 create mode 100644 Images/Maelstrom_Icon#132.cicn
 create mode 100644 Images/Maelstrom_Icon#133.cicn
 create mode 100644 Images/Maelstrom_Icon#134.cicn
 create mode 100644 Images/Maelstrom_Icon#135.cicn
 create mode 100644 Images/Maelstrom_Icon#136.cicn
 create mode 100644 Images/Maelstrom_Icon#137.cicn
 create mode 100644 Images/Maelstrom_Sprites#128.XPM.gz
 create mode 100644 Images/Maelstrom_Sprites#128.icon
 create mode 100644 Images/Maelstrom_Titles#100.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#100.icon
 create mode 100644 Images/Maelstrom_Titles#101.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#101.icon
 create mode 100644 Images/Maelstrom_Titles#102.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#102.icon
 create mode 100644 Images/Maelstrom_Titles#128.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#128.icon
 create mode 100644 Images/Maelstrom_Titles#129.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#129.icon
 create mode 100644 Images/Maelstrom_Titles#130.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#130.icon
 create mode 100644 Images/Maelstrom_Titles#133.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#133.icon
 create mode 100644 Images/Maelstrom_Titles#134.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#134.icon
 create mode 100644 Images/Maelstrom_Titles#135.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#135.icon
 create mode 100644 Images/Maelstrom_Titles#999-embossed.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#999.XPM.gz
 create mode 100644 Images/Maelstrom_Titles#999.icon
 create mode 100755 Mac_Resource.cpp
 create mode 100755 Mac_Resource.h
 create mode 100644 Macres.cpp
 create mode 100644 Maelstrom Fonts
 create mode 100644 Maelstrom Sounds
 create mode 100644 Maelstrom Sprites
 create mode 100644 Maelstrom Titles
 create mode 100755 Maelstrom-1.4.3-L2.0.7.lsm
 create mode 100644 Maelstrom-Scores
 create mode 100644 Maelstrom-Scores.high
 create mode 100644 Maelstrom.h
 create mode 100644 Maelstrom_Globals.h
 create mode 100644 Maelstrom_Inline.h
 create mode 100644 Maelstrom_icon.xpm
 create mode 100644 Maelstrom_sound.cpp
 create mode 100644 Makefile
 create mode 100644 Makeflags
 create mode 100644 Makeflags.in
 create mode 100644 Makeflags.start
 create mode 100755 README
 create mode 100644 README.Options
 create mode 100755 README.joystick
 create mode 100644 README.network
 create mode 100644 SetDefault.sh
 create mode 100644 Sprite.h
 create mode 100644 Utils.cpp
 create mode 100644 applefile.h
 create mode 100644 bitesex.h
 create mode 100644 buttons.h
 create mode 100644 checksum.cpp
 create mode 100644 checksum.h
 create mode 100644 colortable.h
 create mode 100644 controls.cpp
 create mode 100644 controls.h
 create mode 100644 cursor.h
 create mode 100644 cursor.xbm
 create mode 100644 cursor_sprite.h
 create mode 100644 cursorm.xbm
 create mode 100644 dga_framebuf.cpp
 create mode 100644 dga_framebuf.h
 create mode 100644 dialog.cpp
 create mode 100644 dialog.h
 create mode 100644 fastlogic/.c++howto
 create mode 100644 fastlogic/Makefile
 create mode 100644 fastlogic/README
 create mode 100644 fastlogic/about.cpp
 create mode 100644 fastlogic/blit.cpp
 create mode 100644 fastlogic/blit.h
 create mode 100644 fastlogic/fastlogic.h
 create mode 100755 fastlogic/game.cpp
 create mode 100644 fastlogic/globals.h
 create mode 100644 fastlogic/logic.cpp
 create mode 100644 fastlogic/make.cpp
 create mode 100644 fastlogic/make.h
 create mode 100644 fastrand.cpp
 create mode 100644 fontserv.cpp
 create mode 100755 fontserv.h
 create mode 100644 framebuf.cpp
 create mode 100644 framebuf.h
 create mode 100644 gifencode.cpp
 create mode 100644 hash.tmpl
 create mode 100644 imagedump.cpp
 create mode 100644 imagedump.h
 create mode 100644 init.cpp
 create mode 100644 joystick.h
 create mode 100644 keyboard.h
 create mode 100644 linux/joystick.h
 create mode 100644 list.tmpl
 create mode 100644 logic.h
 create mode 100755 main.cpp
 create mode 100644 mixer-dma.cpp
 create mode 100644 mixer-dma.h
 create mode 100644 mixer-nas.cpp
 create mode 100644 mixer-nas.h
 create mode 100644 mixer-std.cpp
 create mode 100644 mixer-std.h
 create mode 100644 mydebug.h
 create mode 100644 myerror.cpp
 create mode 100644 myerror.h
 create mode 100644 netlogic/.c++howto
 create mode 100644 netlogic/Makefile
 create mode 100644 netlogic/README
 create mode 100644 netlogic/about.cpp
 create mode 100644 netlogic/blit.cpp
 create mode 100755 netlogic/game.cpp
 create mode 100644 netlogic/globals.h
 create mode 100644 netlogic/logic.cpp
 create mode 100644 netlogic/make.cpp
 create mode 100644 netlogic/make.h
 create mode 100644 netlogic/netlogic.h
 create mode 100644 netlogic/netplay.cpp
 create mode 100644 netlogic/netplay.h
 create mode 100644 netlogic/netplayer.cc.idea
 create mode 100644 netlogic/object.cpp
 create mode 100644 netlogic/object.h
 create mode 100644 netlogic/objects.h
 create mode 100644 netlogic/player.cpp
 create mode 100644 netlogic/player.h
 create mode 100644 netlogic/protocol.h
 create mode 100644 netlogic/shinobi.h
 create mode 100644 netplayd/Makefile
 create mode 100644 netplayd/netplayd.c
 create mode 100644 netscore.cpp
 create mode 100644 netscore.h
 create mode 100644 newmem.h
 create mode 100644 public_key.h
 create mode 100644 queue.tmpl
 create mode 100644 randtest.cpp
 create mode 100644 sample.h
 create mode 100644 scores.cpp
 create mode 100644 scores.h
 create mode 100644 shared.cpp
 create mode 100644 sound.cpp
 create mode 100644 sound.h
 create mode 100644 sound_cmds.h
 create mode 100755 soundres.cpp
 create mode 100644 soundres.h
 create mode 100644 stack.tmpl
 create mode 100644 testlist.cpp
 create mode 100644 utils/Makefile
 create mode 100644 utils/README
 create mode 100644 utils/Sprite.h
 create mode 100644 utils/clut2cmap.c
 create mode 100644 utils/colormap0.XPM.gz
 create mode 100644 utils/colortable.h
 create mode 100644 utils/countcolors.cc
 create mode 100644 utils/data2array.c
 create mode 100644 utils/dicon.c
 create mode 100644 utils/dppm.c
 create mode 100644 utils/dsprite.c
 create mode 100644 utils/endianicon.c
 create mode 100644 utils/gen_vgakeys.c
 create mode 100644 utils/genkeypair.c
 create mode 100644 utils/makecmap.c
 create mode 100644 utils/matchcolors.c
 create mode 100644 utils/mergescores.c
 create mode 100644 utils/newcolors.h
 create mode 100644 utils/populatecmap.c
 create mode 100644 utils/printscores.c
 create mode 100644 utils/swap.c
 create mode 100644 utils/test-asyncio.c
 create mode 100644 utils/verifycolors.c
 create mode 100644 utils/xpm2icon.c
 create mode 100644 utils/xpm2sprite.c
 create mode 100644 v_framebuf.cpp
 create mode 100644 v_framebuf.h
 create mode 100644 vga_framebuf.cpp
 create mode 100644 vga_framebuf.h
 create mode 100644 vga_keys.h
 create mode 100644 x11_framebuf.cpp
 create mode 100644 x11_framebuf.h

diff --git a/.c++howto b/.c++howto
new file mode 100644
index 0000000..8c0d7de
--- /dev/null
+++ b/.c++howto
@@ -0,0 +1,11 @@
+
+###########################################################################
+#
+# Some consistent rules for building C++ files:
+
+.SUFFIXES: .cpp
+
+.cpp.o:
+	$(CXX) $(CFLAGS) -c $<
+
+###########################################################################
diff --git a/Ambrosia.URL b/Ambrosia.URL
new file mode 100644
index 0000000..1a4f0db
--- /dev/null
+++ b/Ambrosia.URL
@@ -0,0 +1,4 @@
+Official Ambrosia Web Site:
+http://www.ambrosiasw.com/
+Unofficial Ambrosia Web Site:
+http://www.digitmad.com/ambrosia/ambrosia.html
diff --git a/Ask.sh b/Ask.sh
new file mode 100644
index 0000000..65353c9
--- /dev/null
+++ b/Ask.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+#
+# Ask a question and return yes or no
+
+#Ask()
+#{
+	prompt=$1
+	default=$2
+	if [ "`echo '\c'`" = "" ]; then
+		echo "$prompt [$default] \c"	>/dev/tty
+	else
+		echo -n "$prompt [$default] "	>/dev/tty
+	fi
+	read answer
+	if [ "$answer" = "" ]; then
+		echo $default
+	else
+		echo $answer
+	fi
+#}
diff --git a/BUGS b/BUGS
new file mode 100644
index 0000000..7b2ebed
--- /dev/null
+++ b/BUGS
@@ -0,0 +1,44 @@
+
+
+			Known Maelstrom Bugs
+                       ----------------------
+
+Generic bugs:
+
+	If Maelstrom crashes, your keyboard will be left in no-keyrepeat
+	mode.  To fix this, just do 'xset r' after Maelstrom crashes.
+
+	Also, during the Maelstrom game, keyrepeat is turned off.
+
+   *	Sometimes asteroids leave trails behind them when they go offscreen.
+
+
+Netlogic bugs:
+
+	The identifying blue dot will appear in single player mode if
+	compiled with multiplayer support.
+
+
+Linux SVGA version:
+
+   *	For some reason, the key release events are occasionally being missed.
+	Sometimes a key will get "stuck" between levels, or even in the
+	middle of a game.  Just press the key and release it again.
+
+
+DEC version:
+
+   *	Maelstrom fading has crashed twm on at least two occasions.
+	Just run Maelstrom with the '-nofade' option if you run twm
+	or the fading crashes your machine.
+
+	No sound support.
+
+
+HPUX version:
+
+	Sound sucks.  Turn the volume off by typing '0' on the main menu.
+
+
+[*]  The reason for this bug is not currently known.
+
diff --git a/Changelog b/Changelog
new file mode 100755
index 0000000..ce18a92
--- /dev/null
+++ b/Changelog
@@ -0,0 +1,236 @@
+
+Maelstrom 1.4.3 -- Linux version
+
+Version 2.0.7:
+	*	Added a netscore environment variable: MAELSTROM_SCORESERVER
+	*	Fixed long-standing 24/32 bpp X display detection problem
+	*	Fixed minor compilation problems with modern Linux systems
+	*	Moved error routines into separate file - fixed PPC Linux
+
+Version 2.0.6:
+	*	Maelstrom no longer eats CPU while paused -- Oops. :)
+	*	Added interlaced pixel doubling for faster doubled display
+	*	Added pixel doubling to Win95 framebuffer code
+	*	Ported to SunOS and Sparc Linux
+	*	Fixed infinite recursion on sound callbacks.
+
+Version 2.0.5b:
+	*	Fixed silly 16 bpp blit code bug
+	*	Fixed 'make install' -- uses "install" by default
+	*	Fixed segmentation fault in the SVGAlib framebuf driver
+	*	Enhanced the DGA code for HiColor and TrueColor depths
+	*	GREATLY increased DGA speed for linear video cards!
+
+Version 2.0.5:
+	*	Added PIXEL_DOUBLING back in the X11 display driver
+	*	The DISPLAY environment variable overrides Linux console
+	*	Steel asteroids really aren't supposed to last forever. :)
+	*	Saucer shots don't kill when saucer is destroyed (netlogic)
+	*	Optimized framebuffer blitting code
+	*	Fixed completely white screen on big-endian systems (Sun/SGI)
+	*	Fixed bug in right edge clipping
+	*	GIF format screendumps from high bit-depths okay (slow!)
+	*	Linux sound defaults to 8 bit again -- sounds better.
+
+Version 2.0.4:
+	*	Added 32 bit TrueColor X11 display support
+	*	FrameBuf now supports video memory locking and pitch
+	*	FrameBuf::ReColor() maps image pixels to screen pixels
+	*	Optimized the compiled sprite engine
+	*	Speeded up truecolor video, slightly slowed 256 color video
+	*	Removed pixel doubling support
+	*	Removed background pixmap shared memory support (not needed)
+	*	Stars!! Lots and lots of Stars!!!
+	*	Ported to Windows 95 (unreleased)
+
+Version 2.0.3b:
+	*	Fixed bug in which VGA keys must be pressed twice to start.
+	*	Added crappy VGA 16 color mode - yuck.  LOW_RES is better.
+
+Version 2.0.3a:
+	*	Fixed segmentation fault in mixer-dma.cc
+	*	Added error checking to X_image creation.
+	*	Added native support for FreeBSD and SVR4.2
+			(Thanks to Stephen Hocking <sysseh@devetir.qld.gov.au>)
+
+Version 2.0.3:
+	*	Fixed silly full-screen window bug
+	*	Bonuses, comets and gravity don't shake and shimmy no mo'
+	*	Very slightly improved NAS support .. yech, don't use it.
+	*	Added experimental DMA audio support for Linux - nice. :)
+	*	New life accounting during bonus screen works now.
+	*	Cleaned up the Makefile logic
+
+Version 2.0.2:
+	*	Kjetil Torgrim Homme added compiler-specific cleanup.
+	*	Multiplayer scores are now updated properly.
+	*	Fixed asteroid counting problem after an explosion.
+	*	Set default fading to pixellated, added -realfade option.
+
+Version 2.0.0:	Beta!
+	*	Added a network address server for multi-player games
+	*	Cleaned up my code some, gcc -Wall is a bit cleaner. :-)
+	*	Fixed problem on SGI where make would always recompile.
+	*	Ported to AIX 3.2 with gcc 2.7.2 (No sound)
+			(Thanks to C. Chan <chan@alfrothul.uchicago.edu>)
+	*	Updated some documentation. :)
+	*	Added slower smoother double-buffering for SVGA graphics
+	*	Added cheap, slow, low resolution SVGA mode (320x240x256)
+			(Inspired by Scott Stone <sstone@pht.com>)
+	*	Added experimental 8-bit XFree86 3.1.2E DGA support.
+	*	Added "-displaytype" option to query current display.
+
+Version 2.0.0:	Alpha!
+	*	New!! Multi-player mode!  Up to 3 players!  Has Bugs!! :)
+	*	Added some basic joystick support for Linux.
+	*	Added a network-based score registration server.
+	*	Added a '-printscores' command line option.
+	*	Added a '-netscores' command line option.
+	*	Added the ability to display on remote X terminals.
+	*	Added a '-display <display>' command line option.
+	*	Fixed a minor high score name entering bug.
+	*	Fixed endian compile problems on HPUX.
+	*	More robust data file searching (files can contain '_')
+	*	Time bug fix -- by Warwick Allinson (warwick@cs.uq.oz.au)
+	*	Added better fading code for the -nofade option
+			This is slow on 16-24 bit displays.  Comments?
+	*	Maelstrom now understands AppleDouble resource forks
+	*	Finally fixed "press Enter after switching consoles" bug
+			Inspired by Tessa Lau (tlau@cs.washington.edu)
+	*	Finally fixed "stuck keys between levels" SVGA problem.
+	*	Hopefully sped up SVGAlib refresh (removed a mem copy)
+	*	A few code cleanups.
+	*	Never seeded random number generator in prior versions.
+	*	NEW!  Now using the original FastRandom() function, 
+			for more Macintosh fidelity. :-)
+	*	Finally fixed SGI sound!
+		 Thanks to great work by Tom Anderson (tom@proximity.com.au)
+		 and original code boost by Alain Schmidt (alainrd@trix.be)
+	*	Sound server enhancements by Tom Anderson:
+			Mellowed out sound volume for less clipping.
+			Added 16 bit sound for SGI's
+			Added POSIX signal support to the sound server.
+			Created a portable usleep() function (select() based)
+	*	Added Screen capture during game - triggered by hitting F3
+			Saves to XPM or GIF format (compile time option)
+	*	Added the pixel fade feature to SVGA mode.
+	*	Added a Configure script that autodetects your system.
+	*	Fixed some timing bugs in Delay()
+	*	Optimized some of the sprite blitting.
+
+Version 1.1.4:
+	*	Fixed a time related bug in "long" v.s. "unsigned long"  !!??
+	*	Removed an offending "#include <vga.h>" from main.cc
+	*	Improved SVGA refresh algorithm (Thanks ARDI!)
+			(too slow on my machine -- #ifdef'd out)
+	*	Fixed a bug in shots not wrapping vertically
+			(Thanks to Dave Ljung for finding that)
+
+Version 1.1.3: 
+	*	Fourth Public Release: 12/10/95
+	*	Fixed asynchronous I/O problem on Solaris.
+	*	Finished port of Maelstrom to Solaris 2.4
+	*	Finished port of Maelstrom to SGI (IRIX 5.3
+	*	Ported Maelstrom to ULTRIX 4.4	(No sound)
+	*	Ported Maelstrom to HPUX 9.01	(No sound)
+	*	Added a '-version' command line option.
+	*	Added a '-fullscreen' command line option for X11.
+	*	Added a '-nofade' command line option.
+	*	If just '-gamma' is given, we print the current gamma level.
+	*	Fixed a problem with '-privatecmap' where the mouse had
+		to leave and re-enter the window to update the colormap.
+	*	Added pixel doubling support -- compile-time option.
+	*	Maelstrom pauses while iconified under X11.
+	*	If Maelstrom is on a Linux console, it will run in SVGA mode.
+	*	Oops, fixing Trident SVGA broke Mach32 SVGA.  Fixed.
+	*	Added /dev/audio sound support.
+			Thanks to 'rockndiamonds' and 'snd2au.c'  - Thanks! :)
+Copyright for snd2au.c:
+/************************************************************************/
+/*      Copyright 1989 by Rich Gopstein and Harris Corporation          */
+/*                                                                      */
+/*      Permission to use, copy, modify, and distribute this software   */
+/*      and its documentation for any purpose and without fee is        */
+/*      hereby granted, provided that the above copyright notice        */
+/*      appears in all copies and that both that copyright notice and   */
+/*      this permission notice appear in supporting documentation, and  */
+/*      that the name of Rich Gopstein and Harris Corporation not be    */
+/*      used in advertising or publicity pertaining to distribution     */
+/*      of the software without specific, written prior permission.     */
+/*      Rich Gopstein and Harris Corporation make no representations    */
+/*      about the suitability of this software for any purpose.  It     */
+/*      provided "as is" without express or implied warranty.           */
+/************************************************************************/
+
+Version 1.1.2:
+	*	Third Public Release: 10/17/95
+	*	Fixed a compiler warning on vga_frambuf.cc
+	*	Changed installation directory to /usr/local/bin
+	*	Beautified the 'install' target in the Makefile
+	*	Added 'uninstall' target to Makefile
+
+	*	Bugs known in Linux X11 version:
+			Iconifying Maelstrom doesn't put it in pause mode.
+
+	*	Bugs known in Linux SVGA version:  (unknown causes)
+			Keys can get "stuck" between levels.
+			Console switching doesn't always pause the game
+			After switching consoles, keystrokes cause SIGQUIT ??
+
+	*	Sort-of ported Maelstrom to Solaris 2.4
+		Known bugs:	(unknown causes)
+			Setting asynchronous I/O in Sound Server returns EINVAL
+			Sound support not tested
+
+	*	Sort-of ported Maelstrom to the SGI
+		Known bugs:	(unknown causes)
+			Fading doesn't work, and neither does -privatecmap
+			Some scores are reported as low negative numbers
+			No sound support
+
+	*	Sort-

(Patch may be truncated, please check the link at the top of this post.)