I’m transcribing (almost) every program from the People’s Computer Company magazines.
In V2N6, Greg Yob begins providing his listings in a new dialect. Previously he used HP TS-BASIC, and the only mention of this change is a single REM statement that says “datapoint”.
It is bizarre. There is no “GOTO”, just “GO”, it assumes “PRINT” if you don’t put in a keyword, it uses semicolons for both print separators and statement separators, and…
I’m trying to find a manual so I can make heads or tails. I assumed this would be the Datapoint 2200, but I cannot find a BASIC for this (at least in Google, as the main manual has the word “basic” in the intro). I also tried Wang 2200, but no, that dialect is fairly conventional.
Anyone have any idea what this might be and where I could find a manual?
BASICPLUS is available for two types of processors in the Datapoint product line. The first runs on any 5500 instruction set processor with at least 36K of memory, and requires any DOS version 2.4 or higher. The other version executes only on the 1500 processor with the 64K memory option. This version requires DOS.H version 2.5 or higher. BASICPLUS is structurally similar to and upwards compatible from DOSBASIC for the Datapoint 2200 DOS and Datapoint Diskette 1100. It is also upwards compatible from the 5500 DOS BASIC, BASIC55.
Yeah, I was just about to link to that. It also has the CLICK keyword. But no mention of optional PRINT statements. I wonder if an earlier version of Basicplus allowed them?
There’s also a chance it could be a space-saving convention, and the user might have been expected to type PRINT before the bare "-enclosed lines.
First, I’m in awe of the creativity of this newsletter!
Secondly, there’s another BASIC listing using a bare “GO” on page 27 (the penultimate page), specifically stating, “Run on a DATAPOINT 2200 May 1974”. As far as I can see, there’s no documentation on this specific version.
I’d suggest that $ is an “unnamed” array and that you can access the elements as numbers… It’s initialised with the value 15 then the X and Y positions as 16-bit numbers, then the character to use as the plotting character.
So PRINT CHR$(15);X;Y;char
sort of thing. I guess the output device picks up character 15 (ASCII SI: Shift-In) and uses it to move the cursor - although a 256x256 character display is somewhat impressive for the time… Maybe it was a printer?
The program just appears to print the character at a random location for ‘density’ iterations…
$ is actually declared in line 10 and an array taking a character string. (Since this is the bare suffix, the identifier is empty!)
And, yes, device #4 is here a “servo printer”. And these are 16-bit coordinates! Is a “servo printer” a plotter? (I guess so, since we need to move in both 2D-directions.)
DIM $[6] … array for output string (line 10)
$[1] … 15 (SI)
$[2] … X/256 (pos X, high-byte)
$[3] … X (pos X, low-byte, clamped)
$[4] … Y/256 (pos Y, high-byte)
$[5] … Y (pos Y, low-byte, clamped)
$[6] … "painting character" as read by INPUT in line 30 and set in line 40
BTW, on the matter of the DataPoint 2200: I sometimes read things, like, “no, the DP2200 was just a not-so-dumb terminal.” – This little program shows that it was used much like a PC, in 1974. I.e., for programming in BASIC, running this program interactively from internal memory, and outputting to an attached plotter, which is quite the substantial peripheral device.
The Intel 8008 microprocessor was derived directly from the medium scale integration processor in the Datapoint 2200. Datapoint paid Intel to develop the chip (initially called the 1201) but rejected it for inadequate performance, returning the intellectual property to Intel for $50,000.
ALL of the Intel processor products are derived in turn from the 8008. The Datapoint 2200 was a real personal computer, especially from the second model in the line that was released in May 1972(!).