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
nigel
3319c41d9d
Un-necessary function and global int
2002-06-02 12:20:38 +00:00
nigel
f2749d2222
Hanging after minimising icon no longer relevant (I don't minimise anymore).
...
Replaced with "fullscreen cursor jump" error.
2002-06-02 10:26:55 +00:00
nigel
fdac401a5a
Sheet and fullscreen-safe input processing, small tidyup
2002-05-30 12:50:21 +00:00
nigel
3053defd16
New way of storing if emulator is in full screen mode
2002-05-30 12:46:15 +00:00
nigel
3b2c66602f
Removed duplicate modes, new way of checking fullscreen mode, use sheets
...
instead of panels for warnings & errors
2002-05-30 12:43:32 +00:00
nigel
26f40f2630
Minor tidyup
2002-05-30 12:36:17 +00:00
nigel
dc41a2b10c
EndSheet() to end non-modal (i.e. non Error) sheets, fixed leak in ErrorSheet()
2002-05-30 12:28:38 +00:00
nigel
c0201dfc68
A better screens prefs change
2002-05-26 00:12:32 +00:00
nigel
edc98d37d2
Removed redundant (old C++ environment) stuff
2002-05-25 23:58:51 +00:00
nigel
0dcf103d24
Fix for screen radio-button selection bug, general tidyup.
2002-05-25 23:56:05 +00:00
nigel
d5995f053a
Blocking sheet presentation routines, simpler interfaces
2002-05-25 23:54:39 +00:00
nigel
72129b9348
Added simpler interfaces to panels (less arguments).
...
Note that this file is now Objective C++ only, so I should rename it to .hh
2002-05-25 23:54:02 +00:00
nigel
5288bdcb94
Extfs version doco change
2002-05-23 12:57:07 +00:00
nigel
8bcd6c180e
Added ScreenHideShow: action
2002-05-23 12:48:38 +00:00
gbeauche
d7c4d7afbf
Backout "ignoresegv" support on FreeBSD/x86 for now. Unfortunately, the
...
configure script would hang whereas standalone testing will pass all tests.
Any idea why??
- Unix/sigsegv.cpp (ix86_skip_instruction): Add decoder for mozbl instruction.
(SIGSEGV_REGISTER_FILE [FreeBSD/x86]): Note why we start at EDI offset
rather than plain sigcontext pointer. i.e. I don't know sigset_t size
beforehand and don't intend to.
2002-05-20 18:12:01 +00:00
gbeauche
edb377f181
Implement "ignoresegv" feature on FreeBSD/x86
...
- Update README and ChangeLog accordingly.
2002-05-20 17:50:39 +00:00
gbeauche
2bd9ee71e8
Implement "ignoresegv" feature on FreeBSD/x86 (tested on FreeBSD 4.5)
...
- sigsegv.cpp (ix86_skip_instruction): Add decoder for movzwl instructions.
(main): oddly, FreeBSD doesn't seem to let a write to a page if it is
write-only. Aka. make the page readable too.
2002-05-20 17:49:04 +00:00
gbeauche
b9e84cfb94
- Notify "ignoresegv" feature in ChangeLog
2002-05-20 16:06:24 +00:00
gbeauche
ae93f1e0d8
- Fix compilation on Linux/x86 with SIGCONTEXT_SUBTERFUGE
2002-05-20 16:03:37 +00:00
gbeauche
c2d3d08a7a
- sigsegv.cpp (ix86_skip_instruction): Fix DEBUG compilation.
2002-05-20 16:00:07 +00:00
gbeauche
e81b9ace6d
Implement "ignoresegv" feature on Darwin/ppc (tested on MacOS X)
...
- Unix/sigsegv.cpp (powerpc_decode_instruction): New.
(get_fault_instruction [MacOS X]): Factorize code.
(get_fault_instruction [Linux/m68k]): Don't use expression statement.
- README (ignoresegv): Add Darwin/ppc to list of supported platforms.
2002-05-20 15:56:13 +00:00
gbeauche
c47819020c
Implement "ignoresegv" feature on Linux/ppc:
...
- Unix/sigsegv.cpp (powerpc_skip_instruction): New from SheepShaver code.
- README (ignoresegv): Add Linux/ppc to list of supported platforms.
2002-05-19 21:58:42 +00:00
gbeauche
39d97f5b04
- video_vosh.h (Screen_fault_handler): Move unrecoverable fault case to...
...
- main_unix.cpp (sigsegv_dump_state): ... Here.
- sigsegv.h (sigsegv_fault_handler_t): Rename from sigsegv_handler_t.
- sigsegv.h (sigsegv_state_dumper_t): New.
2002-05-16 15:48:06 +00:00
gbeauche
d5be07f449
- Merge with clisp SIGSEGV library version 1.2 with support added for
...
HP-UX (contributed by Paolo Bonzini)
- Add missing? include <ucontext.h> for Irix and OSF/1 support
2002-05-12 13:51:22 +00:00
gbeauche
266fc18f8a
Implement the "ignoresegv" feature from SheepShaver. This is Unix-specific
...
so far. Target platform is currently Linux/x86.
2002-05-12 11:10:50 +00:00
nigel
d9892009cc
Took out redundant method (was used before event handling re-write)
2002-05-12 10:34:16 +00:00
nigel
0b27de2c57
Minor corrections
2002-05-05 09:48:17 +00:00
nigel
7244cdf618
Changes from recent Unix version
2002-04-29 11:23:59 +00:00
nigel
3e76d393e1
Minor doco changes
2002-04-29 11:17:29 +00:00
cebix
cc423d283f
default CD-ROM drive is /dev/cd0c on NetBSD
2002-04-28 14:06:17 +00:00
cebix
00a32a9afb
fixed compilation problem in fbdev code
2002-04-28 12:09:23 +00:00
cebix
72bb930435
added some safety checks
2002-04-25 13:14:11 +00:00
cebix
8871da753d
- added infrastructure for multi-monitor support; only video_x.cpp is
...
converted for the new scheme; not actually tested with a mult-monitor
setup yet but at least single-monitor display doesn't seem to be broken
(UAE banked addressing would definitely require some extensions to handle
multiple frame buffers)
- struct video_mode has an extra field that is free for use by platform-
specific code
2002-04-25 11:00:31 +00:00
nigel
4b96b51050
caddr_t change (to go with vm_alloc.* change?) from Unix files
2002-04-05 13:00:05 +00:00
nigel
71c4389094
Modify getCFint32() to cope with values of zero
...
(it was assuming 0 was an error condition)
2002-04-05 12:15:34 +00:00
gbeauche
c9563ddb5c
- Clarified test of access() return value
...
- s/strcpy/sprintf/ for cd_dev concatenation
- Statically allocate fd_dev[] and cd_dev[]
Better testing is yet to be done
2002-03-29 16:24:18 +00:00
nigel
15ce8c14f9
Added 'nogui' to unimplemented
2002-03-29 01:30:58 +00:00
cebix
5f9f63dea3
support for Linux devfs
2002-03-27 20:11:12 +00:00
gbeauche
9534ec2fc8
- Update to fix build with gcc-3.1 and -O3 optimization level
2002-03-27 10:45:59 +00:00
gbeauche
f5e58c95d6
- When X86_ASSEMBLY is set, aka when cpuopti is used, do call the
...
instruction handler by hand and make sure to save %ebp too
- Really merge cpu core with uae-0.8.21:
- Trace mode fixes (Bernd Roesch & Bernd Schmidt)
- Reintegrate PTEST and PFLUSH instructions back as no-ops
2002-03-23 13:57:38 +00:00
cebix
ed628a548b
fix for IRIX [Marcus Herbert]
2002-03-20 19:37:37 +00:00
cebix
78254ebddd
added missing return values
2002-03-20 19:03:41 +00:00
cebix
640130c275
XPRAM gets loaded with default values if "NuMc" signature isn't found. This is
...
done so the correct (default) video mode is used if the PRAM was wiped.
2002-03-19 14:25:50 +00:00
gbeauche
a42a559bf1
- Close log file
2002-03-18 21:25:07 +00:00
gbeauche
097b4509ee
- Add even more term libs and prefer ncurses over the rest.
2002-03-18 13:30:07 +00:00
gbeauche
faa3d07211
- Invert AC_CHECK_LIB for readline and termcap so that the test program
...
for readline detection is actually linked against -ltermcap -lreadline.
2002-03-18 12:59:44 +00:00
nigel
93cf51385f
New script to set up everything for doing a make
2002-03-18 11:40:41 +00:00
nigel
9f7affe816
Updated version to 10
2002-03-18 11:07:27 +00:00
nigel
3d6bd6c5cf
Added to comment for add_rsrc()
2002-03-18 11:05:43 +00:00
nigel
bfbfcd22e8
Added version 10
2002-03-18 11:04:15 +00:00
nigel
37ff77fa2c
Noted fix of cursor key bug, added 'full screen startup' bug,
...
corrected memory mapping (mmap) comment
2002-03-18 11:02:16 +00:00
nigel
262c59442e
Extra code to map cursor keys
2002-03-18 11:00:27 +00:00
nigel
cfca085155
Simplified for use with new '1_prepare_files.sh' script
2002-03-18 10:58:49 +00:00
nigel
abbc3cc253
Bug fix. Key events were not being passed in full screen mode,
...
because the window, having been minimised, is no longer 'Key.'
2002-03-18 10:48:25 +00:00
gbeauche
b8ffa860a2
- Add fault instruction recovery for Linux/ppc and siginfo_t handlers
2002-03-16 21:36:12 +00:00
gbeauche
2762a7dd48
- Add Flight Recorder for m68k too. That helps. ;-)
2002-03-16 16:31:54 +00:00
nigel
e9963fa5fb
New script to generate symlinks, remove any symlink generation from Makefile,
...
Makefile now generates 8 wrappers for cpuemu.cpp to slightly improve compile
time, added the 8 wrappers to the Project Builder file, updated doco
2002-03-16 11:50:45 +00:00
gbeauche
2161b984ab
- Large File support is now specific to Linux since it breaks build on
...
other platforms like Solaris/SPARC and I could only test under Linux.
TODO: Better use the AC_SYS_LARGEFILE macro from autoconf-2.5.
2002-03-16 10:58:22 +00:00
gbeauche
99efbfc712
- Check for caddr_t. On some systems like Solaris/SPARC, mmap() address
...
type (first parameter) is caddr_t instead of void *. Explicitly cast
address to (caddr_t) type and C++ implicit pointer conversion rules
will do the rest. aka. caddr_t -> void * is OK unlike the opposite.
2002-03-16 10:51:17 +00:00
gbeauche
7ec7300784
- Also include <sys/types.h> if system has <unistd.h>
2002-03-16 10:49:00 +00:00
gbeauche
00a63b5e88
- Expand TYPE_SOCKLEN_T as it is a non-standard autoconf macro that lives
...
in ac-archive/Miscellaneous. Extracted from version 1.2 (2000/07/19) by
Lars Brinkhoff <lars@nocrew.org>.
2002-03-16 10:12:49 +00:00
nigel
bae4d3e29e
Initial revision of Mac OS X port code. Uses Objective-C++. Needs Mac OS 10.1
2002-03-16 10:03:35 +00:00
nigel
a102f8da2c
Added latest changes in Unix version
2002-03-16 09:16:18 +00:00
nigel
c9c818cde6
Added BasiliskII.icns (needed to build the application), and a rule
...
to generate it (empty file) if the developer doesn't supply an icon
2002-03-16 09:09:19 +00:00
nigel
3612015d2c
Updated final "make" message
2002-03-16 05:47:12 +00:00
nigel
2d9f3673fb
Add Project builder and resource directories
2002-03-16 05:47:11 +00:00
nigel
08a00c378e
Added Mac OS X screen preferences, Mac OS X to the 'ported to' list,
...
my details to the Acknowledgements/Contributions
2002-03-16 05:27:56 +00:00
nigel
a3051c90fe
Initial revision of Mac OS X port code. Uses Objective-C++. Needs Mac OS 10.1
2002-03-16 04:01:09 +00:00
nigel
496ab59297
Initial revision of Mac OS X port code. Uses Objective-C++. Needs Mac OS 10.1
2002-03-16 04:00:35 +00:00
cebix
491d75a9aa
minor cleanups
2002-03-10 20:17:14 +00:00
cebix
9009fc63a0
some cleanups in the sound component
2002-03-10 19:34:11 +00:00
cebix
3e58028cb1
fixed floppy disk change detection problems under Linux
2002-02-23 17:54:24 +00:00
cebix
5ac532edfd
- default floppy device under Linux is now /dev/fd?u1440 because /dev/fd?H1440
...
is deprecated
2002-02-22 17:48:31 +00:00
gbeauche
2f652a42e5
- vm_acquire_fixed: Fix memset() and vm_protect() calls so that the address
...
is really the one specified instead of always zero.
2002-02-11 14:28:02 +00:00
cebix
7627f346ee
cleaned up pthread attributes [Brian Johnson]
2002-02-07 16:10:57 +00:00
cebix
dc4d9a56c7
direct addressing works under FreeBSD (says Michael Alyn Miller :-)
2002-02-01 19:25:49 +00:00
cebix
d6d7976939
- scsi_linux.cpp uses SCSI generic interface version 2
...
- slightly more verbose SCSI debugging messages
2002-01-26 18:10:13 +00:00
cebix
0662d7a1f1
added missing file
2002-01-25 12:14:21 +00:00
cebix
7385602242
GNOME-style about box and GNOME file entries are used if libgnomeui is present
2002-01-22 17:15:10 +00:00
cebix
3c7535d252
aclocal.m4 is generated by aclocal via autogen.sh
2002-01-22 16:07:29 +00:00
cebix
e3cfaffb1c
2001 -> 2002
2002-01-20 16:58:56 +00:00
cebix
fe9643c0e9
- fixed the problem with Ticks getting incremented on every interrupt, not
...
just 60Hz (e.g. moving the mouse made the caret blink faster)
- removed the TAB characters from the ChangeLog file
2002-01-18 21:06:03 +00:00
cebix
53509f02d7
added mon_lowmem.cpp to mon sources
2002-01-18 19:14:46 +00:00
cebix
077d335584
patch for compilation problem under Irix
2002-01-17 20:31:01 +00:00
cebix
628533940d
- documentation updates
...
- 2001 -> 2002
- version 0.9 -> 1.0
2002-01-15 14:58:43 +00:00
gbeauche
00ef1ff5da
- Add EIP recovery on Linux/x86 when using siginfo_t based signal handlers
2002-01-07 16:30:39 +00:00
cebix
8fb29cf11b
updated for kernel 2.4.9
2002-01-06 14:05:35 +00:00
gbeauche
74e6688987
- Add 64-bit file size support, at least for Linux
2002-01-06 08:22:08 +00:00
gbeauche
eec091e56b
- Fix condition codes handling for BFINS instructions (uae 0.8.20)
2002-01-06 08:21:09 +00:00
jlachmann
e3e86a68a9
AmigaOS: Improved video mode switching - more strict error checking
2001-10-16 17:27:52 +00:00
jlachmann
583f0cdbbf
AmigaOS: added Video depth/resolution switching
2001-10-14 18:00:44 +00:00
cebix
b36675d9c2
prepared XPRAM code for PowerMac emulation (8192 bytes NVRAM)
2001-10-07 19:50:21 +00:00
cebix
3492bae5e2
updated autoconf/automake helper files
2001-09-18 17:16:47 +00:00
cebix
67eddf896a
- added IRIX patches from Brian Johnson
...
- the existence of socklen_t is now checked by the configure script
2001-09-02 13:50:05 +00:00
gbeauche
4852a06dd2
- 64-bit blitters will use native "quad"-sized loads/stores, if available.
2001-08-19 17:38:11 +00:00
gbeauche
f93d1b483d
- merge 680x0 emulation core with uae 0.8.17
2001-08-19 16:21:01 +00:00
gbeauche
bcc6b4b0ac
- configure.in: actually save CXXFLAGS instead of CFLAGS in the code to
...
detect whether the compiler supports -fno-merge-constants or not
- Makefile.in: make sure to link gencpu with g++ since it contains objects
compiled from C++ code. Fix build problems with gcc 3.0.1
2001-08-19 16:18:30 +00:00
gbeauche
d64a00ed62
* Don't merge constants (pass -fno-merge-constants to the compiler) since
...
it breaks B2 in fpu/fpu_x86.cpp on the second call to fpu_init(), at the
fsave instruction. This problem appeared with the following compilers:
- "Official" : gcc-3.1 (mainline CVS)
- Mandrake : gcc-2.96 >= 0.59mdk, gcc-3.0.1 >= 0.1mdk
- Red Hat : gcc-2.96 >= 89, gcc-3.0 >= 1
2001-08-02 13:52:24 +00:00
cebix
52e18c5874
fstab parsing ignores comment lines
2001-07-31 14:10:35 +00:00
cebix
52ad76b49e
- UDP tunneling works under BeOS
...
- fixed BeOS compilation problems
2001-07-15 14:19:08 +00:00
gbeauche
3e27acb9d4
- audio_oss_esd.cpp (open_esd): even return false if !ENABLE_ESD and shut
...
up the compiler by the way
2001-07-15 05:40:12 +00:00
cebix
08cbd41f78
fixed indentation
2001-07-15 02:34:23 +00:00
cebix
0cc4091041
return value from ether_init() was missing
2001-07-15 02:26:20 +00:00
cebix
d9d9a0d9ec
- documentation updated
...
- UDP tunnelling not only works with AppleTalk but at least with TCP/IP and
MacIPX as well
2001-07-15 02:15:49 +00:00
cebix
54bfc83cfe
- disk.cpp looks for HFS partition info in the disk image; this makes it
...
possible to, for example, use MacOS-partitioned hard disks and removable
media under B2/Unix even if the OS doesn't understand Mac partition maps
by specifying the appropriate block device name as a Mac volume
- fixed typo in audio_dummy.cpp
- added minimally required UDP tunneling code to ether_dummy.cpp
- main_unix.cpp: if pthreads are not supported, we trigger the Ethernet
interrupt in the 60Hz ticker; this makes UDP tunneling work under
NetBSD/m68k (as the only form of networking)
2001-07-14 20:01:20 +00:00
gbeauche
55df210d27
- video_x.cpp: the_buffer shall always be mapped through vm_alloc() so
...
that it can be vm_protect()'ed at will afterwards
- video_x.cpp: let driver_base free() the_buffer_copy and the_host_buffer,
if necessary
- video_vosf.h: reverted to use malloc() for mainBuffer.dirtyPages and
mainBuffer.pageInfo
- vm_alloc.cpp: small cleanups
- fixed typos
2001-07-14 18:41:05 +00:00
cebix
20db0c7260
- 1-bit mode under X11 always uses default visual
...
- fixed possible crash in driver_window dtor (image data would be freed twice,
once by XDestroyImage() and once in driver_base dtor)
- fixed compilation problems with banked memory
- fixed typos
2001-07-14 15:02:49 +00:00
cebix
78c97c3f20
- outgoing packet source address is set in ether.cpp
...
- UDP tunnelling sends packets to Ethernet broadcast address as IP broadcasts
2001-07-13 18:49:29 +00:00
cebix
72c7f0db7a
- updated the TECH document
...
- EtherReset() clears the UDP protocol list
- audio_oss_esd.cpp: AudioExit() calls close_audio()
- ether_unix.cpp: uses map<> for protocol handlers
- updated audio_dummy.cpp and ether_dummy.cpp
2001-07-13 15:39:25 +00:00
gbeauche
1c6d6d7cb2
- merged some code from uae-0.8.16
2001-07-13 10:13:58 +00:00
cebix
6c35c2a9e8
- Implemented AppleTalk-over-UDP tunnelling, activated by setting "udptunnel"
...
to "true". This uses the BSD socket API, so it's fairly portable (currently
only imeplemented under Unix, though). This works by sending raw Ethernet
packets as UDP packets to a fixed port number ("udpport", default is 6066),
using IP broadcasts to simulate Ethernet broad- and multicasts. Currently
only tested with AppleTalk.
2001-07-12 19:48:28 +00:00
cebix
90c7198b75
fixed a couple of compiler warnings
2001-07-11 19:26:14 +00:00
cebix
5fa9b2abe9
- find_visual_for_depth() did not return true on success
2001-07-11 17:04:41 +00:00
cebix
456830630c
- background_pixel, border_pixel and colormap attributes of window are now
...
always set as this seems to be required for non-default visuals
2001-07-10 15:50:57 +00:00
cebix
305b9ef7f2
Irix needs pthread cond variables which need the pthread.h header file
2001-07-09 15:44:58 +00:00
cebix
5868a40a37
- ADB has its own interrupt flag, INTFLAG_ADB
...
- ADBMouseMoved(), ADBMouseDown/Up() and ADBKeyDown/Up() trigger the ADB
interrupt
- ADB mutex is only used for mouse movement (the only input state where it
matters)
- adb.cpp: toggling relative mouse mode resets mouse_x/y
- PrimeTime(0) schedules a timer task with 0 delay time; this is still not
the correct implementation, but it makes MacSyndicate work...
- Unix: pthreads are preferred to POSIX.4 timers for 60Hz ticks because the
timers drift badly under Linux and the thread can compensate for drifting
well enough
- Unix: moved GetTicks_usec() and Delay_usec() to timer_unix.cpp
- video_x.cpp: X mouse acceleration is disabled in relative mouse mode because
MacOS does its own acceleration
- video_x.cpp: palette[].pixel and palette[].flags are always preset
- video_x.cpp: decoupled X event handling from 60Hz video refresh cycle by
using select() with a timeout on the X fd
2001-07-09 11:22:01 +00:00