🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: fras.text.programmieren
6 messages
6 total messages Started by Steffen Zimmert Mon, 25 Mar 1996 11:26
Tastaturabfrage
#93
Author: Steffen Zimmert
Date: Mon, 25 Mar 1996 11:26
16 lines
1254 bytes
Hallo, Kenner des AmigaOS!

Da ich fuer mich so etwas aehnliches wie den `ToolManager`
programmieren moechte, braeuchte ich dazu noch ein paar
Informationen. Damit das Starten von Programmen ueber eine gewisse
Taste oder Tastaturabkuerzung funktioniert, muss das Programm doch
alle Tastatureingaben abfangen, oder? Also muesste ich dazu einen
Input-Handler schreiben, der sich auf oberster Ebene in das System
einklingt. Leider habe ich keine Ahnung, wie man so etwas macht...

Kann mir jemand von Euch da etwas weiterhelfen??
 
        MfG,    Steffen

|| S.Zimmert@AME.osn.de  --  snzimmer@cip.informatik.uni-erlangen.de
|| PGP-Fingerprint = A0 4D B5 89 4F B1 07 91 AF C2 A5 A7 84 19 8E 9F
Re: Tastaturabfrage
#94
Author: Lars Dannenberg
Date: Tue, 26 Mar 1996 22:54
12 lines
743 bytes
Steffen Zimmert (S.ZIMMERT@AME.osn.de) wrote:

> Kann mir jemand von Euch da etwas weiterhelfen??

RKRM Libraries 3rd Ed. p.727-753.

Wenn Du die RKRMs nicht hast, vergiss Dein Vorhaben am besten gleich
wieder.

	mfG,	Lars
-- 
Lars Dannenberg, Lange Str. 11, D-30952 Ronnenberg
Re: Tastaturabfrage
#95
Author: Joerg Holle
Date: Wed, 27 Mar 1996 12:04
73 lines
3522 bytes
>>Hallo, Kenner des AmigaOS!

>>Da ich fuer mich so etwas aehnliches wie den `ToolManager`
>>programmieren moechte, braeuchte ich dazu noch ein paar
>>Informationen. Damit das Starten von Programmen ueber eine gewisse
>>Taste oder Tastaturabkuerzung funktioniert, muss das Programm doch
>>alle Tastatureingaben abfangen, oder? Also muesste ich dazu einen
>>Input-Handler schreiben, der sich auf oberster Ebene in das System
>>einklingt. Leider habe ich keine Ahnung, wie man so etwas macht...

>> Kann mir jemand von Euch da etwas weiterhelfen??

>RKRM Libraries 3rd Ed. p.727-753.

>Wenn Du die RKRMs nicht hast, vergiss Dein Vorhaben am besten gleich
>wieder.

>	mfG,	Lars
>-- 
>Lars Dannenberg, Lange Str. 11, D-30952 Ronnenberg

[persoenliche Bemerkung ON]
Was sollte denn dieser 'hilfreiche' Kommentar ? Ein weiteres
Posting, um die manchmal in dieser NewsGroup herrschende Arroganz 
mancher 'Kenner des AmigaOS' zu plegen, oder was ?
[persoenliche Bemerkung OFF]

So schwer ist es jetzt auch nicht, einen Inputhandler zu schreiben, der
Tastatureingaben abfaengt, auch _ohne_ das RKRM zu besitzen.

Eine gewisses Wissen um bestimmte Strukturen muss man allerdings schon
haben, dafuer gibt es aber auch andere Quellen, wie das (leider,
manchmal recht fehlerhafte) 'InternII' oder einfach nur die
entsprechenden C-/Assembler-Includes.

Wenn Du allerdings noch nie von Devices gehoert hast oder wie man eines
benutzt, dann wird's schon etwas schwierig ...

Naja, hier jedenfalls eine grobe Vorgehensweise:

- InputDevice oeffnen (incl. MessagePort vorher einrichten,
  StdIOReq-Struct einrichten, das uebliche eben, um ein Device zu
  oeffnen ...)
- InputHandler-Struktur initialisieren (eigentlich nur eine
  InterruptHandler-Struktur -> s. dort; Prioritaet am Besten ueber dem
  des System-InputHandlers in Deinem Fall)
- InputDevice mit Kommando IND_ADDHANDLER aufrufen (DoIO()) und so den
  InputHandler aktivieren
- dieser Handler bekommt jetzt im Register a0 eine InputEvent-Struktur
  uebergeben; diese ist nach Wunsch abzufragen (RAWKEY oder nicht ?)
- Rueckgabewert: d0=InputEvent/NULL => weitere Handler
  zulassen/ignorieren (fuer Deine Zwecke also wohl NULL)
[ Zu den letzten 2 Punkten: Wie das in C funktioniert, weiss ich leider
nicht ... weitere Hilfen dazu (auch von mir) erwuenscht]
- Aufraeumen am Ende entsprechend (Entfernen des Handlers mit Kommando
  IND_REMHANDLER und dann analog weiter etc.)

Ich hoffe, dass das etwas weitergeholfen hat.

Tschuess
Joerg

 ----------------------------------------------
