CASIOlink 850 Ein Programm für die Kommunikation von Amiga und CASIO --------------------------------------------------------------------------- Einleitung: Warum dieses Programm? Ich habe ein CASIO 850 und wollte Daten zwischen Amiga und CASIO transportieren. Also kaufte ich mir ein kommerzieles Paket das aus Hardware (das Verbindungskabel) und Software besteht. Das Kabel ist qualitativ gut, aber das beigelegte Programm leider nicht. Nachdem ich einige wichtige Programme für meine Analysisklausur verloren habe, schrieb ich dieses Programm. (Natürlich nach der Klausur :-), Hinweis für meinen Prof.) Da ich dieses Programm innerhalb von 3 Tagen geschrieben habe, habe ich mich entschlossen, den Sourcecode beizulegen und das Programm freizugeben. Systemvorausetzung: -ein Amiga mit OS2.04 (V37) -ein CASIO FX-850P oder FX-880P -ein Verbindungskabel (serieller Port) wenn Sie (wie ich) keinen Bekannten haben, der Ihnen solch ein Kabel bauen kann, müssen Sie auf ein kommerzielles Kabel zurückgreifen. Da meines Wissens die Amiga-Kabel mit den PC-Kabeln identisch sind, können Sie sich auch ein (gebrauchtes) Programmpaket mit PC- oder Atarisoftware zulegen. (bei Mac könnte das Kabel anders sein) --------------------------------------------------------------------------- Anleitung: CASIOlink kann über das CLI oder die Workbench gestartet werden. Übergebene Parameter werden nicht beachtet. Das Programm öffnet dann ein Fenster. Das Fenster besteht aus drei Teilen. 1. der obere Teil mit den Gadgets. 2. die Statuszeile (mit Parameterstring) 3. der Bufferanzeiger. zu 1.: Die Gadgets in der Box Datei dienen zum Laden und Speichern des Buffers auf Diskette o.ä. Die Gadgets in der Box Buffer sind für die Übertragung von Amiga zum CASIO (senden) oder vom CASIO zum Amiga (empfangen) zuständig. Löschen löscht den Buffer nach einer Sicherheitsabfrage. Die Anzeige hinter bytes gibt an, wieviel Bytes von dem Text im Buffer benutzt werden. auf Diskette, da LF zu CRLF konvertiert werden) Die Gadgets in der Box Konfiguration sind für die Einstellung der Übertragungsparameter (RS232) und einige allgemeine Dinge (sonstiges) zuständig. Nach anklicken einer dieser Gadgets öffnet sich ein neues Fenster. RS232: In diesem Fenster werden die Übertragungsparameter eingestellt. In der ersten Zeile stehen die aktullen Einstellungen. Haben Sie ein CASIO mit Turbosatz (höhere Taktrate), dann müssen Sie dieses bei der Einstellung der Baudrate berücksichtigen. z.B.: 4800 Baud * 1.61 Turbofaktor = 7728 Baud Sonstiges: Zeilenende bestimmt, ob der Text im Buffer mit LF (normales Amigaformat), CR oder CRLF am Zeilenende abgespeichert werden soll. Auf das Laden und die Übertragung von und zum CASIO hat diese Einstellung keinen Einfluß. Beim Laden ist das Format des Zeilenende egal, und zur Übertragung wird grundsätzlich CRLF genommen. Editor und Shell geben die Befehle an, die bei dem entsprechenden Menüaufruf (s.u.) gestartet werden. Device (normal serial.device) und Unitnr (normal 0) sind für die Einstellung des Treiber für die Übertragung. Eine Veränderung ist nur dann sinnvoll, wenn Sie eine Multi-Serielle Karte besitzen. Timeout: timeout in sekunden. Buffer: Buffergröße in KBytes. zu 2. In der Statusanzeige wird der Status der letzten Aktion angezeigt. hinter Parameter steht der String, den Sie auf dem CASIO hinter LOAD oder SAVE angeben müssen. z.B.: Parameterstring = '"COM0:5,N,8,1,N,N,N,B,N"' Eingabe am CASIO = 'SAVE "COM0:5,N,8,1,N,N,N,B,N"' zu 3. Der Bufferanzeiger zeigt den aktuellen Text an. Da diese Funktion mit Hilfe der GadTools.library realisiert worden ist, befindet sich der Text ZWEIMAL im Speicher. (Einmal als Text und einmal als Zeilenorien- tierte NodeList) Leider ist mir auf die Schnelle keine bessere Lösung eingefallen. Die Menüs Projekt: Editor : ruft den eingestellten Editor mit dem aktuellen Textnamen als Parameter auf. Gibt es keinen aktuellen Textnamen, so wird die Funktion Speichern aufgerufen. Ein Abbruch des Speicherns verhindert auch den Editoraufruf. Drucken: schickt den Text zum Drucker (genauer nach prt:) Shell : startet eine neue Shell (wenn korrekt eingestellt) Drucker-Emulation: schickt alle Daten die vom CASIO kommen direkt zum Drucker (nicht implementiert) Quit : Quit Hilfe: Info : gibt Programmname, VersionsNr, Autor und Erstellungsdatum aus. Hilfe : öffnet eine AmigaGuide-Datei (nicht voll implementiert) --------------------------------------------------------------------------- an Programmierer: Dieser Quellcode ist für Aztec C V5.2 geschrieben worden. Für andere Compiler ist das preincludeing von defines.pre (in makefile) durch direktes including von defines.h in den einzelnen Files zu ersetzen. Beachten Sie die Hinweise in Datei.c!! --------------------------------------------------------------------------- Allgemeines: Dieses Programm ist Freeware. Jeder kann damit machen, was er will, solange der Sourcecode öffentlich zugänglich bleibt und der Autorenname sowie die Versionsnummer sinnvoll gehandhabt wird (nach V1.0 kommt nicht V234.5). Ich übernehme keine Verantwortung für den korrekten Programmlauf sowie Datenverlußte und daraus resultierende Schäden.(verpaßte Termine,nicht bestandene Prüfungen, Weltkriege,...) Da mir "nur" ein A3000 mit 4MB Fastmem zur Verfügung steht, kann ich nicht sagen, wie sich das Programm bei Speichermangel und/oder mit einem 68000 Prozessor verhält, daher testen Sie ERST mit unwichtigen Daten!! Das Programmpaket besteht aus: CasioLink 23852 CasioLink.c 5872 CasioLink.info 938 CasioLink.txt 6244 Datei.c 7039 defines.h 2929 Konf_RS.c 5659 Konf_Sonst.c 4237 Layout.c 6442 makefile 470 Serial.c 3738 sprintf.asm 363 SubRoutine.c 10745 Frank Nießen, Hamburg, September 1993