amiga-news DEUTSCHE VERSION
.
Links| Forums| Comments| Report news
.
Chat| Polls| Newsticker| Archive
.

amiga-news.de Forum > Programmierung > OpenDevice unter Basic [ - Search - New posts - Register - Login - ]

-1- [ - Post reply - ]

2003-11-06, 08:44 h

chkamiga
Posts:
[Former member]
Hallo,

ich wollte demnächt mal ein Programm veröffentlichen. Es muss aber noch dafür angepasst werden.

Jetzt gehts nur mit dem Internen Serial-Port(OPEN Com1:...).
So wie öffne ich jetzt z.B. serial.device oder silversurfer.device und wie kann ich dann Daten darüber Senden und Empfangen? Wie gesagt unter (Maxon) Basic das ganze. Unter google find ich da nix.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2003-11-06, 11:25 h

thomas
Posts: 7717
User

Ich würde mal sagen, gar nicht. Wenn du COM1: öffnen kannst, ist das etwas Basic-spezifisches, sowas gibt es bei AmigaOS nicht. Versuch mal, ob es mit SER: auch funktioniert, dann könnte man evtl. eine Mountlist basteln, die mit einem anderen Device als serial.device arbeitet (vielleicht ist beim Silversurfer ja sogar eine dabei).

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: home.t-online.de/home/thomas-rapp/

[ - Answer - Quote - Direct link - ]

2003-11-06, 11:44 h

Kronos
Posts: 1168
User
Oder du schaust mal wie unter Maxon-Basic der direkte Zugriff auf
AOS-Funktionen gelöst ist (selbst AmigaBasic konnte das schon *würg*),
und ruftst OpenDevice() auf.

MfG
Kronos

--

Only the good die young all the evil seem to live forever

[ - Answer - Quote - Direct link - ]

2003-11-06, 12:44 h

thomas
Posts: 7717
User

Da kannst du dich aber sehr leicht verzetteln. Denn zunächst mal braucht OpenDevice einen IORequest und einen ReplyPort und dann kannst du darauf nicht mit print oder wie auch immer zugreifen, sondern mußt DoIO, SendIO und WaitIO benutzen. Das könnte kompliziert werden :-)

Gruß Thomas


--
Email: thomas-rapp@web.de
Home: home.t-online.de/home/thomas-rapp/

[ - Answer - Quote - Direct link - ]

2003-11-06, 13:04 h

chkamiga
Posts:
[Former member]
Mit MaxonBasic kann man auch Library zuriffe machen.
Unter C gibts ja auch programme die über librarys auf den
Serial-Port zugreifen und das meine ich blos in Basic.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2003-11-07, 08:44 h

Wishmaster
Posts: 140
User
Kann Mann alles auf der Dev-CD nachlesen.
Kaufen!

[ - Answer - Quote - Direct link - ]

2003-11-07, 10:12 h

chkamiga
Posts:
[Former member]
Zitat:
Original von Wishmaster:
Kann Mann alles auf der Dev-CD nachlesen.
Kaufen!



Ja, für C aber micht für Basic...
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2003-11-07, 11:52 h

thomas
Posts: 7717
User

Wenn du weißt, wie man aus Basic heraus OS-Funktionen aufruft, kannst du die C-Beispiele leicht auf Basic umsetzen.

Aber wie gesagt, das mit Device-I/O ist sehr viel komplizierter als einfach mit DOS-Open/Read/Write/Close darauf zuzugreifen.

Probier mal, ob du statt COM1 auch SER benutzen kannst. Bei den meisten 3rd-Party Schnittstellenkarten ist ein SER-kompatibler DOS-Driver dabei (oder man kann leicht einen machen).

Gruß Thomas
--
Email: thomas-rapp@web.de
Home: home.t-online.de/home/thomas-rapp/

[ - Answer - Quote - Direct link - ]

2003-11-07, 15:43 h

chkamiga
Posts:
[Former member]
Zitat:
Original von thomas:

Wenn du weißt, wie man aus Basic heraus OS-Funktionen aufruft, kannst du die C-Beispiele leicht auf Basic umsetzen.

Aber wie gesagt, das mit Device-I/O ist sehr viel komplizierter als einfach mit DOS-Open/Read/Write/Close darauf zuzugreifen.

Probier mal, ob du statt COM1 auch SER benutzen kannst. Bei den meisten 3rd-Party Schnittstellenkarten ist ein SER-kompatibler DOS-Driver dabei (oder man kann leicht einen machen).

Gruß Thomas
--
Email: thomas-rapp@web.de
Home: home.t-online.de/home/thomas-rapp/



Wenn ich das könnte würde ich nicht fragen...
Ich möchte aber nicht das jeder der das Programm benutzen will
einen DOS-Treiber starten muss.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-08, 17:41 h

chkamiga
Posts:
[Former member]
Keiner eine ahnung? Ist zum verzweifeln, ich probiere
schon 3 Tage hier ohne erfolg rum.

Hat vielleicht wenigstens jemand einen Kurzes C-Beispiel
dafür?
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-08, 18:01 h

JensB
Posts: 193
User
Hi,

