Kempston Mouse Interface je rozhraní pro připojení myši k počítačům Amstrad CPC, Amstrad PCW a Sinclair ZX Spectrum. Pro oba typy počítačů tento interface existuje v odlišném provedení. Původní interface byl vyráběn společností Kempston Micro Electronics Ltd. Myš připojená prostřednictvím tohoto interface je označován jako Kempston mouse (česky myš Kempston) nebo KMouse. Myš připojená pomocí Kempston Mouse Interface se stala standardním zařízením u ruských klonů ZX Spectra.[1]
Na rozdíl od konkurenční AMX Mouse je Kempston mouse dvoutlačítková. Na rozdíl od A-Mouse není potřeba signály přicházející z myši dále softwarově zpracovávat, neboť interface poskytuje přímo souřadnice polohy myši v rozsahu hodnot 0 – 255.
Kempston mouse je emulována v emulátoru Speccy.[3]
Jako Kempston mouse je označována také myš dodávaná k počítačům Kompakt profesional a Kompakt 128, ta ale není kompatibilní s Kempston Mouse Interface, její název je odvozen ze skutečnosti, že myš je připojena tak, že simuluje Kempston joystick.[4]
Technické informace
Amstrad CPC
Interface ke své činnosti používá tři porty 64239, 64494 a 64495 s následujícím významem:[5]
desítkově
šestnáctkově
význam
64239
FAEF
tlačítka myši
64494
FBEE
souřadnice X myši
64495
FBEF
souřadnice Y myši
Amstrad PCW
Interface ke své činnosti používá tři porty 208, 209 a 212 s následujícím významem:[6]
desítkově
šestnáctkově
význam
208
D0
souřadnice X myši
209
D1
souřadnice Y myši
212
D4
tlačítka myši
Sinclair ZX Spectrum
Interface ke své činnosti používá tři porty 64223, 64479 a 65503 s následujícím významem:[7]
Po rozšíření myší s kolečkem Velesoft navrhl rozšíření tohoto interface tak, že stav kolečka byl čten na portu 65247/FEDF, ovšem kvůli kompatibilitě s ruským rozšířením myši o čtení stavu kolečka bylo od tohoto rozšíření upuštěno.[9] Ruské rozšíření Kempston Mouse Interface umožňuje číst stav kolečka a prostředního tlačítka myši na nevyužitých bitech portu 64223.
KMouse Turbo 2008
Velesoft je autorem varianty Kempston Mouse Interface nazvané KMouse Turbo 2008, která umožňuje připojení dvou myší.[10] V této verzi primární myš používá stejné porty jako Kempston Mouse Interface, sekundární myš používá porty nové. Pokud mají být k počítači připojeny dvě myši, je nutné použít dva interfacy, z nichž jeden je nakonfigurován jako primární a druhý jako sekundární. Interface umožňuje také připojení joysticku, který je v případě primárního interface adresován jako Kempston joystick, v případě sekundárního interface je adresován jako Fuller joystick. Pokud je k interface připojena jak myš, tak joystick, obě zařízení nemohou pracovat současně, aktivní je pouze jedno z nich (to na kterém bylo jako poslední stisknuto některé z jeho tlačítek).
Interface také umožňuje místo joysticku připojit myš od počítačů Amiga. Pokud je tato detekována, myš se chová současně jako Kempston mouse i jako A-Mouse. I v tomto případě může být připojena i standardní sériová myš, a stiskem některého z tlačítek na dané myši probíhá přepnutí jejich aktivity. Interface navíc obsahuje zapojení umožňující číst stav stránkovacího portu 7FFD ZX Spectra 128 K.
KMouse Turbo používá následující porty:
desítkově
šestnáctkově
dekódování
význam
64223
FADF
1xxxx0x0 11011111
primární myš: tlačítka, kolečko
64479
FBDF
1xxxx0x1 11011111
primární myš: souřadnice X
65503
FFDF
1xxxx1x1 11011111
primární myš: souřadnice Y
65503
FEDF
1xxxx1x0 11011111
hodnota stránkovacího portu 7FFD
15071
3ADF
0xxxx0x0 11011111
sekundární myš: tlačítka, kolečko
15327
3BDF
0xxxx0x1 11011111
sekundární myš: souřadnice X
16351
3FDF
0xxxx1x1 11011111
sekundární myš: souřadnice Y
16095
3EDF
0xxxx1x0 11011111
čtení: hodnota stránkovacího portu 7FFD zápis: inhibit primární a sekundární myši a Fuller joysticku
volitelně:
31
1F
00011111
Kempston joystick/AMouse – pouze primární interface
TS1000, TS1500, TS2068, TS2048, TC2068, TC2048 (prototypy: TS2000, TS2016, TS2048, TS2068, TS2072, TC3256) Přestože některé z prototypovýchh počítačů mají stejné názvy jako sériově vyráběné počítače, nejedná se o stejné počítače.