File: /~heha/hs/t_und_m.zip/TYPHOON.TXT

===========================================================
TYPHOON.DLL  -  Mausrad- und X-Tasten-Unterstützung für die
		optische Typhoon-Maus unter Windows 95
===========================================================

Diese DLL ist für den Einsatz mit der oben genannten Maus
unter Windows 95 gedacht. Unter Windows 98 funktioniert
der Treiber nun auch (mit einer Boeder-Maus im Testfall).

Bei Windows 98 wird mit diesem Treiber die originale
Funktionalität des Mausrades totgelegt; programmspezifische
Funktionen wie Vergrößern/Verkleinern sind damit passé.

Mit Windows ME wurde noch nicht getestet.

Unter Windows 3.1 war der mitgelieferte Maustreiber nicht
dazu zu bewegen, für die neuen Funktionen irgendwelche
Nachrichten zu schicken. Deshalb ist hier ein Ersatztreiber
vonnöten, bestehend aus 2 Treibern, siehe unten!


Funktion:
---------
Nach eingehenden Überlegungen wurden folgende Funktionen
fest eingebaut. Wem's nicht passt, kann ja mit dem Quelltext
eine eigene DLL compilieren, oder eine Mail an mich schicken.

Natürlich wurde das Rollrad mit der vertikalen Rollfunktion
belegt; allerdings nur für Fenster, die einen vertikalen
Rollbalken aufweisen.
Ist nur ein horizontaler Rollbalken vorhanden (z.B. im
Datei-Auswahl-Dialog), wird horizontal gerollt.

Ist kein Rollbalken vorhanden, ist das Rädchen wirkungslos.
Hier Roll-Befehle zu versenden ergab interessante bis
chaotische Resultate, wie das Verschieben von Desktop-Symbolen
oder das Verschwinden von Multi-Dokument-Kindfenstern.
Die Ausnahme davon bilden Fenster, die irgendwo im sog.
Klassennamen ein "EDIT" oder "VIEW" enthalten.
Anstoß dafür war UltraEdit und der Acrobat Reader,
welche mit Extra-Rollbalken arbeiten und so keine "echten"
Rollbalken haben und sonst "taub" wären.

Wird der Mauspfeil auf einen vertikalen Rollbalken gehalten
und dann das Rad gedreht, wird nicht zeilen- sondern
seitenweise geblättert.
Auf den horizontalen Rollbalken gehalten wird horizontal
(nur in "kleinen" Schritten) gerollt. Das klappt jedoch
leider nicht bei "abgesetzten" Rollbalken mancher Programme,
da wird dann auch vertikal seitenweise gerollt.

Die Belegung der seitlichen Tasten, der sog. X-Buttons,
sollte so erfolgen, dass eine unbeabsichtigte Betätigung
nicht gleich zum heillosen Durcheinander führt,
da die Typhoon-Maus durch ihre Form dazu verleitet.
Deshalb wurde wie folgt belegt:

Linker X-Button mit der Umschalttaste
Rechter X-Button mit der Strg-Taste

Die Belegung der mittleren Maustaste (Rollrad-Klick)
mit Doppelklick erfolgt durch MBUTDLL.DLL in gehabter Manier.
Die Kombination beider DLLs (TYPHOON.DLL und MBUTDLL.DLL)
war nicht naheliegend wegen verschiedener Ansatzpunkte,
und weil MBUTDLL.DLL auch unter Windows 3.1 verwendbar ist.


Konfiguration:
--------------
Die einzige Konfigurationsmöglichkeit betrifft die Anzahl der
Roll-Zeilen pro Roll-Schritt. Dieser ist mit 1 vorbelegt.
Vor dem Laden der DLL kann in die WIN.INI unter [Windows]
folgender Eintrag hinzugefügt werden:

MouseWheelScroll=<wert>

Achtung: Hohe Werte bedeuten auch eine höhere Systembelastung,
da dann mit jedem Roll-Tick mehrere Roll-Nachrichten versendet
und bearbeitet werden müssen, und leider sind die wenigsten
Programme in der Lage, diese Nachrichten zu akkumulieren
(aufgrund einer Dokumentations-Ungereimtheit von Microsoft).

