squif SQUares Index File A program for the Sinclair ZX Spectrum 48K or Spectrum Plus computer USERS GUIDE N.P.Taylor (G4HLX) SOFTWARE BY 87 Hunters Field Stanford in the Vale G4HLX Faringdon Oxon. SN7 8ND Program and explanatory material (c) 1986 N.P. Taylor 1. Introduction The SQUIF program creates and maintains files of data which record the locator squares which you have worked. It is designed to replace the card index which many VHF/UHF operators use for this purpose. It will also produce a map of Europe with the worked (or QSL'd) squares shown shaded in. A file consists of a set of data for contacts on a certain band, and may contain up to 255 records. Each record contains: the designation of the square worked (either IARU Universal Locator squares, e.g. 1091, or old-style QRA locator squares, e.g. ZL, may be entered and freely mixed), the callsign of the station worked, up to 8 characters (e.g.GM9ZZZ/P), the date of the contact, up to 8 characters (e.g. 21.10.85), a "confirmed" flag, which is to indicate if you have received a QSL card for the contact. The records in the file are updated simply by SQUIF, and the data can be displayed or printed in a number of different forms, including a list of confirmed squares suitable for a VHF award claim. The records can be sorted into alphabetic/numeric order of locator squares. The lists displayed or printed by SQUIF generally show both Universal Locator and QRA locator designations for a square, and input may be in either form. The program actually keeps its records in terms of the Universal Locator. All searching, sorting and moving of data in SQUIF is carried out by machine code, making the speed of these operations virtually instantaneous. Printed output from the program, including copies of the graphic map, are designed for the ZX or Alphacom 32 printer, although other printers which support the usual LPRINT and COPY commands should also be suitable. The data which comprises a complete file can be saved on either tape or microdrive. 2. Using SQUIF You will probably want to keep a separate file for each band on which you are active, and perhaps also separately for portable, /A and home station operation. After a period of operating in which you have worked some new squares, or after receiving a batch of QSL cards from the bureau, you load SQUIF into the Spectrum and then load the file of data previously generated by SQUIF for the relevant band. Chosing the "new square " option (see section 4), you enter the designation of each new square worked or confirmed. If the square has not been worked before, you go on to enter the callsign and date. If however, the square is already worked, the details of the earlier QSO are shown on the screen, which you may alter if you wish, or indicate that a QSL card has now been received. Having updated your file in this way, you can display or print it in a variety of forms, perhaps sorting it alphabetically first, and obtain the European map with the worked or confirmed squares shaded in. Finally you will want to save this latest copy of your file on to tape or microdrive. The various options in SQUIF are all controlled by menus, in which a selection of alternatives are offered. You make your choice by pressing the single key -1- corresponding to the letter shown on the menu next to your desired option. Once the generation of a file has begun, pressing the break key at any time will return you to the main menu. 3. Loading and the initial options Load the SQUIF program from cassette using the usual command LOAD "". When loading is complete (about 3 1/2 minutes), the title screen will be replaced by an initial options menu. There are only three options on this menu, controlling the way in which the file is to be generated. Assuming you have not yet generated any SQUIF data on tape or microdrive, you will use the option N to start a new file. You will be asked to provide a callsign and frequency band to be used as titles for the various displays, and optionally a further title which you may like to use to describe the data more specifically, for example "/P operation at Beacon Hill". Subsequent runs of SQUIF can use the T or M options to load data which you have previously saved to tape or microdrive. In either case, you will be asked to provide the filename. 4. The main menu After the initial option has been chosen and completed, the main menu is displayed. Each option provides a different action, some of them showing further sub-menus. These "lower level" menus are all displayed on a black background, whereas that of the main menu is yellow. The on-screen prompts in SQUIF are all self-explanitory, and you are unlikely to need to refer to these instructions once you have been through all the various features. The first time you use SQUIF you will need to start by using the N option on the main menu to enter some data for some new squares worked. It is advise- able to begin by entering a few squares, then return to the main menu to try out each of the options to get acquainted with them. The action of the various options is outlined below: B - Begin new file This is for use when you already have some data loaded, which you wish to delete and start a new file from scratch. The effect is similar to restarting SQUIF from the beginning and selecting "New file" on the initial options menu. You will be asked to confirm your intention to erase the existing data, and then be prompted for the title information for the new file to be established. L - List, display, print and sort This selection accesses the various options for displaying and printing the squares worked list, as well as the alphanumeric sort. These options are controlled by a further menu which is described in section 5. N - Enter New square This will be the most frequently used option, for adding new squares worked, changing the records of an existing square worked, adding squares confirmed, changing a worked square into a confirmed square, or simply finding out the status of a square. After pressing N, a panel will be displayed with the cursor positioned ready for you to type the locator square designation. Either a Universal Locator (e.g. 1091) or QRA locator (e.g. ZL) square may be entered. There is no check on the validity of the square entered, so you may enter any characters you like. If -2- you enter a QRA locator, it will be converted to the corresponding Universal Loctoar, since the QRA system is a repeating one, it will be assumed you mean the one lying between 36 and 62 (degrees) N and between 12 (degrees)W and 40 (degrees) E. What happens next depends on whether the locator square is already on file as worked or confirmed. If it is not, you will be invited to enter the callsign (max. 8 characters) and date (use any format you like, but up to a maximum of 8 characters). Three options are then available as displayed by a short menu: Enter the data into the file as a square worked (E), or a square confirmed (Q), or delete this entry if you realise you've made a mistake (D). If, when you enter a locator square, it is found to be already on file, the details (callsign and date) are displayed. The options are to leave the record unchanged (U) or replace the existing record with a different callsign and date (R). If the record shows that the square is worked, but not confirmed, a third option is to register that a QSL card has now been received for the contact (Q). The "enter new square" procedure can be used repeatedly. Return to the main menu is achieved by entering a null string (i.e. just pressing ENTER) when the program is expecting a locator square (i.e. when the cursor in in the top box). D - Delete a square The records for a certain square can be removed from the file with this option. The panel shown will invite you to enter the square designation (either Universal Locator or QRA), and will then display details of the record for that square, asking for confirmation (D) before completing the deletion (so that you can change your mind (U)). M - Display Map Selecting this option will display a high-resolution graphic map of Europe. The options given are to display worked (W) or confirmed (C) squares. Whichever is selected, the appropriate squares will be "shaded in" on the map. When complete, an option is available (G) to add grid lines to the map showing the locator square boundaries (pressing U a second time will remove the grid lines). A print option (C) is also given, which will copy the map to a ZX or similar printer. Before doing so, a stippled pattern is superimposed on the shaded squares, so that they can be seen on a black & white print. The other option (R) returns to the main menu. S - Save/load data to tape/microdrive A sub-menu is shown by this option, enabling a current file of information to be saved on tape or microdrive cartridge (drive no. 1 is assumed for micro- drive use). Alternatively, an existing file of data previously saved on tape or microdrive may be loaded. On this sub-menu, the saving options (S and D), if selected, will ask for the filename to be used on tape or microdrive. Clear directions are given for starting the tape, etc. After a tape save there is an option (V) to verify the saved data. For a save to microdrive, SQUIF will ask whether a file with the same name already exists and is to be overwritten, an affirmative response (Y) will cause the old file to be erased before the saving is done. The loading options (L and M) will cause any data currently in SQUIF to be lost, as it is replaced by the data from tape/microdrive. A warning to this effect is followed by a request for confirmation before continuing. The filename will be prompted for, although in the case of a tape load, this may be null, to load the next file on the tape. Certain error conditions that may arise during saving and loading (e.g. "Microdrive not present") may result in SQUIF exiting to BASIC. If this happens, you should re-start SQUIF with the command GOTO100. Do not use RUN or CLEAR as these will erase any current data. -3- 5. List, Print and Sort Options The menu offering these options is reached by selecting L on the main menu. There are basically two display options and two print options, plus an alphabetic/ numeric sort capability. In the order given, these are: L - display simple List of squares The Universal Locator designations for all squares worked or confirmed are displayed on the screen. Those which are confirmed are shown in "inverse", i.e. blue letters on white rather than white on blue. The list may fill more than one screen, but will pause for your prompt (any key except break) at the end of each screen-full. S - alphabetic/numeric Sort All display and print options show the information in the order in which it is stored, which is the order in which it has been input. This option will rapidly (almost instantly) sort the data into an ascending alphabetic/numeric order of locator square, and then display the simple list as produced by the L option. To maintain the file in alphanumeric order, it is a good idea to use this option after you have made a series of changes (additions and deletions), before listing, printing, or saving the file. D - Display full list The complete data file is displayed in tabular form, with locator square given in both Universal Locator and QRA forms, callsign and date worked. If the contact is confirmed, the square name is shown in "inverse". A long list will extend over many screen-fulls, pausing at the end of each until you press any key (except break). To abandon the display mid-way through a list, press BREAK, which will return to the main menu. P - Print full list A tabular list of all squares on file, similar to that displayed by the D option, is sent to the printer, if connected. C - print Confirmed list A similar option to P, except that only those squares for which the contact is confirmed are printed. You will need to use this option when preparing a sub- mission for an award, for example. The R option returns to the main menu. The print options here are designed to be used with a ZX, Alphacom 32, or similar printer. However, it may be possible to use other printers, suitably interfaced, if they respond to the usual LPRINT command. Any FORMAT and OPEN statements required may be added to the SQUIF BASIC program between lines 10 and 90. To achieve this, after loading SQUIF and when the initial option menu is displayed, press the BREAK key to exit from the program. Add the required lines (e.g. 20 FORMAT "t";300 : OPEN#3;"t" for a 300 baud printer using the interface 1 RS232 port), and then RUN to re-enter the program. You can then save this customized version of SQUIF on tape or microdrive (see setion 7). 6. The BREAK key and re-starting When SQUIF is first loaded, the BREAK key operates in the usual way. However, as soon as the main menu is displayed for the first time, the function of the BREAK key is changed. Thereafter, pressing BREAK at any time returns to -4- the main menu, and it is not possible to exit to BASIC (this is to protect against possible loss of data). Use of the BREAK key to return to the main menu should be restricted to cases where it is neccessary (e.g. to abort a printing), as using it to interupt certain operations (such as square deletion) could lead to undefined records. It is normally possible to return to the main menu with an "R" option on menus, or by entering a null string in the New or Delete square panels. If return to BASIC does occur as the result, perhaps, of an error condition, SQUIF should be restarted with the command GOTO 100. The RUN command may be used but will cause the loss of any currently held data, as will the CLEAR command. 7. Making a copy of SQUIF The SQUIF program is copyright, but you are free to make a single back-up copy on tape, or transfer the program to microdrive for your own personal use. The copying to either tape or microdrive can be done automatically via a "hidden" option on the initial menu. After loading SQUIF, and while the initial menu is still displayed, press Symbol Shift and S together. This will bring up a menu with options to save the program to tape (T) or microdrive (M). In either case, two files will be saved, "SQUIF", containing the BASIC, and "SQUIFC1", the machine code and map. To run the saved program, use LOAD "SQUIF" or LOAD *"n";1;"SQUIF", as appropriate, which will automatically load the machine code file after the BASIC. Note that the title screen is not saved with a copy made in this way. -5-