home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 283.lha / ReSource_v3.01_Demo / History.doc < prev    next >
Encoding:
Text File  |  1989-09-07  |  13.9 KB  |  284 lines

  1. The main document files on this disk are formatted for printing on normal-
  2. sized (66 lines per page) fanfold paper.  To print, from a CLI, type:
  3.  
  4. type > prt: Introduction.doc
  5. type > prt: Reference.doc
  6.  
  7. **********************************************************************
  8.  
  9. To make the best use of the menus, run "FastFonts" by MicroSmiths, or
  10. "Blitzfonts" by Hayes Haugen.  If you don't, the menus will be very sluggish
  11. to scan through, because of the large number of sub-menu items.
  12.  
  13. **********************************************************************
  14.  
  15. The file "arp.library" must be available for ReSource to run.  ReSource will
  16. look for "libs:arp.library" OR "ReSource:libs/arp.library".  This allows you
  17. to run ReSource after booting on a disk that does NOT have arp.library in
  18. its' LIBS:  directory. 
  19.  
  20. **********************************************************************
  21. In an effort to minimize piracy, each copy of ReSource sold is individually
  22. assembled and linked, making it easy to tell who the original purchaser was,
  23. should it be pirated.  Should you find any commercial copies of ReSource
  24. "floating around", send a copy to the author:
  25.  
  26. Glen McDiarmid
  27. 28 Marginson Street,
  28. Ipswich, Queensland
  29. 5405      AUSTRALIA
  30. (07) 812-2963
  31.  
  32. If you are the first to send in that particular copy of ReSource, you will
  33. recieve a complementary copy of my next software release.  In any case,
  34. I will send back to you, the latest version of ReSource.  This offer
  35. applies only to original purchasers of ReSource.
  36. **********************************************************************
  37. Bug fixes/Late changes:
  38.  
  39. V3.01 (06 April 1989):  The new "Origin" functions were not functioning
  40. correctly.  Fixed.  Some functions which should have triggered a screen
  41. update were not doing so.  Fixed.  Two new symbol bases were added; 
  42. "Janus library" and "Rexxsyslib".  A user reported that when the "All" option
  43. for "blank lines" was selected, "JSR" and "BSR" lines should have been
  44. followed with a blank line.  These functions now work slightly differently in
  45. the menus; you may select "Unconditional", "Conditional", or "Calls".  You
  46. may select more than one, in this case a blank line will appear after any
  47. line which falls into any of the selected categories.  Lines will never be
  48. followed by more than one blank line, regardless of how many selected
  49. categories it falls into.
  50. **********************************************************************
  51.  
  52. V3.00 (01 April 1989):  This is the third upgrade to ReSource.
  53. New features include:
  54.  
  55. PROJECT/O'lay binary image:  This function prompts you for a filename. 
  56. ReSource will attempt to open the file, and read the contents, overlaying the
  57. current file.  This is NOT the same as opening a file normally, as all
  58. labels, symbols, comments, data types, etc., stay as they are.  Only the
  59. actual contents of the executable itself are overwritten.  For example, you
  60. may wish to pass on a ".RS" file to someone, but because the program you have
  61. disassembled is copyrighted, you cannot legally distribute the normal .RS
  62. file, as it contains the executable.  By using this function, and inputting a
  63. filename of "*" (asterisk), ReSource will completely clear the executable
  64. within the current file.  You may then save to a ".RS" file, which may then
  65. be distributed, void of the executable.  If another person has previously
  66. purchased the program that you have disassembled, he/she may load it into
  67. ReSource, and use "SAVE/Save binary image/All", to save the executable to a
  68. file.  He/she then loads the special .RS file which you created.  Next, he/
  69. she then uses "PROJECT/O'lay binary image", supplying as a filename, the name
  70. of the file previously saved with the "SAVE/Save binary image/All" function. 
  71. This effectively puts the executable back into the .RS file.  The other save
  72. functions may then be used, to save to a .asm file, for example.
  73.  
  74. Several new symbols bases are now available, including:
  75. Arexx library (previously ghosted)
  76. Color entry
  77. Devinfo
  78. Expansion int
  79. PrtInfo
  80. RomBoot Base
  81.  
  82. STRINGS/Accumulator/:
  83. Previously, if any maths functions were used, the accumulator would always
  84. show the results in hex.  You may now choose between hex, decimal, or binary.
  85.  
  86. SPECIAL FUNCTIONS/Origin/:
  87. There is sometimes a requirement to disassemble a block of code, as if it is
  88. loaded to some particular area of memory, other than that to which it is now
  89. loaded.  For example, if you disassemble Kickstart, and save the binary
  90. image, then later load this into ReSource, it will not disassemble properly
  91. unless ReSource "thinks" that it's origin is $FC0000.  To do this, load the
  92. file, then use the "Specify" option.  Both the "Specify" and "Set" sets the
  93. origin to an absolute address, the "Set" option is the same as "Specify",
  94. except it assumes that the current loading address is to be used.  These
  95. options are really only useful if the file is loaded as a binary image, or
  96. from track, or memory.  If loaded from an executable, the reloc32 information
  97. will ensure that proper relocation is done where needed.  It is because no
  98. reloc32 information is available when loading other files, that this function
  99. is required.  To remove the origin, so that it uses whatever actual address
  100. the file is loaded to, use the "Clear" option.
  101.  
  102. SPECIAL FUNCTIONS/Reloc32/:  Use these functions to specifically delocate or
  103. relocate the current file.  Is only useful if file was loaded from an
  104. executable, where reloc32 information is present.  Be aware that relocation
  105. is performed immediately after the "PROJECT/O'lay binary image" function,
  106. when a file is actually loaded.
  107.  
  108. OPTIONS 2/Leading zeroes/:  Use these options to specify whether or not you
  109. wish the leading zeroes on hex values to be shown.
  110.  
  111. OPTIONS 2/Assembler/:  Use these options to specify  which assembler the
  112. output should be suitable for.  Metacomco output currently works with CAPE as
  113. well, although smaller files will result with CAPE output.  Currently, "dc.b"
  114. will be shown as "db", "dc.w" is shown as "dw", and "dc.l" is shown as "dl",
  115. if CAPE is chosen.
  116.  
  117. The program "ShowKeys" was updated, to recognize the new functions.  Also, it
  118. now looks for ctrl-c.
  119. **********************************************************************
  120.  
  121. V2.42 (14 March 89):  Several symbols in "rawkey codes" symbol had
  122. incorrect values.  These were corrected.  Whenever a "load file" was opened
  123. that contained labels of 16 characters long, ReSource would lock up.  Fixed.
  124. There is a new distributor for ReSource in the USA.  Contact:
  125.  
  126. The Puzzle Factory
  127. P.O. Box 986
  128. Veneta, OR 97487  USA
  129. (503) 935-3709
  130.  
  131. V2.41 (21 Feb 89):  CAPE macro assembler release 2.00 now used to assemble
  132. ReSource.  When a DIVS, DIVU, MULS or MULU opcode had an immediate source
  133. operand greater than $FF, only the lower byte value would be shown.  For
  134. example, " DIVS   #$3E8,D0" was shown as " DIVS   #$E8,D0".  Fixed.
  135. Code is now disassembled around 30% faster than in previous versions.
  136. A bug which sometimes caused the "calculate .asm size" function to crash was
  137. reported to me.  I also received an .RS file which I was able to use to track
  138. down the bug.
  139.  
  140.  
  141. V2.38: (1 Feb 89):  Several bugs were introduced in V2.37 when the CAPE
  142. assembler was used.  Until the problems are sorted out, Metacomco will be
  143. used.  This version should be identical to V2.36.
  144.  
  145. V2.37 (11 Jan 88):  Used CAPE assembler to assemble ReSource.  (Metacomco
  146. was used previously).  No actual changes to source for this release.
  147.  
  148. V2.36 (24 Nov 88):  PC-Relative addressing modes now fully supported.
  149. e.g.:
  150.  
  151.            MOVE.L   MyLabel(PC),D0
  152.            ... rest of code
  153. MyLabel:  dc.l      0
  154.  
  155. V2.35 (17 Nov 88):  Blank lines were not shown properly.  Fixed.
  156.  
  157. V2.34 (16 Nov 88):  In various places, ReSource was putting extra spaces in
  158. the output .asm file, notable on blank lines, and after the "RTS"
  159. instruction.  This has been eliminated.  The "MOVEQ.L" instruction was
  160. changed to "MOVEQ", also to decrease the size of the .asm file.  Where a
  161. JSR uses a PC-relative address, this shows now as "JSR Label(PC)". The same
  162. applies to the JMP instruction.  Flip case for code was not working
  163. properly, this was fixed.  Local labels are now supported.  When ReSource
  164. decided that you had were trying to create a duplicate label, you had to
  165. "click" in the resulting requester, before typing in the new label name.
  166. Fixed.  Offset -6 in the potgo.device was incorrect, it now properly shows
  167. "_LVOAllocBits". Single quotes are now shown properly in ASCII strings, as
  168. two single quotes.
  169.  
  170. V2.33 (23 Nov 88):  When the last occurence of a particular symbol is
  171. removed, the entry in the equate/ xref table is now also removed.  When
  172. creating a symbol, unless a macro is being either created or executed, the
  173. symbol creation will fail if it is already defined as a label.  This only
  174. applies to manually defined symbols.  There is still no checks to make sure
  175. that you do not define a symbol twice, to two different values.  In this
  176. case, the entry in the equate table will equate the symbol to the first
  177. replacement value.  This will be fixed in a later version.  For now, just
  178. be aware of the potential problem.
  179.  
  180. V2.28 (24 Oct 88):  When allocating a larger memory block for list nodes,
  181. the size was calculated by doubling the original block size.  To make better
  182. use of (limited) memory, the new block size is now 1.5 times the size of the
  183. original.  When the multiply function was used, it would sometimes cause a
  184. 'macro fail' when it shouldn't have.  Fixed.
  185.  
  186. V2.27 (16 Oct 88):  Some forms of references were not being recognized when
  187. disassembling directly from memory, or binary files.  Fixed.
  188.  
  189. V2.26 (15 Oct 88):  When a file was loaded with label (debug symbols) that
  190. refered to locations beyond the end of the file, ReSource would crash.  Now,
  191. ReSource will not use labels unless they are refer to locations within the
  192. current file.
  193.  
  194. V2.25 (10 Oct 88):  "SYMBOLS 2/H-I/Hunk types" created incorrect symbols for
  195. some values.  Fixed.
  196. A bug introduced in V2.24 which resulted in some bad code being produced was
  197. fixed.  E.G.:
  198.          OR.W     D0,-$0004(A5),D0
  199.  
  200. V2.24 (02 Oct 88):  "SPECIAL FUNCTIONS/Convert xx(A4)'s" changed so that
  201. relative Effective Addressing is still used, but instead of using an absolute
  202. offset, a relative offset is achieved.  I.E:
  203.  
  204.      MOVE.L    -$541E(A4),D0
  205. .. becomes ...
  206.      MOVE.L    lbC000342-DT(A4),D0
  207. .. instead of ...
  208.      MOVE.L    lbC000342,D0
  209.  
  210. This will require you to define the label "DT".  Normally, it will be placed
  211. where the A4 register points to in the file.  However, sometimes A4 will
  212. point to some place beyond the end of the file, you can still equate "DT" to
  213. that address:
  214.  
  215. DT     equ     START+$19042
  216.  
  217. As long as "DT" is within 32K of all labels that require relative addressing
  218. from A4, you can place DT anywhere you want.  For programs smaller than 64K,
  219. you could place "DT" in the middle of the file, and all parts of the file
  220. would be able to be referenced from an offset from A4, both data AND code,
  221. providing that they are in the same section as "DT".
  222.  
  223. The advantage of using relative addressing is mostly in program size, however
  224. some speed increase is likely also.  Each time you use relative addressing
  225. instead of absolute addressing, you will save at least SIX bytes in program
  226. size, but only two bytes for the loaded program size.  When this function was
  227. used previously, it usually resulted in a file that was much larger than the
  228. original.  Now, it should be approximately the same size as the original,
  229. when you reassemble the source code that you create.
  230.  
  231. When "SAVE/Save .asm" was used, and the destination device became full before
  232. all of the file was saved, if the user hit "Cancel" on the system requester,
  233. the file was not properly deleted.  Fixed.
  234.  
  235. To help with programs that use A-line and F-line instructions, these will be
  236. shown as a macro, named "AFLINE", the only operand being the word value. 
  237. Where this has been detected in the file, and "SAVE/Symbol table" is active,
  238. the appropriate macro will be defined at the start of the output file:
  239.  
  240. AFLINE       macro
  241.              dc.w      \1
  242.              endm
  243.  
  244. The "EXG" instruction was displaying its operands in the reverse order. 
  245. Fixed.
  246.  
  247. V2.23 (22 Sep 88):  "CURSOR/Absolute/Fwd reference" and
  248. "CURSOR/Absolute/Second fwd reference" would not accept references to the
  249. first byte in any file.  Fixed.
  250. "SYMBOLS 2/A-B/Breakbits" now shows multiple symbols correctly.
  251.  
  252. V2.22 (22 Sep 88):  When extremely long lines of ASCII were displayed, the
  253. output buffer sometimes overflowed.  The maximum line length for ascii
  254. lines is now 256 characters.  The output buffer size was increase from 4K
  255. to 8K, so that displays with many long ASCII lines will be displayed
  256. fully.
  257. When a program with an extremely high number of symbols was saved as a
  258. .asm file, the output buffer would overflow, usually resulting in a
  259. GURU.  The equates table is now saved after each line.
  260. It was not mentioned in the main documentation that .RS files saved under
  261. V2.XX cannot be loaded by previous versions of ReSource.  However, ALL .RS
  262. files created by V2.XX and previous, can be loaded by V2.XX.  .RS files
  263. saved under V2.XX are compressed before saving, resulting in much smaller
  264. .RS files.
  265.  
  266. V2.21 (20 Sep 88):  If a full-line comment starts with a semicolon, it will
  267. be shown WITHOUT a semicolon.  When this happened, it was being shown one
  268. character too long.  Fixed.
  269. If the OpenLibrary call for "arp.library" fails, ReSource now tries to open
  270. "ReSource:libs/arp.library" instead.  Thanks Charlie!!
  271. When "SYMBOLS 1/Libraries/Dos" was used for offset -$A2, "_LVODirPacket" was
  272. given, instead of "_LVOGetPacket".  Fixed.
  273. "ShowKeys" program added to distribution disk.
  274.  
  275. V2.20 (18 Sep 88):  Even though "DISPLAY/Decimal conversion/None" may have
  276. been selected, zeroes were still being shown in decimal ("0" instead of
  277. "$00").  Fixed.
  278.  
  279. V2.19 (15 Sep 88):  If "LABELS/Create single/Label" is used inside a macro,
  280. the check for duplicate labels is no longer made.  Outside of macros, the
  281. user will be asked again for a label, until either a unique label is given,
  282. or the user selects "cancel".  Inside macros, define the accumulator string,
  283. and use "Put label" to ensure unique labels are used.
  284.