Spectrum +3

From Grahams Wiki

Jump to: navigation, search
A Spectrum +3
A Spectrum +3

The ZX spectrum +3 was the last (official) speccy. It was designed and manufactured by Amstrad using as few bits as possible but slapping one of their truly awful 3" disk drives as used by the Amstrad CPC, rumor has it because they bought a huge consignment of them from Asia.

Contents

[edit] Specification

[edit] Part list

[edit] Add ons

I have a variety of add ons for this computer.

[edit] My mods

My +3 has a Hard disk. Its basically the +3E setup with the simple 8 bit interface. THere are two parts to this, a set of replacement roms and an internal interface.

[edit] IO Ports

[edit] General machine control port

This port was the only one used on the unexpanded 48K, and it is used for both keyboard, border and Tape IO.

Write:

  • 0 \
  • 1 | Border colour (0-7)
  • 2 /
  • 3 Mic output bit

Read:

This is complex, the LSB of the port outputted is $FE. and the MSB is a strobe for they keyboard line. Each bit returned is one key. so:

  • FEFE Shift->V
  • FDFD A->G
  • FBFE Q->T
  • F7FE 1->5
  • EFFE 0->6
  • DFFE P->Y
  • BFFE Enter->H
  • 7FFE Space->B

Keys are active low.

[edit] Floppy disk controller

Address: 2FFD (rw) Status/command register of the uPD765

Address: 3FFD (rw) Data register of the uPD765

Note, the motor is controlled using bit 3 of Memory control 2.


[edit] Memory control 1

Address: 7FFD

  • 0 \
  • 1 | Ram page for the ram $C000 -> FFFF (0-7)
  • 2 /
  • 3 Page for display. 0 = page5, 1 = page7.
  • 4 Rom select (Low byte)
  • 5 Paging lock. If set, the current pages are locked until the next hard reset.

[edit] Memory control 2

Address: 1FFD

  • 0 Paging mode. 0=normal, 1=special
  • 1 In normal mode, ignored. In special mode, bit 0 of page layout
  • 2 In normal mode, high bit of ROM selection. In special mode, bit 1 of page layout
  • 3 Disk motor 1=on
  • 4 Printer port strobe.

Roms: (MSB = 1FFD bit 2, LSB = 7FFD bit 4)

  • 0: 128k editor, menu system and self-test program
  • 1: 128k syntax checker
  • 2: +3DOS
  • 3: 48 BASIC

Special mode: Special mode has four different configurations, designed for CPM and other OS's where ROM would get in the way.

        00     01     10     11
0xffff +---+  +---+  +---+  +---+
       | 3 |  | 7 |  | 3 |  | 3 |
0xc000 +---+  +---+  +---+  +---+
       | 2 |  | 6 |  | 6 |  | 6 |
0x8000 +---+  +---+  +---+  +---+
       | 1 |  | 5 |  | 5 |  | 7 |
0x4000 +---+  +---+  +---+  +---+
       | 0 |  | 4 |  | 4 |  | 4 |
0x0000 +---+  +---+  +---+  +---+

[edit] Sound

  • Address: (Write) $FFFD - Register select
  • Address: (Read) $FFFD - Register read
  • Address: (Write) $BFFD - Register write

[edit] Ports

The computer has the following ports:

[edit] My speccy

As can be seen from the picture, my speccy has been through the wars somewhat. The thing on the back is a passthrough that I use for testing hardware. You can plonk wires in there and take them straight to a breadboard without having to bother with the soldering iron. My speccy

Inside the speccy you can see a surfeit of chips. Mostly dominated by the big ASIC at the bottom right. Most of the chips that are left are ones that either aren't easily ASIC'd (The z80, 4 ram chips, rom, ect), buffers for signals that go to the Centronics or RS232 ports, or things that were prone to go if the crappy Floppy drive dies (I cant stress just how utterly bollocks this mechanism is. Really, its toss.) The inside

Personal tools