Skip to main content
31 votes
Accepted

How did ZX Spectrum games loaders prevent the use of MERGE?

Each line of BASIC is stored in memory as two bytes for the line number, then two bytes indicating the length of the line in bytes, followed by the tokenised text of the line. MERGE protection works ...
gasman's user avatar
  • 1,341
14 votes

How did ZX Spectrum games loaders prevent the use of MERGE?

The most simple way to do this was saving the BASIC program not as a BASIC program but rather as raw bytes like in 100 PRINT "This appears before the SAVE!" 110 SAVE "DEMO" ...
tofro's user avatar
  • 35k
14 votes

What does Spectrum BASIC have that ZX81 lacks?

From 'Reusing Code, Reverse Engineering And Collaboration': Grant and Vickers would’ve liked to start over, but there wasn’t time. So the ZX81 BASIC was used as the starting point, with the addition ...
Mark Williams's user avatar
13 votes

What are the electrical properties of the EAR and MIC sockets on a ZX Spectrum, and can they be connected between machines?

I'm revising this answer to suggest that yes, EAR to EAR communication should be possible without amplification. Read the edit history for my previous working. There's a large document on World of ...
knol's user avatar
  • 12k
11 votes

What are the electrical properties of the EAR and MIC sockets on a ZX Spectrum, and can they be connected between machines?

There are actually two problems that need to be solved: The physically provided and expected signal levels on the EAR and MIC connectors are not symmetrical - The ZX Spectrum expects certain ...
tofro's user avatar
  • 35k
10 votes
Accepted

What does Spectrum BASIC have that ZX81 lacks?

Hopefully, this is a pretty comprehensive list of the differences between the ZX81 and Spectrum (and, to a lesser extent, the ZX80) BASICs: String handling No FAST and SLOW UNPLOT/PLOT OVER ...
Greenonline's user avatar
  • 4,356
10 votes
Accepted

Using Sinclair ZX Microdrive is it possible to random access a text-file?

Let's have few functions and (system) variables names 15 DEF FN p(a)=256*PEEK (a+1)+PEEK a : REM DPEEK(a) 16 DEF FN m(n,d)=n-d*INT (n/d) : REM MOD(n,d) 17 DEF FN l(v)=v-256*FN h(v) : ...
Matteo Vitturi's user avatar
9 votes

How did "Super Wonder Boy (in Monsterland)" defeat the Multiface One?

A partial answer: the Multiface provides both its own ROM and its own work RAM which it pages in just below the screen area. Per the For UNIX Spectrum Emulator ('FUSE') source code this 8kb of RAM can ...
Tommy's user avatar
  • 37k
9 votes

Can anyone tell me more about flippy games?

This feature wasn’t unique to Mastertronic or to the CPC/Spectrum pairing. There were quite a few publishers and pairings, both on cassette and on disk. One example of the former is Mirrorsoft’s UK ...
Stephen Kitt's user avatar
8 votes
Accepted

Spectrum DIY upgrade to 48K

If you had one of the 60,000 (or so) issue 1 boards then memory expansion was a little different, as issue 1 boards are, essentially, just 16 kB boards, with no room for expansion - that is to say, ...
Greenonline's user avatar
  • 4,356
6 votes

ZX Spectrum+ 48K with faulty memory writing address

As pointed out in the other answer, $4000 is indeed the screen memory - so, if you print something to the screen from your BASIC program (which you do), your test program will indeed change that ...
tofro's user avatar
  • 35k
6 votes

Spectrum DIY upgrade to 48K

The only thing I can add is that I have seen this upgrade documented in Elektuur (Dutch Elector) magazine (most probably). The additional 32kx8 memory was added on top of the original 16kx8 chips, and ...
chthon's user avatar
  • 700
5 votes

Spectrum DIY upgrade to 48K

I had a 16K Spectrum, bought the additional chips and plugged them in to upgrade to 48K. I don't remember having to bend any pins, but it was a long time ago!
Clive Davies's user avatar
5 votes

ZX Spectrum+ 48K with faulty memory writing address

4000h is in the screen memory area and is going to get overwritten when the screen is updated, so only write here if you want to update the screen you need to use the clear command to limit the basic ...
camelccc's user avatar
  • 645
