80-Bus News

  

March–April 1983 · Volume 2 · Issue 2

Page 26 of 55
NAS-Graphpac System ManualPage 6

Appendix 2

Using The Parkinson Toolkit With NAS-Graphpac

There are several different BASIC toolkits available for the Nascom from various sources, none of them official Nascom software products. One of the more popular toolkits written by David Parkinson and available through your local Microvalue Dealer, may be used with Graphpac.

The COLD start procedure is more complicated than normal if the Toolkit is to be used and the method need not only be used with this software but can be used with any other routines which needs to be initialised at the same time as BASIC and Nas-Graphpac.

First Load Nas-Graphpac at it’s execution address (if not in ROM).

Load the toolkit at 1200 hex and execute. The second argument must be used to limit the amount of memory used by BASIC to ensure that Nas-Graphpac is not over-written. If Nas-Graphpac was loaded at 9000 hex use the following line.

E 1200 8EFF (enter)

This leaves Nas-Graphpac and the workspace situated in the memory below it untouched. BASIC will now be initialised and entered. Use the Monitor command to restore control to Nas-sys.

Execute Nas-Graphpac at it’s normal execution address + 3. In the example above this would be 9003 hex. The second argument must specify the address to jump to after Nas-Graphpac has been initialised, in this case, the Toolkit. The line would therefore read as follows, the Toolkit warm start being 2 below the maximum address of the toolkit program.

E 9003 8EFD (enter)

All Nas-Graphpac and Toolkit commands can now be used.

Graphpac commands are not reduced in size to one byte as BASIC reserved words are. For this reason Parkinson’s Toolkit (or indeed any other) cannot recognise Nas-Graphpac command words, these will appear as two letter variable names while using the cross reference facility.

NAS-Graphpac System ManualPage 7

Appendix 3

Using The USR Function To Operate NAS-Graphpac.

If for any reason Nas-Graphpac does not run correctly on your system due to, for example, software associated with your discs or high speed tape interface, use the BASIC USR function. Programs will have to be written slightly differently and commands will not be readily available in the direct mode, but all facilities are still available.

Load the relocated Nas-Graphpac into memory at it’s execution address. COLD start BASIC, being careful to set the MEMORY SIZE correctly so that Nas-Graphpac and it’s workspace are not over-written. The next stage can best be described by the use of a short BASIC program.

Lets assume that Nas-Graphpac has been loaded at 9000 hex. and that BASIC has already been entered.

10 DOKE 4100, -28666
20 CLS
30 C=USR(0): STARTAT 48,23: PENFLIP
40 FOR A= 0 TO 359
50 C=USR (0): PLOT A,18: PENRET
60 NEXT A: GOTO 40
70 END

Line 10 sets up the address that the USR will jump to. In our case as Nas-Graphpac was relocated for 9000 hex the address to use was 9000 + 6, which equates to −28666 decimal.

Now every time that a USR function is now reached Nas-Graphpac is entered. C is a dummy variable but any variable name may be used.

The whole of the remaining line MUST contain only valid Nas-Graphpac commands or a syntax error will occur. Normal BASIC statements cannot be mixed with Nas-Graphpac commands. Any number of Nas-Graphpac commands may be included in a line following a USR provided they are separated by a colon. Nas-Graphpac commands can be used in the direct mode but C=USR(0) must still be typed, which makes the facility almost useless.

Page 26 of 55