asvitkine
d6db773362
[patch from Darik Horn <dajhorn@vanadac.com> ]
...
Makes SheepShaver compatible with Ubuntu Intrepid and
other distros that bundle the gcc-4.3 compiler.
The patch changes two things:
1. Renames the block_cache where its name collides with its class
definition.
2. Fixes the "explicit template specialization cannot have a storage
class" error in the ppc-dyngen-ops.cpp file.
2009-01-15 23:25:08 +00:00
asvitkine
06ac24df65
Fix Leopard build.
2008-11-21 01:09:28 +00:00
asvitkine
5505a5dc62
Change < to - in qsort compare functions to correctly return 0 for equality.
2008-09-14 19:54:36 +00:00
asvitkine
bf7408e151
Fix prefs
2008-07-20 07:29:46 +00:00
asvitkine
c23511080e
[patch from Kelvin Delbarre]
...
Software cursor mode is now supported, although currently the existing hardware
cursor mode is used whenever possible. (Software mode will be used if you are
running with a recent version of SDL's Quartz video driver, since a bug in SDL
1.2.11 and later prevents the hardware cursor from working properly with that
driver.)
In hardware cursor mode, the hot-spot is now determined heuristically. Formerly
it could not be determined and was always (1,1), an annoyance for many cursors
other than the arrow.
In hardware cursor mode, the cursor will now be hidden when requested by the
emulated OS (such as when you are typing in a text field).
In hardware cursor mode, some cursor image formats that the code does not handle
correctly will now be rejected, causing the emulated OS to revert temporarily to
software cursor mode. Formerly you would just end up with random garbage for a
cursor. This typically happened for grayscale or color cursors; rejecting images
with rowBytes != 2 eliminates the worst cases.
2008-06-25 02:52:52 +00:00
asvitkine
d885e5ccf4
[patch from Kelvin Delbarre] SDL's Quartz video implementation maps command
...
clicks to right-clicks and option-clicks to middle-clicks, a feature intended
for Mac users with single-button mice who are running SDL-based games that
require a multi-button mouse. This is unhelpful in SheepShaver, where we want
command-clicks and option-clicks to be passed through unchanged to the emulated
Mac OS. We can disable the unwanted behavior by setting an environment variable
SDL_HAS3BUTTONMOUSE intended for this very purpose.
A similar change in main_windows.cpp is NOT required, because only the Quartz
video implementation is involved.
By SDL convention, putenv is used in preference to setenv, although for Unix
platforms it doesn't matter.
2008-06-22 20:30:12 +00:00
asvitkine
e8e2f3727a
Don't profile by default - as this is no use to non-developers.
2008-06-20 00:50:33 +00:00
asvitkine
1002714623
Add frameskip 0 ("Dynamic") to MacOSX Prefs Editor, and fix line endings
...
and deprication warnings in the Objective-C code. Also, don't specify array
size with a macro in a header file.
2008-06-17 04:26:56 +00:00
gbeauche
b083b08fd1
Cope with recent run-time assembler changes.
2008-02-12 14:52:25 +00:00
gbeauche
b5746b4f68
Add SSSE3 optimizations (Intel Core 2 CPUs and newer) for LVX, STVX, VPERM.
...
This brings an overall +10% performance improvement in AltiVec Fractal Carbon.
2008-01-01 21:51:56 +00:00
gbeauche
c581996f82
Detect SSE 4.1 and SSE 4.1.
2008-01-01 13:34:47 +00:00
gbeauche
054c37ca0c
Happy New Year!
2008-01-01 09:47:39 +00:00
gbeauche
19e145ad16
Sync with new SIGSEGV API.
2007-12-30 09:18:40 +00:00
gbeauche
38501abd6a
Fix build with new MacOS X extfs implementation (in C++).
2007-12-30 09:15:00 +00:00
asvitkine
dc524bb30a
use the new SDL 1.2.12 env variable to allow the OS to launch the screensaver
...
when sheepshaver is running - must be linking to sdl 1.2.12 or later for it
to take effect
2007-08-27 21:45:13 +00:00
asvitkine
5b161928ed
copy prefs stuff into app bundle
2007-07-28 15:50:30 +00:00
asvitkine
059540bbb8
more prefs stuff
2007-07-28 15:46:17 +00:00
asvitkine
eae5f4ec20
support new prefs editor handling (rerun autogen)
2007-07-28 15:44:36 +00:00
asvitkine
9fd74d26cf
make unix root textbox larger in os x prefs editor
2007-07-28 15:23:12 +00:00
asvitkine
3c07ca5344
Standalone NIB, used for the PrefsEditor within SheepShaver
2007-07-28 15:17:46 +00:00
asvitkine
e90be61f19
Preparing for built-in Cocoa prefs editor
2007-07-28 14:53:08 +00:00
gbeauche
1cf3b07fe6
Use semaphores to suspend the redraw thread while switching video mode.
2007-07-21 11:41:07 +00:00
gbeauche
efa32be9ec
Optimize invalidate_cache_range() for short ranges.
2007-07-21 10:25:51 +00:00
asvitkine
ff172bd87d
Some changes to PrefsEditor stuff to ease future integration with SheepShaver.
2007-07-16 02:38:53 +00:00
gbeauche
8da1a472ae
Add native audio support (without SDL) from Nigel's Basilisk II port to MacOS X.
2007-06-13 16:34:13 +00:00
gbeauche
7adb1cace9
Add mips cxmon files
2007-06-13 12:11:55 +00:00
gbeauche
3d69ce66be
ifdef() constructs cause problems, make sure to automatically include the m4 directory while
...
regenerating the configure script (provided no ACLOCAL_FLAGS are passed). i.e. ./autogen.sh
now just works, even on MacOS X!
2007-06-13 12:09:05 +00:00
gbeauche
b20a76f580
merge PPC_PROFILE_REGS_USE fixes from KPX branch
2007-02-17 09:01:31 +00:00
gbeauche
8e0088c4c6
generate lwarx/swcx. native code only for uniprocessor emulation
2007-02-17 08:59:56 +00:00
asvitkine
c6560c2152
fix configure.ac unix script to not fail when AM_PATH_GTK and AM_PATH_ESD
...
are not defined (such as is usually the case on Mac OS X)
2007-01-24 14:33:52 +00:00
asvitkine
3b28326f7e
ifndef so prefs editor compiles
2007-01-24 03:36:48 +00:00
asvitkine
b1f1592f44
OSX Cocoa PrefsEditor - code and Xcode project
2007-01-24 03:35:51 +00:00
asvitkine
be4aba2f82
Fix Master of Orion II
2007-01-21 17:21:23 +00:00
gbeauche
9999881c78
Enable JIT in non-constructor so that a user-defined value can be set later
2007-01-21 13:44:27 +00:00
gbeauche
3b6a579f33
Optimize lwarx/stwcx for uniprocessors and generate code for them. There is
...
no performance increase even though those two instructions represented approx
18M of untranslated instructions on a simple boot to MacOS.
2007-01-18 07:02:35 +00:00
gbeauche
b9486d35e3
Rearrange powerpc_registers struct and nuke fp_result register which is
...
only needed for JIT (and to be handled differently in the future).
2007-01-17 07:05:19 +00:00
gbeauche
69d3fcba95
Update for new instr_info_t format
2007-01-17 06:56:09 +00:00
gbeauche
5b0b60da76
Remove specialised decoders. This will be done differently, if necessary.
2007-01-17 06:20:36 +00:00
gbeauche
e4af8a1909
Report SSSE3 instead of SSE4 (to be released later).
2007-01-15 07:00:16 +00:00
gbeauche
9dfecc4279
Update CPU table to kernel 2.6.17+ code (POWER6, Cell, PA6T). Fix detection
...
of the CPU string (separator is actually ','). Fix detection of CPU clock
frequency when it is expressed as a float.
2006-10-26 05:25:19 +00:00
gbeauche
954593d1c0
Generate spcflags checks at the start of the block. This makes better
...
opportunities when CR cache is implemented.
2006-07-30 16:29:10 +00:00
gbeauche
bcf7f9a2cd
Add throw() specs for Linux glibc platforms
2006-07-30 09:49:21 +00:00
gbeauche
2c27914196
Fix op_record_cr6_VD() to use less branches (gcc 4.1.2 build fix on x86-32)
2006-07-19 22:21:46 +00:00
gbeauche
874bab017c
Fix for parallel build (make -j20 here)
2006-07-19 06:00:26 +00:00
gbeauche
7705f85655
Add missing implementations for VAVGUB & VAVGUH. Optimize VSEL too.
2006-07-17 21:47:18 +00:00
gbeauche
07bf6fe6c1
Fix typo for ANDPS, ANDPD, ANDSS, ANDSD
2006-07-17 21:46:15 +00:00
gbeauche
a23f846bec
symlink codegen_x86.h
2006-07-17 07:43:54 +00:00
gbeauche
c8a273332f
Fix for 32-bit x86, was generating setcc CC,%dh instead of %dl.
...
i.e. force use of ecx & edx -- though it was fine in 64-bit mode, of course
2006-07-17 07:34:33 +00:00
gbeauche
e07e2196e3
Use new code generator. The gain is only 10%, bottlenecks are elsewhere.
...
Optimize Altivec vector splat instructions after Agner's guide.
2006-07-17 06:56:38 +00:00
gbeauche
ceb43ce19a
Define global XMM registers for SIMD & FPU (64-bit mode)
2006-07-17 06:52:13 +00:00