BASIC Three versions of the
BASIC programming language were produced for the Model I.
Level I BASIC fits in 4 KB of
ROM, and
Level II BASIC fits into 12 KB of ROM. Level I is single precision only and had a smaller set of commands. Level II introduced double precision floating point support and has a much wider set of commands. Level II was further enhanced when a disk system was added, allowing for the loading of
Disk BASIC. Level I BASIC is based on
Li-Chen Wang's free
Tiny BASIC with more functions added by Radio Shack. David A. Lien helped French and Leininger decide what commands to add or remove from the language, and wrote the accompanying ''User's Manual for Level 1'', teaching programming with text and cartoons. Lien wrote that it was "written specifically for people who don't know anything about computers ... I want you to have fun with your computer! I don't want you to be afraid of it, because there is nothing to fear". Reviewers praised the manual's quality; Lien later said that only Tandy and
Epson understood the importance of writing good documentation before designing a technical product. Level I BASIC has only two
string variables (A$ and B$), 26 numeric variables (A – Z), and one array, A(). Code for functions like SIN(), COS() and TAN() is not included in ROM but printed at the end of the book. The only error messages are "WHAT?" for syntax errors, "HOW?" for arithmetic errors such as
division by zero, and "SORRY" for
out of memory errors. Level I BASIC is not
tokenized; reserved words are stored literally. In order to maximize the code that fits into 4 KB of memory, users can enter abbreviations for reserved words. For example, writing "P." instead of "PRINT" saves 3 bytes. Level II BASIC, introduced in mid-1978, was licensed from
Microsoft and is required to use the expansion bus and disk drives. Radio Shack always intended for Level I BASIC to be a stopgap until Level II was ready, and the first brochure for the Model I in January 1978 mentioned that Level II BASIC was "coming soon". It is an abridged version of the 16K
Extended BASIC, since the Model I has 12 KB of ROM space. According to
Bill Gates, "It was a sort of intermediate between 8K BASIC and Extended BASIC. Some features from Extended BASIC such as descriptive errors and user-defined functions were not included, but there were double precision variables and the PRINT USING statement that we wanted to get in. The entire development of Level II BASIC took about four weeks from start to finish." The accompanying manual is more terse and technical than the Level I manual. Original Level I BASIC-equipped machines could be retrofitted to Level II through a ROM replacement performed by Radio Shack for a fee (originally $199). Users with Level I BASIC programs stored on cassette have to convert these to the tokenized Level II BASIC before use. A utility for this was provided with the Level II ROMS. Disk BASIC allows disk I/O, and in some cases (
NewDos/80, MultiDOS, DosPlus, LDOS) adds powerful sorting, searching, full-screen editing, and other features. Level II BASIC reserves some of these keywords and issues a "?L3 ERROR", suggesting a behind-the-scenes change of direction intervened between the creation of the Level II ROMs and the introduction of Disk BASIC. Microsoft also marketed an enhanced BASIC called
Level III BASIC written by Bill Gates, on cassette tape. The cassette contains a "Cassette File" version on one side and a "disk file" version on the second side for disk system users (which was to be saved to disk). Level III BASIC adds most of the functions in the full 16 KB version of BASIC plus many other TRS-80 specific enhancements. Many of Level III BASIC's features are included in the TRS-80 Model III's Level II BASIC and disk BASIC. Level I BASIC was still offered on the Model I in either 4K or 16K configurations after the introduction of Level II BASIC.
Other programming languages Radio Shack published a combined assembler and program editing package called the Series I Assembler Editor.
80 Micro magazine printed a modification enabling it to run under the Model 4's TRSDOS Version 6. Also from Radio Shack was Tiny Pascal. Microsoft made its
Fortran,
COBOL and BASCOM
BASIC compiler available through Radio Shack.
Other applications Blackjack and
backgammon came with the TRS-80, and at its debut, Radio Shack offered four payroll, personal finance, and educational programs on cassette. Its own products' quality was often poor. A critical 1980
80 Micro review of a
text adventure described it as "yet another example of Radio Shack's inability to deal with the consumer in a consumer's market". The magazine added, "Sadly, too, as with some other Radio Shack programs, the instructions seem to assume that the reader is either a child or an adult with the mentality of a slightly premature corned beef". The more than 2,000 Radio Shack franchise stores sold third-party hardware and software, but the more than 4,300 company-owned stores were at first prohibited from reselling or even mentioning products not sold by Radio Shack itself. Green stated in 1980 that although "there are more programs for the 80 than for all other systems combined" because of the computer's large market share, "Radio Shack can't advertise this because they are trying as hard as they can to keep this fact a secret from their customers. They don't want the TRS-80 buyers to know that there is anything more than their handful of mediocre programs available", many of which "are disastrous and, I'm sure, doing tremendous damage to the industry".
Broderbund, founded that year, began by publishing TRS-80 software, but by 1983 cofounder
Doug Carlston said that the computer "turned out to be a terrible market because most of the distribution networks were closed, even though there were plenty of machines out there". Green wrote in 1982 that Apple had surpassed Tandy in sales and sales outlets despite the thousands of Radio Shack dealers because it supported third-party development, while "we find the Shack seeming to begrudge any sale not made by them and them alone". Dealers not affiliated with Radio Shack preferred to sell software for other computers and not compete with the company; mail-order sales were also difficult, because company-owned stores did not sell third-party publications like
80 Micro. Charles Tandy reportedly wanted to encourage outside developers but after his death a committee ran the company, which refused to help outside developers, hoping to monopolize the sale of software and peripherals. Leininger reportedly resigned because he disliked the company's bureaucracy after Tandy's death. An author wrote in a 1979 article on the computer's "mystery of machine language graphics control" that "Radio Shack seems to hide the neat little jewels of information a hobbyist needs to make a treasure of the TRS-80". He stated that other than the "excellent" Level I BASIC manual "there has been little information until recently ... TRS-80 owners must be resourceful", reporting that the computer's "keyboard, video, and cassette" functionality were also undocumented. The first book authorized by Tandy with technical information on TRSDOS for the Model I did not appear until after the computer's discontinuation. By 1982, the company admitted—after no software appeared for the Model 16 after five months—that it should have, like Apple, encouraged third-party developers of products like the
killer app VisiCalc. (A lengthy 1980 article in a Tandy publication introducing the TRS-80 version of VisiCalc did not mention that the spreadsheet had been available for the Apple II for a year.) However, in the early 1980s, it was not uncommon for small companies and municipalities to write custom programs for computers such as the TRS-80 to process a variety of data. In one case a small town's vehicle fleet was managed from a single TRS-80. By 1985, the company's Ed Juge stated that other than
Scripsit and
DeskMate, "we intend to rely mostly on 'big-name', market-proven software from leading software firms". A full suite of office applications became available from the company and others, including the VisiCalc and
Multiplan spreadsheets and the
Lazy Writer,
Electric Pencil, and from Radio Shack itself the Scripsit and SuperScripsit word processors. Compared to the contemporary Commodore and Apple micros, the TRS-80's block graphics and crude sound were widely considered limited. The faster speed available to the game programmer, not having to processor color data in high resolution, went a long way to compensating for this. TRS-80 arcade games tended to be faster with effects that emphasized motion. This perceived disadvantage did not deter independent software companies such as
Big Five Software from producing unlicensed versions of arcade games like Namco's
Galaxian, Atari's
Asteroids,
Taito's
Lunar Rescue,
Williams's
Make Trax, and Exidy's
Targ and
Venture. Sega's
Frogger and
Zaxxon were ported to the computer and marketed by Radio Shack. Namco/Midway's
Pac-Man was cloned by Philip Oliver and distributed by Cornsoft Group as
Scarfman. Atari's
Battlezone was cloned for the Models I/III by Wayne Westmoreland and Terry Gilman and published by
Adventure International as
Armored Patrol. They also cloned
Eliminator (based on
Defender) and
Donkey Kong; the latter wasn't published until after the TRS-80 was discontinued, because
Nintendo refused to license the game. Some games originally written for other computers were ported to the TRS-80.
Microchess has three levels of play and can run in the 4 KB of memory that is standard with the Model I; the classic
ELIZA is another TRS-80 port. Both were offered by Radio Shack.
Apple Panic, itself a clone of Universal's
Space Panic, was written for the TRS-80 by Yves Lempereur and published by Funsoft.
Epyxs
Temple of Apshai runs slowly on the TRS-80.
Infocom ported its series of interactive text-based adventure games to the Models I/III; the first,
Zork I, was marketed by Radio Shack. also by Christopherson, an early
first-person shooter 13 Ghosts by Software Affair (the Orchestra-80, -85 and -90 people) and shooters like
Cosmic Fighter and
Defence Command, and strange experimental programs such as Christopherson's
Dancing Demon, in which the player composes a song for a devil and choreographs his dance steps to the music. Radio Shack offered simple graphics animation programs
Micro Movie and
Micro Marquee, and
Micro Music. Probably the most popular utility package was Super Utility written by Kim Watt of Breeze Computing. Other utility software such as
Stewart Software's Toolkit offered the first sorted directory, decoding or reset of passwords, and the ability to eliminate parts of TRSDOS that were not needed in order to free up floppy disk space. They also produced the On-Line 80 BBS, a TRSDOS-based Bulletin Board System. Misosys Inc. was a prolific producer of sophisticated TRS-80 utility and language software for all models of TRS-80 from the very beginning. Perhaps because of the lack of information on TRSDOS and its bugs, by 1982 perhaps more operating systems existed for the TRS-80 than for any other computer. TRSDOS is limited in its capabilities, since like Apple DOS 3.3 on the
Apple II, it is mainly conceived of as a way of extending BASIC to support disk drives. Numerous alternative DOSes appeared, the most prominent being
LDOS because Radio Shack licensed it from Logical Systems and adopted it as its official DOS for its Models I and III hard disk drive products. Other alternative TRS-80 DOSes included
NewDOS from
Apparat, Inc., and
DoubleDOS,
DOSPlus,
MicroDOS,
UltraDOS (later called Multidos). The DOS for the Model 4 line, TRSDOS Version 6, was produced by and licensed from Logical Systems. It is a derivative of LDOS, enhanced to allow for the new Model 4 hardware such as its all-RAM architecture (no ROM), external 32 KB memory banks, bigger screen and keyboard, and featured new utilities such as a ram disk and a printer spooler. The memory map of the Model I and III render them incompatible with the standard
CP/M OS for Z80 business computers, which loads at
hexadecimal address $0000 with TPA (
Transient Program Area) starting at $0100; the TRS-80 ROM resides in this address space. Omikron Systems' Mappers board remaps the ROM to run unmodified CP/M programs on the Model I. A customized version of CP/M is available but loses its portability advantage.
80 Micro magazine published a do-it-yourself CP/M modification for the Model III. == Reception ==