home *** CD-ROM | disk | FTP | other *** search
- ===============================================================================
-
- ROBODoc v1.0a
-
- -------------------------------------------------------------------------------
-
- (c) 1995, by Jacco van Weert, Maverick Software Development
- email: weertj@euronet.nl
-
- ROBODoc documentation for the;
- Amiga computers.
- DEC Alpha systems.
- DEC VAX systems.
-
- New versions of ROBODoc are made available on AmiNet.
-
- or
-
- On the Amigoline BBS;
- Tel: +31-8347-84968 (International)
- Tel: 08347-84968 (From the Netherlands)
-
- ===============================================================================
-
-
-
- Preface
- -------
-
- The complete ROBODoc archive is copyrighted by Jacco van Weert,
- Maverick Software Development.
-
- ROBODoc can be freely distributed on FREEWARE base as long as all files remains
- in there original state, no files may be added to the archive, and also no files
- may be excluded.
-
- This software is provided on an "AS IS" basis without warranty of any kind. The
- author is not responsible for any damage caused by using this software.
-
-
- Hardware requirements
- ---------------------
-
- Amiga version:
- ROBODoc runs well on every Amiga, no special requirements are necessary.
-
- DEC Alpha/VAX:
- ROBODoc v1.0a has been tested on a DEC Alpha system using OpenVMS-AXP
- v1.5, but in general terms there should be no problem to run this
- program on other systems. It is a general C program.
-
-
- Introduction
- ------------
-
- ROBODoc is based on the AutoDocs program written some time ago by Commodore.
- The idea is to include for every procedure/function a standard header
- containing all sorts of information about that procedure/function.
- ROBODoc will extract those headers from the source file and put them in a
- autodocs-file. This autodocs-file can be written in three different formats;
-
- - Normal format;
- The autodocs-file is just a plain ASCII text-file, this file is very
- closely related to the one that the original AutoDocs program would
- generated.
-
- - HTML format;
- The autodocs-file will be written as a HTML-file (HyperText Markup
- Language), this format is used on the WWW-Internet. By using a
- Mosiac/Netscape program you view the documentation.
-
- - AmigaGuide format;
- This is a format used on the Amiga computers to view in a HyperText
- way a text-file. The AmigaGuide (OS3.0 tags are supported) program
- is necessary to view the resulting autodocs-file.
-
-
- This Version
- ------------
-
- This is the first 'real' version of ROBODoc, the previous 0.x versions where
- test versions. In version 1.0a all the options are included which I had
- in mind.
-
- Procedure/Function Header
- -------------------------
-
- We shall now discuss the general format of a procedure/function header.
- Full discussion of the header can be found in AutoDocs-documentation, this
- is a brief explanation of the header and the ROBODoc special items.
-
- ROBODoc handles three different type of headers;
-
- - MainProgram header (optional);
- These headers are placed at the start of a program and containing
- some general information about the program. These where not
- available in the original AutoDocs program.
-
- - Normal header;
- The normal header, available to the general public.
-
- - Internal header;
- The internal header not available to the general public, mainly
- used by the programmer him/herself.
-
-
-
- MainProgram header
- ------------------
-
- We now discuss an example of a MainProgram header. The following header was
- taken from the original ROBODoc program.
-
- /****h* AUTODOC/ROBODoc ***************************************************
- *
- * NAME
- * ROBODoc -- AutoDoc formatter
- *
- * COPYRIGHT
- * Maverick Software Development
- * This software is public domain and can be freely redistributed as
- * long as it is in it's original state.
- *
- * FUNCTION
- * ROBODoc is indented as a replacement for the original AutoDocs program
- * ROBODoc will extract from a source file the procedure comment headers
- * and put them in a seperate documentation file. There are basically
- * three different file outputs, Basic (Normal text based)/ HTML
- * Markup langauge mainly used on the Internet thus the files can be viewed
- * with a normal Mosaic viewer/ and finally AmigaGuide format, this format
- * can be viewed by an AmigaGuide program (AMIGA ONLY).
- *
- * AUTHOR
- * Jacco van Weert
- *
- * CREATION DATE
- * 20-Dec-94
- *
- * MODIFICATION HISTORY
- * 25-Jan-94 - v0.92: First version
- * 10-Mar-95 - v1.0 : Complete version
- *
- * NOTES
- * None
- *
- ****************************************************************************
- */
-
- Because the program was written in C the header is in this form, in assembler
- or other langauges it would look a little bit different.
- MOST IMPORTANT is that the first line of the header must be reconized by the
- ROBODoc program. Therefore is the following rule;
-
- The first character is not important.
- The next 4 characters must be asterics '*'.
- The next character defines the header type;
- 'h' = MainProgram
- '*' = Normal header
- 'i' = Internal header
- Then follows 1 asteric '*' and 1 space.
- After this follows the [module name]/[procedure name]
-
- Example:
-
- In C -> /****h* programs/greatprogram.library *********
- or /****** greatprogram.library/program_init ******
- or /****i* greatprogram.library/very_secret *******
- In Assembler
- -> ;****h* programs/greatprogram.library ********
- -> ******* greatprogram.library/program_init ******
- -> *****i* greatprogram.library/internal_affairs *****
-
- The header ends with a following line;
-
- *********..etc
- or
- ;********..etc
- or
- %********..etc
-
- In general the first character of the line is not important.
-
-
- But now back to the MainProgram header, it has the following items;
-
- NAME - The name of the program.
- COPYRIGHT - The copyright note.
- FUNCTION - The general function of the program.
- AUTHOR - The author of the program (very important :)
- CREATION DATE - When did you started?
- MODIFICATION HISTORY - All the changed made to the program.
- NOTES - General notes.
-
- Important is that all items have the same indent.
-
-
- Normal header
- -------------
-
- The normal header differs not from the original AutoDoc header which we
- will give here;
-
- /****** financial.library/StealMoney ******************************************
- *
- * NAME
- * StealMoney -- Steal money from the Federal Reserve Bank. (V77)
- *
- * SYNOPSIS
- * error = StealMoney( userName,amount,destAccount,falseTrail )
- * D0,Z D0 D1.W A0 [A1]
- *
- * BYTE StealMoney
- * ( STRPTR,UWORD,struct AccountSpec *,struct falseTrail *);
- *
- * FUNCTION
- * Transfer money from the Federal Reserve Bank into the specified
- * interest-earning checking account. No records of the transaction
- * will be retained.
- *
- * INPUTS
- * userName - name to make the transaction under. Popular favorites
- * include "Ronald Reagan" and "Mohamar Quadaffi".
- * amount - Number of dollars to transfer (in thousands).
- * destAccount - A filled-in AccountSpec structure detailing the
- * destination account (see financial/accounts.h).
- * If NULL, a second Great Depression will be triggered.
- * falseTrail - If the DA_FALSETRAIL bit is set in the destAccount,
- * a falseTrail structure must be provided.
- *
- * RESULT
- * error - zero for success, else an error code is returned (see
- * financial/errors.h). The Z condition code is guaranteed.
- *
- * EXAMPLE
- * Federal regulations prohibit a demonstration of this function.
- *
- * NOTES
- * Do not run on Tuesdays!
- *
- * BUGS
- * Before V88, this function would occasionally print the address and
- * home phone number of the caller on local police 976 terminals.
- * We are confident that this problem has been resolved.
- *
- * SEE ALSO
- * CreateAccountSpec(),security.device/SCMD_DESTROY_EVIDENCE,
- * financial/misc.h
- *
- *****************************************************************************/
-
-
- Internal header
- ---------------
-
- The same as the Normal header, except the internal header starts with the line
- /****i* or ;****i* or *****i* or......
-
-
- Items file
- ----------
-
- ROBODoc uses a items-file (ROBODoc.ITM) for the definition of the items.
- In this file all the possible item headers are stored. By default,
- only the discussed item header are placed but the user can add up to
- 50 items. The items-file must be in the directory from where ROBODoc is
- started.
-
- The default items-file has the following layout;
-
- NAME 3
- COPYRIGHT 20
- SYNOPSIS 5
- FUNCTION 40
- AUTHOR 0
- CREATION_DATE 0
- MODIFICATION_HISTORY 8
- INPUTS 8
- RESULT 8
- EXAMPLE 4
- NOTES 0
- BUGS 10
- SEE_ALSO 2
-
- Every line holds first the item header name and then a item type number.
- The items must appear in order as they appear in a procedure header.
- Please note that a '_' in an item name is replaced by a space.
-
- Item Type Number - This number is used when a HTML or AmigaGuide output
- is generated, it defined the layout of the text body in the resulting file.
-
- In this Item Type Number flags are stored, current definitions;
-
- 1 = Item Header in Large Font. (HTML)
- 2 = Text body in Large Font. (HTML)
- 4 = Text body in Italics. (HTML/AMIGAGUIDE)
- 8 = Text body in NON-Proportional font. (HTML)
- 16 = Text body in Small Font. (HTML)
- 32 = Text body in Bold. (HTML/AMIGAGUIDE)
-
- Add the numbers together of the options you want to have.
-
-
- XREF files
- ----------
-
- The 0.x versions of ROBODoc had a simple XREF mechanism. But starting from
- version 1.0 ROBODoc can make references to other files.
- Please note that references can only be used when creating HTML or AmigaGuide
- files.
-
- The [GENXREF] parameter ROBODoc will generate a standard XREF-File of the
- source-file. In this way XREF-files of the different source-files can be
- generated. When this parameter is used, ONLY the XREF-File is created NOT
- the autodocs-file.
-
- As soon as all the XREF-files are created the documentation can be created.
- The [XREF] parameter contains the name of the file IN which the names
- all XREF-files are defined (xreflist_filename). This file must be created
- by the user.
- XREF-Files can also be created by the user or taken by other means, e.g.
- the Autodoc.xref. ROBODoc uses the same format as these standard XREF
- files, in v1.0a the exceptions are not yet supported.
-
- Example:
-
- In the ROBODoc.lha archive there are two example programs PROG1.C and PROG2.C.
-
- First create the XREF-Files when want to create HTML autodocs-files:
-
- >ROBODoc PROG1.C PROG1.HTML GENXREF PROG1.XREF HTML TOC SORT INTERNAL
- >ROBODoc PROG2.C PROG2.HTML GENXREF PROG2.XREF HTML TOC SORT INTERNAL
-
- At this moment the XREF-Files PROG1.XREF and PROG2.XREF are created.
-
- Now create a <xreflist_filename> file.
- This file will hold only two lines;
-
- >PROG1.XREF
- >PROG2.XREF
-
- More XREF-Files can being added. The name of this file can be anything,
- e.g. 'XREF_Files'.
-
- Now generate the final documentation;
-
- >ROBODoc PROG1.C PROG1.HTML XREF XREF_Files HTML TOC SORT INTERNAL
- >ROBODoc PROG2.C PROG2.HTML XREF XREF_Files HTML TOC SORT INTERNAL
-
- When the source-code is not changed it not neccesary to create
- everytime a new XREF-File.
-
-
- Usage of ROBODoc
- ----------------
-
- To list the arguments needed by ROBODoc just enter ROBODoc or ROBODoc ?
- To following message will be printed;
-
- ROBODoc v1.0a, autodocs formatter
- ==============================================
- (c) 10-3-95, Maverick Software Development
- Written by J.v.Weert, email: weertj@euronet.nl
- FORMAT
- ROBODoc filename docfilename [GENXREF xref_filename] [HTML] [GUIDE] [INTERNAL]
- [SORT] [TOC] [XREF xreflist_filename]
-
- The parameters;
-
- filename = The source code filename.
- docfilename = The name of the documentation file,
- which will be created.
- GENXREF xref_filename
- = Generate a XREF-file of the source code.
- The <xref_filename> file is created as XREF-file.
- HTML = The documentation will be in HTML format.
- GUIDE = The documentation will be in AmigaGuide format.
- INTERNAL = The internal headers are also included.
- SORT = The procedures will be sorted.
- TOC = A table of contents will be added. TOC will be
- automatically set when HTML or GUIDE is set.
- XREF xreflist_filename
- = Cross-references will be generated, the XREF-Files
- names are stored in the <xreflist_filename> file.
-
-
- CONCLUSION
- ----------
-
- This is the first complete version of ROBODoc. In the future probably more
- features will be added.
-
-
- SUGGESTIONS EN BUGS
- -------------------
-
- Suggestions and bug reports (please use the included Bug-report form) can
- be send to;
-
- Email: weertj@euronet.nl
-
- or
-
- Maverick Software Development, T.a.v. J.v.Weert
- Haverdreef 131,
- 7006 LH, Doetinchem.
- The Netherlands.
-
-
- __ __________
- __/ \/ / weertj@euronet.nl
- __/ \__/ Maverick
- / \__/ \ Software
- \__/ \__/ Development
- _______________/ slothoub@xs4all.nl
-
-
-