5 votes

The smell of a computer while unboxing it

Perfume is not added to electronics packaging, rather it's a combination of smells. Most plastics (including styrofoam), cardboard materials inks, glues etc. all "offgas" a bit - meaning ...
Tylon Foxx's user avatar
5 votes

How did ZX Spectrum games loaders prevent the use of MERGE?

Another method for preventing MERGE, and which gives (slightly) less problems than modifying a BASIC line size in RAM, is changing the BASIC line number(s) with invalid numbers for the BASIC editor ...
Rui F Ribeiro's user avatar
4 votes

Is there a version of Python that runs on a QL, Speccy or a Commodore?

Officially python was never ported or released on ZX-Spectrum computers, because it was first apperared in February 1991 when most of Speccy publishers moved to another modern hardware platforms. Only ...
Alexander B's user avatar
3 votes

ZX Spectrum - guidelines for porting to PC and more are appreciated

Most/all of the requirements you describe can be done using a ZX Spectrum Next, an existing and manufactured product. It has the Spectrum compatibility and hardware sprites you want, using an FPGA to ...
TonyM's user avatar
  • 3,754
3 votes
Accepted

ZX Spectrum - guidelines for porting to PC and more are appreciated

Just some thoughts: To decompile the game, you could use IDA Pro (if you could manage to buy a copy, you get me :) or Ghidra. They both support Z80. You can enhance graphics without changing the ...
lvd's user avatar
  • 10.5k
3 votes

Compression techniques used in old ZX Spectrum tapes

In the old days I looked into lots of game loders, so there was no 'decrunching' and no depacking in any original game software. Only turbo-loaders (like Speedlock, Alcatraz protections 'loading ...
Alexander B's user avatar
3 votes

ZX Spectrum red stripes during loading

The static nature of the bars during loading depends not only on the speed of the cassette tape, but also on the topology of the Spectrum screen, since clones have different configurations: the number ...
Alexander B's user avatar
3 votes

Spectrum DIY upgrade to 48K

There was the Indescomp external 32 RAM pack, from Spain. Name: Indescomp 32K Ram Pack Manufacturer: Indescomp S.A. (MHT ingenieros) Year: 1983/1984 Type: RAM/ROM Price: £39.95 Blurb: Upgrade 16K ...
Greenonline's user avatar
  • 4,356
3 votes

Spectrum DIY upgrade to 48K

I just opened my ZX spectrum 48K, it is an Issue 4B (D01-249720). Seems that some IC's need to be added to the empty sockets. p.s. Ignore the wires...I replaced the broken membrane with micro ...
Reinder's user avatar
  • 131
2 votes

Can anyone tell me more about flippy games?

One unusual example is the data cassette for the videogame adaptation of Trivial Pursuit. This contained the questions and answers; the publisher also sold expansion packs with additional sets of ...
john_e's user avatar
  • 7,688
2 votes
Accepted

Details of ZS Scorpion port 0x1ffd

There was several unofficial modifications of Scorpion memory: DejaVu #0A disk magazine: ZS Scorpion 1024 scheme. Here is a translation. ZX Light #0C disk magazine: ZS Sсorрion 256 memory expansion ...
Alexander B's user avatar
1 vote

ZX Spectrum - guidelines for porting to PC and more are appreciated

You state in a comment that you have extracted the BASIC source code for the programme. Assuming that the Santaka used the Sinclair Basic interpreter, you might be able to transfer these source code ...
Mark Williams's user avatar
1 vote

How did the ZX Spectrum avoid key ghosting?

There are 2 major cause of ghosting in matrix keyboard ... Voltage drop below TTL H/L threshold Depending on the matrix circuitry, once you press keys on multiple rows/columns then the voltage after ...
Spektre's user avatar
  • 7,286
1 vote

How were the first ZX Spectrum games written?

...but I felt like the games I was playing (Jetpac, Dizzy, Renegade etc) were perhaps not written using BASIC. They certainly were not! As you surmise, most games were written in Z80 assembly. ......
cjs's user avatar
  • 26.5k

Only top scored, non community-wiki answers of a minimum length are eligible