Skip to content

Commit 46281e8

Browse files
committed
MegaZeux 2.81b release.
1 parent c15be73 commit 46281e8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+3196
-1882
lines changed

Makefile.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ GDM2S3M = contrib/gdm2s3m/src
99
MODPLUG = contrib/libmodplug/src
1010

1111
# default target name
12-
TARGET = mzx281
13-
VERSION = 2.81
12+
TARGET = mzx281b
13+
VERSION = 2.81b
1414

1515
ifneq ("${DATE}", "0")
1616
VERSTRING = ${VERSION}\ \(`date +%Y%m%d`\)

arch/Makefile.linux-static

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#
2+
# linux-static makefile generics
3+
#
4+
5+
all: subdir
6+
debug: subdir-debug
7+
8+
# location of strip (must be defined)
9+
STRIP = strip --strip-unneeded
10+
11+
# standard libraries
12+
LIBS = ../${GDM2S3M}/libgdm2s3m.a ../${MODPLUG}/libmodplug.a \
13+
${PREFIX}/lib/libvorbisfile.a ${PREFIX}/lib/libvorbis.a \
14+
${PREFIX}/lib/libogg.a ${PREFIX}/lib/libstdc++.a \
15+
-L${PREFIX}/lib -lSDL -lpthread
16+

config.sh

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,18 +45,25 @@ echo "PREFIX=$PREFIX" >> Makefile.platform
4545

4646
echo "#define CONFDIR \"$SYSCONFDIR/\"" > src/config.h
4747

48-
if [ "$ARCH" = "win32" -o "$ARCH" = "macos" ]; then
48+
#
49+
# Windows, MacOS X and Linux-Static all want to read files
50+
# relative to their install directory. Every other platform
51+
# wants to read from a /usr tree, and rename config.txt.
52+
#
53+
if [ "$ARCH" = "win32" -o "$ARCH" = "macos" -o "$ARCH" = "linux-static" ]; then
4954
echo "#define SHAREDIR \"./\"" >> src/config.h
5055
echo "#define CONFFILE \"config.txt\"" >> src/config.h
51-
fi
52-
53-
if [ "$ARCH" = "linux" ]; then
56+
else
5457
echo "#define SHAREDIR \"$PREFIX/share/megazeux/\"" >> src/config.h
5558
echo "#define CONFFILE \"megazeux-config\"" >> src/config.h
59+
fi
5660

61+
#
62+
# linux target has "make install", which requires these features
63+
#
64+
if [ "$ARCH" = "linux" ]; then
5765
echo "TARGET=`grep TARGET Makefile.in | cut -d ' ' -f 6`" \
5866
>> Makefile.platform
59-
6067
echo "SYSCONFDIR=$SYSCONFDIR" >> Makefile.platform
6168
fi
6269

config.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,11 @@ modplug_resample_mode = cubic
230230

231231
#backup_name = backup
232232

233+
# The extension of backup files (keep this .mzx if you want to be able
234+
# to easily load them)
235+
236+
#backup_ext = .mzx
237+
233238

234239
# Joystick options
235240

docs/changelog.txt

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,69 @@
1+
November 26, 2005 - MZX 2.81b
2+
3+
+ Fixed inability to make proper .savs of worlds with strings (they'd
4+
crash when loaded..)
5+
+ Fixed PC speaker audio bug causing a constant high pitched noise to
6+
be played instead of PC speaker audio sometimes.
7+
+ Fixed some issues with long pathnames.
8+
+ Fixed a bug causing Caverns to crash in recent versions (long story,
9+
it was most likely due to an error in ver1to2)
10+
+ Now when you set mzx_speed in a game you can no longer change the
11+
speed from the F2 menu. Setting mzx_speed to 0 reallows this (and
12+
doesn't set the speed)
13+
+ When loading a game its speed is now set to the speed MZX started
14+
with (whatever's in config.txt, or the default of 4)
15+
+ Added backup_ext config.txt option to specify the extension of backup
16+
files (default is .mzx).
17+
+ Fixed backup_interval for config.txt possibly being broken.
18+
+ Fixed a bug messing up the death board on some old MZX games
19+
(like Nick Brick 2)
20+
+ Escaped more things and made displays always in escaped form for
21+
certain character sequences. It should be impossible to type
22+
non-escaped forms. The following should be used:
23+
\0 for 0 (this probably won't work in strings, but in chars should)
24+
\t for tab (character 9)
25+
\n for newline (character 10)
26+
\r for carriage return (character 13)
27+
\" for double quote
28+
\\ for slash
29+
+ Copy + paste on escaped character won't unescape them anymore.
30+
+ Fixed error message for invalid lines in Robotic
31+
+ Fixed inability to import text files from other directories.
32+
+ Huge overhaul of the source (proper types for things, directions,
33+
equalities, conditions, chest items, and potions), if anything is
34+
suddenly broken now let me know.
35+
+ Made scrolls/signs only display text (letters, numbers, etc) in the
36+
default char set. That should be enough for now.
37+
+ Added mousewheel support for robot editor and robot box display.
38+
+ Fixed inability to load MZMs from other directories in the editor.
39+
+ Wrapped audio stuff in proper mutex, hopefully this fixes some issues
40+
(like crashing when changing mod_frequency a lot).
41+
+ Long current directory paths no longer write out too much in the file
42+
loader (instead the last bit is shown with a ... prefixing the
43+
beginning)
44+
+ Decided to be nice and make board_scan not crash. Don't use it. It's
45+
only there to make one legacy game work. If you use it I will
46+
personally scold you. And don't tell other people to use it (that
47+
means you CJA). Use copy block x y w h "$str" t instead. If you don't
48+
know what that means read the help file, it explains everything.
49+
+ Removed ability to copy + paste after changing board dimensions of the
50+
source under any circumstances (alt + R, alt + Z, import world, import
51+
board)
52+
+ Fixed appearance of ghosts in F10 menu.
53+
+ Prevented char editor from counting moving the cursor as an undo step
54+
if nothing was actually drawn.
55+
+ Made pressing escape on initial char selection/board selection/param
56+
selection for things cause it to cancel placing anything.
57+
+ Made it impossible to set board width/height to 0 again (oops)
58+
+ Made starting lives and starting health take effect immediately for
59+
the first alt + t
60+
+ Added ability to play OGG from alt + l (but not the other mods, don't
61+
want to clutter that up)
62+
+ Made it so if no note follows an embedded SAM in a play string it's
63+
played at native frequency.
64+
+ Accidentally made loading worlds in the editor not change the current
65+
directory, fixed that.
66+
167
November 20, 2005 - MZX 2.81
268

369
+ Fixed a bug where MZX world/save names > 12 chars could cause weird

mzx_help.fil

-271 Bytes
Binary file not shown.

package.sh

Lines changed: 124 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,84 @@
44
#
55
################################################################################
66

7+
function usage {
8+
echo "usage: $0 [-b win32 | macos | linux-i686 | linux-amd64]"
9+
echo
10+
echo " -b Builds a binary distribution for the specified arch."
11+
echo " -h Displays this help text."
12+
exit 0
13+
}
14+
15+
#
16+
# createzip /path/to/SDL.dll
17+
#
18+
function createzip {
19+
#
20+
# Copy SDL here temporarily.
21+
#
22+
cp -f $1 SDL.dll &&
23+
24+
#
25+
# Create the binary package.
26+
#
27+
7za.exe a -tzip dist/$TARGET.zip \
28+
$BINARY_DEPS $DOCS $TARGET.exe SDL.dll &&
29+
30+
#
31+
# Remove SDL.
32+
#
33+
rm -f SDL.dll
34+
}
35+
36+
#
37+
# createtbz tar-name-ext [extra-binary]
38+
#
39+
function createtbz {
40+
#
41+
# create temporary directory
42+
#
43+
mkdir -p dist/$TARGET/docs &&
44+
45+
#
46+
# copy binaries into it
47+
#
48+
cp -f --dereference $BINARY_DEPS $TARGET $2 dist/$TARGET &&
49+
50+
#
51+
# copy docs over
52+
#
53+
cp -f --dereference $DOCS dist/$TARGET/docs &&
54+
55+
#
56+
# tar it up
57+
#
58+
tar -C dist -jcvf dist/$TARGET-$1.tar.bz2 $TARGET &&
59+
60+
#
61+
# now delete temporary dir
62+
#
63+
rm -rf dist/$TARGET
64+
}
65+
66+
#
67+
# in case of error; breakout CODE
68+
#
69+
function breakout {
70+
echo "Error $1 occured during packaging, aborted."
71+
exit $1
72+
}
73+
774
#
875
# The basename for the source and binary packages.
976
#
1077
TARGET=`cat Makefile.in | grep TARGET | cut -d " " -f6`
1178

1279
if [ "$TARGET" == "" ]; then
13-
echo Could not determine version!
14-
exit 1
80+
breakout 1
81+
fi
82+
83+
if [ "$1" == "-h" ]; then
84+
usage
1585
fi
1686

1787
#
@@ -26,12 +96,7 @@ BINARY_DEPS="smzx.pal mzx_ascii.chr mzx_blank.chr mzx_default.chr \
2696
#
2797
# Documents that the binary zip should contain (pathname will be stored too).
2898
#
29-
DOCS="docs/COPYING.doc docs/changelog.txt docs/port.txt docs/macro.txt"
30-
31-
#
32-
# Hack for windows
33-
#
34-
SDL="/usr/lib/SDL.dll"
99+
DOCS="docs/COPYING.DOC docs/changelog.txt docs/port.txt docs/macro.txt"
35100

36101
#
37102
# MegaZeux's build system dependencies; these are packaged in
@@ -50,20 +115,21 @@ SUBDIRS="arch contrib docs"
50115
#
51116
SRC="src/*.cpp src/*.h src/Makefile"
52117

53-
echo Generating sources in $TARGET and binary package with $TARGET.exe..
54-
55118
#
56119
# Do source package.
57120
#
58121
################################################################################
59122

60-
echo Collating sources..
123+
echo "Generating source package for $TARGET.."
61124

62-
if [ -e dist/$TARGET ]; then
63-
rm -rf dist/$TARGET
125+
#
126+
# dist cannot safely exist prior to starting.
127+
#
128+
if [ -d dist ]; then
129+
echo "Destroying dist/.."
130+
rm -rf dist
64131
fi
65132

66-
mkdir -p dist/$TARGET &&
67133
mkdir -p dist/$TARGET/src &&
68134
cp -pv $BINARY_DEPS $BUILD_DEPS dist/$TARGET &&
69135
cp -pvr $SUBDIRS dist/$TARGET &&
@@ -77,30 +143,30 @@ rm -f dist/$TARGET/contrib/libmodplug/src/{*.a,*.o} &&
77143
cp dist/$TARGET/arch/Makefile.dist dist/$TARGET/Makefile.platform
78144

79145
if [ "$?" != "0" ]; then
80-
echo Some error occured during source build, aborted.
81-
exit 2
146+
breakout 2
82147
fi
83148

84149
rm -f dist/$TARGET/src/config.h
85150

86-
echo Creating source tar ${TARGET}src.tar.gz..
151+
echo "Creating source (${TARGET}src.tar.bz2).."
87152

88153
cd dist
89154
tar --exclude CVS -jcvf ${TARGET}src.tar.bz2 $TARGET
90155
cd ..
91156

92157
if [ "$?" != "0" ]; then
93-
echo Some error occured during packaging, aborted.
94-
exit 3
158+
breakout 3
95159
fi
96160

97161
rm -rf dist/$TARGET
98162

99163
echo Built source distribution successfully!
100164

101-
165+
#
102166
# no binary package is required
167+
#
103168
if [ "$1" != "-b" ]; then
169+
echo "Skipping binary package build."
104170
exit 0
105171
fi
106172

@@ -109,23 +175,50 @@ fi
109175
#
110176
################################################################################
111177

178+
echo "Generating binary package for $2.."
179+
112180
#
113-
# Remove destination, a 7zip bug means that preexisting files get updated
114-
# implicitly.
181+
# Windows, using ZIP compression via 7ZIP compressor
115182
#
116-
if [ -e dist/$TARGET.zip ]; then
117-
rm -f dist/$TARGET.zip
183+
if [ "$2" = "win32" ]; then
184+
LIBSDL="/usr/lib/SDL.dll" # Exo's mingw install
185+
createzip $LIBSDL
186+
exit
118187
fi
119188

120189
#
121-
# Create the binary package.
190+
# MacOS X, using tar.bz2 compression.
122191
#
123-
7za.exe a -tzip dist/$TARGET.zip $BINARY_DEPS $DOCS $TARGET.exe
192+
if [ "$2" = "macos" ]; then
193+
LIBSDL="~/dev/lib/libSDL-1.2.0.dylib" # burst or beige's mac
194+
createtbz osx-ppc $LIBSDL
195+
exit
196+
fi
197+
198+
#
199+
# NOTE: THE LINUX BUILDS SHOULD HAVE STDC++ STATICALLY LINKED!
200+
# NOTE: THEY MUST ALSO HAVE RELATIVE DIRECTORY LOOKUPS ENABLED!
201+
#
202+
203+
#
204+
# Linux/i686, using tar.bz2 compression (NO SDL)
205+
#
206+
if [ "$2" = "linux-i686" ]; then
207+
createtbz linux-i686
208+
exit
209+
fi
210+
211+
#
212+
# Linux/amd64, using tar.bz2 compression (NO SDL)
213+
#
214+
if [ "$2" = "linux-amd64" ]; then
215+
createtbz linux-amd64
216+
exit
217+
fi
124218

125219
#
126-
# Hack for SDL inclusion (we don't want to store pathname, and 7zip is too
127-
# lame to have a flag for it).
220+
# Unknown binary arch
128221
#
129-
cp -f $SDL .
130-
7za.exe u -tzip dist/$TARGET.zip SDL.dll
131-
rm -f SDL.dll
222+
echo "Unknown binary architecture.."
223+
echo
224+
usage

0 commit comments

Comments
 (0)