gbeauche
3aeed84471
<machine/soundcard.h> was simply a compatibility symlink on FreeBSD and it
...
is now gone away.
2005-02-13 17:56:55 +00:00
gbeauche
30632aed4f
Happy New Year!
2005-01-30 21:42:16 +00:00
gbeauche
cfff01f846
fix parsing of the keycode table
2005-01-22 17:41:33 +00:00
gbeauche
fd7d8cd625
Implement RGB555 mode on 16-bit displays, big endian, native byte order (MacOS X)
2005-01-19 20:27:14 +00:00
gbeauche
d075282607
new way to allocate dt_store
2005-01-08 08:57:53 +00:00
gbeauche
09d6712bdb
Fixes for NetBSD 2.0
2005-01-04 23:38:01 +00:00
gbeauche
64ff64d500
cross compile fixes
2004-12-26 23:24:34 +00:00
gbeauche
3032cb417c
enable build with kernel 2.6
2004-12-19 15:55:31 +00:00
gbeauche
50eee913b8
s/vm_page_size/vm_get_page_size/ to avoid name clash on MacOS X
2004-12-18 22:20:27 +00:00
gbeauche
61e223471b
Force use of MacX mappings with Apple's X server
2004-12-18 19:28:33 +00:00
gbeauche
1406b615c7
Make EtherInterrupt/packet[] "static" so that it is allocated in the .data
...
section, which is likely accessible under 32-bit address on 64-bit platforms
2004-12-18 18:10:40 +00:00
gbeauche
854478a048
support for kernel 2.6 (from MOL)
2004-12-18 17:49:12 +00:00
gbeauche
c10046c137
Check that we can really read at the faulty eip in Windows prior to decoding
...
the instruction. Also fix the unrecoverable fault dump to really be useful.
2004-12-11 13:07:38 +00:00
gbeauche
a80e76111f
remove obsolete headers inclusion, implement vosf lock with native windows
...
mutexes, use new vm_page_size() accessor
2004-12-11 10:20:32 +00:00
gbeauche
fc47096ef8
implement vm_page_size() to get the actual size of a page
2004-12-11 10:19:34 +00:00
gbeauche
ceba60d76f
native windows mutexes as (fast) critical sections
2004-12-11 10:16:42 +00:00
gbeauche
2bbbde1e2b
thread wrappers
2004-12-11 09:41:13 +00:00
gbeauche
912479d0d1
ethernet related prefs items
2004-12-06 23:42:19 +00:00
gbeauche
fb4dacd6a6
Raw import of ether_windows.cpp from original Basilisk II for Windows.
...
Fix code so that it builds in Cygwin/Mingw32.
2004-12-06 23:31:03 +00:00
gbeauche
ead0de6fdf
Refactor native windows system support routines from sys_unix.cpp. This
...
includes CD-ROM support but still lacks original B2 features involving
floppies, real hard disk, and hard file options
2004-12-05 17:11:15 +00:00
gbeauche
0c7dbfd290
Import some extra functions from Win32 libraries. Expose OS versions.
2004-12-05 16:54:14 +00:00
gbeauche
553127f8f3
import original b2ether code from B2/Win32
2004-12-05 16:51:29 +00:00
gbeauche
2de1c1760f
import NAT-Router code from original Basilisk II for Windows
2004-12-05 16:48:36 +00:00
gbeauche
eec1f6928a
add --cdboot command line option akin to MoL's
2004-12-05 15:28:39 +00:00
gbeauche
af8e95642e
merge in "pollmedia" prefs item
2004-12-05 15:05:25 +00:00
gbeauche
892a50a233
currently in 2004 ;-)
2004-12-05 15:04:30 +00:00
gbeauche
c26be68be4
cdenable interface
2004-12-05 15:03:05 +00:00
gbeauche
67399201bb
more extfs related prefs items (debugextfs, extdrives)
2004-12-03 22:59:39 +00:00
gbeauche
2e9253743d
Requires Windows NT >= 4.0, implement ErrorAlert(), WarningAlert()
2004-12-03 22:48:08 +00:00
gbeauche
02a406d538
renamed SysTimerInit() to timer_init()
2004-12-03 22:05:36 +00:00
gbeauche
2014ab7918
cosmetics
2004-12-03 22:05:11 +00:00
gbeauche
7b3a535f2f
Add Windows specific "enableextfs" prefs items. There, the "extfs" path is
...
replaced by a virtual desktop containing all current drives.
2004-12-03 22:04:24 +00:00
gbeauche
238c68c8df
Merge and upgrade native filesystem support from B2/Win. The nice
...
"My Computer" icon is now back. Adapt from recent extfs_unix.cpp.
2004-12-03 22:03:12 +00:00
gbeauche
3094372e34
Merge util_windows.cpp (exists, get_file_size, create_file) from original
...
Basilisk II for Windows
2004-12-03 22:01:47 +00:00
gbeauche
0e52edfbd0
ppc64 fixes
2004-12-02 23:29:52 +00:00
gbeauche
08a15ff00b
fully native (no cygwin dep) version of main_windows.cpp
2004-11-30 23:40:24 +00:00
gbeauche
ffcf51b99d
Merge in "My Computer" user strings from original B2/win
2004-11-29 23:31:30 +00:00
gbeauche
e813acfeab
native win32 XPRAM handling for both Basilisk II and SheepShaver
2004-11-29 22:43:22 +00:00
gbeauche
fbff8b1b3c
typos
2004-11-29 21:59:03 +00:00
gbeauche
1ead478ece
native win32 implementation for prefs file (BasiliskII_prefs)
2004-11-29 21:54:09 +00:00
gbeauche
5b58485720
fix win32 timer_host2mac_time()
2004-11-29 00:15:14 +00:00
gbeauche
08a3e449d3
Always use vm_acquire* to allocate frame buffers, so that cygwin/x86 version
...
can have a chance in case VOSF is not profitable (on video mode switches)
Improve video mode switches in SheepShaver/SDL, aka avoid crashes on win32
as there is apparently no thread canceleation algorithm used in SDL/win32.
2004-11-28 19:31:11 +00:00
gbeauche
f8cd0231a0
add native windows timers
2004-11-28 17:54:05 +00:00
gbeauche
aa6e44d380
Generate CursorDeviceDispatch() call onto the SheepShaver Procedures region
2004-11-22 22:42:55 +00:00
gbeauche
655269516d
Windows debug functions only in native win32 mode
2004-11-21 08:11:20 +00:00
gbeauche
a6bf2d0928
add some code to gather stats on m68k registers used in translated blocks
2004-11-20 23:35:16 +00:00
gbeauche
01a1d4e8b2
Use Windows clipboard code with SDL graphics only. X11 output will use
...
the X server glue anyway
2004-11-17 00:59:04 +00:00
gbeauche
c427f0f536
Windows clipboard support (copy-paste)
2004-11-17 00:57:06 +00:00
gbeauche
ce67261af4
lock X11 display better around update_display_window_vosf()
2004-11-15 23:40:23 +00:00
gbeauche
e85f4397c8
Backport copy-paste of 'TEXT' from SheepShaver
2004-11-15 23:27:43 +00:00
gbeauche
e7fb4be12f
Fast spinlocks from SheepShaver for X11 clipboard handling
2004-11-15 23:24:09 +00:00
gbeauche
df471bbbe6
Fix build on Windows with recent gcc (winbug)
2004-11-15 00:24:16 +00:00
gbeauche
dc13732db0
Add Lauri's icon for Basilisk II builds on Windows
2004-11-15 00:07:54 +00:00
gbeauche
df85bf7885
Windows resources (icon)
2004-11-14 23:47:22 +00:00
gbeauche
5f44aa0266
Check for egrep early, as AC_EGREP_CPP wouldn't work correctly otherwise
...
(e.g. GCC version not detected, likewise for ANSI C headers). Add check
for Windows exceptions support. Some cosmetics for Cygwin.
2004-11-14 23:24:51 +00:00
gbeauche
cb99e7673d
Don't use pthread_mutexattr_setprotocol() on Cygwin targets as
...
PTHREAD_PRIO_INHERIT is not defined correctly and it probably wouldn't
work as expected anyway.
2004-11-14 23:23:07 +00:00
gbeauche
adf82c8f45
Handle .exe suffix for Windows builds. Remove obsolete rules for cpuopti.
2004-11-14 23:21:54 +00:00
gbeauche
87a73ed054
Windows keycodes
2004-11-14 23:01:18 +00:00
gbeauche
48b39b9eb1
Implement RGB555 mode on 16-bit displays (Windows)
2004-11-14 21:41:46 +00:00
gbeauche
68083d1102
Integrate SIGSEGV recovery from libsigsegv for Windows and Cygwin.
...
Also implement instruction skipper for Windows/x86.
2004-11-13 23:44:11 +00:00
gbeauche
347f7ce77b
Windows memory allocators
2004-11-13 23:39:58 +00:00
gbeauche
7533cac203
Implement Direct Addressing mode for SheepShaver.
2004-11-13 14:28:49 +00:00
gbeauche
6774a0821d
fix tester for BSF flags handling
2004-11-11 07:07:55 +00:00
gbeauche
a4a6233dab
fix detection of <linux/if.h> (thanks Bob Deblier)
2004-11-10 07:33:15 +00:00
gbeauche
20f5f531ca
fix inline dispatcher to really generate a cmove on x86-64 (silly bug!)
2004-11-08 23:24:54 +00:00
gbeauche
0c255e1fbd
Merge BSF simulation on P4 from Amithlon. Use 33-bit memory addressing model.
2004-11-08 21:10:46 +00:00
gbeauche
e3c5f1769d
Enable 33-bit memory addressing on 64-bit JIT capable platforms (e.g. x86-64).
...
This is useful to get rid of address offset sign extensions. It uses POSIX
shared memory to create aliased regions, fallback to usual sign-extension
way if shm_open et al. don't work (e.g. no /dev/shm mounted)
2004-11-08 21:07:07 +00:00
gbeauche
0ba075050c
Enable RIP-relative addressing, optimize REX conditions processing in
...
! X86_FLAT_REGISTERS mode, fix __REX_mem encodings (e.g. POPLm)
2004-11-08 20:48:19 +00:00
gbeauche
1e4fcc21bf
update for SDL audio/video + JIT compiler for x86_64
2004-11-03 00:07:35 +00:00
gbeauche
c21650b7a8
fix protection changes on translation cache + cosmetic fixlet
2004-11-02 23:52:00 +00:00
gbeauche
3fcceb052c
fix JIT FPU for x86_64
2004-11-02 23:28:19 +00:00
gbeauche
cfaddce448
disable store motion on gcc >= 3.3-hammer (and normal 3.4), where the option
...
is available actually
2004-11-02 20:40:54 +00:00
gbeauche
129f80faf6
preserve r11 as the register used to resolve pointers to functions
2004-11-01 18:40:30 +00:00
gbeauche
b3bd00f159
- affine need_to_preserve[] to get close to linux/x86_64 ABI
...
- optimize NOP fillers on x86-64 (based on GNU as implementation)
2004-11-01 17:12:55 +00:00
gbeauche
382294ef55
enable JIT on x86_64
2004-11-01 16:07:39 +00:00
gbeauche
e58fbc745b
revive and fix almost two-year old port to x86_64
2004-11-01 16:01:51 +00:00
gbeauche
730364ac1e
- optimize absolute addresses into RIP relative, if possible
...
- fix MOVQir as the operand is 64-bit
- fix IMULWrr, IMULLrr, IMULQrr, MOVSBWrr, MOVZBWrr
2004-11-01 15:37:40 +00:00
gbeauche
c12d2fa0ea
add dumb but handy brute-force runtime assembler verifier, someone will
...
probably want to rewrite it to use BFD/opcodes internals for checks
2004-11-01 15:30:46 +00:00
gbeauche
33be2e8ace
Reorder SPL, BPL, SIL, DIL IDs so that 8-bit register allocation is simpler
...
Fix MOVZBL and MOVSBL encodings with those extended 8-bit registers
2004-10-31 16:02:04 +00:00
gbeauche
87b79bdc20
fix SIB encoding with base=r13
...
fix PUSH/POP with x86_64 extended registers
fix CALL/JMP REX prefixes
2004-10-24 22:22:49 +00:00
gbeauche
bfd1c7b659
Try to fix 16 bpp over 32 bpp on MacOS X.
2004-07-27 21:40:52 +00:00
gbeauche
eed5724b80
SDL audio support
2004-07-19 19:25:07 +00:00
gbeauche
585a96c8be
NQD moved to SheepShaver src/gfxaccel.cpp
2004-07-02 06:08:01 +00:00
gbeauche
a4eb3b19ab
Don't try to make a cast value an lvalue (Brian Johnson). Add some explicit
...
casts to (int) in order to avaoid this warning:
warning: comparison between `const enum video_depth' and `enum <anonymous>'
2004-06-29 21:50:23 +00:00
gbeauche
05c503f09f
Indentation fixes. Sorry, my OS X ~/.emacs is total garbage.
2004-06-27 22:22:42 +00:00
gbeauche
f3fbf06674
Add configure macros to check for -framework Carbon & -framework IOKit so
...
that we choose to include ../MacOSX/clip_macosx.cpp, sys_darwin.cpp or not.
2004-06-27 22:06:02 +00:00
gbeauche
babd0f887c
typo
2004-06-27 20:36:09 +00:00
gbeauche
aec6f00f03
Clipboard handling on MacOS X.
2004-06-27 20:15:56 +00:00
gbeauche
4b7c7d22a1
Handle SDL scancode -> Mac keycode map files
2004-06-27 18:14:43 +00:00
gbeauche
1d86d66bd7
SDL scancodes -> Mac keycodes translation file
2004-06-27 17:31:52 +00:00
gbeauche
b6e1e6e536
Force processing of modifier keys through SDL keysyms. Fix mapping of
...
Option & Command keys on MacOS X. Fix scroll lock on MacOS X too.
2004-06-27 17:31:21 +00:00
gbeauche
4ea24edaf3
Fix video_vosf_init() for BasiliskII/SDL
2004-06-26 17:20:35 +00:00
gbeauche
6482f7b7a6
Try a better VOSF run-time performance check heuristic.
2004-06-26 16:26:07 +00:00
gbeauche
808b3e34c8
Add heuristic to deitermine run-time effect of VOSF acceleration, and
...
disable it if it turns out to not be profitable
2004-06-26 15:22:02 +00:00
gbeauche
46a9054861
Enable hardware cursor acceleration in SheepShaver/SDL version too.
2004-06-24 22:38:42 +00:00
gbeauche
1b5a3a6069
Check for the "true" command better with AC_PATH_PROG. aka fix BLESS
...
command checking on MacOS X.
2004-06-24 22:34:43 +00:00
gbeauche
3706fbc70d
Try to get maximum display width by assuming that would match maximum
...
possible resolution for fullscreen+hwsurface. Fix, termination of VModes[].
Really handle "windowmodes" prefs item, but this needs code factoring.
2004-06-24 21:46:55 +00:00
gbeauche
2d05122bdb
Initial SDL support for SheepShaver, though it seems to slow down the
...
emulator somehow. Also use better timing in redraw_func().
2004-06-24 15:25:57 +00:00
gbeauche
b76aab08e4
Move VideoMode wrappers to video_blit.h.
2004-06-24 15:19:56 +00:00
gbeauche
8948ce2a49
Use atexit(SDL_Quit) idiom. XCloseDisplay() only when using X11 graphics.
2004-06-24 15:18:42 +00:00
gbeauche
14587bed4d
SDL_WaitThread() works better when the thread arg is valid. ;-)
2004-06-23 22:55:47 +00:00
gbeauche
6b903f3d18
Fix events processing on MacOS X, though mouse motion is still not smooth
...
enough.
2004-06-23 22:37:33 +00:00
gbeauche
c6ff8bc709
Use clip_unix.cpp only with X11 targets. Otherwise, default to clip_dummy.cpp
2004-06-23 22:33:45 +00:00
gbeauche
cc61fe9dd2
Add GetScrap(). Use FOURCC for Mac 4-char codes
2004-06-23 16:32:00 +00:00
gbeauche
19494038b3
Initial SDL/video support. Fix VOSF code could lead to a crash on run-time
...
resolution/depth switching. Rearrange blitter lookup code, aka make it cleaner.
2004-06-23 14:30:48 +00:00
gbeauche
7af8aaed40
Initial SDL support.
2004-06-23 13:47:20 +00:00
gbeauche
25f205c535
Fix double mappings in "MacX" section, aka do recognize 'r' key.
2004-06-22 22:42:37 +00:00
gbeauche
342db1fb26
Handle Control key in "MacX" mappings.
2004-06-22 20:04:51 +00:00
cebix
d048916fda
updated
2004-05-27 13:58:07 +00:00
nigel
a141e8dd9e
New Autorelease pool stuff for NNTimer
2004-05-25 07:50:14 +00:00
nigel
826329a1c8
New Autorelease pool stuff for NNTimer
2004-05-25 07:38:27 +00:00
nigel
44e1e0455e
Some confusion about method name in NNTimer. Renamed it.
2004-05-25 07:37:52 +00:00
nigel
12e723e9a4
Force an autorelease pool around the redraw thread.
...
Requires an updated NNThread class
2004-05-25 05:26:41 +00:00
nigel
451d7b22c9
v16-classic
2004-05-25 04:26:54 +00:00
nigel
e77112aab0
Added howto import files using Disk Copy
2004-05-25 04:24:01 +00:00
nigel
8eb9ead7cd
Added Classic building option
2004-05-25 04:22:49 +00:00
gbeauche
237ab8ffc6
Delay_usec() for BeOS too
2004-05-15 16:21:37 +00:00
gbeauche
9445ccb5ad
typos
2004-05-12 11:46:34 +00:00
gbeauche
a8c8c1d4d9
Move and fix tun interface shutdown call
2004-05-09 16:32:12 +00:00
gbeauche
2ce9491e96
TUN/TAP support
2004-05-09 16:16:05 +00:00
gbeauche
fa0ea48eed
Try to document TUN/TAP use.
2004-05-09 16:15:36 +00:00
nigel
0cee6a8fba
Added notes about the classic version of the app
2004-05-02 11:34:49 +00:00
nigel
4441484404
Working code to locate floppy drives
2004-05-02 11:12:07 +00:00
nigel
c44036a4ce
Always remove cdrom & floppy prefs, as we always need to locate them freshly
2004-05-02 11:09:25 +00:00
nigel
b0c4669f04
v16, now in two flavours!
2004-05-02 11:06:14 +00:00
nigel
69d86724a1
More ideas
2004-05-02 11:03:32 +00:00
nigel
2fb48eaab2
Cope with non-ASCII directory/file names
2004-05-02 11:02:34 +00:00
gbeauche
815390707a
Decode MOVSX r32, r/m16 (generated by icc v8.0 on x86)
2004-02-16 16:02:48 +00:00
nigel
c0db6d3f47
Typo in IDE auto-detection
2004-01-29 12:28:53 +00:00
nigel
4a33797b48
On second thoughts, not many people will be building on 10.1,
...
so it is better to create a dummy file now.
2004-01-29 12:26:28 +00:00
nigel
d2602583e2
Try to get nowrite.icns from 10.1 install
2004-01-29 12:24:43 +00:00
nigel
622a0e6e23
Some project files had absolute paths (i.e. ~nigel), and the compiler
...
-D flags had values that are more correctly picked up from config.h
2004-01-29 12:20:59 +00:00
nigel
6412114eab
Properties of target when built in Xcode
2004-01-29 12:15:18 +00:00
nigel
f2d79b7773
Protect from bug/crash when a click in the window would
...
try to send ADB mouse events to a non-existant emulator
2004-01-29 12:10:47 +00:00
nigel
de2d213c88
Remove defines for OS_, BSD_COMP, *_ADDRESSING and FPU_, as these should be
...
included by config.h, and defining them here makes them hard to change
2004-01-28 07:31:03 +00:00
nigel
cd15959140
John Daniel's changes; CarbonCore is hard to find (sub framework of the
...
CoreServices framework). Easier to include full Carbon header instead
(and remove extra defs).
2004-01-28 07:29:38 +00:00
nigel
8f50d27091
/bin/true isn't on OS X, auto-detect Xcode (vs Project Builder),
...
some textual changes to make it even more like Unix/autoconfigure.ac
2004-01-28 07:26:00 +00:00
nigel
c983b0e80f
Xcode vs Project Builder is now automatically configured - no extra rules
2004-01-28 07:24:31 +00:00
nigel
8f2870ac0e
Correct comment about ENABLE_MULTIPLE
2004-01-28 07:21:32 +00:00
nigel
c9d4da6303
Mention Xcode, add note about strange 10.1 linking bug
2004-01-28 07:20:36 +00:00
nigel
9798e97c5b
Added help items on some buttons
2004-01-28 04:09:24 +00:00
nigel
28263d86c3
Shorten slightly - General Public License didn't fit in the about window
2004-01-28 04:07:59 +00:00
nigel
d42aeaa95d
Use xcode for app target, too (thanks to John Daniel)
2004-01-27 22:04:12 +00:00
nigel
5bbde8f9fe
Minor changes for latest code
2004-01-27 11:54:37 +00:00
nigel
710140c04b
Project file for Xcode (10.3 development IDE)
2004-01-27 11:48:19 +00:00
nigel
9cdba256f8
Corrected removal of bad serial prefs data
2004-01-27 11:31:01 +00:00
nigel
a77b3c7204
Typo in comment
2004-01-27 11:28:19 +00:00
nigel
35d3ea9991
Code to cope with errors from an incomplete preferences file
2004-01-27 11:20:24 +00:00
nigel
c9af62f191
Happy New Year :)
2004-01-27 04:44:36 +00:00
nigel
4a61b727af
On 10.1, parse_screen_prefs() was being called with a nil string
...
(i.e. PrefsInit wasn't getting a screen pref item). Cope with that.
2004-01-27 04:39:33 +00:00
nigel
db3c11dd75
Can only use floppy location code on OS X 10.2 or above?
2004-01-27 04:37:23 +00:00
nigel
5e528f2d6f
Some latest changes from Unix version, add subterfuge test back in
...
(even though it will still hang - it is not needed on OS X),
use DIRECT/REAL_ADDRESSING/FPU_IEEE/UAE from config
2004-01-27 04:35:30 +00:00
nigel
7f20240b34
Link to new Darwin test apps, copy some Unix source that has to be compiled
...
using the local sysdeps.h, REAL ADDRESSING configure example
2004-01-27 01:18:02 +00:00
nigel
ef0dfde608
Cleanup extra Darwin generated link and programs, stuff from 10.3's autoconf,
...
OS X finder cache, ide rule now uses xcode, oldide rule for Project Builder.
2004-01-27 01:15:17 +00:00
nigel
e166715fcd
JIT flush changes from latest unix_main.cpp
2004-01-27 00:18:24 +00:00
nigel
a8b53dcb8e
Added AQUA symbol, made more like latest Unix version
2004-01-26 12:06:02 +00:00
nigel
a51ba44ffe
Added code to remove my broken old floppy & serial prefs values
2004-01-26 11:12:46 +00:00
nigel
631aa2003a
Special serial/floppy device locating code
2004-01-26 11:11:33 +00:00
nigel
9c57351dba
Tidy up Aqua/Darwin specific code
2004-01-26 11:08:52 +00:00
nigel
885eb469b1
Version 15 changes
2004-01-26 11:06:11 +00:00
nigel
5224682cb3
Floppy/real addressing changes
2004-01-26 11:01:13 +00:00
gbeauche
93c472ec0a
cosmetic fixes when printing movsbq operation summary
2004-01-22 00:00:55 +00:00
gbeauche
7a0681c44b
handle (skip) x86 movsbl instructions
2004-01-21 23:50:06 +00:00
gbeauche
1a6c128ab2
Summary: possible support of SheepShaver on Zaurus PDAs
...
Add Linux/ARM instruction skipping, includes support for ARMv4+ halfword
and signed data transfer instructions. Note that load/store multiple are
not handled and someone has to make sure post-incr/write-back logic is
correctly implemented.
2004-01-21 23:14:28 +00:00
nigel
2208c5460b
Added missing switch value to eliminate a warning
2004-01-20 23:49:32 +00:00
nigel
69a30f4c8e
Updated screen update comment. 10.3 can achieve over 600fps!
2004-01-20 23:44:13 +00:00
nigel
4f566d62b4
Fix for non CGIMAGEREF drawing, dummy Screen_fault_handler()
2004-01-20 23:41:11 +00:00
nigel
9579c58008
Incorporate recent changes from Unix/sysdeps.h
2004-01-20 23:35:47 +00:00
nigel
ff36326ea8
Use correct (non-deprecated) names for some keys
2004-01-20 23:31:46 +00:00
nigel
3d4961887c
Make distclean remove some extra files/dirs generated by autoconf,
...
and some Darwin test programs generated by configure.
Note - Ideally it would also remove configure?
2004-01-20 03:30:52 +00:00
gbeauche
d09df6d1fa
ARM/linux sigsegv handler. Instruction skipper yet to be written for
...
happy Zaurus owners.
2004-01-19 16:59:13 +00:00
cebix
5098c8ae83
Happy New Year!
2004-01-12 15:55:51 +00:00
cebix
9e7932abf0
Happy New Year! :)
2004-01-12 15:29:31 +00:00
gbeauche
3b68b863c7
Make sure 68k procedures are stored on 16-bit word boundaries.
2004-01-10 08:54:14 +00:00
gbeauche
866919579f
Force DSP_RESET on AudioExit() so that we don't get "clicks" (?).
2004-01-04 16:35:32 +00:00
gbeauche
f054ce8648
Always prefer our (inlined) spinlocks.
2004-01-04 06:11:49 +00:00
gbeauche
3fd927f404
Force device to stop immediately with an SNDCTL_DSP_RESET. Otherwise, a
...
regular close() sends SNDCTL_DSP_SYNC which can hang (and does on PPC)
2004-01-04 05:47:08 +00:00
gbeauche
c48515b6d5
Instruction skipper for Solaris/SPARC.
2003-12-20 23:22:25 +00:00
gbeauche
47f64bdcb8
Add support for Linux/hppa, FreeBSD/alpha. Misc debugging output.
2003-12-20 21:50:08 +00:00
gbeauche
36ee9370a6
Fix build with DEC C++ compiler on Tru64.
2003-12-20 21:44:52 +00:00
gbeauche
9b99a095f0
MIPS instruction skipper. TODO: check LWL/LWR semantics.
2003-12-20 10:06:18 +00:00
gbeauche
fdf5970c28
Fix subterfuge mode on IRIX/mips. Get PC in both modes for Irix too
2003-12-20 07:43:56 +00:00
cebix
ea0d909ce5
run depmod after installing module
2003-11-28 15:49:16 +00:00
gbeauche
10c04e2654
Enable possibility to manually pass VM_MAP_32BIT & friends. This is needed
...
for the PowerPC "JIT1" engine.
2003-11-24 23:27:18 +00:00
gbeauche
45df157a5e
Implement lazy icache range invalidation. Disable for now until it shows
...
a real benefit over only 2%
2003-11-21 14:20:01 +00:00
gbeauche
1af0362296
fix loff_t & caddr_t type checks
2003-11-21 14:16:02 +00:00
gbeauche
3630404307
fix fp_do_sgn1() for "double"-targets
2003-11-21 13:27:47 +00:00
nigel
d9a7e20b8b
Latest changes from Unix version (which I don't think work)
2003-11-18 11:19:35 +00:00
nigel
39cc371988
Latest changes from Unix version (mostly signal/page zero fixes)
2003-11-18 11:17:55 +00:00
nigel
ee0958380c
Compile fix for OS X (which does not define loff_t)
2003-11-18 11:14:43 +00:00
gbeauche
d4ad77d734
really fix writes to byte registers
2003-11-11 00:10:39 +00:00
gbeauche
4bce0876c0
fix configure tests. i.e. move up arch_insn_skipper_tests()
2003-11-10 23:54:31 +00:00
gbeauche
1169001df7
Extend x86 instruction skipper to AMD64. Add plenty of arch dependent
...
opcodes to test it. Also fix DEBUG output & writes (zero'ing) to %xH regs
2003-11-10 23:47:39 +00:00
gbeauche
9057fda327
- FreeBSD/i386 sigcontext subterfuge support for instruction skipper
...
- NetBSD/alpha support from Boehm GC
- NetBSD/i386 won't work in sigcontext subterfuge mode unless instruction
is decoded more accurately to compute the effective address. Also note
that NetBSD 1.6 does not support siginfo_t yet.
2003-10-21 23:10:19 +00:00
gbeauche
f8a0f363ea
Solaris/SPARC support for SIGSEGV_FAULT_INSTRUCTION
2003-10-21 21:59:41 +00:00
gbeauche
309c2f0bd5
Add "jitblacklist" prefs item so that opcodes ranges could be excluded for
...
translation. This should help debugging of (badly) translated code.
Usage: jitblacklist xxxx(-yyyy)?(;xxxx(-yyyy)?)*
where xxxx/yyyy are hexadecimal numbers
2003-10-14 10:29:19 +00:00
gbeauche
75df809ff7
fix merge with Mach exception filters, we have preconditions to check
2003-10-13 20:15:41 +00:00
gbeauche
6a60d56bf2
indentation fixes, optimize handle_badaccess() to receive only necessary
...
data and don't copy a struct sigcontext again on x86.
2003-10-13 19:56:17 +00:00
gbeauche
14b51b9519
return something more convenient to debug on errors
2003-10-13 19:43:09 +00:00
gbeauche
45c30ba9f2
Merge in __PAGEZERO hack from Michael Z. Sliczniak so that REAL_ADDRESSING
...
mode can work under Darwin.
2003-10-12 22:39:59 +00:00
gbeauche
4641be3209
Really make sure VERSION & PACKAGE macros are defined when generating a
...
configure script with autoconf 2.52.
2003-10-12 21:58:02 +00:00
gbeauche
c04603adce
Add hacks to disable "floppy" & "serial[ab]" entries that would cause
...
Basilisk II to hang on MacOS X as an X11 build. I am not sure this is
supposed to work in an Aqua build so I leave that enable there, assuming
<AvailabilityMacros.h> is included somehow, thus defining MAC_OS_X_VERSION_*
and friends.
2003-10-12 21:55:44 +00:00
gbeauche
46dc8c5391
Make sure reported fault instruction address falls into the expected code
...
range. This is a configure-time safety net that depends on the GCC "Labels
as Values" extension.
2003-10-12 21:41:19 +00:00
gbeauche
006f72c9fe
Report failure to install the SIGSEGV handler correctly
2003-10-12 21:21:35 +00:00
gbeauche
cf3d36a3a7
Mach memory fault recovery from Michael Z. Sliczniak
2003-10-12 21:15:52 +00:00
gbeauche
b2fee2f576
Mach bad access recovery support from Michael Z. Sliczniak
2003-10-12 15:56:00 +00:00
gbeauche
192943f46c
Fix vm_acquire() and friend on MacOS X
2003-10-12 11:00:12 +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
cebix
ddcfbe2bda
parallel build uses NCPU jobs instead of NCPU+1
2003-09-29 13:30:29 +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
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
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
nigel
35fcf4d98c
Added new keyboardtype preference (stolen from the Windows port)
2003-08-16 03:28:58 +00:00
nigel
ddb433382d
Added new keyboardtype popup menu
2003-08-16 03:03:52 +00:00
nigel
09bb402d31
Corrected path on some Unix source, added HowTo.html,
...
updated vers. no, turned off debugging
2003-08-16 02:59:17 +00:00
nigel
583fb6cd74
New version (still at beta), new ideas, slight reformatting
2003-08-16 02:53:50 +00:00
nigel
a861c1c322
Extra code for keyboardtype popup menu, renamed a variable
2003-08-16 02:51:46 +00:00
nigel
cb6adb6291
Default app for HowTo.html (instead of TextEdit), formatting (spaces->tabs)
2003-08-16 02:47:27 +00:00
nigel
75f84b51ce
Some segmentation trap changes from latest main_unix.cpp
2003-08-02 11:03:15 +00:00
nigel
786072d3a6
extfs now defaults to user's home directory (mounting / is a bit dangerous, and slow)
2003-08-02 10:43:06 +00:00
nigel
665ef27a0e
Added OS X sections
2003-08-02 08:48:38 +00:00
nigel
4b4a2de13e
Small tidyup
2003-08-02 08:47:26 +00:00
nigel
74b3b4b669
Updated Unix config.{guess,sub} which know about Darwin means that
...
we can use them instead of looking for the OS X installed versions.
2003-08-02 08:19:48 +00:00
nigel
ff841e7ea3
App needs Unix/sigsegv.cpp. How did I miss this?
2003-08-02 07:26:17 +00:00
nigel
7934f6d322
Added minor changes from latest Unix version
2003-08-02 06:22:54 +00:00
cebix
91c9cf1879
fixed the test for GCC [Brian J. Johnson]
2003-07-25 13:45:25 +00:00
cebix
2257e7be3f
fix for no-threads case for an emulated 68k [Todd Vierling]
2003-07-25 13:41:58 +00:00
cebix
16b21014ef
added format switching and other improvements [Brian Johnson]
2003-07-12 11:04:38 +00:00
cebix
0074b3346e
modernized the autoconf stuff
2003-07-01 18:10:38 +00:00
cebix
c945f0484e
updated autoconf auxiliary files
2003-06-27 13:59:16 +00:00
nigel
846715a208
New items for changing prefs file
2003-06-03 12:46:33 +00:00
nigel
c5e4d8dbb4
Incomporated some more stuff from latest Unix version, formatting changes
2003-06-03 12:40:02 +00:00
nigel
da5f337873
Reformatted raw text, added latest changes (preliminarily for next version)
2003-06-03 12:32:00 +00:00
nigel
d71e2ec8eb
Removed publish suggestion
2003-06-03 12:28:46 +00:00
nigel
1b0c7c081d
Added RCS Id
2003-06-03 12:27:12 +00:00
nigel
b75827d41d
Better ROM copying doco (as suggested by Sacha Mitchell)
2003-06-03 12:26:28 +00:00
nigel
4de2b90c6f
Sorted methods
2003-06-03 12:22:30 +00:00
nigel
2ae95d0f95
Minor doco changes
2003-06-03 12:14:45 +00:00
gbeauche
f3ad33ed58
Call correct PUSHF/POPF macro
2003-06-03 09:01:03 +00:00
gbeauche
04167990a6
workaround a compiler bug on SPARC (Milan)
2003-05-28 10:17:43 +00:00
gbeauche
ccdec0782b
really make long double values (Milan)
2003-05-28 10:14:14 +00:00
gbeauche
548e5a3dfd
Rearrange video_vosf.h to accomodate both SheepShaver and BasiliskII video
...
infrastructure. Make video_blit.cpp a little more emulator independent.
2003-05-22 22:13:56 +00:00
gbeauche
3863961d26
- Fix "extended register" predicate to exclude X86_NOREG and X86_RIP
...
- Really handle requested 32-bit absolute address in AMD64 target
- Fix REX prefixes in 16-bit ALU instructions
- Fix POPF, remove useless? POPFD and PUSHFD
2003-05-19 17:15:17 +00:00
gbeauche
deb3da2e9f
New API to ignore a SIGSEGV fault. This should help on SheepShaver/x86 for now
...
since I still don't know why MacOS would like to write to ROM on a particular
test.
2003-05-14 06:50:05 +00:00
gbeauche
61e40b3e55
Fix check against return value of memset() in vm_acquire_fixed
2003-05-13 16:56:37 +00:00
gbeauche
f5a1a93d2c
Fix check for mmap()'able low mem globals
2003-05-13 16:33:06 +00:00
gbeauche
ffd603b472
Little-endian fixes for SheepShaver
2003-05-13 12:34:09 +00:00
nigel
69d04276e8
Extra code for changing preferences file
2003-04-02 02:19:53 +00:00
nigel
73ebbba57b
Extra methods and outlets for changing preferences file,
...
slight tidyup
2003-04-02 02:18:05 +00:00
nigel
d30306e659
Allow prefs file path from args,
...
include some extra stuff from latest unix version of file
2003-04-02 02:15:52 +00:00
nigel
2e41901fb0
Arg processing for prefs file path, include some extra stuff
...
(SEGV and JIT) from latest unix version of file
2003-04-02 00:50:40 +00:00
nigel
b97f09221e
Eliminate a few warnings
2003-04-02 00:37:34 +00:00
nigel
21c4e9da5b
Building on GCC 2 causes errors:
...
../uae_cpu/gencpu.c: In function `void gen_opcode(long unsigned int)':
../uae_cpu/gencpu.c:874: conversion from `unsigned int' to `enum wordsizes'
../uae_cpu/gencpu.c:875: conversion from `unsigned int' to `enum amodes'
due to mismatching of types in struct instr and types in function prototypes.
However, this only started happening recently and I don't know why :-(
2003-04-01 05:26:07 +00:00
nigel
f28e590583
Some extra versions tested, extra tips, ExtFS 7.5.3
2003-04-01 03:17:47 +00:00
nigel
4cac5119a7
Final v13 changelist
2003-04-01 01:58:11 +00:00
nigel
4d14181d12
Allow changes in Prefs window while emulator is running
2003-04-01 01:56:41 +00:00
nigel
dc836dc547
Extra Help menu items, change RAM size without pressing return
2003-04-01 01:55:12 +00:00
nigel
6b7e006f01
Controller classes for extra Help menu items
2003-04-01 01:53:54 +00:00
nigel
427d135d6f
Copyright symbol corrected (edited the file in vi and did an option G.
...
It now looks wrong in something like TextEdit, but appears correct in
the About panel and the Finder).
2003-04-01 01:52:24 +00:00
nigel
f619fca6bc
Added v13, updated bugs
2003-03-27 00:04:13 +00:00
nigel
1cbb3395d2
1) Publish methods for clearing and blackening the bitmap
...
2) Always do the calculations for a possibly scaled view.
Even if we prevent the user from changing the view size,
the Monitors control panel in the emulator may still try to
select a resolution which is too large for the screen,
and thus the window will have to be reduced to fit,
and thus the screen and bitmap co-ords may not match
2003-03-26 23:37:42 +00:00
nigel
18c58aa9d7
Publish methods for clearing and blackening the bitmap
2003-03-26 23:35:23 +00:00
nigel
5b1f064815
Re-entry fix (purge vectors in VideoExit()),
...
animate resizing of window, and centre afterwards
2003-03-26 23:08:20 +00:00
nigel
1140676a8c
Fixes for safe Restart()ing, some tidying up
2003-03-26 23:04:46 +00:00
nigel
afcb32e804
Starter documentation (in response to some users' FAQs)
2003-03-26 22:26:32 +00:00
nigel
b3787f0885
Correctly deal with error conditions from InitEmulator()
2003-03-26 01:45:31 +00:00
nigel
003d6cfbe3
Repair QuitEmulator replacement macro.
...
(we was incorrectly returning after the call to InitAll() )
2003-03-26 00:26:38 +00:00
nigel
0ba592d6f4
Extra help menu action (for HowTo)
2003-03-26 00:20:54 +00:00
nigel
5f7830a3d5
Increase default windowed screen height to the minimum
...
for a colour Mac (was appropriate for B&W only)
2003-03-26 00:18:05 +00:00
nigel
e8522126d5
Minor UI error from removal of OpenGL button
2003-03-25 01:47:37 +00:00
nigel
be7c9b0f72
When in CGIMAGEREF windowed mode; cleanup
...
when changing modes, future mask generation code.
2003-03-25 01:46:45 +00:00
nigel
b39a1d7729
Extra warning for ROM path not set,
...
try to terminate in QuitEmulator()
2003-03-25 01:44:16 +00:00
nigel
aaf7c9e10d
Incorporate x86_64 changes from latest Unix version
2003-03-25 01:42:41 +00:00
nigel
447f269ef7
Oops. QuitEmuNoExit() was exiting the NSApp.
2003-03-24 22:50:55 +00:00
nigel
32a526474c
Fixes for latest FPU emulation source.
...
(We add the FPU_* into config.h so that the IDE can pick it up automatically)
2003-03-24 11:41:32 +00:00
nigel
7c4972328e
timer_unix.cpp in current directory, fpu_ieee.cpp instead of fpu_uae.cpp
2003-03-24 11:31:03 +00:00
nigel
b855865ea2
Unix/timer_unix.cpp was also being compiled with the wrong sysdeps.h
...
(the one from the Unix directory)
2003-03-24 10:18:23 +00:00
nigel
a79d56c449
Compile fix for latest uae_cpu
2003-03-24 06:42:56 +00:00
nigel
bc1d80ebf8
I was compiling ../Unix/sys_unix.cpp, but that meant the compiler
...
was pulling in ../Unix/sysdeps.h that did not define loff_t.
So, I now generate and compile a symlink to that file instead
2003-03-24 06:18:22 +00:00
nigel
9f6a9d6487
audio_defs.h compatible with OS X
2003-03-23 23:42:04 +00:00
nigel
0e7a8fb638
Start of audio hacking
2003-03-23 23:36:04 +00:00
gbeauche
9ed554b3a9
Remove some dead code. Start implementation of optimized calls to interpretive
...
fallbacks for untranslatable instruction handlers. Disabled for now since
call_m_01() is not correctly imeplemented yet.
2003-03-21 19:12:44 +00:00
nigel
ffaf4cbd56
Prevent progress indicator from growing when window resized
2003-03-21 13:04:26 +00:00
nigel
a3d30b9798
Removed unused outlets and buttons
2003-03-21 12:57:36 +00:00
nigel
88c7c5a761
Oops. Those files are in CVS. Comment out the TIFF repair commands
2003-03-21 12:38:04 +00:00
nigel
4c375f68b3
Oops. Stuffed up a CVS file, and added these in the wrong place
2003-03-21 12:32:29 +00:00
nigel
fd727644b1
Updated version and year in copyright, added source file
2003-03-21 12:28:21 +00:00
nigel
338d0ef4e5
Smaller reset & shutdown buttons - resized & moved a few items
2003-03-21 12:24:21 +00:00
nigel
18efc23894
Generate some icons used by Interface from OS X's login panel
2003-03-21 12:22:35 +00:00
nigel
886ca6c348
Removed any OpenGL stuff
2003-03-21 12:04:34 +00:00
nigel
6180b4246a
Some Interface Builder files that somehow weren't checked in?
2003-03-21 11:46:55 +00:00
nigel
82afd86ca5
New version, removed a few things from ToDo list
2003-03-21 10:07:54 +00:00
nigel
c106019389
Removed OpenGL relerences, updated description of windowed mode
2003-03-21 09:14:34 +00:00
nigel
f1a09b3155
Darwin-specific CD code.
2003-03-21 07:05:28 +00:00
nigel
fda7b93625
Darwin-specific prefs and initial CD code. Since some of the CD code is just too weird to include here, I just call extern functions which I currently implement in a file sys_darwin.cpp
2003-03-21 07:03:05 +00:00
nigel
f537fee92f
When using CGIMAGEREF drawing strategy, allow any bit depth
2003-03-21 06:44:14 +00:00
nigel
762b76f565
Allow snapshot of window, no matter what the drawing strategy. Mention drawing strategy in benchmark results
2003-03-21 06:41:04 +00:00
nigel
3fe9f5701e
Now supports all bit depth when in windowed mode
...
(but only when using CGIMAGEREF drawing strategy)
2003-03-21 06:29:28 +00:00
nigel
dea9029450
Use CGIMAGEREF as drawing strategy, and update comments explaining why
2003-03-21 06:14:22 +00:00
gbeauche
b48a5a3253
Detect x86-64
2003-03-20 13:49:49 +00:00
gbeauche
96ae75cd7e
Optimize TEST[BWLQ]ir case where dest register is %rax
...
Add JCCSii and JCCii which directly takes the displacement value to encode
2003-03-19 17:06:22 +00:00
gbeauche
ecab19aa4e
Emulate CMOV in the new code generator for processors that don't support
...
this intruction
2003-03-19 17:05:02 +00:00
gbeauche
06af072a40
Add missing wrappers of the new runtime-assembler primitives
2003-03-19 16:32:51 +00:00
gbeauche
a3b815366a
Add facility to filter out some opcodes from the compfunctbl[] et al.
2003-03-19 16:28:23 +00:00
gbeauche
547bd6ab2c
Fix MOVBrr
2003-03-19 16:25:12 +00:00
gbeauche
c4bf8e0695
Fix 0(%rbp,<reg>,1) operand encoding
2003-03-19 11:34:10 +00:00
gbeauche
da8d81509e
Add new backend, disabled for until it's proofread and fully functional
...
Remove obsolete string-related instructions
2003-03-18 17:26:32 +00:00
gbeauche
5fb74e3592
Add sign/zero-extend instructions
2003-03-18 17:01:44 +00:00
gbeauche
29f636c2eb
Fix _REXBmr(). Add CPUID. Some C++ compiler fixes. Make x86_emit_failure()
...
be void, and let x86_emit_failure0() be an int expression instead.
2003-03-18 16:28:23 +00:00
gbeauche
8271c0503e
Add CMOV and BSF/BSR instructions
2003-03-18 13:12:56 +00:00
gbeauche
e07bfdbc8b
Handle absolute and RIP addressing modes in x86-64
2003-03-18 10:08:16 +00:00
gbeauche
ce3d90ff5e
clobber "cc" for flags, not "flags". Thanks Milan for noticing it.
2003-03-17 22:37:55 +00:00
gbeauche
08e9f936eb
Add some SSE/SSE2 instructions
2003-03-17 17:18:24 +00:00
gbeauche
32e53e7b3b
typo
2003-03-14 17:11:49 +00:00
gbeauche
9da9568525
Document current JIT options.
2003-03-14 17:10:47 +00:00
gbeauche
df97c3d02e
JIT compiler is integrated but not yet the default for Linux/x86 and
...
FreeBSD/x86.
2003-03-14 17:10:19 +00:00
gbeauche
c2566295af
Implement a generic setzflg_l() for P4, thus permitting to re-enable
...
translation of ADDX/SUBX/BCLR/BTST/BSET/BCHG instructions. i.e. make
it faster. ;-)
2003-03-13 20:34:34 +00:00
gbeauche
0cfa3126b3
Workaround change in flags handling for BSF instruction on Pentium 4.
...
i.e. currently disable translation of ADDX/SUBX/B<CHG,CLR,SET,TST> instructions
in that case. That is to say, better (much?) slower than inaccurate. :-(
2003-03-13 15:57:01 +00:00
gbeauche
a8e76deb69
Fix align_target with a padding of 0 bytes
2003-03-13 09:51:31 +00:00
nigel
bd29aa7a27
Mouse position fixes when in fullscreen mode.
2003-03-11 11:44:14 +00:00
nigel
029178546f
Minor doco updates
2003-03-11 11:32:51 +00:00
nigel
8a62df5ae7
32bit defaults for windowed mode.
2003-03-11 11:31:56 +00:00
nigel
7726ef1b05
Simplified (and sped up) mouse movement processing when in fullscreen mode.
2003-03-11 11:31:01 +00:00
nigel
ef73063528
Corrected mouse co-ordinate processing after full screen resizing,
...
simplified mouse movement processing for full screen, added a few comments.
2003-03-11 11:27:20 +00:00
cebix
a69dcbb18f
some cleanups
2003-02-06 19:24:09 +00:00
cebix
4bca966e18
added "install" target
2003-02-06 19:10:08 +00:00
gbeauche
45289042e6
Add some FPU instructions. Minor clean-ups.
2003-01-31 23:48:10 +00:00
gbeauche
ee7cea923a
Add new run-time assembler derived from GNU lightning. It is suitable for
...
both i386 and x86-64 architectures. Still needs some work (see TODO) and
an actual glue to the JIT backend.
Original work is LGPL, but per section 3 of this license, I opt for GPL v2
for Basilisk II purposes.
2003-01-31 20:39:53 +00:00
cebix
26f5e92427
read_toc() dumps the entire TOC when DEBUG=1
2003-01-16 18:33:40 +00:00
nigel
f19f18175b
Change MIN_HEIGHT, add new one for classic mode
2003-01-10 23:18:02 +00:00
nigel
a0a00b77f5
Corrections for 10.1 (which has a much older autoconf)
2003-01-10 23:16:47 +00:00
nigel
f7e84c7569
Updates for latest (though as yet unreleased) version
2003-01-10 23:12:37 +00:00
nigel
ca5f5e1b01
Make cpuemu[1-8].cpp if a for loop, a few minor corrections
2003-01-10 23:05:06 +00:00
nigel
5a9ec56a21
Extra methods for new Help menu items
2003-01-10 23:01:48 +00:00
nigel
25ea75ff32
Added a few notes on different compilation strategies
2003-01-10 23:00:43 +00:00
nigel
1527cac014
10.2 enhancements, eliminated some warnings, added alpha channel mask stuff
2002-12-19 10:40:40 +00:00
nigel
75e3b116a2
Corrected 10.2 problem, add 10.1 compile fix for newer configure.in
2002-12-18 12:13:28 +00:00
nigel
d94d399de8
Better comments about drawing strategies,
...
new define to specify using the alpha channel
2002-12-18 12:05:48 +00:00
nigel
b7d39be14d
[[blah alloc] init] -> [blah new],
...
error checking when deleting volume files
2002-12-18 11:56:12 +00:00
nigel
3bc22a52d2
[[blah alloc] init] -> [blah new]
2002-12-18 11:54:17 +00:00
nigel
470adec0e6
Allow randomise to work with different drawing strategies
2002-12-18 11:53:11 +00:00
nigel
bfbeb17a96
[[blah alloc] init] becomes [blah new]
2002-12-18 11:50:12 +00:00
nigel
fc8a542d53
JIT
2002-12-18 11:33:37 +00:00
gbeauche
1477b501d1
Add changes from Brian Johnson:
...
- Update MIPSpro compiler flags
- Only define static variables if they are to be used
- Try to lock the pthreads mutex prior to unlocking/destroying it
2002-11-24 20:07:25 +00:00
gbeauche
3711aa4520
Update ASM_SYM_FOR_FUNC to match x86-64 too, may be useful later.
2002-11-16 15:38:53 +00:00
gbeauche
144e6f4e87
Use old x87 FPU stack on x86-64 too because we now use long doubles there for
...
better accuracy. Aka. prefer compatibility over speed.
2002-11-16 15:28:25 +00:00
gbeauche
bc5d7f9490
OPTIMIZED_FLAGS for x86-64 with the pushf/pop method since sahf/lahf are
...
invalid in long mode.
2002-11-05 11:59:12 +00:00
gbeauche
abaa9fb2cd
Add configury for x86-64
2002-11-05 11:58:40 +00:00
gbeauche
862273a9d5
Updates to reflect recent cxmon 64bit changes
2002-11-05 10:33:06 +00:00
gbeauche
58b3aaba5b
Get rid of CPU_* defines as nobody actually used them and are useless
2002-11-05 10:32:42 +00:00
gbeauche
3bf7843db1
x86-64 can do unaligned accesses
2002-11-05 10:32:05 +00:00
gbeauche
0a201217bf
Remove obsolete CFLOW_* constants but keep cpuop_{begin,end} for an
...
inline-threaded core.
2002-11-02 18:13:29 +00:00
gbeauche
2cda26edae
Fix buffer overflow reported by Aranym people
2002-11-02 17:23:20 +00:00
nigel
45b2765c21
Eliminate compile warning
2002-10-31 08:54:21 +00:00
nigel
c8218bbb11
SOme 10.2 compile fixes
2002-10-31 08:52:59 +00:00
nigel
6a0f9df867
Fixes for compiling on 10.2
2002-10-29 14:28:52 +00:00
nigel
c68df84838
Eliminate warning
2002-10-29 14:27:00 +00:00
nigel
9745e40ddb
Correct path for some Unix files
2002-10-29 14:26:26 +00:00
nigel
954ee59832
Now generated by autoheader
2002-10-29 14:23:31 +00:00
nigel
9791c82ce4
Added Id, overwrite existing symlinks, run autoheader
2002-10-29 14:18:22 +00:00
nigel
0af0f74ea3
Added rules to generate MacOSX archive
2002-10-28 10:56:23 +00:00
nigel
a591d0e0cb
Added info about documentation
2002-10-22 12:11:45 +00:00
nigel
5f755a4baa
Add include to eliminate warning
2002-10-22 12:10:18 +00:00
nigel
47e9fe084c
Corrected dependency for non-ide building
...
(makefile was not generating cpuemu*.cpp)
2002-10-22 12:09:17 +00:00
cebix
466fc971f6
Unix: new prefs options "dsp" and "mixer" to set the OSS device names instead
...
of the hardcoded '/dev/dsp' and '/dev/mixer'
2002-10-15 16:25:04 +00:00
gbeauche
2cb7e02c9e
Some instructions assume offsets are only 1-byte long. I don't think this
...
is 100% correct. Therefore, insert some asserts so that would fail.
2002-10-13 11:14:24 +00:00
gbeauche
aa6b264d21
Add raw_emit_nop_filler() with more efficient no-op fillers stolen from
...
GNU binutils 2.12.90.0.15. Speed bump is marginal (less than 6%). Make it
default though, that's conditionalized by tune_nop_fillers constant.
2002-10-12 16:27:13 +00:00
nigel
7914fdc677
Incorporate several changes from latest Unix version of file
2002-10-06 23:29:59 +00:00
nigel
ce0bca286f
Change required for GCC 3.1 (stdc++ library needed in C++ program link),
...
general tidy-up (now use G++ to compile several files at once for gencpu)
2002-10-06 23:28:58 +00:00
nigel
162cc94bcd
Newer prototype required by GCC 3.1
2002-10-06 23:26:07 +00:00
nigel
dd6025502d
MacOS 10.2 compatibility (diffeent config.sub & config.guess location),
...
argument processing (like Unix autogen.sh)
2002-10-06 23:23:10 +00:00
gbeauche
8bf60db5ee
Real addressing mode also works on Linux/ppc. Uhoh, what was the initial
...
problem anyway?
2002-10-03 19:57:12 +00:00
gbeauche
78ac3e667f
Don't forget to note CPU detection code mostly comes from Linux kernel.
2002-10-03 16:16:57 +00:00
gbeauche
d4ed937de6
JIT add copyright notices just to notify people that's real derivative
...
work from GPL code (UAE-JIT). Additions and improvements are from B2
developers.
2002-10-03 16:13:46 +00:00
gbeauche
ff85d804d0
Real addressing is reported to work on FreeBSD/i386 too
2002-10-03 15:50:13 +00:00
gbeauche
177cdee820
configure script is reportedly no longer crashing on FreeBSD when
...
SIGSEGV_SKIP_INSTRUCTION is set.
2002-10-03 15:49:14 +00:00
gbeauche
3efbc30695
B2 maintainer for FreeBSD reported <sys/soundcard.h> is the one to use in all
...
recent versions of FreeBSD.
2002-10-03 15:47:59 +00:00
gbeauche
8de7ad1091
- Turn on runtime detection of loop and jump alignment as Aranym people
...
reported they got some improvement with it and larger loops. Small
loops are an issue for now until unrolling is implemented for DBcc.
- Const jumps are identified in readcpu. I don't want to duplicate code
uselessly. Rather, it's the JIT job to know whether we are doing block
inlining and un-marking those instructions as end-of-block.
2002-10-03 15:05:01 +00:00
gbeauche
a60c6da7c3
Turn on block inlining so that people could test this feature and report
...
if they do gain something or renders JIT less stable.
2002-10-03 15:01:53 +00:00
gbeauche
724516511a
Do translate BSR.L, we don't have any issue with that even if we are
...
doing block inlining since we have a complete chain of information about
the blocks to checksum.
2002-10-03 14:59:35 +00:00
gbeauche
e11dd3d375
Do translate FMUL instructions, the core needs to be fixed and this is
...
not translation of that instruction. I believe this is related to some
misgeneration of FPU core sequence and allocation of FP registers?
2002-10-03 14:58:02 +00:00
gbeauche
e9584dbcc1
Add PROFILE_UNTRANSLATED_INSNS information. Interestingly, the following
...
are the bottleneck now: DIVS, BSR.L (why isn't it translated yet?),
bit-field instructions (I need to self-motivate enough for that), and
A-Traps.
2002-10-02 16:22:51 +00:00
gbeauche
94a9038826
- Remove dead code in readcpu.cpp concerning CONST_JUMP control flow.
...
- Replace unused fl_compiled with fl_const_jump
- Implement block inlining enabled with USE_INLINING && USE_CHECKSUM_INFO.
However, this is currently disabled as it doesn't give much and exhibits
even more a cache/code generation problem with FPU JIT compiled code.
- Actual checksum values are now integral part of a blockinfo regardless
of USE_CHECKSUM_INFO is set or not. Reduce number of elements in that
structure and speeds up a little calculation of checksum of chained blocks.
- Don't care about show_checksum() for now.
2002-10-02 15:55:10 +00:00
gbeauche
21909f1eed
- Rewrite blockinfo allocator et al. Use a template class so that this
...
can work with other types related to blockinfos.
- Add new method to compute checksums. This should permit code inlining
and follow-ups of const_jumps without breaking the lazy cache invalidator.
aka. chain infos for checksuming. TODO: Incomplete support thus disabled.
2002-10-01 16:22:36 +00:00
gbeauche
518f982775
- CAN_JIT=yes has to be moved into the actual block containing JITSRCS.
...
- Optimistically reenable gas/x86 assembly optimizations and JIT for FreeBSD
as it used to work in the past there. If not, beat me.
2002-10-01 09:58:08 +00:00
gbeauche
13e8cb3eec
Huh, am I still asleep? Actually use the cpuemuX_nf.cpp pattern rather
...
than the *.s variant.
2002-10-01 09:51:09 +00:00
gbeauche
75de104c92
- Optimize use of quit_program variable. This is a real boolean for B2.
...
- Remove unused/dead code concerning surroundings of (debugging).
- m68k_compile_execute() is generated and optimized code now.
2002-10-01 09:39:55 +00:00
gbeauche
bdf9d76bb8
- #include "flags_x86.h" here to get NATICE_CC_?? helper macros
...
- Add raw_cmp_b_mi() and raw_call_m_indexed() for generated
m68k_compile_execute() function
2002-10-01 09:37:03 +00:00
gbeauche
c492269143
Drop cpuopti on x86 now that we have a fast JIT. I don't want to bother
...
fixing cpuopti or workarounding code for any known and unknown gcc bug.
2002-10-01 09:34:47 +00:00
gbeauche
98d1246815
- Let fullscreen DGA mode work again, even with a DirectColor visual. In
...
that case, we do need add it when creating the window otherwise we
result int a nice BadMatch for X_CreateWindow request. FIXME?
- Fix typo and do enable VOSF in DGA mode, if necessary.
2002-09-28 12:42:39 +00:00
gbeauche
8748b48b7a
Disable USE_QUAD_DOUBLE for now and probably for good as (i) the emulator
...
implementation is not correct, (ii) I don't know of any CPU which
handles this kind of format *natively* with conformance to IEEE.
2002-09-20 16:52:48 +00:00
gbeauche
ec92457d68
Fix align_jumps for athlon, that's really "16" and gcc-3.2 sources contained
...
the same error. ;-)
2002-09-20 14:55:50 +00:00
gbeauche
d7c677d077
- Implement {make,extract}_extended() for USE_QUAD_DOUBLE
...
- Don't forget to fill in mantissa3 member for USE_QUAD_DOUBLE in
make_extended_*() but make sure NaN, inf, zeros are handled beforehand
2002-09-19 20:52:50 +00:00
gbeauche
a5ba7ea5ac
Don't define USE_LONG_DOUBLE when sizeof(long double) == 16. This still
...
is not very clean but it should build now. Probably live with USE_LONG_DOUBLE
for any case where native long double exists and sizeof > 8 ?
2002-09-19 16:02:13 +00:00
gbeauche
b765112cf9
Get rid of any "extern inline" bits. Use static inline instead as MIPS
...
compilers don't really like the former syntax.
2002-09-19 15:42:16 +00:00
gbeauche
ecd3db832e
- Rewrite raw_init_cpu() to match more details, from kernel sources.
...
- Add possibility to tune code alignment to the underlying processor. However,
this is turned off as I don't see much improvement and align_jumps = 64
for Athlon looks suspicious to me.
- Remove two extra align_target() that are already covered.
- Remove unused may_trap() predicate.
2002-09-19 14:59:03 +00:00
gbeauche
feca66d43e
Optimize runtime assembler with shorter equivalents when the accumulator
...
(%eax) is referenced along with immediates.
2002-09-18 15:56:17 +00:00
gbeauche
f2a9938685
Ensure the IEEE fpu core is used when building the JIT compiler
2002-09-18 13:06:49 +00:00
gbeauche
54ac7a1493
Move -DSAHF_SETO_PROFITABLE down in x86 & gas specific block. Also ensure
...
SAHF_SETO_PROFITABLE is defined when compiling the JIT. Aka I don't want
to support obsolete and probably bogus code nowadays.
2002-09-18 11:41:56 +00:00
gbeauche
e268a5a072
Define SAHF_SETO_PROFITABLE on x86, aka restore full performance of the
...
JIT compiler. ;-) BTW, also fixes some valgrind warnings.
2002-09-18 10:25:05 +00:00
gbeauche
c40279294a
Don't forget to use vm_realease() to free up translation cache. Also free
...
the right amount of memory that was previously allocated.
2002-09-18 09:55:37 +00:00
gbeauche
599f7e845f
Use vm_acquire() to allocate translation cache
2002-09-18 07:50:55 +00:00
gbeauche
5df172aa53
Additions for the JIT compiler opcode translators + NOFLAGS variant of
...
regular instruction handlers.
2002-09-17 16:09:25 +00:00
gbeauche
8c7254e4c8
Additions for the JIT compiler (--enable-jit-compiler, --enable-jit-debug)
2002-09-17 16:08:41 +00:00
gbeauche
6f3a214a15
Make FlushCodeRange aware of the JIT compiler's flush_icache()
2002-09-17 16:08:07 +00:00
gbeauche
0b001e81a5
Additional string defs for JIT-specific options
2002-09-17 16:07:21 +00:00
gbeauche
ea8bdf1941
Update prefs editor with "JIT Compiler" pane
2002-09-17 16:06:37 +00:00
gbeauche
4fc127c8df
- Changes to support 68040 -> x86 dynamic translator
...
- Globalize FLIGHT_RECORDER, possibly used in compiler/ sources as well
2002-09-17 16:05:39 +00:00
gbeauche
c0526db089
Import JIT compiler
2002-09-17 16:04:06 +00:00
gbeauche
ba346aa0d2
Check for for C99 math functions in the form *l()
2002-09-16 15:40:48 +00:00
gbeauche
6af88bc787
Only use *l() math functions when they are available
2002-09-16 15:40:23 +00:00
gbeauche
ea98d02ce8
Conditionalize use of pthread_mutexattr_setpshared() as this is an optional
...
POSIX feature from _POSIX_THREAD_PROCESS_SHARED group. Besides, Ulrich Drepper
mentions "the kernel support for this option wasn't available until 2.5.7.
Future versions of the thread library will support this option."
<http://people.redhat.com/drepper/posix-option-groups.html >
BTW, this nukes a warning when build on FreeBSD 4.6
2002-09-16 15:06:24 +00:00
cebix
7c1352a5f7
updated autogen.sh to AutoGen(TM) 8.0 Professional :-)
2002-09-16 14:54:19 +00:00
gbeauche
d16a54362c
#include <pthread.h> to get pthread_attr_t definition
2002-09-16 14:48:53 +00:00
gbeauche
a04889fe03
Portability fixes: use a switch to test for ac_cv_c_float_format
2002-09-16 14:17:20 +00:00
gbeauche
a0d72c749b
Remove acconfig.h, obsoleted by new autoconf2.5 stuff
2002-09-16 14:10:21 +00:00
gbeauche
b60198fc17
- Moved minium autoconf support to 2.52+
...
- Add large file support for 2+ GB hard disk images
2002-09-16 13:32:33 +00:00
gbeauche
453c6de0e2
Now use autoconf 2.52+ as it provides nice AC_SYS_LARGEFILE check and a
...
fixed check for exit() prototype.
2002-09-16 13:29:33 +00:00
gbeauche
5be5714a9e
Remove TYPE_SOCKLEN_T check as it was merged in main configure script already.
2002-09-16 13:28:17 +00:00
gbeauche
9cc4185fa2
- Make "ieee" core default, where applicable
...
- Import gcc configury to determine HOST_FLOAT_FORMAT
2002-09-16 12:03:07 +00:00
gbeauche
48986febc6
- FP endianness is now testing at configure time
...
- Fix junk introduced in previous rev for extract_extended()
2002-09-16 12:01:38 +00:00
gbeauche
e59e4904d3
Fix "ieee" FPU core on big endian and without long double > double support
...
- Handle conversions to/from host double for m68k long doubles formats
- Make mathlib aware of sizeof(long double) == sizeof(double) arches
- Attempt to fix FSCALE implementation
2002-09-15 18:21:13 +00:00
gbeauche
57e73de5f6
USE_LONG_DOUBLE guards
2002-09-13 15:06:42 +00:00
gbeauche
dbc92fb334
Updates for new FPU core architecture, add "ieee" core (x86 for now)
2002-09-13 12:51:24 +00:00
gbeauche
a50871f87c
Updates for new FPU core architecture
2002-09-13 12:50:56 +00:00
gbeauche
c327eee41b
* Basilisk II JIT integration, phase 2:
...
- Add new FPU core architecture
- Clean fpu_x86_asm.h as it is no longer automatically generated
2002-09-13 12:50:40 +00:00
gbeauche
d3bda319a8
Use B2_mutex instead of pthread mutexes when ENABLE_EXCLUSIVE_SPCFLAGS is
...
set. However, this is not used at the moment. Is there an advantage? People
may want to add arch-optimized SPCFLAGS_{SET,CLEAR}.
2002-09-01 16:32:02 +00:00
gbeauche
7972082c56
- Merge with Basilisk II/JIT cpu core, interpretive part for now
...
- Clean use of USE_PREFETCH_BUFFER macro and dependent bits
2002-09-01 15:17:13 +00:00
cebix
4f8d06b671
- implemented direct SCSI transfers (bypassing the buffer)
...
- minor fixes
2002-09-01 12:01:46 +00:00
cebix
3d2bac9f15
- it is now possible to make the serial drivers pipe their input/output
...
to programs by using a '|' followed by a command line as the modem or
printer port setting (instead of a device name like '/dev/ttyS0')
[Brian Johnson]
- the option "--config FILE" tells B2 to use a different config file
2002-07-31 16:46:14 +00:00
cebix
586d299bfc
fixes by Steven N. Hirsch (versioned symbols, module license)
2002-07-23 18:02:47 +00:00
gbeauche
281460fba0
- New arch support for IP retrieval on SIGSEGV.
2002-07-17 06:51:05 +00:00
nigel
370d5dcb95
Updated for latest Controller and EmulatorView class methods
2002-07-02 10:23:39 +00:00
nigel
5ef6d3d08c
Compatibility with latest C++ monitor object. Unfortunately this requires
...
a terrible hack to guess the number of bytes per row for each mode, which
is terribly hardware dependant, but is the only way at the moment.
2002-07-02 09:47:57 +00:00
gbeauche
69847c3ea2
Correctly guard FreeBSD bits
2002-06-27 14:28:59 +00:00
jlachmann
abcf74039d
Adapted to OO video scheme; Audio volume/muting/sample rate now settable
2002-06-23 08:27:05 +00:00
nigel
ca896c0838
Better mouse event control for full screen mode
2002-06-05 10:18:51 +00:00
nigel
15baaf886a
Sequencing changes in init_screen(), removed some global vars and functions,
...
assorted tidyup, big changes to video_switch_to_mode()
2002-06-05 10:11:40 +00:00
nigel
2880cf6251
Debug statements were not in D() macros
2002-06-05 09:41:27 +00:00