home *** CD-ROM | disk | FTP | other *** search
/ Gold Fish 3 / goldfish_volume_3.bin / files / dev / asm / snma / history < prev    next >
Encoding:
Text File  |  1995-09-18  |  7.1 KB  |  177 lines

  1.  
  2.     History
  3.     ~~~~~~~
  4.  
  5.     First, thank you for your bug reports, comments and suggestions.
  6.  
  7.     Thanks to the following people (in no particular order):
  8.     (Sorry, if I have forgotten someone and for misspelled names).
  9.  
  10.     Gunther Nikl, Veli Nuutimäki, Eric Augustine, Laura Mahony,
  11.     Marco Nelissen,  Jarkko Vatjus-Anttila, Yambo.
  12.  
  13.     V2.00
  14.     o (An,Xn) is finally allowed in 68000/010 cpu mode.
  15.     o tst lab was optimized to tst lab(pc) when only 68000/010 cpu was
  16.       allowed.
  17.     o Power ('^^') operator
  18.     o EOR/XOR ('^') operator ended expression
  19.     o Bitfield offset and width can now be defined after they use.
  20.     o Various small bugs fixed
  21.     o xdef and xref caused crash if operands had illegal chars.
  22.     o Floating point numbers with exponent were incorrect.
  23.     o FTENTOX was coded badly.
  24.     o CNUL, DX and MOVE16 caused snma to guru when generating
  25.       listing file.
  26.     o When running out of mem, requester allows retry.
  27.     o Memory usage for the end message (shell interface).
  28.     o Pre-defined (commandline & optfile) symbols.
  29.     o Macros with MEXIT and ENDC won't miss the ENDC.
  30.     o Immediate data range checking can be turned off and it works
  31.       for symbols which are declared after use.
  32.     o Pre-assembled include files, which contain symbol and macro
  33.       definitions of include files (was in V1.99 but I forget to
  34.       mention it here). See INCLUDE and Arexx/MAKEGB docs.
  35.     o ADDGB ARexx command lost main source file symbols after one
  36.       INCLUDE operation. ADDGB is now a bit slower when there are many
  37.       symbols, but it works as intended.
  38.     o Bitfield stuff was broken in    V1.99.
  39.  
  40.     V1.99
  41.     o Relative-relative (difference between labels) symbol was set as
  42.       relative (ext_def) instead of correct ext_abs when xdef'ed.
  43.     o Arexx startup now toggles snma on/off.
  44.     o Some bugs from INCBIN removed.
  45.     o "=" operator didn't produce FALSE (0) if the operands were not
  46.       equal.
  47.     o '040 stuff. MOVE16, CINV, CPUSH, MMU & FPU commands. Special regs.
  48.     o Object file is no longer deleted if snma is trying to produce
  49.       executable and there are errors and vice-versa.
  50.     o Floating point equate file equates were screwed up as well as
  51.       packed type conversion (nobody seems to use this :).
  52.     o CASESEN=OFF caused xdefs to fail.
  53.     o local symbols .l and .w were mixed up with long and word suffix,
  54.       resulting enforcer hit and garbage expression.
  55.     o Dcb directive works now like ds directive if it has only one
  56.       parameter.
  57.     o Lists with two successive commas are now handled (like x,,y).
  58.     o Searches include files also from the directory where snma was
  59.       started from (used to search only from where source file is).
  60.  
  61.     V1.97
  62.     o Case-insensitive symbol names option.
  63.     o ELSE directive works now.
  64.     o Some new directives (types.i stuff mainly).
  65.     o New expression handler (boolean operators).
  66.     o IFs were tested even if assembly was toggled off.
  67.     o Some errenous expressions - like (A)A -  don't crash anymore.
  68.     o Multilevel optimizing.
  69.     o Macro directive allows macro name as parameter.
  70.     o DX directive (BSS to code or data hunk).
  71.     o Absolute+Relative bug fixed (if in different hunks).
  72.     o divu.l works (argh).
  73.     o LINE DEBUG HUNK
  74.     o Octal numbers.
  75.  
  76.     V1.95
  77.     o ERRCOLOR keyword in template. Highlight error char.
  78.     o AREXX/REMGB without parameters didn't work (+ fixed one mungwall hit
  79.       from it).
  80.     o QUIET startup switch disables only startup message. (You can redirect
  81.       output to the nil: if you don't want any output).
  82.     o SNMAOPT M controls now movem optimizing.(It was in Q flag).
  83.     o End message is now little different in shell mode.
  84.     o OPT directice changed to SNMAOPT to avoid any confusion.
  85.     o fmovecr generated also extended immediate data.
  86.     o Output file naming failed with ".s" extension (ooouups).
  87.     o Behaves little better when running out of memory.
  88.     o LABEL INCBIN <file>, LABEL get wrong value. (Veli Nuutimäki).
  89.     o NULL byte in source ends it (to avoid to assemble binaries).
  90.     o SELFCHECK arexx command.
  91.     o Fmove.l #imm,fpcr works.
  92.     o FBxx works now (Eric Augustine).
  93.     o shift/rotate to <ea> generated spurious code.
  94.     o INDEX register scale was allowed in 68000/010.
  95.     o CNOP started to act like maniac if PC was more than 2^16.
  96.     o addq/subq with undefined (at 1st pass) value, caused snma to begin
  97.       'flying high again' actions. (Gunther Nikl).
  98.     o "'" or '"'  works now (Gunther Nikl).
  99.     o HUNK_RELOC32SHORT (implemented as 1015) to executables.
  100.     o Produces also executables. (Laura Mahoney).
  101.     o OPT A (address mode optimizing) was implemented as OPT E.
  102.     o code_f, data_f, bss_f section types were not recognized.
  103.     o FO, CLRFO, SETFO directives.
  104.     o RS, RSRESET. RSSET directives (Marco Nelissen).
  105.     o 'Old syntax' address mode had problems when base displacement had
  106.        parenthesis around it.
  107.     o Allows 99 macro parameters plus "<something>" parameters.
  108.  
  109.  
  110.     V1.91
  111.     o if any of cmpa operands had symbol which was relative or not defined
  112.       in pass1, snma had serious problems.
  113.     o If macro called another macro, \@ (unique label for one macro call)
  114.       was different before the another macro call and after it.
  115.     o Symbols which had only one char were not handled correctly.
  116.  
  117.     V1.90
  118.     o moveq didn't allow xref'd data.
  119.     o mc68xxx directives
  120.     o Command line additions ([-option])
  121.     o Object code naming now also checks ".s" and ".a" suffix.
  122.     o OBJ filename in template was ignored (oh my).
  123.     o tst with pc-relative was allowed on 68000 mode.
  124.     o ext_ref symbols with same name were written many times, causing
  125.       larger object file size (not actual code size).
  126.     o xdef symbols were written to the all sections.
  127.     o divu.l wasn't allowed.
  128.     o Equates with relative components are handled better now.
  129.     o Minimal WorkBench support
  130.     o \*VALOF() + other macro 'insert functions'.
  131.     o abslong to pc-relative optimizing.
  132.     o DC generated too much data if the 2nd operand of the
  133.       previous instruction was one which took some space.
  134.     o REPT/ENDR directives
  135.     o Global symbol table.
  136.     o In cases where reloc was needed didn't create it, when
  137.       symbol referred to equate which type was relative.
  138.     o Equates with relative components are no longer written to
  139.       the symbol list.
  140.     o CHDIR (AREXX) command called FreeVec with wrong argument,
  141.       causing memory loss (no crash, at least in my system).
  142.  
  143.     V1.70
  144.     o BTST/BCHG/BSET/BCLR  Dn,<ea> set always <ea> as d0. (uups)
  145.     o MOVEP didn't allow zero displacement.
  146.     o ENDC switched assembly on sometimes when it shouldn't.
  147.  
  148.     V1.68
  149.     o Some minor bug fixes and changes (okay, I forgot them).
  150.  
  151.     V1.65
  152.     o Address components which started with 'Z' or 'z' were
  153.       parsed to the totally wrong thing. (Bad one).
  154.     o IFGT did unsigned test, instead of signed.
  155.     o Didn't notice all cases when macro was already defined.
  156.     o Include <devicename:filepath> didn't work.
  157.     o Expression handler didn't catch all undefined symbols.
  158.     o AREXX, SET command.
  159.     o 'TST An' in 020+ mode wasn't allowed.
  160.     o Destination address mode optimizing in move instruction
  161.           generated spurious opcodes in some cases.
  162.     o Movem->move optimizing.
  163.  
  164.     V1.60
  165.     o AREXX PORT finally added
  166.     o Several bugs fixed
  167.     o LONGBRA flag to the template
  168.     o ZAn no longer required if An omitted in addressing mode.
  169.  
  170.  
  171.     ========================================================================
  172.  
  173.     Probaply I don't remember all the changes and fixed bugs, but I
  174.     hope all the major ones are here.
  175.  
  176.     First released version of SNMA is 1.39.
  177.