Ports
ZXNet echo conference «hardware.zx»
From Max Melnikov → To All 10 March 2000
Hello to you, All.
People, please post the addresses of the ports of various spectrum columns, from their
decryption, imho it will be useful for many, both for programmers and for hardware
to the masters.
For, for example, one craftsman sits and came up with a cunning/useful/useless
a gadget for the computer, and on which port should I hang it? will hang it on his computer without
problems, but a friend came to him, he liked this lotion, he brings
your computer, and on it this port is already occupied, if you switch to another port, software
redo it, but what if there is already a lot of this software? why the extra work? but there would be
he has a sign that says what ports are on which computer
deciphered, I would make the gadget so that without alterations or modifications
the computer worked out.
Real examples: a guy brought several C-DOS modems to Eburg, installed
on our widespread Quorums, and nothing good, conflicts with
another port, I had to do more complete decryption, it seemed okay, but on
a sandwich appeared on the modem board, which in my opinion looks unaesthetic, and
sides of a simple user: I bought a thing, but it needs to be improved, perverted
my friend imho.
Second example: GS did not work on Quorum due to decryption, and Mr. NEMO loves
write that “... products with traces of soldering lose their warranty,” but how to connect
without this very soldering, how?
Now I need to install an additional port on my computer, but which one?Because I will use it in my programs, and I hope that they will
use others, and what if when writing to this port on another computer it will
is something terrible happening? I don’t want to repeat the story with Scorpio and the port
#FD, I'm tired of blocking 256 kB by #7FFD due to the 6th bit being set
when someone switches pages via #FD (output to the second screen is disrupted).
I’ll write on my own behalf which _exactly_ Quorum ports known to me are decrypted.
┌───────┬─────────── ────────────────────┐
│ Address │ Decryption │
│ in ├─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┤
│ HEX │f│e│d│c│b│a│9│8│7│6│5│4│3│2│1│0│
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│ 00 │ │ │ │ │ │ │ │ │0│ │ │0│ │ │ │0│ Computer configuration
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│ 7FFD │0│ │ │ │ │ │ │ │ │ │ │1│1│ │0│ │ Memory management
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│ FE │ │ │ │ │ │ │ │ │1│ │ │1│1│ │ │0│ Klava
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│ 7E │ │ │ │ │ │ │ │ │0│ │ │1│1│ │ │0│ Extended keyboard
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│ 80FD │1│ │0│ │ │ │ │ │ │ │ │1│1│ │0│ │ CP/M port
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│ BFF7 │ │0│1│1│ │ │ │ │1│ │ │1│0│ │ │ │ \n
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ |
│ DFF7 │ │1│0│1│ │ │ │ │1│ │ │1│0│ │ │ │ > Clock by Glitch
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ |│ EFF7 │ │1│1│0│ │ │ │ │1│ │ │1│0│ │ │ │ /
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│ ???? │ │ │ │ │ │x│ │x│1│1│0│1│ │ │ │ │ \n
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ |
│ ???? │ │ │ │ │ │x│ │x│1│1│0│1│ │ │ │ │ > Kempston mouse
├───────┼─┼─┼─┼─┼─┼─ ┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ |
│ ???? │ │ │ │ │ │x│ │x│1│1│0│1│ │ │ │ │ /
└───────┴─┴─┴─┴─┴─┴─ ┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
I will say one thing about the mouse: the port addresses are standard (as described in one of
ZX-FORMATs) I don’t remember them :(
These are not all ports, I just have information about them or an implementation diagram. More
I ask you once again: LEAVE THE INFORMATION, I REALLY NEED IT!!!
Sincerely, Max Melnikov... aka Highlander... aka Uncle Maximka...
From Yuri Teslenko → To Max Melnikov 15 March 2000
Howdy, Max!
03/10/2000 at 09:33 Max Melnikov wrote to All:
MM> People, please post the addresses of the ports of various spectrum columns from them
MM> decryption, imho it will be useful for many, both for programmers and for
MM> hardware to the masters.
I throw mine...
MM> For, for example, one craftsman sits and came up with the idea
MM> a clever/useful/useless gadget for the computer, and on which port
MM> hang? hang it up on his computer without any problems, but I came to him
And in such a case there is this:
=== Cut ===
DANGER Corporation
16 ports recaptured from ad. ZX spaces
┌──┬──┬─┐
A12<─1─┤D0│DC│0o─
A13<─2─┤D1│ │1o─
A14<─3─┤D2│ │2o─
├──┤ID│3o─12─>BFF7
│ │ 7│4o─
A15<─6─┤V3│ │5o─10─> DFF7
-IORQ<─5─oV2│ │6o─9──> EFF7
┌4─oV1│ │7o───┐
│ └──┴──┴─┘ │
└────────────┐ │
┌───┐ ┌───┐│ │
-M1<─┤1 o──┤1 ├┘ │
┌┤ЛЭ1│┌─┤ЛЛ1│ │
│└───┘│ └───┘ │
┴ │ │
A3<──────┘ │
┌─────────────┘
│ ┌──┬──┬─┐
A8<─┼─┤D0│DC│0o─> F0F7 - PALETTE R
A9<─┼─┤D1│ │1o─> F1F7 - PALETTE G
A10<─┼─┤D2│ │2o─> F2F7 - PALETTE B
│ ├──┤ID│3o─> F3F7 - VIDEO MODES
│ │ │ 7│4o─> F4F7 - EXTERNAL
+5v<─┼─┤V3│ │5o─> F5F7 - EXTERNAL.
├─oV2│ │6o─> F6F7 - EXTERNAL.A11<─┼─oV1│ │7o─> F7F7 - EXTERNAL.
│ └──┴──┴─┘
│ ┌──┬──┬─┐
A8<─┼─┤D0│DC│0o─> F8F7 - RESERVE
A9<─┼─┤D1│ │1o─> F9F7 - "
A10<─┼─┤D2│ │2o─> FAF7 - "
│ ├──┤ID│3o─> FBF7 - "
│ │ │ 7│4o─> FCF7 - "
A11<─┼─┤V3│ │5o─> FDF7 - "
└─oV2│ │6o─> FEF7 - RESERVE.
┌──oV1│ │7o─> FFF7 - FOR 8 MB MEMORY.
┴ └──┴──┴─┘.
=== Cut ===
And then there is the echo.
MM> On my own behalf I will write what _exactly_ Quorum ports I know as
MM> decrypted.
What I know or have on my Lviv:
(Underlined bits are checked)
=== Cut ===
DANGER CORP.
ADDRESS BUS
┌──┬─────┬──┬──┬──┬──┬──┬──┬── ┬──┬──┬──┬──┬──┬──╥─────┬────┐
│15│14│13│12│11│10│09│08│07│06│05│04│03│02│01│00║ PORT│PROC│
├──┼──┼──┼──┼──┼──┼──┼──┼──┼── ┼──┼──┼──┼──┼──┼──╫─────┼────┤
│ 0 0 0 0│ 0 0 0 0│ 1 1 1 1│ 1 1 1 1║ #FF │ I/O│-ATRIBUTES, VG.
│ │ │ - - - -│ - - - -║ │ │
│ 0 0 0 0│ 0 0 0 0│ 1 1 1 1│ 1 1 1 0║ #FE │ I/O│- :))
│ │ │ │ -║ │ │
│ X X X X│ X X X X│ 1 1 1 1│ 1 1 1 0║#XXFE│ IN │-D0-D4-KEYBOARD
│ - - - -│ - - - -│ │ -║ │ │
│ 0 0 0 0│ 0 0 0 0│ 1 1 1 1│ 1 0 1 1║ #FB │ I/O│-PRINTER,RS-232,
│ │ │ - │ - ║ │ │LPT-COVOX,CHACHE│ 0 0 0 0│ 0 0 0 0│ 0 1 1 1│ 1 0 1 1║ #7B │ OUT│-PRINTER,COVOX-D9,
│ │ │ - │ - ║ │ │CHACHE
│ 0 0 0 0│ 0 0 0 0│ 1 1 1 1│ 0 1 1 1║ #F7 │ I/O│
│ │ │ │ ║ │ │
│ 0 0 0 0│ 0 0 0 0│ 1 1 1 0│ 0 1 1 1║ #E7 │ I/O│
│ │ │ │ ║ │ │
│ 0 0 0 0│ 0 0 0 0│ 1 1 1 0│ 1 1 1 1║ #EF │ I/O│-CDOS MODEM
│ │ │ - -│ - - -║ │ │
│ 0 0 0 0│ 0 0 0 0│ 0 0 0 1│ 1 1 1 1║ #1F │ I/O│-KEMPSTON,
│ │ -│ - - │ - -║ │ │ ВГ
│ 0 0 0 0│ 0 0 0 0│ 0 1 1 1│ 1 1 1 1║ #7F │ OUT│-ВГ
│ │ │ │ ║ │
│ 0 0 0 0│ 0 0 0 0│ 0 0 0 0│ 1 1 1 1║ #0F │ OUT│ ─┐
│ │ │ - - -│ - ║ │ │ │
│ 0 0 0 0│ 0 0 0 0│ 0 0 0 1│ 1 1 1 1║(#1F)│ OUT│ ─┴─>SNDRIVE L.O
│ │ │ - - -│ - ║ │ │
│ 0 0 0 0│ 0 0 0 0│ 0 1 0 0│ 1 1 1 1║ #4F │ OUT│ ─┬─>SNDRIVE R.O
│ │ │ - - -│ - ║ │ │ │
│ 0 0 0 0│ 0 0 0 0│ 0 1 0 1│ 1 1 1 1║ #5F │ I/O│ ─┘
│ │ │ - - -│ - ║ │ │
│ 0 0 0 0│ 0 0 0 0│ 0 0 1 1│ 1 1 1 1║ #3F │ I/O│-ВГ│ │ │ │ ║ │ │
│ 0 0 0 0│ 0 0 0 0│ 1 1 1 1│ 1 1 0 1║ #FD │ OUT│-MEMORY 128
│ - - - │ - │ │ - ║ │ │
│ 0 1 1 1│ 1 1 1 1│ 1 1 1 1│ 1 1 0 1║#7FFD│ OUT│- -"-^
│ - - │ │ │ - ║ │ │ PENTAGON 512
│ 0 0 0 1│ 1 1 1 1│ 1 1 1 1│ 1 1 0 1║#1FFD│ OUT│-SCORPION 256
│ - - - │ - │ │ - ║ │ │
│ 1 1 1 1│ 1 1 0 1│ 1 1 1 1│ 1 1 0 1║#FDFD│ OUT│-ATM 512
│ - - - │ - │ │ - ║ │ │
│ 1 1 0 1│ 1 1 1 1│ 1 1 1 1│ 1 1 0 1║#DFFD│ OUT│-PROFI 1024
│ - - - │ - │ │ - ║ │ │
│ 1 0 1 1│ 1 1 1 1│ 1 1 1 1│ 1 1 0 1║#BFFD│ OUT│-AY-CHIP WR
│ - - - │ - │ │ - ║ │ │
│ 1 1 1 1│ 1 1 1 1│ 1 1 1 1│ 1 1 0 1║#FFFD│ I/O│-AY-CHIP SEL,RD
│ - - - │ - │ │ - ║ │ │
│ 1 1 1 0│ 1 1 1 1│ 1 1 1 1│ 0 1 1 1║#EFF7│ I/O│-GLUCK PORT
│ - - - -│ - - - -│ │ - ║ │ │
│ 1 0 1 1│ 1 1 1 1│ 1 1 1 1│ 0 1 1 1║#BFF7│ I/O│-CMOS DATA
│ - - - -│ - - - -│ │ - ║ │ │
│ 1 1 0 1│ 1 1 1 1│ 1 1 1 1│ 0 1 1 1║#DFF7│ I/O│-CMOS REG SEL
│ - - - -│ - - - -│ │ - ║ │ │
│ 1 1 1 1│ 1 0 1 0│ 1 1 0 1│ 1 1 1 1║#FADF│ IN │-K. MOUSE BUTTONS
│ │ - -│ - - │ - -║ │ │
│ 1 1 1 1│ 1 0 1 1│ 1 1 0 1│ 1 1 1 1║#FBDF│ IN │-"-COORDINATE X
│ │ - -│ - - │ - -║ │ │
│ 1 1 1 1│ 1 1 1 1│ 1 1 0 1│ 1 1 1 1║#FFDF│ IN │-"-Y COORDINATE
│ │ - -│ - - │ - -║ │ │
└───────────┴───────────┴───── ──────┴───────────╨─────┴────┘.
=== Cut ===
I tried to improve the decoding (see Tim :))
MM> implementations. Once again I ask: LEAVE THE INFORMATION, I REALLY NEED IT!!!
What I have, I threw away. The rest is in my head...
Bye, Yuri.
From TYAX → To All 23 May 2006
Hello hero
her> And there is a card with three ports, or do you mean all the bells and whistles, if so then
her> in parallel with the port map, it is necessary to create a decryption map for
her> specific clones, since there are inconsistencies when using everything
her> in one
This means all ports and clones too, although not all of the latter are described.
There is another ambush here, partial addressing in programs. If we limit ourselves to the younger ones
addresses, then you can simplify the circuit while simultaneously reducing the number of cases
microcircuits In addition, some devices strive to occupy the same ports. B
clones, complete freedom.. this can and should be dealt with, only descriptions are needed
get it.
In this case, a couple of new questions have arisen, namely...
What clones should be compatible with?
What about additional memory and its free connection (any page to
any area)? Are there any software incompatibilities in this case or is it
only one of the capabilities (features) of clones. :v2_conf2;
A; in general, it's time to move on to the soldering iron... based on the basic configuration
128k.. adding the ability to quickly connect everything that only
required.. :v2_wink2: