Commit Graph

202 Commits

Author SHA1 Message Date
michi_cc 4d9097cafb (svn r18573) -Fix [FS#3198]: [OSX] Try to get a generic RGB colour space if getting the system colour profile failed. (tyler) 2009-12-20 16:10:44 +00:00
rubidium c811f3bd21 (svn r18547) -Fix [FS#3388]: missing thread synchronisation when changing the resolution for SDL via the in game menu 2009-12-19 19:29:01 +00:00
frosch 29d6491605 (svn r18545) -Fix [FS#3292]: Assign '_screen.dst_ptr' as soon as it is allocated. 2009-12-19 18:46:40 +00:00
peter1138 3addf58f30 (svn r18390) -Fix (r17776): [SDL] Reinstate pointer update on 'idle' loop. 2009-12-03 08:24:39 +00:00
peter1138 b0049500a6 (svn r18177) -Fix (r18001): [SDL] Viewport could jump when mouse moved and right button pressed at the same time. 2009-11-18 23:07:29 +00:00
rubidium 88a7e23897 (svn r18031) -Codechange: since basically r7157 adding up 'all' mouse movement isn't needed anymore because after each even that movement is handled and the counter is reset. As such simply assigning instead of adding works. 2009-11-09 16:07:03 +00:00
rubidium cbf4b80b86 (svn r18030) -Fix: screen jumped a bit for at least SDL and Allegro when right-click-dragging 2009-11-09 16:05:24 +00:00
peter1138 723c19571f (svn r18001) -Codechange: [SDL] When the mouse cursor is locked into position when scrolling a viewport, warp the mouse pointer to the centre of the window. This gives maximum freedom of movement. The pointer position is restored when the lock is removed. Visually the mouse cursor stays where it was. 2009-11-07 21:41:41 +00:00
smatz da54a01114 (svn r17950) -Fix (r17776): _draw_mutex was never destroyed, _draw_thread was never joined 2009-11-02 13:36:17 +00:00
smatz dc4b251dbd (svn r17949) -Fix (r17776): unlock mutex before deleting it when creating drawing thread failed 2009-11-02 12:12:13 +00:00
rubidium cfcf3159b2 (svn r17815) -Fix [SDL]: asynchronious drawing caused extra unresponsiveness during map generation; disable the threading while generating a map 2009-10-19 20:32:05 +00:00
michi_cc 144febd2d9 (svn r17793) -Fix: [OSX] The splash image wasn't displayed if the Quartz video driver was used. 2009-10-17 22:36:39 +00:00
rubidium c37029d5e1 (svn r17787) -Codechange: be a bit more verbose about while allegro failed with some actions. 2009-10-17 14:39:43 +00:00
rubidium f4f4044859 (svn r17776) -Codechange: [SDL] make "update the video card"-process asynchronious. Profiling with gprof etc. hasn't shown us that DrawSurfaceToScreen takes a significant amount of CPU; only using TIC/TOC it became apparant that it was a heavy CPU-cycle user or that it was waiting for something.
The benefit of making this function asynchronious ranges from 2%-25% (real time) during fast forward on dual core/hyperthreading-enabled CPUs; 8bpp improvements are, in my test cases, significantly smaller than 32bpp improvements.
On single core non-hyperthreading-enabled CPUs the extra locking/scheduling costs up to 1% extra realtime in fast forward. You can use -v sdl:no_threads to disable threading and undo this loss.
During normal non-fast-forwarded games the benefit/costs are negligable except when the gameloop takes more than about 90% of the time of a tick.
Note that allegro's performance does not improve with this system, likely due to their way of getting data to the video card. It is not implemented for the OS X/Windows video backends, unless (ofcourse) SDL is used there.
Funny is that the performance of the 32bpp(-anim) blitter is, at least in some test cases, significantly faster (more than 10%) than the 8bpp(-optimized) blitter when looking at real time in fast forward on a dual core CPU; it was slower.
The idea comes from a paper/report by Idar Borlaug and Knut Imar Hagen.
2009-10-15 17:41:06 +00:00
rubidium 7341834430 (svn r17773) -Cleanup: sdl.h isn't needed for allegro 2009-10-14 08:14:57 +00:00
michi_cc 2b7e242872 (svn r17768) -Fix (r17715): [OSX] Newer GCC versions don't like jumping over variable definitions with goto's. (planetmaker) 2009-10-12 00:19:11 +00:00
michi_cc d900b0d628 (svn r17717) -Codechange: [OSX] Replace deprecated variable type. 2009-10-04 21:39:12 +00:00
michi_cc 6ad7440ae5 (svn r17716) -Codechange: [OSX] Invoke a (semi-)private Objective-C method in a way that does not rely on the SDK version. 2009-10-04 21:39:08 +00:00
michi_cc dbb13fd856 (svn r17715) -Cleanup: [OSX] And a final round of coding style and some cleaning. 2009-10-04 21:36:26 +00:00
michi_cc ba6866128d (svn r17714) -Cleanup: [OSX] Apply more coding style. 2009-10-04 21:36:22 +00:00
michi_cc 9b54d5bbd7 (svn r17713) -Cleanup: [OSX] Move variable definitions to first use and apply more coding style. 2009-10-04 21:36:17 +00:00
michi_cc ec90a8778f (svn r17712) -Codechange [FS#1411]: [OSX] Replace undocumented process manager API calls with a documented alternative. (pyth) 2009-10-04 21:33:36 +00:00
michi_cc 8484e08ee0 (svn r17711) -Codechange: [OSX] Don't use deprecated methods to construct a Cocoa string. 2009-10-04 21:33:31 +00:00
michi_cc a831143f45 (svn r17707) -Fix: [OSX] Show the OS mouse cursor when displaying a dialog box if it was hidden. 2009-10-04 21:08:34 +00:00
michi_cc 5f67762a7f (svn r17706) -Codechange: [OSX] Rework the crash handling to use the common CrashLog infrastructure. 2009-10-04 21:08:30 +00:00
michi_cc 10ca710e98 (svn r17702) -Change: [OSX] Assure that the minimal OSX version is defined in all cases.
-Codechange: [OSX] Improve conditional defines for OS version dependant code.
2009-10-04 20:53:22 +00:00
smatz 6c7f8fc8b4 (svn r17701) -Codechange: don't start line with a space if it's not inside comment 2009-10-04 20:51:50 +00:00
rubidium 9d0b10ccda (svn r17583) -Change: make SDL's video driver more likely to be loaded than Allegro's video driver; SDL seems to perform better. 2009-09-20 10:19:13 +00:00
rubidium 9168ddd550 (svn r17438) -Fix (r17428): ofcourse some part of the OSX port would be forgotten due to it being so much different than the rest :( 2009-09-06 23:12:25 +00:00
rubidium bc5241600a (svn r17428) -Codechange: add a function to get the name of a driver 2009-09-05 21:26:51 +00:00
rubidium bc8e66c202 (svn r17336) -Codechange: move some os specific files into src/os/ 2009-08-31 22:38:37 +00:00
rubidium 7fbc33dae1 (svn r17248) -Fix: add GPL license notice where appropriate 2009-08-21 20:21:05 +00:00
rubidium 7fb95e2c2b (svn r17228) -Codechange: some coding style fixes 2009-08-20 10:23:39 +00:00
smatz c5533ae470 (svn r17168) -Codechange: apply coding style to if and while statements 2009-08-14 17:11:59 +00:00
smatz e707c82412 (svn r17131) -Codechange: apply coding style to some switch statements 2009-08-09 14:40:34 +00:00
rubidium e3c7a77b40 (svn r16827) -Codechange: make OSX specific files include stdafx.h always as the first file. Also unify OSX specific stuff into osx_stdafx.h and remove unused includes. 2009-07-14 16:43:45 +00:00
rubidium 65191b077d (svn r16702) -Change: don't implicitly fall back to the null/dedicated (video) drivers, but show an error message that no driver could be found. You can still explicitly start the null drivers thought. 2009-06-30 16:20:16 +00:00
rubidium c29afac0a7 (svn r16700) -Fix: if allegro fails to start or fails open a window or sound card fall back to another driver 2009-06-30 12:38:18 +00:00
rubidium 791187cd12 (svn r16699) -Fix [FS#3001]: if SDL fails to allocate a surface due to it being too large (and SDL doesn't crash!) fall back to another video driver. 2009-06-30 12:36:24 +00:00
alberth 9b070b5405 (svn r16677) -Codechange: Dimension width and height are unsigned. 2009-06-27 20:53:45 +00:00
alberth bab70a823d (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 2009-06-01 11:43:36 +00:00
rubidium 9f4d64bda0 (svn r16360) -Codechange: don't use _network_playas as a 'second' _local_company, but only as a storage location for the company you want to join in MP. 2009-05-19 21:20:14 +00:00
rubidium 2664f2a2d9 (svn r16242) -Codechange: rework pausing
-Fix [FS#2864]: autopause and manual pausing conflict with eachother
-Fix: new game + pause on new game + autopause make the game not unpause on the first join
2009-05-06 15:06:57 +00:00
rubidium 5f4eeee5f0 (svn r16221) -Change: support building 64 bits OSX binaries and add optional support for 64 bits binaries in OSX universal binaries. However, do not default to adding 64 bits binaries because benchmarking has shown that they are slower than the 32 bits binaries. 2009-05-03 15:46:36 +00:00
rubidium bee930f9b3 (svn r16024) -Codechange: harden string copying on places where it's possible 2009-04-10 20:37:05 +00:00
rubidium 8293be426c (svn r15892) -Codechange: [OSX] some type fixes so OpenTTD likes more of the 3.1.x Xcodes. 2009-03-29 19:55:08 +00:00
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 2009-03-15 00:32:18 +00:00
rubidium 9d018723b7 (svn r15711) -Codechange: lots of whitespace cleanup/fixes 2009-03-14 18:16:29 +00:00
glx 1692ce8312 (svn r15710) -Fix (r15706): for non MSVC io.h needs to be included before defining unlink. Also remove redundant tchar.h includes as it is already in stdafx.h. 2009-03-14 15:42:53 +00:00
rubidium 86ca408d46 (svn r15626) -Fix [FS#2698]: UTF8 string handling could cause buffer overruns. 2009-03-06 01:23:25 +00:00