*** 17.0 (24.05.2010) - chg: documentation about Snoop feature now explains in detail which cia registers are checked in which way (StingRay) - chg: the install script template function P_AskDisk is additional able to check for disks which contain a named file instead only by volume name - chg: the joypad emulation in kickemu 3.1 now supports a force option to disable the auto sensing of lowlevel.library - fix: kickfs.s now properly supports reading and writing to the same file handle when IOCACHE is used - new: support/detection of special HRTmon builtin WinUAE added (monitor must be entered one time before WHDLoad can see it!) - fix: when file for PreLoad was larger than the largest free memory block this could lead to an DOS error #205 after all remaining files have been preloaded, this bug has been introduced in version 16.9, issue #2154 - chg: on option NoResInt/S WHDLoad checks and terminates if blitter is active on entering via a resload function - chg: trap hook now checks if vector is odd and aborts then - chg: if option NoMMU/S is active WHDLoad now more correctly checks the actual MMU setup and warns about translations of 0..3000 - chg: amount of disassembled code lines increased (Psygore) - fix: output for disassembling of some instructions were corrected by Psygore, (moveq #-x; cmp/add/and/move/bset/bchg/... #$nnxx; bitfield with offset 0) - fix: crashes on M-Tec 630 boards without FPU fitted caused by the FPU detection inside WHDLoad fixed, board causes 'coprocessor protocol violation's instead of 'line-f emulator', thanks to Die BORG for lending the hardware - chg: there are separate Resload versions for 00-20/30/40/60 now, which enlarges the WHDLoad executable but saves memory at runtime (overlayed) - new: progress bar for Preload operation added, WHDLoad will remember PreloadSize itself as ToolType if started from the Workbench 68040 MMU code is broken in this beta release because being reworked to support full MMU features, resload_Protect should work but Snoop will lock the machine *** 16.9 (05.02.2009) - chg: BLITWAIT macro in whdmacros.i adapted for better speed, thanks to John Girvin for research and testing - fix: problems with writing to disks with around a multiple of 4 GB free space fixed (Ingo Schmitz) - fix: resload_Decrunch/LoadFileDecrunch could corrupt vital memory which could lead to strange WHDLoad errors (e.g. "Function ... requires slave version 1"), reported for game Universe, thanks to KillerGorilla for report and Psygore for diagnostics; the old RNC1 format is now properly supported for overlapping source and destination - new: on ChkBltSize/S some basic initialization in blitter line mode are checked too (68060 only) - new: option FullChip/S to save/restore the full chip memory instead only the area specified in the Slave - new: finnish translation of documentation, thanks to Mikko Heinonen - chg: cpu detection routine reworked to correctly detect an 68020 on boards with 'FPU logic error', 68851 and 68040/60 FPU detection improved - new: workaround added to make WHDLoad running on the CDTV, the cdtv.device will be disabled to avoid problems with interrupts generated by this, thanks to jtorrance and Toni Wilen - new: commands BKPT and BELL added to resload_Patch/Seg to set a breakpoint (enter freezer) and show a visual bell - chg: handling of the internal directory cache for resload_Examine/ ExNext changed, so that new created files will not be the the first entry in the directory this fixes problems with programs which do not correctly perform a Examine before each directory scan, e.g. Castles2 (JOTD) - chg: some more info output and better lace support with SP (saving picture) - chg: check for free stack space on entering WHDLoad via resload/ interrupt/exception made more consistent - chg: many changes on WHDLoadGCI, can export Slave/Memory now - new: danish translation of documentation, thanks to Nicolai Mortensen - new: macro PL_NOPS added to whdload.i (bippym) - chg: improved error messages if loading kickstart fails - chg: changed CPU detection to avoid problems with weired MMU configuration, no longer uses transparent translation to avoid Enforcer hits (Fabio Cinus) - chg: its no longer possible to load files from outside the data directory, that means that file specs containg a ':' or '//' or starting/ending with a '/' are prohibited, these files were anyway never PreLoad-able - new: support for multiple data directories added - new: options SavePath/K and SaveDir/K added to let WHDLoad redirect all write operations to a different disk location - new: WHDLoad now remembers if PreLoad has loaded all files and then doesn't switch when a resload function tries to load a non existing file (e.g. resload_GetFileSize) - chg: resload_ListFiles now supports a buffer in ExpMem too (JOTD) - chg: autodocs revised, html transformation added *** 16.8 (19.08.2007) - fix: the requester displayed when audio.device is already used defaults to 'ignore' now, so it works in combination with option NoReq/S (Horace) - fix: the online help displayed when WHDLoad is called from the CLI without arguments has been fixed for the options Cache/S and DCache/S (Hexaae) - fix: CLI args fixed to fault on too many arguments (Psygore) - chg: the install template supports installing from disk images via diskimage.device, trackwarp.library and capsimage.device - chg: kick31.s supports also the kickstart image from the A500/A600/ A2000, with that it is possible to make Slaves using kick31 which are compatible to a 68000 CPU (Don Adan) - new: WHDLoad itself disables the interrupts of Mediator boards now while running the installed program, this should solve problems like freezing and gfx/sound distortion on these boards, thanks to John Girvin and Elbox for providing the solution - chg: WHDLoad now avoids opening the WorkBench screen after exiting, older versions have always opened the WB if no other screen was left open, requires at least v39 - new: WHDLoad now shows the task name on exceptions if there was a working amigaos running, it also shows segment name and offset if SegTracker was running (inside emulation of course) - new: option NoMemReverse/S added to the global configuration (Ralf Stützer) - new: catalan translation of documentation, thanks to Manel Beltran - new: its now possible to use special rawkeys for the QuitKey/N option to let WHDLoad quit from a button press on the mouse/ joystick/joypad - chg: some changes to the kickemu, check history therein *** 16.7 (16.11.2006) - fix: the Snoop check for custom.bplpt's against BaseMem bounds was broken on word writes on the 68030 (DJMike) - fix: resload_LoadFile and resload_LoadFileDecrunch has silently not loaded data without PreLoad, bug introduced in v16.6 (Bored Seal/Psygore) - new: option NoResInt/S add, which disables any interrupts during execution of resload functions - chg: if the Slave requires AGA and that is not yet enabled in graphics.library WHDLoad calls SetChipRev to enable it, this obsoletes the execution of SetPatch prior to WHDLoad - new: WHDLoadCD32 a special WHDLoad version to be used on the CDł˛, check documentation for more info - chg: registration fee in USD adapted due currency differences, EUR and GBP unchanged - chg: various enhancements on the install template *** 16.6 (05.06.2006) - fix: no more enforcer hits (byte read from adr 0) on directory cache preload on FFS filesystems (Christian) - upd: italian documentation is in sync again, thanks David Bergantin for updating it - upd: small enhancement for HRTmon to print out expmem boundaries - fix: no longer complains about missing ENV: assign - fix: bus/address error messages on 68000 corrected - fix: the message returned on interrupted resload functions did have the same name for both functions, this has been corrected - chg: argument checking for resload functions improved, now the current stack can not be overwritten by resload functions (size of reserved stack space is 64 bytes) - new: command GA added to resload_Patch/Seg to get a address and store it inside a variable in the slave - fix: modify at ExpMem via resload_Patch works again, was permitted in version 16.5 - chg: kickemu improved, compiles with PhxAss and AsmOne again, new switch NO68020 for kick31.s to get 68000 compatible code, patches to the kickstart added to avoid overwriting the vector table, this allows WHDLoad to catch exceptions also on 68000 (Don Adan) - new: greek translation of documentation, thanks to Dimitris Panokostas of ATO *** 16.5 (15.12.2005) - new: check for CyberGraphX/56KHZAUDIO added (David Roeskamm) - new: commands PL_ORB/W/L added for patch lists (Psygore) - chg: if XPK decompression fails during preload WHDLoad shows the missing sublib name too - fix: kickemu correctly updates IO_ACTUAL on trackdisk accesses (JOTD) - chg: russian translation reworked (Manbiker) - new: display promotion added to kick31emu, with that WHDLoad options DblPAL and DblNTSC become working in conjunction with installed games using kick31 emulation and supporting it - fix: stackcheck modified to avoid complaining if first long word of stack is trashed (e.g. when using WarpOS-XPK-Sublib and running from Workbench) - chg: bubble help for bplcon* registers added to WHDLoadGCI - fix: improved startup code for kickemu and _bootdos in kick13.asm - fix: disassembler for negative absolut word addressing fixed (Psygore) - chg: improved error messages on resload_Patch(Seg) - new: slovak translation added, thanks to Jan Zahurancik and Martin Durik - new: ukrain translation added, thanks to Andrey Molchanov - chg: improvement on resload_ProtectSMC, instructions modifying the sr no longer break the SMC check, autodocs fixed, disabling trace is no longer required with SMC check (JOTD) - chg: text explanation added to register dump for attnflags and setcpu - chg: Snoop on 68060 now allows change of bit #6/7 of ciaa.ddra which is used on accessing/detecting joypad - new: if WHDLoad is started without an slave argument from the CLI it shows a short help for all options and some raw key codes - chg: improved speed on preload for resload_Examine, now uses dos.ExAll and memory pools (when running on v39+) - chg: kick31emu got a new option called JOYPADEMU, formerly included in INIT_LOWLEVEL now separated to support GetLanguage without joypad emulation, also the joypademu has been improved, now the keys used are user configurable using the Custom option - chg: options ExecuteStartup and ExecuteCleanup are now local and global useable (Ralf Stützer) - chg: file PreLoad improved, uses now dos.ExAll, memory pools (if running under v39+ and more than 4MB free fast available), asynchronous decrunching of XPK files - new: supports also the kickstart images supplied with Cloantos Amiga Forever CDs, kick130.rom or amiga-os-130.rom must be renamed to kick34005.A500, kick310.rom or amiga-os-310.rom renamed to kick40068.A4000, images together with the rom.key must be installed under DEVS:Kickstarts, some older installs require a kick40068.A1200 image these installs wont run with Cloantos roms - new: norwegian translation added which is not complete but better than none, thanks to Herman Andresen *** 16.4 (26.11.2004) - fix: wrong offsets in resload_Relocate when used with WHDLTAG_ALIGN and WHDLTAG_LOADSEG (Psygore) - new: using QuitKey=$73 an installed program can be quit using the Left Mouse Button (Povl Odgaard) - fix: TrapV emulation did not work on 68010 (Mats Johansson) - new: on WHDLTAG_CBAF on the 68060 A2 provides now the contents of the registers D0-A6 for further diagnostics - new: kickfs.s checks if startup-sequence exist if BOOTDOS is not used (JOTD) - chg: install templates merged into one template, reworked and enhanced (Codetapper) - new: minor enhancement on the resource support files regarding RawDIC - fix: incorrect return/dump values (type of exception) when interrupt vector is not initialized and taken - new: added _keyexit/debug to kick12.s and kick13.s - fix: internal sr handling corrected - chg: kickfs.s returns proper IoErr on dos.Read also on success (JOTD) - fix: possible read accesses outside the packed data on RNC1 and resload_Decrunch/LoadFileDecrunch fixed, these could cause Access Faults when decrunching data at start of ExpMem (JOTD) *** 16.3.1 (21.07.2004) - fix: install script wasn't executable due a bad comment line (thanks to Seppo Seppala) *** 16.3 (28.06.2004) - chg: kickfs.s: ACTION_CREATE_DIR returns ERROR_OBJECT_EXISTS if directory already exists (JOTD) - chg: kick31.s: lowlevel.library loading and joypad emulation integrated - chg: copperlist scanner is also triggered by word writes on coplc registers (JOTD) - chg: whdload.prefs is automatically installed by the install script (Codetapper) - fix: some possible Address Errors with resload_Patch* on cpu<68020 fixed (Mats) - chg: command PL_S for resload_Patch/Seg allows also negative destinations - new: many enhancements on WHDLoadGCI, better HexEdit includes jump to specified address, bubble help for various Custom registers, cia window added - chg: resload_Delay checks keyboard too - chg: resload_Relocate support for missing HUNK_END's added, e.g. "Crunch 1.3 Seg" files (Psygore) - new: new tag for resload_Relocate to create segment lists, which can be processed later using resload_PatchSeg (Psygore) - chg: minor improvements on DIC - chg: RawDIC 2.0 supplied but to unsure stableness only in the developer archive in Extra/ *** 16.2 (07.04.2004) - new: ReSource support files for RawDIC Slaves added - fix: WHDLoad works again on 68000 (Gregory Mason) - fix: install templates improved, work around for InstallerNG which displays an error on (getassign "DF0" "d") when no disk is inserted and so makes it impossible to check for the presense of devices - fix: whole HTML documentation validated and fixed by Micheal Ofner (very big thanks!) *** 16.1 (08.12.2003) - fix: resload_Patch with PL_DATA did not work correctly - chg: some error messages improved - chg: stack enlargement and stack usage check (re)added - chg: disassembler output improved - new: support for another ThrillKill version added (BEN) - new: limited support for WHDLTAG_CBAF_SET on 68060 added, see autodocs for details - new: option NoReq/S can be used from CLI/Shell to output error messages to the command window instead of showing requesters - chg: WHDLoad exits now with more useful return codes - fix: EmulTrap did not work for trap #15 since WHDLoad v16.0 (JOTD) - chg: improved pen handling for splash and register window (Michael Evans) - fix: resload_ProtectSMC was broken in v16.0 now works again - chg: access fault handler for 68030/68060 partial rewritten, some bugs fixed, resload_Protect in ExpMem fully supported now, overall more reliable and sometimes a bit faster - fix: EmulLineF now works with all frame types (JOTD) - new: install templates improved, remember install source drive and check drive availibility for DIC, RawDIC and Patcher template - chg: option SplashDelay/N can also be local set - new: ReSource support files for Patcher Slaves added - fix: command PL_PSS for resload_Patch fixed (did JMP+NOP instead JSR+NOP) - chg: with Snoop* the copperlist scanner identifies CEND with horizontal position > 112 now - fix: small bug in The Patcher fixed - new: WHDLoad supports multiple Kickstart images with the new slave structure introduced in v16.0, the kick31.s has been adapted to support the 40.068 from the A1200 and the one from A4000, WHDLoad checks for both images and uses the one present (JOTD/Wepl) - new: italian manual translation added, thanks to David "Berga" Bergantin - fix: program CRC16 rewritten because old one created wrong sums for files larger then 64KB - new: QualityAssurance.Slave included - fix: keyboard acknowledgment for kickemu 1.2 and 1.3 fixed - new: hungarian manual translation added, thanks to Márton Dósa *** 16.0 (04.08.2003) - fix: restart when option Data/K is used works - new: tries to expunge x-surf.device to avoid INT2 lockups (going offline does not remove the interrupt server, you can check with scout/interrupts), maybe this should be done for other drivers too... - new: option ChkInts/S to detect interrupts without respective bits set in custom.intreq and custom.intena, this will allow easier fix for interrupt acknoledge problems on fast machines and bad hardware creating interrupts - new: polish translation of the manual added, thanks to Mariusz Danilewicz, Kamil Niescioruk and Sebastian Rosa for translating - new: russian translation of the manual added, thanks to Agressor for translating - new: slave flag EmulDivZero to support such exceptions in the installed program (Galahad) - chg: misc improvements on the kickemu - fix: possible problems with drive inhibit in DIC fixed (JOTD) - new: various new commands for patchlists to add values, write byte streams and using sublists - chg: if there is whether in the slave nor via an option a quitkey specified F10 is used as a default (Codetapper) - new: if an errors occurs and Expert/S is active an additional button appears in the error requester which allows the display of the registers like in the register dump but without creating one, the program to display can be configured in the global configuration file using the new option ShowRegs/K - chg: minor changes on WHDLoadGCI, direct link from a register to a memory window, no longer needs ixemul.library - chg: WHDLoad now detects a modified vbr when called via resload from supervisor state, when called from user state it crashes as in previous versions because it cannot enter the supervisor state (JOTD) - chg: if the slave version is greater or equal 16 then the trap #15 will not be emulated (WHDLF_EmulTrap not set) anymore, this was a bug in older versions but the osemu depends on it - new: spanish translation of the manual added, thanks to Miguel Dilaj - chg: reworked czech translation by David Malecek - new: slave flag EmulIllegal to support such exceptions in the installed program (Michael Griffin) - fix: preload for resload_Examine made more robust - new: disassembler output in the register dump - new: extented slave structure for early load of kickstart images and avoid one switch to the os - chg: there is a new tag for resload_DiskLoadDev to specify the trackdisk unit to read from *** 15.2 (10.04.2003) - new: option ChkCopCon/S to find accesses which enable copper access to DMA registers (JOTD) - new: option Data/K to specify a directory where data for installed program are stored, overwrites ws_CurrentDir contained in the Slave - fix: function resload_SetCPU no longer clears the setup from resload_Protect* (JOTD) - new: support for another ThrillKill version added (BEN) - new: options ExpChip/S, ExpLocal/S and Exp24Bit/S to force WHDLoad to allocate ExpMem with the specified properties, useful to degrade performance on fast machines for compatibility reasons - chg: many changes on kickemu sources, kick31.s made conform to the 12/13 sources - chg: resload_Delay made more robust, fixes hangs in conjunction with Mroocheck device/driver - fix: Access Fault message for 68040 corrected (JOTD) - new: Macros and UserSymbols to use with ReSource added - new: smail address! *** 15.1 (20.08.2002) - new: many improvements on the install templates: opens installed directory as wb window (OS3.5), visual icon selection (OS3.5), more flexible icon handling, subdirectory for DIC install (Codetapper/JOTD/Wepl) - chg: SP can also save Interlace pictures now (Psygore) - chg: works on AmigaXL now, WHDLoad will detect an AmigaXL and assume an 68020 CPU (in difference to the faked 68040) - chg: there is no longer a default for FreezeKey/N - chg: keyboard handling changed a bit to avoid problems with some broken UAE versions (JOTD) - chg: when Snoop*/S is used bytes writes to audvol registers will again result in an access fault, byte writes to audvol+1 are ok (Psygore) - chg: files caching optimized when small and large files are used and there isn't enough memory for the big ones (JOTD) - fix: loading data from a preloaded file using a resload function to the vector table area ($64..$7c) works now without trashed data (René Gennes) - new: SnoopAGA/ECS/OCS validates also writes to bplpt's (Psygore) - new: czech (big thanks to Bored Seal), french (big thanks to JOTD & Psygore) and german (Wepl/Susann) translation of the documentation added - new: tag for resload_Relocate called WHDLTAG_ALIGN added, to round up hunk lengths to a given boundary (Psygore) *** 15.0 (19.02.2002) - fix: install script templates improved: environment variable for installation directory copied to ENVARC: to survive reboot; 'Abort Installation' during choice of installation directory no longer gives an error message (Codetapper) - fix: bug in copperlist scanner on 68030 with bplcon2 fixed - chg: no more lockups caused by invisible 'Insert Volume XXX:' (many thanks to JOTD) - new: OpenDrawer (OS3.9) added to the install templates (JOTD) - new: commands C, CB, CW and CL to use with resload_Patch - new: function resload_PatchSeg, resload_Examine, resload_ExNext - new: new flag WHDLF_Examine, required to use resload_Examine and resload_ExNext - fix: resload_LoadKick also supports 512k images (JOTD) - chg: kick1.3 emu finished - chg: intelligent icon detection and choice added to the install templates - chg: SP reads S:WHDLoad.prefs to find the coredump file - new: option Custom and function resload_GetCustom to forward a string from the CommandLine/WorkBench to the Slave (Philippe Bovier/JOTD) *** 14.5 (23.09.2001) - chg: options NTSC/S and PAL/S can also be set global now - new: SnoopOCS/S check also that no ECS/AGA bits will be set in bplcon2 (Psygore) - new: option RestartKey/N added - chg: stack check removed - chg: install templates improved: better tooltype handling, install script will remember the installation directory in an environment variable and use it as default the next time *** 14.4 (30.07.2001) - fix: resload_Relocate again corrected, it should work 100% reliable now and is also a bit faster under some conditions ;) - fix: ChkBltWait on 68060 has wrongly assumed a write to bltsize on movem accesses to addresses > bltsize, that has caused wrong detections - fix: XPK detection did not work in resload_DiskLoad/LoadFileOffset, caused problems without PreLoad/S - fix: symbol hunks in resload_Relocate fixed (Codetapper) - new: resload_ListFiles added to FileLog/S (Jeff) - new: now FileLog/S logs the CRC16 for all read/write operations, that may be useful especially for developers to detect on bug reports different data by requesting a FileLog from the reporter *** 14.3 (02.06.2001) - fix: without PreLoad/S LoadFileOffset/DiskLoad returning error (Philippe) - fix: LoadFileOffset/DiskLoad was returning wrong result on failure and WHDLF_NoError wasn't set (Jeff) - fix: now resload_*Load* functions can load files larger than 2.091.108 bytes (MrLarmer) - new: option NoFlushMem/S added to avoid memory flush at WHDLoad startup - fix: TDREASON_OSEMUFAIL works again (Jeff) - fix: bug in resload_Relocate removed (MrLarmer) *** 14.2 (06.05.2001) - fix: bugs in some loading resload functions removed which could WHDLoad v14.1 cause to crash under some conditions - chg: resload_GetFileSize(Dec) added to the FileLog/S feature - fix: resload_SaveFileOffset has written bad size if file wasn't preloaded in WHDLoad v14.1, that may corrupt existing images/game files! (thanks to Codetapper for report) *** 14.1 (29.04.2001) - chg: $dff1fe (noop) is also a valid writeable custom register now (Codetapper) - new: SP correctly rips EHB pictures now (MrLarmer) - fix: problems with some third party keybords after exiting WHDLoad removed - new: option TimeOut/N let WHDLoad / installed program quit after a specified time, requires cooperation of the installed program (untouched ciaa.ciatod) - fix: problems with resload_Abort and DOS-Errors fixed (Jeff) - new: TDREASON_FAILMSG to quit using a self defined message (MrLarmer) - new: all write operations will now be cached in memory if possible to omit unnecessary switches to the OS, require that the file to write to is already in the file cache, to avoid this behavior the option NoWriteCache/S has been added, to completely disable this feature the option can also set in the global configuration file - new: all data files can be compressed using XPK now, files will be decompressed on PreLoad, there must be enough free store to cache XPK files otherwise WHDLoad will quit, files can be compressed/encrypted multiple times, decrypting requires reqtools.library v38 - chg: differences in Snoop regarding ciab.prb between 68030 and 68060 removed, checks for MTR/SEL/STEP on both cpu's now (Codetapper) - new: resload_Relocate is able to move hunks with property MEMF_CHIP or MEMF_FAST to a different memory location *** 14.0 (15.03.2001) - fix: bug in Snoop* mode fixed, thanks to Codetapper for report! (the msw of D2 was trashed during copperlist-scanner, e.g. writing to cop1lc/cop2lc/dmacon) - chg: link/unlk/pea has been added to the IST (Mr.Larmer) - chg: more useful output on Speed.Slave if MMU is unavailable (Harry) - new: tag WHDLTAG_LANG_GET to use with resload_Control to get the current language set in the system, uses and requires lowlevel.library to be installed - chg: WHDLoad no longer tries to write to read-only filesystems, so games can be played also from cdrom when they will usual save highscores or similar data - chg: install templates prepared for high-scores file, WHDLoad stack increased (Codetapper) - fix: detection of UAE (AttnFlags) works now - new: commands PA and NOP added for resload_Patch (Codetapper) - chg: tool SP to save pictures from dump files: copper disassembler can be interrupted using Ctrl-C, will stop at copstop and better error handling (Codetapper/Frank) - chg: my snail mail address has changed *** 13.1 (05.01.2001) - fix: icon handling in the installer templates improved - chg: emulation of unsupported integer instruction on 68060 supports all variations of 64-bit mul/div except addressing modes using full extension word (memory indirect/base displacement) - fix: problems with Snoop exceptions during Switch fixed (copper list scanner could lock WHDLoad on return from OS to installed program) - chg: WHDInfo 1.20 by Codetapper included in the developer package - fix: better compatibility on Kickstart 2.0, no longer freezes the Workbench after exiting WHDLoad, the reason was cia.alarm values, because I don't know how to restore them to the original values WHDLoad no loger touches them, that means also there are no defined start values on entering the installed program anymore and there may be too problems on Kickstart 2.0 if the installed program writes the cia.alarm values (probably less than 5% of all games) *** 13.0 (21.12.2000) - fix: debug key handling fixed (was broken when Expert was used in global config and no debug key was specified and the Slave has used a default of 0) (Jeff) - fix: autodoc - mistakes regarding KEYTRANS and resload_GetFileSize corrected (Codetapper) - fix: bug in WHDLoad 12.0 fixed when using NoMMU/S and memory 0..$1000 is remapped to Fast memory, WHDLoad has always quit independend of the selected button - fix: bug removed in resload_Patch and command Skip when using a distance of 2 - fix: splash window background fixed for 16/24-bit screens - fix: no longer 'illegal args' when using resload_SaveFile with address=0 and size=0 (Harry) - chg: cpu cache handling reworked; new options ChipNoCache/S, BranchCache/S, SuperScalar/S and StoreBuffer/S; options can no longer overwritten by resload functions, new chapter in the documentation regarding cpu cache handling - new: flag WHDLF_ClearMem to cause WHDLoad to simply clear BaseMem and ExpMem instead of init them with $CCCCCCCC/$DDDDDDDD (Codetapper) - fix: Enforcer hits in keymap scan removed (Philippe Bovier) - chg: now the color cycling screen during switch between OS and installed program will only displayed if option Expert/S is enabled (Psygore) - fix: compatibility risk in EmulTrap removed - chg: Snoop*/S features reworked: - fast Snoop/S mode added, read accesses will not be verified, uses a bit faster routines on write accesses - special features can be activated separately, new Options ChkBltWait/S, ChkBltSize/S, ChkBltHog/S, ChkColBst/S - special features can be enabled/disabled at runtime via resload_Control 68030: - copperlistscanner implemented - ColBst check added - ChkBltWait uses instruction tracing now 68060: - ChkBltWait and ChkBltSize added - copperlistscanner improved - chg: FileLog/S reworked, uses now internal buffer to store log entries and will write them to the logfile at program end - new: option NoFileCache/S to disable the file cache - new: internal stack check added - fix: bug in resload_GetFileSizeDec fixed, did not work under some conditions *** 12.0 (07.08.2000) - chg: better exception handling on 68000 - new: flag WHDLF_EmulLineF to forward 'Line-F Emulator' exceptions to the handler of the installed program if the vbr is moved (requested by Bored Seal) - new: tag WHDLTAG_KEYTRANS_GET to get a table for rawkey to ascii conversion reflecting the system keyboard configuration (requested by Codetapper) the sources:whdload/savegame.s has been adapted for that and it can be used as an example how to use this new feature - chg: WHDLTAG_ATTNFLAGS_GET no longer returns AFF_68881 and AFF_68882 on 68040/68060 (Jeff) - chg: DIC: retry bug on 'no disk in drive' fixed, new option 'NAME' added to specify a name for the image to create (Andreas Falkenhahn) - fix: there could be an endless loop (including writing coredump) if a error requester could not be opened, this has been fixed - fix: the texts contained in the install templates have been fixed for some spelling errors (thanks to Codetapper) - new: some small improvements to SP - chg: WHDLoad no longer terminates on Byte Writes to the audio volume registers when Snoop*/S is active, these accesses are invalid but used in many replayers and it should not be neccessary to fix them all *** 11.2 (04.06.2000) - fix: the "CACR modified" check introduced in v11.0 was broken on 68020 machines, now it should work properly on all cpu's - chg: some enhancements concerning WHDLoadGCI, reworked to compile with gcc/egcs instead sasc *** 11.1 (21.05.2000) - fix: old RNC1 support in resload_Decrunch/LoadFileDecrunch fixed, was broken since version 10.4, now Moonstone works again - chg: some minor changes in Snoop*/S on 68060 *** 11.0 (16.04.2000) - chg: resload_Decrunch/LoadFileDecrunch supports also the TPWM format now - new: resload_Delta, resload_LoadKick, resload_GetFileSizeDec - new: reworked access fault handler for the 68060, supports cia snooper, aga check and copperlist scan - chg: many enhancements on WHDLoadGCI, multiple memory windows, bubble help, info window, termination reason - new: new flags WHDLF_EmulChk and WHDLF_EmulPriv to forward 'Chk,Chk2 Instruction' and 'Privilege Violation' exceptions to the handler of the installed program if the vbr is moved - new: tag WHDLTAG_BPLCON0_GET to get the system bplcon0 from the gfxbase, warning: genlock is still not supported by WHDLoad! - new: WHDLoad now checks on each call to a resload function if the CACR has been modified, on detection the installed program will terminated *** 10.6 (01.03.2000) - new: when using Snoop*/S on 68060, accesses to custom register using the SSP in predecrement or postincrement address mode will detected and appropriate requester will be displayed, such accesses must be patched to make Snoop*/S working on 68060 - fix: WHDLoad no longer quits if the SSP is equal to the end of ExpMem on calling a resload function - chg: DIC can skip multiple tracks now *** 10.5 (23.01.2000) - chg: DIC reworked, new option SKIPTRACK/K/N to one skip track (e.g. RN-Copylocks), new option PEDANTIC/S used in install scripts for better error handling documentation for DIC improved install script "DIC Install" improved - chg: documentation and install scripts adapted for the new address of WHDLoad's WWW-Page (www.whdload.org) - chg: the slave load routine has been improved, the slave may now contain symbol hunks and the length in the hunk header may differ from the length in the hunk itself - chg: sources and includes reworked a bit, better support for different assemblers *** 10.4 (13.10.1999) - fix: resload_SaveFileOffset was broken in 10.3, as a result some installs have crashed on saving games/highscores (thanks to MIcK for report) - fix: WHDLoad no longer crashes if Snoop*/S will be enabled on 68040 equipped machines (thanks to Joona Palaste for report) - fix: detection of old rnc1 format improved, now Aladdin works again (thanks to Ungi for report) - chg: dbffix.s and keyboard.s from the src/sources/whdload directory reworked *** 10.3 (22.09.1999) - fix: ws_CurrentDir in conjuction with slaves and ws_Version < 4 did not work in WHDLoad v10.2 (e.g. MegaLoMania installion slave, thanks to Ungi for report), now it works again - chg: parts of the exception handlers rewritten, a detected Freezer will be also activated on Access Fault, Privilege Violation and Unimplemented Integer Instruction; that simplifies debugging - chg: WHDload is overlayed now, that saves some memory at runtime and shortens the executable - new: emulation of CMP2 for 68060 added (e.g. Overkill/Mindscape, Roots/Sanity), emulation of movep and mul32 optimized for superscalar dispatch - chg: if option SplashDelay is set to 0 no splash-window will be displayed - chg: docs reworked (thanks to Codetapper for doing that) - chg: some other minor changes *** 10.2 (07.07.1999) - fix: bug in cache handling removed, the cache was always off if MMU is not used by WHDLoad in versions 10.0 and 10.1 (Graham) - chg: install template for RawDIC installes improved (Graham) - new: partial mul64 emulation for 68060 added, supports only "muls.l dn,dn:dn" at the moment (used in Sanity-Roots) - fix: quit key display in the splash window fixed (Graham) - chg: extra memory (ws_ExpMem) can be specified as optional now, see autodoc for more info (Graham & John Girvin) - new: program crc16 done by John Girvin added to the dev package *** 10.1 (20.06.1999) - fix: bug in resload_SetCACR which makes it impossible to enable caches fixed, the bug has been introduced in version 10.0 (Graham) - fix: some internal changes *** 10.0 (08.05.1999) - chg: SP has got some new options - fix: a bug in sources/whdload/stfix.s removed - chg: resload_Relocate uses less stack now - new: function resload_ProtectSMC to automically detect self modifying code (see autodoc) - new: function resload_SetCPU to allow more accurate control over the cachebility of certain memory regions and to allow control over 68060 specific cpu configuration - chg: option NoDCache has been removed (simplify cache managment) - new: function resload_Patch to handle patchlists, i'm wondering why this hasn't implemented earlier :), useful especially to patch stuff in expansion memory - fix: whole decruncher stuff reworked, support for old rnc1-data format added, all decruncher a5/a6 save, optimized, less stack usage... - fix: expansions memory (ws_ExpMem) is also aligned to $1000 if no MMU is available or MMU is unused by WHDLoad (Graham) - fix: possible deadlock in the switch routine (OS<->Install) removed (Graham) - new: information window on startup (while preload) added, it shows infomations about the installed program, the Slave and the actual QuitKey, informations about program and Slave are taken from an expanded Slave-structure (see include and autodoc files), if a Slave with version prior 10 is used WHDLoad displays only the name of the installed program which will be build from the name of the Slave how long the information window is displayed can be changed with the new option SplashDelay/N (information window is inspirated by Mr.Larmer on 7.7.1998, nothing gets lost here :) - chg: include file "whdload.i" splitted into "whdload.i" which contains WHDLoad base defines and "whdmacros.i" containing optional defines and macro definitions *** 9.2 (15.03.1999) - fix: 3 enforcer hits removed (Juergen Urbanek, Hubert Maier jun.), there are still some hits left to the vector table, but these are required for normal operation and cannot be removed - fix: bug in decruncher for Imploder files fixed (Mr.Larmer), this bug was introduced in version 9.0 - chg: there are no longer distortions in gfx display and sound replay due disabled interrupts during loading from preloaded data (resload_LoadFile, LoadFileDecrunch, LoadFileOffset, DiskLoad) - new: option NoFilter/S to disable the audio filter, can be set globally using S:WHDLoad.prefs or locally using Tooltypes (Roderick Mouthaan) - new: program RawDIC by Graham/Oxyrone to create images from non standard floppy disks formats, it replaces Patcher as prefered tool for this task - chg: documentation reworked *** 9.1 (15.02.1999) - new: WHDLTAG_TIME_GET to get actual date and time (Mr.Larmer) - fix: problems with some 68030 systems fixed (WHDLoad uses some special hardware features in conjunction with the MMU related operations, some hardware does not support this (Apollo A630 and Magnum MK2 are known for this), on such systems you can't enable the MMU/S option - otherwise the machine will hang) (reported by Chris Thomas, Maxim Ilyn and Jess Sosnoski) *** 9.0 (17.01.1999) - chg: performance of resload_LoadFileDecrunch improved - chg: access fault handler for 68030 rewritten: - better performance - cia snooper implemented - icm and alarm will be saved and dumped - setting overlay bit (ciaa.pra) catched - setting motor/step (ciab.prb) catched - bad writes to ddra/ddrb catched - blitsize check fixed, supports all except line-mode now (ascending/descending mode, negative modulos, odd pointers and odd modulos) - a callback function can be setup (resload_Control) which will called by WHDLoad if an Access Fault occurs, the function can modify the bad access and decide if the program should be continued or terminated, see autodoc for further infos - fix: potgo set to input mode now, fixes right mouse button problem with ArcherMcLeanPool and JimmyWhiteSnooker (Mr.Larmer) - new: WHDLTAG_VERSION_GET, WHDLTAG_REVISION_GET, WHDLTAG_BUILD_GET for usage with resload_Control to get the major and minor version number and the build number of WHDLoad currently running, the build number is granted to be uniq and can be used to distinguish between different sub versions (Mr.Larmer) - new: pressing Ctrl-Amiga-Amiga will cause WHDLoad to quit, depending on machine speed this may avoid cold reboots due a not restored execbase (Graham) - fix: Snoop works again on 68060, was broken in 8.2 - chg: the vector table is not write protected if Snoop on a 68060 is enabled - new: option ReadDelay/N to cause WHDLoad to wait some time between reading files from disk and switching the OS off (Jeff) - new: flag WHDLF_EmulTrapV to forward exceptions to the zero page handler if the vbr is moved (Graham) *** 8.2 (19.12.1998) - chg: the vector table (VBR) is write protected now, to catch invalid to accesses to it (Mr.Larmer), requires that the MMU is used by WHDLoad, NoVBRMove is not set and no freezer is detected by WHDLoad in memory - fix: problems with PAL and NTSC in conjunction with Picasso 96 monitor drivers fixed (Tim Kovack) *** 8.1 (13.12.1998) - chg: detection of HRTmon 2.24 implemented - fix: Access Fault in resload_Relocate removed - new: some changes and enhancements for HRTmon 2.25 - fix: Snoop works again for 68030 machines (was broken in v8.0) - chg: all unsaved registers after executing a resload function (D0-D1/A0-A1 as far as they don't contain a return code) will be destroyed explicit now, for compatibility reasons *** 8.0 (22.11.1998) not public released! - chg: if the write offset for a resload_SaveFileOffset operation lies outside the current length of the file and therefore the file must be enlarged before writing, WHDLoad tries now to fill this area with $ee, if there is not enough memory available for this, WHDLoad falls back to the old style by using dos.SetFileSize(), with the result that the enlarged area will contain random data - fix: deadlock in switch routine fixed which occured when lightpen has been activated (e.g. "Die Hard 2") - fix: cia's will be completly initialized by WHDLoad now, and also better handled during switch - chg: also disk images will be cached dynamically now - fix: small bug in DIC removed (Mr.Larmer) - fix: resload_LoadFileOffset accepts also parameters upto the BaseMem bound now (DarkAngel) - new: flag WHDLF_NoKbd to allow NoVBRMove also for programs which doesn't check the keyboard from the PORTS ($68) interrupt - new: function resload_Relocate to relocate an standard AmigaDOS executable in memory, beware: uses a lot of stack and is not tested with all hunk types, see autodoc for more details - new: function resload_Delay to wait a specified time or a button to be pressed (time independed from PAL/NTSC display) - new: slave can request expansion memory (fast memory) now ATTENTION: slave structure has been enlarged - new: TDREASON_MUSTREG (DarkAngel) - new: WHDLTAG_IOERR_GET for usage with resload_Control to check if all names have been fitted in resload_ListFiles and to distinguish a file with a size of 0 from an nonexistent file in resload_GetFileSize (Harry) - new: option D/S for debuging, if enabled the software freezer (Hrt/TK) will be activated at the first instruction of the Slave - new: flag WHDLF_EmulLineA to emulate Line-A opcodes if the vbr is moved - new: function resload_DeleteFile to delete files (Mr.Larmer) - new: program SP which can save iff pictures from the new coredump files created by WHDLoad, works for most standard picture formats (Snoop* is required of course) - new: sources for all programs except WHDLoad included, please note that most of them are copyrighted - chg: many internal changes, also the problems with BloodMoney and CelticLegends seems to have been solved - fix: Restart should work reliable now - fix: small bug in ITD removed (Harry) *** 7.0 (01.07.1998) - chg: new revision scheme, version number of WHDLoad is now equal to highest possible version number for a Slave, separate build number - new: new tag for resload_Control to setup a function to restore destroyed custom registers during switch between OS and installed program (Harry) - chg: functions resload_LoadFileOffset, resload_SaveFile and resload_SaveFileOffset can be used with a filesize of zero now (Harry) - chg: the functions resload_Protect#? are checking now if the protected area matches the current SSP, if it does, WHDLoad will stop and show a requester "Unacceptible Arguments", this has been build in to reduce the likelihood of a Double Bus Fault, thanks to Mr.Larmer for reporting this problem - fix: check of workbench arguments a bit more secure now - new: new Slave flags WHDLF_Req68020 and WHDLF_ReqAGA, new TDREASON_REQ68020 and TDREASON_REQAGA, new tag WHDLTAG_CHIPREVBITS_GET for resload_Control, to handle programs which require a MC68020 or the AGA Chip Set (Mr. Larmer) - new: TDREASON_MUSTNTSC and TDREASON_MUSTPAL to terminate if the installed program requires a specific display which isn't enabled (Mr.Larmer) - chg: PreLoad now collects also files from sub directories - chg: example sources (slaves/imager) reworked to assemble with Asm-Pro v1.12 (still some problems with labels in macros, but this is a problem of AsmPro) - new: support for additional NewIcon in Install Templates (Mr.Larmer) the following problems are known and still unsolved: - no exit possible from BloodMoney/CelticLegends - Nitro does hang with PRELOAD enabled, use WHDLoad v0.608 or disable PRELOAD to go around this *** 1.92 (08.06.1998) - fix: problem with Clown'o'mania (©1989 Starbyte) does not work with WHDLoad v1.1 has been fixed, the reason was a different initialized ciaa.icr.tb bit, to fix this and future problems WHDLoad does init the CIA interrupt mask explicit now, all interrupts are disabled except the CIAA SP interrupt (used for keyboard) which is enabled. I have tried some installs and it seems to work ok, anyway it is possible that some installs may no longer work because they may expect that some interrupts are already enabled on startup - these installs must be fixed for this new WHDLoad - new: TDREASON_OSEMUFAIL to support the OS emulation module - chg: the message for instruction stream access faults has been corrected (Harry) - new: option Expert/S, this option must be enabled to make core dumps using the DebugKey/K/N now, the option has been added to avoid that normal users press the wrong key by mistake (Harry) - new: options ExecuteStartup and ExecuteCleanup to execute a command at start and at end of WHDLoad *** 1.1 (25.05.1998) - fix: stack usage on resload_Decrunch and resload_LoadFileDecrunch decreased, speed of RNC1 decrunching improved a lot, its a really a good idea to patch the decrunch routine in games with resload_Decrunch if it uses RNC1 ! - new: DIC can create partial images now (option SIZE/K) - new: WHDLoad performs now a "SetClock LOAD" at exit - fix: some minor fixes in the gfx degrading routine - fix: disk-dma check in os-switch modified, it switches dma off now instead of showing the white-color-cycle-bug-screen (because it's nowhere documented else: red - copper cannot switched off, blue - ints cannot switched off, green - blitter is busy but dma is off; after pressing LMB WHDLoad continues but it's undefined what will happen) - new: new program "ITD" (ImageToDisk) to write disk images back to floppy or RAD: can format the disk, can write partial images, no verify, see documentation for more info - fix: problems with second copperlist on reactivating os graphics - new: blitter wait check if SnoopOCS/ECS/AGA enabled - new: if available whdload will use reqtools.library instead intuitions requesters now, because they are screen centered and have better keyboard support - new: with SnoopOCS/ECS/AGA all cpu used custom registers will be dumped now - chg: tooltypes NTSC/PAL will now affect the display init routine (Intuition.OpenScreen()) therefore you need the appropriate monitor files installed - new: functions resload_Protect#? to snoop memory accesses in various ways, very useful for developer... (requested by Mr.Larmer) - new: function resload_LoadFileOffset which is similar to resload_DiskLoad but for files - new: flag WHDLF_NoDivZero for ws_Flags to prevent WHDLoad from exit if a "Division by Zero" exception occurs - chg: all resload functions has been reworked to no longer modify registers a5 and a6, this solves problems with demos/games which expect that the contens of these registers are valid also in an interrupt, for example SWIV expects a5=global-data and a6=custom-base, the only exception from this rule are the functions resload_Decrunch and resload_LoadFileDecrunch when working on rnc packed files, in this case a5 is temporarly used (it is a bit hard to rewrite the whole decrunch routines and I'm low on time of course...) in general it is a good idea if the program you like to install does'nt work with WHDLoad to check the interrupt routines, if the interrupts make assuptions similar the above (e.g a4=anything) you have to disable the interrupts before calling any resload function and reenable after - chg: WHDLoad checks now the current stackpointer each time the Slave calls a resload function, if the SP is lower than $180 or outside the BaseMem area the program will be terminated and WHDLoad shows a requester about, this should avoid problems like destroyed vector tables or deadly double Access Faults in conjunction with an enabled Memory Protection - chg: it is no longer required that SetPatch is executed before WHDLoad on 68040/68060 equipped machines because WHDLoad determinates the current CPU itself now - chg: for 68060 only (68040 also??): the newer versions of 68060.library (starting v41.1) does remap the memory $0-$1000 (the first page) to a fast mem location using the MMU, this will make major problems if the option NoMMU is activated: in this case WHDLoad will not change any MMU related registers and this address translation will remain intact !!! if the installed program tries to use this area for any dma actions (e.g. a copperlist in this area) the results will be unforeseeable, because the cpu will read/write the fast-mem location and dma's the real chip-mem which contains random data !!! I don't want to disable the NoMMU option for 68040/060 machines, therefore the following has been changed: the longword at address $1000 does now contain the value -2 which is the copper instruction cend (was on address $300 in earlier WHDLoad versions), the minimum BaseMemSize has been increased to $2000. If NoMMU is selected and the above mentioned address translation is active an requester will inform the user about the existing problem. - new: options ButtonWait/S and Custom1/K/N ... Custom5/K/N for slave specific things (requested by Harry) - chg: WriteDelay/K/N does also affect the FileLog/S feature now, this means that after each write to the logfile WHDLoad will wait the time specified via WriteDelay/K/N to minimize the danger of filesystem corupption - chg: install scripts has been reworked, PLEASE check them ! - chg: sources has been changed and new added, PLEASE check them ! - chg: WHDLoad is shareware now, read documention for more info *** 0.608 (03.09.1997) - new: all configuration stuff rewritten, global config file see guide for more informations - chg: SURVIVERESET removed (obsolete I think) - new: support for HRTmon 2.1 and ThrillKill 1.04 implemented (auto detect and NMI forwarding) - new: function resload_Control to get the AttnFlags - fix: enforcer hit in resload_SaveFile removed - new: function resload_SaveFileOffset for partial writes - chg: ws_DontCache works now also for preload of disk images file preload does no longer loads "(ReadMe|#?.(info|slave))" ("Disk.#[0-9]" also not as before) - chg: better support for NTSC amigas (Raymond Earle) - new: option PAL/S to force PAL display on NTSC amigas - new: options Cache/S,DCache/S,NoDCache/S to allow full user control over the caches - new: using MMU for memory protection and cache managment (!!!) - new: Quit/Debug-key managment through new options QuitKey/K/N and DebugKey/K/N, every new slave should support this via the slave version 4 extensions ws_keydebug and ws_keyexit, see one of the example slave sources for an example - chg: on whdload is writing data (resload_SaveFile) it will do a special check for RAM: now, so it is possible to use RAM: as installation destination now - chg: macros patch and patchs optimized - new: more sources added to the package *** 0.322 (25.06.1997) - fix: sometimes whdload has quit on random keystrokes if the vbr was moved - fix: deadlock problems in OS-Swap routine - new: option COREDUMP to make a dump even on TDREASON_OK *** 0.288 (16.06.1997) - fix: sprite dma switching off - chg: ws_ExecInstall can be set to zero now (disables SURVIVERESET) - new: ws_keys, whdload manages quit key self (see autodoc) - new: whdload handles all MMU stuff, result is that whdload is now Enforcer/Cyberguard and VMM proof - new: ** vbr shadowing ** (see autodoc) tooltype NOVBRMOVE added to disable that - new: slave flag EmulTrap for ws_Flags - chg: execbase changed from $ffff0000 to $f0000001 (any use of this should create an "Address Error" exception) - chg: Data Cache is always off and cannot be enabled via resload_SetCACR - fix: resload_FlushCache fixed for 040/060 - fix: register dump changed a lot - new: exitcode TDREASON_WRONGVER indicating a bad program version - chg: all registers have now a defined value at startup - fix: filelog output fixed for data writes - new: Patcher, FindAccess, Cmp added to the package autodoc, include and guide updated Install templates added *** 0.163 (02.03.1997) - fix: better handling of trackdisk.device, headpos is flashed always now - new: trackdisk errors as text instead numbers - new: whdload option NOAUTOVEC (see whdload.guide) *** 0.147 (31.01.1997) - fix: on slave load failed, we were in an endless loop - new: function resload_CRC16 implemented *** 0.143 (07.01.1997) - fix: restart point changed, that slave will be reloaded (static vars) - new: status of cia timers added to register dump - new: cia timer handling improved - fix: ISP/MSP highlighting on user-mode - chg: file cache changed, resload_GetFileSize from cache, resload_SaveFile to cache, now ws_DontCache is nearly obsolete - chg: PRELOAD changed, caches now automatically diskimages and files, independent from WHDLF_Disk - fix: resload_SaveFile checks now for disk validation and free space to avoid deadlocks - fix: file loading from cache has always copied one byte to much - fix: WRITEDELAY parsing on CLI-start - new: resload_DiskLoadDev for install slaves (see autodoc) - chg: better error detection on slave-whdload interface - chg: Macros in whdload.i improved *** 0.88 (24.11.1996) - file logging implemented - register dump improved - dump file names changed (now PROGDIR:.whdl_#?) - on TDREASON_DEBUG sr and pc now taken from primary/secondary result - InstallBB added to the package *** 0.41 (05.09.1996) - first public release