|
|
1.1 root 1:
2: Hatari
3: --------
4: Release Notes
5:
1.1.1.22 root 6:
1.1.1.23! root 7: Version 2.2.0 (2019-01-31)
! 8: ---------------------------
! 9:
! 10: Note:
! 11: - Compiling with SDL 1.2 is considered as deprecated now.
! 12: The support for SDL 1.2 will be dropped in a future release.
! 13: - Hatari now requires a C compiler compatible with c99/gnu99
! 14:
! 15: Emulation:
! 16: - CPU:
! 17: - CPU core updated to WinUAE 4.1.0
! 18: - Fix 68030 MMU PTEST/FSAVE/FRESTORE
! 19: - Improve 68030 bus error handling and retrying faulty instruction
! 20: - Fix: only enable cache emulation when relevant
! 21: - Improve softfloat FPU emulation
! 22: - FPU emulation mode (softfloat or not) can be changed on the fly
! 23: - Ensure HW registers region is not cachable for 68030 without MMU
! 24: when write allocate mode is enabled
! 25: - DSP:
! 26: - Fix DSP ROM tables (sin, mulaw & a-law)
! 27: - Some waitstate cycles were not correctly counted when accessing
! 28: DSP IO regs in CE mode
! 29: - Blitter:
! 30: - Fix: a rare case in cycle exact mode when bus is shared between CPU
! 31: and blitter : the last word of a transfer could be wrong if bus was
! 32: owned by CPU just before processing this last word and a read-modify-write
! 33: is made
! 34: - State of current blitter operation was sometimes not correctly restored
! 35: when CPU temporarily stopped the blitter and resumed it later
! 36: - DSP emulation was not updated in parallel when blitter was running
! 37: - Video:
! 38: - Handle VBlank signal and mask the 2 last lines when bottom border
! 39: is removed
! 40: - Hard disks:
! 41: - Experimental support for the NCR5380 SCSI chip in Falcon and TT mode
! 42: - Serial ports:
! 43: - Very experimental support for the SCC chip of the Mega-STE, TT and Falcon
! 44: (only channel B for now, and output only, use the "--scc-b-out" command
! 45: line switch)
! 46: - Misc:
! 47: - Correctly emulate bus error handling for STE lightpen registers
! 48: - Experimental support for TOS 2.07 (the "Sparrow" TOS)
! 49:
! 50: Emulator:
! 51: - Misc:
! 52: - "patch TOS timer-D" speedup option is now disabled by default
! 53: - Allow up to 512MB of TT-RAM (increased from 256 MB)
! 54: - Additional ROM patches applied to TOS v4.x for 040 & 060
! 55: - Improved info and warning output for Hatari constraints and issues
! 56: - Memory snapshot save/restore:
! 57: - Fix: Include GEMDOS HD file handles so apps with open files work
! 58: - Improve memory snapshot save/restore reliability
! 59: (e.g. for pending interrupts)
! 60: - Save/restore TT RAM content into memory snapshots
! 61: - SDL GUI:
! 62: - Show warning dialog when cartridge file is disabled due to conflict
! 63: with other features
! 64: - Fix halt dialog crash on double bus error before SDL init
! 65: - Add FPU softfloat option
! 66: - Move joystick info to second statusbar line
! 67: - Few additional special keys can be remapped
! 68: - Fix: broken CPU dialog with old UAE CPU core
! 69: - Display 'SF' in status bar if FPU emulation is using softfloat library
! 70: - Display 'CE' or 'PF' in status if using 'cycle exact' or 'prefetch' modes
! 71: - It is now possible to configure more than one ACSI hard disk images
! 72: - MacOS / GUI:
! 73: - Minor GUI updates for v2.1 changes
! 74: - Fix: "reset" and "don't reset" UI buttons inverted
! 75: - Update MIDI panel for French version
! 76: - Save screenshots in user defined location or ~/Desktop
! 77: - Windows:
! 78: - Fix: buffer overflow in relative Hatari datapath handling
! 79: - Disk handling:
! 80: - IDE byte-swap option added to config file & GUI
! 81: - Fix: NF SCSI driver didn't invalidate cache for changed memory area
! 82: - Fix: *.INF file in disk image being overridden even when neither
! 83: VDI mode or autostart program wasn't specified (v2.1 regression)
! 84: - Fix: GEMDOS HD Fwrite() can be done from ROM area (for ROM saving)
! 85: - Media handling:
! 86: - Fix: AVI recording with PNG codec could be wrongly limited to 4GB
! 87: with some OSes
! 88: - Screen handling:
! 89: - Fix: TOS <= v2.x crashes when mouse is moved in 16x16 area at
! 90: the bottom right corner in VDI mode (Hatari v1.0 regression)
! 91: - Fix: "--tos-res high" setting
! 92: - Debugging:
! 93: - Fix: DSP/CPU profile "addresses" commands output line count when
! 94: paging. Tell also when it wraps to start
! 95: - Each log message has a log level prefix
! 96: - (Almost) all Hatari output goes now through logging framework so
! 97: that Hatari verbosity can be controlled
! 98: - Output at default log level is reduced significantly
! 99: - Add support for ISP & USP and 020+ special registers like VBR
! 100: - Add "OsCallParam" variable which gives first (word sized) parameter
! 101: for OS calls, for use with OS call "*Opcode" breakpoints
! 102: - Add virtual V0..V7 registers to "register" command for calculations
! 103: - "memdump" and "memwrite" commands output & input can now be also
! 104: word or long sized instead of bytes
! 105: - Show arguments in DSP XBios call traces
! 106: - FPU and PMMU opcodes are now also disassembled in 68040/060 mode
! 107: - Options:
! 108: - Fix: "--memsize 0" legacy option
! 109: - Disable "--timer-d" option by default. Increases CPU usage
! 110: (noticeably for ST/e emulation), but some rare (badly written)
! 111: programs need it for correct color raster & sample handling
! 112: - The "--bios-intercept" option requires now a boolean parameter
! 113: to determine whether the option should be enabled or disabled
! 114: - Add "--cmd-fifo" option to control Hatari at run-time just by
! 115: echoing commands to a FIFO file (created by Hatari)
! 116: - Add "--tos none" option to run test programs without any TOS.
! 117: Real Atari programs cannot be run with this, as it doesn't
! 118: implement the necessary Atari OS calls
! 119: - Halt dialog is skipped if --run-vbls is used (for automation)
! 120: - Support hex values for --disasm, increase --slowdown max value to 30
! 121:
! 122: Building:
! 123: - Fix: Large File Support detection (64 bits off_t)
! 124: - Fix: new compile warnings with GCC v8 (+ code cleanup)
! 125: - Fix: building when DSP or tracing is disabled
! 126: - Improve CMake library finding for recent macOS
! 127: - Change Hatari compilation C standard to gnu99
! 128: - Add gitlab continuous integration Yaml file
! 129: - Many -fsanitize fixes
! 130:
! 131: Tools:
! 132: - Hatari Python UI migrated from PyGtk v2 to Gtk v3
! 133: - Add Python v3 support to rest of the scripts
! 134: (required by Arch Linux & Clear Linux)
! 135: - hatari-prg-args script:
! 136: - Installed by default
! 137: - Fix program argument setting for recent EmuTOS versions
! 138: - Support argument setting also for programs that are run
! 139: from disk images
! 140: - zip2st: handle also directories with spaces in their names
! 141: - Fixes to hatari_profiler Callgrind output symbol handling
! 142: - Fix TOS bootup tester test output verification
! 143: - Few additional tests for validating Hatari functionality.
! 144: Almost all tests are now integrated with CTest framework.
! 145: Use e.g. "ctest -j4" command to run them
! 146:
! 147: Documentation:
! 148: - Tag commits for Hatari releases before v1 in Mercurial repo
! 149: - Add notes about (new default) PortMidi support to MIDI usage
! 150: - More details on GEMDOS HD and VDI mode emulation limits
! 151: - Large updates to compatibility documents and to performance
! 152: section in the manual
! 153: - Add release checklist document
! 154:
! 155: Fixed demos:
! 156: - B.I.G. Demo screen 2 (regression in Hatari 2.1, vblank in bottom border)
! 157:
! 158: Fixed falcon demos:
! 159: - 4musiK by Dune & Sector One (don't cache HW register regions in write
! 160: allocate mode)
! 161:
! 162: Fixed games:
! 163: - Lethal Xcess in STE mode (stopping/resuming blitter and saving/restoring
! 164: memory snapshots)
! 165: - Lethal Xcess in STF mode (add jitter to MFP, temporary fix)
! 166:
! 167: Fixed programs:
! 168: - Many TT/Falcon programs relying on 68030 MMU / bus error retrying are now
! 169: working correctly (eg 'memwatch' by Uwe Seimet)
! 170:
! 171:
1.1.1.22 root 172: Version 2.1.0 (2018-02-07)
173: ---------------------------
174:
175: Emulation:
176: - Video:
177: - Fix correct number of displayed lines when removing bottom border
178: - Improve bottom border removal on 60 Hz screen
179: - More accurate position for reloading video counter on line 310/260
180: - Fix STE video counter regression at start of VBL (off by 4 cycles)
181: - Fix Timer B counting when screen is in Mono mode and video resolution
182: is set to low/medium
183: - Fix bug preventing screen to be drawn when video address = 0x0
184: - Add (dumb) Videl address and vertical frequency counters emulation
185: - Videl unused bits at $FF820E are read as zero
186: - Sound:
187: - New cycle exact emulation of the YM2149, all counters are
188: incremented using a simulated freq of 250 kHz, giving a 250 kHz audio
189: stream which is downsampled to the desired output frequency.
190: Some undocumented cases were also measured on real STF
191: Result should be much more accurate, clearer and emulate complex effects
192: (phase cancelling on 2 voices for example)
193: - Fix bad sound during YM sample playing on Falcon/TT
194: - CPU:
195: - Support undocumented behaviour for STOP on 68000 when new SR has bit S=0
196: - Fix some cases where bus/address error stack had a wrong PC
1.1.1.23! root 197: - Correctly store the 32-bit address in the stack in case of a bus error
1.1.1.22 root 198: - Better memory timings for RAM accesses in 68030 mode (for Falcon)
199: - Accurate DIV overflow undocumented flags
200: - Correct V flag for BCD instructions for 68020/30
201: - 68030 instr cache was not correctly disabled when writing EI=0 in CACR
202: - Improve caches for 68020/30, add cache support when using MMU
203: - Add 68040/60 data cache emulation, with optional MMU support
204: - FPU:
205: - Large improvements in FPU emulation and related instructions/exceptions
206: - Support for undocumented 68882/68881 FPU constants
207: - Support for softfloat FPU emulation (slower but more accurate)
208: - Memory / MMU / MCU:
209: - Add full support for STF/STE MMU/MCU at $FF8001 and address translation
210: (emulate the RAS/CAS signal depending on the size of the memory banks,
211: TOS memory routines don't need to be patched anymore)
212: - Better results when reading "void" region between end of RAM and 4MB
213: (return latest data seen on the bus on STF/STE)
214: - Add support for more RAM combinations (256 KB and 2.5 MB)
215: - Blitter:
216: - Add cycle exact bus handling for the blitter (correct bus count for CPU
217: and blitter, suspend/resume blitter after any memory access, run part
218: of next CPU instruction in parallel when starting the blitter)
219: - When writing busy bit=0, update interrupt line and don't clear hog bit
220: - Floppy:
221: - Emulate ripple carry adder "bug" for STF DMA address at $FF8609/0B/0D
222: - For STX images, add support for the verify bit in Type I commands
223: - Fix a rare case when looking for the next sector header of an STX image
224: - IKBD:
225: - Support for Audio Sculpture's custom IKBD program
226:
227:
228: Emulator:
229: - MIDI support for Windows and macOS (with PortMidi library)
230: - Add support for AVI files > 4GB (up to 256 GB)
231: - Miscellaneous:
232: - Initial patching for ST-Book ROM
233: - Add keyboard shortcut for toggling borders
234: - Fix: rate-limit DSP illegal instruction warnings output
235: - Disk handling:
236: - Add "--gemdos-time <atari/host>" option so that user can specify
237: whether emulation or host timestamps are used with GEMDOS HD files
238: - Fix: off-by-one error in ACSI image file name handling
239: - Memory handling:
240: - Support memory check skipping also on TOS v3 & v4
241: - Allow RAM size values in KiB instead of MiB
242: - SDL UI:
243: - Add a 'blitter-meter' to the status bar, depending on the blitter's usage
244: - Add refresh rate in the status bar (50, 60 or 71 Hz)
245: - Disable alt+F4 under Windows so that it doesn't close Hatari
246: (in case alt+F4 is also used in the emulated program)
247: - Display handling:
248: - Add --resizable option to control whether Hatari SDL2 window
249: can be resized (= turn it off to prevent accidental resizes)
250: - Support scaling AVI recording (PNG/BMP) frames
251: - Extended VDI mode font selected based on VDI height
252: - Fix: Handle window expose events with SDL 2.0
253: - Fix: don't switch bitdepth when recording AVI
254: - Fix: X11 window embedding (to Python GUI) with SDL2
255: - Fix: TOS v2 & v3 Atari logo display in extended VDI resolutions
256: - Fix: Limit Videl widths for GLES2 SDL2 backends
257: - Virtual INF file handling:
258: - Add "--auto" option to autostart programs also from somewhere
259: else than C: root, and to enable required GEMDOS interception
260: without full GEMDOS HD emulation
261: - Add --tos-res option to specify TOS ST/STE/TT resolution
262: for color monitors, with or without autostart. Also enables
263: blitter for machines & TOS versions supporting it
264: - Uses existing INF file as base, if one exists
265: - If not, specifies open window for boot drive
266: - Fix: Use separate INF files for TOS v1 and v2+ autostarting
267: - Fix: Normal users cannot use tmpfile() directly under Windows
268: - Debugger improvements:
269: - Fix: '>>' bit-shift parsing
270: - Fix: CPU prefetch when changing PC address
271: - Add "CycleCounter" variable
272: - Add "info dta [addr]" command
273: - Add "cpu_regs" trace option to show register values after
274: each executed instruction
275: - Add support for reading GNU-style a.out symbol table format
276: (which is GCC default) in addition to DRI/GST symbols
277: - Add absolute symbols support in addition to BSS/DATA/TEXT ones
278: - Use terminal size for paging (disassembly, memdump, symbols)
279: commands. NOTE: remove old dDisasmLines & nMemdumpLines options
280: from Hatari config file, or set them to -1, to enable this!
281: - Add 'nSymbolLines' configuration option to specify how many
282: lines 'symbols' command pages
283: - 'symbols resident' command and 'bSymbolsResident' config option
284: toggle whether program symbols are removed when program
285: terminates, or only when the next program starts
286: - 'symbols match" command and 'bMatchAllSymbols' config option
287: toggle whether TAB completes all symbols or just symbol types
288: relevant for given command
289: - 'symbols addr' is split into 'symbols code' & 'symbols data'
290: - TEXTEnd value is now TEXT+TextSize, instead of TEXT+TextSize-1
291: - Add "-f" option to 'cd' so that setup scripts can specify
292: what directory is used after currently invoked script(s)
293: have finished
294: - Move exception mask setting from config file "Log" section
295: to "Debugger" section where it belongs
296: - Compilation:
297: - Fix compilation when using ARM 64 target
298: - Allow compilation on untested host architectures (e.g. MIPS & s390x)
299: - Search for local headers first, then system's one (eg zip.h)
300: - Don't redefine bswap_16/_32 macros if they already exist
301:
302: Other changes:
303: - Add French keyboard mapping that works also with SDL2
304: - All symbols output by gst2ascii are now TEXT relative
305: and it supports also a.out format symbol tables
306: - Fix: Python GUI updated for Hatari v2.0
307: - Fix: Python GUI explicitly uses Python v2 (Arch Linux)
308: - Fix: Python tools made compatible both to Python v2 & v3 (Arch Linux)
309: - Fix: icon symlink generation (rpmbuild chroot)
310: - Fix: DESTDIR support for RPM packaging
311:
312: Fixed Falcon games:
313: - Ishar 1, 2 & 3, Lasers and Hommes, Moonspeeder preview 2
314: (Videl video counter)
315: - Boom preview, Lasers and Hommes, Tank Blaster
316: (68030 instr-cache)
317: - Aazohm Krypth, Men at War, Push It, Running, Sky Fall, Sworm
318: (autostarting)
319:
320: Fixed Falcon demos:
321: - Bound 2, E.K.O system (memory access timings)
322: - Bound 3 (Videl video counter)
323: - Agony & Chaos A.D. don't freeze anymore (vertical frequency counter)
324: - Mahabharata (Videl widths with SDL2)
325: - 2x1287, A Rh positive, Are you experienced, Autowaschen Verboten,
326: Bound, Bound 42, Codein, Cycedelic knockout, Dan's Lustiges
327: Kinderfest, Derealization, Dream Dimension, Echos, E.X. Illusion,
328: Geranium, Hex Pistols, Hmmm, Oergs, Polygon Discount, Terrorize your
329: soul, Warum, Virtual City (68030 instr-cache)
330: - Terrorize your soul (DSP warnings 100x slowdown)
331: - Firestarter, Virtual City, Whirlpool
332: (autostarting with packed demos)
333:
334: Fixed TT versions of demos:
335: - 4getful, Beams (68030 instr-cache, undocumented FPU constants)
336:
337: Fixed programs for Falcon:
338: - Hextracker (Videl video counter, when not auto-started)
339:
340: Fixed games:
341: - Le Necromancien' STX image (verify bit in type I commands)
342:
343: Fixed ST/STE demos:
344: - Sprite32 by Leonard (RESTART_VIDEO_COUNTER on line 310/260)
345: - Jam-Cols by ICE (STE video counter timings broken in v2.0)
346:
347: Fixed ST/STE programs:
348: - Protracker 2.1 and Neochrome Master 2.8 (shifter, bottom border at 60 Hz)
349: - Audio Sculpture 1.3 and 1.5 beta (timer B in mono mode, bit S=0 in STOP, IKBD)
350: - True RAM's size detection under TOS/EmuTOS (memory config at $FF8001)
351:
352:
1.1.1.21 root 353: Version 2.0.0 (2016-11-04)
354: ---------------------------
355:
356: Emulation:
357: - Machine:
358: - Support for MegaST & MegaSTE machines added
359: (this also replaces the Real Time Clock / RTC option, since this chip
360: is only available on the Mega machines)
361: - The general purpose registers of the TT SCU are now correctly emulated
362: (this fixes the problem with AHDI not finding any partitions during boot)
363: - HD:
364: - Fix: Disable GEMDOS opcodes after GEMDOS drive is disabled
365: - Fix: GEMDOS HD can now be initialized multiple times,
366: e.g. when running EmuTOS RAM image from a normal TOS
367: - Fix: WORD access to IDE data register at 0xf00002
368: - Fix: '*.*' pattern with GEMDOS HD should match also files
369: without extension
370: - Video:
371: - Full rewrite of the GLUE state machine, including support for the
372: 4 wakeup states in STF mode, as well as more accurate video timings
373: (hbl, timer b, top/bottom and left/right removal, mixing 50/60/71 Hz
374: lines)
375: - Correctly shows the last 8 pixels for STE 224 byte overscan
376: - Fix: reading video counter $FF8205/07/09 after modifying it
377: while display is ON
378: - Fix: location of the video counter's restart when screen runs at 60 Hz
379: - TT: sync ST & TT color registers immediately on write, handle
380: palette bank setting correctly, fix duochrome colors
381: - Falcon: handle byte access special case for ST color registers
382: - Falcon: border color support also in HiColor
383: - better hbl/timer b interrupts when CPU runs at 16/32 MHz
384: - Sound:
385: - Special cases for STE DMA sound when start address = end address
386: - Increase STE DMA volume when compared to the YM2149 volume
387: - Greatly improve Falcon DMA sound
388: - CPU:
389: - use WinUAE CPU for STF/STE mode too, not just Falcon (old CPU core
390: is considered deprecated)
391: - improved IACK and simultaneous interrupts
392: - access IO regs on 2 cycle boundaries when possible
393: - More accurate 68060 mode (instructions from previous CPU versions
394: removed in 68060 aren't accepted/emulated anymore)
395: - Misc bus error / IO mem register handling fixes for TT & Falcon
396: (e.g. add TT DIP switch register handler)
397: - Blitter:
398: - Better bus arbitration when blitter is started
399: - Don't cause bus error when accessing regions causing CPU bus error
400: - Fixes to DSP addressing
401: - Floppy:
402: - Fix the value of the WPT bit when inserting/ejecting a write protected
403: floppy
404:
405: Emulator:
406: - Generic fixes:
407: - Autosave to already existing file works first time after v1.4
408: (dialog for file overwrite got automatically canceled on exit)
409: - SDL GUI:
410: - MegaST/MegaSTe support
411: - Shortcuts can be configured in the keyboard dialog
412: - User can provide volume label when creating a floppy image
413: - Show dialog on HD image size issues
414: - Better SDL2 support:
415: - SDL2 is now enabled by default
416: - Resizable windows, including ST/STE screen scaling
417: - "--desktop" option is used also for ST/STe instead of "--desktop-st"
418: - Command line:
419: - Renamed --fpu-type option to --fpu
420: - Configuration:
421: - Hatari defaults to ST both with oldUAE & WinUAE CPU core
422: - Preferred private configuration directory is now ~/.config/hatari
423: on Linux/Unix (the legacy location ~/.hatari is still used if
424: the other one does not exist yet)
425: - Windows config location is now: AppData\Local\Hatari
426: - Support SDL key names in keymap files in addition to key codes
427: - Comment characters (#, ;) can also be mapped in keymap file
428: - Added NatFeats SCSI (NF_SCSI) driver for Linux version of Hatari
429: - Debugger:
430: - Fix: close debugger log file only when explicitly requested,
431: not when continuing emulation from debugger
432: - Fix: direct DSP register, disasm and memdumps to debugger log
433: file, similarly to CPU
434: - Fix: direct CPU and DSP symbol traces to trace file, not stderr
435: - Fix: ':once' option when there's only one breakpoint (v1.9 regression)
436: - Fix: NatFeats NF_DEBUGGER command now actually drops to debugger
437: - 'n' (next) command run until (dbcc backwards branch) loop exits
438: (in addition to running until subroutine and exception calls return)
439: - Support Atari debugger XBios(11) / Dbmsg() API
440: - 'variables' / 'v' command to list Hatari debugger's builtin symbols
441: - Also trace exception can be caught
442: - Removed features:
443: - Support for rendering to 8-bit host screens
444: - Support for (buggy) RsConf() interception with --bios-intercept
445:
446: Other:
447: - Allow building without Zlib
448: - zip2st tool can convert directories to .st image files,
449: not just .zip files.
450:
451: Fixed games:
452: - Chainz and Jewelz by Paradize (blitter, bus errors)
453:
454: Fixed demos:
455: - spec512 image in the Intro of the Place To Be Again (video, restart counter)
456: - Menu screen in the Place To Be Again (video, writing/reading video
457: counter during active display)
458: - A Little Bit Insane by Lazer (no DMA sound during the demo)
459: - LoSTE and Closure by Sync (video, wakeup states and glue timings)
460: - Death of the left border by TNT (video, stabilizer)
461: - Gen4 Demo by Ziggy / Overlanders (video)
462: - Suretrip 49% by Checkpoint (cpu, exceptions stacking)
463: - Tymewarp by YM Rockerz (megaste mode, cpu control at $ff8e21)
464: - overscan plasma in Graphics Sound 2 in Relapse by Cybernetic (blitter)
1.1.1.22 root 465: - RGBeast by Aggression (blitter)
1.1.1.21 root 466: - Drone by DHS, PhotoChrome Viewer by DML (video, last 8 pixels)
467:
468: Notes:
469: TOS NF_SCSI driver is available from:
470: http://hddriver.seimet.de/en/downloads.html
471:
472:
1.1.1.20 root 473: Version 1.9.0 (2015-09-10):
474: ---------------------------
475:
476: Emulation:
477: - STE Joypads:
478: - Fix: Joypad A Option button
479: - Fix: Joypad B extended buttons
480: - ACSI / IDE:
481: - Fix: image file attribute check when using device files
482: - Fix: v1.8 ACSI regression with A1=0 case
483: - GEMDOS HD:
484: - Fix: matching exactly 8 chars long file names containing '.'
485: - Better mapping of host errors to GEMDOS error codes
486: - Support for mapping file names with 8-bit characters
487: between host and Atari encodings (umlauted chars etc)
488: - Program header (TT-RAM) allocate flags support
489: - CPU:
490: - update WinUAE CPU core version from 2.3 -> 2.8.1 -> 3.0 -> 3.1
491: - MMU emulation fixed
492: - instruction/data cache emulation
493: - better 68020/30 prefetch pipeline
494: - cycle accuracy, etc.
495: - in 68000 mode, remove some un-allowed <ea> for CMPI, BTST and TST
496: - check for address error when new PC is set at the end of RTE, RTS and RTR
497: - fix "move.b an,<ea>", it's not allowed and should give illegal instruction
498: - improve stack frame for bus error and address error
499: - allow bus control only for 030
500: (i.e. prevent TOS forcing 16Mhz at boot with higher CPU levels)
501: - Memory:
502: - TT-RAM / 32-bit addressing support both for TT & Falcon emulation
503: (when using EmuTOS, this requires version 0.9.4 or later)
504: - FDC changes:
505: - for STX disks, fix type I commands with verify bit on tracks with no sector
506: - for ST/MSA, check read address and read track are not beyond max track
507: - MFP:
508: - better emulation of GPIP, AER and DDR
509: - MIDI:
510: - some RX/TX interrupt conditions were not correctly handled
511: - TDRE bit is status register more accurately handled
512: - Video:
513: - fix value when reading video counter $FF8205/07/09 in high res
514: - Blitter:
515: - when transfer ends, hog bit should be cleared in control register
516: - DSP:
517: - better emulation of the HREQ signal
518:
519: Emulator:
520: - Support for compiling with libSDL2 (experimental)
521: - SDL2 supports other than 2x scaling factors for ST/e emulation
522: - Misc fixes:
523: - Fix: WinUAE CPU core (FPU) memory state restore
1.1.1.21 root 524: - Fix: crash with VDI extended resolution emulation when
1.1.1.20 root 525: C: isn't GEMDOS HD emulated drive
526: - Fix: invalid defaults for real joysticks
527: - Fix: compilation when zlib is missing
528: - Fix: bugs from Debian bug tracker:
529: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=716536
1.1.1.21 root 530: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=716084
1.1.1.20 root 531: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=688594
532: - Additional TOS run-time patching:
533: - Support fast boot also with TOS v3 & v4
534: - Support 32-bit addressing also with TOS v4
535: - Replace TOS v4 instructions unsupported on 060
536: - HW specific phystop value in VDI mode
537: - Options:
538: - Fast boot (warm boot / memory check bypass) is disabled by default
539: - 68060 CPU level and --ttram support with new WinUAE CPU core
540: - New --png-level option to decrease AVI compression CPU load
541: - Mouse warping on reset & resolution change can be controlled
542: with new --mousewarp option
543: - Hard drive emulation:
544: - BUS ID for ACSI drive can be specified with --acsi
545: - GUI and command line options to enable 8-bit file name
546: Atari <-> host charset conversion for GEMDOS HD
547: - GUI and command line options to specify GEMDOS HD emulation drive
548: (default = C:), or to skip recognized drives used by partitions
549: on ACSI & IDE images
550: - Partition count parsed by Hatari might not match count used by
551: Atari HD driver due to driver differences in interpreting disk MBR
552: - Refuse to mount same HD image from multiple Hatari instances
553: (on platforms supporting BSD flock()), to avoid corrupting them
554: - SDL GUI:
555: - joystick navigation in options GUI
556: - keyboard navigation & shortcuts in options GUI
557: - sort file selector items case-insensitively with folders first
558: - Partial support for showing Latin1 chars from UTF-8 file names
559: - AltGr+F<1-4> keyboard shortcuts to switch mode/type for emulated
560: joysticks and joypads
561: - User can reset or quit emulation from CPU halt dialog
562: - Fix: sync joystick changes with statusbar
563: - Fix: update default max window size for 2-line statusbar
564: NOTE: size would need to be updated in Hatari config files too!
565: - Fix: statusbar assert when FPU/MMU/TT-RAM are enabled in WinUAE CPU core
566: - When cpu enters 'halt' state in case of double bus/address errors,
567: show a dialog window to reset or call the debugger
568: - Fix bug in the filesector dialog that could create bug in other
569: dialogs used in Hatari
570: - Debugger:
571: - Fix: crash when GEMDOS tracing is used without GEMDOS HD emulation
572: - Fix: update external disassembler's CPU mask when CPU type is changed
573: (it wasn't restricted to opcodes valid for given CPU type)
574: - Fix: breakpoint addition/removal within chained breakpoints
575: - Fix: Atari program detection on Windows for "symbols" command
576: - Profiler support for TT-RAM (uses *ton* of memory)
577: - Profiler support for (030) data cache and new "profile caches"
578: command to show i/d-cache hit/miss histograms
579: - Add trace support for IDE, MIDI and keymaps. ACSI (SCSI) and IDE
580: trace output shows primary partition tables for ACSI & IDE images
581: (both Atari and DOS MBRs are supported)
582: - Add "os_base" trace option to trace Fopen/Fclose/Pexec/Pterm*.
583: That and "os_all" will now enable also xconout console redirection
584: - Output from --conout goes now to stdout instead of stderr
585: - Add "reset <hard|soft>" command
586: - Add "save" subcommand to "history" command
587: - Add "basepage" address variable
588:
589: Other changes:
590: - Add script to convert long host file names to Atari file names,
591: use that in atari-hd-image script
592: - Add hatari-prg-args script for providing arguments to autostarted programs
593: - Fix Atari program detection on Windows in "gst2ascii" tool
594: - Hatari & disk image icons in SVG & PNG formats (multiple sizes)
595: - Remaining Hatari OSX UI changes for Hatari v1.8.0 (localization)
596: - Add video-recording.txt doc on video recording/uploading best practices
597:
598: Fixed demos:
599: - Graphix Sound 2 in Relapse by Cybernetics (blitter+cpu, bus arbitration)
600: - RGBeast by Aggression (video, writing to video counter during active display)
601: - My Socks Are Weapons by Legacy (video, reading video counter in high res)
602:
603: Fixed games:
604: - Superior 65 - Blood Money (cpu, exception stack and bus error)
605: (note that this version is bugged and will crash with TOS 1.04 or 1.62)
606: - Obitus (STX version) (fdc, seek+verify on a track with no sector)
607: - The Teller (STX/CTR version) (cpu, exception stack and address error)
608: - War Heli (cpu, exception stack for address error and prefetch)
609:
610: Fixed programs:
611: - Realtime and M by Eric Ameres (midi + mfp, toggle bit 0 of AER)
612: - Notator (midi, more precise TDRE bit in status register)
1.1.1.21 root 613: - Cubase 2 (midi, reported by user)
1.1.1.20 root 614:
615: Known regressions (see compatibility list):
616: - Suretrip demo by Checkpoint
617: - Golden Island game demo with WinUAE CPU core
1.1.1.21 root 618: - TT-version of 4getful demo with WinUAE CPU core
1.1.1.20 root 619:
620:
1.1.1.19 root 621: Version 1.8.0 (2014-07-30):
622: ---------------------------
623:
624: Emulation:
625: - ST video changes :
626: - Handle 0 byte line by switching freq in STE mode
627: - Use high res when ff8260 is set to 3
628: - Randomly return 0 or 1 when reading unused bits 3,7 and 11 of
629: color registers (except when running from ROM)
630: - Better detection of bottom border removal on a 60 Hz screen
631: - support for color change during only 4 cycles
632: - better bitmap/color alignment for STE med res overscan at 60 Hz
633: - Set default value of nSpec512Threshold to "1" instead of "16"
634: - Update the position of the next VBL when 50Hz and 60Hz lines are mixed
635: - When video address is set into IO region, keep the video pointer on 24 bits
636: - Videl changes :
637: - correct masking of the true color palette registers
638: - CPU changes :
639: - Fix a case when MFP's interrupt happens during the IACK sequence
640: for HBL/VBL
641: - Many prefetch changes required by some game's protection
642: - Sound changes :
643: - Fix STE sound mixing using LMC when mixer=0 (DMA sound only)
644: - Fix some crossbar's sound errors for Falcon
645: - Fix Microwire's decoding of mask/data (based on official LMC1992's doc)
646: - FDC changes :
647: - Add configurable RPM speed for each floppy drive, the possibility
648: to turn each drive ON/OFF and the choice between single or double
649: sided drive
650: - Correct timings, behaviour and status register for all commands
651: when a drive is OFF or empty.
652: - Rewrite the index pulse part and all the delays expressed as disk's
653: revolution
654: - Add support for the "Force Int on Index Pulse" command
655: - Rewrite the DMA functions for better accuracy
656: - Add support for IPF/CTR files by using the capsimage library
657: - Add open source support for Pasti STX files, including random/fuzzy bits
658: and variable length bits. Also allow to save writes to a .stx file
659: into an additional .wd1772 file (store 'write sector' and 'write track' data)
660: - Don't force drives A and B at $4c2, keep the values detected by TOS
661: - Many other timing / status register improvements
662: - GEMDOS HD emulation:
663: - Fix: clip filenames given through GEMDOS calls to 8+3 length
664: using first '.'
665: - Fix: autostarting programs with GEMDOS-illegal host characters
666: in their names
667: - ACSI hard disk changes:
1.1.1.20 root 668: - Support multiple ACSI devices
1.1.1.19 root 669: - Fixed/improved READ CAPACITY and INQUIRY commands
670: - Unsupported commands are now handled correctly
671: - Now using fseeko() instead of fseek() for supporting large images
672: - Other changes:
673: - Don't enable MegaST's real time clock by default, it can cause some
674: crashes in STF/STE mode
675: - Improve ACIA's wait state with E clock
676: - Add support for IKBD commands 0x11 and 0x13 (resume/pause output)
677: and 0x17 (joystick monitoring)
678:
679: Emulator:
680: - SDL GUI:
681: - Update clock speed in the status bar when changing bus speed
682: in Falcon mode
683: - In the floppy dialog, use a checkbox to enable/disable drives A and B
684: and another checkbox to choose single/double sided drive
685: - In the screen dialog, add checkbox for --desktop-st option
686: - Add a 2nd line in the status bar, with infos on FDC, joysticks, monitor
687: - Fix OSX performance issue caused by statusbar and overlay LED
688: doing their own SDL_UpdateRects() calls
689: - New command line options:
690: - Options --drive-a and --drive-b to enable/disable drives A and B
691: - Options --drive-a-heads and --drive-b-heads to select single or
692: double sided drives A and B
693: - --slowdown option to increase (multiply) VBL wait times
694: - New Native Features commands:
695: - NF_EXIT exits emulator with given exit code
696: - NF_DEBUGGER invokes Hatari debugger from native program
697: - NF_FASTFORWARD sets fast forward on/off
698: - Tracing improvements:
699: - Add option for tracing NatFeats calls
700: - Fix: Xbios(255) modified the given argument string
701: - Allow BIOS, XBIOS, GEMDOS, VDI and AES tracing to be enabled without
702: enabling also X/BIOS interception, GEMDOS HD emulation or extended
703: VDI mode
704: - Show PC value for traced Bios/XBios/GemDOS calls
705: - Debugger:
706: - Fix: release mouse in all cases where debugger can be invoked
707: - Fix: DSP disassembler didn't in all cases show illegal opcodes correctly
708: - Fix: "symbols" command crash when it was used during TOS bootup
709: - Fix: TOS and cartridge addresses weren't (with all TOS versions)
710: in address order which asserted in profile data post-processor
711: - Fix: "next" command didn't work correctly in "hex" number base
712: - Fix: depending on compiler/linker/assembler, DATA/BSS debug symbol
713: offsets can in programs be either relative to their own, or to TEXT
714: section start. If former fails, try latter when loading symbols.
715: - New "ym" info subcommand to show YM register values
716: - "quit" command by-passes exit confirmation dialog and takes
717: an optional Hatari exit code value
718: - removed limits on breakpoints and their conditions
719: - when entering debugger, current program's DRI/GST format debug
720: symbols are automatically read from it, if such are available
721: - new --debug-except option to specify which exceptions invoke
722: the debugger, and WinUAE CPU core support for -D toggle option
723: - "next"/"dspnext" commands work like in other debuggers, they
724: skip subroutine/exception calls, for all other instructions
725: they works like "step" command (earlier they always moved to
726: next instruction in memory)
727: - "next" and "dspnext" commands support optional "instruction type"
728: argument, which can be used (for example) to continue emulation
729: until subroutine returns
730: - "history" command takes optional parameter specifying how many
731: instructions of history will be tracked
732: - CPU & DSP profile commands have now subcommand for profiling loops
733: - "CpuInstr" and "DspInstr" variables for count of instructions
734: executed since emulation was last continued from debugger
735: - In addition to "!" condition, also "<" and ">" conditions can store
736: the checked value (when both sides of conditions are identical).
737: With above change, this can be e.g. used to detect and profile
738: what are worst frames in games and why
739: - New "rename" command to rename files. Useful for scripted
740: worst frame and spinloop profiling
741: - Address space in 'dm' command can be given like in DSP disassembly,
742: "dm x:$100", in addition to earlier "dm x $100" syntax
743: - Fix out of bounds memory access that could result in bad disassembly
744: output when using the external disassembler (only "dc.w" were printed)
745:
746: Tools:
747: - Increased max partition size in atari-hd-image script to 512MB.
748: - New hatari_spinloop.py script for post-processing loop profile data.
749: It can tell how many times loops were executed, how many times they
750: spinned at minimum and maximum, at which VBL those happened, and what
751: was the standard deviation of that.
752: - gst2ascii supports now both section relative and TEXT section relative
753: DATA/BSS symbol offsets
754: - hconsole.Main() takes now Hatari command line options as argument
755: - AHCC/GCC/VBCC examples on using (all) Native Features APIs
756: - Improved mingw cross-compilation support
757:
758: Fixed demos :
759: - 4-pixel plasma screen by TOS Crew (video, color change during only 4 cycles)
760: - HighResMode by Paradox (video, color changes in overscan med res at 60 Hz)
761: - It's A Girl 2 by Paradox (video, bottom border removal on a 60 Hz screen)
762: - Pacemaker by Paradox (microwire, YM sound was muted)
763: - Panic by Paulo Simoes (video, was broken since Hatari 1.7)
764: - Shforstv.exe by Paulo Simoes (video, did not work in STE mode)
765: - Sommarhack 2011 Invitro by DHS (CPU/MFP, top border not removed)
766: - Stax Compilation #65 (conflict with Mega ST's RTC)
767: - The Union Demo (cpu, memory access, ikbd, protection)
768: - The World Is My Oyster - Convention Report Part by Aura (video, res=3)
769: - Tymewarp (cpu, bus error)
770: - UMD 8730 by PHF (video, unused bits in STF color registers)
771: - IKBD no jitter by Nyh (acia/video, use a VBL of 160240 cycles)
772:
773: Fixed games :
774: - Batman The Movie (cpu, exception stack)
775: - Chart Attack Compilation (cpu, prefetch)
776: - Darkman (cpu, prefetch)
777: - Dragon Flight (cpu, illegal instruction)
778: - International 3D Tennis (cpu, prefetch)
779: - Leavin' Teramis loader text (video address at $ffe100)
780: - Lethal Xcess Beta (cpu, bus error, code running at $ff8800)
781: - Lethal Xcess (mfp, top border not removed sometimes)
782: - Maze (by Martin Dennett & John Parker)
783: - Parasol Stars (cpu, prefetch)
784: - Reeking Rubber (by Nature), Falcon game
785: - Titan (cpu, prefetch)
786: - To Be On Top (cpu, memory access, ikbd, protection)
787: - Warp (ikbd, interrupt used for decoding sectors)
788: - Xenon 2 (cpu, prefetch)
789:
790:
1.1.1.18 root 791: Version 1.7.0 (2013-06-24):
792: ---------------------------
793:
794: Emulation:
795: - TT video emulation :
796: - Extend the ST palette registers from 9bit to 12bit for ST modes
797: - Duochrome mode instead of monochrome for ST High
798: - Implementation of SampleHold in TT Hypermono video mode
799: - Sound changes :
800: - Better model of the YM2149 noise generation (no noticeable audible impact)
801: - Slightly better volume table (measured by Paulo Simoes on a real ST)
802: - CPU changes :
803: - Added experimental MMU emulation for the 68030 mode
804: - Handle the IACK cycles during an exception for HBL/VBL
805: - ACIA/IKBD changes :
806: - Full implementation of the MC6850 ACIA, giving much more robust
807: IKBD emulation
808: - Better timings for all IKBD commands (measured on a real STF)
809: - Clock is handled internally in IKBD, host date/time is used
810: only to initialize RTC at boot. I.e. pausing emulation doesn't
811: cause time skips when unpausing
812: - Fix slow mouse when absolute mode is used with scale values
813: - MFP changes :
814: - Fixed priority errors when simultaneous interrupts happened
815: - MFP's IRQ should be delayed by 4 cycles before reaching the CPU
816: - MFP's IRQ signal was not correctly updated in some cases
817: - Handle the IACK cycles between CPU and MFP during an exception
818: - FDC changes :
819: - Better delays for all the GAPs inside a track
820: - Emulate the disk's rotation and its angular position to get
821: accurate delays when accessing a sector header
822: - Internal timer for FDC was wrong and sometimes slower than expected
823: - Correct delay for type I commands with "verify" bit=1
824: - GEMDOS HD emulation changes :
825: - Support Fforce() for GEMDOS HD emulated files and close at Pterm*()
826: all internal handles to emulated files program had left open
827: - Fix: cut file and dir names to 8+3 chars like all TOS versions do
828: - Fix: GEMDOS HD emulation overwrote last 28 bytes of basepage space
829: for the started process command line (with the program header)
830: - Fix: Fwrite() content wasn't flushed to disk on each write, so later
831: Fopen() + Fread()s calls on such files (if they were not closed
832: in the meanwhile) could get data that was out of date.
833: - Fix: Dfree() return value
834:
835: Emulator:
836: - Fix: problems with run-time CPU type changing
837: - Fix: MIDI IRQs were not enabled if MIDI was enabled at run-time.
838: MIDI toggling will now imply reset
839: - Much improved console redirection functionality and a separate --conout
840: option for it (--bios-intercept doesn't anymore imply console redirection)
841: - Fixed a bug with the axes' mapping in the joystick's detection
842: - Display handling:
843: - Fix: max resolution limit wasn't handled properly for ST mode.
844: - Don't change TOS-calculated font size for VDI mode.
845: - Setup NVRAM video mode based on VDI mode, when in VDI mode.
846: This makes VDI mode work with EmuTOS also under Falcon emulation
847: which is useful as EmuTOS doesn't support native VIDEL expanders
1.1.1.20 root 848: - Limit VDI screen memory usage to 300kB, this allows up to 2048x1200
1.1.1.18 root 849: monochrome and 1024x600/800x768 16-color VDI screens
850: - GEMDOS HD emulation:
851: - Fix: to DTA host filename cutting to 8+3 chars when whole filename
852: was < 12 chars (caused EmuTOS crash)
853: - Give warning if GEMDOS dir/file path exceeds 8+3 characters
854: (as those won't work with real TOS)
855: - New --gemdos-case option to specify whether new dir/filenames
856: are forced to be created in upper (default) or lower case
857: - Giving empty string as GEMDOS HD dir disables GEMDOS HD emulation
858: - SDL GUI:
859: - Fileselector has "CWD" button for changing to Hatari's work directory
860: - Fileselector remembers previous position which is nicer with
861: large directories
862: - Make the drive leds blink with a brighter green when the FDC is executing
863: a command
864: - Profiler:
865: - Fix: profiler assert on invalid PC register values
866: - Fix: profiler usage in debugger files invoked by breakpoints
867: - Fix: profiler CPU & DSP cycles information is for previous instruction
868: - Fix: WinUAE CPU requires cycles counter usage for getting current
869: CPU instruction cycles
870: - Profiler provides timing information, based on used cycles
871: - Profiler provides CPU instruction cache misses information when using
872: cycle-exact WinUAE CPU core (which is Falcon emu default)
873: - Profiler top instruction count/cycles/misses lists show
874: the related instructions
875: - For DSP, profiler adds min/max cycle difference info to disassembly
876: - New "addresses" subcommand can be used to see addresses through which
877: code passed during profiling (e.g. while program seems frozen, this
878: gives much better overview of code that is being run, than cpu trace)
879: - New "callers" subcommand lists all addresses from which loaded
880: symbols' addresses were "called" from. This way one can e.g. find
881: in which contexts interrupt handlers were called and it can be
882: used to construction program execution callgraph
883: - New "save" subcommand saves profile address and caller information
884: to given file, with extra information needed for post-processing
885: - New "stack" subcommand that can be used to get backtraces during
886: profiling with symbols, for ':noinit' backtraces
887: - Debugger:
888: - New ':noinit' and ':quiet' breakpoint options. Quiet option
889: removes most of breakpoint matching "noise" and ':noinit' breakpoints
890: can be used with "profile stack" command, to prevent profile data and
1.1.1.20 root 891: related callstack information from being reset on breakpoint match
1.1.1.18 root 892: - "blitter" and "dsp" subcommand added to "info" command, to show
893: blitter register values and DSP state (e.g. stack content)
894: - "prg" subcommand added to "symbols" command, for loading debug
895: symbols from DRI/GST symbol table in last started program
896: - "step" and "next" commands added for single stepping CPU and DSP code
897: -> 's' shortcut is now for "step", not "save"
898: - "--disasm" option for selecting between UAE core and external CPU
899: code dissassembler and setting output option flags for latter
900: - When -D option is used, also undefined/illegal DSP instructions and
901: DSP stack under/overflows invoke debugger, not just CPU issues
902: - Fix: when several breakpoints should have triggered
903: on the same address, only first was handled
904: - Fix: after breakpoint, 'c <n>' continues one instruction too little
905: - Fix: tracking breakpoint values were updated only when all conditions
906: matched, now they can be also used together with other conditions
907: - Fix: info command crash (triggered on NetBSD)
908: - Fix: disassember output bug on NetBSD (usigned char < -1 test)
909: - Fix: info osheader and basebase subcommands under MiNT
910: - Fix: debugger history duplicates removal
911: - Fix: expression expanding CPU "pc" for DSP shortcut commands
912: - Fix: expression expansion messing lines in command line history
913: - Remote API debugger commands can also use expression expansion
914: - Both single and double quotes can be used to mark expressions
915: - In addition to text section offset, data and bss section offsets
916: can be given when loading symbols (useful for Devpac symbols)
917: - Output what value was set by options if it's not otherwise shown by UI
918: - New 'cpu' and 'dsp' options to 'history' command for tracing just
919: one of these processors on Falcon
920: - Function arguments are shown in traces for all non-MiNT GEMDOS calls
921: and subset of arguments are now shown also for AES calls (values in
922: intin array and strings in addrin array)
923: - Add NVRAM read & write tracing
924: - Support for the basic Native Features and --natfeats option to control it:
925: http://wiki.aranym.org/natfeats/proposal
926:
927: Windows specific changes:
928: - "-W" option added for opening a console window. Like on all other platforms,
929: "-D" will now just toggle CPU exception handling
930: - Fix: console stderr redirection (used invalid "wr" mode)
931: - Fix Windows localtime() not supporting dates before 1970:
932: - TOS not being able to access files with such dates, or further files
933: - causing IKBD emulation crashes (wasn't problem with Cygwin,
934: just with Mingw builds)
935:
936: Tool updates:
937: - New hatari-profiler.py script for post-processing output from
938: profiler's CPU and DSP profiling "save" commands:
939: profile save <filename>
940: dspprofile save <filename>
941: - With symbol address information it can provide function level
942: instruction, processor cycle & i-cache miss statistics
943: - With callers information it can create function call callgraphs
944: and create callgrind format files for Kcachegrind GUI
945: - New gst2ascii tool to extract DRI/GST symbol table from Atari program,
946: for use with the profile data post-processor
947: - Added scripts for converting symbol tables in Devpac 3 listings and DSP LOD
948: files to a format understood by Hatari debugger 'symbols' command,
949: and to clean 'nm' output of GCC & VBCC built a.out binaries for it
950:
951: Other changes:
952: - HTML documentation indeces generated dynamically with JS
953: - Debugger tests building fixed
954:
955: Fixed Games:
956: Atomix (MFP, flickering bottom of the screen during samples)
957: BBC 52 Menu (Video/CPU, top border not removed)
958: Bolo (MFP, couldn't start a game)
959: Captain Blood (IKBD, fixed problem when setting the clock)
960: Fokker and Downfall (ACIA/IKBD, had regressed in Hatari v1.6.x)
961: Fuzion CD 77/78/84 Menu (MFP, random crash with digidrums in STF mode)
962: James Pond (Fuzion CD 25) (FDC, game stuck during the intro)
963: Microprose Golf (FDC, crash during the intro)
964: Spidertronic (Zuul CD 84) (crashed before 50/60 Hz screen)
965: Super Hang On and Super Monaco GP (MFP, flickering rasters)
966: The Final Conflict (MFP, locked during the sampled intro music)
967: The Sentinel (IKBD, mouse much too slow)
968: Zuul 100/101 Menu (MFP, flickering top border)
969:
970: Fixed demos :
971: Anomaly Demo Main Menu by MJJ Prod (MFP, flickering top/bottom borders)
972: Audio Artistic Demo by Big Alec (MFP, bad sample speed at start)
973: Decade Demo - Reset (MFP, flickering bottom border)
974: High Fidelity Dreams by Aura (MFP, flickering left rasters)
975: ST-NICCC 2000 Demo by Oxygene (FDC, demo ran slower than expected)
976:
977: Fixed apps :
978: Monst v1.x
979: Spectrum 512 (IKBD, mouse too slow)
980: Cubase (when MIDI was enabled after Hatari startup)
981:
982:
1.1.1.17 root 983: Version 1.6.2 (2012-06-24):
984: ---------------------------
985:
986: Emulation:
987: - ST video changes :
988: - Fixes a rare potential crash when running in color mode and switching
989: to monochrome mode for more than one VBL (eg : protection code used
990: in The European Demos and The Transbeauce II Demo)
991: - add more timings for the 224 bytes overscan detection on STE
992: - Correct write timing for BCHG/BCLR/BSET when removing borders
993: - Fix to top/bottom border removal in a rare case
994: - IKBD/ACIA changes :
995: - Handle commands 0x12 and 0x14 sent during the IKBD reset
996: (enable both mouse and joystick reporting at the same time)
997: - Handle the TX IRQ in the ACIA (bits CR6+CR5=0x01)
998: - Implemented IKBD set-clock function
999: - Sound changes :
1000: - Improve YM2149 sound filtering to be closer to a real STF
1001: - Increase output volume for STE DMA sound (compared to the YM2149's volume)
1002: - DSP changes :
1003: - Fix to DSP stack overflow handling
1004: - Fix DSP to be reset on emulation reset
1005: - Old UAE core specific changes :
1006: - Changes in the prefetch code for some instructions
1007: - Correct PC in stack when JMP generates an illegal address exception
1008: - WinUAE core specific changes :
1009: - 68040 MMU emulation fixes
1010: - Fix GEMDOS/VDI emulation (illegal opcode) handling
1011: - Fix WinUAE core to work with ST emulation (boot TOS 1.x)
1012: - Fix FPU to be enabled when switching to TT emulation
1013: - Fixes to FPU register value conversion
1014: - Falcon changes :
1015: - Support for Falcon/Videl screen borders
1016: - Fixes to few Falcon IO registers
1017: - Changed behavior of the Microwire registers in Falcon mode
1018: - Misc changes :
1.1.1.18 root 1019: - IO registers can only be read in supervisor mode
1.1.1.17 root 1020: - Ignore FDC commands when no drive is selected
1021: - Fix TT SCSI register reads to return all bits zero instead of set
1022: - Fix for GEMDOS HD emu to direct special CON:/AUX:/PRN: device files
1023: to TOS instead of trying to handle them as normal files
1024: - printer output is single, not double buffered
1025:
1026: Emulator:
1027: - RS232 input&output and printer output can be disabled from command
1028: line by specifying an empty path
1029: - Fix loading of memory snapshot from SDL GUI not to leave host cursor
1030: enabled
1031: - Video changes:
1032: - Increase max allowed VDI resolution from 1280x960 to 1920x1200
1033: - Revert preferred Videl resolution max zooming size setting from
1034: host desktop resolution back to 832x576 it was in Hatari v1.4,
1035: so that Falcon/TT emulation window sizes by default are closer
1036: to ST/STE ones on larger resolution monitors
1037: - Fix statusbar assert
1038: - Add --sound-sync option to keep video synchronized with the audio
1039: in case the OS audio's driver has some latency issues
1040: - WinUAE core specific changes:
1041: - Default to Falcon with WinUAE core (old CPU core still defaults to ST)
1042: - Support run-time changing of CPU level, FPU type and machine type
1043: from the GUI (also) with WinUAE CPU core
1044: - Debugging improvements:
1045: - Fix to debugger CPU cycle profiling modifying CPU state
1046: - Profiling info is shown at end of disassembly lines
1047: - Support for tracing all symbols loaded to the debugger,
1048: this can be used to get function traces for both CPU and DSP
1049: - Show args for all Bios and most XBios & Gemdos calls when tracing
1050: - "info" command can output opcode tables for BIOS & XBIOS too
1051: - More info to FDC, IKBD, Videl and Crossbar traces
1052:
1053: Other changes:
1054: - Hatari OSX UI updated for Hatari v1.6.1 changes
1055: - Hatari Python UI supports file paths with spaces in them and spaces in
1056: Hatari options given through its control socket can be quoted with '\'.
1057: - Support for alpha-numeric characters in Hconsole "text" command
1058: - Fixes to Hatari UI and hconsole error handling and examples
1059: - Fixed hatari-local-midi-ring.sh & hatari-local-rs232.sh arg handling
1060: - zip2st removes intermediate directories from created floppy
1061: - Fixed hmsa to handle files with multiple "." characters in their names
1062: - TOS tester testing covers more GEMDOS functionality, works with
1063: all Hatari supported TOS versions and HW configurations and it's
1.1.1.23! root 1064: fully automated
1.1.1.17 root 1065:
1066: Fixed Games :
1067: Hammerfist (fire button),
1068: Automation 168 - Operation Clean Streets (prefetch in the CPU emulation)
1069: Impossible Mission II (some versions had the same prefetch issue in the CPU)
1070: Hades Nebula (fire button)
1071: Zombi (IKBD set-clock was missing)
1072:
1073: Fixed demos :
1074: Built-in Obsolescence (DSP stack overflow)
1075: Japtro and Rising Force by Holocaust (FDC, buggy loader)
1076: Delirious Demos IV (video, STE detection)
1077: Antiques by Dune/Sector One (224 bytes STE overscan)
1078: The Wave Of the Future by ICE (STE flickering top border)
1079: Electrocution I by Sphere on Stax Menu 66 (STE flickering bottom border)
1080: Musical Wonders 1990 by Offbeat (video, bottom border not removed)
1081:
1082:
1.1.1.16 root 1083: Version 1.6.1 (2012-01-13):
1084: ---------------------------
1085:
1086: This version is mainly a bugfix for 1.6.0, where monochrome mode
1087: gave a black screen and was not usable.
1088:
1089: Emulation:
1.1.1.17 root 1090: - Fixes to bootup issues in monochrome mode
1.1.1.16 root 1091: - Better left border removal timings
1092: - DSP external memory access cycles taken into account
1093:
1094: Other changes:
1095: - Fix to allow build with Xcode 3.1.3/OS X 10.5.8 PPC
1096: - Several fixes & updates needed to Hatari UI & hconsole
1097: for them to work correctly with Hatari v1.6.x
1098: - Test programs added for testing TOS booting with different
1099: HW configurations and for finding out values needed in
1100: Hatari keymaps
1101:
1102: Fixed Demos :
1103: Vodka Demo - Kill The Beast 2 (left border removal)
1104:
1105:
1.1.1.15 root 1106: Version 1.6.0 (2012-01-01):
1107: ---------------------------
1108:
1109: The Hatari project has been moved from hatari.berlios.de to
1110: http://hatari.tuxfamily.org/. Please update all bookmarks!
1111:
1112: Emulation:
1113: - More accurate FDC emulation (correct status bits and commands' timings,
1114: DMA transfer by blocks of 16 bytes, floppy change detection). This should
1115: fix a lot of non working games
1116: - More accurate microwire clock emulation
1117: - SCSI class 1 (ICD) command support for drives > 1 GB
1118: - Improved color conversion table so that colors are a little bit brighter
1119: - Improve shifter (add another method to do 4 pixel hardware scrolling,
1120: better emulation for 0 byte blank line)
1121: - Some fixes to the IKBD emulation
1122: - Better filters and model for sound emulation
1123: - Correct VBL timings in TT monochrome (double clicking works now)
1124: - More cycle accurate Falcon DSP <-> CPU emulation. All the demos that
1125: needed 32Mhz CPU with the old CPU core in Hatari v1.5, work now at
1126: correct 16Mhz with the WinUAE CPU core
1.1.1.16 root 1127: - 030 MMU emulation with the WinUAE CPU core
1.1.1.15 root 1128:
1129:
1130: Emulator:
1131: - Switch to ST mode when using TOS <= 1.04
1132: - Replace "--slowfdc" with "--fastfdc" option and default to fast FDC being OFF
1133: - "--fast-boot" option to initialize "memvalid" system variables to
1134: by-pass the memory test of TOS, so that the system boots faster
1135: - "--force-max" option to force Hatari use specified maximum resolution
1136: to avoid window size changes messing up Hatari video recording
1137: - "--desktop-st" option to keep desktop resolution also for ST/STE modes
1138: (unfortunately without scaling besides the low-res doubling)
1139: - GEMDOS HD emulation:
1140: - Allow drives up to Z: (not Y:)
1141: - Unique name for each partition
1142: - Warn user when using too old TOS version
1143: - Dfree() reports host disk total and free size if they're below
1144: value understood by TOS and unlike earlier, it forwards Dfree()
1145: requests for other (IDE/ACSI image) partitions to TOS
1146: - Debugger improvements:
1147: - "history" command to list instructions executed before entering
1148: debugger
1149: - each trace output line is flushed to avoid it being buffered
1150: - Fixed behavior of the Caps Lock key
1151:
1152: Other changes:
1153: - Fixes to Hatari UI Hatari window embedding
1154: - Latest Linux sfdisk is borked so atari-hd-image script creates
1155: HD image partition table now itself (experimental)
1156: - Windows needs also HOMEDRIVE for full home path in case Hatari
1157: isn't installed on C:, bug 18297
1158: - Minor fixes
1159:
1160:
1161: Fixed Demos :
1162: Overscan Demos and Shforstv.exe by Paulo Simoes (black line at top),
1163: ACF - Just Bugging (FDC), Delirious Demo IV (FDC, shifter),
1164: Overdrive Demos - Snirkel Screen (IKBD), Oxygene - Stniccc2000 (FDC),
1165: Cream - Madness (FDC)
1166:
1167: Fixed Games :
1168: Superior 65 - Super Monaco GP, DBug 24 - Knightmare, Pompey Pirates 27 - X-Out,
1169: Fuzion 32 - Pang, Fuzion 108 - The Simpson, Fuzion 40 - Super Grand Prix,
1170: Fuzion 46 - Warlock, Fuzion 51 - Navy Seals, Fuzion 61 - Gods, Fuzion 78 -
1171: Carmen Sandiego, Fuzion 82 - Flight Of The Intruder, Fuzion 83 - RBI Baseball 2,
1172: Fuzion 102 - Exile, PP46 - Yolanda, Medway Boys 15 - Murders In Venice,
1173: Medway Boys 83 - Yogi Bear, BBC 2 - Platoon, BBC 39 - The Deep, Superior 71 - The
1174: Running Man, Adrenaline 24 - Demon Blue, Superior 93 - Alien Storm
1175:
1176: Fixed Misc Programs :
1177: Procopy 1.50, Terminators Copy 1.68, maxYMizer (caps lock key)
1178:
1179:
1.1.1.14 root 1180: Version 1.5.0 (2011-07-19):
1.1.1.15 root 1181: ---------------------------
1.1.1.14 root 1182:
1183: Emulation:
1184: - Alternative CPU core based on WinUAE for more accurate future
1185: HW interaction emulation (see readme.txt on how to enable it)
1186: - Use precise clocks values (as described in Atari's official schematics)
1187: for better video/dma audio synchronisation (e.g. More Or Less Zero by DHS)
1188: - DSP:
1189: - Some DSP-timing sensitive Falcon demos that by luck happened to work
1190: with Hatari v1.4, don't work anymore in v1.5 with the default UAE CPU
1191: core. This is because while DSP cycle accuracy has been improved,
1192: the default UAE CPU core isn't fully cycle accurate. The experimental
1193: WinUAE core is needed to run them
1194: - Undocumented 2 bit shift special case for DSP SSI <-> crossbar exchanges
1195: in hanshake mode with 32 Mhz clock (fixes DSP MP2 player used in many
1196: demos & programs, but that requires also using WinUAE core)
1197: - Sound improvements:
1198: - Major rewrite and accuracy improvements in STE DMA sound, including
1199: emulation of the 8 bytes FIFO, giving results nearly identical to
1200: a real STE (e.g. HexTracker by Paulo Simoes)
1201: - Improved precision in sound emulation, with nearly no rounding errors
1202: over successive VBL (correct sound latency on US TOS running at 60 Hz)
1203: - By default mix 3 YM voices using a lookup table of values
1204: measured on real STF to improve digisound (e.g. Flashback demo sound)
1205: - Remove old ST Sound's code used for tone and noise step compute
1206: (some low period values were not correctly emulated)
1207: - Video emulation on STF/STE:
1208: - On STE, correctly shift display 8 pixels to the left when using
1209: 224 bytes overscan
1210: - Add support for spec512 mode in med res (fixes 'Best Part Of The
1211: Creation' in 'Punish Your Machine', 'HighRes Mode' demo by Paradox)
1212: - Correctly shift the screen 4 pixels to the left when left border is removed
1213: in med res overscan (Hatari 1.4 handled only low res, fixes 'No Cooper'
1214: by 1984, 'Best Part Of The Creation' by Delta Force)
1215: - Precisely emulate the number of frames per sec (eg 50.053 fps in PAL
1216: instead of the usual 50 Hz)
1217:
1218: Emulator:
1219: - Atari program given as argument to Hatari will be automatically
1220: started after TOS boots. GEMDOS hard disk directory can now be
1221: give also as an argument, not just as a (-d) option
1222: - TOS4 or --machine falcon option use enables DSP emulation now
1223: (follow them with --dsp none to disable DSP emulation)
1224: - Memory state saving and restoring fixes, especially for Falcon
1225: - Crossbar state is included -> state file ABI break
1226: - AVI recording options can be set in the new [Video] config file section
1227: - AVI recording supports non integer frame rates.
1228: - Falcon/TT Videl/hostscreen improvements:
1229: - New setting/option for using Desktop resolution & scaling
1230: in fullscreen instead of changing the resolution. On by default
1231: - User's desktop size is used as max limit for Videl zooming.
1232: Requires SDL >= 1.2.10
1233: - Videl resolution change is done immediately, not 3 VBLs late
1234: - Fix issues in switching between same sized VDI & TT resolutions
1235: - SDL GUI improvements:
1236: - DSP can be disabled from the GUI without needing to restart Hatari
1237: - Disk access LED and desktop-resolution options
1238: - AVI video length (mins:secs) is shown in titlebar during recording
1239: - Option for cropping statusbar from videos & screenshots
1240: - Fileselector scrollbar can be used with mouse
1241: - YM mixing method selection
1242: - Debugging improvements:
1243: - New disassembler with more Motorola like syntax
1244: - CPU & DSP "disasm" and "memdump" commands accept register & symbol
1245: names in addition to numeric addresses / address ranges
1246: - Option to disable Falcon mic
1247: ("--mic off" is needed for Mudflap debugging)
1248: - "--run-vbls" can be set also at run-time
1249: - "--bios-intercept" can be toggled from debugger (not just enabled)
1250: - BIOS CON: output is converted to ASCII and redirected to host console
1251: with the --bios-intercept option
1252: - Support for tracing DSP, Videl and Crossbar
1253: - Support for tracing AES calls. VDI calls can now be traced
1254: also without using an extended VDI resolution
1255: - BIOS/XBIOS/GEMDOS/VDI/AES/Line-A/Line-F opcode breakpoint support
1256: - TEXT, DATA and BSS variables for addresses of corresponding segments
1257: in currently loaded program
1258: - "aes", "vdi" and "gemdos" subcommands for "info". Without arguments
1259: they will output information about corresponding OS part state,
1260: with (a non-zero) argument, opcode/call name table is shown.
1261: "video" subcommand for showing video related information.
1262: "cookiejar" subcommand for showing cookiejar contents.
1263: - "file" subcommand to "lock" that executes debugger commands from
1264: given file when debugger is entered (or ":lock" breakpoint is hit)
1265: - ":lock" option to breakpoints that will show (without stopping the
1266: emulation) the same output as what's shown on entering the debugger
1267: - ":file" option to breakpoints that executes the commands from
1268: given file when the breakpoint is hit. This can be used to chain
1269: debugger actions
1270: - multiple breakpoints options can be specified per breakpoint
1271: - parenthesis in "evaluate" command are used to indicate memory
1272: accesses (instead of operator precedence like earlier)
1273: - DSP and CPU code profiling functionality. Provides statistics about
1274: profiled code (executed code address ranges, max and total counts
1275: and cycles), lists addresses/instructions taking most cyles and if
1276: symbols are loaded, what were the most used symbol addresses.
1277: - Profiling information is also shown in disassembly output
1278:
1279: Other changes:
1280: - hmsa tool can create empty disk images in addition to converting
1281: disks between ST & MSA formats
1282: - Minimal hatari-tos-register.sh Linux init script (example)
1283: to register Hatari as binfmt_misc handler/runner for TOS programs
1284: - hatari-console.py renamed to hconsole.py, documented and made extensible
1285: (hconsole is command line Python interface for Hatari remote API)
1286: - Support for plain Makefiles removed (except for internal tests),
1287: only CMake is used for configuring and building Hatari
1288: - CMake doesn't require anymore working C++, C-compiler is enough
1289:
1.1 root 1290:
1.1.1.13 root 1291: Version 1.4.0 (2010-06-12):
1292: ---------------------------
1293:
1294: Emulation:
1295: - IDE improvements:
1296: - Support for second drive (IDE slave)
1297: - WIN_FORMAT command (allows HD Driver to format IDE drives)
1298: - GEMDOS HDD emulation:
1299: - Minor fixes to Fseek(), Fopen(), Fdatime() (e.g. Pure debugger works)
1300: - On TOS v4 Fread() size arg is unsigned, on earlier TOS its signed
1301: (bad code can use -1L to read whole file instead getting fail on TOS4)
1302: - Prevent DTA and read/write functions accessing invalid memory areas
1303: - Programs can now change read-only files to be writable
1304: - Falcon sound emulation:
1305: - Microphone (jack) emulation in Falcon mode (requires portaudio library)
1306: - SSI direct sound entrance ("Audio Fun Machine" and winrec are working)
1307: - DMA sound recording
1308: - Crossbar handshake mode transfers
1309: - Max VDI rez increased to TT-hi size (1280x960)
1310: - 68020+FPU changed to 68EC030+FPU (no MMU 030) for Falcon and TT modes
1311: (Some Falcon programs didn't work with 020)
1312: - Video emulation on STF/STE:
1313: - correctly shift the screen 4 pixels to the left when left border is removed
1314: - add support for STE's 224 bytes overscan line without stabilizer
1315: - when reading $ff8205/07/09 on STE, take into account the value
1316: of horizontal scrolling/prefetch and linewidth
1317: - when writing to $ff8205/07/09 on STE, correctly handle the case
1318: where the write is made while display in ON
1319: - LMC1992 emulation / STE sound filtering
1320:
1321: Emulator:
1322: - Host mouse is centered to Hatari window on Falcon resolution changes
1323: (helps in synchronizing host and emulated mouse positions)
1324: - Toggling fullscreen doesn't unpause paused emulation
1325: - Falcon/TT resolution zooming is now controlled by separate options for
1326: monitor aspect ratio correction and maximum zoomed Hatari window size.
1327: This can reduce Hatari window resolution size changes significantly and
1328: makes e.g. FUN's Alive demo viewable in fullscreen mode. Limits for
1329: window size are also checked to see whether ST/STE low rez should be
1330: zoomed and how much of borders can be shown (when borders enabled)
1331: - Split the Screen dialog into two separate dialogs, one for Atari
1332: monitor emulation setup and one for Hatari window setup
1333: - GEMDOS drive emulation:
1334: - support long host directory names and much improved long filename support
1335: - convert host filename chars invalid in TOS to valid ones ('@')
1336: - use TOS filename matching instead of glob() (can match names with [])
1337: - Options for preventing floppy image (--protect-floppy) and GEMDOS
1338: emulated drive directory (--protect-hd) modifications
1339: - AVI file recording:
1340: - video can be stored as BMP or as PNG images
1341: - audio is stored as 16 bits stereo PCM
1342: - Statusbar shows CPU type & speed
1343: - Can create blank 2.88MB (ED) and 1.44MB (HD) floppy images
1344: from the GUI in addition to DD & SD images. After creating
1345: new floppy image, one can directly insert it to A: or B:.
1346: - Tracing for BIOS, XBIOS, GEMDOS and VDI traps gives in addition
1347: to the opcode, also the name of the corresponding OS function
1348: - Major debugger improvements:
1349: - TAB-completion for debugger commands, command arguments and
1350: symbol names. Requires readline library
1351: - "parse" command and --parse Hatari command line option to
1352: execute debugger commands from a file
1353: - "stateload" and "statesave" commands for memory snapshots
1354: - "trace" command for tracing what the emulated code does
1355: - "symbols" command for loading and listing CPU & DSP code & data
1356: symbols/addresses. Code symbols are shown on CPU & DSP disassembly
1357: and code & data symbols can be used in breakpoints
1358: - "evaluate" command for doing calculations. Register and symbol
1359: names in expressions are replaced by their values. '$' will be
1360: TAB-completed to last 'evaluate' command result
1361: - "cd" command to change Hatari work directory
1362: - "exec" command to execute shell commands (ENABLE_SYSTEM_DEBUG_CALL)
1363: - "info" command for showing Atari HW and OS information
1364: - "lock" command for setting what information is shown every time on
1365: entering the debugger, e.g. disassembly or memdump from given address.
1366: "regaddr" argument does that from address pointed by given register
1367: - improved register name handling + fixed DSP reg name matching
1368: - if both sides of conditional breakpoint condition are identical, replace
1369: right side with current value of given expression (e.g. if it's "d0",
1370: use current D0 value). If the comparison is for inequality ("!"),
1371: output the value & break only when the value changes from the previous
1372: value (not original like with other comparisons). Symbols support
1373: - ":trace" option to trace/output breakpoint hits without breaking
1374: - breakpoints count hits and can be optionally removed after first hit
1375: (":once" option) or triggered only on every Nth hit (":<count>" option)
1376: - dsp/address command is a shortcut for conditional breakpoints and its
1377: argument can be an expression (see "evaluate" above)
1378: - Display DSP instructions cycle timings in disasm mode (in cycles)
1379: - Configuration options for how many lines to disasm & memdump
1380: - Fix VBLs/s counting to work also when --run-vbls isn't used
1381:
1382: Other changes:
1383: - Considerably expanded debugging and hard disk sections in manual
1384: - CMake build support, this fixes OSX building and adds support
1385: for building Hatari in different directory from the sources
1386: - Removed autotools usage/support, added CMake "configure" script
1387: - Hatari remote control programs updates (see their own release notes
1388: for details)
1389:
1390:
1.1.1.12 root 1391: Version 1.3.1 (2009-09-05):
1392: ---------------------------
1393:
1394: This is only a bug fix release:
1395: - GEMDOS HD emulation works together with ACSI HD image again
1396: - Fix incorrect use of DESTDIR in python-ui installation
1397: - Fix memdump/disasm in python-ui
1398:
1.1.1.10 root 1399:
1.1.1.11 root 1400: Version 1.3.0 (2009-08-16):
1401: ---------------------------
1402:
1403: Emulation:
1404: - Hugely improved DSP emulation:
1405: - Many more DSP using games/demos/apps work now
1406: - Preliminary sound support (e.g. most DSP based .MOD-playback works)
1407: - Better cycle counting / accuracy
1408: - Many speed improvements
1409: - Major rewrite of the internal work/structures of video.c :
1410: - Allow to mix 50/60 Hz lines of 508/512 cycles and to keep correct
1411: video/cpu sync (fixes TCB in SNY, DI in MindBomb, TEX in Syntax Terror).
1412: This also adds support for dynamic calculation of HBL/Timer B positions
1413: when freq/res are changed (fixes SHFORSTV by Paulo Simoes)
1414: - Improved Timer B accuracy when starting it in a rare case
1415: - Handle end of line as well as start of line for Timer B
1416: in event count mode (using MFP's AER) (fixes Seven Gates Of Jambala)
1417: - Add another 'O byte' line method (fixes No Buddies Land)
1418: - Some more color alignment with the shifter when using movem.w/movem.l
1419: (for spectrum512 like images)
1420: - Improved Blitter timings / cycles counting
1421: - GEMDOS emulation can emulate appropriately named host subdirectories
1422: as separate partitions
1423: - Bug fixes for GEMDOS HD emulation Fopen and Fseek calls
1424:
1425: Emulator:
1426: - DSP changes:
1427: - DSP state saved to memory snapshots
1428: - Threading support removed from DSP emulation (for better synchronization)
1429: - "keyDebug" configuration file setting was renamed to "keyPause"
1430: - Major debugger improvements:
1431: - Invoked with AltGR+Pause. New "keyDebugger" configuration file setting can
1432: be used to change this
1433: - Show PC/HBL/VBL/cycles when entering debugger
1434: - Support multiple number bases. By default values are expected in
1435: decimals; $-prefix is needed for hexadecimal and %-prefix for binary
1436: values. Default number base can be changed
1437: - Internal debugger can be used to debug also DSP code
1438: - Support for (PC) address breakpoints and conditional breakpoints
1439: (watchpoints), both on CPU and DSP. Watchpoints support multiple
1440: conditions, register & memory values and some internal Hatari
1441: variables like VBL, HBL, LineCycles, FrameCycles
1442: - Support for stepping CPU and DSP code
1443: - Emulated programs can now change Hatari options like --fast-forward,
1444: --trace etc. by giving a suitable Hatari command line string to
1445: XBios call 255. This is enabled when Hatari is started with
1446: the --bios-intercept enabled
1447: - Support Videl horizontal fine scrolling for 16 bpp and 32 bpp host screens
1448: - Process successive motion events before returning from event handler
1449: (to fix analog joystick jitter slowing Hatari input processing)
1450: - FPS measurement shown when emulation is paused & --run-vbls option
1451: - Mouse grab option (--grab)
1452: - Some fixes for building Hatari with MS-VC6 and for the Wii
1453: - Statusbar assert (bug #15512) fixed
1454: - Reworked the main dialog of the GUI and split the disk dialog into two
1455: separate dialogs, one for floppy setup and one for hard disk setup
1456:
1457: Utilities:
1458: - New atari-hd-image.sh script for creating HD image files
1459: - External Python GUI and CLI interfaces for Hatari in main repo
1460:
1461: Documentation:
1462: - Debugging and performance sections added to manual
1463:
1464:
1.1.1.10 root 1465: Version 1.2.0 (2009-01-24):
1466: ---------------------------
1467:
1468: - The Hatari project has been moved from hatari.sourceforge.net to
1469: http://hatari.berlios.de. Please update all bookmarks!
1470: - New zip2st.sh shell script for converting .ZIP files into .ST disk images
1471: - Fixed a bug that could write data to the wrong disk image (resulting
1472: in data loss)
1473:
1474: Emulation:
1475: - MIDI input supported in addition to output; --midi option is now
1476: replaced with separate --midi-in and --midi-out options
1477: - Support for STE hardware horizontal scrolling in medium res
1478: - Make the FDC Read Address command always return success, even if
1479: we don't really return the correct bytes for now (fixes a few game loaders)
1480: - Improved shadow register when writing to the YM2149 (fixes X-Out music)
1481: - Cleaner blitter code with improved timings
1482: - Emulation of interrupts jitter for HBL and VBL + improved timing accuracy
1483: - Improve color alignment with the shifter (for spectrum512 like images)
1484: - Fix to the fire button detection reported in some games
1485: - Added IDE hard disk emulation
1486:
1.1.1.11 root 1487: Emulator:
1488: - Pause/unpause shortcut
1489:
1.1.1.10 root 1490:
1.1.1.9 root 1491: Version 1.1.0 (2008-11-29):
1492: ---------------------------
1493:
1494: Emulation:
1495: - Falcon DSP emulation good enough to improve some few games/demos, e.g.
1496: Virtual City. (most still work better with emulation disabled, though)
1497: - New sound engine that fixes all problems with the old one
1498: - 16-bit stereo sound (instead of 8-bit mono)
1499: - Improved blitter emulation (blitter cycles emulation, blitter interrupt)
1500: - Improved STE support for some video registers (hscroll, linewidth, ...)
1501: - Improved printer emulation
1502: - Improved STE microwire emulation
1503: - Improved support for games & demos which are accessing IKBD directly
1504: (including a fake 6301 emulation for the known IKBD programs)
1505: - ACSI emulation fix to get HDDriver working
1506: - Some other minor bugfixes to ST/STe emulation (FDC, MFP, PSG, RS-232)
1507: - Improved MFP emulation
1508: - Improved 68k emulation (move.b Ax,(Ay) and extb.l)
1509: - Fixed bugs in the GEMDOS HD emulation (Pexec() etc.)
1510:
1511: Emulator:
1512: - Statusbar and overlay led features
1513: - Screenshots work also in VDI/TT/Falcon mode and are saved as PNGs
1514: - Support for automatic frameskip and pausing emulation
1515: - Support for embedding Hatari window (on X11) and control socket
1516: - Improved memory snapshot function
1517: - Improved the "trace" debug function
1518:
1.1.1.7 root 1519:
1.1.1.8 root 1520: Version 1.0.1 (2008-03-30):
1521: ---------------------------
1522:
1523: - This is just a bug-fix release, without new features.
1524: - Fixed some compile problems on non-unix-like systems (like MingW).
1525: - Fixed crashes in Spec512 emulation code ("Dan Dare 3" and little endian ARM).
1526: - Blitter source address is not incremented anymore in operation mode 0 and 15.
1527: - STE small overscan video effect is now displayed on the left side instead
1528: of the right side (fixes "Just Musix 2" menu for example).
1529: - Hatari now works on 256 color displays right again.
1530: - Fixed PSG mirror register emulation (fixes e.g. sample sound in "Ooh Crikey
1531: Wot A Scorcher" demo).
1532:
1533:
1.1.1.7 root 1534: Version 1.0.0 (2008-03-17):
1535: ---------------------------
1536:
1537: - The user's configuration files are now located in the directory ~/.hatari/
1538: instead of the $HOME directory itself.
1539: - Improved VDI resolution mode (resolution can now be change in small steps).
1540: - The 'Frame Skip 8' option can now be correctly selected, too.
1541: - Fixed some bugs/problems in the GEMDOS HD emulation (with Fopen & Fcreate).
1542: - Keyboard shortcuts for saving and restoring memory snapshots.
1543: - Hatari can now be compiled with CeGCC, too.
1544: - Fixed some problems with the FPU emulation. NeoN Grafix renders now right.
1545: - Writing to floppy disk images works now also with TOS 4.0x.
1546: - A lot of source code clean-up and beautification.
1547: - Monochrome mode now runs in 71 Hz, and 60 Hz color mode now also really runs
1548: with 60 Hz refresh rate.
1549: - Fixed memory snapshot files (some important data has not been saved before).
1550: - It is now possible to automatically load/save memory snapshots at start/exit.
1551: - Fixed some bugs in the file selection dialog.
1552: - Some minor improvements in the GUI: Improved text edit fields, "Cancel"
1553: buttons can now be activated by pressing the ESC key, and Hatari asks the
1554: user before resetting and quitting the emulator.
1555: - The Hatari executable is now relocatable (so the RPM can be relocated, too).
1556: - It's now possible to enable special trace output with the "--trace" option.
1557: - The size of the borders can now be specified in the hatari.cfg file.
1558: - Fixed Spec512 screen plotting on big endian machines.
1559: - Native screen conversion functions for 32 bpp host display mode.
1560: - Reworked the command line options.
1561: - Added missing read for "clr" in 68000 CPU mode.
1562: - Cycle correct MULU/MULS/DIVU/DIVS in 68000 CPU mode.
1563: - Support for 68000 instructions pairing
1564: - Better emulation of exception stack frame (bus/address error), used in some
1565: protections.
1566: - Don't change illegal 68000 opcodes $8, $a and $c if no cartridge is inserted.
1567: - Ensure ACIA has consistent values when reset.
1568: - More precise interrupt handling, allowing to mix CPU cycles and MFP cycles
1569: with greater precision.
1570: - Various improvements in MFP emulation (stop/start timer without writing to
1571: data register, reading data register, handle pending cycles when timer
1572: "wraps" (i.e. data register reaches 0), ...). Supports programs using some
1573: very "fast" timers (Overscan Demos, ULM Demos) and requiring nearly cycle
1574: exact synchronisation with the 68000.
1575: - Mostly correct wait states when accessing sound registers (add wait state for
1576: $ff8801/ff8803 when needed).
1577: - Correct values of cycle counters read & write accesses for the most common
1578: cases used for fullscreen/hardscroll.
1579: - Correct values for Video_CalculateAddress, taking into account frequency and
1580: left/right borders' state, needed for correct synchronisation between video
1581: and cpu.
1582: - Improve top/bottom border removal, including 60 Hz bottom border, as well as
1583: "short" 50 Hz screen (171 lines)
1584: - Support for all left/right border removal, including 0 byte lines.
1585: - Support for hardscroll on STF, including the most recent ones using 4/5 lines.
1586: - Support for 4 pixels horizontal hardscroll on STF (ST Connexion in Punish
1587: Your Machine)
1588: - Small adjustements in cycle precise color handling (spec512.c)
1589:
1590:
1591: Version 0.95 (2007-05-12):
1592: --------------------------
1593:
1594: - This release brings you basic Atari TT and Falcon emulation!
1595: Please note that both new emulation modes are still highly experiemental,
1596: some few games and demos work, but most still have more or less big
1597: problems.
1598: - Basic emulation of Falcon video shifter (Videl), NVRAM and DMA sound is in
1599: place. The biggest drawback: There is no working Falcon DSP emulation yet.
1600: - Screen/Shifter emulation timings have slightly been changed. Some things
1601: now work better, some others work worse...
1602: - Some patches for compiling on RiscOS and AmigaOS have been included.
1603: - Compiling Hatari for Windows now works better.
1604: - Added Hatari icon (hatari-icon.bmp).
1605: - Fixed "movec" bug in 68020 CPU mode.
1606: - Keyboard shortcuts for loading & saving memory snapshots (AltGr+k & AltGr+l).
1607: - The built-in debugger has been slightly improved to be more user-friendly.
1608: - Added "hmsa" tool - a little program for converting .MSA files to .ST and
1609: vice versa.
1610:
1611:
1.1.1.6 root 1612: Version 0.90 (2006-08-22):
1613: --------------------------
1614:
1615: - Better Spectrum 512 support (60Hz support, improved I/O memory waitstates).
1616: - STE right border opening support (used in Obsession, Pacemaker).
1617: - Blitter Smudge mode support (used in Pacemaker demo).
1618: - Wheel-mouse simulates cursor up and down.
1619: - Work-around to FDC handling, --slow-fdc option is not anymore needed.
1620: - Bugfix to MFP, sound works now in more YMRockerz releases.
1621: - Bugfix to GEMDOS path handling (Hatari SIGSEGV).
1622: - Bugfix to emulated memory initialization (4MB was cleared earlier, now
1623: exactly the amount set up for Hatari. Saves memory on embedded systems
1624: if less than 4MB is specified.)
1625: - Re-written command-line option handling.
1626: - (Again) lots of code const/static, type usage and indentation cleanup.
1627: - Preliminary support for TOS 3.0x and 030 TT software that runs in ST
1628: resolutions and doesn't need PMMU.
1629: - Native GUI for Mac OSX.
1630: - ACSI emulation fixes to get HD formatting to work with AHDI 5. HD emulation
1631: now works quite fine with AHDI 5 (but other HD drivers are currently not
1632: supported).
1633: - Joystick shortcut changed to toggle cursor emulation between ports 0 and 1.
1634: - Keys for all Hatari shortcuts can now be configured from hatari.cfg.
1635: - Added command line option for setting ST keyboard mapping.
1636: - Joystick command line option requires now parameter for a port for which
1637: the joystick cursor emu is enabled.
1638: - Fixed relative mouse event handling in zoomed low-rez.
1639: - Hatari shows now more of the bottom borden (screen size is now 384x276
1640: instead of 384x267).
1641: - Fixed sync delay timings - sound should now be better (e.g. on Mac OS X).
1642: - Added basic support for compiling Hatari with MinGW.
1643:
1644:
1.1.1.5 root 1645: Version 0.80 (2005-10-12):
1646: --------------------------
1647:
1648: - Support for STE hardware emulation: STE palette, STE shifter (horizontal fine
1649: scrolling, split screen effects), DMA sound and STE joypads.
1650: See the manual for a list of working STE applications/games/demos.
1651: - Hatari can now emulate up to 14 MiB ST RAM instead of only 4 MiB.
1652: - Support for parallel port joysticks.
1653: - Improved GEMDOS HD emulation (added Fattrib() call).
1654: - Adding and removing a GEMDOS or ACSI hard disk should now work correctly.
1655: - Re-factoring of the screen conversion functions.
1656: - Improved manual: Now with screenshots of the options dialogs.
1657:
1.1 root 1658:
1.1.1.4 root 1659: Version 0.70 (2005-06-05):
1660: --------------------------
1661:
1662: - As always: Code cleanup and bug fixes.
1663: - No more crashes when a program tries to access illegal sector numbers.
1664: - Improved built-in ROM cartridge.
1665: - Rewrote the IO memory emulation code -> Better compatibility.
1666: - Support for TOS 1.06 and TOS 1.62
1667: - Emulated CPU can now also be run at 16 MHz or 32 MHz.
1668: - File selection dialog scrollable with mouse wheel or cursor keys, too.
1669: - Hatari now works on 64-bit host CPUs, too.
1670: - Floppy disk images can now be set writable/write-protected in the GUI.
1671: - Hatari can now also load a global configuration file (e.g. /etc/hatari.cfg).
1672: - Configurable logging functions.
1673:
1674:
1.1.1.3 root 1675: Version 0.60 (2004-12-19):
1676: --------------------------
1677:
1678: - Again some code cleanup and bug fixes.
1679: - Window/fullscreen mode is now correctly initialized from the configuration
1680: file.
1681: - Added --window command line option to force a start in window mode.
1682: - Added alert boxes to show warnings, errors and information messages.
1683: - PC mouse pointer is now better in sync with the ST mouse pointer.
1684: - It's now possible to load an alternative cartridge image file.
1685:
1686:
1.1.1.2 root 1687: Version 0.50 (2004-07-26):
1688: --------------------------
1689:
1690: - A lot of internal code cleanup and bug fixes.
1691: - Added a dialog for creating new blank floppy disk images.
1692: - The source code has been optimized for better emulation speed.
1693: - Added RS232 emulation (still very experimental and not very well tested! It
1694: seems not to work reliable yet. Help for debugging is very appreciated!).
1695: - Some bugs in the 68000 emulation have been fixed.
1696: - The emulator now checks for double bus errors and stops the emulation if
1697: necessary (instead of crashing the emulator).
1698: - Timer-D is now patched correctly again.
1699: - The old font has been replaced by two new fonts so that the GUI now looks
1700: better in high resolutions.
1701: - The fonts are now linked into the executable.
1702: - Added support for DIM floppy disk images.
1703:
1704:
1705: Version 0.45 (2003-10-30):
1706: --------------------------
1707:
1708: - This is just a minor release on the way to version 0.50. It is not very
1709: well tested, so be warned!
1710: - New build system (with a "configure" shell script).
1.1.1.5 root 1711: - A disk image destroying bug in the MSA compression function has been fixed.
1.1.1.2 root 1712: - It is now possible to redirect the printer output into a file.
1713: - Experimental MIDI output support.
1714: - Added the possibility to save memory snap shots.
1715: - Pending HBL and VBL interrupts are now emulated correctly (I hope).
1716: - Some speed improvements.
1717: - GEMDOS HD emulation now also works with EmuTOS.
1718:
1719:
1.1 root 1720: Version 0.40 (2003-07-11):
1721: --------------------------
1722:
1723: - Support for ZIP and GZIP compressed disk images!
1724: - Configuration file support for loading and saving the emulator settings.
1725: - Hatari now works on machines with Sparc CPUs, too.
1726: - Fixed a problem that slowed down the emulator in monochrome mode when using
1727: TOS 2.06.
1728: - Inverted monochrome mode is now supported, too (some games like Maniac
1729: Mansion use this).
1730: - Added Mega-ST compatible real time clock (RTC) emulation.
1731: - The GEMDOS HD emulation has been improved (it now also works with lower-case
1732: file names) and many bugs have been fixed there.
1733: - Improved keyboard mapping (added mapping via PC keyboard scancode and via
1734: reloadable mapping files).
1735: - The screen rendering routines have been generalized (less differences between
1736: windowed and fullscreen mode).
1737: - Hatari can now be cross-compiled, too. You can even compile it for MiNT now.
1738: However, it does not run very well there yet.
1739: - Support for RAM TOS images.
1740: - Improved memory mapping (the different memory regions should now behave much
1741: more like on a real ST).
1742: - Improved M68k exceptions (bus errors and exception cycle timings).
1743: - Fixed some bugs in the extended VDI resolution mode (now it is working with
1744: EmuTOS, too).
1745: - Some games that poll the write-protection signal of the FDC to check for
1746: disk changes should now be working, too.
1747:
1748:
1749: Version 0.30 (2003-03-12):
1750: --------------------------
1751:
1752: - Some parts of the code accessed the SR directly to read the IPL -
1753: however the UAE CPU core only updates the SR when doing a MakeSR() first.
1754: So this is done in the affected code parts now, too.
1.1.1.20 root 1755: - The IPL wasn't raised when a MFP interrupt occurred - fixed now.
1.1 root 1756: - Full screen resolution for ST-Low can now be selected from the screen setup
1757: dialog.
1758: - The IKBD emulation does not longer duplicate joystick fire buttons when
1.1.1.9 root 1759: a game tries to use both, joystick and mouse
1.1 root 1760: - Improved audio timer function - the code should now be a little bit faster.
1761: - Resynced Hatari's UAE CPU core with UAE 0.8.22 - this fixes some bugs in 68k
1762: instructions like ABCD and SBCD.
1763: - Added patches for TOS 2.05 so that this TOS version should now work, too.
1764: - Rewrote TOS patching routine. It is much more flexible now.
1765: - Removed 0xa0ff opcode for VDI resolutions; using GEMDOS_OPCODE now instead.
1766: - Fixed MMU RAM size configuration bug.
1767: - Rewrote some more screen conversion functions in C.
1768: - When a bus or address error occurred, the PC was often not set to the
1769: right exception handler routine. This has been fixed now.
1770:
1771:
1772: Version 0.25 (2002-12-30):
1773: --------------------------
1774:
1775: - Patches for big endian systems (Spectrum 512 pictures are now working there).
1776: - Hatari now also compiles and runs under Mac OS X.
1777: - Blitter emulation has been added.
1778: - There is now the possibility to save YM or WAV sounds.
1779: - Big VDI resolutions (e.g. 800x600) are now supported, too.
1.1.1.23! root 1780: - Mouse grab shortcut (AltGr+M).
! 1781: - Fixed TOS v1.00 patching.
1.1 root 1782:
1783:
1784: Version 0.20 (2002-02-18):
1785: --------------------------
1786:
1787: - Added graphical user interface for configuration of the emulator settings.
1788: - Real joysticks can now also be used to simulate the ST joysticks.
1789: - Yet another bugfix for BeOS (lseek again...)
1790: - Support for hard disk images.
1791:
1792:
1793: Version 0.11 (2001-10-10):
1794: --------------------------
1795:
1796: - High level (GEMDOS) harddisk emulation.
1797: - ST-Med/ST-Low mixed mode now works.
1.1.1.23! root 1798: - Add --compatible CPU mode option.
1.1 root 1799:
1800:
1801: Version 0.10 (2001-08-16):
1802: --------------------------
1803:
1804: - Improved CPU cycles emulation.
1805: - Added Spec512 support.
1806: - Some keyboard shortcuts.
1807: - Added the possibility to switch between fullscreen and window mode.
1808: - ST Medium resolution conversion routine.
1809: - Built-in debugger.
1810: - Added possibility to grab screenshots.
1811: - Sound support (not working very well yet).
1812:
1813:
1814: Version 0.05 (2001-06-01):
1815: --------------------------
1816:
1817: - Joystick emulation via cursor keys.
1818: - ST-LOW resolution conversion routine is now working on big-endian machines.
1819:
1820:
1821: Version 0.04 (2001-05-27):
1822: --------------------------
1823:
1824: - Added Stefan Berndtsson's patch for big-endian machines.
1825: Hatari now runs also with non-x86 Linux machines! Thanks Stefan!
1826: - Rewrote the ST-LOW resolution conversion routines in C ==> ST-LOW now works!
1827: - Added some of the WinSTon patches Paul Bates recently published
1828: at the WinSTon BBS (Thanks to Ladislav Adamec for the hint).
1829: - Cleaned up the source tree a little bit.
1830:
1831:
1832: Version 0.03 (2001-04-03):
1833: --------------------------
1834:
1835: - Rewrote some more assembler functions. FDC emulation now works!
1836: - SDL Keyboard code finished and included a SDL-Key -> ST-Scancode table.
1837: - Added mouse support.
1838:
1839:
1840: Version 0.02 (2001-03-28):
1841: --------------------------
1842:
1843: - Added very simple SDL support.
1844: - Rewrote a lot of assembler functions in C (e.g. intercept.c).
1845: - Adapted the UAE CPU. Now Hatari is able to boot a TOS 1.0x ROM, the
1846: Desktop shows up, but no mouse and keyboard interaction yet.
1847:
1848:
1849: Version 0.01 (2001-03-21):
1850: --------------------------
1851: - Made the WinSTon source code compilable with GNU-C.
1852: - Added the UAE CPU sources.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.