SPS BASIC: Difference between revisions

From TekWiki
Jump to navigation Jump to search
(Layout changes)
No edit summary
 
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
To provide users of the early Signal Processing Systems like the [[P7001|DPO]] a way to control the hardware and to write their own measurement routines a programming language was needed. The BASIC language was chosen because it was simple and easy to use. The user could modify their own programs without the need of recompiling it.
To provide users of the early Signal Processing Systems like the [[P7001|DPO]] a way to control the hardware and to write their own measurement routines, a programming language was needed. The BASIC language was chosen because it was simple and easy to use. The user could modify their own programs without the need of recompiling it.
 
[[Dartmouth Basic]] was the basis of all basic variants.


[[wikipedia:Dartmouth BASIC|Dartmouth BASIC]] was used as the basis of all Tek BASIC variants.


==1973: APD Basic==
==1973: APD Basic==
[[File:Tek_APD_Basic.gif|right]]
[[File:Tek_APD_Basic.gif|350px|right]]


APD Basic was the first iteration of the extended basic language. It adds several special variables and commands to interact directly with the data on the P7001.
APD BASIC was the first iteration of the extended BASIC language. It adds several special variables and commands to interact directly with the data on the P7001.
Four arrays PA..PD are defined to interact directly with the 4 waveform memory slots of the P7001:
Four arrays PA..PD are defined to interact directly with the 4 waveform memory slots of the P7001:


LET PC = PA * A
<code>LET PC = PA * A</code>


This line downloads the data array in memory location A of the DPO to the controller, multiplies each element with the content of variable A and uploads the result back to memory location C of the DPO. The result is automatically scaled to a standard oscilloscope factor. The units of the scale factor are also maintained. So in case the variable A is also an array of waveform elements the result unit will be changed to "VV" (Volts*Volts).
This line downloads the data array in memory location A of the DPO to the controller, multiplies each element with the content of variable A and uploads the result back to memory location C of the DPO. The result is automatically scaled to a standard oscilloscope factor. The units of the scale factor are also maintained. So in case the variable A is also an array of waveform elements, the result unit will be changed to "VV" (Volts*Volts).


APD Basic was sold in two variants (I & II). These variants differ only in the feature set.
APD BASIC was sold in two variants (I & II) that differ only in the feature set.


<br clear=all>
==1974: TEK Basic==
==1974: TEK Basic==
[[File:Tek_Basic.gif|right]]
[[File:Tek_Basic.gif|350px|right]]
With the introduction of the R7912 a second special basic variant was developed to provide access to the data on the new instrument. APD Basic was renamed to TEK Basic and the special variants were called DPO (Digital Processing Oscilloscope) Tek Basic and WDI (Waveform Digitizing Instrument) Tek Basic.  
With the introduction of the R7912, a second special BASIC variant was developed to provide access to the data on the new instrument. APD BASIC was renamed to TEK BASIC and the special variants were called DPO (Digital Processing Oscilloscope) Tek BASIC and WDI (Waveform Digitizing Instrument) Tek BASIC.  
<br clear=all>
 
 
<gallery>
<gallery>
Tek_SPS_BASIC_RSS_extension.jpg|Basic variant for the [[7J20|7J20 Spectrometer]]
Tek_SPS_BASIC_RSS_extension.jpg|BASIC variant for the [[7J20|7J20 Spectrometer]]
</gallery>
</gallery>


==1976: TEK SPS Basic==
==1976: TEK SPS Basic==
[[File:Tek_SPS_Basic_Ext.gif|right]]
[[File:Tek_SPS_Basic_Ext.gif|350px|right]]
To avoid further splitting of the basic variants and to support different instruments on one controller a more generic solution was developed. The new TEK SPS BASIC provided a base package which then could be extended with instrument-specific driver and command packages.  
To avoid further splitting of the BASIC variants and to support different instruments on one controller a more generic solution was developed. The new TEK SPS BASIC provided a base package which then could be extended with instrument-specific driver and command packages.  
 


<br clear=all>
<gallery>
<gallery>
TEk_SPSBasic_modules.jpg|Example of TEK SPS basic extensions
TEk_SPSBasic_modules.jpg|Example of TEK SPS BASIC extensions
TEK_P7001_R7912_Checkout.jpg|Image of CP56001 P7001/R7912 Checkout Disc
</gallery>
</gallery>


