Commit Graph

547 Commits

Author SHA1 Message Date
Michael Lutz 05bc2ed7cb Codechange: Replace custom thread code with C++11 thread objects.
We assume a conforming C++11 compiler environment that has a valid <thread>-header.
Failure to run a real thread is handled gracefully.
2019-04-06 11:27:39 +02:00
glx22 90a91f1d0d
Fix: [MSVC] don't force SDK version (#7474) 2019-04-05 21:07:06 +02:00
Charles Pigott fe448a2616 Remove: OPF 2019-03-16 22:30:11 +00:00
Patric Stout 6a897a2a9b Fix: don't include xaudio2 if you are not going to compile it
This is more in trend with other files, where if the driver is not
selected, we don't even attempt to compile it.
2019-03-11 10:16:00 +01:00
Patric Stout 7adae09897 Codechange: liblzma is called liblzma, how ever strange that might be
It is the only library we use that calls itself with 'lib' in the
name. This might be confusing, but with the arrival of cmake a lot
of these things are automated. And detection will find 'liblzma',
not 'lzma', like with 'lzo', 'zlib', ..
2019-03-11 10:16:00 +01:00
Patric Stout dcc5183dd0 Codechange: make clear that SSE is a flag you can switch 2019-03-11 10:16:00 +01:00
Patric Stout 75a86d8460 Codechange: the flag is not if you have threads, but if you want to use them 2019-03-11 10:16:00 +01:00
Niels Martin Hansen e8d397e4ee Codechange: Make a merged k-d tree index of all viewport signs 2019-03-09 20:27:11 +01:00
Niels Martin Hansen d84b67e54d Codechange: Make a k-d tree index of stations 2019-03-09 20:27:11 +01:00
Niels Martin Hansen 7b56be0f3a Codechange: Make a k-d tree index of towns 2019-03-09 20:27:11 +01:00
Niels Martin Hansen d7522e5e8f Codechange: Add a k-d tree generic data structure 2019-03-09 20:27:11 +01:00
Peter Nelson 3542ed53d4 Add: BitmapTileArea and Iterator to handle sparse tile areas. 2019-03-09 16:33:47 +00:00
Patric Stout aa350528df Remove: libtimidity support (NOT timidity support)
libtimidity was introduced with the support for PSP. PSP has been
dropped almost a year ago, but this music driver was not. This
corrects that oversight.

timidity (via extmidi) still works fine. This purely removes the
libtimidity support, which was only really available for PSP.
2019-03-05 22:03:00 +01:00
Patric Stout f58db44ff2 Remove: BeOS support (deprecated by Haiku)
In 10 years there is no commit to change how BeOS works, and we
have no active maintainer for it. It is unlikely it works in its
current state (but not impossible).

