home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crawly Crypt Collection 1
/
crawlyvol1.bin
/
apps
/
science
/
gnmr_125
/
fpupatch
/
fpupatch.txt
< prev
next >
Wrap
Text File
|
1993-06-26
|
8KB
|
201 lines
Anleitung zu FPUPATCH.PRG Vol 1.00 Freeware München, 26.06.93
(c) 1993 Hartmut Pfitzinger @ M
Allgemeines
===========
FPUPATCH ist Freeware, darf aber nur zusammen mit diesem Text und dem .UPL,
das den Text enthält, der bei Uploads in andere Mailboxen als
Kurzbeschreibung einzugeben ist, weitergegeben werden! Ein Upload in
Mausboxen ist erwünscht, ebenso die Weitergabe an andere Benutzer!
Aus den wie auch immer gearteten Folgen, die FPUPATCH mittelbar oder
unmittelbar verursacht oder mitverursacht, sind in keiner Weise Haftungs-
oder andere Ansprüche an den Autor herleitbar.
Das Programm FPUPATCH wurde sehr sorgfältig und mit groβem Arbeits- und
Zeitaufwand entwickelt und getestet und sollte daher fehlerfrei sein. Daher
ist der Autor an Problemen, die bei der Benutzung von FPUPATCH auftreten, und
deren Beseitigung interessiert.
Was ist FPUPATCH?
=================
FPUPATCH ist ein Programm, das andere Programme, die mit der C-Compiler-Serie
"Turbo C" (einstmals vertreiben durch Borland) und "Pure C" (vertrieben durch
Application Systems Heidelberg) hergestellt wurden, derart verändert, daβ
diese auf ST/STE Rechnern, ausgestattet mit einem "memory mapped" Floating
Point Coprocessor, funktionsfähig bleiben und beschleunigt werden.
Diese Coprocessoren können sich in Mega STs nach Einbau der Coprocessor-Karte
"SFP 004" von ATARI und kompatiblen Karten oder Groβbildschirmkarten wie
derjenigen für den SM-194 befinden. Es handelt sich dabei in erster Linie um
den 68881, der sich standardmäβig auf der SFP 004 befindet, aber vor allem um
den 68882. In Mega STEs können sich diese Coprocessoren ebenfalls befinden.
Die Coprocessoren im TT und Falcon dagegen machen keine Probleme, da sie von
der Compiler-Serie sowieso ignoriert werden, es sei denn, die Programme
werden extra für diese Coprocessoren compiliert, dann laufen sie allerdings
nicht mehr auf STs und STEs mit und ohne Coprocessor (es sei denn, ein
LineF-Emulator würde benutzt (*) ).
Wann brauche ich FPUPATCH?
==========================
Probleme treten also _immer_ unter obigen Bedingungen in Verbindung mit 68882
und zusätzlich manchmal in Verbindung von Prozessorkarten (PAK2, ...) und
memory mapped 68881 auf.
Sollte also ein Programm (z.B. TC, PC, Connect, Calamus, ...) hängen, ohne
abzustürzen, und ein einfacher Tastatur-Reset [Cntrl]+[Alt]+[Del] führt
trotzdem zum Reset, so ist FPUPATCH die richtige Wahl, das Problem in dem
Fall zu beheben, daβ eine memory mapped FPU vorhanden ist.
Was macht FPUPATCH?
===================
Das Programm FPUPATCH analysiert nun solche Programme und verändert sie
derart, daβ sie danach nicht nur laufen, sondern im Durchschnitt sogar 30%
schneller laufen, wenn sie ausgiebig mit Flieβkommazahlen rechnen.
Welche Probleme gibt es mit FPUPATCH?
=====================================
Dies wird mit dem Preis erkauft, daβ wenige Programme (z.B. Calamus SL) nach
dem "Patchen" mit einer Fehlermeldung, daβ die interne Prüfsumme nicht mehr
stimmt, abbrechen und somit immernoch nicht zu benutzen sind. Da die
Veränderung im Programm aber nicht mehr rückgängig zu machen ist, sollte
unbedingt vor dem Patchen eine Sicherheitskopie des zu patchenden Programms
angefertigt werden!
Wie arbeite ich mit FPUPATCH?
=============================
Nach Doppelklick auf das Programm FPUPATCH.PRG erscheint eine Dialogbox mit
drei Knöpfen. Der erste dient zum erwartungsgemäβen Patchen.
Der zweite bewirkt, daβ die FPU, ob vorhanden oder nicht, nach dem Patchen
nicht mehr angesprochen wird. Dies kann bei Accessories sinnvoll sein, die
auch auf die memory-mapped FPU zugreifen wollen, während ein Programm dies
schon tut. Da das Betriebssystem des ST und eine Reihe von alternativen
Betriebssystemerweiterungen die FPU-Register nicht vor dem Zugriff durch das
ACC retten und danach restaurieren, wird das Hauptprogramm danach mit
falschen Zahlen weiterrechnen. In so einem Fall empfiehlt es sich, dem ACC
jeglichen FPU-Zugriff zu verbieten.
Der dritte Knopf dient zum Abbrechen des Programms.
Das Programm hat drei Antworten parat:
1. Es konnte erfolgreich gepatched werden.
2. Das zu patchende Programm wurde schon irgendwann gepatched.
3. Das zu patchende Programm läβt sich nicht patchen. Dies kann daran liegen,
daβ das Programm nicht mit TC/PC hergestellt wurde, oder daran, daβ es die
memory-mapped FPU gar nicht benutzt, sondern aus anderen Gründen hängt.
Sonstiges
=========
Das Programm ist nur lauffähig auf Rechnern mit mindestens 1MB und kann nur
Programme bis zu einer Maximalgröβe von ca. 600kB patchen (gröβere Programme
gibt es nicht). Bei groβen Programmen kann der Patchvorgang einige Zeit in
Anspruch nehmen.
Danksagungen
============
Dank geht an alle Beta-Tester, insbesondere an Harald Sommerfeld @ KI für
Vorschläge zur Verbesserung der Userfreundlichkeit.
Versionen
=========
Vol Datum Beschreibung
1.00 26.06.93 voll funktionsfähig und soweit fehlerfrei
Hinweis für Entwickler
======================
Unter bestimmten Bedingungen ist vom Autor auch ein Modul zu bekommen, das
man benötigt, um direkt durch das Compilieren und Linken eine "gepatchte"
Version zu erhalten, ohne noch danach wirklich patchen zu müssen. Dies wird
durch Erweitern des Projektfiles um obiges Modul erreicht.
Die "bestimmten Bedingungen" könnten z.B. eine Schenkung von 10.- DM auf
nachfolgendes Konto sein:
Hartmut Pfitzinger
Hypo-Bank München
BLZ: 700 200 01
Kto-Nr: 6880164757
Im Verwendungszweck der Überweisung muβ immer stehen "SCHENKUNG VON MICHA
MUSTER AUS MUSTERORT", wobei natürlich der richtige Name und Ort einzusetzen
sind. Auch muβ es eine Überweisung sein, also keine Verrechnungsschecks u.ä.
Das Modul mit einer kleinen Beschreibung erhält derjenige dann, wenn er mir
eine E-Mail zukommen läβt, in der der gleiche Name und Ort wie auf der
Überweisung angegeben ist sowie die E-Mail-Adresse, an die ich das
UUP-encodete File schicken soll (blos eine Handvoll Zeilen).
Oder er erhält es, wenn er mir einen korrekt frankierten Rückumschlag mit
Diskette zuschickt. Dabei ist allerdings auf einen ausreichend stabilen
Rückumschlag zu achten. Sollte die Sendung auf dem Transport beschädigt
werden, oder das Rückporto zu gering sein, so möchte ich keine Kosten
übernehmen. Meinetwegen kann diesem Brief auch ein 10.-DM Schein beigelegt
werden, falls er sich noch in demselben befindet, wenn ich ihn öffne. Man hat
ja seine Erfahrungen mit der Post; jedenfalls werde ich ansonsten die
Diskette nicht zurückschicken, sondern bei existierender E-Mail diese statt
dessen anschreiben.
Den Brief bitte an folgende Adresse schicken (erst ab dem 1.7.93):
Hartmut Pfitzinger
Thierschstr. 42-RGB
80538 München
Wenn jemand einen besseren Vorschlag bezüglich der "bestimmten Bedingungen"
oder des Verfahrens hat, kann er ihn mir schreiben:
MausNet: Hartmut Pfitzinger @ M
InterNet: hartmut_pfitzinger@m.maus.de
Flames
======
Bitte Protest, Kritik, Bugmeldungen, Verbesserungsvorschläge und Lob an eine
der obigen E-Mail-Adressen.
Viel Spaβ mit dem Programm,
Hartmut
Fuβnoten
========
(*) ich suche einen LineF-Emulator für STs ganz ohne FPU (d.h. alle
FPU-Befehle müssen durch Assemblerroutinen nachgebildet werden)