Short: StScan - ST-400 scanner software Author: Frank-Christian Kruegel, Henning Peters, Andreas R. Kleinert Uploader: Andreas_Kleinert t-online de Type: driver/other Version: 3.01D Architecture: m68k-amigaos Siemens ST 400 Scanner software ------------------------------- For: ST-400 scanner, OS 2.04+, 68020+ (works with AGA and graphics card, but e.g. NewMode is needed with the latter) This scanner software has been written by Frank-Christian Kruegel in 1991-92 and published under the GNU General Public License V1. Later on, Henning Peters tried to get the stuff running under newer OS and hardware, but although he did make some changes to the source (for GCC), it did not work as expected. He asked for some advice in a german newsgroup, and since I was interested in the program, I asked him for the source and did some modifications. Me, that is Andreas R. Kleinert and here's the - possibly incomplete - list of changes done: 16 Aug 1997: V3.01D [ Andreas R. Kleinert ] - recompiled with SAS/C V6.58 - view() had been commented out (imginout.c) 11 Aug 1997: V3.00D [ Andreas R. Kleinert ] - did all necessary modifications for SAS/C V6.57, MC 68020 recompilation - removed/changed several odd/obsolete data definitions - ANSIfied the source code, added header files - adjusted the assembler source pieces for SAS/C ASM - removed unused variables - replaced header files with newer versions - removed compatibility header kludges - added copy of GNU General Public License V2 - fixed some bugs, e.g. often char wtitle[20] was refered to as &wtitle instead of &wtitle[0] and increased its varying sizes - removed references to "a_lib" includes - added descriptive headers to all source/include files - most includes are done within stscan.h now, no more redundant/differing stuff - prefs now located in PROGDIR: - __USE_SYSBASE defined ;) - still missing: explicite AGA support - etc. etc. etc. 1997: V2.50D mod. [ Henning Peters ] - small changes 1991/92: V2.50D [ Frank-Christian Krügel ] - initial release Below is the original, german only, LIESMICH text: ******************************************************************* Siemens ST 400 Scanner- und Bildverarbeitungssoftware ----------------------------------------------------- Author und Copyright 1991/92 bei: Frank-Christian Krügel Rabienstraße 52 W-2862 Worpswede (Achtung! Ab 1.7. neue PLZ: 27726) Germany Fido: 2:240/300.44 Z-Netz: FCHK@MLO.ZER Usenet: fck@finland.fido.de oder (wenn's gar nicht anders geht) a02e@alf.zfn.uni-bremen.de Telefon/Telefax: 04792-894 (nur zu verkehrsüblichen Zeiten, ansonsten drohen Kabelbrand, Überfaxe und Briefbomben!) Lizenz: Dies ist freie Software; Du darfst sie unter Beachtung der GNU General Public Licence, wie sie von der Free Software Foundation in der Version 1 herausgegeben wurde, weiterverbreiten und/oder modifizieren. Dieses Programm wird in der Hoffnung verbreitet, daß es einigen Leuten nützen möge. Ich garantiere jedoch für überhaupt gar nichts, nur daß die Software Speicherplatz auf der jeweiligen Platte oder Diskette einnimmt. Ein Exemplar der GNU General Public Licence ist dem Programm beigefügt (File: GNU_COPYLEFT); falls es fehlt, kann es bei folgender Adresse angefordert werden: Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Sinn und Zweck: Dieses Programm dient dazu, einen Flachbettscanner mit SCSI-Bus über den Amiga ansteuern zu können. Hierfür können die Größe (DIN A6, A5 und A4), die Auflösung (200, 300 und 400 DPI) und die Anzahl an Graufstufen (2 oder 16) eingestellt werden. Der Sacnner erzeugt eigentlich 64 Graustufen. Da solche Bilder aber bis zu 16MB an Speicher verbrauchen und ein normaler ECS-Amiga nur 16 Graustufen anzeigen kann, werden die beiden niederwertigsten Bits ignoriert. Bilder können im IFF-IBLM-Format gespeichert und wieder geladen werden. Das Speichern kann entweder unkomprimiert oder mit der standardmäßigen Packbits-Kompression geschehen. Der Filerequester benutzt die req.library, die hierzu vorhanden sein muß. Das Bild wird entweder 1:1 oder verkleinert als Ganzseitenansicht dargestellt. Zwischen den beiden Darstellungsformen kann mit dem Gadget in der rechten unteren Ecke umgeschaltet werden. Im Konfig.Menü kann der verwendete Bildschirmmodus (ab Kick 2.0) und das verwendete SCSI-Device eingestellt werden. Bei der Interlace-Einstellung gibt es bei Verwendung des 2024-Graustufenmonitors eine Besonderheit. Dort wird mit der Interlace-Einstellung nämlich zwischen 10Hz und 15Hz umgeschaltet. Aufgrund von Hardwarebeschänkungen beim ECS-Chipsatz können in einigen Grafikmodi nur vier Graustufen dargestellt werden. Intern wird jedoch immer mit 16 Grafustufen gerechnet. Eine Anpassung an die neuen AA-Grafikmodi wird erfolgen, sobald mir jemand einen 4000'er mit SCSI-Controller schenkt. Zusätzlich sind noch eine Reihe von Bildbe- und Bildverarbeitungsfunktionen eingebaut. Einige sind nur bei Graustufenbildern möglich, andere nur bei Bilevel- (Schwarzweiß-)Bildern. Funktionen für Graustufenbilder: - Histogramm zur Anzeige der Häufigkeit der einzelnen Helligkeitswerte - Konstrastverstärkung - Lokale Operatoren (Hochpaß, Tiefpaß, Relief, Maximum-, Minimum- und Median- Operator) - Umwandlung in Bilevel-Bilder durch Schwellwertbildung oder Dithern (ordered Dither und Floyd-Steinberg) Funktionen für Bilevel-Bilder: - Umwandlung in Graustufenbilder - Ausdünnung (Vorstufe zur Vektorisierung) - Vektorisierung eines ausgedünnten Bildes) Funktionen für beide Bildarten: - Invertierung - Spiegelung (horizontal, vertikal) - Ausschneiden eines Bereiches Vektorisierung: rasterbilder können in ein Vektorformat umgewandelt werden. Hierzu muß man in drei Stufen vorgehen: - Scannen oder Laden eines Bilevel-Bildes - Ausdünnen - Vektorisieren Als Ergebnis erhält man eine Textdatei, die z.B. mit IntroCad oder UltraCad geladen werden kann. Beim PD-Programm "MPLOT" sind Hilfsprogramme dabei, mit denen man solche Dateien in das ICAD-Binärformat, das von Aegis Draw oder das DXF-Format umwandeln kann. Die erzeugten Textdateien haben das folgende Format: /erster Vektor Leerzeile als Trenner /nächster Vektor Leerzeile als Trenner .... Achtung! Während der Vektorisierung wird jeder erkannte Punkt im Speicher gelöscht, damit er nicht zweimal erkannt wird. Wenn das Bild noch benötigt wird, vorher speichern! Voraussetzungen: - diese Disk - ein Amiga - am Besten ein flimmerfreier Bildschirm - ein SCSI-Controller mit dem von Commodore festgelegten "Exec level Direct SCSI" Software-Interface - so viel zusammenhängender Speicher wie irgendwie möglich - ein passender Scanner - die req.library - Zum Neucompilieren zusätzlich entspechende Kenntnisse und Aztec C 5.0 oder 5.2 Mit Lattice C sollte es auch gehen, den habe ich aber nicht Start: einfach Programm per Doppelklick oder CLI aufrufen. Der Scanner muß vorher angeschlossen, angeschaltet und betriebbereit sein. Der Siemens-Scanner ST400 ist hardwaremäßig auf Target ID 3 und Target LUN 3 eingestellt. Auf dieser ID dürfen also keine anderen Geräte liegen. Funktionsbereschreibung des Siemens-Scanners: siehe die englische Anleitung. Ich bin ja so tippfaul. *******************************************************************