maTeionE best viewed with NetSurf |
My programs | Games | Other programs | ||||
GNU/Linux | Computers & programming | Music & movies | |||||
Other topics | What's new + README | Contact | |||||
--------------------------------------------------------------------------------------- | |||||||
Emulators
ZX Spectrum
|
Updated 2024-09-24 ZX Spectrum emulators Online emulator Below is a free emulator written in JavaScript, named JSSpeccy v1. More advanced versions exist, i.e. v2 and JSSpeccy 3, but I included this one because it's the only version that I could run offline and it works in Firefox 10 from 2012. You can download it and put it on your site. It doesn't have sound. The original ROM file that came with the emulator is replaced with OopenSE BASIC . OpenSE BASIC is an open source replacement firmware for the ZX Spectrum and clones that includes many improvements over the original, while retaining a high level of compatibility. Press Power On, then Start, then Open and select a file. The first 3 files are games and the last 2 are programs written in BASIC. The games are:
JSSpeccya ZX Spectrum emulator in JavascriptJSSpeccy homepage (including downloads and source code) Based on Fuse by Philip Kendall et al. Icons from Nuvola by David Vignoni. CloseThis program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. The ZX Spectrum The ZX Spectrum is a home computer released in 1982 and based on the Z80 CPU, which is superior to the 6502 CPU used in the Apple II (1977) and (with modifications) in the Commodore 64 (1982). Although only an 8-bit CPU, the Z80 can run a preemptive multitasking operating
system. Features such as memory protection, which the Z80 lacks, are not essential in such an OS.
In the ZX Spectrum's memory, each address stores 8 bits (1 byte) and the Z80 CPU can handle an address size of 16 bits, so 216 = 65536 B = 64 KiB of memory can be accessed directly by the CPU. The model with 48 KiB of RAM has 64 KiB of memory in total, of which the first 16 KiB (addresses 0—16383) are read-only memory (ROM), storing a BASIC interpreter and some routines for graphics, arithmetic operations etc. Sinclair BASIC was originally developed in 1979 for the ZX80 by Nine Tiles. The programmers
were John Grant, the owner of Nine Tiles, and Steve Vickers. POKE addr,i This writes i, which can be between 0 and 255 = 28 - 1, at physical address addr. If addr is in the framebuffer (addresses 16384—23295), the result is immediately visible on the screen.
Emulators An emulator is a program that enables a computer to run programs made for another type of computer. This is useful, for instance, to play games on computers that are no longer available. Currently, making a game compatible with (almost) any type of computer is easy, by using the C programming language, which was standardised in 1989, and the SDL library , which adds functions for graphics and sound and was first released in 1998. SDL is a wrapper around the operating-system-specific functions that the game needs to access. The only purpose of SDL is to provide a common framework for accessing these functions for multiple operating systems (cross-platform). SDL provides support for 2D pixel operations, sound, file access, event handling, timing and threading. From a book published in 1991 :C has the great advantage of always being available on commercial UNIX implementations. UNIX is written in C, so whenever UNIX is implemented on a new type of hardware, getting a C compiler to work for that system is the first task. [...] Realistically, C is the first choice for portability of software in the UNIX environment. However, besides not having been standardised yet, the C language is relatively complex and was not suitable for the home computers widely used before 1990, like the ZX Spectrum. Therefore, simpler programming languages were popular at the time, such as BASIC, Pascal, or assembly languages.Assembly languages are specific to each type of computer and although almost all home computers came with BASIC interpreters, they were also different, so a program written in BASIC for one computer would generally not function without modifications on another computer. Pascal was standardised in 1983, so it was possible for a program written in Pascal to function without modifications on different computers, with some limitations (i.e. no graphics), but this doesn't mean that the program could be transferred directly, because storage devices and file formats were also different and incompatible. Download links Emulators Games Free Unix Spectrum Emulator OpenSE BASIC Bars3d - program written in BASIC, included in the emulator above which is also provided. More emulators |
||||||
--------------------------------------------------------------------------------------- |