==Manuals==
==Manuals==
* [[Media:070-1773-00.pdf|DPO TEK BASIC V01 CP65511, CP65521 and CP65681 USERS]]
* [[Media:TEK_SPS_Programming_V04_N01_1980_Feb.pdf|SPS Programming Magazine V04 N01 from Februar 1980]]
* [[Media:TEK_SPS_Programming_V04_N01_1980_Feb.pdf|SPS Programming Magazine V04 N01 from Februar 1980]]
* [[Media:070-2501-00.pdf|TEK SPS BASIC V02/V02XM System Software CP57000/CP57500 ]]
* [[Media:070-2501-00.pdf|TEK SPS BASIC V02/V02XM System Software CP57000/CP57500 ]]
Line 40: Line 41:
* [[Media:070-2740-00.pdf|TEK SPS BASIC V02/V02XM Peripheral Drivers CP57000/CP57500]]  
* [[Media:070-2740-00.pdf|TEK SPS BASIC V02/V02XM Peripheral Drivers CP57000/CP57500]]  
* [[Media:070-2743-00.pdf|TEK SPS BASIC V02/V02XM Signal Processing Package CP57001/CP57501]]
* [[Media:070-2743-00.pdf|TEK SPS BASIC V02/V02XM Signal Processing Package CP57001/CP57501]]
* [[Media:070-2847-00.pdf|TEK SPS BASIC V02-01 Programming Aid (June 1983 Printing)]]
* [[Media:070-2847-00 first printing.pdf||TEK SPS BASIC V02-01 Programming Aid (Sep 1979 Printing)]]
* [[Media:TEK_SPS_Basic_Performance_Report.pdf|TEK SPS BASIC Performance Report]]
* [[Media:TEK_P7001_7912_checkout_01.pdf|Manual and Directory listing of P7001/R7912 checkout disc]]
* [[Media:070-2739-01.pdf|TEK SPS BASIC V02/V02XM DPO Driver Package CP57004/CP57504]]
* [[Media:070-2196-00.pdf|TEK SPS BASIC DPO Driver Package V01 CP71171]]
* [[Media:070-1458-00.pdf|Tektronix Data Communications Interface Unit 021-0065-00]]


==Software==
==Software==
* [[Media:SPS_BASIC_V2-02_1980.zip|Disc image of Tek SPS Basic V02 from 1980]]
* [[Media:SPS_BASIC_V2-02_1980.zip|Disc image of Tek SPS BASIC V02 from 1980]]
* [[Media:SPS_DIR.pdf|Directory content of Tek SPS Basic V02 from 1980]]
* [[Media:SPS_DIR.pdf|Directory content of Tek SPS BASIC V02 from 1980]]
* [https://archive.org/download/TEKSPS Direct image of an RL01 disc bootable on a PDP or on simh]
 


==Links==
==Links==
* [https://vintagetek.org/sps-basic/ The R7912 and SPS TEK Basic Software by Hale Farley @vintagetek.org]
* [https://vintagetek.org/sps-basic/ The R7912 and SPS TEK BASIC Software by Hale Farley @ vintagetek.org]
 
 
[[Category:Software]]

Latest revision as of 19:51, 13 May 2024

To provide users of the early Signal Processing Systems like the DPO a way to control the hardware and to write their own measurement routines, a programming language was needed. The BASIC language was chosen because it was simple and easy to use. The user could modify their own programs without the need of recompiling it.

Dartmouth BASIC was used as the basis of all Tek BASIC variants.

1973: APD Basic

APD BASIC was the first iteration of the extended BASIC language. It adds several special variables and commands to interact directly with the data on the P7001. Four arrays PA..PD are defined to interact directly with the 4 waveform memory slots of the P7001:

LET PC = PA * A

This line downloads the data array in memory location A of the DPO to the controller, multiplies each element with the content of variable A and uploads the result back to memory location C of the DPO. The result is automatically scaled to a standard oscilloscope factor. The units of the scale factor are also maintained. So in case the variable A is also an array of waveform elements, the result unit will be changed to "VV" (Volts*Volts).

APD BASIC was sold in two variants (I & II) that differ only in the feature set.

1974: TEK Basic

With the introduction of the R7912, a second special BASIC variant was developed to provide access to the data on the new instrument. APD BASIC was renamed to TEK BASIC and the special variants were called DPO (Digital Processing Oscilloscope) Tek BASIC and WDI (Waveform Digitizing Instrument) Tek BASIC.


1976: TEK SPS Basic

To avoid further splitting of the BASIC variants and to support different instruments on one controller a more generic solution was developed. The new TEK SPS BASIC provided a base package which then could be extended with instrument-specific driver and command packages.


Manuals

Software


Links