* First stab at CMake
It builds on Linux, and cross-compiles to Windows as well using the
provided toolchain files. convert-icon is also fixed up with argument
count checking and modern format strings, along with all flake8 warnings
fixed.
* Fix Visual Studio compilation
* Add a newline to gitignore
* Build system updates
- Add documentation.
- Add options for defines.
- Automatically copy DLL files to binary directory.
- Add preliminary CPack support which packages the binary plus docs and
DLL files.
* Fix SDL2_FILES conditional
* Build Windows and Linux packages
We use our own Python script instead of unix2dos. Also, a few other
random fixes came along for the ride.
* Fix up warnings and defines on MSVC
* Update Travis to use CMake
* Remove automake and autoconf files
* Yet more build system updates
- Add docs, examples, and desktop stuff to binary packages.
- Get rid of HAVE_CONFIG_H.
- Change HAVE_DLOPEN to something more CMake-like.
- Add optional targets for most of the tools.
* Ignore files for source package
* Add to README file
* Get rid of BETA, DOGS, and fix another Automake straggler
* Prevent in-tree builds
Fixes#21
* Convert all DOS-format text files to Unix-format
* pkg/win32: fix clean target to remove staging directory
* pkg/win32: Include docs and examples directories
* pkg: get needed ldflags and copy woof.exe to staging
Repairs actual operation of the win32 packaging script
* Include the pkg subdirectory so it gets included in `make dist`
After this commit, it seems I am as close to Vanilla Doom compatibility
as I can get without implementing overflow emulation for REJECT, SPECHITS,
INTERCEPTS, etc. Not sure if I want to go this way at all.
Fixes#39.
* make "3-key doors work with only 2 keys" bug optional, fixes#38
* Introduce a compatibility flag for MBF's most famous bug and add it
to the second menu page in the Doom Compatibility section.
* reverse comp[] logic
* add (config_t *) pointer casts
* improve menu item description
* rename 3keydoors to 3keydoor, matching the menu item
* comments
* apply Vanilla demo fixes
This applies all the fixes found on
http://prboom.sourceforge.net/mbf-bugs.html
Of the demos used for regression checking in Chocolate Doom's
quickcheck directory, the AV and D2TWID demos now pass. The others
still desync sooner or later. :(
* add compatibility changes for EV_VerticalDoor() and EV_BuildStairs()
This time directly taken from PrBoom+.
* cosmetics
* revert major changes to EV_VerticalDoor() and EV_BuildStairs()
I'll probably just inject Vanilla code in there. I somehow prefer
this approach over PrBoom+'s if-the-else hell.
* unifying comments
This implements the subtle differences found in the three variants
of DOOM.EXE version 1.9. The code was taken from PrBoom+ and
Chocolate Doom, respectively. I decided to go without the original
comments, the code has been commented well enough in other source
ports. @fragglet Do you think these are all the relevant differences?
* add joystick buttons for automap and main menu
Fixes#27
* joystick button triggers either escape or menu_escape
* get away with only one GetButtons() function
* rename MAX_JB to MAX_JSB
Joystick buttons are called JSB in the key binding menu,
so we stay consistent with this.
* print PREV and NEXT on separate lines in the weapon key binbing screen
Thanks @JNechaevsky for noticing, fixes#37.