Friday 26 May 2017

Flashback Friday #4 BBC Micro





The BBC Microcomputer System, or BBC Micro, is a series of microcomputers and associated peripherals designed and built by the Acorn Computer company for the BBC Computer Literacy Project, operated by the British Broadcasting Corporation. Designed with an emphasis on education, it was notable for its ruggedness, expandability, and the quality of its operating system. An accompanying 1982 television series "The Computer Programme" featuring Chris Serle learning to use the machine was also broadcast on BBC 2.
After the Literacy Project's call for bids for a computer to accompany the TV programmes and literature, Acorn won the contract with the Proton, a successor of its Atom computer prototyped at short notice. Renamed the BBC Micro, the system was adopted by most schools in the United Kingdom, changing Acorn's fortunes. It was also moderately successful as a home computer in the UK despite its high cost. Acorn also employed the machine to simulate and develop the ARM architecture which, many years later, has become hugely successful for embedded systems, including tablets and cellphones. In 2013 ARM was the most widely used 32-bit instruction set architecture.

While nine models were eventually produced with the BBC brand, the phrase "BBC Micro" is usually used colloquially to refer to the first six (Model A, B, B+64, B+128, Master 128, and Master Compact), excluding the Acorn Electron; subsequent BBC models are considered as part of Acorn's Archimedes series.

History


During the early 1980s, the BBC started what became known as the BBC Computer Literacy Project. The project was initiated partly in response to an ITV documentary series The Mighty Micro, in which Dr Christopher Evans of the UK's National Physical Laboratory predicted the coming microcomputer revolution and its effect on the economy, industry, and lifestyle of the United Kingdom.
The BBC wanted to base its project on a microcomputer capable of performing various tasks which they could then demonstrate in the TV series The Computer Programme. The list of topics included programming, graphics, sound and music, teletext, controlling external hardware, and artificial intelligence. It developed an ambitious specification for a BBC computer, and discussed the project with several companies including Acorn Computers, Sinclair Research, Newbury Laboratories, Tangerine Computer Systems, and Dragon Data.
The Acorn team had already been working on a successor to their existing Atom microcomputer. Known as the Proton, it included better graphics and a faster 2 MHz MOS Technology 6502 central processing unit. The machine was only at the design stage at the time, and the Acorn team, including Steve Furber and Sophie Wilson, had one week to build a working prototype from the sketched designs. The team worked through the night to get a working Proton together to show the BBC. Not only was the Acorn Proton the only machine to match the BBC's specification, it also exceeded it in nearly every parameter. Based on the Proton prototype the BBC signed a contract with Acorn as early as February 1981; by June the BBC Micro's specifications and pricing were decided.

Software and expandability

 
The BBC Micro platform amassed a large software base of both games and educational programs for its two main uses as a home and educational computer. Notable examples of each include the original release of Elite and Granny's Garden. Programming languages and some applications were supplied on ROM chips to be installed on the motherboard. These loaded instantly and left the RAM free for programs or documents.
Although appropriate content was little-supported by television broadcasters, telesoftware could be downloaded via the optional Teletext Adapter and the third-party teletext adaptors that emerged.
The built-in operating system, Acorn MOS, provided an extensive API to interface with all standard peripherals, ROM-based software and the screen.Features private to some versions of BASIC, like vector graphics, keyboard macros, cursor-based editing, sound queues and envelopes, were placed in the MOS ROM and made available to any application. BBC BASIC itself, being in a separate ROM, could be replaced with any equivalent language.
BASIC, other languages and utility ROM chips resided in any of four 16 KB paged ROM sockets, with OS support for sixteen sockets via expansion hardware. The five (total) sockets were located partially obscured under the keyboard, with the leftmost socket hard-wired for the OS. While the original usage for the perforated panel on the left of the keyboard was for a Serial ROM or Speech ROM, a ZIF socket or edgecard connector could be installed in that location instead. The socket could be connected to one of the empty Sideways/PagedROM sockets via a header cable. The paged ROM system was essentially modular. A language-independent system of star commands, prefixed with an asterisk, provided the ability to select a language (for example *BASIC, *PASCAL), a filing system (*TAPE, *DISC), change settings (*FX, *OPT) or carry out ROM-supplied tasks (*COPY, *BACKUP) from the command line. The MOS recognised a handful of built-in commands, and polled the paged ROMs in descending order for service otherwise; if none of them claimed the command then the OS returned a Bad command error. Connecting an external EPROM programmer, one could write extensive programs, copy to programmable ROM (PROM) or EPROM, then invoke them without taxing user memory.
Not all ROMs offered star commands (ROMs containing data files, for instance), but any ROM could "hook" into certain vectors to enhance the system's functionality. Often the ROM was a device driver for mass storage combined with a filing system, starting with Acorn's 1982 Disc Filing System whose API became the de facto standard for floppy disc access. The Acorn Graphics Extension ROM (GXR) expanded the VDU routines to draw geometric shapes, flood fills and sprites. During 1985 Micro Power designed and marketed a Basic Extension ROM, introducing statements such as WHILE, ENDWHILE, CASE, WHEN, OTHERWISE, and ENDCASE, as well as direct mode commands including VERIFY.
Acorn strongly discouraged programmers from directly accessing the system variables and hardware, favouring official system calls.This was ostensibly to make sure programs kept working when migrated to coprocessors that utilised the Tube interface, but it also made BBC Micro software more portable across the Acorn range. Whereas untrappable PEEKs and POKEs were commonly used by other computers to reach the system elements, programs in either machine code or BBC BASIC would instead pass parameters to an operating system routine. In this way the MOS could translate the request for the local machine or send it across the Tube interface, as direct access was impossible from the coprocessor. Published programs largely conformed to the API except for games, which routinely engaged with the hardware for greater speed, and thus required a particular Acorn model.
As the early BBC Micros had ample I/O allowing machines to be interconnected, and as many schools and universities employed the machines in Econet networks, numerous networked multiplayer games were created. With the exception of a tank game, Bolo, few became popular, in no small measure due to the limited number of machines aggregated in one place. A relatively late but well documented example can be found in a dissertation based on a ringed RS-423 interconnect.

