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: 7718 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: 7718 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: 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: 7718 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: 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: 7718 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: 7718 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. |