Source file: /~heha/hs/kcemu/kcswberg.zip/DISK/MOUSEDOC.TXW

Beschreibung f}r die MOUSEALL-Treiber
=====================================
îSerielle Maus am KCâ

 Nachdem  Herr Felgentreu eine parallele Maus f}r den KC vorgestellt hat, soll
nun  eine  Anschlu~m|glichkeit	einer  seriellen PC-Maus an den	KC beschrieben
werden.	Die Vorteile sind ein {u~erst geringer Hardwareaufwand und die Nutzung
des zumeist freien 2. Kanals eines M003	V.24.
 Voraussetzungen  sind	eine Mouse-Systems-kompatible Drei-Tasten-Maus und ein
M003  V.24. Die	meisten	Microsoft-kompatiblen M{use haben auf ihrer Unterseite
einen  Schiebeschalter,	 mit  "2" und "3" beschriftet, mit dem die Maus	in den
Mouse-Systems-Modus  gebracht werden kann. Dazu	ist dieser Schiebeschalter auf
Position  "3"  zu  stellen.  Reine Microsoft-M{use, erkennbar an nur 2 Tasten,
sind  mit dieser Treibersoftware nicht anschlie~bar, es	ist jedoch prinzipiell
m|glich. Im Muster tut es eine 30-DM-Maus "ELITE" von Kaufhof.
 F}r den Anschlu~ der Maus ist ein Adapterst}ck	vom 9- (oder 25-)poligen
Sub-D-Stecker zum 5poligen DIN-Diodenstecker erforderlich, welches selbst
herzustellen ist. Daf}r	ben{tigt man 1 Diodenstecker 5polig, 1 9- bzw.
25polige Sub-D-Steckerleiste ("Papa"), eine passende Posthaube und ein St}ck
4poliges Kabel.	Folgende Anschl}sse sind miteinander zu	verbinden:

      /─────╠	    /───────────╠	/───────────────────────────╠
    4/ o ¿ o ╠5	   5╠ o	o o o o	/1    13╠ o o o	o o o o	o o o o	o o /1
   1│ o	 2  o │3    9╠ o o o o /6      25╠ o o o o o o o o o o o o /14
    │	      │	       ───────		   ───────────────────────
     ╠	     /
      ╠─────/	    Blick auf L|tseite

RxD	  1 ────────── 2 ─────────────────── 3
GND	  2 ────────── 5 ─────────────────── 7 (Abschirmung)
TxD	  3 ────────── 3 ─────────────────── 2
DTR	  5 ────────── 4,7 ───────────────── 4,11,20

     DIN-5pol.	     Sub-D 9pol.	   Sub-D 25pol.

 Mehr Bastelaufwand ist	nicht erforderlich!! Das Adapterkabel ist zudem	uni-
versell	zur KC-PC-Kopplung einsetzbar.

 Nun zur Treibersoftware. Es gibt 3 Versionen, die sich	im Komfort und im
Speicherplatzbedarf unterscheiden. Alle	Programme sind auf KC85/2, /3 und /4
gleicherma~en lauff{hig, m}ssen	aber wegen einiger Arbeitszellen im RAM
stehen.	Die einfachste Version ist

MOUSE0.KCC.
 Dieser	 Treiber  mit  einer  L{nge unter 100h ist wie die beiden anderen auch
frei  im  Speicher  verschieblich. Er ist fest eingestellt auf die Nutzung des
Kanals 2 (rechts) des 1. gefundenen V.24-Moduls. Meist wird am Kanal A der
Drucker	angeschlossen sein. Nach dem Men}wort %MOUSE k|nnen 2 Parameter
angegeben werden.
1. Parameter: Tastencode der rechten Maustaste (hexadezimal!)
	      Wenn =0, dann Totlegen des Maustreibers
2. Parameter: Sensitivit{t der Mausbewegung, getrennt nach X (Low-Teil)	und Y
	      (High-Teil) innerhalb der	Hexadezimalzahl. Optimal ist 1010.
	      Gro~e Zahlen bedeuten eine geringere Sensitivit{t.

 Werden	1 oder beide Parameter weggelassen, werden die vorhergehenden Werte
beibehalten und	die evtl. totgelegte Maus reinitialisiert. Nach	Reset gen}gt
es so zumeist, einfach %MOUSE aufzurufen.

 Softwarem{~ig werden die Mausbewegungen in Cursorfunktionen gewandelt.	Auf
diese Weise kann man den Cursor	beliebig bewegen und braucht keinen extra
Mauszeiger. Die	linke Maustaste	ist fest mit "ENTER" belegt, die rechte	kann
man wahlfrei belegen. Defaultm{~ig wird	"F6" angenommen. Die mittlere
Maustaste dient	zum Ein- und Ausschalten der Cursorbewegungen von der Maus.
Sonst passiert es h{ufig, da~ man z.B. beim Eintippen von Text an die Maus
anst|~t	und den	Cursor unbemerkt verschiebt, da	man meist unentwegt auf	die
Tastatur schaut.
 Achtung! - der	Maustreiber mu~	in einem Speicherbereich liegen, der JEDERZEIT
im Zugriff ist.	Insbesondere darf der Treiber bei Verwendung in	BASIC oder
Riemer-WordPro,	die ihrerseits bei freigegebenem Interrupt den IRM schalten,
NICHT im IRM stehen. Bei BASIC empfiehlt sich der Bereich 200h-300h, wenn
}berhaupt, und bei WordPro (hier recht zweckm{~ig) der Bereich ab C000h.

 Speziell f}r KC85/4-User mit einer Schreibmaschine als	Eingabeger{t und
Drucker	am Kanal 2 der SIO ist der Treiber

MOUSE1.KCC  da.
 Hier besteht das wenig	bekannte SIO-Problem, da~ eine SIO eigentlich nur
einen interruptf{higen Kanal hat. Mit einem speziellen Softwaretrick ist es
m|glich, die Maus am Kanal 1 (links) anzuschlie~en und beide Kan{le per
Interrupt zu betreiben.	MOUSE1.KCC erm|glicht aber auch	den Anschlu~ an
selbstgebastelte V.24-Module mit anderer SIO-Adresse. Voraussetzing ist
hierbei	nur, da~ die CTC genau wie im V.24-Modul adre~m{~ig der	SIO folgt.
Die Parameter sind:
1. Parameter: -	V.24-Kanal-Nummer des M003 (1 oder 2)  oder
	      -	SIO-Kanal-Buchstabe (A oder B) des M003	 oder
	      -	SIO-Kanal-Adresse (>10h) eines USER-Moduls  oder
	      -	Totlegen des Maustreibers, wenn	Parameter =0
2. Parameter: Tastencode der rechten Maustaste (wie oben 1. Parameter)
3. Parameter: Sensitivit{t der Mausbewegungen (wie oben	2. Parameter)

 Das Programm ist etwas	l{nger als 100h	lang.

 Es  soll  tats{chlich KC-User geben, denen 1 V.24-Modul nicht reicht! Drucker
(plural!),  Netzwerk,  Tastatur,  Plotter und viele andere m|gliche Peripherie
schreien  manchmal  nach  m|glichst  vielen  Buchsen.  Nun unterst}tzt CAOS im
Gegensatz  zu  seiner  Beschreibung  kaum den Einsatz mehrerer solcher Module.
Denn  das w}rde	erfordern, da~ die Module m|glichst ausgeschaltet gehalten und
nur  bei  Zugriff  kurz	eingeschaltet werden. Es wurde versucht, einen kleinen
Schritt	 nach  vorn zu gehen, indem die	Maus an	dem 2. V.24-Modul anschlie~bar
ist,  das  sich	f}r gew|hnlich im "Schatten" des 1. befindet. Es geht! - trotz
Interrupt. Mit dem Treiber

MOUSE2.KCC
 kann die Maus an jeder	Buchse von 2 V.24-Modulen angeschlossen	werden.	Es
sind 4 Parameter angebbar:
1. Parameter: Steckplatz desjenigen V.24-Moduls, an dem	die Maus h{ngt
	      Wenn =0, dann Totlegen der Maus
2. - 4.	Parameter: wie 1. - 3. Parameter bei MOUSE1.KCC

Auch bei diesem	Programm ist es	m|glich, eine USER-SIO mit der Mausabfrage zu
besch{ftigen. Die Programml{nge	betr{gt	ca. 1C0h.

Viel Spa~ mit Ihrer neuen Maus w}nscht haftmann#software.

P.S. Es	existiert bereits ein Maustreiber mit "echtem" Mauspfeil, vorerst nur
am KC85/4. Die Spriteverwaltung	macht aber eine	Umlenkung aller	Betriebssy-
stemroutinen erforderlich, soda~ ein neues Betriebssystem (siehe Modulliste:
M000!) f{llig wird! Mal	sehen, wie lange die Ideenumsetzung dauert...

îNoch einige Hinweise bei Problemenâ

 -  Wenn die Maus an einen KC85/4 Kanal	2 (rechts) am 1. V24-Modul angeschlos-
sen  wird,  darf  die  Maus nicht bewegt werden, da sonst gelieferte Bytes als
Tastencodes  interpretiert  werden  (wenn  mal	ein  0Dh  dabei	 gewesen ist).
Andererseits  l{~t  sich  auf diese supereinfache Weise	die prinzipielle Maus-
Funktion nachweisen. Zur Unterdr}ckung solcher Randeffekte mit der Maus	gen}gt
blo~es Anw{hlen	von %V24OUT (Umschalten	in den Pollingbetrieb).

 -  Funktioniert die Maus absolut nicht, kann es sein (insbesondere bei	billi-
gen  M{usen),  da~  die	 negative  Spannung  nicht ausreicht. Hierbei ist eine
Modifikation des V24-Moduls vonn|ten:
 Auf der Leiterseite d}rfte sich ein Widerstand	befinden. Dieser entspricht so
nicht  dem  Original-Schaltplan.  Er  ist  dort	abzul|ten und in die leicht zu
findenden L|taugen auf der Best}ckungsseite hinter den 4 Miniplastdioden
einzusetzen, wo	er nach	Schaltplan auch	hingeh|rt.
findenden L|taugen auf