|
|
1.1 root 1:
2: Hatari
3: --------
4: Release Notes
5:
1.1.1.19! root 6: Version 1.8.0 (2014-07-30):
! 7: ---------------------------
! 8:
! 9: Emulation:
! 10: - ST video changes :
! 11: - Handle 0 byte line by switching freq in STE mode
! 12: - Use high res when ff8260 is set to 3
! 13: - Randomly return 0 or 1 when reading unused bits 3,7 and 11 of
! 14: color registers (except when running from ROM)
! 15: - Better detection of bottom border removal on a 60 Hz screen
! 16: - support for color change during only 4 cycles
! 17: - better bitmap/color alignment for STE med res overscan at 60 Hz
! 18: - Set default value of nSpec512Threshold to "1" instead of "16"
! 19: - Update the position of the next VBL when 50Hz and 60Hz lines are mixed
! 20: - When video address is set into IO region, keep the video pointer on 24 bits
! 21: - Videl changes :
! 22: - correct masking of the true color palette registers
! 23: - CPU changes :
! 24: - Fix a case when MFP's interrupt happens during the IACK sequence
! 25: for HBL/VBL
! 26: - Many prefetch changes required by some game's protection
! 27: - Sound changes :
! 28: - Fix STE sound mixing using LMC when mixer=0 (DMA sound only)
! 29: - Fix some crossbar's sound errors for Falcon
! 30: - Fix Microwire's decoding of mask/data (based on official LMC1992's doc)
! 31: - FDC changes :
! 32: - Add configurable RPM speed for each floppy drive, the possibility
! 33: to turn each drive ON/OFF and the choice between single or double
! 34: sided drive
! 35: - Correct timings, behaviour and status register for all commands
! 36: when a drive is OFF or empty.
! 37: - Rewrite the index pulse part and all the delays expressed as disk's
! 38: revolution
! 39: - Add support for the "Force Int on Index Pulse" command
! 40: - Rewrite the DMA functions for better accuracy
! 41: - Add support for IPF/CTR files by using the capsimage library
! 42: - Add open source support for Pasti STX files, including random/fuzzy bits
! 43: and variable length bits. Also allow to save writes to a .stx file
! 44: into an additional .wd1772 file (store 'write sector' and 'write track' data)
! 45: - Don't force drives A and B at $4c2, keep the values detected by TOS
! 46: - Many other timing / status register improvements
! 47: - GEMDOS HD emulation:
! 48: - Fix: clip filenames given through GEMDOS calls to 8+3 length
! 49: using first '.'
! 50: - Fix: autostarting programs with GEMDOS-illegal host characters
! 51: in their names
! 52: - ACSI hard disk changes:
! 53: - Fixed/improved READ CAPACITY and INQUIRY commands
! 54: - Unsupported commands are now handled correctly
! 55: - Now using fseeko() instead of fseek() for supporting large images
! 56: - Other changes:
! 57: - Don't enable MegaST's real time clock by default, it can cause some
! 58: crashes in STF/STE mode
! 59: - Improve ACIA's wait state with E clock
! 60: - Add support for IKBD commands 0x11 and 0x13 (resume/pause output)
! 61: and 0x17 (joystick monitoring)
! 62:
! 63: Emulator:
! 64: - SDL GUI:
! 65: - Update clock speed in the status bar when changing bus speed
! 66: in Falcon mode
! 67: - In the floppy dialog, use a checkbox to enable/disable drives A and B
! 68: and another checkbox to choose single/double sided drive
! 69: - In the screen dialog, add checkbox for --desktop-st option
! 70: - Add a 2nd line in the status bar, with infos on FDC, joysticks, monitor
! 71: - Fix OSX performance issue caused by statusbar and overlay LED
! 72: doing their own SDL_UpdateRects() calls
! 73: - New command line options:
! 74: - Options --drive-a and --drive-b to enable/disable drives A and B
! 75: - Options --drive-a-heads and --drive-b-heads to select single or
! 76: double sided drives A and B
! 77: - --slowdown option to increase (multiply) VBL wait times
! 78: - New Native Features commands:
! 79: - NF_EXIT exits emulator with given exit code
! 80: - NF_DEBUGGER invokes Hatari debugger from native program
! 81: - NF_FASTFORWARD sets fast forward on/off
! 82: - Tracing improvements:
! 83: - Add option for tracing NatFeats calls
! 84: - Fix: Xbios(255) modified the given argument string
! 85: - Allow BIOS, XBIOS, GEMDOS, VDI and AES tracing to be enabled without
! 86: enabling also X/BIOS interception, GEMDOS HD emulation or extended
! 87: VDI mode
! 88: - Show PC value for traced Bios/XBios/GemDOS calls
! 89: - Debugger:
! 90: - Fix: release mouse in all cases where debugger can be invoked
! 91: - Fix: DSP disassembler didn't in all cases show illegal opcodes correctly
! 92: - Fix: "symbols" command crash when it was used during TOS bootup
! 93: - Fix: TOS and cartridge addresses weren't (with all TOS versions)
! 94: in address order which asserted in profile data post-processor
! 95: - Fix: "next" command didn't work correctly in "hex" number base
! 96: - Fix: depending on compiler/linker/assembler, DATA/BSS debug symbol
! 97: offsets can in programs be either relative to their own, or to TEXT
! 98: section start. If former fails, try latter when loading symbols.
! 99: - New "ym" info subcommand to show YM register values
! 100: - "quit" command by-passes exit confirmation dialog and takes
! 101: an optional Hatari exit code value
! 102: - removed limits on breakpoints and their conditions
! 103: - when entering debugger, current program's DRI/GST format debug
! 104: symbols are automatically read from it, if such are available
! 105: - new --debug-except option to specify which exceptions invoke
! 106: the debugger, and WinUAE CPU core support for -D toggle option
! 107: - "next"/"dspnext" commands work like in other debuggers, they
! 108: skip subroutine/exception calls, for all other instructions
! 109: they works like "step" command (earlier they always moved to
! 110: next instruction in memory)
! 111: - "next" and "dspnext" commands support optional "instruction type"
! 112: argument, which can be used (for example) to continue emulation
! 113: until subroutine returns
! 114: - "history" command takes optional parameter specifying how many
! 115: instructions of history will be tracked
! 116: - CPU & DSP profile commands have now subcommand for profiling loops
! 117: - "CpuInstr" and "DspInstr" variables for count of instructions
! 118: executed since emulation was last continued from debugger
! 119: - In addition to "!" condition, also "<" and ">" conditions can store
! 120: the checked value (when both sides of conditions are identical).
! 121: With above change, this can be e.g. used to detect and profile
! 122: what are worst frames in games and why
! 123: - New "rename" command to rename files. Useful for scripted
! 124: worst frame and spinloop profiling
! 125: - Address space in 'dm' command can be given like in DSP disassembly,
! 126: "dm x:$100", in addition to earlier "dm x $100" syntax
! 127: - Fix out of bounds memory access that could result in bad disassembly
! 128: output when using the external disassembler (only "dc.w" were printed)
! 129:
! 130: Tools:
! 131: - Increased max partition size in atari-hd-image script to 512MB.
! 132: - New hatari_spinloop.py script for post-processing loop profile data.
! 133: It can tell how many times loops were executed, how many times they
! 134: spinned at minimum and maximum, at which VBL those happened, and what
! 135: was the standard deviation of that.
! 136: - gst2ascii supports now both section relative and TEXT section relative
! 137: DATA/BSS symbol offsets
! 138: - hconsole.Main() takes now Hatari command line options as argument
! 139: - AHCC/GCC/VBCC examples on using (all) Native Features APIs
! 140: - Improved mingw cross-compilation support
! 141:
! 142: Fixed demos :
! 143: - 4-pixel plasma screen by TOS Crew (video, color change during only 4 cycles)
! 144: - HighResMode by Paradox (video, color changes in overscan med res at 60 Hz)
! 145: - It's A Girl 2 by Paradox (video, bottom border removal on a 60 Hz screen)
! 146: - Pacemaker by Paradox (microwire, YM sound was muted)
! 147: - Panic by Paulo Simoes (video, was broken since Hatari 1.7)
! 148: - Shforstv.exe by Paulo Simoes (video, did not work in STE mode)
! 149: - Sommarhack 2011 Invitro by DHS (CPU/MFP, top border not removed)
! 150: - Stax Compilation #65 (conflict with Mega ST's RTC)
! 151: - The Union Demo (cpu, memory access, ikbd, protection)
! 152: - The World Is My Oyster - Convention Report Part by Aura (video, res=3)
! 153: - Tymewarp (cpu, bus error)
! 154: - UMD 8730 by PHF (video, unused bits in STF color registers)
! 155: - IKBD no jitter by Nyh (acia/video, use a VBL of 160240 cycles)
! 156:
! 157: Fixed games :
! 158: - Batman The Movie (cpu, exception stack)
! 159: - Chart Attack Compilation (cpu, prefetch)
! 160: - Darkman (cpu, prefetch)
! 161: - Dragon Flight (cpu, illegal instruction)
! 162: - International 3D Tennis (cpu, prefetch)
! 163: - Leavin' Teramis loader text (video address at $ffe100)
! 164: - Lethal Xcess Beta (cpu, bus error, code running at $ff8800)
! 165: - Lethal Xcess (mfp, top border not removed sometimes)
! 166: - Maze (by Martin Dennett & John Parker)
! 167: - Parasol Stars (cpu, prefetch)
! 168: - Reeking Rubber (by Nature), Falcon game
! 169: - Titan (cpu, prefetch)
! 170: - To Be On Top (cpu, memory access, ikbd, protection)
! 171: - Warp (ikbd, interrupt used for decoding sectors)
! 172: - Xenon 2 (cpu, prefetch)
! 173:
! 174:
1.1.1.18 root 175: Version 1.7.0 (2013-06-24):
176: ---------------------------
177:
178: Emulation:
179: - TT video emulation :
180: - Extend the ST palette registers from 9bit to 12bit for ST modes
181: - Duochrome mode instead of monochrome for ST High
182: - Implementation of SampleHold in TT Hypermono video mode
183: - Sound changes :
184: - Better model of the YM2149 noise generation (no noticeable audible impact)
185: - Slightly better volume table (measured by Paulo Simoes on a real ST)
186: - CPU changes :
187: - Added experimental MMU emulation for the 68030 mode
188: - Handle the IACK cycles during an exception for HBL/VBL
189: - ACIA/IKBD changes :
190: - Full implementation of the MC6850 ACIA, giving much more robust
191: IKBD emulation
192: - Better timings for all IKBD commands (measured on a real STF)
193: - Clock is handled internally in IKBD, host date/time is used
194: only to initialize RTC at boot. I.e. pausing emulation doesn't
195: cause time skips when unpausing
196: - Fix slow mouse when absolute mode is used with scale values
197: - MFP changes :
198: - Fixed priority errors when simultaneous interrupts happened
199: - MFP's IRQ should be delayed by 4 cycles before reaching the CPU
200: - MFP's IRQ signal was not correctly updated in some cases
201: - Handle the IACK cycles between CPU and MFP during an exception
202: - FDC changes :
203: - Better delays for all the GAPs inside a track
204: - Emulate the disk's rotation and its angular position to get
205: accurate delays when accessing a sector header
206: - Internal timer for FDC was wrong and sometimes slower than expected
207: - Correct delay for type I commands with "verify" bit=1
208: - GEMDOS HD emulation changes :
209: - Support Fforce() for GEMDOS HD emulated files and close at Pterm*()
210: all internal handles to emulated files program had left open
211: - Fix: cut file and dir names to 8+3 chars like all TOS versions do
212: - Fix: GEMDOS HD emulation overwrote last 28 bytes of basepage space
213: for the started process command line (with the program header)
214: - Fix: Fwrite() content wasn't flushed to disk on each write, so later
215: Fopen() + Fread()s calls on such files (if they were not closed
216: in the meanwhile) could get data that was out of date.
217: - Fix: Dfree() return value
218:
219: Emulator:
220: - Fix: problems with run-time CPU type changing
221: - Fix: MIDI IRQs were not enabled if MIDI was enabled at run-time.
222: MIDI toggling will now imply reset
223: - Much improved console redirection functionality and a separate --conout
224: option for it (--bios-intercept doesn't anymore imply console redirection)
225: - Fixed a bug with the axes' mapping in the joystick's detection
226: - Display handling:
227: - Fix: max resolution limit wasn't handled properly for ST mode.
228: - Don't change TOS-calculated font size for VDI mode.
229: - Setup NVRAM video mode based on VDI mode, when in VDI mode.
230: This makes VDI mode work with EmuTOS also under Falcon emulation
231: which is useful as EmuTOS doesn't support native VIDEL expanders
232: - Limit VDI screen memory usage to 300kB, this allows upto 2048x1200
233: monochrome and 1024x600/800x768 16-color VDI screens
234: - GEMDOS HD emulation:
235: - Fix: to DTA host filename cutting to 8+3 chars when whole filename
236: was < 12 chars (caused EmuTOS crash)
237: - Give warning if GEMDOS dir/file path exceeds 8+3 characters
238: (as those won't work with real TOS)
239: - New --gemdos-case option to specify whether new dir/filenames
240: are forced to be created in upper (default) or lower case
241: - Giving empty string as GEMDOS HD dir disables GEMDOS HD emulation
242: - SDL GUI:
243: - Fileselector has "CWD" button for changing to Hatari's work directory
244: - Fileselector remembers previous position which is nicer with
245: large directories
246: - Make the drive leds blink with a brighter green when the FDC is executing
247: a command
248: - Profiler:
249: - Fix: profiler assert on invalid PC register values
250: - Fix: profiler usage in debugger files invoked by breakpoints
251: - Fix: profiler CPU & DSP cycles information is for previous instruction
252: - Fix: WinUAE CPU requires cycles counter usage for getting current
253: CPU instruction cycles
254: - Profiler provides timing information, based on used cycles
255: - Profiler provides CPU instruction cache misses information when using
256: cycle-exact WinUAE CPU core (which is Falcon emu default)
257: - Profiler top instruction count/cycles/misses lists show
258: the related instructions
259: - For DSP, profiler adds min/max cycle difference info to disassembly
260: - New "addresses" subcommand can be used to see addresses through which
261: code passed during profiling (e.g. while program seems frozen, this
262: gives much better overview of code that is being run, than cpu trace)
263: - New "callers" subcommand lists all addresses from which loaded
264: symbols' addresses were "called" from. This way one can e.g. find
265: in which contexts interrupt handlers were called and it can be
266: used to construction program execution callgraph
267: - New "save" subcommand saves profile address and caller information
268: to given file, with extra information needed for post-processing
269: - New "stack" subcommand that can be used to get backtraces during
270: profiling with symbols, for ':noinit' backtraces
271: - Debugger:
272: - New ':noinit' and ':quiet' breakpoint options. Quiet option
273: removes most of breakpoint matching "noise" and ':noinit' breakpoints
274: can be used with "profile stack" command, to prevent profile data and
275: related callstack information from being reseted on breakpoint match
276: - "blitter" and "dsp" subcommand added to "info" command, to show
277: blitter register values and DSP state (e.g. stack content)
278: - "prg" subcommand added to "symbols" command, for loading debug
279: symbols from DRI/GST symbol table in last started program
280: - "step" and "next" commands added for single stepping CPU and DSP code
281: -> 's' shortcut is now for "step", not "save"
282: - "--disasm" option for selecting between UAE core and external CPU
283: code dissassembler and setting output option flags for latter
284: - When -D option is used, also undefined/illegal DSP instructions and
285: DSP stack under/overflows invoke debugger, not just CPU issues
286: - Fix: when several breakpoints should have triggered
287: on the same address, only first was handled
288: - Fix: after breakpoint, 'c <n>' continues one instruction too little
289: - Fix: tracking breakpoint values were updated only when all conditions
290: matched, now they can be also used together with other conditions
291: - Fix: info command crash (triggered on NetBSD)
292: - Fix: disassember output bug on NetBSD (usigned char < -1 test)
293: - Fix: info osheader and basebase subcommands under MiNT
294: - Fix: debugger history duplicates removal
295: - Fix: expression expanding CPU "pc" for DSP shortcut commands
296: - Fix: expression expansion messing lines in command line history
297: - Remote API debugger commands can also use expression expansion
298: - Both single and double quotes can be used to mark expressions
299: - In addition to text section offset, data and bss section offsets
300: can be given when loading symbols (useful for Devpac symbols)
301: - Output what value was set by options if it's not otherwise shown by UI
302: - New 'cpu' and 'dsp' options to 'history' command for tracing just
303: one of these processors on Falcon
304: - Function arguments are shown in traces for all non-MiNT GEMDOS calls
305: and subset of arguments are now shown also for AES calls (values in
306: intin array and strings in addrin array)
307: - Add NVRAM read & write tracing
308: - Support for the basic Native Features and --natfeats option to control it:
309: http://wiki.aranym.org/natfeats/proposal
310:
311: Windows specific changes:
312: - "-W" option added for opening a console window. Like on all other platforms,
313: "-D" will now just toggle CPU exception handling
314: - Fix: console stderr redirection (used invalid "wr" mode)
315: - Fix Windows localtime() not supporting dates before 1970:
316: - TOS not being able to access files with such dates, or further files
317: - causing IKBD emulation crashes (wasn't problem with Cygwin,
318: just with Mingw builds)
319:
320: Tool updates:
321: - New hatari-profiler.py script for post-processing output from
322: profiler's CPU and DSP profiling "save" commands:
323: profile save <filename>
324: dspprofile save <filename>
325: - With symbol address information it can provide function level
326: instruction, processor cycle & i-cache miss statistics
327: - With callers information it can create function call callgraphs
328: and create callgrind format files for Kcachegrind GUI
329: - New gst2ascii tool to extract DRI/GST symbol table from Atari program,
330: for use with the profile data post-processor
331: - Added scripts for converting symbol tables in Devpac 3 listings and DSP LOD
332: files to a format understood by Hatari debugger 'symbols' command,
333: and to clean 'nm' output of GCC & VBCC built a.out binaries for it
334:
335: Other changes:
336: - HTML documentation indeces generated dynamically with JS
337: - Debugger tests building fixed
338:
339: Fixed Games:
340: Atomix (MFP, flickering bottom of the screen during samples)
341: BBC 52 Menu (Video/CPU, top border not removed)
342: Bolo (MFP, couldn't start a game)
343: Captain Blood (IKBD, fixed problem when setting the clock)
344: Fokker and Downfall (ACIA/IKBD, had regressed in Hatari v1.6.x)
345: Fuzion CD 77/78/84 Menu (MFP, random crash with digidrums in STF mode)
346: James Pond (Fuzion CD 25) (FDC, game stuck during the intro)
347: Microprose Golf (FDC, crash during the intro)
348: Spidertronic (Zuul CD 84) (crashed before 50/60 Hz screen)
349: Super Hang On and Super Monaco GP (MFP, flickering rasters)
350: The Final Conflict (MFP, locked during the sampled intro music)
351: The Sentinel (IKBD, mouse much too slow)
352: Zuul 100/101 Menu (MFP, flickering top border)
353:
354: Fixed demos :
355: Anomaly Demo Main Menu by MJJ Prod (MFP, flickering top/bottom borders)
356: Audio Artistic Demo by Big Alec (MFP, bad sample speed at start)
357: Decade Demo - Reset (MFP, flickering bottom border)
358: High Fidelity Dreams by Aura (MFP, flickering left rasters)
359: ST-NICCC 2000 Demo by Oxygene (FDC, demo ran slower than expected)
360:
361: Fixed apps :
362: Monst v1.x
363: Spectrum 512 (IKBD, mouse too slow)
364: Cubase (when MIDI was enabled after Hatari startup)
365:
366:
1.1.1.17 root 367: Version 1.6.2 (2012-06-24):
368: ---------------------------
369:
370: Emulation:
371: - ST video changes :
372: - Fixes a rare potential crash when running in color mode and switching
373: to monochrome mode for more than one VBL (eg : protection code used
374: in The European Demos and The Transbeauce II Demo)
375: - add more timings for the 224 bytes overscan detection on STE
376: - Correct write timing for BCHG/BCLR/BSET when removing borders
377: - Fix to top/bottom border removal in a rare case
378: - IKBD/ACIA changes :
379: - Handle commands 0x12 and 0x14 sent during the IKBD reset
380: (enable both mouse and joystick reporting at the same time)
381: - Handle the TX IRQ in the ACIA (bits CR6+CR5=0x01)
382: - Implemented IKBD set-clock function
383: - Sound changes :
384: - Improve YM2149 sound filtering to be closer to a real STF
385: - Increase output volume for STE DMA sound (compared to the YM2149's volume)
386: - DSP changes :
387: - Fix to DSP stack overflow handling
388: - Fix DSP to be reset on emulation reset
389: - Old UAE core specific changes :
390: - Changes in the prefetch code for some instructions
391: - Correct PC in stack when JMP generates an illegal address exception
392: - WinUAE core specific changes :
393: - 68040 MMU emulation fixes
394: - Fix GEMDOS/VDI emulation (illegal opcode) handling
395: - Fix WinUAE core to work with ST emulation (boot TOS 1.x)
396: - Fix FPU to be enabled when switching to TT emulation
397: - Fixes to FPU register value conversion
398: - Falcon changes :
399: - Support for Falcon/Videl screen borders
400: - Fixes to few Falcon IO registers
401: - Changed behavior of the Microwire registers in Falcon mode
402: - Misc changes :
1.1.1.18 root 403: - IO registers can only be read in supervisor mode
1.1.1.17 root 404: - Ignore FDC commands when no drive is selected
405: - Fix TT SCSI register reads to return all bits zero instead of set
406: - Fix for GEMDOS HD emu to direct special CON:/AUX:/PRN: device files
407: to TOS instead of trying to handle them as normal files
408: - printer output is single, not double buffered
409:
410: Emulator:
411: - RS232 input&output and printer output can be disabled from command
412: line by specifying an empty path
413: - Fix loading of memory snapshot from SDL GUI not to leave host cursor
414: enabled
415: - Video changes:
416: - Increase max allowed VDI resolution from 1280x960 to 1920x1200
417: - Revert preferred Videl resolution max zooming size setting from
418: host desktop resolution back to 832x576 it was in Hatari v1.4,
419: so that Falcon/TT emulation window sizes by default are closer
420: to ST/STE ones on larger resolution monitors
421: - Fix statusbar assert
422: - Add --sound-sync option to keep video synchronized with the audio
423: in case the OS audio's driver has some latency issues
424: - WinUAE core specific changes:
425: - Default to Falcon with WinUAE core (old CPU core still defaults to ST)
426: - Support run-time changing of CPU level, FPU type and machine type
427: from the GUI (also) with WinUAE CPU core
428: - Debugging improvements:
429: - Fix to debugger CPU cycle profiling modifying CPU state
430: - Profiling info is shown at end of disassembly lines
431: - Support for tracing all symbols loaded to the debugger,
432: this can be used to get function traces for both CPU and DSP
433: - Show args for all Bios and most XBios & Gemdos calls when tracing
434: - "info" command can output opcode tables for BIOS & XBIOS too
435: - More info to FDC, IKBD, Videl and Crossbar traces
436:
437: Other changes:
438: - Hatari OSX UI updated for Hatari v1.6.1 changes
439: - Hatari Python UI supports file paths with spaces in them and spaces in
440: Hatari options given through its control socket can be quoted with '\'.
441: - Support for alpha-numeric characters in Hconsole "text" command
442: - Fixes to Hatari UI and hconsole error handling and examples
443: - Fixed hatari-local-midi-ring.sh & hatari-local-rs232.sh arg handling
444: - zip2st removes intermediate directories from created floppy
445: - Fixed hmsa to handle files with multiple "." characters in their names
446: - TOS tester testing covers more GEMDOS functionality, works with
447: all Hatari supported TOS versions and HW configurations and it's
448: fully automated
449:
450: Fixed Games :
451: Hammerfist (fire button),
452: Automation 168 - Operation Clean Streets (prefetch in the CPU emulation)
453: Impossible Mission II (some versions had the same prefetch issue in the CPU)
454: Hades Nebula (fire button)
455: Zombi (IKBD set-clock was missing)
456:
457: Fixed demos :
458: Built-in Obsolescence (DSP stack overflow)
459: Japtro and Rising Force by Holocaust (FDC, buggy loader)
460: Delirious Demos IV (video, STE detection)
461: Antiques by Dune/Sector One (224 bytes STE overscan)
462: The Wave Of the Future by ICE (STE flickering top border)
463: Electrocution I by Sphere on Stax Menu 66 (STE flickering bottom border)
464: Musical Wonders 1990 by Offbeat (video, bottom border not removed)
465:
466:
1.1.1.16 root 467: Version 1.6.1 (2012-01-13):
468: ---------------------------
469:
470: This version is mainly a bugfix for 1.6.0, where monochrome mode
471: gave a black screen and was not usable.
472:
473: Emulation:
1.1.1.17 root 474: - Fixes to bootup issues in monochrome mode
1.1.1.16 root 475: - Better left border removal timings
476: - DSP external memory access cycles taken into account
477:
478: Other changes:
479: - Fix to allow build with Xcode 3.1.3/OS X 10.5.8 PPC
480: - Several fixes & updates needed to Hatari UI & hconsole
481: for them to work correctly with Hatari v1.6.x
482: - Test programs added for testing TOS booting with different
483: HW configurations and for finding out values needed in
484: Hatari keymaps
485:
486: Fixed Demos :
487: Vodka Demo - Kill The Beast 2 (left border removal)
488:
489:
1.1.1.15 root 490: Version 1.6.0 (2012-01-01):
491: ---------------------------
492:
493: The Hatari project has been moved from hatari.berlios.de to
494: http://hatari.tuxfamily.org/. Please update all bookmarks!
495:
496: Emulation:
497: - More accurate FDC emulation (correct status bits and commands' timings,
498: DMA transfer by blocks of 16 bytes, floppy change detection). This should
499: fix a lot of non working games
500: - More accurate microwire clock emulation
501: - SCSI class 1 (ICD) command support for drives > 1 GB
502: - Improved color conversion table so that colors are a little bit brighter
503: - Improve shifter (add another method to do 4 pixel hardware scrolling,
504: better emulation for 0 byte blank line)
505: - Some fixes to the IKBD emulation
506: - Better filters and model for sound emulation
507: - Correct VBL timings in TT monochrome (double clicking works now)
508: - More cycle accurate Falcon DSP <-> CPU emulation. All the demos that
509: needed 32Mhz CPU with the old CPU core in Hatari v1.5, work now at
510: correct 16Mhz with the WinUAE CPU core
1.1.1.16 root 511: - 030 MMU emulation with the WinUAE CPU core
1.1.1.15 root 512:
513:
514: Emulator:
515: - Switch to ST mode when using TOS <= 1.04
516: - Replace "--slowfdc" with "--fastfdc" option and default to fast FDC being OFF
517: - "--fast-boot" option to initialize "memvalid" system variables to
518: by-pass the memory test of TOS, so that the system boots faster
519: - "--force-max" option to force Hatari use specified maximum resolution
520: to avoid window size changes messing up Hatari video recording
521: - "--desktop-st" option to keep desktop resolution also for ST/STE modes
522: (unfortunately without scaling besides the low-res doubling)
523: - GEMDOS HD emulation:
524: - Allow drives up to Z: (not Y:)
525: - Unique name for each partition
526: - Warn user when using too old TOS version
527: - Dfree() reports host disk total and free size if they're below
528: value understood by TOS and unlike earlier, it forwards Dfree()
529: requests for other (IDE/ACSI image) partitions to TOS
530: - Debugger improvements:
531: - "history" command to list instructions executed before entering
532: debugger
533: - each trace output line is flushed to avoid it being buffered
534: - Fixed behavior of the Caps Lock key
535:
536: Other changes:
537: - Fixes to Hatari UI Hatari window embedding
538: - Latest Linux sfdisk is borked so atari-hd-image script creates
539: HD image partition table now itself (experimental)
540: - Windows needs also HOMEDRIVE for full home path in case Hatari
541: isn't installed on C:, bug 18297
542: - Minor fixes
543:
544:
545: Fixed Demos :
546: Overscan Demos and Shforstv.exe by Paulo Simoes (black line at top),
547: ACF - Just Bugging (FDC), Delirious Demo IV (FDC, shifter),
548: Overdrive Demos - Snirkel Screen (IKBD), Oxygene - Stniccc2000 (FDC),
549: Cream - Madness (FDC)
550:
551: Fixed Games :
552: Superior 65 - Super Monaco GP, DBug 24 - Knightmare, Pompey Pirates 27 - X-Out,
553: Fuzion 32 - Pang, Fuzion 108 - The Simpson, Fuzion 40 - Super Grand Prix,
554: Fuzion 46 - Warlock, Fuzion 51 - Navy Seals, Fuzion 61 - Gods, Fuzion 78 -
555: Carmen Sandiego, Fuzion 82 - Flight Of The Intruder, Fuzion 83 - RBI Baseball 2,
556: Fuzion 102 - Exile, PP46 - Yolanda, Medway Boys 15 - Murders In Venice,
557: Medway Boys 83 - Yogi Bear, BBC 2 - Platoon, BBC 39 - The Deep, Superior 71 - The
558: Running Man, Adrenaline 24 - Demon Blue, Superior 93 - Alien Storm
559:
560: Fixed Misc Programs :
561: Procopy 1.50, Terminators Copy 1.68, maxYMizer (caps lock key)
562:
563:
1.1.1.14 root 564: Version 1.5.0 (2011-07-19):
1.1.1.15 root 565: ---------------------------
1.1.1.14 root 566:
567: Emulation:
568: - Alternative CPU core based on WinUAE for more accurate future
569: HW interaction emulation (see readme.txt on how to enable it)
570: - Use precise clocks values (as described in Atari's official schematics)
571: for better video/dma audio synchronisation (e.g. More Or Less Zero by DHS)
572: - DSP:
573: - Some DSP-timing sensitive Falcon demos that by luck happened to work
574: with Hatari v1.4, don't work anymore in v1.5 with the default UAE CPU
575: core. This is because while DSP cycle accuracy has been improved,
576: the default UAE CPU core isn't fully cycle accurate. The experimental
577: WinUAE core is needed to run them
578: - Undocumented 2 bit shift special case for DSP SSI <-> crossbar exchanges
579: in hanshake mode with 32 Mhz clock (fixes DSP MP2 player used in many
580: demos & programs, but that requires also using WinUAE core)
581: - Sound improvements:
582: - Major rewrite and accuracy improvements in STE DMA sound, including
583: emulation of the 8 bytes FIFO, giving results nearly identical to
584: a real STE (e.g. HexTracker by Paulo Simoes)
585: - Improved precision in sound emulation, with nearly no rounding errors
586: over successive VBL (correct sound latency on US TOS running at 60 Hz)
587: - By default mix 3 YM voices using a lookup table of values
588: measured on real STF to improve digisound (e.g. Flashback demo sound)
589: - Remove old ST Sound's code used for tone and noise step compute
590: (some low period values were not correctly emulated)
591: - Video emulation on STF/STE:
592: - On STE, correctly shift display 8 pixels to the left when using
593: 224 bytes overscan
594: - Add support for spec512 mode in med res (fixes 'Best Part Of The
595: Creation' in 'Punish Your Machine', 'HighRes Mode' demo by Paradox)
596: - Correctly shift the screen 4 pixels to the left when left border is removed
597: in med res overscan (Hatari 1.4 handled only low res, fixes 'No Cooper'
598: by 1984, 'Best Part Of The Creation' by Delta Force)
599: - Precisely emulate the number of frames per sec (eg 50.053 fps in PAL
600: instead of the usual 50 Hz)
601:
602: Emulator:
603: - Atari program given as argument to Hatari will be automatically
604: started after TOS boots. GEMDOS hard disk directory can now be
605: give also as an argument, not just as a (-d) option
606: - TOS4 or --machine falcon option use enables DSP emulation now
607: (follow them with --dsp none to disable DSP emulation)
608: - Memory state saving and restoring fixes, especially for Falcon
609: - Crossbar state is included -> state file ABI break
610: - AVI recording options can be set in the new [Video] config file section
611: - AVI recording supports non integer frame rates.
612: - Falcon/TT Videl/hostscreen improvements:
613: - New setting/option for using Desktop resolution & scaling
614: in fullscreen instead of changing the resolution. On by default
615: - User's desktop size is used as max limit for Videl zooming.
616: Requires SDL >= 1.2.10
617: - Videl resolution change is done immediately, not 3 VBLs late
618: - Fix issues in switching between same sized VDI & TT resolutions
619: - SDL GUI improvements:
620: - DSP can be disabled from the GUI without needing to restart Hatari
621: - Disk access LED and desktop-resolution options
622: - AVI video length (mins:secs) is shown in titlebar during recording
623: - Option for cropping statusbar from videos & screenshots
624: - Fileselector scrollbar can be used with mouse
625: - YM mixing method selection
626: - Debugging improvements:
627: - New disassembler with more Motorola like syntax
628: - CPU & DSP "disasm" and "memdump" commands accept register & symbol
629: names in addition to numeric addresses / address ranges
630: - Option to disable Falcon mic
631: ("--mic off" is needed for Mudflap debugging)
632: - "--run-vbls" can be set also at run-time
633: - "--bios-intercept" can be toggled from debugger (not just enabled)
634: - BIOS CON: output is converted to ASCII and redirected to host console
635: with the --bios-intercept option
636: - Support for tracing DSP, Videl and Crossbar
637: - Support for tracing AES calls. VDI calls can now be traced
638: also without using an extended VDI resolution
639: - BIOS/XBIOS/GEMDOS/VDI/AES/Line-A/Line-F opcode breakpoint support
640: - TEXT, DATA and BSS variables for addresses of corresponding segments
641: in currently loaded program
642: - "aes", "vdi" and "gemdos" subcommands for "info". Without arguments
643: they will output information about corresponding OS part state,
644: with (a non-zero) argument, opcode/call name table is shown.
645: "video" subcommand for showing video related information.
646: "cookiejar" subcommand for showing cookiejar contents.
647: - "file" subcommand to "lock" that executes debugger commands from
648: given file when debugger is entered (or ":lock" breakpoint is hit)
649: - ":lock" option to breakpoints that will show (without stopping the
650: emulation) the same output as what's shown on entering the debugger
651: - ":file" option to breakpoints that executes the commands from
652: given file when the breakpoint is hit. This can be used to chain
653: debugger actions
654: - multiple breakpoints options can be specified per breakpoint
655: - parenthesis in "evaluate" command are used to indicate memory
656: accesses (instead of operator precedence like earlier)
657: - DSP and CPU code profiling functionality. Provides statistics about
658: profiled code (executed code address ranges, max and total counts
659: and cycles), lists addresses/instructions taking most cyles and if
660: symbols are loaded, what were the most used symbol addresses.
661: - Profiling information is also shown in disassembly output
662:
663: Other changes:
664: - hmsa tool can create empty disk images in addition to converting
665: disks between ST & MSA formats
666: - Minimal hatari-tos-register.sh Linux init script (example)
667: to register Hatari as binfmt_misc handler/runner for TOS programs
668: - hatari-console.py renamed to hconsole.py, documented and made extensible
669: (hconsole is command line Python interface for Hatari remote API)
670: - Support for plain Makefiles removed (except for internal tests),
671: only CMake is used for configuring and building Hatari
672: - CMake doesn't require anymore working C++, C-compiler is enough
673:
1.1 root 674:
1.1.1.13 root 675: Version 1.4.0 (2010-06-12):
676: ---------------------------
677:
678: Emulation:
679: - IDE improvements:
680: - Support for second drive (IDE slave)
681: - WIN_FORMAT command (allows HD Driver to format IDE drives)
682: - GEMDOS HDD emulation:
683: - Minor fixes to Fseek(), Fopen(), Fdatime() (e.g. Pure debugger works)
684: - On TOS v4 Fread() size arg is unsigned, on earlier TOS its signed
685: (bad code can use -1L to read whole file instead getting fail on TOS4)
686: - Prevent DTA and read/write functions accessing invalid memory areas
687: - Programs can now change read-only files to be writable
688: - Falcon sound emulation:
689: - Microphone (jack) emulation in Falcon mode (requires portaudio library)
690: - SSI direct sound entrance ("Audio Fun Machine" and winrec are working)
691: - DMA sound recording
692: - Crossbar handshake mode transfers
693: - Max VDI rez increased to TT-hi size (1280x960)
694: - 68020+FPU changed to 68EC030+FPU (no MMU 030) for Falcon and TT modes
695: (Some Falcon programs didn't work with 020)
696: - Video emulation on STF/STE:
697: - correctly shift the screen 4 pixels to the left when left border is removed
698: - add support for STE's 224 bytes overscan line without stabilizer
699: - when reading $ff8205/07/09 on STE, take into account the value
700: of horizontal scrolling/prefetch and linewidth
701: - when writing to $ff8205/07/09 on STE, correctly handle the case
702: where the write is made while display in ON
703: - LMC1992 emulation / STE sound filtering
704:
705: Emulator:
706: - Host mouse is centered to Hatari window on Falcon resolution changes
707: (helps in synchronizing host and emulated mouse positions)
708: - Toggling fullscreen doesn't unpause paused emulation
709: - Falcon/TT resolution zooming is now controlled by separate options for
710: monitor aspect ratio correction and maximum zoomed Hatari window size.
711: This can reduce Hatari window resolution size changes significantly and
712: makes e.g. FUN's Alive demo viewable in fullscreen mode. Limits for
713: window size are also checked to see whether ST/STE low rez should be
714: zoomed and how much of borders can be shown (when borders enabled)
715: - Split the Screen dialog into two separate dialogs, one for Atari
716: monitor emulation setup and one for Hatari window setup
717: - GEMDOS drive emulation:
718: - support long host directory names and much improved long filename support
719: - convert host filename chars invalid in TOS to valid ones ('@')
720: - use TOS filename matching instead of glob() (can match names with [])
721: - Options for preventing floppy image (--protect-floppy) and GEMDOS
722: emulated drive directory (--protect-hd) modifications
723: - AVI file recording:
724: - video can be stored as BMP or as PNG images
725: - audio is stored as 16 bits stereo PCM
726: - Statusbar shows CPU type & speed
727: - Can create blank 2.88MB (ED) and 1.44MB (HD) floppy images
728: from the GUI in addition to DD & SD images. After creating
729: new floppy image, one can directly insert it to A: or B:.
730: - Tracing for BIOS, XBIOS, GEMDOS and VDI traps gives in addition
731: to the opcode, also the name of the corresponding OS function
732: - Major debugger improvements:
733: - TAB-completion for debugger commands, command arguments and
734: symbol names. Requires readline library
735: - "parse" command and --parse Hatari command line option to
736: execute debugger commands from a file
737: - "stateload" and "statesave" commands for memory snapshots
738: - "trace" command for tracing what the emulated code does
739: - "symbols" command for loading and listing CPU & DSP code & data
740: symbols/addresses. Code symbols are shown on CPU & DSP disassembly
741: and code & data symbols can be used in breakpoints
742: - "evaluate" command for doing calculations. Register and symbol
743: names in expressions are replaced by their values. '$' will be
744: TAB-completed to last 'evaluate' command result
745: - "cd" command to change Hatari work directory
746: - "exec" command to execute shell commands (ENABLE_SYSTEM_DEBUG_CALL)
747: - "info" command for showing Atari HW and OS information
748: - "lock" command for setting what information is shown every time on
749: entering the debugger, e.g. disassembly or memdump from given address.
750: "regaddr" argument does that from address pointed by given register
751: - improved register name handling + fixed DSP reg name matching
752: - if both sides of conditional breakpoint condition are identical, replace
753: right side with current value of given expression (e.g. if it's "d0",
754: use current D0 value). If the comparison is for inequality ("!"),
755: output the value & break only when the value changes from the previous
756: value (not original like with other comparisons). Symbols support
757: - ":trace" option to trace/output breakpoint hits without breaking
758: - breakpoints count hits and can be optionally removed after first hit
759: (":once" option) or triggered only on every Nth hit (":<count>" option)
760: - dsp/address command is a shortcut for conditional breakpoints and its
761: argument can be an expression (see "evaluate" above)
762: - Display DSP instructions cycle timings in disasm mode (in cycles)
763: - Configuration options for how many lines to disasm & memdump
764: - Fix VBLs/s counting to work also when --run-vbls isn't used
765:
766: Other changes:
767: - Considerably expanded debugging and hard disk sections in manual
768: - CMake build support, this fixes OSX building and adds support
769: for building Hatari in different directory from the sources
770: - Removed autotools usage/support, added CMake "configure" script
771: - Hatari remote control programs updates (see their own release notes
772: for details)
773:
774:
1.1.1.12 root 775: Version 1.3.1 (2009-09-05):
776: ---------------------------
777:
778: This is only a bug fix release:
779: - GEMDOS HD emulation works together with ACSI HD image again
780: - Fix incorrect use of DESTDIR in python-ui installation
781: - Fix memdump/disasm in python-ui
782:
1.1.1.10 root 783:
1.1.1.11 root 784: Version 1.3.0 (2009-08-16):
785: ---------------------------
786:
787: Emulation:
788: - Hugely improved DSP emulation:
789: - Many more DSP using games/demos/apps work now
790: - Preliminary sound support (e.g. most DSP based .MOD-playback works)
791: - Better cycle counting / accuracy
792: - Many speed improvements
793: - Major rewrite of the internal work/structures of video.c :
794: - Allow to mix 50/60 Hz lines of 508/512 cycles and to keep correct
795: video/cpu sync (fixes TCB in SNY, DI in MindBomb, TEX in Syntax Terror).
796: This also adds support for dynamic calculation of HBL/Timer B positions
797: when freq/res are changed (fixes SHFORSTV by Paulo Simoes)
798: - Improved Timer B accuracy when starting it in a rare case
799: - Handle end of line as well as start of line for Timer B
800: in event count mode (using MFP's AER) (fixes Seven Gates Of Jambala)
801: - Add another 'O byte' line method (fixes No Buddies Land)
802: - Some more color alignment with the shifter when using movem.w/movem.l
803: (for spectrum512 like images)
804: - Improved Blitter timings / cycles counting
805: - GEMDOS emulation can emulate appropriately named host subdirectories
806: as separate partitions
807: - Bug fixes for GEMDOS HD emulation Fopen and Fseek calls
808:
809: Emulator:
810: - DSP changes:
811: - DSP state saved to memory snapshots
812: - Threading support removed from DSP emulation (for better synchronization)
813: - "keyDebug" configuration file setting was renamed to "keyPause"
814: - Major debugger improvements:
815: - Invoked with AltGR+Pause. New "keyDebugger" configuration file setting can
816: be used to change this
817: - Show PC/HBL/VBL/cycles when entering debugger
818: - Support multiple number bases. By default values are expected in
819: decimals; $-prefix is needed for hexadecimal and %-prefix for binary
820: values. Default number base can be changed
821: - Internal debugger can be used to debug also DSP code
822: - Support for (PC) address breakpoints and conditional breakpoints
823: (watchpoints), both on CPU and DSP. Watchpoints support multiple
824: conditions, register & memory values and some internal Hatari
825: variables like VBL, HBL, LineCycles, FrameCycles
826: - Support for stepping CPU and DSP code
827: - Emulated programs can now change Hatari options like --fast-forward,
828: --trace etc. by giving a suitable Hatari command line string to
829: XBios call 255. This is enabled when Hatari is started with
830: the --bios-intercept enabled
831: - Support Videl horizontal fine scrolling for 16 bpp and 32 bpp host screens
832: - Process successive motion events before returning from event handler
833: (to fix analog joystick jitter slowing Hatari input processing)
834: - FPS measurement shown when emulation is paused & --run-vbls option
835: - Mouse grab option (--grab)
836: - Some fixes for building Hatari with MS-VC6 and for the Wii
837: - Statusbar assert (bug #15512) fixed
838: - Reworked the main dialog of the GUI and split the disk dialog into two
839: separate dialogs, one for floppy setup and one for hard disk setup
840:
841: Utilities:
842: - New atari-hd-image.sh script for creating HD image files
843: - External Python GUI and CLI interfaces for Hatari in main repo
844:
845: Documentation:
846: - Debugging and performance sections added to manual
847:
848:
1.1.1.10 root 849: Version 1.2.0 (2009-01-24):
850: ---------------------------
851:
852: - The Hatari project has been moved from hatari.sourceforge.net to
853: http://hatari.berlios.de. Please update all bookmarks!
854: - New zip2st.sh shell script for converting .ZIP files into .ST disk images
855: - Fixed a bug that could write data to the wrong disk image (resulting
856: in data loss)
857:
858: Emulation:
859: - MIDI input supported in addition to output; --midi option is now
860: replaced with separate --midi-in and --midi-out options
861: - Support for STE hardware horizontal scrolling in medium res
862: - Make the FDC Read Address command always return success, even if
863: we don't really return the correct bytes for now (fixes a few game loaders)
864: - Improved shadow register when writing to the YM2149 (fixes X-Out music)
865: - Cleaner blitter code with improved timings
866: - Emulation of interrupts jitter for HBL and VBL + improved timing accuracy
867: - Improve color alignment with the shifter (for spectrum512 like images)
868: - Fix to the fire button detection reported in some games
869: - Added IDE hard disk emulation
870:
1.1.1.11 root 871: Emulator:
872: - Pause/unpause shortcut
873:
1.1.1.10 root 874:
1.1.1.9 root 875: Version 1.1.0 (2008-11-29):
876: ---------------------------
877:
878: Emulation:
879: - Falcon DSP emulation good enough to improve some few games/demos, e.g.
880: Virtual City. (most still work better with emulation disabled, though)
881: - New sound engine that fixes all problems with the old one
882: - 16-bit stereo sound (instead of 8-bit mono)
883: - Improved blitter emulation (blitter cycles emulation, blitter interrupt)
884: - Improved STE support for some video registers (hscroll, linewidth, ...)
885: - Improved printer emulation
886: - Improved STE microwire emulation
887: - Improved support for games & demos which are accessing IKBD directly
888: (including a fake 6301 emulation for the known IKBD programs)
889: - ACSI emulation fix to get HDDriver working
890: - Some other minor bugfixes to ST/STe emulation (FDC, MFP, PSG, RS-232)
891: - Improved MFP emulation
892: - Improved 68k emulation (move.b Ax,(Ay) and extb.l)
893: - Fixed bugs in the GEMDOS HD emulation (Pexec() etc.)
894:
895: Emulator:
896: - Statusbar and overlay led features
897: - Screenshots work also in VDI/TT/Falcon mode and are saved as PNGs
898: - Support for automatic frameskip and pausing emulation
899: - Support for embedding Hatari window (on X11) and control socket
900: - Improved memory snapshot function
901: - Improved the "trace" debug function
902:
1.1.1.7 root 903:
1.1.1.8 root 904: Version 1.0.1 (2008-03-30):
905: ---------------------------
906:
907: - This is just a bug-fix release, without new features.
908: - Fixed some compile problems on non-unix-like systems (like MingW).
909: - Fixed crashes in Spec512 emulation code ("Dan Dare 3" and little endian ARM).
910: - Blitter source address is not incremented anymore in operation mode 0 and 15.
911: - STE small overscan video effect is now displayed on the left side instead
912: of the right side (fixes "Just Musix 2" menu for example).
913: - Hatari now works on 256 color displays right again.
914: - Fixed PSG mirror register emulation (fixes e.g. sample sound in "Ooh Crikey
915: Wot A Scorcher" demo).
916:
917:
1.1.1.7 root 918: Version 1.0.0 (2008-03-17):
919: ---------------------------
920:
921: - The user's configuration files are now located in the directory ~/.hatari/
922: instead of the $HOME directory itself.
923: - Improved VDI resolution mode (resolution can now be change in small steps).
924: - The 'Frame Skip 8' option can now be correctly selected, too.
925: - Fixed some bugs/problems in the GEMDOS HD emulation (with Fopen & Fcreate).
926: - Keyboard shortcuts for saving and restoring memory snapshots.
927: - Hatari can now be compiled with CeGCC, too.
928: - Fixed some problems with the FPU emulation. NeoN Grafix renders now right.
929: - Writing to floppy disk images works now also with TOS 4.0x.
930: - A lot of source code clean-up and beautification.
931: - Monochrome mode now runs in 71 Hz, and 60 Hz color mode now also really runs
932: with 60 Hz refresh rate.
933: - Fixed memory snapshot files (some important data has not been saved before).
934: - It is now possible to automatically load/save memory snapshots at start/exit.
935: - Fixed some bugs in the file selection dialog.
936: - Some minor improvements in the GUI: Improved text edit fields, "Cancel"
937: buttons can now be activated by pressing the ESC key, and Hatari asks the
938: user before resetting and quitting the emulator.
939: - The Hatari executable is now relocatable (so the RPM can be relocated, too).
940: - It's now possible to enable special trace output with the "--trace" option.
941: - The size of the borders can now be specified in the hatari.cfg file.
942: - Fixed Spec512 screen plotting on big endian machines.
943: - Native screen conversion functions for 32 bpp host display mode.
944: - Reworked the command line options.
945: - Added missing read for "clr" in 68000 CPU mode.
946: - Cycle correct MULU/MULS/DIVU/DIVS in 68000 CPU mode.
947: - Support for 68000 instructions pairing
948: - Better emulation of exception stack frame (bus/address error), used in some
949: protections.
950: - Don't change illegal 68000 opcodes $8, $a and $c if no cartridge is inserted.
951: - Ensure ACIA has consistent values when reset.
952: - More precise interrupt handling, allowing to mix CPU cycles and MFP cycles
953: with greater precision.
954: - Various improvements in MFP emulation (stop/start timer without writing to
955: data register, reading data register, handle pending cycles when timer
956: "wraps" (i.e. data register reaches 0), ...). Supports programs using some
957: very "fast" timers (Overscan Demos, ULM Demos) and requiring nearly cycle
958: exact synchronisation with the 68000.
959: - Mostly correct wait states when accessing sound registers (add wait state for
960: $ff8801/ff8803 when needed).
961: - Correct values of cycle counters read & write accesses for the most common
962: cases used for fullscreen/hardscroll.
963: - Correct values for Video_CalculateAddress, taking into account frequency and
964: left/right borders' state, needed for correct synchronisation between video
965: and cpu.
966: - Improve top/bottom border removal, including 60 Hz bottom border, as well as
967: "short" 50 Hz screen (171 lines)
968: - Support for all left/right border removal, including 0 byte lines.
969: - Support for hardscroll on STF, including the most recent ones using 4/5 lines.
970: - Support for 4 pixels horizontal hardscroll on STF (ST Connexion in Punish
971: Your Machine)
972: - Small adjustements in cycle precise color handling (spec512.c)
973:
974:
975: Version 0.95 (2007-05-12):
976: --------------------------
977:
978: - This release brings you basic Atari TT and Falcon emulation!
979: Please note that both new emulation modes are still highly experiemental,
980: some few games and demos work, but most still have more or less big
981: problems.
982: - Basic emulation of Falcon video shifter (Videl), NVRAM and DMA sound is in
983: place. The biggest drawback: There is no working Falcon DSP emulation yet.
984: - Screen/Shifter emulation timings have slightly been changed. Some things
985: now work better, some others work worse...
986: - Some patches for compiling on RiscOS and AmigaOS have been included.
987: - Compiling Hatari for Windows now works better.
988: - Added Hatari icon (hatari-icon.bmp).
989: - Fixed "movec" bug in 68020 CPU mode.
990: - Keyboard shortcuts for loading & saving memory snapshots (AltGr+k & AltGr+l).
991: - The built-in debugger has been slightly improved to be more user-friendly.
992: - Added "hmsa" tool - a little program for converting .MSA files to .ST and
993: vice versa.
994:
995:
1.1.1.6 root 996: Version 0.90 (2006-08-22):
997: --------------------------
998:
999: - Better Spectrum 512 support (60Hz support, improved I/O memory waitstates).
1000: - STE right border opening support (used in Obsession, Pacemaker).
1001: - Blitter Smudge mode support (used in Pacemaker demo).
1002: - Wheel-mouse simulates cursor up and down.
1003: - Work-around to FDC handling, --slow-fdc option is not anymore needed.
1004: - Bugfix to MFP, sound works now in more YMRockerz releases.
1005: - Bugfix to GEMDOS path handling (Hatari SIGSEGV).
1006: - Bugfix to emulated memory initialization (4MB was cleared earlier, now
1007: exactly the amount set up for Hatari. Saves memory on embedded systems
1008: if less than 4MB is specified.)
1009: - Re-written command-line option handling.
1010: - (Again) lots of code const/static, type usage and indentation cleanup.
1011: - Preliminary support for TOS 3.0x and 030 TT software that runs in ST
1012: resolutions and doesn't need PMMU.
1013: - Native GUI for Mac OSX.
1014: - ACSI emulation fixes to get HD formatting to work with AHDI 5. HD emulation
1015: now works quite fine with AHDI 5 (but other HD drivers are currently not
1016: supported).
1017: - Joystick shortcut changed to toggle cursor emulation between ports 0 and 1.
1018: - Keys for all Hatari shortcuts can now be configured from hatari.cfg.
1019: - Added command line option for setting ST keyboard mapping.
1020: - Joystick command line option requires now parameter for a port for which
1021: the joystick cursor emu is enabled.
1022: - Fixed relative mouse event handling in zoomed low-rez.
1023: - Hatari shows now more of the bottom borden (screen size is now 384x276
1024: instead of 384x267).
1025: - Fixed sync delay timings - sound should now be better (e.g. on Mac OS X).
1026: - Added basic support for compiling Hatari with MinGW.
1027:
1028:
1.1.1.5 root 1029: Version 0.80 (2005-10-12):
1030: --------------------------
1031:
1032: - Support for STE hardware emulation: STE palette, STE shifter (horizontal fine
1033: scrolling, split screen effects), DMA sound and STE joypads.
1034: See the manual for a list of working STE applications/games/demos.
1035: - Hatari can now emulate up to 14 MiB ST RAM instead of only 4 MiB.
1036: - Support for parallel port joysticks.
1037: - Improved GEMDOS HD emulation (added Fattrib() call).
1038: - Adding and removing a GEMDOS or ACSI hard disk should now work correctly.
1039: - Re-factoring of the screen conversion functions.
1040: - Improved manual: Now with screenshots of the options dialogs.
1041:
1.1 root 1042:
1.1.1.4 root 1043: Version 0.70 (2005-06-05):
1044: --------------------------
1045:
1046: - As always: Code cleanup and bug fixes.
1047: - No more crashes when a program tries to access illegal sector numbers.
1048: - Improved built-in ROM cartridge.
1049: - Rewrote the IO memory emulation code -> Better compatibility.
1050: - Support for TOS 1.06 and TOS 1.62
1051: - Emulated CPU can now also be run at 16 MHz or 32 MHz.
1052: - File selection dialog scrollable with mouse wheel or cursor keys, too.
1053: - Hatari now works on 64-bit host CPUs, too.
1054: - Floppy disk images can now be set writable/write-protected in the GUI.
1055: - Hatari can now also load a global configuration file (e.g. /etc/hatari.cfg).
1056: - Configurable logging functions.
1057:
1058:
1.1.1.3 root 1059: Version 0.60 (2004-12-19):
1060: --------------------------
1061:
1062: - Again some code cleanup and bug fixes.
1063: - Window/fullscreen mode is now correctly initialized from the configuration
1064: file.
1065: - Added --window command line option to force a start in window mode.
1066: - Added alert boxes to show warnings, errors and information messages.
1067: - PC mouse pointer is now better in sync with the ST mouse pointer.
1068: - It's now possible to load an alternative cartridge image file.
1069:
1070:
1.1.1.2 root 1071: Version 0.50 (2004-07-26):
1072: --------------------------
1073:
1074: - A lot of internal code cleanup and bug fixes.
1075: - Added a dialog for creating new blank floppy disk images.
1076: - The source code has been optimized for better emulation speed.
1077: - Added RS232 emulation (still very experimental and not very well tested! It
1078: seems not to work reliable yet. Help for debugging is very appreciated!).
1079: - Some bugs in the 68000 emulation have been fixed.
1080: - The emulator now checks for double bus errors and stops the emulation if
1081: necessary (instead of crashing the emulator).
1082: - Timer-D is now patched correctly again.
1083: - The old font has been replaced by two new fonts so that the GUI now looks
1084: better in high resolutions.
1085: - The fonts are now linked into the executable.
1086: - Added support for DIM floppy disk images.
1087:
1088:
1089: Version 0.45 (2003-10-30):
1090: --------------------------
1091:
1092: - This is just a minor release on the way to version 0.50. It is not very
1093: well tested, so be warned!
1094: - New build system (with a "configure" shell script).
1.1.1.5 root 1095: - A disk image destroying bug in the MSA compression function has been fixed.
1.1.1.2 root 1096: - It is now possible to redirect the printer output into a file.
1097: - Experimental MIDI output support.
1098: - Added the possibility to save memory snap shots.
1099: - Pending HBL and VBL interrupts are now emulated correctly (I hope).
1100: - Some speed improvements.
1101: - GEMDOS HD emulation now also works with EmuTOS.
1102:
1103:
1.1 root 1104: Version 0.40 (2003-07-11):
1105: --------------------------
1106:
1107: - Support for ZIP and GZIP compressed disk images!
1108: - Configuration file support for loading and saving the emulator settings.
1109: - Hatari now works on machines with Sparc CPUs, too.
1110: - Fixed a problem that slowed down the emulator in monochrome mode when using
1111: TOS 2.06.
1112: - Inverted monochrome mode is now supported, too (some games like Maniac
1113: Mansion use this).
1114: - Added Mega-ST compatible real time clock (RTC) emulation.
1115: - The GEMDOS HD emulation has been improved (it now also works with lower-case
1116: file names) and many bugs have been fixed there.
1117: - Improved keyboard mapping (added mapping via PC keyboard scancode and via
1118: reloadable mapping files).
1119: - The screen rendering routines have been generalized (less differences between
1120: windowed and fullscreen mode).
1121: - Hatari can now be cross-compiled, too. You can even compile it for MiNT now.
1122: However, it does not run very well there yet.
1123: - Support for RAM TOS images.
1124: - Improved memory mapping (the different memory regions should now behave much
1125: more like on a real ST).
1126: - Improved M68k exceptions (bus errors and exception cycle timings).
1127: - Fixed some bugs in the extended VDI resolution mode (now it is working with
1128: EmuTOS, too).
1129: - Some games that poll the write-protection signal of the FDC to check for
1130: disk changes should now be working, too.
1131:
1132:
1133: Version 0.30 (2003-03-12):
1134: --------------------------
1135:
1136: - Some parts of the code accessed the SR directly to read the IPL -
1137: however the UAE CPU core only updates the SR when doing a MakeSR() first.
1138: So this is done in the affected code parts now, too.
1139: - The IPL wasn't raised when a MFP interrupt occured - fixed now.
1140: - Full screen resolution for ST-Low can now be selected from the screen setup
1141: dialog.
1142: - The IKBD emulation does not longer duplicate joystick fire buttons when
1.1.1.9 root 1143: a game tries to use both, joystick and mouse
1.1 root 1144: - Improved audio timer function - the code should now be a little bit faster.
1145: - Resynced Hatari's UAE CPU core with UAE 0.8.22 - this fixes some bugs in 68k
1146: instructions like ABCD and SBCD.
1147: - Added patches for TOS 2.05 so that this TOS version should now work, too.
1148: - Rewrote TOS patching routine. It is much more flexible now.
1149: - Removed 0xa0ff opcode for VDI resolutions; using GEMDOS_OPCODE now instead.
1150: - Fixed MMU RAM size configuration bug.
1151: - Rewrote some more screen conversion functions in C.
1152: - When a bus or address error occurred, the PC was often not set to the
1153: right exception handler routine. This has been fixed now.
1154:
1155:
1156: Version 0.25 (2002-12-30):
1157: --------------------------
1158:
1159: - Patches for big endian systems (Spectrum 512 pictures are now working there).
1160: - Hatari now also compiles and runs under Mac OS X.
1161: - Blitter emulation has been added.
1162: - There is now the possibility to save YM or WAV sounds.
1163: - Big VDI resolutions (e.g. 800x600) are now supported, too.
1164:
1165:
1166: Version 0.20 (2002-02-18):
1167: --------------------------
1168:
1169: - Added graphical user interface for configuration of the emulator settings.
1170: - Real joysticks can now also be used to simulate the ST joysticks.
1171: - Yet another bugfix for BeOS (lseek again...)
1172: - Support for hard disk images.
1173:
1174:
1175: Version 0.11 (2001-10-10):
1176: --------------------------
1177:
1178: - High level (GEMDOS) harddisk emulation.
1179: - ST-Med/ST-Low mixed mode now works.
1180:
1181:
1182: Version 0.10 (2001-08-16):
1183: --------------------------
1184:
1185: - Improved CPU cycles emulation.
1186: - Added Spec512 support.
1187: - Some keyboard shortcuts.
1188: - Added the possibility to switch between fullscreen and window mode.
1189: - ST Medium resolution conversion routine.
1190: - Built-in debugger.
1191: - Added possibility to grab screenshots.
1192: - Sound support (not working very well yet).
1193:
1194:
1195: Version 0.05 (2001-06-01):
1196: --------------------------
1197:
1198: - Joystick emulation via cursor keys.
1199: - ST-LOW resolution conversion routine is now working on big-endian machines.
1200:
1201:
1202: Version 0.04 (2001-05-27):
1203: --------------------------
1204:
1205: - Added Stefan Berndtsson's patch for big-endian machines.
1206: Hatari now runs also with non-x86 Linux machines! Thanks Stefan!
1207: - Rewrote the ST-LOW resolution conversion routines in C ==> ST-LOW now works!
1208: - Added some of the WinSTon patches Paul Bates recently published
1209: at the WinSTon BBS (Thanks to Ladislav Adamec for the hint).
1210: - Cleaned up the source tree a little bit.
1211:
1212:
1213: Version 0.03 (2001-04-03):
1214: --------------------------
1215:
1216: - Rewrote some more assembler functions. FDC emulation now works!
1217: - SDL Keyboard code finished and included a SDL-Key -> ST-Scancode table.
1218: - Added mouse support.
1219:
1220:
1221: Version 0.02 (2001-03-28):
1222: --------------------------
1223:
1224: - Added very simple SDL support.
1225: - Rewrote a lot of assembler functions in C (e.g. intercept.c).
1226: - Adapted the UAE CPU. Now Hatari is able to boot a TOS 1.0x ROM, the
1227: Desktop shows up, but no mouse and keyboard interaction yet.
1228:
1229:
1230: Version 0.01 (2001-03-21):
1231: --------------------------
1232: - Made the WinSTon source code compilable with GNU-C.
1233: - Added the UAE CPU sources.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.