Commit Graph

1465 Commits

Author SHA1 Message Date
gbeauche
11ff11d205 Add experimental TAP-Win32 support. It looks rather sluggish to me, something
is probably wrong somewhere...
2006-05-01 10:23:47 +00:00
gbeauche
6590198dd8 aha, quick fix ;-) 2006-05-01 06:14:08 +00:00
gbeauche
5fed65456b Implement better Windows suspend/resume routines so that we don't oversleep.
i.e. really wake up the thread on next TriggerInterrupt().
2006-05-01 06:12:50 +00:00
gbeauche
2e6ae14c4c Note new "idlewait" feature 2006-04-30 21:49:50 +00:00
gbeauche
8ccf336660 Add "idlewait" to Basilisk II for Windows 2006-04-30 21:46:31 +00:00
gbeauche
5aa8c9f86f Tentative fixes to BeOS idle suspend/resume routines. Well, I have no-op'ed
them. So, if someone has BeOS and wants to give it a try, please change and
test this new code. Corner case could be a resume_thread() when emul_thread
is not suspended.

Fixlet to powerrom_cpu: call idle_resume() from TriggerInterrupt().
2006-04-30 21:26:21 +00:00
gbeauche
4f07113555 Patch SynchIdleTime() to implement new "idlewait" prefs item. 2006-04-30 21:16:48 +00:00
gbeauche
52ff4b209b Implement dummy idle suspend/resume routines for AmigOS 2006-04-30 21:13:21 +00:00
gbeauche
8fa12f4819 Fix PutScrap() patch with Mac Classic ROMs. Untested but it should work
again provided you build with --enable-addressing=banks
2006-04-30 17:27:55 +00:00
gbeauche
c9ae122d1b handle creation time on MacOS X 2006-04-30 15:46:55 +00:00
gbeauche
5c9e121b7d Workaround finderFlags problem on folders in MacOS X 10.4.
TODO: implement the same ".finf/" trickery as for Unix versions.
2006-04-30 14:46:15 +00:00
gbeauche
6a035aa279 update GUI with ether "slirp" on win32 2006-04-29 14:15:01 +00:00
gbeauche
08a6e383e8 slirp now works on windows 2006-04-29 10:57:56 +00:00
gbeauche
08b783d52b slight updates for win32... 2006-04-29 10:54:12 +00:00
gbeauche
f0d77218c8 fix build on win32 2006-04-29 10:41:25 +00:00
gbeauche
8ca74c4eac FAST_TIMO is 2 ms not 2 usec. Noticed on Windows but this obviously can't
fix my problem with slirp_select_fill() there as it still doesn't fill in
any socket descriptor. :-/ I think I won't bother much for Windows...
2006-04-26 06:26:14 +00:00
gbeauche
f56f28b813 updates 2006-04-23 15:44:44 +00:00
gbeauche
02c1747d34 Update the GUI with the new ethernet configuration changes. Handle migrations
from the GUI. Also move from a combo to a fixed popdown menu with pretty
printed ethernet interfaces.
2006-04-23 15:40:23 +00:00
gbeauche
732109eff2 Some clean-ups. Rewrite ethernet config interpreter. This implies some
prefs items changes but it should now be simpler to add other ethernet
emulation means (slirp, tap-win32).

# Basilisk II driver mode
	ether {guid}
becomes
	ether b2ether
	etherguid {guid}

# Basilisk II Router mode
	routerenabled true
becomes
	ether router
2006-04-23 15:36:51 +00:00
gbeauche
9232fbe4df Avoid the use of min(). Add helpers to access the network control panel
registry -- aka get pretty printed names from GUID ethernet devices.
2006-04-23 15:20:31 +00:00
gbeauche
2d5c088601 Make it possible to build Basilisk II for Windows with SDL libraries
statically linked in.
2006-04-20 22:36:26 +00:00
gbeauche
fb332c4e38 Add mkstandalone -- make a standalone bundle with GTK runtime 2006-04-19 22:51:27 +00:00
gbeauche
6d15429156 Always build the STANDALONE_GUI hooks into Basilisk II. 2006-04-19 06:55:54 +00:00
gbeauche
180f3edafd Enable build of RPC code without pthreads (for Basilisk II and SheepShaver)
since we use our own custom message dispatch loop
2006-04-19 06:47:15 +00:00
gbeauche
622eca9068 Handle MacOS X bundles, search order: BasiliskII.app in the same directory
as BasiliskIIGUI.app, or /Applications/BasiliskII.app if none was found.

Also make yet another arrangement for MacOS X "difference". This scenario
was not working: WarningAlert -> ErrorAlert, the latter was not performed
because the exit status was not properly filled in sip->si_status...
2006-04-18 22:17:31 +00:00
gbeauche
d2e672c38f Fix NO_B2_EXE_FOUND (again) -- catch it very early, hence the SIGCHLD. Use
new rpc_wait_dispatch() function and gracefully get out of the main loop
when the child returns, though this is caught but the sigchld_handler().
2006-04-18 21:29:01 +00:00
gbeauche
758050ac73 Implement rpc_wait_dispatch() 2006-04-18 21:24:12 +00:00
gbeauche
3fda1a3af7 - Only start the emulator if requested (click on the "Start" button)
- Rewrote dispatch loop to accomodate GTK+1.2 for MacOS X (which doesn't
  like threads nor forks(!)). The latter also requires an additional patch
  to the version 0.7 available on SourceForge
- Run-time detect JIT capability so that we could hopefully use the ppc GUI
  on intel based Macs (check!)
2006-04-17 21:22:01 +00:00
gbeauche
02c24ed6c2 Create MacOS X bundle for BasiliskIIGUI.app. Also make sure to only link in
necessary GUI_LIBS and not all of the LIBS.
2006-04-17 15:32:37 +00:00
gbeauche
a295eea890 Fixes for GTK+1.2 GUI on MacOS X 2006-04-17 14:25:57 +00:00
gbeauche
5b1977b9f2 Fixes for MacOS X (10.2 has no <sys/poll.h> and 10.4 version is broken). 2006-04-17 09:06:32 +00:00
gbeauche
252f396ff3 Make Basilisk II main application not use GTK libraries when compiling with
STANDALONE_GUI. This is the second step towards a more interesting GUI alike
to VMware. Communication from/to the GUI is held by some lightweight RPC.

Note: The step should be enough to provide a tiny GTK GUI for MacOS X.
2006-04-16 21:25:41 +00:00
gbeauche
6994ab671e Enable build of a standalone GUI (first step). 2006-04-16 16:32:45 +00:00
gbeauche
5f3874c853 Apply the qemu-slirp-performance.patch from Kenneth Duda available here:
<http://lists.nongnu.org/archive/html/qemu-devel/2006-04/msg00245.html>

This does improve slirp performance a lot, especially in FTP passive mode
transfers. i.e. now, they are equally as fast as non passive mode. I get
approx. 800 KB/sec in B2 and 500 KB/sec in SheepShaver (over a DSL line).
In native env, the max download data rate from my ISP is around 950 KB/sec.
2006-04-13 22:15:02 +00:00
gbeauche
0222915bc4 Fix long double support for x86 targets if -m128bit-long-double. 2006-04-09 13:40:27 +00:00
gbeauche
bc9c586afc cleanups 2006-04-04 07:08:12 +00:00
gbeauche
896ada92dc Try to improve slirp performance again (though passive mode is still slower) 2006-04-02 21:06:50 +00:00
gbeauche
7c68ef5418 fix memory leak (1.0.17) 2006-04-02 08:47:39 +00:00
gbeauche
db76383246 decode movslq (generated by gcc4.1) 2006-03-30 22:45:49 +00:00
gbeauche
99241183a5 Fix pollmedia on Windows, it's no longer necessary to boot with a CD-ROM in
the drive to use it. Side effect: media can be changed without problems now
2006-03-28 07:01:19 +00:00
gbeauche
dfbb829055 Use GetMainWindowHandle() provided by main_windows.cpp 2006-03-28 06:59:30 +00:00
gbeauche
8d73299187 cleanups, it's only worth supporting x86 arches 2006-03-28 06:58:30 +00:00
gbeauche
29396b547b cosmetics 2006-03-27 22:04:36 +00:00
gbeauche
61fb95dd6f Merge in slirp updates from QEMU:
- improved performance (still not visible in B2 part, especially passive mode)
- set SO_REUSEADDR before calling bind()
- win32 compile fix
2006-03-25 07:57:38 +00:00
gbeauche
a4a070bc4a - add Linux/PPC linker script
- always relocate Basilisk II binary to 0x78048000 on MacOS X (including x86,
  to be tested later)
2006-03-25 07:08:50 +00:00
gbeauche
dc286967dc fix clipboard handling for MacOS X 2006-03-21 06:43:02 +00:00
nigel
d2c45bd4f2 Gwelolé fixed ether_unix exit problem (and my hacky workaround), so the enhancement comment can go 2006-03-16 04:23:47 +00:00
nigel
8eddb42a60 Better documentation of Snapshot bug 2006-03-16 04:14:12 +00:00
gbeauche
41ee2520b6 freebsd linker script 2006-03-15 06:54:34 +00:00
gbeauche
b662e6acec Add linker script for FreeBSD 5.3 (and probably newer). Verified to allocate
up to 1 GB of Mac RAM in both REAL_ADDRESSING and DIRECT_ADDRESSING modes.

NetBSD 2.0 can use the Linux linker script. However, I could not verify 1G
support since my installation does not permit this.
2006-03-15 06:54:07 +00:00
gbeauche
449c6496ff Link with AppKit framework on MacOS X. This should enable X11 builds when
there is no SDL available (suggested by Dara Hazeghi)
2006-03-14 22:14:13 +00:00
gbeauche
7ee9cb43dc Relocate MacOS X executable to 0x78048000 akin to linker scripts on Linux
arches. This probably already worked in the past but I have just verified
that Basilisk II works with up to 1 GB of Mac RAM in DIRECT_ADDRESSING or
REAL_ADDRESSING mode.

BTW, a quick Speedometer 4 CPU performance test showed a +15% speed increase
in real addressing mode vs. direct addressing. x86 arches don't benefit much
from that mode since they support complex address modes already (beyond plain
load/store).

TODO: check on MacOS X for Intel so that to reduce the test to darwin*:*)
2006-03-14 21:18:44 +00:00
nigel
fa84cf9a51 1. Happy New Year. 2. Minor syntax error 2006-03-14 09:38:24 +00:00
nigel
cce2d58228 Incorporate recent changes from Unix equivalent files 2006-03-11 11:45:25 +00:00
nigel
0fc35d5a91 Ensure event processing works in fullscreen mode 2006-03-10 08:16:56 +00:00
gbeauche
b80e9651f5 fix cross-block initializer 2006-02-27 13:39:29 +00:00
gbeauche
cafa8c8c89 add some barriers to make sure L_e_region* really come after the test insns 2006-02-27 13:38:52 +00:00
gbeauche
c19cc7a81b Updates 2006-02-27 07:25:43 +00:00
gbeauche
74c62b9095 - Try to allocate Mac memory only once on 32-bit systems
- Cap Mac memory to 1023 MB, Apple Personal Diagnostics crashes at 1 GB
- Scratch memory is meant to be addressed from Mac programs too
2006-02-27 07:24:58 +00:00
gbeauche
f446d610f8 Start allocating memory from 0x10000000 with linker scripts since the system
sometimes has a problem to make a decision when next_address == 0.

NOTE: this makes it possible to allocate up to 1 GB with DIRECT_ADDRESSING
2006-02-27 07:16:40 +00:00
gbeauche
9aab8c7d85 Move up _start base 2006-02-27 07:14:39 +00:00
gbeauche
93d918097b Fix vm_acquire_mac() fallback to non 33-bit addressing mode. Support 33-bit
addressing in REAL_ADDRESSING mode. Only support platforms with proper
linker scripts to map the whole Mac memory from address 0. Warning fix.

