ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > OpenDevice unter Basic | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
-1- | [ - Beitrag schreiben - ] |
06.11.2003, 08:44 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
06.11.2003, 11:25 Uhr thomas Posts: 7717 Nutzer |
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/ [ - Antworten - Zitieren - Direktlink - ] |
06.11.2003, 11:44 Uhr Kronos Posts: 1168 Nutzer |
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 [ - Antworten - Zitieren - Direktlink - ] |
06.11.2003, 12:44 Uhr thomas Posts: 7717 Nutzer |
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/ [ - Antworten - Zitieren - Direktlink - ] |
06.11.2003, 13:04 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
07.11.2003, 08:44 Uhr Wishmaster Posts: 140 Nutzer |
Kann Mann alles auf der Dev-CD nachlesen. Kaufen! [ - Antworten - Zitieren - Direktlink - ] |
07.11.2003, 10:12 Uhr chkamiga Posts: [Ex-Mitglied] |
Zitat: Ja, für C aber micht für Basic... -- http://people.freenet.de/CHRAmiga.de CHRKUM@web.de [ - Ändern - Antworten - Zitieren - Direktlink - ] |
07.11.2003, 11:52 Uhr thomas Posts: 7717 Nutzer |
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/ [ - Antworten - Zitieren - Direktlink - ] |
07.11.2003, 15:43 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
08.01.2004, 17:41 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
08.01.2004, 18:01 Uhr JensB Posts: 193 Nutzer |
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 [ - Antworten - Zitieren - Direktlink - ] |
08.01.2004, 19:00 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
08.01.2004, 19:10 Uhr JensB Posts: 193 Nutzer |
Ich hatte mal ein Beispiel wo die Druckerschnittstelle angesprochen wurde ,ich such mal. [ - Antworten - Zitieren - Direktlink - ] |
08.01.2004, 20:13 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
11.01.2004, 16:06 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
11.01.2004, 18:57 Uhr thomas Posts: 7717 Nutzer |
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/ [ - Antworten - Zitieren - Direktlink - ] |
11.01.2004, 18:59 Uhr thomas Posts: 7717 Nutzer |
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/ [ - Antworten - Zitieren - Direktlink - ] |
11.01.2004, 20:21 Uhr chkamiga Posts: [Ex-Mitglied] |
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 [ - Ändern - Antworten - Zitieren - Direktlink - ] |
11.01.2004, 20:28 Uhr chkamiga Posts: [Ex-Mitglied] |
Ups, sch** wo hab ich das mit dem Device denn her? Okay, korrigiere ich gleich. -- http://people.freenet.de/CHRAmiga.de CHRKUM@web.de [ - Ändern - Antworten - Zitieren - Direktlink - ] |
12.01.2004, 16:04 Uhr chkamiga Posts: [Ex-Mitglied] |
Okay, habs jetzt, denke ich geschafft. -- http://people.freenet.de/CHRAmiga.de CHRKUM@web.de [ - Ändern - Antworten - Zitieren - Direktlink - ] |
12.01.2004, 23:37 Uhr bubblebobble Posts: 707 Nutzer |
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. [ - Antworten - Zitieren - Direktlink - ] |
-1- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > OpenDevice unter Basic | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |