BASIC 8
Encyclopedia
BASIC 8 — "The Enhanced Graphics System For The C128" — developed by Walrusoft
of Gainesville, Florida
and published in 1986 by Patech Software of Somerset, New Jersey
, USA
, was an extension
of Commodore
's BASIC 7.0
for the C128
home
/personal computer
. BASIC 8.0 provided commands lacking in BASIC 7.0 to generate (color) graphics
in the C128's high-resolution 80-column mode (640×200 pixel
s) for RGB monitors.
The BASIC 8 package was developed by Walrusoft's Louis Wallace and David Darus, with contributions from Ken French (printer driver
s) and indirectly from Richard Rylander (who allowed his 3D solids commands for the C64
, originally published in Dr. Dobb's Journal
, to be converted to the C128's hi-res mode).
s was that their BASIC programming language dialects lacked easy sound, graphics, and input device commands, like their competitors in the Apple II and Atari 8-bit
families – requiring obscure PEEK and POKE
sequences, or machine language routines, to generate high-resolution graphics, sound and music, or read from joysticks and paddles. The BASIC 2.0 of the Commodore 64
, totally void of sound and graphics commands, induced the development of many third-party language extensions, such as Simons' BASIC
, enabling non-expert users to enter the world of computer graphics.
When the C128 was launched, its BASIC 7.0 contained a host of (sound and) graphics commands, but, disappointingly, they only worked in the "40-column" video mode, i.e. the TV/composite
monitor mode with a resolution equal to the C64's. Users who wanted to program graphics in the C128's new high-resolution "80-column mode", primarily intended for RGBI monitors, found themselves in an even worse position than previously with the C64, since the C128's 8563 VDC
graphics chip was much harder to program than the VIC-II
.
and ROM
chip versions, and provided many graphics commands that were competitive with the C128's opposition in the high-end 8-bit microcomputer market. BASIC 8.0 was fully compatible with the various first-party RAM
and video RAM expansion chips and cartridges, as well as mice and joystick
s. In addition, it had basic 3D graphics
commands. Along with a decent 188-page manual, the included software package included a BASIC 8.0 example of a GUI
, and a BASIC 8.0 based high-res paint program, Basic Paint.
, but this was before the Open Source Initiative
; it was done as a courtesy. Instead of threatening legal action (as with the Microsoft EULA or the GNU GPL
), Walrusoft simply asked users not to copy the software in the documentation. It worked; BASIC 8.0 became one of the best selling expansions for the C128.
Walrusoft
American software company Walrusoft, Inc., of Gainesville, Florida, was founded and staffed by research chemist Louis R. Wallace and computer scientist David P. Darus. The company name was a portmanteau of their surnames, i.e...
of Gainesville, Florida
Gainesville, Florida
Gainesville is the largest city in, and the county seat of, Alachua County, Florida, United States as well as the principal city of the Gainesville, Florida Metropolitan Statistical Area . The preliminary 2010 Census population count for Gainesville is 124,354. Gainesville is home to the sixth...
and published in 1986 by Patech Software of Somerset, New Jersey
Somerset, New Jersey
Somerset is a census-designated place and unincorporated area located at the easternmost section within Franklin Township, in Somerset County, New Jersey. At the 2000 United States Census, the CDP population was 23,040...
, USA
United States
The United States of America is a federal constitutional republic comprising fifty states and a federal district...
, was an extension
BASIC extension
BASIC toolkits —not to be confused with widget toolkits—were a common type of program for 1980s 8-bit home computers...
of Commodore
Commodore International
Commodore is the commonly used name for Commodore Business Machines , the U.S.-based home computer manufacturer and electronics manufacturer headquartered in West Chester, Pennsylvania, which also housed Commodore's corporate parent company, Commodore International Limited...
's BASIC 7.0
Commodore BASIC
Commodore BASIC, also known as PET BASIC, is the dialect of the BASIC programming language used in Commodore International's 8-bit home computer line, stretching from the PET of 1977 to the C128 of 1985...
for the C128
Commodore 128
The Commodore 128 home/personal computer was the last 8-bit machine commercially released by Commodore Business Machines...
home
Home computer
Home computers were a class of microcomputers entering the market in 1977, and becoming increasingly common during the 1980s. They were marketed to consumers as affordable and accessible computers that, for the first time, were intended for the use of a single nontechnical user...
/personal computer
Personal computer
A personal computer is any general-purpose computer whose size, capabilities, and original sales price make it useful for individuals, and which is intended to be operated directly by an end-user with no intervening computer operator...
. BASIC 8.0 provided commands lacking in BASIC 7.0 to generate (color) graphics
2D computer graphics
2D computer graphics is the computer-based generation of digital images—mostly from two-dimensional models and by techniques specific to them...
in the C128's high-resolution 80-column mode (640×200 pixel
Pixel
In digital imaging, a pixel, or pel, is a single point in a raster image, or the smallest addressable screen element in a display device; it is the smallest unit of picture that can be represented or controlled....
s) for RGB monitors.
The BASIC 8 package was developed by Walrusoft's Louis Wallace and David Darus, with contributions from Ken French (printer driver
Printer driver
In computers, a printer driver or a print processor is a piece of software that converts the data to be printed to the form specific to a printer...
s) and indirectly from Richard Rylander (who allowed his 3D solids commands for the C64
Commodore 64
The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...
, originally published in Dr. Dobb's Journal
Dr. Dobb's Journal
Dr. Dobb's Journal was a monthly journal published in the United States by CMP Technology. It covered topics aimed at computer programmers. DDJ was the first regular periodical focused on microcomputer software, rather than hardware. It later became a monthly section within the periodical...
, to be converted to the C128's hi-res mode).
The problem
One of the primary critiques of Commodore's computerComputer
A computer is a programmable machine designed to sequentially and automatically carry out a sequence of arithmetic or logical operations. The particular sequence of operations can be changed readily, allowing the computer to solve more than one kind of problem...
s was that their BASIC programming language dialects lacked easy sound, graphics, and input device commands, like their competitors in the Apple II and Atari 8-bit
Atari 8-bit family
The Atari 8-bit family is a series of 8-bit home computers manufactured from 1979 to 1992. All are based on the MOS Technology 6502 CPU and were the first home computers designed with custom coprocessor chips...
families – requiring obscure PEEK and POKE
PEEK and POKE
In computing, PEEK is a BASIC programming language extension used for reading the contents of a memory cell at a specified address. The corresponding command to set the contents of a memory cell is POKE.-Statement syntax:...
sequences, or machine language routines, to generate high-resolution graphics, sound and music, or read from joysticks and paddles. The BASIC 2.0 of the Commodore 64
Commodore 64
The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...
, totally void of sound and graphics commands, induced the development of many third-party language extensions, such as Simons' BASIC
Simons' BASIC
Simons' BASIC was an extension to BASIC 2.0 for the Commodore 64 home computer. Written by 16-year-old British programmer David Simons in 1983, it was distributed by Commodore in cartridge format.-Features:...
, enabling non-expert users to enter the world of computer graphics.
When the C128 was launched, its BASIC 7.0 contained a host of (sound and) graphics commands, but, disappointingly, they only worked in the "40-column" video mode, i.e. the TV/composite
Composite video
Composite video is the format of an analog television signal before it is combined with a sound signal and modulated onto an RF carrier. In contrast to component video it contains all required video information, including colors in a single line-level signal...
monitor mode with a resolution equal to the C64's. Users who wanted to program graphics in the C128's new high-resolution "80-column mode", primarily intended for RGBI monitors, found themselves in an even worse position than previously with the C64, since the C128's 8563 VDC
MOS Technology 8563
The 8563 Video Display Controller was an integrated circuit produced by MOS Technology. It was used in the Commodore 128 computer to generate an 80-column RGB video display...
graphics chip was much harder to program than the VIC-II
MOS Technology VIC-II
The VIC-II , specifically known as the MOS Technology 6567/8562/8564 , 6569/8565/8566 , is the microchip tasked with generating Y/C/composite video graphics and DRAM refresh signals in the Commodore 64 and C128 home computers.Succeeding MOS's original VIC , the VIC-II was one of the two chips...
.
A solution
BASIC 8.0 filled in the gap. It came on floppy diskFloppy disk
A floppy disk is a disk storage medium composed of a disk of thin and flexible magnetic storage medium, sealed in a rectangular plastic carrier lined with fabric that removes dust particles...
and ROM
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...
chip versions, and provided many graphics commands that were competitive with the C128's opposition in the high-end 8-bit microcomputer market. BASIC 8.0 was fully compatible with the various first-party RAM
Random-access memory
Random access memory is a form of computer data storage. Today, it takes the form of integrated circuits that allow stored data to be accessed in any order with a worst case performance of constant time. Strictly speaking, modern types of DRAM are therefore not random access, as data is read in...
and video RAM expansion chips and cartridges, as well as mice and joystick
Joystick
A joystick is an input device consisting of a stick that pivots on a base and reports its angle or direction to the device it is controlling. Joysticks, also known as 'control columns', are the principal control in the cockpit of many civilian and military aircraft, either as a center stick or...
s. In addition, it had basic 3D graphics
3D computer graphics
3D computer graphics are graphics that use a three-dimensional representation of geometric data that is stored in the computer for the purposes of performing calculations and rendering 2D images...
commands. Along with a decent 188-page manual, the included software package included a BASIC 8.0 example of a GUI
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...
, and a BASIC 8.0 based high-res paint program, Basic Paint.
Source code, copy protection
Source code of some of the BASIC 8 package was provided, and the BASIC 8.0 disk lacked any sort of copy protectionCopy protection
Copy protection, also known as content protection, copy obstruction, copy prevention and copy restriction, refer to techniques used for preventing the reproduction of software, films, music, and other media, usually for copyright reasons.- Terminology :Media corporations have always used the term...
, but this was before the Open Source Initiative
Open Source Initiative
The Open Source Initiative is an organization dedicated to promoting open source software.The organization was founded in February 1998, by Bruce Perens and Eric S. Raymond, prompted by Netscape Communications Corporation publishing the source code for its flagship Netscape Communicator product...
; it was done as a courtesy. Instead of threatening legal action (as with the Microsoft EULA or the GNU GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
), Walrusoft simply asked users not to copy the software in the documentation. It worked; BASIC 8.0 became one of the best selling expansions for the C128.
Sample commands
In BASIC 8.0, all added commands were prefaced with the @ mark, which was not normally used in Commodore BASIC, to distinguish between the original and the new keywords.-
@CHAR
– Displays a text string on a bitmap field (similar to the BASIC 7.0's low-resCHAR
command) -
@MODE
– Switch between one of up to 32 high-res screens -
@PAINT
– Fill a closed area with a color or a pattern -
@PIXEL
– Returns the color value of a pixel -
@STASH
– Copies part or all of a screen for later usage -
@WALRUS
– Displays the Walrusoft logo and the type/size of video RAM used (16K or 64K) -
@WINDOWOPEN
– Define part of the screen as a 'window' for purposes of drawing
External links
- Basic 8 Manual (270-KBKilobyteThe kilobyte is a multiple of the unit byte for digital information. Although the prefix kilo- means 1000, the term kilobyte and symbol KB have historically been used to refer to either 1024 bytes or 1000 bytes, dependent upon context, in the fields of computer science and information...
text fileText fileA text file is a kind of computer file that is structured as a sequence of lines of electronic text. A text file exists within a computer file system...
) – From the Project 64 documentation project