Commit Graph

868 Commits

Author SHA1 Message Date
gbeauche
c9b8dd6628 tm_task is actually correct for both nw & gossamer ROMs 2003-10-05 23:49:19 +00:00
gbeauche
84ce1f2b0d fix tm_task patch for Gossamer ROMs 2003-10-05 23:38:07 +00:00
gbeauche
3768573d35 Add support for Gossamer ROMs (DTG3) 2003-10-05 23:05:05 +00:00
gbeauche
b66f5972f9 Make sure a 32-bit B2/JIT works reasonnably well on AMD64 too. This implies
to force RAMBaseHost < 0x80000000. This is empirically determined to work on
Linux/x86 and Linux/amd64.
2003-10-03 18:18:15 +00:00
gbeauche
87e4d48b3e flags are live after a call to fflags_into_flags_internal() 2003-10-02 09:51:14 +00:00
gbeauche
c464b19f06 get a chance to see some illegal instruction variants if we ever come to
encounter them.
2003-10-02 09:48:10 +00:00
gbeauche
19053d4992 little endian fixes, note that trampolines are still not 64-bit clean either 2003-09-29 22:50:31 +00:00
gbeauche
663b536257 Little endian fixes to Serial trampolines. 2003-09-29 22:49:23 +00:00
gbeauche
7ac3170cb4 More little endian fixes 2003-09-29 22:48:22 +00:00
gbeauche
aafd6e4898 Little endian fixes to FindLibSymbol(). This is not 64-bit clean and this
needs to go through a more appropriate thunking mechanism.
2003-09-29 22:47:39 +00:00
gbeauche
5229b42622 basic implementation for missing functions (signbit/isless/isgreater) in
older C libraries
2003-09-29 22:45:31 +00:00
gbeauche
1713a26a3f NULL is the null pointer to member function 2003-09-29 22:42:53 +00:00
gbeauche
792bef8e61 Make older & bogus compilers happy. aka. force "static" storage class
for SPIN_LOCK_UNLOCKED constant.
2003-09-29 22:41:50 +00:00
gbeauche
c7dd356f7f VSLNewInterruptService() returns a serviceID in big endian format 2003-09-29 20:31:47 +00:00
gbeauche
3d4ed54488 first round of little endian fixes 2003-09-29 20:30:21 +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
cebix
ddcfbe2bda parallel build uses NCPU jobs instead of NCPU+1 2003-09-29 13:30:29 +00:00
gbeauche
2d92ad6dfb spinlocks from QEMU 2003-09-29 08:27:56 +00:00
gbeauche
f9dd276a47 use spinlocks on SheepShaver/Linux/PPC, and possibly others where spinlocks
are available. TODO: check the fastest & safest means to lock VOSF stuff.
2003-09-29 08:27:24 +00:00
gbeauche
23c4ebcdf3 really fix typo! 2003-09-29 08:04:22 +00:00
gbeauche
aa61c47591 fix typo 2003-09-29 08:02:04 +00:00
gbeauche
1c2fa89e31 use B2 sigsegv API instead of rewriting yet another sigsegv handler for x86 2003-09-29 07:05:15 +00:00
gbeauche
a48a804c15 New SIGSEGV API so that skip-instruction requests are more explicit. Yes,
that's api change, but that's cooler now for SheepShaver. ;-)
2003-09-29 07:02:58 +00:00
gbeauche
5b57fde6ce New NativeOps for DisableInterrupt() & EnableInterrupt(). 2003-09-28 21:27:55 +00:00
gbeauche
3851071ecd Try to handle XLM_IRQ_NEST atomically in emulated PPC views. Fix placement
of fake SCSIGlobals (disabled for now). Switch back to mono core emulation
until things are debugged enough. Implement get_resource() et al.
2003-09-28 21:27:34 +00:00
gbeauche
2a86a4f62a Handle dcbz. Ignore unaligned load/store multiple. Fix icbi/isync. 2003-09-28 21:22:59 +00:00
gbeauche
4e5e13d92d make do_execute() a template so that execution loop prologues/epilogues
can be performed in derived engines
2003-09-28 21:22:09 +00:00
gbeauche
2f13888ea8 plain interpretive mode for debugging purposes 2003-09-28 21:21:07 +00:00
gbeauche
28ae4b0028 Disable SIGUSR2 handler in EMULATED_PPC mode for now 2003-09-28 21:20:38 +00:00
gbeauche
9914de4a09 Define HAVE_PTHREADS, if available 2003-09-28 21:19:06 +00:00
gbeauche
2a756136e4 more tests 2003-09-21 22:13:09 +00:00
gbeauche
2cc3b4edab fix xoris 2003-09-21 21:45:05 +00:00
gbeauche
089247fcff Merge in cpu core:
- make cache invalidation routines public
- fix shift instructions, especially for invalid shift counts
- fix mullwo to set overflow only if the product can't be represented in
  32 bits
2003-09-15 22:48:57 +00:00
gbeauche
09c674f63a factor out -I usage 2003-09-14 22:11:42 +00:00
gbeauche
b5b471b4f1 add PowerPC emulator tester 2003-09-14 22:10:58 +00:00
gbeauche
fb8fbf71ed PowerPC emulator fixes:
- make divw. behaviour more realistic (vs ppc 7410) when rB == 0
- fix carry/overflow computations to fix SUBFME handling
- fix nand duplicate with wrong operand
2003-09-14 22:09:13 +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
15a1208483 Handle new ppc emulator 2003-09-07 14:26:15 +00:00
gbeauche
6ff594e32d Handle manual updates with kpx_cpu core 2003-09-07 14:25:48 +00:00
gbeauche
029a7fd85b Merge in old kpx_cpu snapshot for debugging 2003-09-07 14:25:05 +00:00
gbeauche
10aa71cb58 Handle --enable-ppc-emulator. Add Kheperix cpu emulator to sources 2003-09-07 14:21:20 +00:00
gbeauche
3f9b589eea Add byteswap routines 2003-09-07 14:19:25 +00:00
gbeauche
505455c8c4 Check for readline headers in the headers check section as otherwise, and
I don't exactly know why, AC_HEADER_STDC would fail with newer autoconf
versions.
2003-08-17 11:58:00 +00:00
gbeauche
ac027954dc Bring x86 instruction skipper back to life 2003-08-17 10:52:52 +00:00
gbeauche
797cb8825a Aliases for PACKAGE and VERSION used for localisation if compiling cxmon
now that we check for AM_GNU_GETTEXT. Yes, life sucks sometimes.
2003-08-17 10:35:18 +00:00
gbeauche
ff483b7800 #define log printf in B2 stubs 2003-08-17 10:20:22 +00:00
gbeauche
f40f7ab91f AM_GNU_GETTEXT for gnome stuff 2003-08-17 10:16:23 +00:00
nigel
c7f5e13813 Corrected names in keyboard menu 2003-08-17 00:27:34 +00:00
nigel
415c2721bc Cope with invalid keyboard ids 2003-08-16 11:16:36 +00:00
nigel
14a5fd6aaf Restart now works if the emulator is paused
(i.e. it unpauses it first)
2003-08-16 11:14:50 +00:00