atari-home.de - Foren

Software => Coding => Thema gestartet von: czietz am So 02.08.2020, 14:23:27

Titel: Atari SFP-004 an einem Beispiel
Beitrag von: czietz am So 02.08.2020, 14:23:27
@Thorsten Otto merkte zu Recht neulich an, dass es sehr wenig Dokumentation zur Programmierung der FPU im Mega ST/STE (also der SFP-004-Erweiterung) gibt. Daher habe ich meine Notizen dazu in vorzeigbare Form gebracht, in der Hoffnung, dass es jemandem nützlich ist:

Atari SFP-004 ist eine FPU-Erweiterung für den Mega ST. Die Integration der optionalen FPU im
Mega STE ist technisch äquivalent. Es existiert sehr wenig Dokumentation zur Programmierung der
FPU im SFP-004, weshalb im Folgenden die Programmierung an einem Beispiel vorgestellt werden soll.

Rest im angehängten PDF.
Titel: Re: Atari SFP-004 an einem Beispiel
Beitrag von: Thorsten Otto am So 02.08.2020, 15:27:08
Danke, auch für die anderen Hinweise nochmal im anderen Thread ;)

Werde es mir bei Gelegenheit mal anschauen. Hintergrund war eigentlich der, daß durch die Umstellung von pml auf fdlibm dieser Support in der mintlib (bzw. fdlibm) rausgeflogen ist. Ich bin mir aber auch nicht sicher, ob die Routinen in pml je genutzt wurden (dazu hätte man die extra mit dem Schalter übersetzen müssen, und eine automatische Erkennung wie z.B. in der Pure-C library war wohl auch nicht vorgesehen). Bzw. ob sie überhaupt jemals funktioniert haben. Jedenfalls war die Dokumentation dort auch sehr spärlich (wo die Register Hardware-mässig gemapped werden ist wohl bekannt, aber alles andere kam mir ziemlich spanisch vor).
Titel: Re: Atari SFP-004 an einem Beispiel
Beitrag von: czietz am So 02.08.2020, 15:48:36
Der Ursprung der SFP-004-Routinen im Github-Repo der PML scheint übrigens dieser hier zu sein:

Zitat
# pml compatible lib for the atari sfp004
#
# Michael Ritzert, Oktober 1990
# ritzert@dfg.dbp.de
https://docs.dev-docs.org/htm/search.php?find=Library+for+the+SFP004

Titel: Re: Atari SFP-004 an einem Beispiel
Beitrag von: czietz am So 02.08.2020, 16:11:00
Ebenfalls interessant ist dieser c't-Artikel:

Zitat von: https://shop.heise.de/katalog/schneller-rechnen
Schneller rechnen
Treiber für Coprozessorkarten im ST
Roger Butenuth
Programm, Atari, Arithmetik, FPU 68881
c't 4/90 S. 430 (ad)
... den ich aus Copyright-Gründen aber natürlich nicht posten darf.

EDIT: Der dort entwickelte Treiber (Quelltext inkl. vieler Kommentare) befindet sich als CT0490S.434 in ftp://ftp.heise.de/pub/ct/listings/ct9004.zip.
Titel: Re: Atari SFP-004 an einem Beispiel
Beitrag von: Thorsten Otto am So 02.08.2020, 19:19:32
Ah vielen Dank, den FPU Emulator hatte ich schon mal gesehen, aber dann nicht mehr wieder gefunden...

Dort steht auch ein Hinweis/Bestätitung, daß sich 68882 teilweise anders verhält:

Wenn ein 68882 benutzt wird, so mssen
;     einige kleine Änderungen vorgenommen werden, da dieser an
;     einigen Stellen die Übertragung des PCs erwartet.

Müsste man wohl dann mal herausfinden, an welchen Stellen daß der Fall ist (vermutlich bei PC-relativer Adressierung?)

Könnte auch sein, daß das z.B. bei Benutzung von Pure-C oder Pure-Pascal gar nicht relevant ist.
Titel: Re: Atari SFP-004 an einem Beispiel
Beitrag von: thh am Mi 12.08.2020, 08:03:21
Hey, vielen Dank für die Infos und LInks! Ich hatte bis jetzt auch noch keine Doku zu diesen FPUs, ist wirklich sehr fein, endlich was dazu zu haben!