Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. ================================================================================
  2.                                dZ80 What's New?
  3. ================================================================================
  4.  
  5. ********************************************************************************
  6.  
  7.   E-mail: dz80@inkland.org
  8.       WWW: http://www.inkland.org
  9.           Macintosh dZ80: http://www.hinton.demon.co.uk/archive/macide.html
  10.  
  11. ********************************************************************************
  12.  
  13.  
  14. v2.0 - 9th March, 2002
  15. ----------------------
  16.  
  17. Additions and Changes to all versions
  18.  
  19.         Please note the change of email address and URL at the top of this
  20.         document.
  21.  
  22.         dZ80 now has scripting support. Writing a script for dZ80 allows you
  23.         to override, or simply modify dZ80's existing handling of opcodes.
  24.         Using a script, an opcode can be trapped before and/or after dZ80 has
  25.         processed it. This allows, for example, machine dependant "RST"
  26.         handling, which is different on every Z80-based machine. A Sinclair
  27.         ZX Spectrum script is supplied as an example. The scripting language
  28.         used is Lua 4.0, and its Web page at http://www.lua.org contains all
  29.         the tutorials and help for the language, although for simple jobs,
  30.         hacking the supplied example script will probably do :)
  31.  
  32.         See Section 3.0 in the supplied dz80.txt file for the details on this
  33.         powerful new feature.
  34.        
  35.         Added configuration file support (again, courtesy of Lua!). When dZ80
  36.         runs, it attempts to load and execute a dz80.ini file. The Windows GUI
  37.         version of dZ80 continues to use the Windows registry to load and save
  38.         its settings, but if there's a dz80.ini in the same folder when a
  39.         binary file is loaded, you will be prompted if you want to import the
  40.         dz80.ini settings.
  41.  
  42.         A special case number prefix "{" has been added. It translates to a
  43.         "0" if the number would otherwise start with a non-numeric value:
  44.  
  45.             {1234 = 1234 (starts with a numeric character)
  46.             {ffff = 0ffff (starts with a non-numeric character)
  47.  
  48.         You can now control whether you have the relative displacement
  49.         comments or not in the disassembly. By default they're switched off.
  50.  
  51.         Single instruction disassemblies (DISFLAG_SINGLE) are now much faster.
  52.  
  53.         Numerous code clean-ups and minor optimisations.
  54.  
  55.         Added Raffaele Sena's skip.c to the source code download. Skip is
  56.         now documented in dZ80.txt.
  57.  
  58. Additions and Changes to the command line versions
  59.  
  60.         -j command line option to enable relative displacement comments.
  61.  
  62.         -k= command line option to specify a script to load and run.
  63.  
  64.         -v show version information
  65.  
  66.         Special case switch - "!". If the pling is placed at the start of
  67.         the command line, it prevents dZ80 from automatically loading
  68.         dz80.ini. E.g. dz80 ! file.bin file.asm
  69.  
  70. Additions and Changes to the Windows version
  71.  
  72.         A dZ80 output window has been added to the main GUI. This displays
  73.         the disassembly progress and summary as well as any error messages
  74.         that may appear.
  75.  
  76.         Added support for Windows XP themes.
  77.  
  78.         Improved options page.
  79.  
  80.         Improved context help.
  81.  
  82.         Miscellaneous minor improvements throughout.
  83.  
  84.         Windows console version of dZ80 (dz80c.exe) is now included in the
  85.         package. Note that, as with all command-line versions of dZ80,
  86.         dz80c.exe will use dz80.ini to load its settings and not the
  87.         dZ80 for Windows settings which are stored in the registry.
  88.  
  89. Bug Fixes (all versions)
  90.  
  91.         The (DISFLAG_SINGLE | DISFLAG_UPPER) flag combination now works
  92.         correctly when calling dZ80_Disassemble()
  93.  
  94.  
  95. v1.50 -  10th February, 2001
  96. ----------------------------
  97.  
  98. Additions and Changes to all versions
  99.  
  100.         dZ80's default radix can now be selected from octal, decimal or hex.
  101.         Please note that the opcode dump remains in hex regardless of the
  102.         radix chosen, because it becomes pretty ugly otherwise.
  103.  
  104.         You can override dZ80's default number format prefix and suffixes.
  105.         E.g. you could change dz80's default hex format from "$1234" to
  106.         "1234h", "0x1234", etc.
  107.        
  108.         The directive for define byte can be changed - default is "db"
  109.  
  110.         The character to mark the start of a comment can be changed - default is a semicolon.
  111.  
  112.         Skipped opcode bytes are now dumped individually as "db's"
  113.  
  114.         Rewritten the references feature:
  115.  
  116.          + Every instruction is tracked, rather than just the first one
  117.  
  118.          + The Z80 instruction that generated the reference is shown in
  119.            the listing.
  120.  
  121.          + Items are sorted by address / port.
  122.  
  123.          + It's no longer necessary to specify a "max references" amount.
  124.  
  125.         "org (start address)" now precedes labelled disassemblies.
  126.  
  127.         Added support for the Z80-derivative used in the Gameboy handhelds.
  128.  
  129.         The dZ80 source now contains a function to disassemble a single
  130.         instruction. This makes it easy to drop the dZ80 source into
  131.         your own programs, and instantly get a Z80/Z180/Z80GB disassembler.
  132.         Check out the example.c file in the dZ80 source code download
  133.         (http://www.inkland.org/dz80)
  134.  
  135.         Source code change: dZ80_Disassemble() is now thread-safe.
  136.        
  137. Additions and Changes to the command line versions
  138.        
  139.         dZ80.exe is now a 32-bit DOS executable (no more dz80-32.exe)
  140.  
  141.         No more 16-bit DOS version of dZ80 - it's gone on a permanent
  142.         vacation :) Anyone requiring a 16-bit version of the disassembler can
  143.         download dZ80 1.31 from http://www.inkland.org/dz80
  144.  
  145.         Parameters for the command line options can be given in hex or
  146.         octal by using the C style prefixes. E.g. dz80 /s=0x8000
  147.  
  148.         New command line switches:
  149.          
  150.                 -d allows you to override dZ80's default of "db" to represent
  151.                 define-byte. e.g. -d="defb"
  152.        
  153.                 -f allows you to override dZ80's default comment marker ("; ")
  154.                 e.g. -f="# "
  155.        
  156.                 -i allows you to select the radix for dZ80's output.
  157.                         -i=16 = select hexadecimal (default)
  158.                         -i=10 = select decimal
  159.                         -i=8  = select octal
  160.        
  161.                 -p and -y allow you to specify a prefix and suffix for all
  162.                 numbers displayed by dZ80. e.g. -p="0x" -y="" or -p="" -y="h"
  163.        
  164.                 -z selects the cpu type.
  165.                         -z=Z80 selects Z80 (default)
  166.                         -z=Z180 selects the Z180
  167.                         -z=Z80GB selects the Gameboy's Z80 derivative
  168.  
  169. Additions and Changes to the Windows version
  170.  
  171.         The last file disassembled is automatically remembered and selected
  172.         in new sessions.
  173.        
  174.         The details of the last disassembly (for the current session) are
  175.         shown.
  176.  
  177.         The default button on the main dialog is now "Disassemble" (just load dZ80 and hit enter
  178.         if you're working on the same source file!)
  179.  
  180.         You can enter C style hex and octal numbers in the options screen.
  181.        
  182. Bug Fixes (all versions)
  183.  
  184.         Disassembly comments are no longer affected by the upper or lowercase
  185.         options.
  186.  
  187.         Fixed comments which were slightly out of place if on the same line as
  188.         a label.
  189.  
  190.         Fixed the 65,535 byte limit of the "skip file" bytes option, so you
  191.         can finally disassemble files > 64K!
  192.        
  193.  
  194. v1.31 - 28th February, 1998. The Raffaele Sena Release ;-)
  195. ----------------------------------------------------------
  196.  
  197. Thanks to Raffaele Sena for reporting these bugs, and for providing
  198. the fixes, too! I could get used to this :)
  199.  
  200. Additions and Changes to all versions:
  201.  
  202.         Removed references to the two non-ANSI functions "strlwr" and "strupr"
  203.         from the source code.
  204.        
  205. Bug Fixes:
  206.  
  207.         "add ix,ix" (or "iy") was being disassembled as "add ix,hl"
  208.  
  209.         If using an Opcode Map file, dZ80 would attempt to close the file
  210.         twice, resulting in a crash when compiled for linux.
  211.         Note: this problem didn't affect the DOS and Win95 versions.
  212.  
  213.  
  214. v1.30 - 29th November, 1997
  215. ---------------------------
  216.  
  217. Additions and Changes to all versions:
  218.  
  219.         Added support for the Zilog Z180 processor, which fills some of the
  220.         holes in the Z80's EDxx opcode range. Thanks to Bruno G. for the
  221.         information on the Z180.
  222.  
  223.         New command line swich /Z to exclude Z180 instructions from the
  224.         disassembly (they're treated as unknown Z80 ones instead).
  225.  
  226.         To make listings clearer, blank lines are now automatically inserted
  227.         after a "ret", "reti", etc. This new feature can be disabled with
  228.         the /V command line option.
  229.  
  230.         The source code for the command line version of dZ80 is freely available
  231.         from the dZ80 web site at http://www.inkland.org
  232.  
  233. Additions and Changes to the Windows version:
  234.  
  235.         The program that dZ80 launches to view the disassembly with can now be
  236.         selected. It defaults to using Notepad.
  237.  
  238.         The source file is now re-loaded for every disassembly, so that dZ80
  239.         can be left running, the source file can be updated and dZ80 will
  240.         disassemble the updated source file without having to re-select the
  241.         source to re-load it.
  242.  
  243.         Made some cosmetic changes.
  244.  
  245. Bug Fixes:
  246.  
  247.         The Windows version (dZ80w) was not using the "source file starts
  248.         at Z80 address" option correctly.
  249.  
  250.  
  251. v1.21 - 24th August, 1997
  252. -------------------------
  253.  
  254. Additions and Changes:
  255.  
  256.         Changed the default install folder to "Program Files\Inkland\dZ80" to
  257.         keep everything from Inkland in one place. If you're upgrading from
  258.         an earlier version of dZ80 for Windows 95, please uninstall the older
  259.         version first.
  260.  
  261.         When performing a 2-pass (labelled) disassembly, addresses that are
  262.         referenced are now referred to with the label, rather than the address.
  263.         Easier to show than describe! E.g.
  264.  
  265.           l0000: inc a          will now disassemble as:  l0000: inc a
  266.                  jr  nz,#0000                                    jr  nz,l0000
  267.  
  268. Bug Fixes:
  269.  
  270.         None
  271.  
  272.  
  273. v1.20a - 29th April, 1997
  274. -------------------------
  275.  
  276.         The installer was rebuilt with a new version of the install builder.
  277.         This fixes problems with the previous installer which didn't work
  278.         correctly on NT 4.0
  279.  
  280.         Recompiled dZ80 with VC++ 5.0, for better performance.
  281.  
  282.  
  283. v1.20 - 20th April, 1997
  284. ------------------------
  285.  
  286.         Initial public release.
  287.  
  288.         This program shares the same disassembly engine as its DOS command-
  289.         line counterpart. That's why this first release of dZ80 for Windows 95
  290.         is already at v1.20!
  291.  
  292.  
  293. v1.11 - 12th January, 1997
  294. --------------------------
  295.  
  296. Additions and Changes:
  297.  
  298.         Modified the source code to be portable (i.e. separated the
  299.         nasty 16-bit DOS bit).
  300.  
  301.         dZ80 now comes in two flavours: "dz80" the original 16-bit version
  302.         and "dz80-32" a 32-bit version, which works significantly faster.
  303.  
  304.         The source code for dZ80 is now available for porting to another
  305.         platform. If you wish to convert, e-mail me at
  306.         dz80@inkland.org stating which platform you're wanting to
  307.         convert it to, and I'll send you the source.
  308.  
  309. Bug Fixes:
  310.  
  311.         None - really! :)
  312.  
  313.  
  314. v1.10 - 14th December, 1996
  315. ---------------------------
  316.  
  317. Additions and Changes:
  318.  
  319.         Added all known undocumented ED opcodes and also the
  320.         "Super Loader Trap" pseudo opcode ED FB (used by some Sinclair
  321.         Spectrum emulator snapshot files).
  322.  
  323.         Added support for opcode map files. This feature has been tested with
  324.         Gerton Lunter's "Z80" Sinclair Spectrum Emulator map files. See the
  325.         DZ80.TXT file (after installation) for information on the format of
  326.         these files. A small demonstraton of this feature is also supplied.
  327.  
  328.         dZ80 now comes supplied with a sample Sinclair Spectrum snapshot and
  329.         opcode map file.
  330.  
  331.         Made some minor optimisations.
  332.  
  333.         All warnings and errors are now displayed via "stderr" which means
  334.         that they will be visible, even if dZ80's output is redirected.
  335.  
  336.         Added a /q (quiet) command line option. It instructs dZ80 to only
  337.         display the disassembly and no other information.
  338.  
  339. Bug Fixes:
  340.  
  341.         Fixed a problem with disassembling opcodes EDB8 to EDBB.
  342.  
  343.         Fixed a problem with the opcodes 0x22 "ld (nn),hl" and 0x33
  344.         "ld (nn),a", which could sometimes be disassembled as the other.
  345.  
  346.  
  347. v1.00 - 19th November, 1996
  348. ---------------------------
  349.  
  350.         Initial public release.
  351.