With the arrival of SDL2 (and removal of SDL), BeOS is no longer
support. SDL2 suggests to use Haiku instead of BeOS.
2019-03-05 22:03:00 +01:00
frosch 39cda89e85
Add: Detect stable tags automatically, and set the 'stable' flag in '_openttd_newgrf_version' accordingly. (#7317) 2019-03-03 20:08:28 +01:00
Charles Pigott c3bc7d657e Codechange: Remove ability for SDL to be dynamically loaded on Windows 2019-03-02 17:13:05 +01:00
Niels Martin Hansen 46d97239c4 Codechange: Include flag for whether a build is of a tagged revision 2019-02-12 21:32:43 +00:00
glx 2ff10327d7 Fix: projects/generate now keeps the line ending 2019-02-10 12:44:10 +01:00
glx 748d72202a Fix: generate and generate.vbs were sorting differently 2019-02-10 12:44:10 +01:00
glx 0df95811ce Fix: generate.vbs used wrong data for basesets_vs142 2019-02-10 12:44:10 +01:00
glx bf5898018f Fix #7171: incorrect modified status with determineversion.vbs 2019-02-03 19:53:36 +01:00
Niels Martin Hansen 67c6f945fb Change: Include the full raw git revision hash in rev.cpp 2019-02-03 18:00:16 +01:00
Niels Martin Hansen 7c6e10dbfc
Update: Visual Studio 2019 solution file version upgrade (#7135) 2019-01-29 17:18:12 +01:00
Niels Martin Hansen 65782af2f4 Add: Visual Studio 2019 project files 2019-01-26 14:56:35 +01:00
Peter Nelson 1334cfb3e5 Change: Always build baseset metadata, instead of including it in the repo.
This adds a script and project files to generate these files within MSVC.
2019-01-25 22:28:39 +00:00
glx 255fa6e1a8 Fix: enable DPI-awareness for MINGW builds 2019-01-25 16:59:41 +01:00
Jonathan G Rennison db924a4681 Codechange: [Blitter] Change DrawLine to be templated
This is remove per-pixel overheads due to use of the SetPixel virtual
method.
These overheads included:
* expensive virtual method call which prevents inlining
* palette lookup for every pixel
* branch on whether palette animation is enabled on every pixel

Regenerate project files.
2019-01-24 11:12:06 +00:00
Peter Nelson 41d47926b1 Cleanup #6960: Remove parts of generate used only for MSVC pre-2015. 2019-01-21 17:40:44 +00:00
glx 0e0476184e Cleanup: remove useless and outdated 'generate' projects outputs 2019-01-17 23:02:11 +00:00
glx 98308fe260 Fix 7f54c59a6: use some consistency for project dependencies determination 2019-01-17 23:02:11 +00:00
Peter Nelson 806e7d25dd Change: Use GUITimer class instead of bare int/uints. 2019-01-11 11:56:21 +00:00
glx c0a655225d Add: [Win32] regression project files 2019-01-05 18:10:14 +01:00
glx e902a1cc57 Fix: [WIN32] no need to define WIN32 in project files 2018-12-27 18:09:16 +01:00
glx 3be6ab555c Change: use vcpkg integration in Visual Studio
Removes the need for us to provide OpenTTD-useful package
2018-12-26 17:29:11 +01:00
Niels Martin Hansen 476643bfa5 Remove: Visual Studio project files for earlier than 2015 2018-11-18 19:51:51 +01:00
Niels Martin Hansen 86bea59962 Update: Add missing newline at end of some project files 2018-11-18 19:51:51 +01:00
Niels Martin Hansen 81b2ddd0ab Fix: Fluidsynth should not be added to VC project files 2018-11-01 23:20:44 +01:00
J0an Josep 8975318286 Fix 2a868b9f3b8e3b5f8b9e5f728f628ec88fd5e3ad: Expose widgets and windows to scripts and fix documentation. 2018-07-23 20:32:18 +02:00
Niels Martin Hansen 2a868b9f3b Feature: Framerate display window (#6822)
Frame rate and various game loop/graphics timing measurements and graphs. Accessible via the Help menu, and can print some stats in the console via the fps command.
2018-07-19 21:17:07 +02:00
Michael Lutz eec3f40931 Change: [Win32] Use Uniscribe instead of ICU for text caret handling.
This removes the need for the ICU lib on Windows.
2018-06-06 21:37:09 +02:00
Michael Lutz 33829dc6ab Change: [Win32/MSVC] Make the Uniscribe text layouter the windows default and remove usage of the deprecated ICU layout libs. 2018-06-06 21:37:09 +02:00
Michael Lutz 768a31bfe3 Add: [Win32] Text layout using the native Windows Uniscribe library.
Uniscribe is sometimes producing different results compared to ICU, especially
when RTL and LTR content is mixed. Comparing the results to other programs
(like editors or web browsers) leads me to believe that the result are at least
not worse than ICU and possibly better.
2018-06-06 21:37:09 +02:00
Michael Lutz a6300fe70b Change: [Win32] Enable DirectMusic driver for Win64. 2018-05-26 22:28:01 +02:00
Jonathan G Rennison 17257b9620 Add: 32bpp SSE2 blitter palette animator (#6795)
Create a new blitter mode: 32bpp-sse2-anim, which is 32bpp-anim + this.
32bpp-sse2-anim is now used by default where 32bpp-anim would have been.
Also use this with the 32bpp-sse4-anim blitter.

See issue #6469.
2018-05-23 09:55:04 +01:00
Owen Rudge 7bd2fa3516 Feature: Add XAudio2 driver 2018-05-17 15:06:37 +01:00
Niels Martin Hansen b902e01e10 Change #6685: Replace Win32 music driver with one not depending on MCI
MCI MIDI is poorly supported on newer versions of Windows and can cause large
delays at the beginning of tracks.

The new driver is based on a from-scratch reader for Standard MIDI Files. This
should be re-usable in other music drivers too, and can allow for finer control
of playback in general.

It also provides a better framework for reading MIDI data from other formats
than just SMF.
2018-05-01 22:29:53 +02:00
Patric Stout eb2603a5e7
Fix: make generate[.vbs] produce the same result on Linux/Windows (#6764) 2018-04-29 21:30:45 +02:00
Patric Stout aef69443e7 Remove: WinCE support 2018-04-29 15:32:16 +02:00
Patric Stout 85adde7485 Remove: PSP support 2018-04-29 15:32:16 +02:00
ZehMatt e7cc53ed62 Add: post build events to VS projects to copy the output into 'bin' 2018-04-22 19:24:07 +02:00