# Rocky Mountain BASIC

Rocky Mountain BASIC (also RMB or RM-BASIC) is a dialect of the BASIC programming language created by Hewlett-Packard. It was especially popular for control of automatic test equipment using GPIB. It has several features which are or were unusual in BASIC dialects, such as event-driven operation, extensive external I/O support, complex number support, and matrix manipulation functions. Today, RMB is mainly used in environments where an investment in RMB software, hardware, or expertise already exists.

## History and implementations

The origins of Rocky Mountain BASIC can be traced to Hewlett-Packard's facilities in Colorado. Since Colorado is located in the Rocky Mountains, this variation of BASIC was dubbed "Rocky Mountain BASIC", to differentiate it from the other BASIC dialects developed within the company. It is unclear if the Rocky Mountain BASIC name was original to HP or came from outside, but HP/Keysight use the term in their own documentation, as well as the more formal "HP BASIC" product name.
The HP 9830A, introduced in 1972, was the top of the 9800 line programmable calculator line, which was the first HP computer which fit on a desktop to have a BASIC interpreter in read-only memory (ROM). The interpreter could be extended with ROMs for features like mass storage, plotter graphics, string variables and matrix operations. It had a one-line LED panel for line editing, but was followed in the late 1970s by the faster HP 9835 and HP 9845 desktop computers with full screen CRT displays. These were amongst the first workstations aimed at scientists and engineers for both technical computing and instrumentation control. These were followed by the HP 9826 and HP 9836 computers, which were the leading models of the HP 9800 series of computers. All four of these computers ran versions of Rocky Mountain BASIC. These computers were often used as controllers for HP automatic test equipment, connected via the HP Instrument Bus, (HP-IB). HP wanted to provide a programming language that would be friendly to the engineers and scientists who used such test equipment. The BASIC programming language was chosen, as it was already intended to be easy for novices; knowledgeable users could also program them in assembly language or a version of Pascal.
Early implementations of RMB software on the HP 9000 platform were called "HP BASIC/WS". BASIC/WS ran stand-alone. It provided operating system (OS), integrated development environment (editor and debugger), and the language interpreter. Later, HP implemented RMB on top of the HP-UX operating system, and called it "BASIC/UX". BASIC/UX 300 ran on series 300 hardware and BASIC/UX 700 ran on series 700 hardware. BASIC/WS, BASIC/UX 300 and BASIC/UX 700 were last updated to fix Year 2000 date related issues.
As technology advanced, HP was able to embed RMB implementations directly in the test equipment. The capabilities of these embedded implementations varied. These implementations went by a variety of names, including "HP Instrument BASIC" and "Board Test BASIC" ("BT-BASIC").
HP produced an RMB implementation for Microsoft Windows called "HP Instrument BASIC for Windows"; however, it never enjoyed the success of their other RMB products.
Another company, TransEra of Orem, Utah, created a clone implementation of RMB, which they called "High Tech BASIC", or "HT BASIC" (now "HTBasic"), meant to run on IBM PC hardware. HP later licensed HT BASIC from TransEra Corporation, re-branded it, and sold it as "HP BASIC for Windows". It was unrelated to the HP-produced "HP Instrument BASIC for Windows". As of 2015, TransEra is still maintaining and updating HTBasic with fixes and new features - the current version is 10.0.3. Although HTBasic is fundamentally an interpreted language, a compiler is available.
Test & Measurement Systems, Inc., also known as TAMS, of Loveland, Colorado, acquired HP BASIC/WS and BASIC/UX 300 product responsibility in 1998. TAMS then sold and supported legacy versions of BASIC/WS and BASIC/UX . TAMS licensed BASIC/UX 700 from Agilent Technologies and ported RMB to both HP-UX 11i and Red Hat Enterprise Linux. The HP-UX 11i implementation was known as "BASIC for 11i" or "BASIC/UX 11i". The Red Hat Enterprise Linux version was known as "BASIC for Linux", "BASIC/LX" or "RMBLX". TAMS ceased operating on March 31, 2016.
HP retained BASIC/UX 700 (E2045C, BASIC for HP-UX 10.20) until spinning off their instrument division as Agilent Technologies. BASIC/UX 700 (on HP-UX 10.20) product responsibility went with Agilent Technologies, who eventually dropped support for it. Agilent referred customers to either TransEra for BASIC for Windows or to TAMS for BASIC/WS, BASIC/UX or BASIC for Linux.