First launched in 1977, the Apple II was one of the original home computers and the first to offer colour graphics and built-in audio by default.
A 6502 machine, it is noteworthy for a design philosophy in which:
- non-processor actions, such as changing video mode or toggling the speaker, are triggered as a function of address decoding not of hardware registers — e.g. if you access address `C057` then you will set the current graphics mode to 'high resolution' regardless of whether you perform a read or a write, and in the latter case of what you write;
- not even tasks like colour generation are abstracted — the programmer is given a 1bpp pixel output that is in-phase with the NTSC video signal and is expected to generate colours through proper placement of dots; and
- there are zero interrupt sources in an unexpanded machine. There is no way to keep track of time other than processor cycle counting.
The original machine was followed up by the II+, which includes a better BASIC and can automatically boot from a disk drive if attached, the IIe and IIc, both of which offer up to 128kb of RAM, 80-column text and a higher-density pixel graphics mode, and the IIgs, a 16-bit 65816 backwards-compatible machine with a Macintosh-modelled OS.
All machines use a keyboard that cannot communicate multiple simultaneous keypresses, which makes playing games by keyboard difficult. The II and II+ also lack the capacity for lowercase text entry and cannot display lowercase letters in their clean text mode. However all generations of machine have analogue and trigger inputs, which are most commonly used for two two-axis analogue joysticks with two buttons, accepted by the majority of games.
Although the base machine has only a simple binary toggle speaker, all versions of the machine other than the IIc provide expansion slots, allowing a large number of audio options to emerge. Of those, the Mockingboard has the best game support. Various configurations of the Mockingboard were available with different combinations of AY-3-8910 and speech synthesiser chips, connected via 6522s which also provide timed interrupt sources for the CPU. The best-supported configuration carries two AY-3-8910s and two 6522s.