Commit Graph

1212 Commits

Author SHA1 Message Date
nigel
3802e35346 Working EtherNet (SLIRP), minor doco update, semaphore.h needed for Unix src. 2005-12-29 13:06:12 +00:00
nigel
a4bac33b8b A few more updates from latest Unix configure.ac 2005-12-29 00:32:43 +00:00
gbeauche
bdcf8efe2e Link with math library (-lm) on IRIX so that to get support for long double
arithmetic. Also make sure to only use -IPA with MIPSPro Compilers.
2005-12-04 15:45:09 +00:00
gbeauche
0ca22128d6 Fixes for IRIX/mips build with MIPSPro compilers 2005-12-04 15:23:02 +00:00
gbeauche
dbd5736f1d Fix Serial build on IRIX, remove the STDC_HEADERS manually defined macro
since it now works (egrep was missing previously, IIRC)
2005-12-04 15:03:11 +00:00
gbeauche
41fb85a3e7 Protect the SDL events queue when changing the cursor map in SheepShaver,
aka fix "Xlib: unexpected async reply" messages in SDL/x11 builds.
2005-11-29 23:20:31 +00:00
gbeauche
56f0207ebe Initial support for NDIS interfaces selection (very preliminary but working
for me on Windows XP, and actually faster than NAT/Router ethernet emulation)
2005-11-29 22:59:44 +00:00
gbeauche
f16f343b76 add support for "cdrom" drive selection 2005-11-29 20:54:57 +00:00
gbeauche
434ad38a1f SheepShaver GUI, remove extraneous "slirp" currently inexistent for Windows 2005-11-27 23:51:47 +00:00
gbeauche
a2cb2c6280 SheepShaver glue for Ethernet support. Remove duplicate "Set source address"
case from common code.
2005-11-27 22:18:29 +00:00
cebix
9cdff5117f ignore floppy device open fail in Sys_open() so the floppy drive will be
operative even if no disk was inserted at startup
2005-11-24 17:23:43 +00:00
cebix
92551146fc modernized Linux sound device detection 2005-11-24 17:03:15 +00:00
cebix
f450308b2f modernized Linux floppy detection 2005-11-24 17:02:59 +00:00
cebix
a415ed6117 added missing virtual destructor 2005-11-24 16:43:11 +00:00
gbeauche
b57b53ee75 Windows GUI: set "frameskip" to 1 when switching to fullscreen mode 2005-11-22 22:57:30 +00:00
gbeauche
05f4a79aa9 last minute TODO 2005-11-22 22:42:03 +00:00
gbeauche
1f66e31423 undo unwanted change for now (double check this one later) 2005-11-22 21:57:59 +00:00
gbeauche
af7973a79c fix build with gtk-1.2 2005-11-22 21:53:24 +00:00
gbeauche
3e8ac0eaa8 Update: Windows GUI is still missing detection of NDIS interfaces 2005-11-22 21:21:24 +00:00
gbeauche
81853597ea try to add missing changes and regroup them better 2005-11-22 21:20:30 +00:00
gbeauche
4c4b24026f fix copyright dates 2005-11-22 20:29:46 +00:00
gbeauche
dd2b492086 "jitlazyflush" prefs item type was changed to bool some time ago, this fixes
this and enables the GUI to set it to true by default, as expected.
2005-11-22 06:48:55 +00:00
gbeauche
5fbaa95fbc Windows HACK: default to the DIB driver as it looks smoother to me and
doesn't require locking the surfaces, which probably the cause of apparent
slowness when using the DirectX backend. This needs to be investigated more
2005-11-22 06:26:35 +00:00
gbeauche
a7da877356 Remove obsolete Cygwin/X11 addressing hack. Fix DirectX fullscreen mode
with hardware surface. On the other hand, DIB (SDL_VIDEODRIVER=windib)
always seems the fastest on my system for both windowed and fullscreen
modes.
2005-11-21 23:38:46 +00:00
gbeauche
934975e12b add support for instruction skipping on windows too 2005-11-21 22:13:56 +00:00
gbeauche
88246b3622 don't remove config.h.in in make distclean 2005-11-21 22:03:53 +00:00
gbeauche
9c06a00dd2 GUI cosmetics from the Windows port: add "browse" button to ROM & keycodes
file selectors, improve "Memory/Misc" pane to be more attractive and simplify
RAM size selection, rename to "Keyboard/Mouse" pane to match the actual order
of elements in the pane, make "<control>-S" save/start the config.
2005-11-21 21:39:08 +00:00
gbeauche
c830fd7f02 Windows GUI: don't mess the button pad, map '<ctrl>-S' to Start/Save config 2005-11-20 23:59:18 +00:00
gbeauche
2fadb1707c Try to be a bit more descriptive 2005-11-20 23:55:17 +00:00
gbeauche
3ab9970f0c Windows GUI: disable SCSI settings for now since they are not merged yet,
handle Ethernet (NAT/Router module, None) and actually execute BasiliskII.exe
2005-11-20 23:47:42 +00:00
gbeauche
3cd04e58e1 GUI cosmetics: translation cache size is expressed in Kilo Bytes (KB) 2005-11-20 21:58:30 +00:00
gbeauche
ad4f3b2afd Windows GUI: fix creation of new volumes, handle "Enable external file system",
"Enable polling", add "Browse" button for keycodes file chooser.
2005-11-20 21:56:06 +00:00
gbeauche
148a4d1647 Windows GUI resources 2005-11-20 17:45:29 +00:00
gbeauche
b52fd5535b GUI cosmetics 2005-11-20 17:26:16 +00:00
nigel
185141ee4b Another minor 10.4 fix, Marcus Gail's CD-ROM boot UI fix 2005-10-15 10:38:22 +00:00
nigel
b78c71dab6 Update official B2 web page 2005-10-15 10:22:27 +00:00
nigel
ab9fa2c293 Minor change to Mc OS X details 2005-10-15 10:21:40 +00:00
nigel
1f5092a9af Fixes from latest Unix version (no more black screen bug!) 2005-09-19 07:49:12 +00:00
nigel
891e284c40 Re-sync with Unix version. Fixes black screen bug 2005-09-19 07:45:07 +00:00
nigel
0c96c9bbbf No need for classic mode 2005-09-19 07:38:55 +00:00
nigel
9ef0599095 Recent fixes mean there is no "classic" build, so update doco 2005-09-19 07:24:10 +00:00
nigel
110318fb69 Some more 10.4 fixes by Kirk Kerekes 2005-09-19 06:02:47 +00:00
gbeauche
a750963a94 don't grab in -mdynamic-no-pic with icc, note that you need icc >= 9.0.25
to have a working build
2005-08-18 22:10:15 +00:00
nigel
82e6f0cbd4 Added a few more bugs 2005-08-14 12:24:40 +00:00
nigel
029c61ff20 Added install item 2005-08-14 12:22:31 +00:00
nigel
d8c85284f4 Stylistic (and possible GCC3/4) fix 2005-08-14 12:21:27 +00:00
nigel
ffb2e01535 Started including 10.4 compile fixed from Kirk Kerekes,
Confirmation on disk image Delete requested by Markus Gail.
2005-08-09 03:28:53 +00:00
gbeauche
e694311703 Drop the old _llseek() hack. That was causing problems and we "now" use the
right approach with LFS for a few years now.
2005-08-01 05:23:02 +00:00
gbeauche
ba5ef9cd31 Stop abort()'ing when we fail to recognize the underlying processor, assume
an obsolete i386 instead. Keep report on stderr though.
2005-07-24 14:57:11 +00:00
gbeauche
ef5a50e2af recognize more P4 cores 2005-07-24 14:48:27 +00:00
gbeauche
6ee23f0eba Fix a long standing typo, now enabling use of volumes larger than 4 GB! 2005-07-24 14:05:16 +00:00
gbeauche
77208f85b0 sys_darwin.cpp depends on CoreFoundation stuff, disable it for OpenDarwin 2005-07-10 16:42:04 +00:00
gbeauche
43c8792b6e Fix detection of GCC versions (J.P. Larocque) 2005-07-06 05:25:05 +00:00
gbeauche
9d7e5017d9 Factor out stuff for SheepShaver compatibility. 2005-07-03 08:21:32 +00:00
gbeauche
858c3b9719 - Check for <stdint.h> ourselves if AC_HEADER_STDC didn't do that
- Build with -mdynamic-no-pic on MacOS X, this brings up to 20% performance
  improvement in the CPU core.
2005-07-01 05:57:07 +00:00
gbeauche
01b34da3d9 Don't remove config.h.in in distclean rule if we are still keeping configure 2005-07-01 05:54:58 +00:00
gbeauche
eaa0f6576b Import m4 macros for external packages in case one would want to regenerate
a configure script without having those installed (e.g. on MacOS X).
2005-07-01 05:54:20 +00:00
cebix
57609bf2fc modernized spec file and makefile 2005-06-30 21:27:26 +00:00
cebix
fa5ae3ab6e minor cleanups 2005-06-30 21:25:26 +00:00
gbeauche
e867749999 POSIX conforming use of pthread_cond_wait(). 2005-06-30 10:34:31 +00:00
gbeauche
e355c83f59 Add system-specific implementations of idle_{wait,resume} functions. 2005-06-30 10:20:18 +00:00
gbeauche
a8ba24aecf Use fast spinlocks only for small enough atomic operations. Otherwise, you
run into some performance problems in e.g. video graphics experience because
of busywaits in the current spin_lock() implementation.
2005-06-25 11:40:29 +00:00
gbeauche
12eb8b670f Avoid C99-isms in C code for old compilers (e.g. gcc "2.96" on MDK 8.1) 2005-06-22 08:51:04 +00:00
gbeauche
1421bca4a7 Comment typo and return handled status in handle_selection() 2005-06-22 08:50:07 +00:00
gbeauche
3e532be645 Check for GTK for the GUI. Also add serial_windows.cpp to SRCS files 2005-06-20 08:43:50 +00:00
gbeauche
1e7c27958d WIP prefs editor for Windows in GTK 2005-06-20 08:40:34 +00:00
gbeauche
c57c81879c merge in serial ports emulation from original B2/win port 2005-06-20 06:11:28 +00:00
gbeauche
3a0b4ed999 Get real page size on Windows for vm_get_page_size() [64 KB] 2005-06-20 03:54:46 +00:00
gbeauche
d0fd88f7b2 gtk2 gui support 2005-06-19 15:52:09 +00:00
gbeauche
7f3e40883a Only close clipboard hidden window only if created. This fixes errors on
early exit from the GUI.
2005-06-19 15:50:52 +00:00
gbeauche
fe99211e75 Support USE_CPU_EMUL_SERVICES in SDL/video driver. Only trigger ethernet
interrupt in one_tick() if no pthreads at all are used, i.e. ether_dummy
is effective in that case. Otherwise, don't trigger ethernet again if
pthreads are available (and ether_unix) and cpu emul services are active.
2005-06-14 22:35:42 +00:00
gbeauche
957bee00cf Always allocate RAM and ROM areas at the same time. This avoids having ROM
suddenly allocated below RAM and thus not working. Besides, this may fix a
latent deallocation bug in real addressing mode (i.e. release the whole
block allocated at once, not separately).

Side effect: this makes Basilisk II work in direct addressing mode with JIT
on Darwin 8.0.1 for x86.
2005-06-13 20:19:15 +00:00
gbeauche
334f9ce018 Check for CoreFoundation framework (Darwin 8.0.1). Likewise for
IOKit/storage/IOBlockStorageDevice.h which is not available there on x86
2005-06-12 23:36:34 +00:00
gbeauche
2bc79fd857 Enable Basilisk II to work even if slirp_init() failed. Disable ethernet
emulation in that case, don't exit(1).
2005-06-12 22:48:48 +00:00
gbeauche
e308e5441b Mach exception recovery and instruction skipping for Darwin/x86. 2005-06-12 21:47:46 +00:00
gbeauche
369d01cf16 %Ld is for long double, not long long (%lld) 2005-06-11 06:52:22 +00:00
gbeauche
0f0b06b099 Much improved responsiveness on NetBSD systems.
On those systems, it's really hard to get high resolution timings and the
system oftens fails to honour a timeout in less than 20 ms. The idea here
is to have an average m68k instruction count (countdown quantum) that
triggers real interrupt checks. The quantum is calibrated every 10 ticks
and has a 1000 Hz resolution on average.
2005-06-11 06:43:24 +00:00
gbeauche
57e618990c Add experimental fullscreen SDL video graphics. Map Windows keys to Option. 2005-06-06 21:20:28 +00:00
gbeauche
8532e34485 Update GTK Prefs Editor with support for "jitinline" and "slirp" ethernet. 2005-06-06 20:11:50 +00:00
gbeauche
6b9f8e85c5 Robustify: only close zero_fd if actually allocated 2005-06-06 19:40:17 +00:00
gbeauche
452b7b9638 Properly QuitEmulator() on unhandled SIGSEGV even if not ENABLE_MON. 2005-06-06 19:39:36 +00:00
gbeauche
f784bf5c05 Restrict mandatory SLIRP_CFLAGS to minimum, i.e. -fno-strict-aliasing. 2005-06-06 19:31:22 +00:00
gbeauche
c0cc43a87b Really make translation through constant jumps functional. This can be
disabled with the new prefs item "jitinline". Some rapid Speedometer 4
benchmarks showed only a 4% improvement.
2005-06-06 19:22:56 +00:00
gbeauche
83b228cf30 Add support for hardware locks on x86_64 too 2005-06-06 18:49:51 +00:00
gbeauche
6c65ae370e Fix build with NO_INLINE_MEMORY_ACCESS set 2005-06-05 07:32:23 +00:00
gbeauche
830bf0f65c Fix build on 32-bit platforms with REAL_ADDRESSING mode 2005-06-05 07:03:12 +00:00
gbeauche
08c4acd21f Enable FLIGHT_RECORDER for generated code but don't record registers in
that case (yet).
2005-06-04 16:47:14 +00:00
gbeauche
a4caa8ab09 Handle all slirp input/output from a single thread, thus fixing occasional
hangs on slower systems (concurrent read/write in 68k mode). Reduce timeout
to 10 ms.
2005-05-21 17:48:21 +00:00
gbeauche
02714e46a8 Fix and factor out ether_exit(). Pitifully, MacOS X 10.2 does not make select()
a cancellation point when it is passed a NULL timeout. Workarounded in
receive_func() with a full inline of poll_fd() + pthread_testcancel().
2005-05-15 17:22:12 +00:00
gbeauche
71c3199a42 Add "fbcon" keycodes (Linux Framebuffer Console) 2005-05-15 07:55:05 +00:00
gbeauche
dab65b1211 Enable ethernet on MacOS X even though slirp seems to have some small
problems on big endian systems. IOW, Basilisk II can hang there. I also
noticed that on Linux/ppc so that's probably not MacOS X specific, assuming
the same problem. ==> A packet arrives but Basilisk II can't seem to trigger
an interrupt (need to try sheep_net/tun in linux to make sure)
2005-05-14 17:40:05 +00:00
gbeauche
84c9d99d18 Remove bootp debug code as it uses varargs macros that are not supported in
all foreign compilers (including preprocessor shipped with MacOS X!). Also
fix build on platforms not including <stdint.h> by default.
2005-05-14 17:37:07 +00:00
gbeauche
77446db25d fix poll() emulation 2005-05-14 17:33:57 +00:00
gbeauche
1b53603138 MacOS X doesn't implement unnamed POSIX semaphores even though their libc
defines the functions. Use Mach semaphores instead.
2005-05-14 17:32:55 +00:00
gbeauche
85db30f78d add missing rule to build extfs_macosx.mm 2005-05-14 16:37:21 +00:00
gbeauche
fd61ad2b0c Try to improve the documentation concerning the "tun" interface. Take note
that that kernel module must be loaded and IP forwarding enabled. Also add
slight improvements to the "tunconfig" script so that sudo /sbin/ifconfig
and sudo /sbin/iptables are really supported for current user if not root.
2005-05-14 16:08:17 +00:00
gbeauche
722eedd6e2 ethernet/slirp works on netbsd too 2005-05-14 08:42:39 +00:00
gbeauche
eff6830415 detect slirp at configure time, aka fix build when ether_dummy.cpp is used 2005-05-14 08:10:49 +00:00
gbeauche
4bf4a1d2b0 fix for new packet interface 2005-05-14 08:10:09 +00:00
gbeauche
63015fd6d3 Use a custom poll_fd() function implemented as select() on platforms that
don't support poll() natively, e.g. MacOS X and some older BSDs.
2005-05-13 17:43:38 +00:00
gbeauche
d9839e7079 Fix build on MacOS X: dedicated extfs_macosx.mm & static SDL libs 2005-05-13 17:32:13 +00:00
gbeauche
fdfcd3eb86 Some 64-bit fixes to bootp, icmp, udp (cu-seeme). However, it can happen
that on certain occasions, it doesn't work. Some timing problem?
2005-05-13 14:02:37 +00:00
gbeauche
745bc86678 fix CFLAGS preservation 2005-05-13 11:13:26 +00:00
gbeauche
d91e8b2a8f fix "banks" addressing mode for 64-bit platforms 2005-05-13 11:05:56 +00:00
gbeauche
f35e176853 slirp documentation from qemu 2005-05-13 09:33:51 +00:00
gbeauche
20fcf38e30 Recognize Intel Compilers. Add user mode network stack with slirp from qemu.
Simply use "ether slirp" in the prefs file, no kernel module required. I
could perform up to 450 KB/sec on my DSL line.
2005-05-13 09:21:21 +00:00
gbeauche
5fffe6e2cd slirp user mode network emulation code from qemu 2005-05-13 09:00:59 +00:00
gbeauche
a532ff64c8 Improve SDL/fullscreen mode when not used in DGA mode, i.e. cases when
screen needs to be updated too. This needs better boxes characterisation.
2005-05-12 16:55:16 +00:00
gbeauche
9f8b4bcc0d Fix SDL/DGA build. Drop useless "inline" for updates. Overlapping scanlines
optimization.
2005-05-12 14:39:56 +00:00
gbeauche
31f80e338b Fix DGA when visible screen is smaller than virtual display, aka fix
fullscreen mode when VidMode extension is enabled. Also fix SDL fullscreen
to really update the screen as this is necessary by default on Linux since
simple windowed is used (and not DGA for fullscreen).

