Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month! Blinker 5.10 Online Reference - <b> ca-clipper summer 87</b> [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 CA-Clipper Summer 87
 Blinker supports CA-Clipper Summer '87 to create DOS real mode overlaid
 programs only. The following sample programs written in CA-Clipper Summer
 '87 will be used throughout this section to illustrate the basics of linking
 CA-Clipper Summer '87 programs with Blinker.

 DO limerick
 ? "There was a young man from Nantucket"

 The two modules are compiled as follows :

 CLIPPER test -m
 CLIPPER limerick -m

 To execute Blinker from the command line :

 BLINKER FILE test, limerick LIB extend, clipper

 This causes Blinker to link the two object modules specified in the FILE
 command (test.obj and limerick.obj), and the two libraries specified in the
 LIB command (extend.lib and Clipper.lib). The result is an executable
 program with the name TEST.EXE, which is the name of the first object module
 listed in a FILE command.

 Blinker defaults to incremental linking for increased development speed.
 Using Blinker from the command line is fine for small programs with few link
 commands, but becomes tedious with larger programs, and impossible if the
 number of commands exceeds the length of the DOS command line. In common
 with most linkers, Blinker can be directed via a link script file, which is
 simply a text file containing a list of Blinker commands.

 Using a link script file (development, no overlays)

 The following link script file produces the same result as the above
 execution of Blinker from the command line:

 # TEST.LNK (This is a comment due to the # at the start)
 FILE test
 FILE limerick
 LIB extend, clipper     # CA-Clipper libraries

 NOTE: the first file specified must contain the CA-Clipper start-up
 procedure for the application. To execute Blinker when using the above
 sample link script file use the following command :

 BLINKER @test

 The `@' character informs Blinker that what follows is the name of a link
 script file. Blinker will assume the extension `.LNK' unless one is given on
 the command line.

 Overlaid program during development

 BEGINAREA            # Start of overlay area
    FILE test         # All Summer '87 code
    FILE limerick     # Can be overlaid
    LIB extend        # Overlay the EXTEND library
 ENDAREA              # End of overlay area
 LIB clipper

 Note that all CA-Clipper code and EXTEND.LIB may be overlaid. The following
 line will execute Blinker with the above link script file :

 BLINKER @testovl

 Overlaid program, production version

 # Comments start with a pound/hash sign
 BLINKER INCREMENTAL OFF       # Turn off incremental linking
 # Burn in the CLIPPER environment settings
 BLINKER PROCEDURE DEPTH 50    # Set a suitable stack
 BLINKER MEMORY PACK 10        # Enable memory defragmentation
 BLINKER OVERLAY OPSIZE 40     # Set the overlay pool size
 OUTPUT test.exe               # Output .EXE name
 BEGINAREA                     # Start of overlay area
    FILE test                  # This file is overlaid
    FILE limerick              # So is this
    LIB extend                 # This library is overlaid
 ENDAREA                       # End of overlay area
 LIB clipper

 The special Blinker commands used above can be placed anywhere in the link
 script file.

 The most important of these commands is BLINKER INCREMENTAL OFF. Incremental
 linking is the default setting when linking with CA-Clipper for quick link
 speed during development.

 It is essential to disable incremental linking before creating the final
 production version. Incremental linking, like linking with debugging
 information, reduces available memory and the execution speed of an
 application and is only intended for development.

 It may occasionally be necessary to turn off incremental linking during
 development if the application runs out of memory.
 Please refer to the section `Using Blinker with CA-Clipper' in thr online
 help for more details.

Online resources provided by: --- NG 2 HTML conversion by Dave Pearson