| Joerg Holle        |   'Anger is an energy'  |
| holle@ira.uka.de   |       (John Lydon)      |
 ----------------------------------------------

-- 
 ----------------------------------------------
|                    |                         |
| Joerg Holle        |   'Anger is an energy'  |
| holle@ira.uka.de   |       (John Lydon)      |
Re: Tastaturabfrage
#97
Author: Andreas Winkelmann
Date: Wed, 27 Mar 1996 13:12
22 lines
1409 bytes
Hallo Steffen.

> Da ich fuer mich so etwas aehnliches wie den `ToolManager`
> programmieren moechte, braeuchte ich dazu noch ein paar
> Informationen. Damit das Starten von Programmen ueber eine gewisse
> Taste oder Tastaturabkuerzung funktioniert, muss das Programm doch
> alle Tastatureingaben abfangen, oder? Also muesste ich dazu einen
> Input-Handler schreiben, der sich auf oberster Ebene in das System
> einklingt. Leider habe ich keine Ahnung, wie man so etwas macht...
> 
> Kann mir jemand von Euch da etwas weiterhelfen??

In den Sourcecodes zu den ARKRMs ist ein Beispiel für einen
Input-Handler drin. Schau ins Devices/Input.Device Verzeichnis.
Leider ist dort die eigentliche Handler-Routine in Asm. Ich
glaube aber da war auch irgendwo in den ARKRMs ein Beispiel in C
abgedruckt.

-----
Andreas Winkelmann

E-Mail : andi@art-line.de -- MicroDot V1.11beta16
Re: Tastaturabfrage
#96
Author: Danny Lade
Date: Wed, 27 Mar 1996 16:21
25 lines
1627 bytes
Steffen Zimmert (S.ZIMMERT@AME.osn.de) wrote:
: Hallo, Kenner des AmigaOS!

: Da ich fuer mich so etwas aehnliches wie den `ToolManager`
: programmieren moechte, braeuchte ich dazu noch ein paar
: Informationen. Damit das Starten von Programmen ueber eine gewisse
: Taste oder Tastaturabkuerzung funktioniert, muss das Programm doch
: alle Tastatureingaben abfangen, oder? Also muesste ich dazu einen
: Input-Handler schreiben, der sich auf oberster Ebene in das System
: einklingt. Leider habe ich keine Ahnung, wie man so etwas macht...

: Kann mir jemand von Euch da etwas weiterhelfen??
:  
Hmmm, ich hab mal sowas geschrieben. 
Ich fang, seit neuestem, immer die RawCodes vom aktiven Fenster auf und
verwerte die weiter ... bedingung ist natuerlich das die auch vom Window
angefordert werden.
Ich schau mal ob ich den Quelltext finde zu dem Handler, ich hab damit die
Maus blockiert, aber das ist ja fast das selbe.

						Danny

Sagt der Pessimist: "Es ist schon so schlimm, es kann nicht mehr schlimmer
                     werden."
Sagt der Optimist: "Oh DOCH !!!"
Re: Tastaturabfrage
#98
Author: Lars Dannenberg
Date: Thu, 28 Mar 1996 11:50
43 lines
2153 bytes
Joerg Holle (holle@ira.uka.de) wrote:

> [persoenliche Bemerkung ON]
> Was sollte denn dieser 'hilfreiche' Kommentar ? Ein weiteres
> Posting, um die manchmal in dieser NewsGroup herrschende Arroganz 
> mancher 'Kenner des AmigaOS' zu plegen, oder was ?
> [persoenliche Bemerkung OFF]

Nein.

Mein Kommentar war insofern hilfreich, als daß er die entsprechenden
Stellen im RKRM Libraries aufgezeigt hat.  Was soll ich denn machen?
30 Seiten über die 'Commoditie Exchange Library' aus besagtem Buch
abtippen?

Es kann nicht Sinn und Zweck von z-netz.rechner.amiga.programmieren
sein, elementare Literatur zum AmigaOS zu ersetzen.

Die RKRMs, insbesondere das Libraries sind nun einmal für das
Verstehen des AmigaOS _notwendig_.

> So schwer ist es jetzt auch nicht, einen Inputhandler zu schreiben, der
> Tastatureingaben abfaengt, auch _ohne_ das RKRM zu besitzen.
> 
> Eine gewisses Wissen um bestimmte Strukturen muss man allerdings schon
> haben, dafuer gibt es aber auch andere Quellen, wie das (leider,
> manchmal recht fehlerhafte) 'InternII' oder einfach nur die
> entsprechenden C-/Assembler-Includes.

Und genau das reicht nicht. Programmen, die auf der Basis von 'Intern'
und den Includes entstanden sind, sieht man dieses auch meist an - sei
es in Zusammenarbeit mit anderen Programmen (gerade beim Thema
InputHandler) oder beim Wechsel von OS, Prozessor, Grafikkarte o.ä..

> Naja, hier jedenfalls eine grobe Vorgehensweise:

Das ist die OS <2.0 Methode. Ab V37 gibt es dafür die Commodities
Exchange Library.


	mfG,	Lars
-- 
Lars Dannenberg, Lange Str. 11, D-30952 Ronnenberg
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads