Commit Graph

384 Commits

Author SHA1 Message Date
gbeauche
d56ea02151 typo ;-) 2001-06-30 14:48:27 +00:00
cebix
f17b9006d6 - fixed compilation problems under AmigaOS
- fsave/frestore on AmigaOS and NetBSD/m68k always use a 68882/68040-style
  FPU frame, eliminating the need for 68060 FPU patches
2001-06-30 12:58:08 +00:00
cebix
738fa25344 slot ROM checksum is recalculated after patching during resolution switch 2001-06-29 12:51:21 +00:00
gbeauche
d011594d4e zero_fd is not longer used since vm_alloc.cpp should handle that correctly.
However, vm_init() and vm_exit() are called in main_unix.cpp to ensure proper
initialization of the internal zero_fd descriptor, if needed. i.e. no
anonymous mapping for mmap()-based memory allocation.
2001-06-28 22:06:18 +00:00
gbeauche
2ab43425c5 vector<> is in namespace std 2001-06-28 21:36:46 +00:00
cebix
0cf3f32b7d video_x.cpp supports resolution switching in windowed mode: the available
resolutions are 512x384, 640x480, 800x600, 1024x768 and 1280x1024 (the prefs
editor has to be updated to reflect this). The resolution selected in the
prefs editor is used as the default, but it can be changed in the Monitors
control panel. So far only tested with direct addressing.
2001-06-28 21:20:02 +00:00
cebix
0fe2584d92 depth/resolution switching infrastructure should be complete now; slot ROM
contains all supported depths, default mode is stored in XPRAM upon startup,
and added video_switch_to_mode() call (currently unimplemented in all drivers)
2001-06-27 20:05:31 +00:00
cebix
1be8a821a8 added infrastructure for resolution/depth switching (currently, all video
drivers only support one mode, the one selected by the user)
2001-06-27 19:03:38 +00:00
gbeauche
dae4fb627c - added SIGSEGV support for Linux/Alpha (to be checked), Darwin/PPC
- added uniform virtual memory allocation
  (supports mmap(), vm_allocate(), or fallbacks to malloc()/free())
- cleaned up memory allocation in main_unix.cpp
2001-06-26 22:35:42 +00:00
gbeauche
673c53231f - In banked addressing mode, the UAE memory handlers should already handle
reads/writes to/from the frame buffer correctly. i.e. specialised blitters
  should not be used there.
2001-06-22 08:34:49 +00:00
gbeauche
4d03a57251 - cleaned up removal of '-g' for gcc 2001-06-19 08:29:50 +00:00
gbeauche
da9f22d930 - config.guess: import CVS version 1.195
- config.sub: import CVS version 1.212
As a side effect, it now recognizes MacOS X
2001-06-19 08:29:07 +00:00
gbeauche
19cda89b5e - NEGX may use X & Z flags 2001-06-05 12:23:27 +00:00
gbeauche
fe6ad83317 - use "volatile" to prevent from optimization for writes to page 2001-06-05 12:16:34 +00:00
cebix
ea1f0a0761 fixed location of FPU source for PPC 2001-05-31 21:46:25 +00:00
cebix
ad7fbb0698 final adjustments for 0.9 release 2001-05-31 20:53:53 +00:00
cebix
31610651eb small cleanup 2001-05-31 15:36:33 +00:00
cebix
0cb5ef8767 don't call aclocal 2001-05-31 15:33:44 +00:00
cebix
dbf260f29b updated source archive name 2001-05-31 14:34:52 +00:00
cebix
560636ee8d prepared for snapshot release 2001-05-29 15:02:16 +00:00
cebix
b652896918 "About" window looks nicer 2001-05-26 12:31:00 +00:00
cebix
8c6f419c37 - VOSF is enabled by default 2001-05-24 15:06:13 +00:00
cebix
68310129fe - AmigaOS: SCSI buffer memory type can be selected via prefs 2001-05-24 14:31:07 +00:00
cebix
d88fac31e1 default FPUSRC was wrong 2001-05-22 19:01:44 +00:00
gbeauche
b7d1ee252c - fixed "SIGSEGV recovery" not supported case 2001-05-21 03:21:54 +00:00
gbeauche
98192c4ba9 - new and updated SIGSEGV support functions:
+ configure script cleanups
  + possible support for Direct Addressing / VOSF on other platforms
2001-05-20 20:31:50 +00:00
cebix
8e93379eb4 PrefsExit() sets the_prefs to NULL 2001-05-15 14:24:25 +00:00
gbeauche
fedb56d8af - fixes for gcc-3.0 2001-04-25 14:53:45 +00:00
cebix
eba40b9865 fixed bug with -Ofast on IRIX 2001-04-10 18:33:57 +00:00
cebix
017fc451b7 fixed compilation problems under BeOS/x86 2001-04-10 11:05:13 +00:00
gbeauche
ebb5be06cf - fixed operand number for source register (do_fmod) 2001-04-09 14:19:58 +00:00
cebix
3fcce55c7d serial_unix.cpp: input/output_thread_cancel weren't initialized [Kolja Waschk] 2001-04-08 12:21:46 +00:00
cebix
e0307117d2 - added help for command line options
- PrefsInit() removes all processed options
2001-04-01 12:11:45 +00:00
cebix
5ffe6505dc - fixed bugs in the BeOS extfs file types handling 2001-03-31 14:32:01 +00:00
cebix
085855e083 updated copyright dates 2001-03-31 11:44:48 +00:00
cebix
3b54f1f8de - FreeBSD configure script cleanups [Michael Alyn Miller]
- ether_linux.cpp moved and renamed to ether_unix.cpp, now also works with
  the tap driver under FreeBSD [Michael Alyn Miller]
