Gleb Mazovetskiy
3d308983a8
Migrate to libmpq
...
libmpq is a much simpler alternative to StormLib for reading MPQ archives.
We use our own fork of libmpq: https://github.com/diasurgical/libmpq
Impact:
* DevilutionX is now a lot more portable. Unlike StormLib, libmpq only
needs platform-specific code for Windows.
* Locks around file access **removed** (instead we duplicate the file descriptor for streamed audio only).
* RAM usage is **300 KiB** lower than StormLib.
* Stripped release linux_x86_64 binary is **32 KiB** smaller.
* Amiga build now hangs instead of crashing.
4 years ago
staphen
1142d2ee7b
Hardware rendering for the virtual gamepad
5 years ago
qndel
0ffef697b0
fix destroying renderer
5 years ago
Vladimir Olteanu
bcd7f89319
Have SDLWrap::AllocPalette allocate space for 256 colors by default
5 years ago
Vladimir Olteanu
b87058a717
Error checking for GetOutputSurface
5 years ago
Vladimir Olteanu
d4d89077cd
Don't free PalSurface when it was obtained from SDL_GetVideoSurface
5 years ago
Vladimir Olteanu
4edafd2e37
Make RendererTextureSurface a SDLSurfaceUniquePtr
5 years ago
Vladimir Olteanu
aab7bf6e91
Make Palette a unique ptr
5 years ago
Vladimir Olteanu
4a9ebf1460
Use SDLUniquePtr
5 years ago
Vladimir Olteanu
cc9ea97e0f
Introduce SDLWrap::CreateTexture
5 years ago
Vladimir Olteanu
5d54f8d322
Introduce SDLWrap::CreateRGBSurface
5 years ago
obligaron
26e61b363b
demo: Centralize options override
5 years ago
obligaron
77f9bded9e
Introduce demo namespace
5 years ago
Anders Jenbo
d523fc1e81
Cleanups
5 years ago
Anders Jenbo
eda4a5061e
Implement demo recording and playback
...
This records all keyboard and mouse events to a file and lets you play
it back at a later point with a differen game speed.
5 years ago
Vladimir Olteanu
fae1e4eee5
Replace CCritSect with SdlMutex
5 years ago
Anders Jenbo
a19e7b2a3b
Remove some more use of miniwin
5 years ago
Anders Jenbo
730c0750e7
Apply clang-tidy to code
5 years ago
Anders Jenbo
352a0ca510
Place local symbols in an anonymous namespace
5 years ago
Anders Jenbo
4eabc6024b
Apply various cleanups via Android Studio
5 years ago
Anders Jenbo
ecea12fc15
Clang-tidy: ParameterCase
5 years ago
Gleb Mazovetskiy
cb0dae8590
🚚 Rename `CelOutputBuf` to `Surface` and extract
5 years ago
Anders Jenbo
a350fb0b15
Clang-tidy: FunctionCase part 1
5 years ago
Anders Jenbo
0f2ad469ea
♻️ Clean up variable initialization
5 years ago
Anders Jenbo
f0e5bd819b
💚 Fix debug builds
...
This the change from 8e07ef8fe5 .
5 years ago
Anders Jenbo
8e07ef8fe5
Clang-tidy: misc-unused-parameters
5 years ago
Anders Jenbo
f4f8f22699
Clang-tidy: readability-redundant-control-flow
5 years ago
Epifanov Ivan
b16d3e8b54
Re-enable graphical settings on PSVita ( #2175 )
5 years ago
Gleb Mazovetskiy
b76f7656f3
🧹 LoadArt: BYTE -> uint8_t
...
The change in include order necessitated a couple of other minor
cleanups, one in stubs.h and one in sdl2_to_1_2_backports.h
5 years ago
Gleb Mazovetskiy
cb9da2cadc
🎉 SDL1: An option to render directly to video mem
...
Now that we no longer have a buffer border, we can render directly to
the video memory if the output surface is 8-bit and double buffering is
enabled.
Also adds a flag to force this even when double buffering is disabled,
because some systems emulate 8-bit mode with something else, so the
output is always buffered.
This required a tweak to the cursor to make sure that we clear it after
`SDL_Flip`.
5 years ago
Gleb Mazovetskiy
1181cc68ac
🎉 Remove buffer padding
...
The padding is no longer needed
5 years ago
staphen
eaa5188776
Remove call to gspWaitForVBlank().
5 years ago
Gleb Mazovetskiy
59dd42692f
🚚 Move render.cpp to engine/render/dun_render.cpp
5 years ago
Jmgr
1b7e0d2cb3
Migrate existing log entries
5 years ago
Anders Jenbo
cc164985a3
🎨 Correct type checks in src sub-folder
5 years ago
Anders Jenbo
bb4e1960e7
🎨 modernize-use-nullptr
5 years ago
Gleb Mazovetskiy
64f5e374ff
RenderPresent: Remove the !SDL_MUSTLOCK assert
...
Allows using a hardware surface
5 years ago
Gleb Mazovetskiy
91f8267db9
🧹 SDL1.2: Remove unimplemented SDL_*Window backports
...
Guard around SDL version at call site instead.
5 years ago
Anders Jenbo
8c821e98d3
🚚 Restructure files
5 years ago
Anders Jenbo
997c1dba55
🚚 Split up all.h in to proper header relations
5 years ago
Anders Jenbo
6e1a106a38
🚚 Move header we implement into the project
5 years ago
Anders Jenbo
52401c9677
💚 Correct include headers
5 years ago
Anders Jenbo
dc84643fe6
🚚 Move dx.cpp and sound.cpp back in to Source now that the name space is clean
5 years ago
Anders Jenbo
433edc63ea
♻️ Consistently use pragma once to guard the headers
5 years ago
Anders Jenbo
bfb3c11c2b
🎨 Change namespace to devilution
5 years ago
Anders Jenbo
a2656637e4
🎨 Format source
5 years ago
Juliano Leal Goncalves
800dbce066
♻️ Move options-related structs to new 'options.h' file
5 years ago
Gleb Mazovetskiy
70d1d633bd
Get rid of SCREEN_X / SCREEN_Y
...
GlobalOutputBuffer() now returns a clipped subregion
5 years ago
Gleb Mazovetskiy
cd59a1c323
Completely replace gpBuffer with CelOutputBuffer
...
`CelOutputBuffer` now contains an `SDL_Surface` and an `SDL_Rect`.
We now have access to SDL surface manipulation functions.
`gpBuffer` and `gpBufEnd` are completely gone 🧹
This results in some FPS loss (250 -> 195) recovered in a subsequent
commit.
5 years ago
Trihedraf
a4c34112af
🚩 Add ini toggle for FPS Limit. Enabled by default. ( #1165 )
5 years ago