home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / program / compiler / nasm20b / doc / changes.txt next >
Text File  |  1993-01-20  |  6KB  |  124 lines

  1. This is the changes file, that explains what has changed over the
  2. revisions: current revision "2.0"
  3.  
  4. 1.0 -  Original <released but never really spreaded>
  5.  
  6. 1.1 -  Changed a lot of  for( ... < ...) into   for( ... != ...)
  7.        Corrected a hilarious bug in err_undefs. (Missing { }). How
  8.        did NASM65 ever work without those ??
  9.        Added noisy tokenizer for TOS version.   (Nat!/1991)
  10.  
  11. -- INBETWEEN --  <start>
  12. 1.0:-  Patch for bug that was intermittently corrected in 1.1 (Nat!/1991)
  13.    ^-----{ NOTE!
  14. -- INBETWEEN --  <end>
  15.  
  16. 1.1 -  Improved int_suckin a bit. Also directive_suckin.
  17.  
  18. 1.2 -  Deimproved some code, made it MSDOS portable. Heavy optimization
  19.        work did strangely enough not pay off anywhere (don't ask me why)
  20.        on paper it looked quite substantial.
  21.        Streamlined I/O further, fixed some bugs in support programs.
  22.        Now forward branches that go over the top give at least a hint,
  23.        where the branch might have been (doesn't work well with macros
  24.        includes and the like).
  25.  
  26. 2.0    Argh! This is already v2.0, a few additions I needed to incorporate
  27.        to 'effortlessly' assemble FTOE (my own gigantic game (har har))
  28.        unfortunately forced a major redesign in the object module
  29.        structure. .DS now creates holes in the binary instead of
  30.        just dropping zeroes. For Display lists and other stuff which
  31.        should lie on page boundaries an -a option has been added.
  32.        (Sorry no GC yet -> 3.0). Some code has been de-inlined to get the
  33.        assembler to a targeted < 50K. More bugfixes than I hoped would
  34.        be neccessary (probably added quite a lot with this version).
  35.        A selection:
  36.          Numerous bugs and improvements in support programs
  37.          more_space   -- only worked for two segments
  38.          clean_labels -- did not clean labels
  39.  
  40. Made the assembler much more usable by countless bug fixes and
  41. improvements.
  42.  
  43.             FOR A REAL RELEASE, VERSION WILL BE SET BACK TO 1.0
  44.  
  45. 1.0   UNIX portability apparently achieved. Looks good right now.
  46.  
  47. ---------------------------------------------------------------------------
  48.                   START OF "REAL USEFUL" CHANGES.TXT
  49. ---------------------------------------------------------------------------
  50. Start:
  51. NASM65  v1.3
  52. NLINK65 v1.1
  53. NLIB65  v1.0
  54.  
  55. ---------------------------------------------------------------------------
  56. 10.Nov.1991: stepped up NLINK65 v1.1 to v1.2
  57.    NLINK65 fixed sizetab[] for 65C02 codes, moved it from WORKER.C to LINK.C
  58.    Allows definition of _BOOT_INIT via -x command line switch
  59.    Writes now correct number of bootsectors
  60.  
  61. Current:
  62. NASM65  v1.3
  63. NLINK65 v1.2
  64. NLIB65  v1.0
  65. ---------------------------------------------------------------------------
  66. 23.Nov.1991: added REPT to the list of directives. added NASM as an (unused)
  67.    enveloping program. No bug fixes! (looks good right now). Improved
  68.    makefiles and the like
  69.  
  70. NASM65  v1.4         
  71. NLINK65 v1.2
  72. NLIB65  v1.0
  73. ---------------------------------------------------------------------------
  74. 29.Dez.1991: recompiled with PURE-C, beautified it up a bit source code
  75.    wise
  76. NASM65  v1.5
  77. NLINK65 v1.3 
  78. NLIB65  v1.1
  79. ---------------------------------------------------------------------------
  80. 16.Jan.1992:           Added ARGV support via PCVSTART.O, made AMIGA 
  81.                        compatibilty changes thanx to dinadan@mcshh.hanse.de
  82. NASM65   v1.6          Fixed a typing error in code.h for PHILOSOPHICAL
  83. NLINK65  v1.4          code. Fixed filename extension memory clobber bug
  84. NLIB65   v1.2          Object files made prettier a bit. Dinadan fixed two
  85. DISASM65 v1.7          bugs (one each) in XTRCTBIN & CHKFFFF. Fixed one bug
  86. XTRCTBIN v1.1          in MD_SUCK (for 680[234]0 machinery)
  87. DEMAC65  v1.4          XTRCTBIN now (hopefully) converts Atari binaries into
  88. CHKFFFF  v1.1          C64 & AppleII binaries. UNIX portablity achieved
  89.                        yet once again (har har). Cut filenames in error
  90.                        messages. Added C64 and AppleII to disassembler.
  91.                        
  92. ---------------------------------------------------------------------------
  93. 18.Sep.1992:           Fixed 'date' bug in "changes.txt" for last rev. (har)
  94.                        Fixed two really atrocious bugs.
  95.                        Fixed one lame (but TOUGH to trace down) nfree()
  96.                        bug.
  97.                        To remain compatible with some bogus 32-bit                        
  98. NASM65   v2.0          compilers, I needed to incorporate a change in the
  99. NLINK65  v2.0          filestructure. This means that the object files go
  100. NLIB65   v2.0          downwards incompatible from now on!! This also gave
  101. DISASM65 v1.8          me the chance to increase the identifier length in
  102. XTRCTBIN v1.2          the object table to 32 characters. You PASCAL-
  103. DEMAC65  v1.5          like coders, can now write (and link)
  104. CHKFFFF  v1.2          THIS_VARIABLE_COUNTS_MICE   .byte 2 
  105. CRLF155  v1.7          THIS_VARIABLE_COUNTS_SHEEP  .byte 234
  106.  
  107. (It should be possible, that) old objects can be extracted from libraries, 
  108. but old objects can not be added. Due to an error in the library code, 
  109. libraries generated on INTEL (BIGENDIAN) machinery were never compatible. 
  110. This has been fixed. 
  111. Unfortunately for those users downward compatibility has been lost!
  112.  
  113. Made a full hearted attempt at providing PC compatibility. Since that 
  114. system sucks even more than previously suspected, I can't make any 
  115. guarantees about stability. As soon as the PC goes to 32-bit, this should 
  116. work just dandy. My once beautiful source has been now littered with 
  117. 'huge' pointers, ridiculous casts and other kludgey stuff.
  118.  
  119. Again to the port to MSDOS. Everything seems to work except the damned
  120. linker. TC3.0 couldn't deal with huge pointers correctly and TC2.0 (I 
  121. dunno) code chokes somewhere, sometime unpredictably. I think this is
  122. fixed now with the nfree() fix.
  123.  
  124.