What is BASIC (although not an OS in the modern sense, but a complete instruction set nonetheless)?

BASIC (Beginner's All-purpose Symbolic Instruction Code) is an interpreted language. In the early days of personal computers, BASIC was more than an entry-level programming language, it was the user-accessible instruction set (not quite an OS) for early home computers like the TRS-80 Model III and IV running on ROM-resident TRS-DOS, LDOS or NewDos/80 and Commodore 64 (C64) running on the ROM-resident OS named KERNAL (misspelling of kernel in C64, 1977).

I remember reading lots of books on BASIC 2.0 and Byte magazine as well as watching Bits and Bytes on channel 13 (WNET/PBS, 1983-1984). My experience at school was on a TRS-80 Model III without floppy drives installed so there was no way to save any code. My experience at home was somewhat better spending many hours in front of my C64 and no sleep with soda and peanuts at my side, but none of the code has survived as I could only save to a Commodore 1530 C2N Datasette (cassette tape recorder, possibly the most unreliable medium). This is why I can only concentrate on my experience of BASIC 2.0 on the C64.

Commodore 64 (C64):

      64 ComputerCommodore 64 (C64) was one of the first computer systems that I ever used and the first one I ever owned (1984). I quickly got up hooked into a whole new field and style of life — geekdom — while coding source code instead of sleeping. KERNAL and Commodore BASIC 2.0 in its 8-bit glory for the C64 boasting a 1.023 MHz MOS Technology microprocessor and 64 KB of RAM gave and experience was as close at it could be for any kid for about $200 in the early 1980's (1984, in my case) or about $490 nowadays. To make things even more exciting and bringing more curious kids (like me at the time) to computer science, the C64 was heavily used for games and even some music programs thanks to its ground-breaking technology based on two chips by MOS Technology — SIC 6581 and VIC-II. Commodore International declared bankruptcy and closed shop in 1994. In 2011, a new reincarnation named Commodore USA released updated versions of the C64 (C64x) with the same vintage (old, obsolete, ancient, historical, retro) "breadbox" exterior and VIC 20 (VIC Slim) with their own Linux distribution named Commodore OS based on Linux Mint. I had not been thrilled about any new system and/or other technologies for a long time. The whole idea of reviving the C64x had me like a little kid before Christmas with a new toy wrapped in front of him, but I never bought one. Commodore USA closed shop a little after one of its owners died around 2012.

For those of us who want to relive the heyday of the original C64 (1982-85), Retro Games (England) released a new version of C64 in 2018 called the C64 Mini marketed as a video game console with 64 built-in games and shipped with its own joystick. According to the vendor, the C64 Mini without a working keyboard can also be used to program Commodore BASIC (forked from Microsoft BASIC) — the first programming language that I ever learned (1984). A full-sized C64 with a working keyboard was released on December 2019 in Europe — right on time for Christmas — and October 2020 in the US. Needless to say, I am stoked.

        20 PRINT "HELLO, "; NAME$;
        30 INPUT ", HOW ARE YOU? (OK/NOT)"; OK$
        50 IF OK$ <> "OK" THEN PRINT "TOO BAD!"

Another nostalgia option was Manomio's licensed emulator for iOS. This emulator was almost as good as the C64, but it was pulled from Apple's App Store due to some store regulation. It seems that Apple was not happy that users could code their own programs in an old language like BASIC.

Unfortunately it has been almost thirty (30) years since I last coded my last program for the C64 and I hardly remember how to code a quick and dirty (not to mention descent) program (excluding the one above), but I would consider it the geekiest purchase I have would ever make. Of course, if you are merely interested in C64 games, you can get a ROM emulator and a handful of ROM images, which may be illegal in some areas and/or under special conditions (17 U.S.C. § 117(a)).

§ 117 . Limitations on exclusive rights: Computer programs
(a) Making of Additional Copy or Adaptation by Owner of Copy.—Notwithstanding the provisions of section 106, it is not an infringement for the owner of a copy of a computer program to make or authorize the making of another copy or adaptation of that computer program provided:
(1) that such a new copy or adaptation is created as an essential step in the utilization of the computer program in conjunction with a machine and that it is used in no other manner, or
(2) that such new copy or adaptation is for archival purposes only and that all archival copies are destroyed in the event that continued possession of the computer program should cease to be rightful.

Other Versions of BASIC:

There are many versions (dialects) of BASIC. The following is a quick list of interpreters in chronological order.

Installing BASIC:

BASIC on i286 and prior machines came burnt to a ROM chip — referred to as ROM-DOS. There was no way users could install or upgrade BASIC. On boot, it loaded from the built-in ROM to RAM.

With the release of better processors and no more dependency of the BASIC interpreter in ROM, a computer could boot to DOS from floppy. Depending on the version of DOS and/or the hardware manufacturer, a version of BASIC would be included — MBASIC (c. 1980), BASICA (1981), GW-BASIC (1983), MSX BASIC (1983), QuickBASIC or QB (1985) or QBASIC (1991).

With the release of Windows 95B, a stripped-down version of DOS would have BASIC as a stand-alone executable like QBASIC.EXE, which on a companion disk. This version is by no means similar to the instruction set.

Modern distribution of BASIC like Small Basic from Microsoft, QB64 and FreeBASIC can be installed as third-party applications in modern versions of Windows or other operating systems including Linux.