While plain-text versions generally worked, they have been slightly
littered recently with Markdown syntax. We should be able to assume
every Windows user has a web browser and can view these documents
in nicely-formatted HTML pages instead of opening Notepad.
Without doing this, objdump might output text in a non-Unicode locale
and confuse Python. This is particularly the case when running on MS
Windows, where Unicode locales aren't default for non-English regions.
In a previous change (I think d8cfdba5bf ?) I changed the text
entry box for command line arguments to be white on a black
background, with the idea being that it was more similar to a DOS
window. @Linguica reports that this doesn't look nice on Macs which
have low-res displays, so revert back to default colors, and also
change the font to use the system font for user-selected fixed
width. I believe this fixes#858.
Copying DLLs raises the problem of finding where the DLLs are to copy.
With autotools, DLLs are usually installed to ${prefix}/bin alongside the
libraries installed to ${prefix}/lib. So we can use the -L arguments in
LDFLAGS passed to the linker to figure out a likely set of directories to
search in. Hook this into the build, too.
This fixes#764 - we now reliably build Windows .zip packages automatically
bundled with any DLLs which may be required.
As part of the 3.0 release we want to start bundling many more DLL
libraries than we previously did. We can use the 'objdump' command
to recursively find all DLLs that a Windows binary depends upon. To
ensure that we automatically include any DLLs that are needed and
never miss any, add something analogous to the cp-with-libs script we
already use for building Windows binaries.
bzip2 compression has been supported since OS X 10.4 and we don't
distribute binaries for anything older, so there's no reason not to
use this. It makes the generated .dmg files ~40KB smaller.
This file was removed in d8cfdba5bf but was not removed from the
pkg/Makefile.am file that lists the files which are included in
'make dist'. Remove it from there too.
Change preferences window to use standard NSPathControl controls for
selecting IWAD file paths. Make the command line arguments text box
multiline to better support long command lines.
Once the app has been launched at least once, double-clicking upon
an .lmp file should start the Chocolate Doom launcher and add
appropriate "-playdemo" command-line arguments.
Closes: #677.
When using a Mac with a retina display, we want to use the large
textscreen font, albeit in a normal-sized window. The HIGHDPI flag is
the way to do this properly with SDL2; try to set it and if we get the
output screen size we're hoping for, switch to the large font.
As part of this, bump the SDL2 dependency to 2.0.1, since the
SDL_WINDOW_ALLOW_HIGHDPI flag was only added in this version.
The preferences for the OS X launcher are currently stored in a file
ambiguously named "launcher.plist" that could conflict with any other
app on the system that chose to use the same moniker. Use the more
specific identifier of org.chocolate-doom.launcher to avoid conflicts.
Also set NSHumanReadableCopyright so that we get more detail on the
"About" window in the launcher app.
This fixes#570. Thanks to Xeriphas1994 for the suggestion to tweak
the identifier.
This change rewrites and simplifies the copyright headers at the top
of all source files:
* Remove "Emacs style mode select" line; this line was included in
the headers for the originally released source files and appears
to be to set the file type for old versions of Emacs. I'm not sure
entirely why it was required but I don't think it is any more.
* Remove "You should have received a copy of..." text from copyright
header. This refers to the old 59 Temple Place address where the
FSF headquarters used to be located and is no longer correct.
Rather than change to the new address, just remove the paragraph
as it is superfluous anyway. This fixes#311.
* Remove ---- separator lines so that the file headers are barer
and more simplified.
Chocolate Doom now has a bewildering array of different options for
music playback and it's worth documenting them properly. Extend the
existing README.OPL file to describe the other options that are
available, and rename it to README.Music as it's no longer just about
OPL playback.
The OS X launcher used a few unsafe string functions; use snprintf()
or strlcpy,strlcat here - as this is the launcher for OS X we don't
need to care about portability.