Page:NBS Technical Note 11176 (1983) (IAutilityprogramsf1176dick).djvu/15

From Wikisource
Jump to navigation Jump to search
This page has been proofread, but needs to be validated.
4000-4070 Font hires display index routine.
5000-5460 Font edit routines; also contains cursor input routines.
6000-6180 Hires routine to display font.
7000-7110 Read font from disk.
8000-8090 Display single character as it is input.
9000-9010 Catalog input disk.
10000-10000 Exit routine.
11000-11060 Hires screen swap routines.

In the following sections, each segment of the program will be examined in more detail. Although some effort was made to write the most efficient code, the program was designed to be user friendly and hopefully to contain as small a number of bugs as possible. In Listing 2, the variable documentation program of South Western Data Systems (21) was used to document the usage of all the variables used in the program. Reference to this listing will be useful in the following discussions.

Lines 10-999: THE MAIN MENU AND INITIALIZATION ROUTINES

This section of the program is used to display the main menu and to determine the disk drives that will be used for both input and output of the data. Before running the main body of the program however, the entire program is relocated so that the computer stores the Applesoft code beginning at memory location 24577 ($6001) using the &LOMEM: utility of Konzen (22). This utility shifts the entire Applesoft program and variable space above the locations that are needed for both pages of the hires graphics. After this shift, the program initializes the font array (line 50), pokes a hires shape table into locations 768-777 ($0300-$0309) and loads the appropriate hooks to the table on page 0. This shape is used as a cursor for the input of character vectors in lines 5000-5460. Lines 80-90 input the appropriate disk drive information and the rest of the section displays the main menu. The main menu is self-explanatory for the most part, and contains options that allow the user to CREATE, MODIFY, EDIT, or DISPLAY a font as well as perform certain disk operations.

Utility Programs...
- 6 -