NOTE: when compiled with --enable-addressing=real on Linux {x86,x86_64},
you can not address up to 1.5 GB in Basilisk II.
2006-02-27 00:15:39 +00:00
gbeauche
2ef9d6e708 Add linker scripts for correct REAL_ADDRESSING support 2006-02-27 00:11:49 +00:00
gbeauche
077a232acc Memory allocated through win32 VirtualAlloc() is zero-filled. Likewise for
memory mmap()'ed with MAP_ANONYMOUS (equivalent to /dev/zero mapping but
faster)
2006-02-27 00:04:12 +00:00
gbeauche
735c332ab7 add 33-bit addressing support to vm_acquire_fixed() 2006-02-26 23:45:07 +00:00
gbeauche
dbc467e316 prefer lower indexes in register allocation, this avoids REX prefixes on
x86_64 when %r8 - %r15 are used (very light speedup expected)
2006-02-26 18:58:18 +00:00
gbeauche
91babf4bb5 fix FETOX & FTWOTOX translations for x86_64 2006-02-26 18:49:55 +00:00
gbeauche
c374d519a3 fix ROM85 bug fix for AppleShare extension 2006-02-19 14:18:29 +00:00
gbeauche
294664b726 Fix SAHF_SETO_PROFITABLE code for x86-64 platforms.
This was only an experiment. Improvement was marginal: only +3% on AMD64
(an Athlon 64 3200+). However, it may be interesting to test it on EM64T
(e.g. newer P4s) since an older P3/800, hence in 32-bit mode, got a +15%
improvement in Speedometer 4 benchmarks.

Rationale: lahf/seto sequences avoid load/stores to the stack (push/pop)
and it was thus hoped to be faster.

Anyhow, SAHF_SETO_PROFITABLE can only be enabled manually at this time.
Edit your generated Makefile for testing, but first make sure your CPU
supports lahf in 64-bit mode (lahf_lm flag in /proc/cpuinfo).
2006-02-06 23:06:54 +00:00
gbeauche
3b94dfb1a9 Cosmetics, fix %rh cases in !X86_FLAT_REGISTERS mode, lahf/sahf are now
valid instructions in long mode (recent enough CPU revisions: lahf_lm).
2006-02-06 22:57:18 +00:00
gbeauche
9ccf62f7b0 Manually emit LAHF instructions so that 64-bit assemblers can grok it 2006-02-06 22:55:44 +00:00
gbeauche
360a9457c6 fix logic 2006-01-27 23:49:01 +00:00
gbeauche
9d984b3b34 Check whether compiler supports byte bit-fields. If so, we can enable slirp
emulation code since it pure C+sockets code.
2006-01-27 23:41:43 +00:00
gbeauche
e9e3ad9a4b Further unaligned access fixes on IRIX (Brian J. Johnson). Configury needed
to ensure compiler supports bit-field members of unsigned char type.
2006-01-27 23:31:38 +00:00
gbeauche
a615a4ac24 Use the most portable POSIX-style non-blocking I/O (O_NONBLOCK) instead of
BSD-style through FIONBIO. It turns out Tru64 and probably IRIX don't support
the latter when fd is a pipe (slirp case).
2006-01-24 23:46:19 +00:00
gbeauche
064973dbc7 ugly cast games 2006-01-24 21:33:26 +00:00
gbeauche
e0a966ee15 Code I wrote yesterday was totally broken. It's enough to make sure nPC is
correctly updated too... Instruction skipper now works on Solaris/SPARC.
2006-01-23 23:57:41 +00:00
gbeauche
99f5dcf66f - Fix SPARC Store Doubleword transfer_size in decoder.
- In the instruction skipper code, add a huge kludge (trampoline) to forcibly
  zero out %global registers when requested. Otherwise, Solaris/SPARC turned
  out to use %g1 during signal handling, and the zero we could have written
  to there vanished. This assumes [%sp-8] is valid to use (ABI states data
  below %sp is undefined though)