- fpu_x86_asm.h: fixed problem in with newer GCC pre-processors
2001-03-29 14:20:55 +00:00
cebix
0cf579b49e - "-Ofast" option is supplied to MIPSPro compiler [Brian J. Johnson
- workaround for IRIX pthreads bug in Delay_usec() [Brian J. Johnson]
2001-03-28 16:53:39 +00:00
cebix
3c0d6f6e43 cleaned up a little 2001-03-28 14:18:58 +00:00
gbeauche
d1ea113beb - fixed FPU core auto-detection for non-x86 architectures 2001-03-24 08:56:15 +00:00
gbeauche
6059507910 Moved FPU emulation code sources to uae_cpu/fpu/ 2001-03-20 18:05:36 +00:00
gbeauche
28b71c0972 - removed old JIT compiler, its related support functions and files
(compiler.{h,cpp})
2001-03-20 17:35:46 +00:00
gbeauche
7535a1042f Additions:
- MOVE16 (Ay)+,(xxx).L
- MOVE16 (xxx).L,(Ay)+
- MOVE16 (Ay),(xxx).L
- MOVE16 (xxx).L,(Ay)

Fixes:
- MOVE16 (Ax)+,(Ay)+ where x == y: address register shall be incremented
  only once
- CINV, CPUSH: 'p' field matches correctly the instruction 'cache field'
2001-03-19 13:11:40 +00:00
cebix
53973d4b84 backported the changes from the Mac-On-Linux project:
- now compiles under Linux 2.4 kernels
 - Ethernet hardware address is virtualized on the Mac side
 - automatically filters IP packets based on the IP address of the Mac side
2001-03-18 15:41:17 +00:00
cebix
ff01052ee4 testing the basilisk-cvs mailing list 2001-03-11 16:03:14 +00:00
cebix
e985209cd0 This is a test. Ignore. 2001-03-11 14:25:15 +00:00
cebix
a3bf445958 testing again 2001-03-11 14:24:03 +00:00
cebix
f1187fc1b0 testing the basilisk-cvs list 2001-03-11 14:21:18 +00:00
cebix
050a1a9177 testing the basilisk-cvs list 2001-03-11 13:39:58 +00:00
cebix
11030b234b testing again 2001-03-11 13:38:42 +00:00
cebix
ce802f5dfd testing the basilisk-cvs list 2001-03-11 13:30:26 +00:00
cebix
eec6b9acf6 testing the basilisk-cvs list 2001-03-11 13:21:38 +00:00
cebix
4d5028655f added patches from Brian J. Johnson (better VOSF performance and responsiveness) 2001-03-06 18:41:12 +00:00
cebix
8c39ddb2a2 added date of CVS snapshot 2001-02-17 16:35:39 +00:00
cebix
6494332010 documentation update (networking under BeOS) 2001-02-10 20:58:03 +00:00
cebix
cb4d38e711 fixed compilation problem under BeOS/x86 2001-02-10 20:46:17 +00:00
cebix
1cca65ee5b compilation aborts on x86 machines 2001-02-10 20:42:46 +00:00
cebix
7e29a242e0 documentation updates 2001-02-10 20:04:17 +00:00
cebix
57c4e2dcda floppy driver updates DskErr 2001-02-10 20:03:55 +00:00
cebix
73872e23cb added missing TriggerNMI() function 2001-02-10 19:58:46 +00:00
cebix
16203c298f "make install" failed when driver was already installed 2001-02-10 19:58:20 +00:00
cebix
4b2c1d9a23 implemented VOSF on Linux/ppc 2001-02-10 15:29:01 +00:00
gbeauche
a76e2d5da4 - added code to fake HWBases to scratch memory area 2001-02-10 11:37:42 +00:00
gbeauche
52d36668fe Mode of operations
- detailed a little more Banked Memory Addressing
- added a description of Direct (Constant-Offset) Addressing
- real addressing works on some non-68k, little-endian systems
2001-02-10 09:20:54 +00:00
cebix
4785ea2b9a fixed compilation problems under BeOS 2001-02-09 20:04:15 +00:00
cebix
c23567ab14 - bumped version number to 0.9
- updated copyright dates
2001-02-02 20:53:00 +00:00
gbeauche
e8862d8cbe - Added blitters for BGR 555 mode 2001-01-31 21:28:58 +00:00
gbeauche
9b2ed3594e - Faked VIA, SCCRd, SCCWr base addressed to scratch memory area in
EMUL_OP_INSTALL_DRIVERS
2001-01-30 07:27:23 +00:00
gbeauche
e94d644b19 Mainly changes to the VOSF code:
- improved blitters selection
- improved blitters performance if UNALIGNED_PROFITABLE is set
- cleaned up 8 bpp blitters
2001-01-28 14:05:19 +00:00
gbeauche
069a1ba3ad - removed --enable-16bit-vidmode (unused and useless) 2001-01-28 14:04:32 +00:00
gbeauche
97d7dcc005 - added do_byteswap_16() and do_byteswap_32() 2001-01-28 14:03:19 +00:00
cebix
81f357c42c - AmigaOS: implemented XPRAM watchdog thread
- AmigaOS: disabled 68060 Super Bypass mode because of CPU bug triggered
  by MacOS 8
- minor documentation updates
2001-01-25 22:24:36 +00:00
cebix
049092ac3d added numeric values to video driver control/status codes 2001-01-25 21:37:41 +00:00
cebix
aa018d1bdd updated autogen.sh script 2001-01-16 14:14:10 +00:00
gbeauche
252d602e96 - Cleaned up some comments again
- The dirtyPages[] array overrun conditions should be really safe now
2001-01-11 18:00:40 +00:00
gbeauche
5d671689db - Added UNALIGNED_PROFITABLE to the list of i386 macro definitions
- Changed OPTFLAGS macro definitions to OPTIMIZED_FLAGS
2001-01-11 16:39:25 +00:00
gbeauche
bd3734e10a Changes made to the update routines
- Cleaned up the process for determining the ranges of pages touched
  that have to be blitted onto the screen (find_next_page_set() and
  find_next_page_clear() functions)
Changes made to do_handle_screen_fault()
- An unhandled address is now dealt by the default SIGSEGV handler
- Print out the address of the instruction that caused the exception
2001-01-11 16:39:08 +00:00
gbeauche
d583307d6b - Cleaned up the process for determining the ranges of pages touched
that have to be blitted onto the screen (find_next_page_set() and
  find_next_page_clear() functions)
- Cleaned up some comments
Changes from Brian J. Johnson
- Fixed mainBuffer.dirtyPages[] array overrun in VOSF code
- Fixed calculation of the frames-per-second value
2001-01-11 16:38:48 +00:00
gbeauche
d21cbd327d - From Lauri's ChangeLog: "Fixed a bug in FPU FTAN opcode (didn't pop the value
1.0 that x86 partial tangent FPTAN always pushes to stack for 8087/287
  compatibility)."