Peripherals

In line with its ethos of expandability Acorn produced its own range of peripherals for the BBC Micro, including:
  • Joysticks
  • Tape recorder
  • Floppy drive interface upgrade
  • Floppy drives (single and double)
  • Econet networking upgrade
  • Econet Bridge
  • Winchester disk system
  • 6502 Second Processor
  • Z80 Second processor (with CP/M and business software suite)
  • 32016 Second processor
  • ARM Evaluation System
  • Teletext adapter
  • Prestel adapter
  • Speech synthesiser
  • Music 500 synthesiser
  • BBC Turtle (robot)
  • BBC Buggy
  • IEEE 488 Interface
Other manufactures also produced an abundance of add-on hardware, some the most common being:
  • RGB monitors
  • Printers, plotters
  • Modems

BBC BASIC built-in programming language

The built-in ROM-resident BBC BASIC programming language interpreter realised the system's educational emphasis and was key to its success; not only was it the most comprehensive BASIC compared to other contemporary implementations but it ran very efficiently and was therefore fast. Advanced programs could be written without resorting to non-structured programming or machine code (necessary with many competing computers). Should one want or need to do some assembly programming, BBC BASIC featured a built-in assembler that allowed a very easy mixture of BBC BASIC and assembler for whatever processor BBC BASIC was operating on.
When the BBC Micro was released, many competing home computers used Microsoft BASIC, or variants typically designed to resemble it. Compared to Microsoft BASIC, BBC BASIC featured IF…THEN…ELSE, REPEAT…UNTIL, named procedures and functions, but retained Goto and GOSUB for compatibility. It also supported high-resolution graphics, four-channel sound, pointer-based memory access (borrowed from BCPL) and rudimentary macro assembly. Long variable names were accepted and distinguished completely, not just by the first two characters.

Other languages

Acorn had made a point of not just supporting BBC Basic but a number of contemporary languages, some of which were supplied as ROM chips to fit the spare 'Sideways-ROM' sockets on the motherboard. Other languages were supplied on tape or disk based.
Programming Languages from Acorn:
  • ISO Pascal (2× 16 KB ROM + floppy disk)
  • S-Pascal (disk or tape)
  • BCPL (ROM plus further optional disk based modules)
  • Forth (16 KB ROM)
  • LISP (disk,tape or ROM)
  • Logo (2× 16 KB ROM)
  • Turtle Graphics (disk or tape)
  • Micro-PROLOG (16 KB ROM)
  • COMAL (16 KB ROM)
  • Microfocus CIS COBOL (running under CP/M on floppy disks via the Z80 second processor)

No comments:

Post a Comment

dobby repairs

Hi everyone I know that I haven't posted on here for quite some time  I probably won't be posting on here again for a while but I wa...

Total Pageviews