How Sinclair ZX Spectrum+ Handled Uppercase and Lowercase
The Sinclair ZX Spectrum+ utilized a tokenized BASIC environment that required specific shift key combinations to toggle between command keywords, uppercase letters, and lowercase letters. This article details the cursor indicators used to signal input modes, explains the specific key combinations required for case switching, and outlines how the hardware processed alphabetic characters during programming and text entry. Understanding these input mechanics is essential for enthusiasts looking to operate or emulate the classic hardware accurately.
The input system on the ZX Spectrum+ was inherited directly from the original 1982 ZX Spectrum 48K. To save memory, the computer used a tokenized version of BASIC where commands were stored as single bytes rather than full text strings. Consequently, the default input mode was set to “Keyword” mode. When the computer was ready for input, the cursor on the screen would display a flashing letter K. In this mode, pressing a key would produce uppercase command tokens, such as PRINT or RUN, rather than individual letters.
To enter standard uppercase letters or lowercase text, the user had to manually change the input mode using the shift keys. The ZX Spectrum+ keyboard featured two shift keys: CAPS SHIFT and SYMBOL SHIFT. Pressing these two keys simultaneously cycled the input mode through three distinct states. The first press changed the cursor from K to C, indicating Capital Letter mode. In this state, typing alphabetic keys produced standard uppercase characters without triggering BASIC commands. Pressing the shift combination again changed the cursor to L, indicating Lowercase mode, which allowed for the entry of small letters typically used in REM statements or string data.
Visual feedback was critical to this process because the keyboard itself did not have a caps lock LED. The user had to watch the cursor character at the bottom of the screen to know which mode was active. If a user attempted to type a command while in Lowercase or Capital mode, the computer would not recognize it as a function, potentially leading to syntax errors. Conversely, trying to type normal text while in Keyword mode would result in unexpected command tokens appearing on the screen.
While the ZX Spectrum+ introduced a harder plastic keyboard and a reset button compared to the original rubber-key model, the underlying logic for character input remained unchanged. This consistency ensured that software and typing habits transferred seamlessly between the two machines. The system required a deliberate workflow where programmers constantly monitored the cursor state, toggling between K, C, and L modes to construct valid lines of code mixed with human-readable text. This unique method of handling case and commands remains a defining characteristic of the ZX Spectrum computing experience.