Mit einem negativen Wert wird die Roll-Richtung umgedreht.

Die vervielfachende Wirkung beim seitenweisen Rollen bleibt
unbeeinflusst, nur das Vorzeichen entscheidet hier.

Nach Änderung dieses Wertes muss die DLL aus dem Speicher
entfernt und neu geladen werden (TaskKiller).


Installieren und Laden:
-----------------------
Die Dateien LOADLIB.EXE und TYPHOON.DLL werden ins Windows-
Verzeichnis (oder ein anderes lokales Verzeichnis) kopiert.

Mit folgender Kommandozeile, z.B. im Autostart-Menü,
wird die DLL geladen:

loadlib.exe typhoon.dll

Das Entladen der DLL ist nicht vorgesehen; dies kann der
versierte Anwender mit dem TaskKiller bewerkstelligen.


===========================================================
MOUSEDRV.DRV  - Maustreiber für Windows 3.x und Rollrad
MOUSEH.386	(nur Enhanced Mode; noch Bug mit DOS-Box)
===========================================================

Installieren und Laden:
-----------------------
Weil Windows 3.x nur noch von ganz hartgesottenen überhaupt
verwendet wird, und Rollmäuse mit diesem System zu den
Extremsportarten zählen, erwarte ich auch, dass der Anwender
mit folgender Hand-Installation zu Rande kommt:

Die beiden o.g. Dateien werden nach Windows, Windows/System
oder sonst irgendein permanentes Laufwerk kopiert und
in der SYSTEM.INI folgendes eingetragen:

[Boot]
mouse.drv=mousedrv.drv

[386Enh]
device=mouseh.386

Ggf. benötigte Pfadangaben und das Herauslöschen anderer
Maus-bezogener Komponenten (außer *vmd) seien hierbei als
bekannt und selbstverständlich vorausgesetzt.

Zusammen mit der oben aufgeführten Installation der
TYPHOON.DLL (und wahrscheinlich auch MBUTDLL.DLL) hat man nun
auch unter Windows 3.1 ein nahezu perfektes Eingabe-System.


Interna:
--------
Bei Betätigung des Rollrades wird die Nachricht MButtonUp
an mouse_event verschickt; dabei sind SI und DI (die
einstmals für Pen-Windows reserviert waren) wie folgt
belegt: DI=4001h, SI=vzb. Rollweite in 120er Schritten.

Ein (16- und auch 32-bit-) Programm bekommt daher die Meldung
WM_MButtonUp (?); dass es sich dabei um eine Rollrad-Aktion
handelt, kann mit GetMessageExtraInfo() erfasst werden.


Bugs:
-----
Dieser Maustreiber unterstützt die beiden X-Buttons NICHT.
(Ich habe nicht herausgefunden, wie die Maus dazu gebracht
wird.)

Bei DOS-Boxen im Vollbild scheint die Maus tot zu sein;
in Wirklichkeit agiert sie im (Windows-)Hintergrund!

Der Treiber MOUSEDRV.DRV verlässt sich voll auf die Präsenz
von MOUSEH.386 im Kernel (ist nämlich nur ein "verlängerter
Arm" des VxD); deshalb keine Funktion im Standard-Modus!

Die VxD-ID wurde der Einfachheit halber mal NICHT von Microsoft
bezogen; falls es Kollisionen gibt, bitte SOFORT MELDEN!



Copyright und Garantie:
-----------------------
Diese Programme sind Freeware und dürfen sowohl privat als
auch kommerziell verwendet werden. Gebühren dürfen nicht
erhoben werden.
Der Quelltext darf weiter verwendet werden. Fragen zum
Quelltext bitte an die unten angegebene Adresse mailen.

Ich übernehme keine Garantie für die Funktion des Programms,
und auch nicht für Schäden, die durch (meinerseits
ungewollte) Fehlfunktionen entstehen.


henrik.haftmann@e-technik.tu-chemnitz.de
Detected encoding: ANSI (CP1252)4
Wrong umlauts? - Assume file is ANSI (CP1252) encoded