home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 5 / FreshFish_July-August1994.bin / bbs / dev / diceconfig-2.0.lha / DiceConfig / DiceConfig2.0.doc < prev    next >
Encoding:
Text File  |  1993-11-28  |  13.8 KB  |  308 lines

  1. ›0m
  2.                              ›41m                   ›0m
  3.         ›40m                     ›41m  ›32mDiceConfig V2.0 ›31m ›0m
  4.         ›40m                     ›41m                   ›0m
  5.         ›40m                     ›41m ›32m© ›33mLF›31m ›33mSoft ›32m1992-93›31m ›0m
  6.         ›40m                     ›41m                   ›0m
  7. ›0m
  8.  
  9.        ›0;33;1m ^ ›0m
  10.        ›0;33;1m/›31m!›33m\›0m CAUTION : DiceConfig 2.0 is WORKBENCH ONLY, and need KS 2.0+ &
  11.        ›0;33;1m¯T¯›0m ~~~~~~~~  ReqTools.library 38+.
  12.  
  13.  ›0;4;1mDisclamer :›0m
  14.  
  15.      DiceConfig V2.0 is SHAREWARE, Following is for EVALUTIONs versions only
  16. as REGISTERED version CAN'T be distribued in any ways :
  17.  
  18.      - All part of this distribution MUST NOT be changed in any way ( Except
  19.     for use of archivers ( Lha, ... ) or crunchers ( PowerPacker,
  20.     TurboImploder, ... ). I add the .cd file for making new catalogs.
  21.     Remember I JUST MAKE THE NATIVE ENGLISH AND THE FRENCH CATALOG. Others
  22.     are not mine but New catalogs are wellcome ( feel free for sending a
  23.     copy ).
  24.  
  25.      - DiceConfig mustn't be sold with commercial product.
  26.  
  27.      - The price of DiceConfig disk must be resonable, not higher than a
  28.     Fred Fish disk.
  29.  
  30.      - Distribution is granted for Fred Fish and CAM libraries.
  31.  
  32.      - The registered version MUST NOT be distribued or copied in any way.
  33.  
  34.  ›0;4;1mTo register :›0m
  35.  
  36.      The register fees is only 100 FF, $20 (or equivalent in other currency)
  37.     This give you a free update.
  38.     My address is :
  39.  
  40.                 Laurent Faillie
  41.                  "Les Vuardes"
  42.                 74930 Pers-Jussy
  43.                     FRANCE
  44.  
  45.   ›0;4;1mShort introduction :›0m
  46.  
  47.      DiceConfig is a new frontend for Dice C compiler, with a fine (I hope!)
  48.     GUI based on GadTools.library and feeling of WB 2.0+. Under 2.1+, it can
  49.     be localized. It run Dcc using  System()  or it can send  commands to an
  50.     ARexx port ( to Csh for example ). Work even if Arexx isn't running !
  51.     The GUI is font sensitive and can be iconified using standard zoom gadget.
  52.     DiceConfig can be customized by setting Tools Type in its icon & filling
  53.     a configuration file. As in V1.x, up to  16  externals libraries  can be
  54.     linked using gadgets.
  55.  
  56.      Unlike most of EVALUATION versions, no options dislabed ( you can save,
  57.     load any number of project you want ) but a #?*@ requester come up every
  58.     2 minutes.
  59.  
  60.  ›0;4;1mTools types :›0m
  61.  
  62.      MODE=
  63.         EXECUTE (default) : Use System() for running the compiler.
  64.         AREXX             : Send CMD as an Arexx message.
  65.  
  66.     AREXX_PORT=<name>   : In Arexx mode, the name of an ARexx port.
  67.                          (default :rexx_csh).
  68.  
  69.     START_CMD=<command line>
  70.                         : Command to run at the beginning of DiceConfig.
  71.                         ie: for starting a slave CSH... See Start_CSH script.
  72.                         (default : nothing).
  73.  
  74.     RX_END_CMD=<cmd>    :In Arexx mode,command to send when the user quit
  75.                         DiceConfig2.0. (Default : bye).
  76.  
  77.     CMD=<command line>  :The command for running the compiler. Use a C-like
  78.                         format where %f is swapped w/ a name of a file holding
  79.                         all sources files name ( See @ option of DCC ),
  80.                                      %r is swapped w/ the name of the output
  81.                         file ( the name of the project).
  82.                         (Default : Dcc @%f -o%r)
  83.  
  84.     CMD_AFF=<cmd>       : Command for displaying errors messages.
  85.                         (Default : More)
  86.  
  87.     CMD_ED=<cmd>        : Editor. (Default : Ed)
  88.  
  89.     DBG_LIB=<library>   : A link-library added if DEBUG <> 0. eg debug.lib
  90.                         (default : None)
  91. NOTE: Other debug options may be added after the library name. eg:
  92.         DBG_LIB=Debug.lib -lDDebug.lib -d1
  93.       Link w/ Debug.lib, DDebug.lib and add a debug level 1 hunk.
  94.  
  95.     CC_STACK=<stack size>
  96.                         : The stack for the compiler (default : 10000).
  97.  
  98.     CMD_STACK=<cmd>     : In ARexx mode, the name of stack command.
  99.                         eg for Csh : stack %d. (Default : Nothing)
  100.  
  101.     TOOLS_STACK=<stack size>
  102.                         : The stack for CMD_AFF & CMD_ED.
  103.  
  104.   NOTE : DiceConfig always laught CMD_AFF & CMD_ED using System().
  105.  
  106.  
  107.  ›0;4;1mThe configuration file :›0m
  108.  
  109.      DiceConfig V2.0 need a configuration file named
  110.     dcc:config/DiceConfig.cfg
  111.  
  112.                (0)  ›42m TST0 Test file   ›0m
  113.                (1)  ›42m -2.0 -ms -//     ›0m
  114.                (2)  ›42m Math             ›0m
  115.                (3)  ›42m -lm              ›0m
  116.                     ›42m                  ›0m
  117.  
  118.      Line 0 contain the file version 'TST0'. Only the 4 firsts characteres
  119.     are important,
  120.      Line 1 contain always specified options ( like OS version ),
  121.      Further  couple  of lines contains  libraries to link with. First the
  122.     name diplayed in the gadget ( as line 2 ), and,  secondly , the  dcc's
  123.     options. In this example, only one gadget is used  [Math]  and ,  when
  124.     selected, '-lm' is added in DccOpts.
  125.      All lines starting by '#' is ignored (comments).
  126.  
  127.      Note : You can still use 1.x version of DiceConfig ( for simple file
  128.     project for example ) as configuration file of 1.x is
  129.             Dlib:DiceConfig.cfg
  130.  
  131.  
  132.  ›0;4;1mThe GUI :›0m
  133.  
  134.      DiceConfig V2.0 is basicaly a window:
  135.        ______________________________________________________________›0m
  136.     ›42m[C]›43m ›32mDiceConfig V2.0›31m                                              ›42m[I][D]›0m
  137. ›40m    |  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯     |›0m
  138.     |                              Files List         Project ›42m[¯¯¯¯›33m1›31m¯¯¯¯]›40m |›0m
  139.     |  Stat›42m[][¯¯¯¯›33m4›31m¯¯¯¯]›40m  +------------------------+  ›42m[›33m2›31m]›40m Dir ›42m[¯¯¯¯›33m3›31m¯¯¯¯]›40m |›0m
  140.     |Output›42m[][¯¯¯¯›33m5›31m¯¯¯¯]›40m  | ›42m                     ›41m ›40m |                      |›0m
  141.     |  Regs›42m[][¯¯¯¯›33m6›31m¯¯¯¯]›40m  | ›42m                     ›41m ›40m |      Libraries       |›0m
  142.     |                     | ›42m                     ›41m ›40m |                      |›0m
  143.     |›42m[][¯¯›33m7›31m¯¯][][¯¯¯›33m8›31m¯¯]›40m  | ›42m                     ›41m ›40m |  ›42m[¯¯¯¯¯¯¯¯][¯¯¯¯¯¯¯¯]›40m|›0m
  144.     |›42m[][¯¯›33m9›31m¯¯][][¯¯›33m10›31m¯¯]›40m  | ›42m                     ›41m ›40m |  ›42m[¯¯¯¯¯¯¯¯][¯¯¯¯¯¯¯¯]›40m|›0m
  145.     |   Code     Datas    | ›42m                     ›41m ›40m |  ›42m[¯¯¯¯¯›43m¯¯¯]›42m[¯¯›43m¯¯¯¯¯›42m¯]›40m|›0m
  146.     |    ›33m11›31m         ›33m12›31m    | ›42m       ›33m2 1›31m           ›41m ›40m |  ›42m[¯¯¯¯›43m¯›42m¯¯¯›43m]›42m[¯›43m¯›42m¯¯¯¯›43m¯›42m¯]›40m|›0m
  147.     |   New›42m[]›40m ›33m   ›31m Unix›42m[]›40m  | ›42m                     ›41m ›40m |  ›42m[¯¯¯¯¯¯¯¯›43m]›42m[¯¯¯¯¯¯›43m¯›42m¯]›40m|›0m
  148.     |     ›33m13›31m Prototype›42m[]›40m  | ›42m                     ›41m ›40m |  ›42m[¯¯¯¯¯¯›43m¯¯›42m][¯¯¯¯›43m¯¯›42m¯¯]›40m|›0m
  149.     |  ›33m14›31mIn line calls›42m[]›40m  | ›42m                     ›30;41m^›31;40m |  ›42m[¯¯¯¯¯›43m¯›42m¯¯][¯¯¯›43m¯›42m¯¯¯¯]›40m|›0m
  150.     |  ›33m15›31mDynamic stack›42m[]›40m  | ›42m                     ›30;41mv›31;40m |  ›42m[¯¯¯›43m¯¯¯¯¯]›42m[¯›43m¯¯¯¯¯¯›42m¯]›40m|›0m
  151.     |                     +------------------------+  ›42m[¯¯¯¯¯¯¯¯][¯¯¯¯¯¯¯¯]›40m|›0m
  152.     |  Debug›42m[#¯¯›33m16›31m¯¯¯][]›40m  ›42m[¯¯Add¯¯][¯Edit¯][Remove]›40m        ›42m[ Compile ]›40m    |›0m
  153.     +---------------------------------------------------------------------+›0m
  154.                              ›33m17›31m       ›33m18›31m     ›33m19›31m               ›33m20›0m
  155.  
  156.      C,I,D are the standard WB's gadget ( respectively Close, Iconify and
  157.     Depth),
  158.      1: Enter the name of the project ( executable's name ),
  159.      2 & 3: The directory where the executable is created,
  160.      4: The profiling level ( see dcc doc ),
  161.      5: Select the output file class ( Executable, Pure, asm or object ),
  162. NOTE: If object is selected, project name and destination directory are
  163. ignored, resulting files are stored in the current directory, w/ the source's
  164. name w/ a .o
  165.      6: Registers level ( see -mr -mR ... in Dcc docs ),
  166.      7: The target processor (68000,020,030),
  167. NOTE: 68010 users should use 68000.
  168.      8: The MPU (68881,882),
  169.      9: Code's model ( Small or Large ),
  170.     10: Datas' model,
  171.     11: Set the 'new' option,
  172.     12: Set the Unix compatibility,
  173.     13: Set if Dcc check prototyping,
  174.     14: Use #pragmas
  175.     15: Set the dynamique stack option,
  176.     16: Debug level, ( doesn't touch dcc's -d )
  177.     17: Add a file in list,
  178.     18: Edit the selected file,
  179.     19: Remove the selected file from the list,
  180.     20: Start compilation,
  181.     21: Files' list. Contain all sources' files ( .c,.a or .o but no .h )
  182.     22: Libraries to link with.
  183.  
  184.      Use menu item for loading or saving projects. When you load a project
  185.     all options is set as saved, exept for Debug reseted to 0.
  186.      Setting Debug level different than 0 produce a #define DEBUG=level and
  187.     inclusion of a symbol hunk. Setting Debug to 0 doesn't define DEBUG at
  188.     all.
  189.  
  190.  
  191.  ›0;4;1mBugs & tips :›0m
  192.  
  193.     * 2.07.54R version of Dice have a mistake causing Dcc to delete objects
  194.     files if compilation is successfull. So -new option can't work !. You can
  195.     find 2 CSH scripts named Multi_Dcc_F.sh for using this feature. Set
  196.     DiceConfig 2.0 in Arexx mode, run a slave CSH (done by Start_Csh script)
  197.     and set
  198.         CMD=Multi_Dcc_F %f %r
  199.     The best answer is to modify Dcc ( source is in cc directory ). Line 1125
  200.     add 'if(!NewOpt)' as following :
  201.  
  202.     /*
  203.      * Delete temporary objects
  204.      */
  205.  
  206.     if(!NewOpt){
  207.         NameNode *nn;
  208.  
  209.         for (nn = GetHead(&FList); nn; nn = GetSucc(&nn->n_Node)) {
  210.             if (nn->n_IsType & IS_TMP)
  211.                 remove(nn->n_In);
  212.         }
  213.     }
  214.  
  215.     * DiceConfig may not find Dice if it is not resident and if his path
  216.     is not specified in the starting shell. It's because, paths are locals.
  217.     Two answers :
  218.     - Set DiceConfig in Arexx mode and the new slave shell creat the path
  219.     ( see Start_CSH script ),
  220.     - CSH 5.31+ can set a global path ( path -g )
  221.  
  222.     * In Arexx mode, don't hit CTRL-C or CTRL-D in the shell window. It seems
  223.     that the window store breaks signals and it's not possible to start new
  224.     compilation in this shell.
  225.  
  226.     * If an options of Dcc is wrong ( or unsuported ), DiceConfig may say
  227.     the compilation is successfull but nothing is done. Start in Arexx mode
  228.     and errors are printed in the shell window.
  229.  
  230.     * The GUI is font sensitive, Topaz/8 is used if default font is too large.
  231.     On the other hand, short fonts cause an overlaping of gadgets ( 'cause
  232.     some have a fixed width ).
  233.  
  234.     * If you use auto-openning of shared libraries, remember that Dice doesn't
  235.     check for a version number. ( During the betha-testing, preversion of
  236.     DiceConfig cause a guru only on a 3000. After many hours of #?%$!, i found
  237.     the system have only reqtools v37 instead of 38 ... Fixed in this version )
  238.  
  239.     * Note for priors versions of Dice: DiceConfig 2.0 is basicaly for dice
  240.     v 2.07.54R, but it work w/ older versions. Remember: Do not use option
  241.     unsuported. In a first time, try in ARexx mode for watching if no options
  242.     hurt Dcc.
  243.  
  244.  ›0;4;1mFuturs :›0m
  245.  
  246.     - Gadget for setting OS version,
  247.     - Icons for project,
  248.     - AppIcon, AppWindow,
  249.     - An help mode (but I have curently some problemes w/ AmigaGuide.library),
  250.     - Use of DMake instead of Dcc for bether support of dependancies ( as
  251.     Dcc doesn't check for a change in a .h file),
  252.     - real support of Arexx ( not only for sending commands to Csh ),
  253.  
  254.  
  255.  ›0;4;1mInformations :›0m
  256.  
  257.      DiceConfig 2.0 was programmed on a 68010 based A1000, 6Mb, HD 52Mb,
  258.     WB 2.1, KS 37.210, with Dice V2.07.54R and Csh 5.19 & 5.31. The GUI
  259.     was created using GadToolsBox V2.0b © 1991-1993 Jaba Development.
  260.     Dice & Csh are © M.Dillon ( Csh 5.19 by U.Dominik Mueller & 5.31 by
  261.     Andreas M. Kirchwitz). ReqTools.library is © Nico François.
  262.     The Rexx routine is based on rxsend of CSH 5.19.
  263.  
  264.      The sources code of DiceConfig 2.0 is 70Kb long, and take 3 minutes
  265.     to compile. It was tested also on a standard WB3.0 A1200 ( 68020 ),
  266.     WB3.0 & KS 3.1 A2000 (68000), WB2.1 A3000 (68030) and KS3.1 WB3.1
  267.     A4000.
  268.  
  269.      DiceConfig 2.0 was successfuly tested w/ Enforcer & MungWall.
  270.  
  271.      Installer and Installer project icon
  272.      (c) Copyright 1991-93 Commodore-Amiga, Inc.  All Rights Reserved.
  273.      Reproduced and distributed under license from Commodore.
  274.  
  275.      Installer can be found in your WB 2.0+ installation disk.
  276.  
  277.      INSTALLER AND DICECONFIG 2.0 IS PROVIDED "AS-IS". ALL USE IS AT YOUR
  278.      OWN RISK.  NO LIABILITY OR RESPONSIBILITY IS ASSUMED.
  279.  
  280.      Tanks to Sebastien Bouchex for Betha testing.
  281.      Tanks to Frank Geider for many DPs he send to me,
  282.      Tanks to Bruno Anthoine for the test on A1200,
  283.      Tanks to Animage Production for the ßtest on A3000 w/ enforcer,
  284.      Tanks to Matt Dillon for Dice,Dmouse, and many other tools flying over
  285.     my system,
  286.      Tanks to SomeWare for importing registered version of Dice in FRANCE.
  287.      Tanks to Fred Fish for his libraries.
  288.  
  289.      He!! Commodore, don't forget olds machives: Amiga 1000 still better
  290.     than PCs or Macs ... Support the OLD FATHER.
  291.  
  292.  ›0;4;1mThe history :›0m
  293.  
  294.     1.0     02-09-1992  First version. Freeware and Cli based, few options
  295.                         and only 10 libraries...
  296.     1.1     26-06-1993  aesthetics changes only.
  297.  
  298.     2.0ß8   02-10-1993  first full working Betha version.
  299.     2.0ß9   12-10-1993  Add keys to configurations and projects files, move
  300.                         configuration to Dcc:Config/. Bugs & MungWalls hits
  301.                         fixes. File field of requester doesn't still holding
  302.                         garbages characteres. Fixe -@ bug of default CMD.
  303.                         Add CMD_STACK tools type.
  304.     2.0ß10  19-10-1993  Add locale's code. Creat french catalog.
  305.                         Add shareware requester.
  306.     2.0     06-11-1993  Release of DiceConfig 2.0, fixe a bug if reqtools < 38
  307.                         is installed ( see bugs & tips ).
  308.