INMC 80 News

  

June/July/August 1980, Issue 1

Page 9 of 48

Docutemnation Erur

Dear Sir,

I am a recent member of INMC having just built myself a NAS­COM 2. The following may possibly be of interest to your readers.

There is a misprint on page 9 of the 8K BASIC Software manual in the NAS­COM 2 documentation. In fact, this version of BASIC does NOT support user defined functions with more than one arguement. Thus, DEF FNAVE(V,W) = (V+W)/2 is not valid, although the other example given is of course single and OK.

I hope that this information may be of use to others !

Yours faithfully,

H.J.J. Berridge.
Crowthorpe.

USR SUBROUTINES

Dear Sirs,

Many thanks for your excellent newsletter. I used the machine code subroutine for 8K Basic as in your Issue 4, and lo & behold, ?FC error. The fault was mine, not yours; in case it is useful to others I will explain what I should have read in the manual.

Before a USR is used, the address of the subroutine to be called must be poked into a 2-byte location known as USRLOC. For those of us with the tape Basic, assembled at 1000H to 2FFFH, that location is 3004 & 5H (decimal 12292 & 3).

Similarly the address of the routine which sets the value to be returned as USR() as the current contents of the A & B registers in 100A & BH for Tape Basic users.

A useful feature which could easily be incorporated in Basic, but is not available in any version I know of, would be to allow variables to be in Hexadecimal. This would make POKE-ing & DOKE-ing much simpler. I enclose a pair of subroutines in Basic for the library, to simplify it, but machine code subroutines accessing the Data statements would be much more efficient in time and space. If only the folk who write interpreters would give us the source code.

I look forward to seeing some programs in your organ of more use or Interest than games.

Yours faithfully,

Robert Edlin.
Nottingham.

Page 9 of 48