1
0
Fork 0
Commit graph

414 commits

Author SHA1 Message Date
Patryk Obara
0d108a7df5 Remove GFX_SetPalette
After move to SDL2, this function is no longer useful.
2019-12-26 03:23:19 +01:00
Patryk Obara
7a415e3b8d Remove last remains of DirectDraw renderer
SDL2 patch replaced it with output=texture renderer=direct3d
2019-12-26 03:23:19 +01:00
Patryk Obara
1a58ccb14f Reorder includes in sdl_mapper 2019-12-26 03:23:19 +01:00
Patryk Obara
532345f70e Fix warnings related to misuse of SDL2 types
Use the opportunity to implement a bunch of formatting changes and fix
other warnings.
2019-12-26 03:23:19 +01:00
Patryk Obara
a06035a35e Replace SDL 1.2 with SDL 2.0
This massive patch is based on work of NY00123, which was published on
Vogons forum in 2013 and was waiting for inclusion in SVN since then:

https://www.vogons.org/viewtopic.php?f=41&t=34770

Revision from December 2018 was used to kickstart this work. However, a
number of changes were implemented:

- Original patch preserves all SDL 1.2 code by ifdefing it; this patch
  completely removes all code ifdefed for several versions of SDL 1.2.*
  This way the code will be easier to maintain going forward and
  features enabled by SDL 2.0 do not need to be backported.
  A side-effect of this change is almost-complete removal of DirectDraw
  support - but users can now use Direct3D based acceleration (without
  any ifdefs in code).
- Code ifdefed for Android was removed to make the project easier to
  understand and modify. Android port should still be possible, but it
  requires more work (mostly CI and buildsystem work).
  Android-related functionalities that were cross-platform were
  preserved.
- Code ifdefed for OpenGL ES (which was only used for Android) was
  removed - this should not affect Android support, as
  hardware-accelerated 2D should still be viable via "texture" output,
  but it was not tested, as buildsystem does not support Android ATM.
- SDL_cdrom code is not included; it was outside of scope of SDL2
  changes. Inclusion of that library did not justify supporting one
  small usecase (playblack of CD audio from physical CDs).
- Few code warning were fixed (but new sdl_mapper implementation
  introduces many, many new warnings).
- Some formatting changes were implemented.

Overall, the original patch had ~40k lines of code - here it was
trimmed to +769,-972 (so more old code got removed than new code added).

This implementation was extensively tested on Linux and somewhat tested
on Windows 10.  It fixes numerous issues (too many too list).

Testing found two small regressions:

- Starting game in fullscreen makes it impossible to switch back to
  windowed mode correctly (Windows 10)
- Scaling works a bit worse, only in text mode, only in window (Linux)

This implementation introduces revised user settings in sdl section - it
is only partly compatible with settings from SDL 1.2; this is an issue,
but it will need to be addressed in a separete commit.
2019-12-26 03:23:19 +01:00
Patryk Obara
e1286efca9 Remove SDL_cdrom 1.2 based CD-ROM interfaces
This removes a feature of mounting physical CD-ROMs in DOSBox.

SDL 2.0 removed SDL_cdrom from supported libraries, so to bring this
code back, either the functionality will need to be reimplemented or
SDL_cdrom code modernized for SDL 2.0, and bundled with the repo (the
same way SDL_sound is already bundled).
2019-12-18 22:31:19 +01:00
Patryk Obara
5f9ac5eeab Remove code ifdefed for OS/2
Cleanup before replacing SDL1.2 with SDL2.

OS/2 support was introduced in DOSBox in March 2006.  OS/2 reached EOL
in December 2006.

