gbeauche
2de44f1910
Fix for MacOS X assembler, why don't Apple use GNU as?
2005-06-25 06:33:39 +00:00
gbeauche
d0da2a0dda
- Restore TOC on EMUL_OP_EXEC_RETURN from Execute68k
...
- Restore r13 on EMUL_RETURN, though I never saw r13 clobbered
- Increase stack frame allocated to EmulOp processing on par with BeOS
- Factor GetResource wrappers with a macro + restore r13 too
2005-06-24 22:58:55 +00:00
gbeauche
d8a33b0952
Direct Color visual is OK for fbdev dga.
2005-06-24 22:31:28 +00:00
gbeauche
26ee263b6f
Don't fake the TVECT value on non-BeOS native systems. This is important
...
for systems that use a global r2 as the TLS register, e.g. Linux/ppc with
newer glibc. Also remove the syscall junk which were simply workarounds
for this bug. Remove a duplicate r2 restoration in EmulOp.
BTW, it's possible to get SheepShaver running on Linux/ppc systems with
NPTL rather than SheepThreads.
2005-06-23 16:23:31 +00:00
gbeauche
b9b90fce11
fix last commit
2005-06-23 11:56:43 +00:00
gbeauche
2deca51ca4
Add code to gather some stats on register usage.
2005-06-23 11:37:01 +00:00
gbeauche
c33f09b2d8
Fix crash in FBDev DGA mode when it failed to initialize (here, that was
...
because fb visual was Direct Color instead of True Color). We used to
initialize the_buffer* even if !open_display. Report that gracefully with
the dedicated STR_OPEN_WINDOW_ERR.
2005-06-22 16:40:24 +00:00
gbeauche
c41f403f56
Rework sheepshaver_cpu object allocation and get rid of POSIX'ish functions.
2005-06-22 16:38:15 +00:00
gbeauche
c4a7b10650
op_invoke*() symbols are expected to be in demangled form, i.e. "C" linkage
2005-06-22 16:35:59 +00:00
gbeauche
f887fb7bac
Enable build of the JIT with GCC 2.9x compilers (e.g. "2.96" from MDK 8.1).
2005-06-22 15:37:25 +00:00
gbeauche
ae52321fe7
HOST_FLOAT_WORDS_BIG_ENDIAN is a tristate and, when defined, can still be
...
0, so little endian format. i.e. don't check that with a simple #ifdef...
2005-06-22 15:33:22 +00:00
gbeauche
32b5b4f0bd
Integrate C++ demangler from libiberty so that to handle G++ 2.9X generated
...
symbols.
2005-06-22 15:30:54 +00:00
gbeauche
f226f793dd
Extend internal math library from GNU libc to accomodate older systems
...
with glibc 2.2.X or simply no C99 capable C library. Fix vrfiz instruction
to really truncate on float values.
2005-06-22 12:32:32 +00:00
gbeauche
28a167b3bd
Avoid <limits> to determine vector register numeric_limits<>. This fixes
...
build with ancient compilers like gcc "2.96".
2005-06-22 12:27:01 +00:00
gbeauche
3aa78832fc
pointer-to-member-functions fixlets, NULL may be (void *)0 on ancient
...
compilers which is not suitable here.
2005-06-22 12:25:43 +00:00
gbeauche
c686f5451c
Include <sys/mman.h> for fbdev dga without VOSF acceleration.
2005-06-22 12:24:36 +00:00
gbeauche
e616062d6d
Apple GCC uses __ppc__ as the arch token
2005-06-14 06:35:00 +00:00
gbeauche
46f9e6d2ea
Support JIT on Mach/ppc platforms. Mach/i386 (Darwin/x86) is to follow.
2005-06-14 06:32:52 +00:00
gbeauche
ef30f8e882
remove duplicate
2005-06-11 16:47:00 +00:00
gbeauche
e423a07632
Recognize POWER5 CPUs. ;-)
2005-06-08 12:12:50 +00:00
gbeauche
89643dbce0
Enable VidMode extension by default though some Xservers may still be
...
broken. Probably run-time check for the right VidMode version? My tests
were done with X.org 6.8.2 (VidMode 2.2)
2005-05-12 11:21:10 +00:00
gbeauche
0bce152c20
- Sync with latest B2 video_vosf.h updates.
...
- Enable VidMode extension with FBDev DGA graphics.
- Factor out FBDev/XF86 DGA code.
- Fix pointer grab in fbdev DGA mode, thus fixing scrolling screens in
lower VidModes.
- Only select VidModes that match the requested resolutions, exactly.
- Fix VideoQuitFullScreen() in non FBDev mode.
2005-05-12 11:20:00 +00:00
gbeauche
1853c38130
fix inline asm for gcc4
2005-04-24 17:22:49 +00:00
gbeauche
8db2a3ef62
implement lvsl/lvsr instructions
2005-04-15 17:03:49 +00:00
gbeauche
ac6b7d760e
What a silly thing I wrote! Really nuke the generated file, not the original
...
source. IOW, don't commit stuff when you are ill.
2005-04-07 22:35:47 +00:00
gbeauche
8f80b5ddba
remove generated ppc_asm.S on make clean
2005-04-03 15:35:20 +00:00
gbeauche
8e512ca7fe
Better lock and zero VOSF data, especially for DGA mode. Also make sure
...
that we really update the whole screen when sub-8bpp modes are used
2005-04-02 09:54:16 +00:00
gbeauche
b46eb9ae45
Only support True Color frame buffers. Make it possible to run-time switch
...
depth in FBDev DGA fullscreen mode.
2005-03-28 16:19:28 +00:00
gbeauche
f9e3fd28a1
better logics in sigstack allocation on native platforms
2005-03-28 09:50:58 +00:00
gbeauche
88b493bf38
fix make modules for Linux NetDriver
2005-03-28 09:06:46 +00:00
gbeauche
0f4440f99f
Handle "screen fbdev/WIDTH/HEIGHT" to force use of FBDev DGA instead of XF86
...
DGA mode. In other words, root user can now use FBDev DGA though it's always
recommended to run SheepShaver with a normal user. Increase "ramsize" bounds
in the GUI and fully migrate to new "screen" modes. Remove "windowmodes" and
"screenmodes" defaults.
2005-03-28 09:05:28 +00:00
gbeauche
5810c6a764
Use "screen TYPE/WIDTH/HEIGHT" prefs item by default on Unix systems. The
...
former options (windowmodes/screenmodes) are migrated if the user uses the
GUI. Also make a note about EXPERIMENTAL state for jit68k.
2005-03-27 22:32:46 +00:00
gbeauche
abd2c5406f
Add "screen" prefs item similar to Basilisk II. Don't ignore SEGV by default
...
as this could hide real bugs.
2005-03-27 22:08:33 +00:00
gbeauche
08e30a894e
disable 68k DR emulator for now (not stable enough yet)
2005-03-27 22:06:52 +00:00
gbeauche
d27832cb1c
- Implement fullscreen DGA via fbdev access under Linux. Besides, r/w access
...
to /dev/mem is required on Linux to use XF86 DGA mode. Otherwise, there is
now a fallback to fbdev.
- Forward port some features from Basilisk II (set_window_name,
disable_mouse_accel).
- Don't SIGSTOP the emulation thread on suspend since that would completely
stop the process on Linux. Use a frame buffer lock instead (as B2 does)
2005-03-27 19:05:18 +00:00
gbeauche
0bc6418ea6
Implement screen win/WIDTH/HEIGHT prefs item that overrides any other value
...
for windowmodes and screenmodes. Necessary for arbitrary full screen mode
sizes.
2005-03-27 14:53:04 +00:00
gbeauche
fbe378f780
Add custom video modes for full screen in unsual resolutions (e.g. 1400x1050).
...
X11 and SDL infrastructures have yet to be implemented
2005-03-27 13:44:45 +00:00
gbeauche
ca7a87465b
Disable high-res timings as it could still hang. The advantage is that we
...
now can use special mutexes to debug deadlocks
2005-03-27 13:41:46 +00:00
gbeauche
d9a8a5c10f
cross-compilation fixes
2005-03-24 23:39:19 +00:00
gbeauche
35a29f57df
rearrange for win32 cross-compilation
2005-03-24 23:38:10 +00:00
gbeauche
2d6df7d54d
Respin snapshot with functional Windows port + extra SDL keysym translations
...
in case keycodes were not used (e.g. includes key-'3')
2005-03-20 23:58:43 +00:00
gbeauche
86b049678f
Windows specific configure script and Makefile
2005-03-20 23:45:17 +00:00
gbeauche
0db0d48bf0
Avoid the use of floating-point when loading/storing from/to memory. This
...
could have caused some rounding thus alterations to integer registers on
context switches when lfd/stfd instructions were used. e.g. cygwin compilers
defaulted to i686 code generation and exhibed this behaviour, you could also
see this behavior with -march=i586 -mtune=pentiumpro. GCC is perfectly right
to do those optimizations.
2005-03-20 23:07:11 +00:00
gbeauche
1fb076bc7b
Check that we are running a Windows NT kernel >= 4.0 and drivers are
...
installed correctly (namely cdenable.sys)
2005-03-19 19:09:44 +00:00
gbeauche
9383e5bd50
Enable build with gtk2 and default to that UI if found. Otherwise, it's
...
still possible to select GTK1 as --with-gtk=gtk1 or --with-gtk=gtk.
2005-03-19 09:59:30 +00:00
gbeauche
b29b5e4e23
let it build against gtk2
2005-03-19 09:35:01 +00:00
gbeauche
8071d90849
workaround weird bug lying somewhere in cygwin generated micro-ops for
...
FP load/store of doubles
2005-03-19 07:18:18 +00:00
gbeauche
7fcb230d67
the current ethernet code is not direct addressing clean, so enable it only
...
if real addressing mode is available (e.g. this excludes win32 platforms for
now)
2005-03-19 04:31:59 +00:00
gbeauche
c044b1d8eb
add windows specific sysdeps.h as they are stable enough now. lowered constant
...
offset to 0x02000000 so that we can cope with the new RAM_BASE value.
2005-03-18 00:03:32 +00:00
gbeauche
2990a3ddfc
add missing AboutWindow file for Windows, that have yet to be fully
...
implemented however
2005-03-18 00:01:37 +00:00