Category:Locomotive Basic
![Language](http://static.miraheze.org/rosettacodewiki/thumb/2/27/Rcode-button-language-crushed.png/64px-Rcode-button-language-crushed.png)
This programming language may be used to instruct a computer to perform a task.
Official website |
---|
Execution method: | Interpreted |
---|---|
See Also: |
|
Locomotive BASIC was a variant of BASIC that was built into the ROM of Amstrad CPC 8-bit home computers introduced in 1984. CPCs were a popular, slightly more expensive alternative to the Commodore C64/C128 and sales were particularly strong in the UK, Germany, France, and Spain. Today the language can be used via CPC emulators such as JavaCPC.
Version 1.0 of Locomotive BASIC shipped with the CPC 464, later models shipped with Locomotive Basic v1.1 which brought some important improvements. Despite the fact that all later version call themselves v1.1, ROM headers show that e.g. the Amstrad Plus version is actually v1.40.[1]
Locomotive BASIC was comparatively advanced for its time (with e.g. software interrupts and comprehensive graphics and audio commands) and was very cleanly implemented, just like the rest of the Amstrad CPC ROM. System calls could be made via "CALL" and dedicated jump blocks in RAM, which meant that addresses for system calls remained unaffected when the actual ROM addresses changed between CPC models.
Locomotive BASIC served as a sort of primitive operating system for the CPC and was also used (together with AMSDOS RSX commands[2]) for disk and tape operations. It was also common to enter a BASIC program to read Z80 machine code from "DATA" statements and "POKE" them to RAM, then "CALL" the resulting code, especially in type-in games from old CPC magazines.
References
See Also
Subcategories
This category has the following 3 subcategories, out of 3 total.
@
- Locomotive Basic Implementations (empty)
- Locomotive Basic User (4 P)
Pages in category "Locomotive Basic"
The following 73 pages are in this category, out of 73 total.