As of 2019, OS/2 is being continued by proprietary 32-bit only ArcaOS,
although there is no official SDL2 support, despite pledges from SDL2
maintainers.
2019-12-09 16:27:11 +01:00
Patryk Obara
301d7c3423 Merge branch 'svn/trunk' r4296 2019-11-26 18:37:09 +01:00
Peter Veenstra
1521b7ad7d Fix bug #519
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4296
2019-11-26 16:52:04 +00:00
Patryk Obara
34112dd2da Merge branch 'svn/trunk' r4282 2019-11-12 08:56:37 +01:00
Peter Veenstra
8f3474ecfd Make it possible to compile without CoreMIDI and CoreAudio on Mac OS X using a non-Apple compiler. Give some feedback to user in this case. (modified version of patch by krcroft with input from jmarsh, Dominus and Qbix)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4281
2019-11-10 14:50:11 +00:00
Patryk Obara
9099f0620e Merge branch 'svn/trunk' 2019-10-20 07:15:43 +02:00
Peter Veenstra
5b690f936a fix externals.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4274
2019-10-19 20:08:46 +00:00
Peter Veenstra
276b187181 Make frameskip an integer.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4273
2019-10-19 19:52:24 +00:00
Patryk Obara
79fe83ede6 Merge branch 'svn/trunk' 2019-10-10 00:16:04 +02:00
Peter Veenstra
195484d5e9 Change OpenGL drawing routine to draw one big oversized TRIANGLE instead of a QUAD in order to work around an Nvidia specific scaling bug. Fixes bug #515.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4270
2019-10-09 20:53:35 +00:00
Patryk Obara
a4a6bed5c1 Merge branch 'svn/trunk' 2019-10-01 18:11:50 +02:00
Peter Veenstra
ca20ca3a3e use delete instead of free, although this code is never really used, as the running process should have been replaced at that point.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4263
2019-10-01 11:11:57 +00:00
Patryk Obara
34e72e8e3c Merge branch 'svn/trunk' 2019-10-01 10:01:44 +02:00
Peter Veenstra
5803ea448c missed one
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4262
2019-10-01 06:14:42 +00:00
Patryk Obara
08925b24a4 Merge branch 'svn/trunk' 2019-09-30 22:21:21 +02:00
Peter Veenstra
4046dd8229 These actually use float as input.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4261
2019-09-30 18:43:28 +00:00
Patryk Obara
b62a637157 Import svn:ignore props to .gitignore files 2019-09-15 20:34:57 +02:00
Peter Veenstra
ffdcc16af5 Always clear drawing area. Should fix certain linux instalations that use triple buffering
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4229
2019-06-02 19:40:59 +00:00
Peter Veenstra
ee236a7e5a Init texture with zeroes. Should fix the red border with pixel_buffer and nvidia cards on Mac OS X and Linux.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4228
2019-05-26 09:07:07 +00:00
Peter Veenstra
eb26b9a58e Change first_shell to be DOS_Shell instead of Program. Makes future manipulations easier.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4211
2019-04-20 13:48:55 +00:00
Peter Veenstra
c9c97f13af Correct bug related to signedness (M-HT).
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4198
2019-03-31 18:06:27 +00:00
Peter Veenstra
94113a7362 Change multi_remain to repeat last parsed value for non-string types if the next value is empty and of the same type as the last.
Use this to add an optional parameter to sensitivity which controls the y axis. When optional parameter is missing, x and y axis have the same value.
Change limits on sensitivity to allow for negative values so the Mouse Y-axis can be inversed. Similar to patch #276.


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4197
2019-03-29 20:47:57 +00:00
Peter Veenstra
8d1c5b31e1 fix loading of configfiles specified with -conf but present in the userdir with -userconf present.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4194
2019-02-28 13:14:21 +00:00
Peter Veenstra
fdd8358de7 Make feature checks consistent, include right header for memset, correct one off error in paging table size compare for when not using USE_FULL_TLB (jmarsh)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4185
2019-01-28 14:26:19 +00:00
Peter Veenstra
1fbaff47fc Update year and address of FSF
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4183
2019-01-25 14:09:58 +00:00
Peter Veenstra
b899da315d use right field when dealing with joysticks. use enum instead of magic value (ny00123)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4179
2018-12-28 12:18:12 +00:00
Peter Veenstra
c9f79add62 no bilinearing filtering on exact multiples
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4178
2018-12-17 19:22:30 +00:00
Peter Veenstra
f5e4b9205f Add workaround for the problem of locking the mouse in windowed mode with X.org 1.20.1. (thanks to DosFreak and ny00123 for their help with testing and debugging)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4177
2018-12-11 15:45:37 +00:00
Peter Veenstra
c7e6b3ca86 Report when a -conf file can not be loaded. Make spacing similar between messages.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4166
2018-10-10 07:00:53 +00:00
Peter Veenstra
c0d49b28e5 Change scan3x to be LINE LINE DARK instead of LINE DARK DARK. This matches pictures of scanlines better and doubles the brightness as the old implementation was rather dark.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4162
2018-09-14 19:59:05 +00:00
Peter Veenstra
1ff6911b3c Let all multiline comments jump in. Pretty up value blocks
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4160
2018-09-04 13:51:09 +00:00
Peter Veenstra
e524d0f1c2 <erge 0.74-2 documentation changes into trunk
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4157
2018-08-31 17:43:09 +00:00
Peter Veenstra
3f7c70b2ad Keep it compiling.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4150
2018-08-28 11:59:41 +00:00
Peter Veenstra
b24425dfa4 Give a warning at startup if dpi scaling is detected.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4149
2018-08-28 11:48:53 +00:00
Peter Veenstra
01e0a45694 Use old style call to get window resolution on windows, fixes part of fullscreen being too large with no manifest and dpiscaling active. Can still go wrong though. dpiscaling is just bad news for dosbox overall. disabling it gives bad results as well for big screens..... Add opengl window centering for fullresolution=original..
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4147
2018-08-28 08:30:44 +00:00
Peter Veenstra
31063f868a disable swap control on all platforms and not just win32. Thanks for testing ny00123
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4132
2018-07-13 12:11:35 +00:00
Peter Veenstra
5bb10db88b Time keeps on ticking
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4109
2018-05-29 12:58:58 +00:00
Peter Veenstra
54c993669a Strip spaces properly. Fixes bug #480
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4100
2018-05-06 19:34:22 +00:00
Sjoerd van der Berg
a315f74074 Allow 15/16/32 bpp inputs to the opengl output
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4095
2018-04-16 20:24:30 +00:00
Peter Veenstra
bf45406604 Add 0xA0 (probably ;) ) and improve unhandled message reporting a bit.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4092
2018-04-04 16:25:53 +00:00
Peter Veenstra
48611d6141 Do we even use those timers ? Ticks are initted regardless. Please report problems! (helps with cpu usage on Macs)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4090
2018-04-04 10:05:50 +00:00
Peter Veenstra
81202c7dd3 Limit amount of polls per second a bit on MAC OS X, as it was quite high otherwise.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4089
2018-04-04 09:47:29 +00:00
Peter Veenstra
b681d85d5f fix compilation on machines that have X11 libraries installed, but use an sdl without X11.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4087
2018-03-23 08:54:24 +00:00
Peter Veenstra
ee8d976ebc Move dddraw detection to a configure option. Requested by DosFreak.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4056
2017-10-10 13:51:13 +00:00