44
votes
Accepted
Why does the ZX81 not have user definable characters without extra hardware i.e. why could the character ROM not be in RAM?
The ZX80 and ZX81 use the Z80’s opcode fetch bus cycle for graphics collection — the opcode fetch is appropriated to obtain a character index and the refresh cycle is used to obtain a row of pixels. ...
35
votes
Accepted
How did the ZX80 store both a useful program and screen memory?
Both the ZX80 and the ZX81 had a variable-size display file (DFILE). They didn't store the complete screen contents, but rather only the characters per line up to a terminating newline. This ...
21
votes
Accepted
Why does Sinclair BASIC have two formats for storing numbers in the same structure?
The ZX Spectrum has two formats for storing numbers, both 40 bits, or five bytes.
Jup, like many other machines - one for float and one for integer.
The second is some kind of 16-bit integer ...
21
votes
Is there any significant difference in Sinclair BASIC of ZX80, ZX81 and ZX Spectrum?
Spectrum BASIC is a superset of the earlier BASICs (all the colour commands, etc), so pedantically the answer to the question is the title of the post is "yes, there are significant differences&...
20
votes
Why does Sinclair BASIC have all of the characters twice in the token table?
You're right; the ZX81 does not use ASCII. That's because it uses the CPU to generate the displayed picture, from a compressed format in memory. The way this works is an absolute freakshow*, but from ...
19
votes
Accepted
How do high-resolution graphics work on the ZX81?
The normal process is:
CPU attempts to fetch an op-code instruction byte from the video file. ULA steals that byte as a character code and feeds the CPU a NOP op-code byte instead. Immediately ...
16
votes
Accepted
Is it possible to PRINT AT 23,0 in ZX Spectrum BASIC?
POKE 16418,0 is for the ZX81, not the Spectrum - the equivalent system variable on the Spectrum is at 23659.
You need to take care when poking this address, as it's liable to cause a crash if the ...
15
votes
Accepted
ZX81 screen corrupted
Thank you @Raffzahn for the comment that inspired me to think of something blocking the video signal.
The initial problem described in the previous question was that the ZX81 was showing a white ...
15
votes
Accepted
On the video signal generated by the ULA of the ZX81
That portion of the video signal is generated directly by the ULA; early ZX81s just don't generate a back porch, which was seemingly good enough for the majority of televisions but problematic enough ...
15
votes
Accepted
How can a peripheral work on both the ZX81 and on the ZX Spectrum?
The ZX printer is, like just about anything that carries the Sinclair label, a very minimalistic device - It only needs very few lines from the computer to actually work:
Address bus: The printer ...
13
votes
Accepted
How did the ZX80 RAM pack use DRAM?
But as I understand it, the then current 16kbit RAM chips actually required three different voltages: -5, +5, +12.
Right, and the 'missing' voltages (-5V,+12V) get generated from the +9V source via a ...
13
votes
Accepted
Why did the ZX81 16K RAM pack use two PCBs?
It was neither due history or electronic but for design reason:
The 16 KiB RAM pack was intended to be sold to existing (and new *1) ZX80 users as well. While both had their expansion port on back ...
11
votes
Accepted
How did ZX81 assembly debuggers implement breakpoints?
MONS 3 in the ZX Spectrum, for example, changes the instruction at the break address by a CALL to an entry point in MONS. As MONS is executed, it replaces back the changed instruction with the ...
9
votes
Accepted
Did the ZX80 RAM pack pass the expansion bus through?
Did one or the other have a pass-through for the expansion bus?
There was no other peripheral (by Sinclair) for the ZX80 than the 1..3 KiB static RAM or the later 16 KiB DRAM version (*1).
Most (*2) ...
9
votes
Largest memory peripheral for Sinclair ZX81?
You might be willing to check this hardware list from World of Spectrum. It contains useful information and magazine advertisements of each hardware piece.
Specifically, DK’Tronics memory expansion ...
9
votes
Can you switch the ZX81 ROM to RAM w/o write protecting it and still use ZX81 BASIC?
Directly to answer your question:
yes, if the RAM copy is substituted after the machine has started up;
otherwise, not reliably, as it's likely the first five bytes have been altered.
With reference ...
8
votes
Accepted
(How) can I boost my ZX81 video output with an external device?
I would skip the existing output entirely.
Buy a Chroma 81, which plugs into the expansion slot — no internal modifications necessary — and then monitors the internal bus to reproduce
the video ...
8
votes
Membrane keyboard robustness
It depends on a number of factors, a major one being the material that the membrane is made from. Various types of plastics can be used, with different properties. Some will age and become brittle, or ...
8
votes
Largest memory peripheral for Sinclair ZX81?
There were various companies producing these of which DK'Tronics was one.
For example Ceedata, Bridge Software, Indescomp and Memotech,
7
votes
Why does Sinclair BASIC have all of the characters twice in the token table?
TL;DR:
That encoding is not just the token table but as well the BASIC charset and the screen charset which offers each of the 64 printable characters as Black-on-White (00h..3Fh) or White on Black (...
6
votes
Largest memory peripheral for Sinclair ZX81?
You may be thinking of the BASICare Micro System, an advert for which can be seen here:
http://www.zx81stuff.org.uk/zx81/publisher/BASICare/mag/SinclairUser/Issue008/Pages/SinclairUser00800004.jpg
...
6
votes
Why does Sinclair BASIC have two formats for storing numbers in the same structure?
Doing integer arithmetic is by some orders of magnitude faster as floating point. So if there is a statement like
LET a = b + c
the interpreter would first check if both a and b are integers. If yes,...
6
votes
Accepted
How many units of the ZX81 RAM pack were sold?
I guess it will be next to impossible to get tangible sales figures for the number of RAM packs sold.
I did, however find a quote from Geoff Boyd (one of the owners of Memotech, who was a well-known ...
5
votes
Accepted
Which retro personal computers, if any, can use a modern day VGA monitor?
A few 'home' computers from the '80s could output a VGA signal, including:-
Acorn Archimedes
Commodore Amiga (with Flicker Fixer)
PC clones that had VGA on board or could take a VGA card (eg.
...
5
votes
Accepted
How to determine PCB revision of a Sinclair ZX-81
The easiest way to tell is by looking at the traces on the board.
If they look curvy, as though hand-drawn, it's an issue 1.
If they're in more or less straight lines, it's a 2 or 3.
Seeing as ...
5
votes
Why does Sinclair BASIC have two formats for storing numbers in the same structure?
I bought and read 'Complete (ZX) Spectrum ROM Disassembly' (Ian Logan, 1983, very out of print) many years ago, here are the answers, from my memory. (Btw, the ZX80 ROM is insanely tight Z80 assembler ...
5
votes
Is it possible to PRINT AT 23,0 in ZX Spectrum BASIC?
I don't know about the normal printing routines in ZX Spectrum BASIC, but you can directly access the screen memory using POKE from BASIC. You'll need to work out where to get the 8 bytes of bitmap ...
4
votes
Accepted
What does the ZX81 ULA use A14 and A15 for?
The only detail you’re missing is that A15 must be HIGH in order for a processor M1 cycle to be treated as a video fetch.
The full memory map is:
0000–3fff: ROM;
4000–7fff: RAM, no special handling;
...
4
votes
Accepted
Membrane keyboard robustness
Some early computers used a membrane keyboard (ZX80, ZX81, Atari 400), or semi-membrane with minimal keys (ZX Spectrum).
Not just early ones. Membrane keyboards are still made and used today, usually ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
zx81 × 23sinclair × 10
zx80 × 5
hardware × 4
zx-spectrum × 4
basic × 3
memory × 2
troubleshooting × 2
history × 1
amiga × 1
graphics × 1
z80 × 1
video × 1
rom × 1
floating-point × 1
bbc-micro × 1
vga × 1
debugging × 1
dram × 1
composite-video × 1
membrane-keyboard × 1
atari-400 × 1
timex-sinclair × 1