ich habe noch die Extras1.3 Diskette (ja im Orginal) mit einigen Basic
beispielen ich kann dir die Beispliele ja mal per eMail senden . Ich weiss jetzt aber nicht mehr ob da was passendes drauf ist . Ich habe auch noch ein altes Buch zu AmigaBasic ich schau da auch mal nach aber ich glaube du musst es so machen wie Thomas das schon angedeutet hat.

Mfg JensB

[ - Answer - Quote - Direct link - ]

2004-01-08, 19:00 h

chkamiga
Posts:
[Former member]
Die 1.3er habe ich auch und 2 Amiga-Basic Büchern.
Leider wird da nicht so auf die Library aufrufe eingegangen.

Ja, das Prinzip habe ich halbwegs verstanden, aber ich
brauche schon ein beispiel.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-08, 19:10 h

JensB
Posts: 193
User
Ich hatte mal ein Beispiel wo die Druckerschnittstelle angesprochen wurde ,ich such mal.

[ - Answer - Quote - Direct link - ]

2004-01-08, 20:13 h

chkamiga
Posts:
[Former member]
Das habe ich auch, SuperPrint, ScreenPrint und Amiga-Paint.

Es Funktioniert aber nicht wenn ich anstatt printer.device
serial.device eintrage. Jedenfalls passiert am Modem da
gar nix.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-11, 16:06 h

chkamiga
Posts:
[Former member]
Ich poste mal mein zusammengebastelten Quelltext, vielleicht
weiss ja einer warum der nicht Funktioniert.

'$INCLUDE serial.bc
'$INCLUDE Exec.bh
REM $INCLUDE BLib/ExecSupport.bas

LIBRARY OPEN "exec.library"

'*** CreatePort ***
port& = CreatePort&(NULL&, 0)
IF port&<>0 THEN PRINT "Port Okay"
SerIO&=CreateExtIO&(port&,31537&)
IF SerIO&=0 THEN PRINT"IO Failet" ELSE PRINT"IO Okay"
POKEW(Serio&+io_SerFlags%),SERF_SHARED&
dev$="silversurfer.device"+CHR$(0):Unit&=1
device& = OpenDevice&(SADD(dev$), Unit&, Serio&, 0&)
IF device&=0 THEN PRINT "Device Fail":END

POKEL(SerIO&+io_Baud%), 115200& 'Baud
POKEL(SerIO&+IOStdReqio_Command%), SDCMD_SETPARAMS&

ioError& = DoIO&(SerIO&)
IF ioError& <> 0 THEN
PRINT "DOIO Fehler1 =" ioError&
GOTO cleanup1
ELSE PRINT"1.DoIO Okay"
END IF

komando$="ATDT01736465793"

POKEL(SerIO&+IOStdReqio_Command%), CMD_WRITE&
POKEL(SerIO&+IOStdReqio_Length%), 15&
POKEL(SerIO&+IOStdReqio_Data%), SADD(komando$)

ioError& = DoIO&(Serio&)
IF ioError& <> 0 THEN
PRINT "DOIO Fehler2 =" ioError&
GOTO cleanup1
ELSE PRINT"2.DoIO Okay"
END IF

cleanup1:
CALL CloseDevice(device&)

--------------------------------------------------
Bis zu Opendevice scheint es zu Funktionieren.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-11, 18:57 h

thomas
Posts: 7717
User

Es funktioniert alles, du weißt nur nicht, wie man damit umgeht.

Mensch, besorg dir doch endlich mal die Autodocs !!!

OpenDevice gibt eine Fehlernummer zurück oder 0 wenn es geklappt hat.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: home.t-online.de/home/thomas-rapp/

[ - Answer - Quote - Direct link - ]

2004-01-11, 18:59 h

thomas
Posts: 7717
User
Und einfach aus dem Programm rausspringen ist auch nicht richtig. Du mußt die Sachen, die du angelegt hast (Port, SerIO) auch wieder freigeben. Basic kennt die nicht und macht das deshalb auch nicht für dich.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: home.t-online.de/home/thomas-rapp/

[ - Answer - Quote - Direct link - ]

2004-01-11, 20:21 h

chkamiga
Posts:
[Former member]
Habe die Autodocs von OS3.9, kann sie aber nicht verstehen.

Ja, das mit dem Rausgehen ist richtig, hab ich auch inzwischen
korrigiert. Das Programm stürtzt nach dem 2.Start ab, allerdings
meldet es beim 2.mal das OpenDevice Funktioniert hat.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-11, 20:28 h

chkamiga
Posts:
[Former member]
Ups, sch** wo hab ich das mit dem Device denn her?

Okay, korrigiere ich gleich.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-12, 16:04 h

chkamiga
Posts:
[Former member]
Okay, habs jetzt, denke ich geschafft.
--
http://people.freenet.de/CHRAmiga.de

CHRKUM@web.de

[ - Edit - Answer - Quote - Direct link - ]

2004-01-12, 23:37 h

bubblebobble
Posts: 707
User
Ich habe Blitzbasic Code dafür, sollte leicht
zu übersetzen sein, sofert MAxon Basic Functionen
unterstützt. Ist eigentlich für MIDI gedacht, aber man
kann alles senden was man will.
Wenns dich interessiert frag mich per Email.

[ - Answer - Quote - Direct link - ]


-1- [ - Post reply - ]


amiga-news.de Forum > Programmierung > OpenDevice unter Basic [ - Search - New posts - Register - Login - ]


.
Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved.
.