2006-01-22 23:14:48 +00:00
gbeauche
100a3e1abd Adapt for MacOS X for Intel, also fix thread_state type in forward_exception() 2006-01-22 00:05:05 +00:00
gbeauche
f0f76cd7ad Remove nigel's hack, I am confident the problem was MacOS X implementation of
poll() that was not a cancellation point, which I fixed (OSX/Intel 10.4.4)
2006-01-21 20:48:17 +00:00
gbeauche
ceb7488a77 poll() and select() are still not cancellation points in MacOS X 10.4.4... 2006-01-21 16:19:47 +00:00
gbeauche
a6156a17b7 streamline for standalone VOSF performance testing 2006-01-21 16:00:17 +00:00
gbeauche
335a9dd7f3 MacOS X bundle 2006-01-21 13:06:32 +00:00
gbeauche
5ee0a6741b Packet headers can be examined through unaligned addresses. This patch
fixes this, especially for MIPS & SPARC platforms. [Initial patch from
Brian J. Johnson]
2006-01-17 21:19:12 +00:00
nigel
998e1f7f7b A few more clashes with OS X headers (10.3 only?), update year 2006-01-16 23:10:33 +00:00
nigel
078efac834 Added the cosmetic feature that I forgot was in v17 2006-01-16 23:09:53 +00:00
nigel
ff7665cb2e Add a Networking section, update formatting in other parts of the text 2006-01-16 23:07:22 +00:00
gbeauche
e534b07a70 more precise callee-saved register set 2006-01-16 21:31:41 +00:00
gbeauche
12f103a83a JIT generated code is not guaranteed to be leaf, e.g. there could be a call
to a generic instruction handler (untranslated code). This caused problems
on MacOS X for Intel where the unaligned stack conditions turned out to be
more visible. Performance loss is really neglectable and this is the right
fix now anyway.
2006-01-16 21:31:08 +00:00
gbeauche
1b99c9501f fix stack alignment (theoritically but it was OK in practise) in generated
functions, move m68k_compile_execute() to compiler/ dir since it's JIT
generic and it now depends on USE_PUSH_POP (as it should)
2006-01-15 22:42:51 +00:00
gbeauche
2bc7887bc1 fix framework detection on OSX/intel (thanks toshi for the remote access ;-) 2006-01-15 11:38:41 +00:00
nigel
a398b4a32a 10.4 builds are fine, but not when using Xcode 2006-01-05 03:37:56 +00:00
nigel
fc83144337 Update in what OSs this compiles under 2006-01-05 00:36:20 +00:00
nigel
9dbc9e276d Another year, OS X port networking now works, seperate OS X slirp
and udp tunneling descriptions by an extra blank line
2006-01-04 06:28:55 +00:00
nigel
681187bfc2 Another two years! 2006-01-04 06:23:57 +00:00
nigel
bdf1e05605 Version 17 test was a bit messy 2006-01-04 06:20:38 +00:00
nigel
ca2dba38fe Another year, another version 2006-01-04 06:14:55 +00:00
nigel
e47c1c50cd There is now a fix (er, hack) for the ethernet thread exit problem,
so move it from bugs to "wouldn't it be nice if ..."
2006-01-04 06:14:26 +00:00
nigel
4b000e4dad Clean up after configure 2006-01-04 06:11:04 +00:00
gbeauche
a2840298b0 - factor out native_byte_order determination
- fix ExpandMap[] when client X image byte order is different than host's
  e.g. { mips, ppc } -> x86 in 8 bpp mode
2006-01-03 22:03:27 +00:00
nigel
c08ed3ccd5 Add SLIRP changes to Project Builder file (10.0 and 10.1) 2005-12-30 01:56:03 +00:00
nigel
641fa2c01e Compiling on Mac OS X 10.2 doesn't define uint8_t using the standard headers.
Including stdint.h should be safe, but if it clashes, we could put an OS X
specific wrapper around it: #if (defined(__MACH__) && defined(__APPLE__))
2005-12-30 01:19:53 +00:00
nigel
5d09d2b6c4 Small hack for clean exits on Nigel's OS X port 2005-12-29 13:40:25 +00:00
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
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