--- uae/src/ChangeLog 2018/04/24 16:38:53 1.1.1.2 +++ uae/src/ChangeLog 2018/04/24 16:59:52 1.1.1.17 @@ -1,3 +1,992 @@ +9B0730 Some sprite state machine tweaks. Fix sprite vs. DIW comparison. + HAM linebuffer was too small by half - oops. + Make absolutely, positively sure that when hsync_handler calls + sync_copper_with_cpu, we don't take any invalid shortcuts. +9B0729 Silly mistake - need to call flush_plane_data unless plfleft is + -1, even if no planes were enabled. +9B0728 Small hack to reduce the time we lose with unnecessary + disk_doupdate_read calls. + Avoid calling flush_plane_data if we have no bitplanes enabled. + Tweak the SPCFLAG_INT handling to make "Delirium" demo work. + Limit rate of DDF warning messages. + Adjust display parameters so that things are shifted to the left + even more. + Fix (hopefully) CIA & blitter saving code. +9B0727 Copper code reorganized; speedup code rewritten. Can now be + enabled with a GUI setting. + Fixed the delayoffset stuff. +9B0725 AGA sprites, and some patches to sprite/playfield collision code, + mostly by Toni. + Fixed a small sprite restore problem; added missing code to map + fastmem banks when restoring them. + Some more state saving updates from Toni. +9B0724 Fix a nasty bug in the copper SKIP instruction introduced by recent + changes. + Update the FAST_COPPER code. Not quite enabled yet. + More work on the memory configuration stuff. + Fix CPU type writeout in cfgfile.c (taken from WinUAE source). + Move the WOC demo BPLCON0 fix to compute_toscr_delay (Toni). + Added Toni's new disk patches, which include HD disk support by + Adil Temel. + Rewrote the memory and audio save/restore code. + Mask DDFSTOP with 0xFE, not 0xFC. +9B0723 Yet another new and correct copper state machine (this time for sure) + Fix some AGA problems in DDF speedup code. + In gencpu.c, branch insns return a hardcoded cycle count; this had + not been updated for the CYCLE_UNIT stuff. Fixed. + xwin.c: If mouse is grabbed, we don't need mousehack. + Don't clear audio state if produce_sound == 0; this causes problems + if we want to turn the sound back on. + If an audio channel had a period of PERIOD_MAX, allow AUDxPER to + set its evtime back to a reasonable value. + Massive cleanup of memory initialization code; it will now use changed + prefs on reset. Added some memory options to gtkui.c. + Added Toni's state saving code, then added gtkui options and code to + initiate saving/restoring. +9B0722 filesys.c: Fix writeout of hardfile params (Bernie [2]) + Add an A1000 Kickstart disk loader (Gerald Schnabel). Got rid of + the automount_uaedev code; we can detect the Kickstart version and + do the right thing. + Deleted a few unused variables (Toni) + Avoid aborting in decode_ham if Amiga code turns on the HAM bit but + has too few bitplanes (found by Toni). + Make the dummy mem bank return other values than 0; helps some + stupid memory detection code. + Implemented a little exec task lister for the debugger. + Added new debugger commands from Mark Cox. Improved his copper list + debugger by adding recorded timing information to it. + MOVE16 fixes from Gwenole Beauchesne. + xBCD fixes by Maik Qualmann, with some additional flag fixes by myself + (ABCD & SBCD behave exactly like on a 68000 now; dunno about NBCD). +9B0520 AGA bscan2 fixes and disk.c kickstart speedup fixes from Toni. + Remove bogus changes I made to one of Toni's earlier disk.c updates. + Call RethinkICRA/B from INTREQ (suggested by Toni). + Properly save mixed_stereo setting. + NEGX uses X and Z (Bernd Roesch). + Danish keyboard support (Jesper Bojesen). +9B0311 Repair "emulated but no output" sound setting. +9B0310 Fix massive bug introduced in do_cycles_slow with the rescaling + changes. + CLXCON logic updated for AGA (Toni). Change meaning of collision_level + and add support for it in cfgfile.c. +9B0309 Fix problem where a fsdb file could prevent deletion of otherwise + empty directory discovered by Torsten Enderling. + Rescale return values of CPU emulator functions. +9B0225 Undo parts of the audio changes that made the "accurate" setting the + default. +9B0221 Make fsdb_unix compile again. +9B0219 Fix ddf for cases where start isn't aligned to fetchunit. + Fix some problems with the sound code going into infinite loops or + crashing. + Try to re-add Toni's ddf delay fixes properly. + Added a fix from Krister Walfridsson for X11 SHM code. + Rename OBJECT_NOT_FOUND to OBJECT_NOT_AROUND (not sure why, but the + win32 port does this; Fellow picked it up as well...) + Give in and allocate ainos with xcalloc. + Import fsdb_win32 code from Fellow. + Some tidyup and fixes in fsdb code. + Lose the lastdiv10 variable, and update CIA timers when reading them + (mostly by Bernie [2] Meyer) + Move reset_uaedevices and get_new_device to filesys.c. Add extra + parameter to get_new_device. +9B0213 Fix mouse pointer jumping bug in X11 code (Ralf Hoffmann) + Scaled event handling by a factor of 512. This allows more accurate + sound output frequencies, as well as more fine grained CPU speed + settings. + Implemented totally untested emulator side AHI support. +9B0211 Partially reverted changes made to the audio event code in 0.8.0. + Implemented "mixed" stereo. +9B0210 Fixed invisible sprite bug - sprite_width got a new meaning, and not + everything had been updated. +9B0121 cycles => get_cycles () (from Bernie [2] Meyer's JIT patchkit) +9B0120 Final bugfix in speedup code (plfleft got set too early). +9B0118 Fixed SPEEDUP code for AGA. Speedup now starts when fetch_state is + fetched_plane0. +9B0115 First batch of AGA playfield changes (Toni & myself). +9B0110 Small fix for the m68k_run macro (Bernie [2] Meyer) +9B0109 Use ntscmode from prefs structure (Dwayne C. Litzenberger) + Some 040 FPU fixes (Bernie [2] Meyer) + Delay DSKREADY a while; fix other small disk bugs (Toni Wilen) +9A0902 F0FF10 is now a puts () calltrap. +9A0830 Add some missing initializations in filesys.c, thanks to debugging by + Harald Frank. +9A0827 Fix a crash with framerate != 1. + Don't allow programs to see left & right or top & bottom simultaneously + with the keyboard joystick replacements. (Gee, games on the CPC and on + the Amiga actually have something in common - some of them crash when + the joystick is pushed in too many directions at the same time...) +9A0825 Put in the new sprite code. This has existed for many months but + I've only now found the final bugs. + New version of Bernd Meyer's special_mem code. Also add his + set_special/unset_special code, the noflags changes for gencpu, + and a fix for cpuopti's string matching. + Tiny clarification in table68k. + Add 68040 support from Basilisk. + readcpu.h is now included from newcpu.h. +9A0824 Rather massive overhaul of the DDF code. Many other timing fixes + (copper state machine mostly) (Sam Jordan and myself) + Get rid of stupid optimizations in color recording. + Synchronize CPU and copper in custom_wget. +9A0816 Introduce variable "special_mem", set it in each memory handler + that doesn't work on real memory (Bernd Meyer). +9A0815 Fix a really stupid bug in cfgfile_strval. + Nonfunctional support for switching between windowed/fullscreen modes + in gtkui. + Add (semi-broken) support in the debugger to create a trace logfile. + Take out most port-specific flags handling; x86 version kept with + slight name changes to indicate that this is code is suitable for + other ports as well. Took out HAVE_GAS while I was in configure. +9A0811 Fix the line doubling slowdown. +9A0809 Software autofire. + Remove one line from Makefile.in in the hope it will fix the build + errors people are seeing. +9A0807 Tighten up some minor aspects of spcflags handling. + Fix an AGA bug in customreset. + Set default CPU speed to approximate a A500. Tweak gencpu so that the + timings for this are more accurate. + Ignore T0 bit if not emulating a 68020. + Add an option to set the number of emulated floppy drives. + Improve the mfmcode function a bit. Faster and more accurate. + More SCSI patches from Patrick. + Add gui_data structure from WinUAE. Turn on gui leds again. +9A0725 Fix incorrect define of m68k_run for non-x86 systems (could have + sworn I already fixed that). +9A0723 Some SCSI patches by Patrick Ohly (which I got two months ago... oops) + Filesystem fixes from Brian. + AGA updates from Toni. +9A0627 Apydia loader fixes from Toni. +9A0611 Fix bug in filesys.c causing in-use ainos to get discarded. Thanks + to Brian for the analysis. +9A0608 Added some disk.c changes from Toni and a crude hack of my own to + speed up disk accesses done by the Kickstart. +9A0330 Change blitter not to translate memory addresses to native. Had to + disable 32 bit blits. + Floppy code changes (Toni Wilen) + Delete GGI port. + Fix toggle_inhibit_frame (Brian). +9A0228 Some WARPUP fixes, and changes to accomodate broken Amiga gzip (Sam + Jordan). +9A0221 Tweak POTGO a bit. Seems to work with BC Kid now. +9A0220 Fix off-by-one errors in expansion.c (Toni Wilen). + Remove AGA checks in DDFSTRT/DDFSTOP (Toni Wilen). + Turn off/restrict some warning messages. +9A0209 Fix some problems where the blitter nasty flag wouldn't ever get reset. + cia.c: Set all parallel port related bits to 1 when reading. +9A0208 gencpu.c: Fix saved PC for division by zero exception (found by Sam + Jordan). +9A0131 update_copper: Mask until_hpos properly. + Delay values are masked to 3 bit in hires mode (Sam Jordan). +9A0102 Only delay horizontal copper wait if vertical position matches exactly. + Tweak vblank end position for sprites. + Calculate playfield borders more accurately for case where we have + sprites. +9A0101 Reintroduce ev_copper; use it sparingly for longer waits within a + single line (but _not_ to time reads). + Fix a dumb bug in yesterday's changes that screwed up scrolling. +991231 drawing.c: Cruftectomy. genp2c.c: Gone. X86.S: mostly gone. +991229 Always use NTSC vblank_lastline for sprite purposes. + Make sprite logic recognize vertical stop even if vertical start has + not been reached (found by Sam Jordan). + Prevent move2c/movec2 instructions from incrementing the PC if they + raise an illegal instruction exception (found by Toni Wilen). +991212 ncurses port compiles again. + Disable serial interrupts in custom.c; they break things. +991208 Add a missing decide_line call in update_copper_1. +991206 Fix copper emulation to use state machine figured out by Sam Jordan. +991205 Fix event table corruption in disksync_handler. +991113 gencpu.c: Fix a problem with BTST. +991110 fpp.c: Initial set of changes merging code from Lauri Pesonen. +991024 Add missing type in m68k_run1. + Divisions by zero clear overflow bit. +991023 Fix compilation problem for ! HAVE_STEREO_SUPPORT. +991022 Rewrite disk read code to transfer some DMA words every raster line. + fpp_movem_index1 and fpp_movem_index2 were reversed (Brian King, Sam + Jordan). + Fix accuracy of fpp fix insns (Sam Jordan). + Allow ports to define their own FP 68881/host conversion functions (Sam + Jordan). + Get rid of all the HAVE_GET_WORD_UNSWAPPED code. + Fix prefetch for insn opcodes (Sam Jordan). + Fix call insn syntax in X86.S. + Tidy up sound interpolation support. + Readd old command line arg parsing. + Change "long unsigned int" to "unsigned long" in a couple of places. + Use Sam's version of the filesys.c fixes (action_parent_fh, + action_change_mode). + Fix a place in disk.c where a mfm buffer was zeroed instead of 0xaa'ed + (Sam Jordan). +991006 CPU emulator fixes by Christian Bauer + tui.c compilation fixes by Christof Petig. + Fix operand in one insn in X86.S (Brian). + zfile.c fix for filenames with embedded spaces (Ingo Ruhnke). + linux-ppc configury patch (Holger Jakob). + s,static __inline__,STATIC_INLINE, (Sam Jordan). + cfgfile.c: Don't use "t" modifier in fopen (Sam Jordan). + serial.c: Don't close file if fd < 0 (Sam Jordan). + filesys.c: Open files on readonly devices with O_RDONLY (Sam Jordan). + Fix bugs in parent_fh and change_mode actions (Sam Jordan). + WARPUP patch (Sam Jordan). +990621 Initial version of Richard Hoffmann's sound interpolation patches. + Fix a crash in action_set_comment. + De-inline 68k trace code. +990508 Fix rdtsc asm statement to show that edx is clobbered. + gtkui.c: Add pause button (Patrick Ohly) + configure.in: Check for -mpreferred-stack-boundary compiler option + and use it if found to set a sane value. +990429 X11 patches by Patrick Ohly. + Filesystem code extended to keep a simple database with information + about each file that is not representable on the host FS, such as + script/pure bits or filenotes. +990417 Bits and pieces merged from the Win32 port; mostly options stuff. Got + rid of getopt; added chipset options to prefs structure. +990411 Patches by Patrick Ohly: SCSI support and timehack tool. +990410 Applied easy parts of Toni's latest AGA patches. +990315 Attempts to fix Picasso crashes in SVGAlib version. +990216 picasso96.c: Some optimizations. + cfgfile.c: Save target specific options. Allow simple/smart choice + for centering options. Delete mount_data junk, substitute immediately. + Whitespace handling fixes. Fix config_description typo. + m68k flag handling redone. +990212 Implement rotate instructions without loops. Some other m68k + optimizations. + Some configure.in fixes. +990122 gtkui.c: Fixes for gtk 1.1.13. +990113 genp2c.c: Don't include custom.h. +990109 Some fixes in cfgfile.c. Make svga.c compile again. +981229 Miscellaneous fixes in the new config file stuff. + In config files, allow 68ec020 as CPU type, and get rid of 24 bit + addressing option. + Make the get_disp_ea non-inline. + SGI sound support (Ari Heikkinen). + More updates by Brian: + audio.c: Handle frequency, too, when changing sound prefs. Do some + work in update_audio even if not generating sound output. + filesys.c: Request 50 buffers in our parampacket. + Assorted right control key fixes. + Some updates in od-win32 (not nearly done...) +981228 Config file and option handling redone; based on work by Brian. + Rename UAEn: devices to DHn: (Brian). + filesys.c: Implement ACTION_CHANGE_MODE, ACTION_PARENT_FH; add support + for variable hardfile blocksizes (Brian). + Some Picasso96 updates (Brian). +981226 Win32 fsusage.c fixes; zfile bug fix; gui_fps addition (Brian). +981221 Fix gtkui to work with newer versions of gtk. + Fix gencpu so that FPU emulation doesn't crash when unswapped word reads + are available. +981129 gencpu.c: Delete all the queue_amode stuff again. + xwin.c: Allow switching between DGA and window mode (Marcus Sundberg). + DGA seems broken in X 3.3.3, however :( +981011 Teach cpuopti.c about epilogues that increment esp by popping. +980930 Add BSD socket code (Mathias Ortmann). +980923 filesys.c: Implement FH_FROM_LOCK (Brian King) +980823 xwin.c: French keyboard patch (Raphaël Poss). +980810 Fix RDTSC detection (Raphaël Poss). + newcpu.c: Patch by Brian King to display what kind of CPU table is + built. +980716 More AGA patches: use new macro GET_PLANES to calculate number of + bitplanes from BPLCON0; adapt the copper code; add BPLPT[HL][78] and + BPLDAT[78] (Toni Wilen) +980715 Change sd-uss/sound.c not to keep a file open in setup_sound, to + support reconfiguration. +980713 Fix m68k detection in configure.in. Clear execbase after allocating + chipmem (Holger Jakob) + od-dos update, tui.c patches (Gustavo Goedert) + Get rid of --enable-sound, always enable sound. + Make svga.c compilable. +980712 md-ppc-gcc patches (Holger Jakob) +980707 gtk ui: Better CPU speed selection. + Move initializations from add_filesys_unit to set_filesys_unit. +980706 AGA patches by Toni Wilen: Call calcdiw when changing fmode; fix + references to bplcon variables to go through dp_for_drawing; ifdef out + some code that's too hard to fix for now. + "Fix" the AGA color code. In pfield_linetoscr_aga, add lframe_end and + diw_end parameters and use them. Add some fill_line code for AGA. Make + sure no code touches acolors if [AGA_CHIPSET != 0] + New function finish_line_aga. +980705 drawing.c/custom.c: Get rid of line_changed, replace with a single + variable thisline_changed. Pass it to hsync_record_line_state and + evaluate it there. Get rid of BORDER_PREV and BORDER_NEXT states; + add LINE_BLACK/LINE_REMEMBERED_AS_BLACK to implement scanlines option. + Remove code in pfield_draw_line that checks line_changed. +980702 filesys.c: New function move_filesys_unit. + Win32 GUI fixes. +980701 gtk UI beautification and code cleanup (Michael Krause) + Beginning to make audio code run-time configurable (mostly by Michael + Krause) + Fix off-by-one errors in memory check handlers (Jake Hamby) + configure: Add AM_CYGWIN32, AM_EXEEXT and AM_MINGW32 and fix some Win32 + configuration problems. + genp2c: Fix symbol name braindamage. + md-i386-{gcc,watcom}.c: Don't do machdep_init when [_WIN32]. + Many Win32 compilation fixes. + filesys.c: Attempt to fix the mount code chaos. +980629 MOVEP bug fixes (Philippe Gerin) + Comment out code using readdir_r again. +980628 gencpu.c: Generate an end label only when it's needed. + configure.in: Check for windows.h, ddraw.h, sys/utime.h; check sizeof + __int64; check whether a small DirectX program compiles; check for + Watcom C; don't do GNOME_FILEUTILS_CHECKS when compiling on Win32 + without GNU C; use AC_EGREP_CPP in some places instead of compiling a + file by hand; check for GAS .p2align feature; check for USE_UNDERSCORE + with a small test program; add code to set up od-win32/md-i386-watcom + directories when appropriate. + genp2c.c: Use GAS .p2align feature; don't generate .type directive. + Rename md-*/memory.h to md-*/maccess.h. + More fixes in Win32 code. + Add wcc.sh and wrc.sh, two scripts to make it possible to use the + Watcom C compiler and the resource compiler in a Cygwin32 build + environment. +980626 Change zfile.c not to use fopen_del. +980614 Delete ihf_sem stuff. + picasso_refresh now nonstatic and called by check_picasso after a + notice_screen_contents_lost call. + More functions to access filesystem mount information. + More Win32 code. +980613 Use an AC_TRY_LINK block to check for libpthread. +980611 Rename lockscr/unlockscr to gfx_{lock,unlock}_picasso and add new + functions lockscr/unlockscr which are now called by drawing.c. + xwin.c: Clear picasso_invalid_lines in graphics_subinit and when + doing an XPutImage for a refresh. + New function reset_all_systems, which is a bit misnamed at the moment + because it only resets the filesystem. Called from m68k_go when a + reset is needed. + In filesys_prepare_reset, examine unit_pipe instead of self to + determine whether a unit has a thread that needs to be killed. Move + the reset_state and reset_sync_sem variable to UnitInfo so they are + available at all times. + Don't need to call finish_drawing_frame if we do a reset, it was + done a couple of lines earlier. + In uae_reset, do nothing if any reset or quit operations are in + progress. + Make DMACONR static. +980609 Add memory size fields in struct uae_prefs. New variables + allocated_xxxmem for every block of memory that holds the actual + amount currently allocated, copied from the preferences at allocation + time. + Create a new structure "uaedev_mount_info" to hold filesystem mount + information. Add a pointer to one of those in struct uae_options, + and copy it from currprefs to a filesystem private place when + starting the filesystem threads to a work area. + Terminate filesystem threads during a reset, and restart the whole + filesystem code afterwards so that prefs changes are noticed. +980608 If check_prefs_changed_gfx returns nonzero, or if we switch from/to + picasso mode, call notice_new_xcolors and notice_screen_contents_lost. + Delete the frame_do_semup crap. +980606 Create config.h link in configure, not in Makefile. +980604 xwin.c: No longer need picasso_max[wh]. Improve picasso invalid lines + code a bit more. Fix some dithering bugs. + gtkui.c (add_checkbox_widget, add_radio_widget): New helper functions. + Patches by Marcus Sundberg: + Make X11 picasso clut emulation mode work in DGA + gfxutil.c (setup_dither): Free redvals. +980602 Split out init_aspect_maps from reset_drawing. + Call check_prefs_changed_gfx from vsync_handle_redraw, and initialize + row and aspect maps if it returns nonzero. + Use an enum instead of integer values to communicate between + hsync_handler and hsync_record_line_state. + gtkui.c: Use gtk_window_set_title (Marcus Sundberg) + xwin.h: Add lockscr/unlockscr prototypes. +980601 Move check_prefs_changed_xxx into vsync_handle_redraw. + Make ersatz.c a little more crash-proof. +980531 New graphics specs 'a' and 'p'. Support them in the X11 version. +980530 sysdeps.h, posixemu.c: Change (char *) to (const char *) in the + arguments of some of the posixemu functions. + sysdeps.h: Delete getopt declaration. Include "getopt.h" in main.c. + aclocal.m4: add fsusage.c support from Gnome. + fsusage.[ch]: New files from fileutils, slightly modified to fit + into UAE and to add Win32 support. Adapt do_info filesys.c to use + it, and delete all the old cruft. + Some updates for the Win32 port. +980529 Patches for X11 version by Marcus Sundberg (Picasso invalid lines + optimization, XShm availability check, cleanup, etc.) +980528 Add field emergmem to struct vidbuf_description, and change + pfield_draw_line to use it. +980516 Patches by Samuel Devulder and Holger Jakob: update Amiga port, + add support for compiling cpuemu.c in seveal steps again, add + cheatsearch in the debugger. +980515 GGI patches (Christian Schmitt). + sd-mme: New directory (Marcus Sundberg). + Changes in the X11 version to support mixed DGA/normal binaries, + hotkeys, and mouse grabbing (Marcus Sundberg) + xwin.c: Copy a bit of code from Win32 port that constrains + lastmx/lastmy to real coordinates when ievent_alive. +980510 gencpu.c: Slightly better flag generation code. + picasso96.c (wgfx_flushline): Don't do anything if Picasso screen + is invisible. +980508 Don't disable GGI if we can't find svgalib. + newcpu.[ch], gencpu.c, md-i386-gcc/memory.h: Implement unswapped + word reads for opcodes. +980505 drawing.c: add missing #ifdef X86_ASSEMBLY. +980504 More BSD fixes from Krister. + xwin.c: Call XAllocColorCells for dithered modes. Don't set image_mem + in get_image, instead arrange for it to store the address in a pointer + chosen by the caller. + picasso96.h: Add a clut array to picasso_vidinfo. + picasso96.c (do_fillrect, do_blit): Use picasso_vidinfo.pixbytes + instead of picasso96_state.BytesPerPixel where appropriate. + (do_fillrect, do_blit, wgfx_do_flushline): Handle the case when the + Amiga-side buffer is a 256 color palette mode and the native buffer + is truecolor by looking up colors in the new picasso_vidinfo.clut. + xwin.c: Adapt to support emulating a palette display in truecolor. + Make tui.c compile. +980501 picasso96.c: Make sure there's an unlockscr for every lockscr call. + In SetColorArray, detect when no colors changed. + configure.in, aclocal.m4, Makefile.in: Use AM_PATH_GTK from gtk + distribution. + New field rgbformat in picasso_vidinfo. Set it in xwin.c and svga.c. + custom.c (mousehack_helper): Use Picasso screen offsets correctly. +980427 Call decide_line in DIWSTOP. Implement DIWHIGH register. +980426 filesys.c (get_nname): Don't allow Unix "." and ".." directories. + gencpu.c: Approximate the number of cycles per instruction. Make + generated functions return that number, and use it in newcpu.c in + the do_cycles call. + custom.c, drawing.c: init_hardware_for_drawing_frame must be + called from init_drawing_frame. + Move read_processor_time specific stuff to new file md-xxx/rpt.h. + md-i386-gcc/support.c: Try to detect whether the CPU has RDTSC. + newcpu.c: m68k_speed == 0 means approximate A500 speed; + m68k-speed == -1 means use frame rate hack when available. Some + changes to support this. +980425 custom.c: New copper code. Unfortunately not much faster than the + old one. + Get rid of some unused variables throughout. + filesys.c: Use readdir_r when available. + picasso96.c: In BlitPattern, correctly handle the pattern offsets. + missing.c: Get rid of getopt. Add GNU getopt instead. + In SPRxPTH, SPRxPTL, call decide_sprites instead of decide_line. +980421 custom.c: Add an extra argument, hpos, to plenty of functions, and + use it instead of calling current_hpos. +980420 BeOS update (Christian Bauer). + When enabling additional planes in post_decide_line, update + thisline_decision.bplcon0. + Tweak copper timings. +980419 Extend post_decide_line to handle cases where some planes are + enabled much later in the line than the others. + In pfield_doline_unaligned_h, don't increment dataptr. + Split custom.c, move drawing code to new file drawing.c. New header + file drawing.h for declarations of shared stuff. + osemu.h: Delete junk. +980418 gtkui.c: Don't crash if -G option is given. + audio.c, custom.c: Don't use the generic event handling mechanism + for audio emulation, the overhead is too high. update_audio: New + function, handles audio updates "on demand" or every hsync (Idea by + Petter Schau). +980417 Some cleanups in custom.c to make splitting it up easier. +980416 custom.c: Don't use bplhires in do_modulos. +980415 readdisk.c: Support FFS (Jim Cooper). + BSD patches by Krister Walfridsson. + configure.in, Makefile.in: More fixes for build != source directory. + Arrange to build p2c_x86.o when using md-i386-gcc. + sysdeps.h: Include limits.h. + Remove silly code that restricted possible version numbers. +980320 configure.in: Check for vprintf. + Make write_log a varargs function. Provide a write_log_standard + function that is used by most systems. + Refuse to compile with non-ANSI compilers. + gencpu.c: Rearrange some of the generated code to reduce register + pressure. + +Release 0.7.0 +980401 gengenblitter.c: Complete rewrite. Much smaller, much faster, much + better results. + Check for -lXi to support newer versions of gtk+. +980316 gencpu.c (read_counts): Two silly bugs fixed. + main.c (save_options): Don't write out 'a' if cpu_level < 2 + configure.in: Changes to try to be compatible with Solaris /bin/sh. +980315 New UAE-Control version from Tauno & Cloanto. + Make configure set UNALIGNED_PROFITABLE for x86. + Get rid of "-o", add save command to tui.c and gtkui.c. + Fix some bugs in save_options. +980314 Many improvements in the gtk UI. Made CPU type changeable at run-time. + Make DGA && ! VIDMODE configuration compile. Kludge around the fact + that DGA misses colormap changes. Call XWarpPointer to try to avoid + the click-moves-framebuffer bug. + Make sure p2c.[ch] don't get deleted. +980313 Move all CPU_LEVEL handling from build68k.c to gencpu.c. In gencpu.c, + ignore all parameters and don't write to standard output, instead + hardcode all filenames and generate them all at once. Arrange to + generate code for all CPU emulator variants and to select them at + run-time. + Get rid of copper cheat mode, re-use "-C" option for CPU selection. +980312 In COPxLCL, mask out LSB (Axel Wefers). + newcpu.h: Always compile in both get_disp_ea versions with a different + name. Delete USE_POINTER option; always use pointer. Don't fill + prefetch in m68k_setpc, do it in callers where necessary. Compile in + two versions of get_ixxxx, with different names for prefetch and + non-prefetch. Change gencpu.c to use these appropriately. + Don't generate 16 small CPU emulation source files. With a decent + machine it's no problem to compile all the code in one file. Also turn + off -O3 for gcc, -O2 does fine since all the necessary __inline__s are + there, and the compiler takes less memory that way. + Don't include , duplicate some definitions from + there instead. Makes configure.in simpler, too. + Fix Makefile.in/configure.in and a couple of other places to support + building in a separate directory (sort of; not complete yet). + Remove p2c.[ch] and genp2c when doing make clean. + Delete code to support Tcl/Tk and XForms GUIs. +971215 More Amiga and BeOS patches from Sam and Christian. +971205 Move some more code from custom.c to audio.c. Optimize sample handlers + a bit. + Make RDTSC asm statement volatile. +971203 Latest GGI patch from Christian Schmitt. + Fix configure to enable zfile decompression for GGI target. + Fix mouse button mapping in ggi.c. +971128 Fix double definition of gfxvidinfo in custom.c. + Fix impossible register constraints in asm statement in newcpu.c + Sprinkle casts and rename some variables to make C++ compilers happy. + Add BeOS patches by Christian Bauer. +971125 More Amiga patches from Sam. +971120 Get rid of DONT_WANT_SOUND. +971119 Support USS sound not only on Linux (Douglas Carmichael) + Update Win32 and DOS ports. + Add Polish documentation by Tomasz Sienicki. +971116 Add a missing return statement in filesys.c (Brian King) +971112 Fix silly error in xwin.c. +971108 Add some more decompressors to zfile.c. Set FLOPPY_SPEED to 4. +971107 Make ggi.c compile again, fix a few bugs and add Picasso support. +971106 Fill prefetch queue after executing an encrypted ROM illegal insn. +971105 Initialize the sprites during customreset now that init_hardware_frame + no longer does it. +971104 Implement action_set_file_size as required by the specs. + SetPanning/picasso96_state: XOffset and YOffset are signed. +971103 xwin.c: Offer 640x512 and 320x256 resolutions in windowed Picasso mode. + Add a few more memory banks in memory.c (A3000 stuff - nonfunctional) + Don't map kickmem at address 0 if using replacement Kickstart. + Must fill prefetch buffer when calling calltraps or ersatz functions. + Write out hardfile parameters in write_filesys_config(). + xwin.c: Support 15 bit displays. +971101 Add latest patches by Samuel Devulder. Improve hardfile support in + tui.c. +971031 Offer "-U" only ifdef PICASSO96. + Add support for mounting multiple hardfiles in any order. + Don't reset sprite state in init_hardware_frame. Instead, allow SPRxPT + functions to set the state to SPR_restart in the vertical blanking + area. +971030 Fix 8MB Chip RAM. + filesys_dev_storeinfo: New function and calltrap. Use it to store + per-unit data (which now includes geometry information) in the + parampacket. Modify filesys.asm to use it instead of trying to find + the values by itself. +971028 "AMIROMTYPE1" has 11 characters, not 0. +971027 Implement encrypted ROM features. Comment out non-working InvertRect + optimization. +971026 Fix some problems in PlanarToDirect and CopyColorIndexMappingA2U. +971022 Remove fixed paths in genp2c.c (oops...) + Some more XF86VidMode hacks. + Include target.h in sysdeps.h. Define PICASSO96_SUPPORTED for X11, + SVGAlib and Win32. Don't compile in Picasso support if this macro isn't + defined. +971021 xwin.c: Picasso code wants to use bit_unit, not bitdepth. Also correct + byteorder (it's B8G8R8A8 from the Amiga's point of view). + Fix Picasso InvertRect function. + Half-hearted attempt at 24 bit support in the X11 version, with some + awful code in custom.c. + Make the X11/VidMode version try to resize the screen for Picasso mode + switches. +971020 Delete option -5, make -4 take an argument. Disable z3fastmem and + Picasso emulation when using a 24 bit address space. +971019 record_color_change: No need to remember a color table if the current + line hasn't been decided yet. + Add XF86VidMode extension support. + Integrate Stefan's Zorro III support, add support for up to 64MB fast. + xwin.c: Refresh the whole Picasso screen if there are Expose events. + Fix module length calculation for *Tracker modules. + Use a 32 bit address space by default if CPU_LEVEL > 1. New option -5. +971018 Apparently it's not possible to turn on bitplane DMA in the middle of + the line, so call post_decide_line only when the number of planes is + modified, not in DMACON. + genp2c.c: New file, generates planar to chunky conversion routines. + Remove those which are now generated from custom.c. +971017 Make row_map an array, not a pointer to one. + Audio periods may not be 0, so initialize them to 65535 in customreset. + Implement "S" command in the debugger. Add a bunch of module detection + routines. +971015 od-linux/sound.c: If FRAME_RATE_HACK, reduce vsynctime a bit to give + the sound emulation more room to breathe. +971013 Merge with Brian's latest Picasso code. +971012 Fix a few more portability problems that showed up when compiling with + Watcom C. Also remove superfluous includes from some files. + Add md-i386-watcom directory. Update od-win32 with latest code. + Remove fast_memcmp routine. + Include penguin.h before xwin.h everywhere. Declare a few semaphores + for multithreaded setups in xwin.h. Move inhibit_frame stuff to xwin.h. +971011 gencpu.c: Don't generate labels without following statement. Don't + directly generate assembly statements if X86_ASSEMBLY, instead generate + code that uses macros defined in machdep/m68k.h. +971008 xwin.c, svga.c, custom.c, uaelib.c: Add picasso96 code. Add Picasso + selection to configure. + Move common variables (mouse stuff, gfxvidinfo, xcolors) from graphics + files to custom.c. + memory.c: custom chip area isn't supposed to be mapped at 0x200000. Use + dummy bank for now. + od-linux/joystick.c: Open different devices for different joysticks. + From Win32 sources: set vsyncmintime in m68k_go. +971005 genblitter.c: blitzero is initialized to 1, not to 0, so we need to + clear, not set it. +970928 Add another user interface for X11 using libgtk+. +970925 audio.c: For stereo sound, double all lookup table values. + Added (preliminary) win32.c. +970923 DISK_check_change: Should call gui_filename when ejecting. +970922 Fix od-linux/joystick.c compilation problem with recent kernels. + Merge results of the UAE meeting: + New serial code (Stefan Reinauer) + Expansion "test card" support (Stefan Reinauer) + New GGI code (Christian Schmitt), also configure/Makefile changes + to make it compile. + Fix 68020/FPU code. + Call do_mousehack before every read of the mouse position to get more + accurate values. + Add sd-file directory; add support for it in configure. + Add stereo support in audio.c, od-linux/sound.[ch], and main.c. + Fix copper problem: call decide_line in calc_copcomp_true; and if the + copper wouldn't wait normally (position reached), but the hardware is + fetching data in Hires 4 plane mode, delay until ddf stop. + t-ascii.h: Asciiart target understands "-x" parameter. +970823 gencpu.c [X86_ASSEMBLY]: Turn input constraints for scratch into output + constraints. +970626 Fix 24 bit address space logic (Mathias Ortmann). + Raise exception 3 for Bcc.L insns if CPU_LEVEL < 1. Reported by Stefan + Ropke. + Remove USER_PROGRAMS_BEHAVE for normal emulator. Remove hacks to + generate expanded CPU functions for specific opcodes. Replace with code + that reads an instruction count file and sorts gencpu output by + frequency of the called opcodes. +970625 Calltraps (at least those with call_m68k calls in them) were broken by + the CPU emulator changes. Now use Axxx opcodes as calltraps. + Include pOS port by Samuel Devulder. +970624 Solaris sound patches by Manfred Thole. + gencpu.c: The generated code shouldn't just check for odd addresses, + it should also call Exception... +970622 gencpu.c: don't emit return statements; make code jump to a function + end label instead. Make genamode() check for odd addresses, also reduce + code duplication. Interpret getv parameter so that data is fetched if + getv == 1, and the address is checked if getv != 0. Remove exception 3 + checks from get_long() etc. Get rid of buserr. + cpuopti.c: Make a few more checks whether optimization is possible. Add + code to undo GCC's epilogue scheduling. + newcpu.c: Split all the specialflag handling into new function. + Implement -w option as in Win32 port. tui.c: add it to misc menu. +907621 Fix yesterday's CPU emulator changes. Make cpuopti aware of functions + with two RET insns. Make sure that NO_EXCEPTION_3 and + NO_PREFETCH_BUFFER are on when emulating a 68020. + Add usage information for src/dst operands to table68k. + Implement CIA A OVL bit properly. +970620 New NeXTwin.m from Ian. Fix a number of prefetch bugs in gencpu.c. + newcpu.h: m68k_incpc(), get_i{byte,word,long}: New function/macros. + Also add oldpc parameter to m68k_do_[bj]sr(). gencpu.c: use all this. + CPU functions now don't use nextiword; they keep the PC constant and + increment it with the right value at the end. + If chipmem_size > 2MB, disable fastmem. + In configure.in and od-linux/joystick.c, use ljoystick.h as name for + the replacement file for a broken + configure.in: Check for post-gcc-2.7.2 option "-mno-schedule-prologue" + and use it for compiling the optimized CPU files if it exists. +970618 Rename hardfile.device to uaehf.device to avoid name clashes. Suggested + by George Nicolaidis. + Reimplement CPU prefetch by making gencpu aware of it so it generates + code that fetches data from the right places automatically. Also reduce + prefetch length to 4 bytes. +970612 memory.h: Include osdep/memory.h. missing.c: implement xmalloc(). + Throughout: use xmalloc instead of malloc. + Apply changes by Sam Devulder. +970608 Fix ncurses.c so that it links. Fix configure so that it can be enabled + Get rid of spixstate by implementing a new sprite drawing method. +970607 do_copper_cheat(): New function, Implement inaccurate, line-based + copper as an option (-C). calc_copcomp_true(): Fix possible hr 4 plane + bug (split the wait into several pieces in this mode). + Allow 0 bytes for fast and bogomem (to override .uaerc) +970606 Fix some bugs in transdisk, and make it compile with SAS C (Joanne Dow) + Stupid compilation fixes: Get rid of "==" in shell scripts, check that + B300 and friends are defined in serial.c before using them. + Implement blitter prefetch. Fix silly typo in main.c that prevented + immediate blits. + init_ham_decoding(): new function, handles case where the first few + pixels of a HAM display are outside the window. +970605 disk.c: Get rid of need_read. Save cylinder/track number for the data + in the MFM buffer for each drive. Force rereads on disk insert and + write operations. In drive_fill_bigbuf(), do nothing if saved data + matches current. Fix disk change logic: give the program time to read + the change bit a couple of times before inserting a new disk. + custom.c: Fix really subtle bug: when deciding a line as border, + plfstrt/plflinelen were not set up properly, which could confuse + post_decide_line(), and eventually there would be lines decided as + playfield with plfstrt == 0, plflinelen == -32 ==> Bang. A related + bug was that setting DDFSTRT to 0 would result in both plfstrt and + plfstop having value 0. + gfxutil.c: Fix bug that could cause color values to go out of bounds. + xwin.c, svga.c: When dithering, color values were not doubled properly. +970604 filesys.c: when deleting an a_ino, remove it from hash table (Mathias + Ortmann). In do_find(), if creating a file failed and we didn't have + an a_ino before, call delete_aino on the one we created. + More configure changes: Add $X_PRE_LIBS and $X_EXTRA_LIBS in some + places. See if MIT-SHM support for X will compile and link. Always + compile it in if it will. Turn DONT_WANT_SHM and LOW_BANDWIDTH into + run-time options (-T, -L). Use single line buffer when dithering and + in low-bandwidth mode (but in all cases there's a full buffer for the + X image). + memory.c: Don't map in custom regs at 0x200000 if chipmem_size > 2MB. + Split up init_sound(): new function setup_sound(). Make "-B" accept + minimum and maximum values as in Gustavo's latest patch. Add code to + tui.c to support changing buffer size, number of bits and frequency. +970603 If using compiler, define NO_EXCEPTION_3 and NO_PREFETCH_BUFFER. + (bugreport by Raphael Poss). + GGI support from Christian Schmitt/Stefan Reinauer. More serial patches + from Stefan. 3 button joystick patch from Mathias. + Add linemem field to gfxvidinfo, for systems that don't want to keep + a buffer of the full screen. Adjust custom.c to use it instead of + bufmem if it's not NULL (mostly by Mathias). svga.c, xwin.c: Use single + line buffer in some cases. xwin.c: If USE_DGA_EXTENSION, undef + LOW_BANDWIDTH. Move test of DONT_WANT_SHM after inclusion of config.h + Make configure.in a bit more structured. + Move colormodes array to main.c. +970602 gfxlib.c: Start implementing layers workalike. + md-i386-gcc/support.c: Don't mix sleep and alarm. (Petter Schau) +970601 Remove may_run_compiled. Print error and abort if m68k_go is called + twice. + Fix yesterdays bugfix in svga.c. + Change FRAME_RATE_HACK so it tries to average the times a bit. + Re-implement a call_m68k function in autoconf.c. The new version + works by doing some heavy setjmp/longjmp magic and switching stacks. + With this, it's even possible to call things that Wait(), so use + the new functionality in gfxlib.c to call LockLayer() in WritePixel(). +970531 Turn some inline functions in memory.h into macros. Get rid of + get_along and get_aword. Implement CIA A OVL bit. + main.c: Add missing close_sound() call. + Remove INTEL_FLAG_OPT, use X86_ASSEMBLY for everything. + tui.c/svgancui.c: Implement scrollable menus. Add code to select + video mode from a given list. Add "graphics_setup" call to graphics + specific files. Use it in svga.c to build a video mode menu. + Fix bug in svga.c that would crash non-linear modes. + disk.c needs to include gensound.h and sounddep/sound.h. + Fix bug in fuzzy_memset. In pfield_init_linetoscr, always adjust ddf + values if lores hack is being used. +970530 Apply some patches by Samuel Devulder. +970529 filesys.c: In "Houston, we have a problem" case, do not only delete + the oldest ExKey, but also use it instead of random memory for the + new one. Attempt to reduce the number of lost exkeys by allocating + them in action_examine_next instead of action_examine_object. + Initialize the "uniq" field of unit->rootnode. + Attempt to speed up sprite drawing loop. + Implement sprite<->sprite collisions. + Get rid of -Wtraditional. +970524 New config option NO_PREFETCH_BUFFER. Emulate 16 byte prefetch if + unset. + For exception 3, the stack frame seems to be: + (saved SR).w, (faulting address).l, (faulting instruction).w, 0.w, + (pc at fault time).l. Make everything that could generate this fault + handle it properly. That got Cybernoid II working! +970523 Makefile.in: Make sure $(DEBUGFLAGS) is used for CPU emulation files. + memory.c: Don't map chipmem at 0x200000, use custom chip bank for now. +970507 configure.in: Mutate ac_cv_c_inline=no to ac_cv_c_inline= + Check for tcgetattr, , cfmakeraw, + Check for sem_init in -lposix4 (Marc Zimmermann) + serial.c, cia.c, cia.h, serial.c: changes (Stefan Reinauer) + Make disk gap 360 (Michael Krause) +970404 In configure, check for features.h before including it in test program. +970401 New option -4. Bugreport by Mirko Viviani. +970324 Petter Schau says the exception frame for Bus Error and Address Error + is 14 bytes, not 6, on the 68000. Change Exception() accordingly. + It's *** OUCH *** day! Make hardfile beginio return the correct value. + Also load execbase before calling ReplyMsg(). + It's *** OUCH *** day again! The filesystem asm code was an odd number + of bytes, leaving the hardfile code unaligned. +970318 custom.c: Rename spron to sprst, and use new variable spron to indicate + for which sprites the sprite pointer registers have been written. Don't + do sprite DMA if spron==0. (The problem was that some programs write + SPRxCTL and then SPRxPT, which used to set the sprite state to + SPR_restart, but it must be SPR_waiting_start.) + Turn a few m68k_reset()s into uae_reset()s. + New variable nr_joysticks. Delete joystickpresent. New arg "nr" for + getjoystate() and read_joystick(). + New extra keycode AK_RCTRL. Handle multiple joysticks & different key + replacements in keybuf.c/custom.c. Make tui.c handle all the settings. +970310 od-linux/joystick.c now compiles again without the joystick header. + Fix some problems in configure; also check whether [n]curses.h defines + attr_t. Keep count of warnings and errors during configuration and + print a hopefully helpful message at the end. + disk.c sanitized by Mathias Ortmann. + Change the replacement getopt around a bit. + execlib.c, timerdev.c: Files removed. This will never be compatible + enough. Also remove related code (several SPCFLAGs, etc.) + Make main.c a bit nicer by introducing additional defines for the t-* + files. Also canonicalize the .uaerc file on all systems, eliminating + lines starting with '#' in the process. + Remove code in autoconf.c to set up 8MB chip; move it to filesys.asm. + Try doing the copper end-of-line hack in copper_memory_cycles(). + Disable the copper speedup hack. +970309 Add a small, dumb hash table to struct _unit to speed up repeated + aino lookups. Delete aino in action_delete_object(). Move children in + action_rename_object(). In action_examine_next(), call new function + lookup_child_aino_for_exnext() which behaves more or less like + lookup_child_aino(), except it uses new function get_aname() to + translate filenames. + More portability fixes. New links set up in configure: sounddep, + target.h. All machine-dependent and joystick code removed + from os.c, renamed to audio.c. os.h renamed to audio.h, joystick stuff + moved to joystick.h. New directory targets/. + missing.c: New file. +970308 Rewrite filesystem. Now it keeps one unique "a_inode" structure for + every object in the filesystem. This contains Amiga name, native + name, Amiga permissions, lock counts and several links for building + a tree structure. Keys are now made only for files which need a fd + and a file position. + Treat invalid locking modes als shared. + Comment out the code using readdir_r because that function appears + to be broken in glibc-2.0.1. + Clear RES2 in all packets before handling them. + Give mousehack the same task priority as the input.device. + Fix (?) some silly bugs in disk.c. +970307 Include some Acorn port code from Peter Teichmann. + Yet Another Serial Diff from Stefan. +970306 filesys.c: Don't just crash if lookup_key() has no success. + action_find_write() is supposed to create the file if it does not + exist. +970305 More DOS patches. Make the Makefile parallel-make safe. + svgancui.c: Do cyclic search if character is typed in file selector. + my_alphasort(): New function (work around glibc bug) + custom.c: Fix error in yesterdays change. + filesys.h: New file. +970304 New serial patch from Stefan and Christian. + Remove the assembler code to generate inputevents. Instead, add a new + Amiga C program ("mousehack") which does the trick. New function + mousehack_helper() in custom.c, activated by calltrap 0xF0FF70. + Mouse default is now always normal_mouse, not follow_mouse. + Do disk change checks only every 1/2 second. disk.c: Reverse + nodskchange to dskchange, and make sure there has been a step with the + drive empty before calling drive_insert() from DISK_check_change() (but + this _still_ doesn't work. Arrrghh). +970303 filesys.c: Initialize _all_ of struct _unit in startup_handler(). + Remove message_lock and friends and use new variables cmds_sent, + cmds_acked and cmds_completed to determine when to send dummy messages. + Changed examinekey handling so that "dir all" on a large tree doesn't + crash anymore (it used to reuse the top-level exkeys which were still + in use after a wraparound). Don't allocate examinekeys if we're + examining files. + Check for readdir_r in configure. Use a wrapper my_readdir() around + either readdir or readdir_r. + Call filesys_reset() also from filesys_diagentry(). + Get rid of most of uaelib.c. Now there isn't a library, just a calltrap + at 0xF0FF60. Changed uae_pragmas.h accordingly and recompiled uaectrl. + Added a bunch of "volatile"s in various places in filesys.c and + penguin.h. + Make the filesystem reset-safe in the threaded case (paranoia changes). + Check disk changes only every 1/10 second in vsync_handler(). + Add assembler code to generate InputEvents once every vblank to + filesys.asm. (Doesn't work yet.) +970302 filesys.c: Get rid of DosPacket type, pass pointers into Amiga memory + instead. Use GET_PCK_* and PUT_PCK_* macros to access fields. + Start making filesystem code thread safe & multithreaded. Move static + variables from some functions into struct _unit, likewise the key + and exkey variables. Add code to filesys.asm to queue commands which + did not complete and to reply to them later. Do multithreading if + compiled with SUPPORT_THREADS. See source for details. + Change hardfile and uaelib code not to call 68k routines. Make emulator + traps more efficient (no need to save regs, don't need SPCFLAG_EMULTRAP + anymore). +970301 Fixed ncurses.c so it works with currprefs. + filesys_reset(): New function, called from customreset(). + Changed source layout. Break up machdep into machdep, osdep and + threaddep. + penguin.h: Now supports arbitrary types in pipes. + Changed filesys.c so that no 68k code is called from native C code. + filesys.asm, filesys.sh: New files. filesys.asm contains some + startup code and the main loop for the filesystem. Several locks + are allocated by the assembler code for use by the C code. + DOS_AllocMem(), DOS_FreeMem(), make_dev(), build_parmpacket(), + filesys_init(): Functions removed. +970228 ncurses.c: Fix problem in b/w modes. + finish_drawing_frame(): Don't need to draw lines in multipenguin mode. + Move all options into new struct uae_prefs. New variables currprefs, + changed_prefs. + svgancui.c, tui_filereq(): If user presses a key, start search at + current position, not at the beginning. + DISK_check_change(): new function, compares currprefs with + changed_prefs and handles diskchanges if they differ. Called from + vsync_handler(). + DISK_validate_filename(): new function, checks whether a file exists. + Modify svga.c and tui.c so that F11 now brings up a limited UI. +970227 Reimplement Mathias Ortmann's frame rate hack: New option HAVE_RDTSC + in config.h. New typedef frame_time_t. New variables vsynctime and + vsyncmintime. New function machdep_init() in md-*/support.c which + sets up vsynctime in the md-i386-gcc and md-i386-linux cases. Use + all of those in events.h, do_cycles() to determine whether to spend + more time on the CPU emulation. + Add missing "int i;" to xwin.c, init_colors(). + Unroll some loops in sample_*handler(). + Improve quitting/resetting behaviour: Move quit_program from GUI + specific files to main.c. New functions uae_reset() and uae_quit(), + quit_program is now handled in vsync_handler() and m68k_go(). + New variable sample_evtime, used in customreset() and set up in + init_sound(). +970226 Solaris sound update from Manfred Thole. + keybuf.c: Decided that it doesn't need locking after all. + Add a bunch of Gustavo's latest diffs. (I hate CR characters!) + Move gfxvidinfo from all the target-specific files to custom.c + More Win32 stuff: New function notice_new_xcolors(). +970225 configure.in: In shell string comparisons, always put spaces around = + Add warning about standard SVGAlib being incompatible with + LinuxThreads. + os.c, SOLARIS_SOUND: Remove reference to obsolete variable smplcnt. + Two new variables sound8_base and sound16_base. + sysdeps.h: Split off some stuff into md-amiga/amiga-kludges.h. Also + make the main types now uae_u32 and variants instead of ULONG, etc. + Convert some files to use the new types. + cia.c: use int/long instead of ULONG/UWORD/etc for most static vars. + xdebug.c: Some cleanup. + md-i386-linux/penguin.h: Fix bug. Add "chunks" parameter to + init_comm_pipe. Use it to decide in write routine whether to signal + the other thread if it's waiting. Add no_buffer parameter to + write_comm_pipe_int. + Start adding Mathias Ortmann's Win32 patches. + md-i386-win32: New directory + include/sysconfig.h.win32: New file + custom.c: is_lastline: new variable, set in hsync_handler(). + sysdeps.h: Make it possible for system specific code to say that + POSIX/ANSI stdio/malloc functions aren't present and are defined + by a system-specific file instead. In filesys.c, don't reference + errno if DONT_HAVE_POSIX is defined. + readcpu.h: Kludge around the fact that Messysoft C apparently doesn't + handle enums properly. + newcpu.c/sysdeps.h: Preprocessor magic for 64 bit constants to get + around a problem with MS C. + md-*/penguin.h: Add dummy definitions for semaphores. + keybuf.c: Use semaphores to synchronize access. + os.c, win32 sound stuff: add memcpy avoidance code. +970221 X86.S: Don't use .type ifdef USE_UNDERSCORE. + Move thread support configuration to configure from config.h. Change + pipe implementation to use POSIX semaphore functions. +970217 From Samuel Devulder: Fix off-by-one error in LINE_TO_SCR, EHB case. +970215 customreset(): Initialize current_colors.color_regs to invalid values + [reported by Samuel Devulder]. config.h: Uncomment ECS_DENISE [reported + by Mathias Ortmann]. Add ami-win.c and custom.c patch from Samuel + Devulder. +970213 disk.c: Set FLOPPY_SPEED to 3 + custom.c: SPRxCTL_1(): if spron was SPR_restart set it to + SPR_waiting_start. do_sprites(): don't do that. + SPRxPT{H,L}: Call decide_line(). +970210 custom.c, X86.S: Do LORES_HACK for dual playfield screens. Plug memory + leak in custom_reset(). Fix pfield_draw_line() not to do so many + multiplications. Make line_changed a char array. In remember_ctable(), + remember comparison results also if negative. + In 8 and 16 bit graphics modes, use the high parts of the color values + to duplicate the actual values. This saves a lot of code in the + hdoubling routines. Add a special fill_line in the X86_ASSEMBLY case. + Check for glibc-2 and libpthread in configure. + options.h: In fuzzy_memset(), do rounding slightly more conservative. + Add tons of new keycodes to svga.c + In record_color_change(), also check if vertically outside DIW. + New variable hdiwstate, to represent the horizontal DIW state machine + (thanks Petter!) Handled in reset_decisions(), finish_decisions() and + decide_diw(). +970209 Change ncurses.c not to do so many multiplications/divisions. Add bold + character support. Add color support. Make configure recognize + --without-svgalib and enable ncurses.c in that case. +970208 X86.S, custom.c: Do LORES_HACK for EHB screens also. + New function write_log(); convert some fprintf(stderr, ...) calls. +970207 Argh, Linux/i386/ELF check in configure got broken by latest sh-utils. + In disk.c, drive_reset(), clear nodskchange flag. +970206 Sprite fix from Mathias Ortmann: _really_ get rid of SPR_vtop, and + replace all uses by SPR_stop. 970204 Disk change fix from Mathias Ortmann. 970203 New file ncurses.c, from Samuel Devulder. Disabled Exec stuff completely. Now it isn't even compiled in anymore.