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