2001-01-11 13:19:30 +00:00
cebix
c7d71ae1ab XFree() doesn't need casting 2001-01-06 22:15:35 +00:00
cebix
6b92e785c7 - removed the INT16 prefs item type; use INT32 instead
- AmigaOS/Unix: it's now possible to specify preferences items on the
  command line
- Unix: command line options now take "--"-prefix, e.g. "--rominfo"
2001-01-04 19:50:23 +00:00
cebix
29768a331f - man page is included in RPM whether or not it is compressed 2001-01-02 21:03:27 +00:00
cebix
a27c99d440 - removed USE_MAPPED_MEMORY (unused)
- fixed Delay_usec() on Solaris
2000-11-30 16:20:52 +00:00
cebix
bc2b95f73b fixed fbcopy_16_obo on big-endian systems 2000-11-30 16:09:03 +00:00
cebix
4fa9af7465 added sources for "sheep" driver and "sheep_net" network add-on 2000-11-13 16:59:42 +00:00
cebix
4162bfeffb window close widget now maps to Mac "power" key 2000-11-03 18:27:55 +00:00
cebix
3a777718bd - clicking on the "close" widget of the MacOS display window rings the bell
but doesn't actually close the window to prevent Basilisk II from being
  accidentally killed without a proper shutdown of MacOS
- replaced many #ifdef HAVE_PTHREADS constructs with LOCK/UNLOCK macros
- minor cleanups
2000-11-03 18:21:43 +00:00
cebix
3e6bb33b15 removed unnecessary window attributes 2000-11-03 12:23:49 +00:00
cebix
ed6e74340c - fixed Delay_usec() on IRIX
- xpram_func() calls Delay_usec() with a time of <1 second
2000-11-02 19:41:52 +00:00
cebix
348606cc5d - added audio support for IRIX [Brian J. Johnson]
- improved Delay_usec() under FreeBSD and IRIX
- fixed typo ("HAVE_PTHREDS") in video_x.cpp
2000-11-02 14:45:17 +00:00
cebix
c3df0cee5a video_x.cpp: window asks for input focus with XSetWMHints() 2000-10-27 17:01:40 +00:00
cebix
0df6c7e19c - FPU is now available under NetBSD/m68k
- main_unix.cpp: added more emulated privileged instructions
2000-10-17 12:24:59 +00:00
cebix
1158d091da fixed compilation problems 2000-10-16 17:37:58 +00:00
cebix
10f4035c6e - updated for latest version of mon 2000-10-15 15:08:24 +00:00
cebix
1b751e0339 - configure.in patches for Irix from bjjohnson
- extfs: .bin files get Stuffit Expander type/creator
2000-10-14 16:30:54 +00:00
cebix
01d43035d5 - replaced floating-point page shift calculation by integer routine, fixing
the VOSF problems under NetBSD/m68k
- fixed off-by-7 error in 1-bit window update routines
2000-10-13 16:47:52 +00:00
cebix
33892da9ef marked fbdevices and keycodes files as config files 2000-10-11 18:07:05 +00:00
cebix
a1097b080d - added a few more emulated privileged instructions to NetBSD/m68k
- tried to make VOSF run under NetBSD/m68k, little success (shows stripes and
  sometimes crashes)
2000-10-11 17:55:06 +00:00
cebix
b6f3185c3b cdrom.cpp: implemented Status(6) 2000-10-11 17:40:07 +00:00
cebix
129e9cd85d updated docs 2000-10-10 21:14:22 +00:00
cebix
c2780cd794 DESTDIR was not respected by installdirs target 2000-10-10 20:55:38 +00:00
cebix
bd65997392 updated rpm build target 2000-10-10 19:28:59 +00:00
cebix
b07af7f239 - updated spec file
- make install/uninstall targets support DESTDIR variable
- fixed compilation problem with DIRECT_ADDRESSING
2000-10-10 18:54:34 +00:00
cebix
b6d5ab3477 updated aclocal.m4 2000-10-09 17:59:34 +00:00
cebix
82b38333f1 EMUL_OP_BLOCK_MOVE is no longer used to replace the BlockMove() routine but
to implement more clever cache flushing for it
2000-10-09 17:45:58 +00:00
cebix
efc60c7f60 works again under NetBSD/m68k 2000-10-09 17:05:17 +00:00
cebix
3c2e4f8c06 added SA_SIGINFO to sa_flags when sa_sigaction is used 2000-10-08 18:41:35 +00:00
cebix
ff892aaf57 simplified building of RPMs 2000-10-05 17:26:37 +00:00
cebix
991a00ee09 added RPM spec file 2000-10-05 17:24:47 +00:00
gbeauche
24217ac65b - fixed a bug in 24 bpp mode, at least when there are four bytes per pixel
- a little loop optimization when clearing the dirty pages
- changed unsigned longs with the uintptr type
- also used uintpr for the page alignment function
2000-10-02 17:52:42 +00:00
gbeauche
147f72cb41 - fixed a bug in the previous patch that would fail to redraw the screen if
dynamic refresh is used.
- cleaned up resume_emul() in DGA mode with VOSF.
2000-09-25 22:33:49 +00:00
gbeauche
48f9ee5477 - cleaned up Expose event handling with VOSF 2000-09-25 21:49:19 +00:00
cebix
09192eb0e3 - adapted for mon V3.0 which is now the required minimum
- fixed gcc 2.96 compiler warnings
2000-09-25 17:54:01 +00:00
gbeauche
ca11a645d2 - cleaned up and fixed 8bpp copy 2000-09-23 08:39:55 +00:00
gbeauche
b251b89073 - fbcopy_raw now works if memcpy() is not used
(but it seems better to use memcpy since GCC has inline equivalent)
2000-09-23 08:39:38 +00:00
gbeauche
8aab66f024 - added a condition if (depth <= 8) before copying more than two bytes 2000-09-23 06:51:46 +00:00
gbeauche
3f7747a724 - fixed blitters for big endian systems, will probably work now 2000-09-23 06:51:30 +00:00
gbeauche
b7d6274743 - added Host2MacAddr() 2000-09-22 17:32:10 +00:00
gbeauche
5569af3c3a - Bugs: Unix: real addressing mode: something is still deadly wrong there though it
works for example under Linux/i386.
- video_vosf.h: check correctness of {15,16,24 bpp} blitters on big endian systems
2000-09-22 17:24:22 +00:00
gbeauche
e5410ea270 - Direct and real addressing modes
- Video on SEGV signals
2000-09-22 17:23:36 +00:00
gbeauche
69c5aab2b3 - changed type of ScratchMem from uint32 to uint8 * 2000-09-22 17:22:40 +00:00
gbeauche
5ec4d31f86 - fixed ADDQ and SUBQ bitmasks 2000-09-22 17:22:09 +00:00
gbeauche
d3f64dcb5f - changed set/get PC to better reflect direct or real addressing modes
- removed m68k_get_pc_p()
- default to not using prefetch buffer
2000-09-22 17:21:45 +00:00
gbeauche
b7177f6932 - changed set/get PC to better reflect direct or real addressing modes 2000-09-22 17:21:25 +00:00
gbeauche
1f2183a186 - merged DIRECT_ADDRESSING and REAL_ADDRESSING
- conditionally removed unused code for direct addressing or real addressing modes
2000-09-22 17:20:33 +00:00
gbeauche
b25e3eef89 - fixed 15 and 16 bpp frame_host_* functions for big endian systems
- conditionally removed unused code for direct addressing or real addressing modes
2000-09-22 17:20:01 +00:00
gbeauche
21822f8745 - removed generation of unused handlers in direct or real addressing modes
(no prefetch buffer, nor exception 3 handling)
2000-09-22 17:19:12 +00:00
gbeauche
51c093134b - removed memory access functions for real addressing and included <memory.h>
instead
- added Host2MacAddr
2000-09-22 17:18:46 +00:00
gbeauche
86832e0d1a - added memory initilization for direct addressing (MEMBaseDiff) 2000-09-22 17:18:15 +00:00
gbeauche
83d05988fb - added an experimental patch to fix a bug with the AppleShare extension in real addressing mode 2000-09-22 17:17:56 +00:00
gbeauche
c982fcf621 - changed type of ScratchMem from uint32 to uint8 *
- use of Host2MacAddr to glue the ScratchMem area
- added an experimental patch to fix a bug with Speedometer in real addressing mode
- added an experimental patch to fix a bug with the AppleShare extension in real addressing mode
2000-09-22 17:17:21 +00:00
gbeauche
f882c34591 - added direct and real addressing modes support
- added Video on SEGV signals support
2000-09-22 17:16:31 +00:00
gbeauche
fbabba29ee - video on SEGV signals 2000-09-22 17:16:05 +00:00
gbeauche
13bd5c97b9 - blit functions 2000-09-22 17:15:27 +00:00
gbeauche
e8d4a865e2 - added [u]intptr types
- set rom protection flag according to the addressing mode used
- set use_prefetch_buffer to 0
2000-09-22 17:14:46 +00:00
gbeauche
cbe6fea745 - added USE_SCRATCHMEM_SUBTERFUGE
- added memory allocation in real and direct addressing modes through mmap()
- added the possibility to allocate the whole mac memory from zero
2000-09-22 17:14:28 +00:00
gbeauche
da8b5373b0 - added AC_PROG_CC_C_O
- added canonical system information
- added Video on SEGV signals (VOSF)
- added testing for different addressing modes
- added check for size of void * in order to have proper [u]inptr types
- added the removal of the "-g" flag if GCC is used
2000-09-22 17:14:04 +00:00
gbeauche
9e5ea1f771 - canonical system information 2000-09-22 17:13:45 +00:00
gbeauche
bb93c9f4e4 - added ENABLE_VOSF
- added HAVE_SIGINFO_T
- added HAVE_SIGCONTEXT_SUBTERFUGE
2000-09-22 17:11:58 +00:00
cebix
199a0c04fc cleaned up 2000-09-13 15:32:34 +00:00
gbeauche
b9924d8b0c Added port of Lauri's FPE code to GCC/i386 2000-09-05 16:56:22 +00:00
gbeauche
a594afb29d - added: FPUSRCS which defaults to ../uae_cpu/fpp.cpp
- added: redifinition of FPUSRCS with ../uae_cpu/fpu_x86.cpp if the host
  system supports it (GCC and X86_ASSEMBLY)
