Hard - 8-bit Kempston joystick port with 3 additional buttons

Kempston Joystick extension
 Kempston Joystick - one of the most popular─ 
polar devices on ZX Spectrum.But at 
this has several disadvantages. 
One of them is that this circuit supports─ 
only one-button (I almost said 
single-cell) joystick type Atari CX40 
harvest1977year. To the person who will come 
on  Speccyfrom another planet, it won't be easy 
understand why you need to jump with the joy movement─ 
stick up, and strafe in Wolf48is turned on 
movement down+left or down+right. How 
fighting in fighting games - in generalunclear. 
Really on the keyboard? 
The devices have come a long way since their appearance 
decades, and the place of joysticks is confident 
gamepads took over. Typical gamepad fromDandy 
or  Sega Mega Drive contains from 4 to 7 
buttons, including at least two different 
game actions, and there are also from─ 
smart pause button combined with 
starting the game. 
The port itself#1F,on which Kempston sits
Joystick,has three free bits, which─  
These are usually at zero and are sometimes used 
to determine the presence of a joystick (not de─ 
bar like this). These bits would be logical to use─ 
use for three other buttons. 
A few years ago Black Cat/Era
Creative Group from Novosibirsk (famous  
via Twitch/YouTube channel  Videogames Sema─ 
tary ) took up this issue practically. 
 He further writes:

   Bits of the extended Kempston Joystick
are distributed like this (all active in the unit,
inactive at zero):
 0 RIGHT
 1 LEFT
 2 DOWN/DUCK
 3 UP
 4 B (for example, FIRE)
 5 C (for example, JUMP)
 6 A (for example, ADDITIONAL FIRE)
 7 START (for example, PAUSE/MAP)

   List of games that support 8-bitKemp─
ston: 

Castlevania: Spectral Interlude (2015)
Trial version madeby Sanchezaccording to mine
request back in 2018,however, support it─
The only thing that happened was the extra jump. button. In ver─
this  2020  year is fully supported. On extra
buttons - jump, change weapons, map.
Attention!  For correct operation, after
skipping the screensaver on the Fire button, necessary─
You can select the WSAD control type in the menu.

The Dark by Oleg Origin (1997, 2016)
 Unplanned feature. By Fire2 - you─
call of the card.

Mighty Final Fight (2017)
 Controversial version. Was also asked
I had  Sanchez  to test the concept in
2018. The author didn’t like the result, if─
management is based on traditional
control option. On additional buttons─
pkah - jump and pause.

Aliens: Neoplasma (2019)
 Also from  Sanchez. Full support. On
additional buttons - jump, grenades, exit to the menu.

Delta's Shadow (2020)
 Again from the same author.

Space Gun by Ocean SoftwareLtd'92
 Version with the ability to control from
Kempston Mouse and support for additional ones 
buttons  Kempston Joystick. Release released
together withgoodboy.

 Vade Retro II by J.B. (2017)
 Russian translation:  Den Jr, michellekg,
Black Cat / Era CG 
 Modification for Kempston (8 bit): Black
Cat / Era CG (15.05.2020) 
 Kempston joystick  (all 8 bits) works
parallel to the keyboard. On additional
on the buttons: take/apply item,
transport, character change. Inventory vi─
Sith is still only on the I key.

The Order of Mazes (2015)
 by Tom Dalby
Extended Kempstonadded to disco─
howl version.

 Hell Yeah! (2020)
 ...

   How to connect such a joystick, for example─
measures toZX Evolution?
 Let's take the connector of the SEG controller:
 S=0 S=1
 1 UP UP
 2 DOWN DOWN
 3 0 LEFT
 4 0 RIGHT
 5 +5V
 6 A B
 7 S
 8 GND
 9 Start C
 Signal S here is the manager. As seen in
third column, turning it on changes the
maintaining the controller - from some lines
other buttons are read.
   On ZX Evolution to connectorX12
signals Kempston Joystick (contacts with 15
by  20 ), as well as a mechanical keyboard
(contacts from1 to8and from10 to14).There are 
GND, but no  +5V, Start/C  and control 
signal  S. Under the missing signals  S and 
START/C you can use fur contacts─ 
nic keyboard.  With these keyboards
rarely anyone uses them anymore, it’s even difficult
get it. Although there are rumors that they use─
whether BCwere recently able to re-release the batch
keyboards MS-7007 in the companyMaster Keyin
Ryazan. A +5V is better to take separately from the power supply.
   Let us assume that the signals match
like this:
 S=0 S=1  X12
 1 UP UP  18
 2 DOWN DOWN  19
 3 0 LEFT  16
 4 0 RIGHT  17
 5 +5V  /With power supply/
 6 A B  20
 7 S  3
 8 GND  15
 9 Start C  6
 That is, in this way, we will take away from me─
mechanical keyboard  2  and 5 half row, but
let's keep the connectivitySinclair
1  and  Sinclair 2. But for this to work also 
provided the missing bits to the port #1F,
you need to have a special firmware on your computer─
taste of FPGA. This firmware was developed byRoman
(maddev) in 2020 year. 
   Support extended extended
Kempston Joystick  is in the emulator 
Xpeccy. It is enough to enable support up to─ 
additional buttons in the settings.
   In  Unreal Speccy 0.39  is still supported
only 7 bits from 8  (KLEFT, KRIGHT, KUP, 
KDOWN, KFIRE, KFIRE1, KFIRE2, KFIRE3,where 
KFIRE=KFIRE1 ). 

 * * *

At the same time, a similar scheme forZX Evo 
developed andDimkaM,he also made the firmware 
with the ability to select joystick layouts, 
but this firmware is not published yet, because 
whatit is possible to save the work─ 
property of a mechanical keyboard.  Easier 
all this can be done by transferring the signal  S 
(SEL)gamepad to signalRSTkey connector─ 
viatures. But the firmware will have to be rewritten: 
RST  will no longer work as a reset by 
by default, only when shorted to ka─ 
any half-row of the keyboard (for example, 
first). 

 * * *

 Do you know that there is a scheme
Kempston Mouse from Velesoft with add─  
right mouse on the ports #0ADF (buttons),#0BDF (X), #0FDF (Y)? :) 

Share your thoughts about the article