Home »

Zx spectrum software

The meaning of «zx spectrum software»

Despite the fact that the ZX Spectrum hardware was limited by most standards, its software library was very diverse, including programming language implementations (C,[1] Pascal,[2] Prolog,[3] Forth,[4]), several Z80 assemblers/disassemblers (e.g.: OCP Editor/Assembler, HiSoft Devpac, ZEUS Assembler, Artic Assembler), Sinclair BASIC compilers (e.g.: MCoder, COLT, HiSoft BASIC, ToBoS-FP), Sinclair BASIC extensions (e.g.: Beta BASIC, Mega Basic), databases (e.g.: VU-File[5]), word processors (e.g.: Tasword II[6]), spread sheets (e.g.: VU-Calc[5]), drawing and painting tools (e.g.: OCP Art Studio,[7] The Artist, Paintbox, Melbourne Draw), even 3D modelling (VU-3D[8][9]), and, of course, many, many games.

Because most British home computer owners used tape instead of disk storage into the mid-1980s,[10] most ZX Spectrum software was originally distributed on audio cassette tapes. The software is encoded on tape as a sequence of pulses that sound similar to the noises made by a modem. Since the Spectrum has only a rudimentary tape interface, data is recorded using an unusually simple and very reliable modulation - similar to pulse-width modulation but without a constant clock rate. Pulses of different widths (durations) represent 0s and 1s. A "zero" is represented by a ~244 μs pulse followed by a gap of the same duration (855 clock ticks each at 3.5 MHz) for a total ~489 μs;[11] "one" is twice as long, totalling ~977 μs. This allows for 1,023 "ones" or 2,047 "zeros" to be recorded per second. Assuming an even proportion of each, the resulting mean transmission rate is ~1,365 average bits/s. Higher speeds are possible using custom machine code loaders instead of the ROM routines.

In theory, a standard 48K program may take about 5 minutes to load: 49,152 bytes × 8 = 393,216 bits; 393,216 bits / 1,365 baud ≈ 288 seconds = 4:48 minutes. In practice, however, such a program usually takes between 3–4 minutes to load (because of different number of 0s and 1s encoded using audio frequency shift keying, and not all memory needs loading), and 128K programs could take up to 11:23 minutes to load. Experienced users can often tell the type of a file, e.g. file header, screen image or main block of code, from the way it sounds on the tape.[12]

The standard method of storing files on tape uses a combination of header and associated data blocks. Both types of blocks are preceded by pilot and synchronization signals, used to accommodate numerous physical variations present such as tape deck speed and distortion arising from tape stretching. Headers have a short size of 19 bytes (1 zero-value flag byte, 17 header information bytes, and 1 checksum byte), where the header information consists of a type byte, a 10-byte filename, a word data block length, and two word parameters. Depending on the type byte, the loader presents one of the follow messages: Program: <filename> for programs written in BASIC; Bytes: <filename> for machine code, screen dumps, etc.; or Character array: <filename> for an ASCII-encoded file.[13]

© 2015-2021, Wikiwordbook.info
Copying information without reference to the source is prohibited!
contact us mobile version