80-Bus News |
July–October 1982 · Volume 1 · Issue 3 |
Page 9 of 51 |
---|
The N command should now work correctly but I am afraid that it still prints that damned n! The warm start back into Naspen is still achieved by EB806.
I would like to thank Dusty Pulver for all his CP/M notes which are of tremendous value to a CP/M novice like me, but just in case no one else has pointed it out, his reset switch 1 (which resets Nas-Sys) will not give a CP/M warm boot because the switch is activating the Nascom reset line and the Nascom at that point clears all the Port set up for the disk drive controller card! He will just have to be content with EO enter from MONITOR.COM.
Robert Hill, Hemel Hempstead
One of the niggling omissions from the Nascom ROM BASIC is a Randomise function, to make the RND function produce unpredictable numbers. This USR callable subroutine should help a bit.
This can be put anywhere in unused memory by a series of DOKEs, such as:
It uses the neglected Z80 instruction which reads the refresh register. If the computer has been waiting for an input from an unpredictable source such as the user, this will provide a number in the range 0 to 127. This can be used to send the RND function as in:
100 A = RND(-USR (0))
This will start one of 127 different sequences of random numbers, which may still be too predictable for some purposes. In this case, a subroutine to step through the sequence would be better. This can be called after each INPUT line if necessary:
50000 FOR I=0 TO USR(0):A=RND(1):NEXT:RETURN
Peter Dishart, Wembley.
Please publish the following erratum to my article “INPUTting and READing Double Precision Constants” in 80-BUS News Vol. 1, Issue 2:
Line 2230 of the routine published should read:
LH = VAL(RIGHTS(A$,K-7))/10*(K-7)
My thanks to Adrian Sauter for pointing this out to me. Mike York.
Page 9 of 51 |
---|