home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / rs60-1.dms / rs60-1.adf / ReadMe < prev    next >
Encoding:
Text File  |  1994-04-24  |  50.1 KB  |  1,119 lines

  1. *****************************************************************************
  2. *            ---==== Introduction for New ReSource Users ====---            *
  3. *****************************************************************************
  4.  
  5.                                                                    April 1994
  6. Dear ReSource Owner,
  7. Thank you for purchasing ReSource!  We hope that you enjoy using it and that
  8. you find it a useful tool.  Here are some things you should know:
  9.  
  10.   ReSource runs on any 680x0 CPU, but automatically detects the presence
  11.   of an 020/030/040 CPU and runs faster routines if possible.
  12.  
  13.   ReSource will allow you to create source code in either traditional
  14.   68K syntax, or the new Motorola M68000 Family assembly language
  15.   syntax, and is fully compatible with the Macro68 assembler.  By
  16.   selecting the appropriate option, the output can be made compatible
  17.   with CAPE, Metacomco, DevPac or ArgAsm assemblers.
  18.  
  19.   You may choose either "strict" or "relaxed" syntax.  For example, when
  20.   an address register is the destination, "MOVEA" is the proper
  21.   instruction, but may be displayed as simply "MOVE" by not using
  22.   "strict" mode.
  23.  
  24.   A powerful online help facility featuring hypertext word indexing is
  25.   included.  This enables you to get in-depth help about any function at
  26.   the touch of a key.
  27.  
  28. An Intuition disassembler and a Copper list disassembler are included in this
  29. release.  These programs can provide a lot of information about the
  30. structures used to create a GUI, as well as making your own interface layouts
  31. easier.
  32.  
  33. ERRATA: In the In-Depth Tutorial, starting on page 5-1 of the manual, "kp9"
  34. is referred to when creating labels.  This is incorrect.  The correct key to
  35. use when creating labels is "kp*".
  36.  
  37. UPDATE POLICY: In order to clear up any confusion in this area, be aware that
  38. it is the policy of The Puzzle Factory to *not* send out update notices for
  39. minor bug fixes that would not affect the majority of ReSource owners.  If
  40. you are having a problem, please contact The Puzzle Factory or your
  41. distributor to find out if a later version of ReSource is available.
  42.  
  43. PLEASE register!  If there are any serious problems, we need to know how to
  44. get in touch with you.  Fill out the registration card and mail it today!
  45.  
  46.  
  47. *****************************************************************************
  48. *           ---==== Introduction to ReSource Version 6.00 ====---           *
  49. *****************************************************************************
  50.  
  51. This file comprises documentation on the changes to ReSource since release
  52. V5.10.  It is not intended to be a substitute for the ReSource V5 manual.  If
  53. ReSource is new to you, please read the manual first!  For all those loyal
  54. fans who have used and appreciated ReSource through the years, thanks!  We
  55. hope you like what you see.
  56.  
  57. The greatest areas of development have been to make ReSource more productive,
  58. more system compatible, and to give it a better GUI.  In some ways, these
  59. last two goals are similar.  Please notice that the menu strip is much
  60. smaller, and more manageable, and that important functions have their own
  61. interface windows.
  62.  
  63. The main improvements to this release are summarized below:
  64.  
  65.   + Added PROGDIR: support for most support files and all libraries.
  66.   + No more ARP and associated cache problems with advanced processors.
  67.   + ReSource is now compatible with Intuition, and provides a public screen.
  68.     You may now run your favorite utilities on ReSource's screen.
  69.   + New command line and Workbench option flags include a Screen Mode
  70.     requester.
  71.   + The displayable character set now includes all printable characters.
  72.     from the Latin1 character set.  This includes the copyright symbol and
  73.     International ASCII characters.
  74.   + We removed the hundreds of Symbols menu items, and developed a 3-part,
  75.     scrollable Symbol Requester.  The built-in symbol bases now correspond
  76.     completely with the 39.108 Include.i release.
  77.   + Support for multiple symbols in the same base that resolve to the
  78.     same value (unions, etc.) has been added.  For example, if given the
  79.     number "8", in the symbol base "DosPacket", you may now choose from
  80.     "dp_Type" and "dp_Action".  This makes your source code clearer.
  81.   + Macro creation and execution, environmental Options, and the old,
  82.     confusing search items have all been removed from the menus and given
  83.     their own requester windows.  All of these windows, as well as the Symbol
  84.     Requester may be freely opened, closed, moted, and depth arranged as you
  85.     do your work.
  86.   + Release 6 completely disassembles the entire MC68000 family including:
  87.       68000, 68010, 68020, 68030, and 68040 CPUs
  88.       68881, 68882, and 68040 FPUs
  89.       68851, 68030, and 68040 MMUs
  90.   + Full support of floating point code, including 4 new data types, and a
  91.     special floating point library.
  92.   + Online help has been updated to include all the new features.  You can
  93.     now use the help system to get information about all the OS V39 System
  94.     Library functions.  This includes the name, a one-line function synopsis,
  95.     and register usage.
  96.   + The "zap" function has a new requester window that includes data type and
  97.     size gadgets, and a mini-assembler for code modifications.
  98.  
  99. Please read this file carefully.  Many things have changed.  Whether you are
  100. a long time ReSource user or a new user, you will need to know both what is
  101. different and what is new in order to take full advantage of the power built
  102. into ReSource Release 6.
  103.  
  104. Sincerely,
  105. Jeff Lavin
  106. Thg Puzzle Factory
  107.  
  108. *****************************************************************************
  109. *                        ---==== INSTALLATION ====---                       *
  110. *****************************************************************************
  111.  
  112. ReSource Release 6 requires V37 (2.04) or higher of the Amiga OS.  It will
  113. not be possible to use this release otherwise.
  114.  
  115. Because of the size of the support files for Release 6, ReSource will no
  116. longer be useful on a system with 1 megabyte of ram.  Merely running this
  117. release without loading a file requires close to 400K.  We suggest at least 2
  118. megabytes of ram to do useful work.  For the same reason, we no longer
  119. support installation to floppy disk.
  120.  
  121.                      -----------------/-----------------
  122.  
  123. There has been a change in where ReSource looks for its support files.
  124.  
  125. For non-system libraries, it looks in these places, in order:
  126.  
  127.    PROGDIR:libs/, libs:, libs:ReSource/, ReSource:, and ReSource:libs/
  128.  
  129. For RS.Keytable and RS.Macros, when first started, it looks in these places,
  130. in order:
  131.  
  132.    CurrentDir, PROGDIR:, and S:
  133.  
  134. All other locations mentioned in the manual are NO LONGER VALID!
  135.  
  136.                      -----------------/-----------------
  137.  
  138. There are 2 different ways to install ReSource.
  139.  
  140. In the historical installation, everything goes into your SYS: partition, and
  141. all files are always global.  This can create problems for people who have a
  142. small SYS: partition.  In order to support Commodore's installation
  143. guidelines, we have provided an alternative installation procedure.
  144.  
  145. In the PROGDIR installation, everything is installed in one directory,
  146. usually on the Work: partition.  All file accesses are relative to this
  147. directory, but instead of being able to type 'run ReSource', you must enter
  148. 'run <PROGDIR>/ReSource' or its equivalent.  All this typing may be eased by
  149. the use of an alias.
  150.  
  151. At this point you can run the supplied script (located on ReSource_3:) to
  152. install ReSource, which will do the PROGDIR installation, or you can choose
  153. to do it yourself by following the directions below.  Note that these
  154. instructions do not install the include files, or anything not essential to
  155. the operation of ReSource itself.
  156.  
  157.                      -----------------/-----------------
  158.  
  159. The Historical Installation
  160. ===========================
  161. You will need approximately 810K of total free space for all these files.
  162.    
  163. 1. Copy all executables to somewhere in your executable path:
  164.  
  165.    > Copy ReSource_1:ReSource        SYS:Tools/    ;For example
  166.    > Copy ReSource_1:ReSource.info   SYS:Tools/
  167.    > Copy ReSource_1:ShowMacros      SYS:Tools/
  168.    > Copy ReSource_1:ShowMacros.info SYS:Tools/
  169.    > Copy ReSource_1:ShowKeys        SYS:Tools/
  170.    > Copy ReSource_1:ShowKeys.info   SYS:Tools/
  171.  
  172. 2. Copy the data files to S:
  173.  
  174.    > Copy ReSource_1:RS.Macros     S:
  175.    > Copy ReSource_1:RS.KeyTable   S:
  176.  
  177. 3. Copy the library files to libs:
  178.  
  179.    > Copy ReSource_1:libs/ReSourcehelp.library libs:
  180.    > Copy ReSource_1:libs/ReSourcesyms.library libs:
  181.    > Copy ReSource_1:libs/ReSourceutil.library libs:
  182.    > Copy ReSource_1:libs/simpleasm.library    libs:
  183.    > Copy ReSource_1:libs/fpsupport.library    libs:
  184.  
  185.    or create a directory in libs: named "ReSource":
  186.  
  187.    > makedir libs:ReSource
  188.    > Copy ReSource_1:libs/ReSourcehelp.library libs:ReSource/
  189.    > Copy ReSource_1:libs/ReSourcesyms.library libs:ReSource/
  190.    > Copy ReSource_1:libs/ReSourceutil.library libs:ReSource/
  191.    > Copy ReSource_1:libs/simpleasm.library    libs:ReSource/
  192.    > Copy ReSource_1:libs/fpsupport.library    libs:ReSource/
  193.  
  194. 4. Copy the doc files wherever you wish:
  195.  
  196.    > Copy ReSource_1:ReadMe                   <somewhere>/
  197.    > Copy ReSource_1:ReadMe.info              <somewhere>/
  198.    > Copy ReSource_2:Docs/ShowMacros.doc      <somewhere>/
  199.    > Copy ReSource_2:Docs/ShowMacros.doc.info <somewhere>/
  200.    > Copy ReSource_2:Docs/ShowKeys.doc        <somewhere>/
  201.    > Copy ReSource_2:Docs/ShowKeys.doc.info   <somewhere>/
  202.  
  203. 5. If your version of asl.library is <39.4 you may optionally copy
  204.    asl.library V39.4 to your libs: directory.  This will allow you to use
  205.    the screen mode requester if you wish:
  206.  
  207.    > Copy ReSource_1:libs/asl.library libs:
  208.  
  209. 6. If you wish to use the RCL functions (see the doc file), then:
  210.  
  211.    > Copy ReSource_2:CFuncs.rcl libs:
  212.  
  213. 7. Done.  ReSource is installed and ready to work.
  214.  
  215. There are also other utilities, doc files, and system files on the disks.
  216. Take a look at what is available, and decide if you want these available
  217. on your hard drive.
  218.  
  219. Skip to the next section.
  220.  
  221.                      -----------------/-----------------
  222.  
  223. The ProgDir Installation
  224. ========================
  225. 1. Create a directory somewhere on your hard drive.
  226.    You will need approximately 810K of free space on this partition.
  227.    For purposes of discussion we will call this directory "Work:RS",
  228.    but you can locate it anywhere you like.
  229.  
  230.    > makedir Work:RS
  231.  
  232.    Make another directory named "libs" inside RS:
  233.  
  234.    > makedir Work:RS/libs        ;MUST be named "libs"
  235.  
  236. 2. Copy all this stuff into the directories you just created:
  237.  
  238.    > Copy ReSource_1:ReSource       Work:RS/
  239.    > Copy ReSource_1:ReSource.info  Work:RS/
  240.    > Copy ReSource_1:ReadMe         Work:RS/
  241.    > Copy ReSource_1:ShowMacros     Work:RS/
  242.    > Copy ReSource_1:ShowKeys       Work:RS/
  243.    > Copy ReSource_1:RS.Macros      Work:RS/
  244.    > Copy ReSource_1:RS.KeyTable    Work:RS/
  245.  
  246.    > Copy ReSource_1:libs/ReSourcehelp.library Work:RS/libs
  247.    > Copy ReSource_1:libs/ReSourcesyms.library Work:RS/libs
  248.    > Copy ReSource_1:libs/ReSourceutil.library Work:RS/libs
  249.    > Copy ReSource_1:libs/simpleasm.library    Work:RS/libs
  250.    > Copy ReSource_1:libs/fpsupport.library    Work:RS/libs
  251.  
  252.    > Copy ReSource_2:Docs/ShowMacros.doc      <somewhere>/
  253.    > Copy ReSource_2:Docs/ShowMacros.doc.info <somewhere>/
  254.    > Copy ReSource_2:Docs/ShowKeys.doc        <somewhere>/
  255.    > Copy ReSource_2:Docs/ShowKeys.doc.info   <somewhere>/
  256.  
  257. 3. If your version of asl.library is <39.4 you may optionally copy
  258.    asl.library V39.4 to your libs: directory.  This will allow you to use
  259.    the screen mode requester if you wish:
  260.  
  261.    > Copy ReSource_1:libs/asl.library libs:
  262.  
  263. 4. If you wish to use the RCL functions (see the doc file), then:
  264.  
  265.    > Copy ReSource_2:CFuncs.rcl libs:
  266.  
  267. 5. Done.  ReSource is installed and ready to work.
  268.    Remember, when you want to use ReSource, you must type:
  269.  
  270.    > run Work:RS/ReSource       ;For example
  271.  
  272.    A finger-saving alternative to this is to enter the following into your
  273.    Shell-Startup:
  274.  
  275.      Alias rs Work:RS/ReSource  ;For example
  276.  
  277. There are also other utilities, doc files, and system files on the disks.
  278. Take a look at what is available, and decide if you want these available
  279. on your hard drive.
  280.  
  281.  
  282. *****************************************************************************
  283. *                     ---==== ABOUT THE INTERFACE ====---                   *
  284. *****************************************************************************
  285.  
  286. NOTE WELL: Most commands, with the exception of Abort (Right-Amiga A) will be
  287. ignored while any ReSource functions, including macros, are being executed.
  288. This means you can't:
  289.  
  290.   + Change options flags
  291.   + Select new menu functions
  292.   + Select new requester functions
  293.   + Close requester windows
  294.  
  295. While we realize that this is not particularly good programming practice, we
  296. are also forced to maintain backward compatibility with previous versions of
  297. ReSource, to a certain extent.  At this point in time, changing the
  298. functionality of ReSource either to lock out new input while it's busy, or to
  299. queue events, would slow down the program to the point that trying to do
  300. useful work would be painful.  ReSource will display the busy pointer in any
  301. active window, other than visitor windows, when it's busy.
  302.  
  303. Selecting new functions while ReSource is busy will have effects ranging from
  304. none at all, to doing unintended things to your disassembly.  One of the more
  305. common effects may be gadgets and menus temporarily getting out of phase with
  306. the internal program state.
  307.  
  308. We don't want to make this sound worse than it is.  It is unlikely that you
  309. will experience any serious problems with this.  However, we ask you to
  310. please consider the above a small price to pay for the productivity of the
  311. new GUI, and when you ask ReSource to do something, wait until it's done
  312. before giving it more input (with the exception of the Abort function).
  313.  
  314.  
  315. *****************************************************************************
  316. *                  ---==== ABOUT REQUESTER WINDOWS ====---                  *
  317. *****************************************************************************
  318.  
  319. Requester windows have taken the place of literally hundreds of former
  320. MenuItems.  Requester windows may be opened at will, and used for one or
  321. many functions, and closed or left displayed.  Note that all requesters are
  322. "live".  This means that when you press a requester gadget, you are executing
  323. that function in real time.  In some cases there may be a delay while the
  324. selected function executes.  This is because the gadgets must work in the
  325. same way as the many MenuItems they replaced in previous versions in order to
  326. maintain backward compatibility.
  327.  
  328. Most MenuItems and bound keys will work "through" the requester windows,
  329. meaning you don't have to be concerned about where the mouse pointer is
  330. located--the commands will still work even if a requester window is
  331. active.  There are two exceptions to this:
  332.  
  333.    1. When a string gadget in a requester window is active, it will eat
  334.       most keyboard events.
  335.    2. You will not be able to use Left-Button + Left-Amiga to create new
  336.       forward referenced labels if the mouse pointer is over a requester
  337.       window when the button is first pressed.
  338.  
  339. Some comments about the new requesters are in order:
  340.  
  341. Screen Gadgets
  342. ==============
  343. There are 7 gadgets along the bottom of the ReSource screen.  Each gadget
  344. causes a requester window to open.  If a particular requester window is
  345. already open, selecting that gadget causes the requester window to be brought
  346. to the front.  All requester windows may be dragged.  Closing a requester
  347. window saves the screen coordinates of that window, so that it will appear in
  348. the same location the next time it is opened.
  349.  
  350. Symbol Requester
  351. ================
  352. You will see a window with 3 ListView gadgets.  ListView 1 corresponds to
  353. Include file directories.  ListView 2 corresponds to Include files, and
  354. ListView 3 shows all the symbol bases in the selected Include file.  The
  355. symbol bases correspond to the V39.108 Includes (located on ReSource_3:), and
  356. will mostly be found in the same order as those in the include files.  This
  357. is designed to help beginners get used to the include files more quickly.  If
  358. you are not familiar with the V39.108 Includes, we suggest you keep a copy
  359. nearby for quick reference as to which symbols are in which symbol bases.
  360.  
  361. The USE gadget will not be available until you have selected a valid symbol.
  362. If you change your mind and want to back out, select the CANCEL gadget.  The
  363. LOAD gadget is for loading a User-Symbol base, and won't be available until
  364. you have selected one.
  365.  
  366. You may Double-Click on the ListView entry in the 3rd column and it will be
  367. treated the same as USE.  Note that if the entry you select is a User-Symbol
  368. base, and it is empty, nothing will happen.
  369.  
  370. If you select a symbol base that contains more than one symbol with the same
  371. value (see intuition.i/NewWindow for an example), the Multi-Symbol Requester
  372. will appear, and you will be given a choice of which symbol to use.  The USE
  373. gadget will not be available until you have selected a valid symbol.  If you
  374. change your mind and want to back out, select the CANCEL gadget.
  375.  
  376. You may Double-Click on the ListView entry in the Multi-Symbol Requester and
  377. it will be treated the same as USE.
  378.  
  379. Currently, the Multi-Symbol Requester only works with structures and normal
  380. equates--it won't work with bitdefs that have multiple symbols that resolve
  381. to the same value.  Note that unlike the other requester windows, the Multi-
  382. Symbol Requester blocks until a selection is made, or CANCEL is selected.
  383.  
  384. A new feature in ReSource V6 is System Library function synopses.  When using
  385. keys bound to symbol bases or by using the symbol requester, you can get a
  386. list of function synopses for the selected library by the following actions:
  387.  
  388.   Select Help (from the menu or press the Help key).
  389.   Either:
  390.      Select a key bound to a system library symbol base.
  391.   or
  392.      Select "Lib offsets" from the 1st column of the Symbol Requester.
  393.      Select a library, device or resource from the 2nd column.
  394.      Select the symbol base from the 3rd column.
  395.  
  396. See the section "ABOUT SYMBOL BASES" for more info on new symbol bases.
  397.  
  398. Search Requester
  399. ================
  400. The radio buttons select the type of search.  Notice when you push them, some
  401. of the other gadgets become ghosted.  All of the search choices are not
  402. appropriate or available under all the search types.  If the option is
  403. currently available, it will become unghosted.  If the option is ghosted, it
  404. is not available in that search type.
  405.  
  406. The 3 cycle gadgets determine the behavior of searches.  These will be
  407. ghosted when not applicable.  Not all modes are applicable to all searches.
  408. Case sensitivity is only applicable to Normal, Pattern and Buffer searches.
  409. Alignment is only applicable to Binary searches.  FROM CURRENT/START/END is
  410. applicable to all searches except Label and Symbol.  The case sensitivity in
  411. Normal and Pattern searches is new, as is the FROM gadget.  The other 2 cycle
  412. gadgets are spares and are not in use at this time.
  413.  
  414. The FROM gadget will begin the next search from the start or end of the file
  415. or from the current position.  FROM START only works in the FORWARD direction
  416. and FROM END only works in the BACKWARD direction.
  417.  
  418. If you want to find the first instance of a string, select FROM START.  When
  419. you select FORWARD, the file will be searched from the beginning.  After the
  420. search, the FROM gadget will revert to CURRENT so that you can search for the
  421. next instance.  If you select FROM START and then BACKWARD, a normal backward
  422. search will be done from the current position.
  423.  
  424. The FROM END selection works much the same except searching starts at the end
  425. of the file when you select BACKWARD.  If you select FROM END and then
  426. FORWARD, a normal forward search will be done from the current position.
  427.  
  428. The NEAREST, THIS LINE, and ACCUMULATOR searches ignore the FROM gadget.
  429. After using FROM START or FROM END, your old position wll be found on the
  430. position stack, and may be recalled by the Remember function (normally bound
  431. to the Left-Arrow key).
  432.  
  433. Enter your search string in the string gadget.  The string will not be set,
  434. from ReSource's point of view, unless you press return after entering the
  435. string.  (We do know that it is possible to have a program accept the string
  436. even if return is not pressed, but it can't be done in this case.  Sorry.)
  437. Remember to select pattern search if you enter a pattern.  Otherwise the
  438. string will be interpreted literally.  All pattern searches now use standard
  439. AmigaDOS regular string expressions.  The "*" wildcard ("#?" substitute)
  440. will only function if you have it switched on in dos library.  See the
  441. section "ABOUT SEARCHING" for more information.
  442.  
  443. The search will actually be done when you select the FORWARD, BACKWARD,
  444. NEAREST, THIS LINE, or ACCUMULATOR gadget, not when the string is entered.
  445. Entering the string only sets the string for that type of search, and only
  446. after pressing return.  If you don't press return, ReSource will search for
  447. the previously entered string.
  448.  
  449. The Search Requester will remember what type of search and options you
  450. selected the last time you used the requester, and set it up the same way for
  451. your next use.
  452.  
  453. Macro Requesters
  454. ================
  455. There are 3 MACRO gadgets corresponding to 3 Macro Requesters.  Select the
  456. MACRO gadget of your choice.  Select the desired macro, and then select
  457. CREATE or EXECUTE.
  458.  
  459. The CREATE gadgets of any open Macro Requesters will be ghosted during macro
  460. creation because macro creation may not be nested.  Likewise, the EXECUTE
  461. gadget of the Macro Requester that the Create Macro was started from will be
  462. ghosted while the macro being created is selected, because a macro being
  463. created may not be executed.  However, macros themselves may be nested, so
  464. you may select a different macro from that requester, or another macro
  465. requester, to execute.  After finishing creating a macro, select End Macro
  466. from the Macro Menu.
  467.  
  468. We are not currently planning to support Double-Click selection in Macro
  469. requesters because it is too dangerous to accidentally select the wrong macro.
  470. It's fairly easy to change the symbol, if an incorrect base was selected, but
  471. the wrong macro can mess up a lot of work, and be very difficult to fix.
  472.  
  473.                      -----------------/-----------------
  474.  
  475. Over the years as we have talked to ReSource users, we have discovered that
  476. the macro functions are underused or overlooked by a large number of people
  477. who could benefit from their power to eliminate repetitive work.  Our
  478. discussions have led us to believe that some people felt intimidated by the
  479. complexity and lack of good examples.
  480.  
  481. The RS.Macros file distributed with ReSource Release 6 has a number of macros
  482. that can be useful in their own right.  However, the primary goal when
  483. writing this macro file was to illustrate how to write a variety of different
  484. types of macros so as to take advantage of this time-saving feature.  The
  485. source code for the macro file is heavily commented.  If you aren't
  486. conversant with these tools, we hope you will take this opportunity to
  487. explore them further.
  488.  
  489. Options Requesters
  490. ==================
  491. There are 2 Options Requesters roughly corresponding to the old Options 1 and
  492. Options 2 MenuItems.  These allow you to set most of the environment used by
  493. ReSource.  These options will be saved when you select "PROJECTS/Save Config".
  494.  
  495. Note that in previous version of ReSource, all set option switches were
  496. _always_ saved by "PROJECTS/Save Config".  This is no longer true.  Only
  497. options selected that are different than the default settings will now be
  498. saved.  This should generally make for a much smaller macro file.
  499.  
  500.                      -----------------/-----------------
  501.  
  502. The base register used in converting base-relative effective addresses, in
  503. the special functions menu, no longer always defaults to register A4.  It
  504. will now be saved as set when "PROJECTS/Save Config" is selected.
  505.  
  506.                      -----------------/-----------------
  507.  
  508. One of the side effects of making ReSource Intuition-compatible is that the
  509. TitleBar takes much longer to render now than it used to.  This had the
  510. effect of greatly slowing down functions, such as searches, that updated the
  511. TitleBar frequently.
  512.  
  513. A new function was added to the OPTIONS 2 requester to cope with this
  514. problem.  The function is called Delayed Refresh, and it has the effect of
  515. speeding up those functions that were slowed down by the TitleBar rendering.
  516.  
  517. When "OPTIONS 2/Delayed Refresh" is set, the TitleBar will only be updated 2
  518. times per second.  If a message needs to be displayed, or the TitleBar needs
  519. to be refreshed for other reasons, it will be refreshed in any case.  We
  520. think you will generally want this switch on, but may want to turn it off
  521. under special circumstances when you want to see all the offsets while
  522. ReSource is working.  This switch defaults to OFF for purposes of backward
  523. compatibility.
  524.  
  525.  
  526. *****************************************************************************
  527. *                      ---==== ABOUT SEARCHING ====---                      *
  528. *****************************************************************************
  529.  
  530. In order to be as backwards compatible as possible and also be compatible
  531. with the new OS V2.0 pattern matching routines, several changes have been
  532. made in the way search strings work.
  533.  
  534. In previous versions of ReSource, when you entered a search string through
  535. one of these functions:
  536.  
  537.   CURSOR/Normal search/Set search string
  538.   CURSOR/Pattern search/Set search pattern
  539.   CURSOR/Buffer search/Set search string
  540.  
  541. ReSource set up both the normal and pattern search buffers for Normal,
  542. Pattern and Buffer searches.  There was a great deal of confusion concerning
  543. the use of wildcards and which functions they were appropriate in.
  544.  
  545. In order to clear up the confusion, there are now separate facilities for
  546. Normal and Pattern searches, and a separate set of rules for each one.
  547.  
  548. RULE 1: For Normal searches, you are always entering literal strings.  These
  549. are used for Normal and Buffer searches only.
  550.  
  551. RULE 2: For Pattern searches, you are always entering pattern search strings.
  552. They are used in Pattern searches only.
  553.  
  554. The following rules apply to pattern searches:
  555.  
  556.   + Literal token rules for all searches are now enforced.  If you enter
  557.     "(a0" as the search string, it will no longer be accepted.  You must
  558.     enter "'(a0".  The tick tells the pattern matching routines that the
  559.     parenthesis is to be treated as a literal character.
  560.  
  561.   + If you want to use "*" as a universal wildcard, the "wildstar" bit
  562.     in dos library must be switched on.  "StarBurst", a utility to set this
  563.     bit, is included.
  564.  
  565.   + Note that ReSource will append a "#?" to the end of your search string
  566.     automatically, so that you can find strings in the middle of a line.
  567.     Don't add another "#?" or a "*" to the end of the search string.
  568.  
  569.   + You do not have to specify a pattern.  If you specify a normal string,
  570.     it will be treated literally in a Pattern search.
  571.  
  572. See the AmigaDOS users manual for more information on pattern matching.
  573.  
  574.                      -----------------/-----------------
  575.  
  576. NOTE: The function for setting Pattern strings is new, and any macros that
  577. use the "Normal search/Set search string" function _and_ then call a Pattern
  578. search function will fail because the Pattern search string will _not_ be
  579. changed.  Only the Normal search string will be entered for the "Normal
  580. search/Set search string" function, and only the Pattern search string will
  581. be entered for the "Pattern search/Set pattern string" function.  The reverse
  582. is true as well:  The "Pattern search/Set pattern string" function will not
  583. set the Normal search string.
  584.  
  585. To fix this problem in existing macros, use the utility ShowMacros with
  586. output redirection to a file:
  587.  
  588.   ShowMacros >ram:temp.asm
  589.  
  590. Put the resulting file in your text editor and search for:
  591.  
  592.        dc.w    $0077   ; CURSOR/Normal search/Set search string
  593.  
  594. When you find one, determine if the string being used includes a pattern and
  595. a Pattern search.  If it uses a pattern, change the line to:
  596.  
  597.        dc.w    $0677   ; CURSOR/Pattern search/Set pattern string
  598.  
  599. If the search string does not include a pattern, change the search function
  600. to a Normal search function.  I.E., if the search function was:
  601.  
  602.        dc.w    $0078   ;CURSOR/Pattern search/Find next occurrence
  603.  
  604. change it to:
  605.  
  606.        dc.w    $01AA   ;CURSOR/Normal search/Find next occurrence
  607.  
  608. Reassemble the file according to the instructions in ShowMacros.doc, and
  609. install it as S:RS.macros or <progdir>/RS.macros.
  610.  
  611.                      -----------------/-----------------
  612.  
  613. NOTE: The NoCase option was only available for Buffer searches, and not for
  614. Normal or Pattern searches, in previous versions of ReSource.  This may be a
  615. problem in old macros that relied on case sensitivity being set a particular
  616. way for buffer searches, but did not explicitly set it up.  
  617.  
  618. To fix this problem in existing macros, follow the directions above, and look
  619. for either of these lines:
  620.  
  621.        dc.w    $0077   ; CURSOR/Normal search/Set search string
  622.        dc.w    $0677   ; CURSOR/Pattern search/Set pattern string
  623.  
  624. Determine if the NoCase bit must be set before the search string is set, in
  625. each case.  If it does, insert this line before the set string function:
  626.  
  627.        dc.w    $0381   ; CURSOR/Search/Ignore case
  628.  
  629. New macros will always explicitly set all non-default conditions shown in the
  630. Search Requester.
  631.  
  632.                      -----------------/-----------------
  633.  
  634. The way control characters in search strings are displayed has also been
  635. slightly changed, although this will not affect their use.  Because you can't
  636. enter control characters into string gadgets in some cases, ReSource has
  637. allowed the use of escape strings, starting in V5.  Previously, if you
  638. entered "\t" (or another escape string) in a string gadget, and later edited
  639. that gadget you would see a rectangle where the "\t" had been.  This is
  640. because the font does not contain information for control characters.
  641.  
  642. Now, when you enter escape sequences (or control characters, when possible)
  643. into a string gadget, if you later edit the string, you will see that the
  644. escape sequence is still there (or substituted for the control characters).
  645.  
  646.  
  647. *****************************************************************************
  648. *                     ---==== ABOUT SYMBOL BASES ====---                    *
  649. *****************************************************************************
  650.  
  651. All the Library, Device and Resource bases have been moved to "Lib Offsets".
  652. If you want "CoolCapture", for instance, select:
  653.  
  654.   Lib Offsets/Exec offsets/Exec offsets
  655.  
  656. NOTE: The following symbol bases have been removed.  Macros that used any of
  657. these symbol bases will fail.
  658.  
  659.   111,Clist offsets
  660.  
  661.   121,Cstrings offsets
  662.  
  663.   315,Refresh modes - These are now, and in fact have always been, contained
  664.       in the symbol base 335,Intuition/Intuition/Window flags
  665.  
  666.   Due to symbol name clashes with V37 and later includes, the following
  667.   symbol bases have been removed.  ARP Library offsets is still valid,
  668.   however.
  669.   608,ARP/EnvLib
  670.   609,ARP/AnchorPath
  671.   610,ARP/Anchor
  672.   611,ARP/Wildcards
  673.   612,ARP/Directory Entry
  674.   614,ARP/DateTime
  675.   615,ARP/DefaultTracker
  676.   617,ARP/ProcessControlBlock
  677.   618,ARP/Process Memory
  678.   619,ARP/Resident List
  679.   620,ARP/ResidentProgNode
  680.   621,ARP/ResidentProgTag
  681.   622,ARP/Tracked Resources
  682.   623,ARP/TrackedItemTypes
  683.   625,ARP/ZombieMessage
  684.  
  685.   657,Expansion Int
  686.  
  687.   659,RomBoot Base
  688.  
  689.   674,Rexxsyslib - These are now, and in fact have always been, contained in
  690.       the symbol base 654,Lib Offsets/RexxSysLib offsets.
  691.  
  692. NOTE: The following symbol bases have been changed or moved.  Macros that
  693. used any of these symbol bases may fail.
  694.  
  695.   300,Intuition/Preferences/Parity - Used to contain the 1.3 handshake bits
  696.       also.  Now only contains the parity bits.  Handshake bits are in their
  697.       own symbol base 1387,Handshake.
  698.  
  699.   375,Trap Vectors is now found in Hardware/Traps/Trap Vectors.  This file is
  700.       not found in the include files, but we thought it might be useful.
  701.       Note that 'AbsExecBase' is in this symbol base.
  702.  
  703.   376,RawKey codes is now found in Devices/KeyMap/RawKey codes.  This file is
  704.       not found in the include files, but we thought it might be useful.
  705.  
  706.   196,MouthReadBlock (MRB)
  707.   197,Narrator Driver IORB (NDI)
  708.   290,Narrator error codes - These files were removed from the V39 includes.
  709.       The versions here will be found in Devices/Narrator, and come from the
  710.       V37.4 Includes.
  711.  
  712.   330,Translator error codes - These files were removed from the V39
  713.       includes.  The versions here will be found in Libraries/Translator, and
  714.       come from the V37.4 Includes.
  715.  
  716.  1656,ScreenTypes - The symbols in this base are all the screen types
  717.       (values < $10) that were previously part of Screenflags.  The remaining
  718.       screen flags are still in 318,Screenflags.
  719.  
  720.  
  721. *****************************************************************************
  722. *                  ---==== ABOUT THE MINI-ASSEMBLER ====---                 *
  723. *****************************************************************************
  724.  
  725. Included with ReSource Release 6 is a new Zap function "Zap2", found on the
  726. Special Functions menu.  The new Zap function is designed to make modifying
  727. code easier by no longer requiring the user to laboriously look up
  728. instruction templates in a table to find the proper bit patterns to enter.
  729. This is accomplished by including a simple, one-line assembler in the new Zap
  730. function.
  731.  
  732. When you call "Zap2", it tries to make an educated guess about whether it's
  733. looking at code or data, and if data, the appropriate size.  It then puts the
  734. code/data into the string gadget, and waits for you to either edit the
  735. string, or change the mode/data type.
  736.  
  737. If the Mode=CODE, the assembler will try to assemble the string.  If the
  738. Mode=DATA, ReSource will attempt to convert the string to binary.  Any
  739. problems will be reported, and you will be given a chance to edit the string,
  740. or abort the zap.
  741.  
  742. In data mode, only as much of the binary data as defined by the Data Size
  743. gadgets will be written to the file.  If you define the size as Byte and edit
  744. the string as "$12345678", only $78 will be written.
  745.  
  746. If the Data Type is set to ASCII, the data will be copied literally to the
  747. string gadget buffer until a null is reached, for up to 127 bytes.  If the
  748. data wasn't really text, this will be difficult to read.  When the OK gadget
  749. is selected, the entire string, exactly as shown including 1 null byte, will
  750. be written back to the file.  This implies that you may not use the ASCII
  751. Type to edit data that includes null bytes.
  752.  
  753. All of the following comments refer to the new Zap function when used in the
  754. "Code" mode.
  755.  
  756. Because this assembler has a slightly different kind of job to do than a
  757. normal assembler, and also because of previously existing limitations, there
  758. are a number of restrictions inherent in its use.  If you find a problem when
  759. using the assembler, please refer to the following guidelines before
  760. submitting a bug report.
  761.  
  762. 1. The assembler is designed to handle 68000-68030 CPUs, 68851 & 68030 MMUs,
  763.    and 68881 & 68882 FPUs.  It does not handle 68040 code.
  764.  
  765. 2. The entire source input line may be up to 127 character in length.
  766.  
  767. 3. Instructions may be entered as old or new syntax, except for '020
  768.    addressing modes, which do not have an old syntax.  Thus:
  769.  
  770.        move.b   MP_SIGBIT(a0),d0
  771.        movea.l  SysBase,a6
  772.    and
  773.        move.b   (MP_SIGBIT,a0),d0
  774.        movea.l  (SysBase),a6
  775.  
  776.    are both acceptable.  Please note that in some instances, old syntax may
  777.    be unclear as to the actual intent.  For example, in "SysBase.w" is the
  778.    ".w" part of the symbol?  We strongly recommend that you switch to new
  779.    syntax.  It really isn't difficult, and you will experience fewer problems
  780.    with typographical errors in your code.
  781.  
  782. 4. Do not include a label or a comment in the source input line.  If a label
  783.    and/or comment are present in the displayed line, they will not be
  784.    disturbed.  However, if the new instruction is longer than the existing
  785.    instruction, the comment may no longer be visible.
  786.  
  787. 5. When modifying an existing instruction, ReSource will warn you if the new
  788.    instruction is of a different size than the existing instruction.  You may
  789.    then choose to replace the instruction, or abort.
  790.  
  791. 6. If the instruction is unsized, the assembler will always choose the
  792.    shortest addressing mode.  For example:
  793.      For absolute references
  794.        ($1234) will always be assembled as ($1234).w
  795.        ($1234).l will be assembled as ($1234).l
  796.      For relative references
  797.        bra *+$4A will always be assembled as bra.b
  798.        bra.w *+$4A will be assembled as sized
  799.        bra.l *+$4A4A4A4A will also be assembled as sized
  800.    If the instruction is required to be a certain length, if used in a table
  801.    for instance, then specify the size on the input line.  Note that ".b" is
  802.    a byte sized branch, ".w" is a word sized branch, and ".l" is a longword
  803.    sized branch.  ".s" was _never_ legal, even though many assemblers
  804.    supported it.
  805.  
  806. 7. Symbols and references to labels may be freely used in source input.
  807.    However, due to the way parsing is done, a symbol or referenced label must
  808.    start with one of the following characters:
  809.        [a-z][A-Z]._
  810.    and must contain only these characters in the remainder of the symbol or
  811.    referenced label:
  812.        [a-z][A-Z]_[0-9]$
  813.    Please note that "." and ":" are not legal characters in this context,
  814.    although they are legal in ReSource and many assemblers.  The symbol or
  815.    referenced label may be any length, within the constraint of Rule 2,
  816.    above.
  817.  
  818. 8. Opcodes and register names may be any case.  Thus `nop', `NOP', and `NoP'
  819.    are recognized as the same opcode.
  820.  
  821. 9. The Operand follows the opcode field, separated by at least one whitespace
  822.    character.  The contents of the operand field(s) is interpreted by each
  823.    instruction.  In general, it may be a constant, symbol or an expression.
  824.  
  825. 10. Constants are constructed as:
  826.        'ASCII characters' for example:
  827.           'A'    = byte
  828.           'RQ'   = word
  829.           'HELP' = longword
  830.        $ followed by hexadecimal constant
  831.        @ followed by octal constant
  832.        % followed by binary constant
  833.        digit 0-9 decimal constant
  834.  
  835. 11. Expressions may consist of symbols, constants or the character '*'
  836.    (denoting the current value of the program counter) joined together by one
  837.    of the operators: +-*/%&|!^.  The operators, except for !, are the same as
  838.    in the C language.  The entire expression is treated as one Operand field
  839.    so no white space is permitted in the expression.
  840.  
  841.    Expression Operators
  842.        +      add
  843.        -      subtract
  844.        *      multiply
  845.        /      divide
  846.        %      remainder after division
  847.        &      bitwise and
  848.        | or ! bitwise or
  849.        ^      bitwise exclusive-or
  850.  
  851.    Special Expression Symbol
  852.        *  current value of PC
  853.  
  854.    Expressions are evaluated left to right and there is no provision for
  855.    parenthesized expressions. Arithmetic is carried out in 32 bit signed
  856.    twos-complement integer precision.
  857.  
  858. 12. The assembler is not able, at present, to correctly parse values greater
  859.    than a longword.  Although you may enter instructions that take quadword,
  860.    double, and extended operands, these will not be parsed correctly.  Also,
  861.    there are currently no provisions for entering floating point operands.
  862.    In both these instances, we suggest that values be entered one longword
  863.    at a time.
  864.  
  865. 13. The simpleasm.library, which is required for assembly language input,
  866.    will only be opened if the "Zap2" function is called, and then only if
  867.    actual code is entered.
  868.  
  869. 14. If simpleasm.library is not available, or can't be loaded, the "Zap2"
  870.    requester may still be used for data, if preferred over the original
  871.    "Zap", but not for assembly language input.
  872.  
  873.    There will be no warning message displayed if the library can't be opened.
  874.    This is intentional so as to avoid your having to respond to multiple
  875.    requesters if your system is low on memory.
  876.  
  877. *****************************************************************************
  878. *                 ---==== ABOUT FLOATING-POINT CODE ====---                 *
  879. *****************************************************************************
  880.  
  881. Included with this version of ReSource is the ability to display floating-
  882. point numbers as real floating-point values.
  883.  
  884. In addition, 4 new data types have been defined: Single, Double, Extended and
  885. Packed.  'Single' functions in much the same way as Long does currently, in
  886. that symbolic names may be assigned to values.
  887.  
  888. Double, Extended and Packed data types behave in a slightly different manner
  889. than the other data types:  The floating-point values may not be assigned
  890. symbolic names, and they may only be shown in their native format--that is,
  891. you may not change the number base.
  892.  
  893. When referenced as data, the 4 new floating-point data types are disassembled
  894. in a similar manner to integer data.  ReSource will attempt to set the data
  895. type to whatever size is appropriate to the instruction.  However, in some
  896. circumstances, such as the one shown below, the data type may not be
  897. correctly set.  If a floating-point number is displayed as integer data, you
  898. may explicitly set it to the correct data type.  This may usually be
  899. inferred by the type of reference:
  900.  
  901.              lea      (lbL000124,a5),a0
  902.              fmove.s  (a0),fp0
  903.  
  904. lbL000124    dc.l     $3F000000
  905.  
  906. implies that this data is a single (.s) and can be converted by selecting
  907. "DISPLAY/Set data type/Single".  The instruction will then be shown as:
  908.  
  909. lbS000124    dc.s     0.5
  910.  
  911. When floating-point numbers are converted into values, the following rules
  912. apply:
  913.  
  914. 1. If the floating-point value is "not-a-number", it will be displayed as
  915.    "NaN".
  916.  
  917. 2. If the floating-point number is positive or negative infinity, it will be
  918.    displayed as "Inf" or "-Inf".
  919.  
  920.    The above conventions comply with Motorola's document MC68881UM/AD.
  921.    However, the resulting code won't reassemble correctly.  For example, if
  922.    you used "DISPLAY/Set data type/Double" on this data:
  923.  
  924.    lbL01362A    dc.l     $7FF00000
  925.                 dc.l     $00000000
  926.  
  927.    you would get:
  928.  
  929.    lbL01362A    dc.d     Inf
  930.  
  931.    If you will need to see the numeric data later, so that you may reassemble
  932.    the code, convert back to longwords.
  933.  
  934.    In the case of immediate data, the data type will be set for you:
  935.  
  936.                 fmove.d  #Inf,fp0
  937.  
  938.    If you will need to reassemble the code in this case, the procedure will
  939.    be slightly more complicated.  Because ReSource sets the data type for you
  940.    here, you will need to temporarily change the data type from CODE to LONG
  941.    to be able to see the number value.  If you have not changed the default
  942.    key mapping, position the cursor line at the problem code.  Press and hold
  943.    Left-MouseButton, and then press and hold Left-Alt+Shift+Ctrl.  This will
  944.    temporarily display the binary data as LONGWORDS without changing the data
  945.    type:
  946.  
  947.                 dc.l     $F23C5400    ;The instruction
  948.                 dc.l     $7FF00000    ;The value of "Inf"
  949.                 dc.l     0
  950.  
  951.    Then, either write down, or remember the values, and save them as a
  952.    comment:
  953.  
  954.                 fmove.d  #Inf,fp0     ;$F23C5400,$7FF00000,$00000000
  955.  
  956.    When you do reassemble the code, you will need to code the instruction
  957.    by hand:
  958.  
  959.                 dc.l     $F23C5400,$7FF00000,$00000000
  960.  
  961.    or find out why this value was being used, and do something slightly more
  962.    intelligent.
  963.  
  964. 3. All legal floating-point numbers will be converted with the precision of a
  965.    Double data type.  Note that some very large and very small Extended
  966.    numbers are outside this range.  In that case, Extended floating-point
  967.    numbers will only be converted if they are within the range of a Double.
  968.    Otherwise they will be shown as hex data.
  969.  
  970.    ;Denormalized extended number
  971.  
  972.                 dc.x     $00000000,$00000000,$FEDCBA98
  973.  
  974.    Note that the resulting code won't reassemble correctly until the number
  975.    is converted back to longs by using "DISPLAY/Set data type/Longs".
  976.  
  977. 4. The fpsupport.library, which is required for converting floating-point
  978.    numbers, will only be opened if there is a call for it to do conversions.
  979.    If no FPU is available, or if the CPU is a 68040 and the software emulation
  980.    code is unavailable, then the mathieeedoubbas.library will also be opened
  981.    at this time.
  982.  
  983. 5. If one of the following is true, then all floating-point numbers will be
  984.    shown as hex data.  No warning message will be displayed.  This is
  985.    intentional so as to avoid your having to respond to multiple requesters
  986.    if your system is low on memory.
  987.  
  988.      a. fpsupport.library is not available, or can't be opened, or
  989.      b. no FPU is available, or the CPU is a 68040 and the software emulation
  990.         code is unavailable, and the mathieeedoubbas.library can't be opened
  991.  
  992. *****************************************************************************
  993. *                     ---==== MISCELLANEOUS NOTES ====---                   *
  994. *****************************************************************************
  995.  
  996. 1. There is a new key function in Help.  Alt-UpArrow has always allowed you
  997.    to go to top of file.  Alt-DownArrow now goes to bottom of file.
  998.  
  999. 2. Icon ToolTypes LACEFLAG and NOLACEFLAG are actually in ReSource now, just
  1000.    like it says on page 3-4 of the manual.  We wonder why no one ever
  1001.    complained about this...
  1002.  
  1003.    Additionally, there is a new option flag for Screen Mode requester.
  1004.    From the command line: > run ReSource <file> -R
  1005.    From Workbench there's a new tooltype: REQMODE=ON
  1006.  
  1007.    It is recommended that if you want a different screen mode than the one
  1008.    that the system is using, you use the new screen mode requester option
  1009.    rather than the old "lace" (-I) and "nolace" (-N) options.  This is
  1010.    because some screen modes don't understand the concept of "lace", and
  1011.    other screen modes will not work if you specify "nolace" (it's required
  1012.    for some modes).
  1013.  
  1014.    Note well:  ReSource will not be usable in all possible screen modes.
  1015.    Some screen modes are not compatible with other screen modes, on some
  1016.    monitors, using some versions of the graphics chips, and some versions of
  1017.    the OS.
  1018.  
  1019. 3. The ReSource screen is now a Public Screen.  The public names for the
  1020.    ReSource screen are:
  1021.  
  1022.       "ReSource"     ;1st instance
  1023.       "ReSource N"   ;More incarnations of ReSource, where N is a number
  1024.                      ;equal to or greater than 2.
  1025.  
  1026.    Thus, the 3rd ReSource screen opened will be called "ReSource 3".
  1027.  
  1028.    Please note that the screen may not be properly refreshed if you drag a
  1029.    visitor window around on it while ReSource is busy.
  1030.  
  1031. 4. When mouse-scrolling, the deflection from the starting point has always
  1032.    been the same for both interlaced and non-interlaced screens.  This has
  1033.    made fine control of mouse-scrolling too difficult for interlaced screens.
  1034.    When using an interlaced screen, the deflection factors are now doubled.
  1035.  
  1036. 5. There appears to be a misunderstanding in the case of using ReSource to
  1037.    disassemble ROM code.  A number of users have reported that ReSource
  1038.    causes enforcer hits when a ROM image is saved to a .RS file, and that
  1039.    file is loaded into ReSource at a later time.  The reason for this is that
  1040.    the origin is always saved along with a .RS file in order for all
  1041.    references to be resolved properly.  When the .RS file is loaded at a
  1042.    later time, this may cause references to protected or even non-existant
  1043.    memory for various reasons.
  1044.  
  1045.    That said, here is one way of sidestepping the problem:
  1046.  
  1047.       Start ReSource
  1048.       Select "PROJECT/Dismble memory" <start> <end>
  1049.       Select "SAVE/Save binary image" to <name>.bin
  1050.       Select "PROJECT/Open binary file" <name>.bin
  1051.       -> File is now delocated.  Don't do any work on the file
  1052.       -> until you reach this point.  It will be wasted effort.
  1053.       Select "PROJECT/Save .RS/" to <name>.RS
  1054.  
  1055. 6. When you select "*/Origin/Specify", the requester now contains either the
  1056.    previously specified origin (set automatically when you load a binary
  1057.    file), or the address of the executable buffer, if the origin was unset.
  1058.  
  1059. 7. The file location displayed in the TitleBar will normally be the relative
  1060.    offset from the start of the file.  If you have selected "DISPLAY/Cursor
  1061.    address/Absolute", the address of the executable buffer plus the current
  1062.    offset will then normally be displayed.  Now, if the file origin has been
  1063.    previously set, by you or ReSource, the origin plus the current offset
  1064.    will be displayed.  This change has no effect on the "STRINGS/Get/Cursor
  1065.    offset" function.
  1066.  
  1067. 8. As of this writing, some floating-point instructions, and end-of-line
  1068.    comments do not line up properly on screen.  This will be fixed in a
  1069.    future update.
  1070.  
  1071. 9. We believe ReSource will now work with third party graphics boards.
  1072.    Unfortunately, we had no way of actually testing this during development.
  1073.    If you have a third party graphics board, and experience problems with the
  1074.    display, and you are in a position to help in this regard, please contact
  1075.    us as soon as possible.
  1076.  
  1077.                      -----------------/-----------------
  1078.  
  1079. To our valued customers:
  1080. You program in assembly language, right down to the metal, and you want and
  1081. need absolute accuracy and reliability.  We realize this, and strive hard for
  1082. perfection.  However, you know from hard experience that with programs of
  1083. this size and complexity, bugs do creep in.
  1084.  
  1085. As you use ReSource, if you find that the program doesn't appear to work
  1086. properly for any reason, please don't hesitate to contact us directly, rather
  1087. than getting upset about the perceived poor quality of the software.
  1088.  
  1089. We put a high priority on customer support, and want to make ReSource the
  1090. best program of its kind available for any platform, at any price.
  1091.  
  1092. The Puzzle Factory, Inc.
  1093. P.O. Box 986
  1094. Veneta, OR 97487
  1095.  
  1096. Voice:    (503) 935-3709
  1097. BBS:      (503) 935-7883  V.32bis 24hr.
  1098. Internet: jlavin@cie.uoregon.edu
  1099. BIX:      jblavin
  1100.  
  1101. *****************************************************************************
  1102. *                           ---==== CREDITS ====---                         *
  1103. *****************************************************************************
  1104.  
  1105. Thanks to Roger Wharmby of Helios Software for the incredible blitter
  1106. assisted scrolling code.  We couldn't have added all the new, system compapible
  1107. features and still kept a reasonable display speed without these routines.
  1108.  
  1109. Thanks to Doug Sears of Snappy Software for the floating-point conversion
  1110. routines that made fpsupport.library possible.  Excellent job Doug!
  1111.  
  1112. Thanks to Jim Cooper of The Software Distillery for much help with the
  1113. single-line assembler, and many, many other things too numerous to list.
  1114.  
  1115. Much thanks to all the beta testers who contributed greatly to the accuracy
  1116. and stability of ReSource Release 6.  We couldn't have done it without you!
  1117.  
  1118. =eof=
  1119.