2000-09-05 16:55:16 +00:00
gbeauche
9b2887536f Ported Lauri's FPU core to GCC/i386 2000-09-05 16:54:42 +00:00
gbeauche
fdf9c9938a - added FPU initialization routines 2000-09-05 16:53:47 +00:00
gbeauche
fbc2092471 - updated init_m68k with fpu_init() and fpu_set_integral_fpu() calls
- added exit_m68k() and handle deinitialization of the FPU
- updated m68k_reset to call fpu_reset()
2000-09-05 16:53:19 +00:00
gbeauche
e1724ba3d3 - added some prototypes for the new FPU core 2000-09-05 16:52:34 +00:00
gbeauche
0ca8dcaf08 - added call to exit_m68k() 2000-09-05 16:52:10 +00:00
cebix
d4a1463279 - some cleanups in the AmigaOS code 2000-09-04 16:30:48 +00:00
cebix
2bebaceabc - fixed compilation problem under Linux
- TriggerNMI() declaration moved to cpu_emulation.h
2000-08-22 12:44:30 +00:00
jlachmann
46612d3008 added MacsBug Support -jl- 2000-08-20 14:08:44 +00:00
cebix
a1d4587df6 - modified BeOS/extfs_beos.cpp to implement new get_finfo/set_finfo functions
(untested)
2000-08-14 14:38:16 +00:00