Always prefer the 64 pixel chunks update code.

Rearrange B2 video_x.cpp to match video_vosf.h updates
2005-05-12 11:09:31 +00:00
gbeauche
380a9ed970 ensure allocated code fits under 32-bit boundaries 2005-04-24 23:02:48 +00:00
gbeauche
165b32da39 Fix build with gcc4 on x86-64: ignore errors when casting pointers to int
from regs & fpu members + code cache. This is possible because data is
allocated in 32-bit space and we force allocation of translation cache to
those bounds too.
2005-04-24 23:00:08 +00:00
gbeauche
57169c7923 Recognize lahf_lm from Dual Core Opterons. This enables use of LAHF/SETO
instructions in long mode (64-bit). However, there seems to be another bug
in the JIT preventing it from being fully supported. m68k.h & codegen_x86.h
are easily fixed bug another patch is still needed.
2005-04-21 09:08:57 +00:00
gbeauche
b4152fc466 cosmetics 2005-04-02 09:56:12 +00:00
gbeauche
85246b8408 Rewrite update_display_dga_vosf() for much improved performance and cope
with palette changes. Also slightly improve the generic code when we need
to further update the screen (e.g. SDL without hardware surface)
2005-04-02 09:50:17 +00:00
gbeauche
e8ac4897b6 Enable multiple depths in fullscreen DGA modes, i.e. add 1-bit to 16/32-bit
blitters, rewrite update_display_dga_vosf() to actually work with sub byte
pixels. Factor out update_display_window_vosf() since it's long time that
it is no longer checking for first column and last column that have changed.
2005-03-28 16:14:25 +00:00
gbeauche
7dedb433fd Gracefully catch SIGSEGV & SIGBUS for TEST_VM_PROT_* test cases. This should
avoid dumping core, and especially Windows fault alerts when natively
configuring with MinGW32.
2005-03-24 23:45:40 +00:00
gbeauche
a6070dcdf3 enable cross-compilation 2005-03-24 23:13:09 +00:00
gbeauche
35e8c8c9cd Enable instruction skipping for OpenBSD 3.4 on i386 2005-03-23 22:00:06 +00:00
gbeauche
f2908fe7bf instruction skipper for Solaris/i386 (Solaris 9) 2005-03-23 21:37:24 +00:00
gbeauche
5c001ba645 Allocate executable space to detect cpu features (cpuid). aka don't crash
on non-executable .data sections on x86-64 with NX support enabled.
2005-03-22 16:12:18 +00:00
gbeauche
569d916664 fix for 2.4.21 2005-03-22 13:43:50 +00:00
gbeauche
afe033a63d fix build with kernels >= 2.6.9 2005-03-22 13:31:13 +00:00
gbeauche
04a331e827 Avoid use of pthread_cancel() for redraw thread cancellation. Use an extra
variable to acknowledge cancellation. This avoids Xserver events queue
corruption when clipboard is in use. Concretely, this fixes following errors:
Xlib: unexpected async reply (sequence 0xHEX)!
2005-03-21 23:57:34 +00:00
gbeauche
2871aefa87 Use autogen.sh to generate configure scripts, likewise for Windows 2005-03-21 22:45:09 +00:00
gbeauche
f028a9d217 Extra changes I forgot to mention in the ChangeLog 2005-03-21 22:39:59 +00:00
gbeauche
5892c6c286 more sdl key conversions 2005-03-20 23:43:17 +00:00
gbeauche
7b6d062c9d Check that drivers are installed (e.g. CD-ROM driver) 2005-03-19 19:01:49 +00:00
gbeauche
143b18c752 Make ethernet really work on 64-bit platforms, especially x86-64 2005-03-19 17:43:03 +00:00
gbeauche
ae6555fd46 SDL_ListModes() sometimes does not return a sorted list from largest to
smallest screen dimensions (e.g. on windows)
2005-03-19 05:34:15 +00:00
gbeauche
016b58007a And finally the Windows specific configure script to be generated with
../Unix/autogen.sh. Who would be the first to see Basilisk II is fully
buildable from CVS now with SDL and Cygwin? ;-)
2005-03-17 00:27:54 +00:00
gbeauche
535a658c72 Windows specific Makefile, this could be improved though 2005-03-17 00:25:50 +00:00
gbeauche
7f7b2185c2 Windows specific sysdeps.h 2005-03-17 00:24:25 +00:00
gbeauche
87c8860b92 add missing windows specific header files 2005-03-17 00:22:37 +00:00
gbeauche
608c1f65bd close opened files and make sure to flush stdout on exit, this used to
cause weird results on windows otherwise
2005-03-17 00:21:36 +00:00
gbeauche
fcb323c511 Default to BasiliskII_keycodes file on Windows if user wants keycodes but
no keycodefile is specified
2005-03-17 00:19:39 +00:00
gbeauche
f29eb7dd1d nanosleep() delays seem better suited to MacOS X, instead of select() 2005-02-21 22:57:03 +00:00
gbeauche
10f38d4b50 NetBSD/ppc support 2005-02-20 11:39:12 +00:00
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