This utility is a `linker' for Basic files. It scans a Basic program for LIBRARY commands. Then it looks for any PROCs or FNs that are used in the main program, and defined in a library. These are then appended to the main program.
This enables you to develop your programs using procedures from a library. When you have tested your program, you can use blink for the final assembly. You can use multiple libraries. The libraries may contain procedures that you do not need in your current project; if they are not used, blink will not include them.
The program requires RiscOS version 3.10 or later.
blink is FreeWare. For conditions of use, read the copyright notice at the end of this file.
How to use it
—————————————
The program is run from the command line. The command syntax is:
blink [options] infile [outfile]
where <infile> is name of the main program, and <outfile> is the name under which the output must be stored. If no <outfile> is provided, then <infile> is overwritten with the output.
For options, you can choose:
-h Print a help text about the command syntax, then quit.
-l<file> Use <file> as additional library. This may be useful in case
blink can not read the name of the library (see below).
-r Include REM lines that precede a PROC or FN definition. Such
lines usually describe what the procedure does.
-v Verbose, i.e. report on the progress.
A couple of points to note when using blink:
• The format of PROC/FN definitions should follow one rule: the terminating
`ENDPROC' (or `= <something>' for a FN) MUST be at the start of a new line.
The terminator may be preceded by spaces, but anything else will confuse
blink. This means that you can't use libraries that have been treated by a
cruncher (since cruncher usually concatenate lines).
• The name that is given in the LIBRARY command is taken as a literal
filename. This means that constructions that must be evaluated by Basic,
such as
LIBRARY MyDir$+".WimpLib"
won't work (blink will print a warning message). If you still want this
sort of thing, use the `-l' option to tell blink the name of the library.
• *All* LIBRARY commands will be commented out by blink. That is, `LIBRARY'
is replaced with `REM{'.
• Libraries may contain LIBRARY commands. These libraries will also be read.
• If a procedure is defined more than once, blink will print a warning
message.
• The lines in the output file are renumbered, starting at 1 and with an
increment of 1.
• REM lines are only included (with the `-r' option) if there are no other
lines between the last REM line and the DEF that follows.
• Procedures in the main file are always included in the output, whether
they are used or not.
Copyright notice
————————————————
This program is FreeWare. This means that I retain the copyright. You may freely copy and distribute it, provided that it is complete with all original files, and that you do not sell it. PD libraries may charge a nominal fee for the cost of duplication, postage etc. When you use the program, you do so entirely at your own risk.