* reworked shutdown sequence to avoid possible crashes
* use critial section
* do not close the thread when stopping the song.
* add STATE_EXIT, remove hExitEvent
* send SendNotesSoundOff() when the stream stops, refactoring
* Add STATE_STOPPING state and hStoppedEvent event.
* Add StreamStart() and StreamStop() functions.
* Remove SendNotesSoundOff() from ResetDevice().
* implement per-PWAD savegame directories
Fixs #793
* do not report savegame directory
* save savegames in `savegames` subdirectory
* do not call M_ForceUppercase() on string of unknown length
* fix infinite loop for WADs not containing maps
* Use consistent purge tag
* Add comment
* Revert "Add comment"
This reverts commit 070f291d451c197b77886b8fdd7ab544871a68ad.
* Revert "Use consistent purge tag"
This reverts commit 5507bd368674df34390d0cd9c6ffcdc331a368ef.
* Always use `PU_CACHE`
* Update pointer just before drawing
* Use accurate comments
* Use local variables for `PU_CACHE`
* Allocate status bar buffer based on sbar height
* Add warning
* Handle status bar for Doom versions prior to 1.2
* Don't handle Doom versions prior to 1.2
* Prep for additional lumps
* Handle `STARMS`
* Handle bezel `BRDR_B`
* Handle `STFB*`
* Refactor warnings
* Prevent visual artifacts with blocky fuzz
* Simplify
* Apply blocky fuzz fix in `R_DrawMaskedColumn()`
* Revert changes to `R_DrawMaskedColumn()`
* Round up to even value
* Fix autoaim for direct vertical aiming
* Increase autoaim range for direct vertical aiming
* Calculate `actualheight` from current sprite
* Use `actualheight` for lock-on crosshair
* Use `actualheight` for check/aim/shoot
* Remove unused `spriteheight`
* Revert "Fix autoaim for direct vertical aiming"
This reverts commit 3a82190a6a0806f2f031ff23ccf61381b1924279.
* Revert "Increase autoaim range for direct vertical aiming"
This reverts commit 6c0e819567bcd0518709146ba1e97fd53b0653db.