gbeauche
e291c6d065
Add fast X11 display locking routines based on spinlocks, or on pthreads
...
in the worst case. Optimize out GetScrap() case when we already own the
selection. i.e. make it smoother. Use our own XDisplay{Un,}Lock() routines.
2003-12-31 18:16:55 +00:00
gbeauche
bbde2a2054
Use an alternate stack base while servicing PowerPC interrupts.
2003-12-05 13:37:56 +00:00
gbeauche
c3bb2eabf1
Really clear the zero page.
2003-12-05 12:41:19 +00:00
gbeauche
44e54f730a
Add XLM_ZERO_PAGE globals which points to a read-only page with all bits
...
set to zero.
2003-12-05 12:36:11 +00:00
gbeauche
091a219280
Use a unique ExecuteNative() interface in any case, i.e. native & emulated
2003-12-04 23:37:38 +00:00
gbeauche
ddbebd7111
Fix ExecutePPC() merge with new SheepRoutineDescriptor
2003-12-04 22:33:24 +00:00
gbeauche
328bb9f239
Add new thunking system for 64-bit fixes.
2003-12-04 17:26:38 +00:00
gbeauche
26ec1b8899
Merge Set_pthread_attr() from Basilisk II.
2003-11-10 16:05:52 +00:00
gbeauche
a42281aad1
Implement partial block cache invalidation. Rewrite core cached blocks
...
execution loop with a Duff's device. Gather some predecode time statistics.
This shows that only around 2% of total emulation time is spent for
predecoding the instructions.
2003-11-03 21:28:32 +00:00
gbeauche
d766049d59
- enable multicore cpu emulation with ASYNC_IRQ
...
- move atomic_* operations to main_unix so that they could use spinlocks or
other platform-specific locking mechanisms
2003-10-26 09:14:14 +00:00
gbeauche
46a1b4ada5
allow DGA & Xshm only on local displays
2003-10-26 07:54:02 +00:00
cebix
5f0a739cc7
- fixed compilation problems under BeOS
...
- boot drive wasn't set correctly
2003-10-26 00:32:31 +00:00
gbeauche
7e0dccc544
- Handle MakeExecutable() replacement
...
- Disable predecode cache in CVS for now
- Fix flight recorder ordering in predecode cache mode
2003-10-12 05:44:17 +00:00
gbeauche
b8b139faf2
- Share EmulatorData & KernelData struct definitions
...
- Introduce new SheepShaver data area for alternate stacks, thunks, etc.
- Experimental asynchronous interrupts handling. This improves performance
by 30% but some (rare) lockups may occur. To be debugged!
2003-09-29 15:46:09 +00:00
gbeauche
28ae4b0028
Disable SIGUSR2 handler in EMULATED_PPC mode for now
2003-09-28 21:20:38 +00:00
gbeauche
cb1dd6dac5
- Integrate new NativeOp instructions to be used as trampolines to call
...
native functions from ppc code.
- Little endian fixes in emul_op.cpp
- Add new 'gpch' 750 patch to workaround crash with MacOS 8.6
- Don't crash in Process Manager on reset/shutdown with MacOS 8.6
- We also have an experimental interrupt thread in emulation mode
2003-09-07 14:33:54 +00:00
gbeauche
9e7670c922
Import VOSF from Basilisk II for faster and more accurate video refresh.
...
There may be some bugs left though. Rework sigsegv_handler() a little to
accomodate VOSF way of life.
TODO: merge video drivers infrastructure from B2.
2003-05-22 22:12:05 +00:00
gbeauche
94ec8c82ca
Use vm_acquire/vm_acquire_fixed/vm_release API. Prepare use of SIGSEGV
...
handlers and instruction skippers. Fix test prior to including posix_sem.cpp.
2003-05-13 16:59:57 +00:00
gbeauche
665c64b4aa
Add support to decode parcels-based ROMs
...
- include/rom_patches.h (DecodeROM): Declare.
- rom_patches.cpp (DecodeROM): Define.
- Unix/main_unix.cpp, BeOS/main_beos.cpp (decode_lzss): Move to...
- rom_patches.cpp (decode_lzss): ... here.
- Unix/main_unix.cpp (main): Call DecodeROM().
- BeOS/main_beos.cpp (SheepShaver::load_rom): Call DecodeROM().
2002-04-21 15:07:09 +00:00
cebix
b7e0269519
added dummy Set_pthread_attr()
2002-02-21 15:12:12 +00:00
cebix
8e4d5e5f40
Imported sources
2002-02-04 16:58:13 +00:00