Navigation
« 

Anonymous




Register
Login
« 
« 

Amiga Future

« 

Community

« 

Knowledge

« 

Last Magazine

The Amiga Future 167 was released on the March 5th.

The Amiga Future 167 was released on the March 5th.
The Amiga Future 167 was released on the March 5th.

The Amiga Future 167 was released on the March 5th.
More informations

« 

Service

« 

Search




Advanced search

Unanswered topics
Active topics
« 

Social Media

Twitter Amigafuture Facebook Amigafuture RSS-Feed [german] Amigafuture RSS-Feed [english] Instagram YouTube Patreon WhatsApp
« 

Advertisement

Amazon

Patreon

« 

Partnerlinks

Programmierregeln

Description: FAQ

Categories: [FAQ] Tipps & Tricks

Link to this article: Select all

[url=https://www.amigafuture.de/app.php/kb/viewarticle?a=2592&sid=7a44730b0079e8cfe5cbb77a409727d6]Artikeldatenbank - Programmierregeln[/url]

Alle Amiga-Modelle 01.06.89
Programmierregeln Ki, S. 1


Offizielle Warnung an ROM-Springer, Structure-Hacker, u.a.
(Nach einem Text von Commodore USA, Entwicklung und CATS)

Die Entwickler haben uns allen den Amiga gebracht und
wollen uns klarmachen, daß jedes Programm, das die Regeln
verletzt, irgendwann abstürzen wird. Um das ein für allemal
zu beenden, werden folgende Regeln aufgestellt:

NIEMALS direkt in eine ROM-Routine springen
Nicht direkt ins ROM springen. Hüten Sie sich vor jedem
Programm, das Routinen im Adreßbereich $F80000 bis $FFFFFF
aufruft. Dies sind ROM-Adressen und diese ROM-Routinen
WERDEN in kommenden ROM-Versionen verschoben sein. Der
einzig erlaubte Zugang zu den ROM-Routinen erfolgt über die
bereitgestellten Library-, Device- und Resource-Aufrufe.

NIEMALS private System-Strukturen beschreiben oder sich auf
ihren Inhalt verlassen
Verlassen Sie sich nicht auf das Format privater, nicht
offiziell dokumentierter Systemstrukturen und ändern Sie
darin auch keinerlei Werte. Dies schließt direktes
Schreiben in Copper-Listen und Library-Basisstrukturen
ein.

NIEMALS auf die Adressen von Systemstrukturen oder freiem
Speicher verlassen
Verlassen Sie sich nicht darauf, daß eine bestimmte
Systemstruktur oder ein bestimmter Speichertyp immer an
einer bestimmten Adresse vorgefunden werden kann. Die
Systembestandteile reservieren sich den Speicher dynamisch
beim Start. Die Adressen von Systemstrukturen und
Pufferspeichern ändern sich mit jeder DOS-Version, jeder
Modelländerung und jeder Konfiguration, wie auch der freie
Speicherplatz und Stackbedarf des Systems.

NIEMALS einen bestimmten Prozessortyp oder eine
Taktfrequenz voraussetzen
Benutzen Sie keine Assemblerbefehle, die exklusiv nur auf
einem bestimmten Prozessor der 68000-Familie existieren.
Alle Adressen müssen 32 Bit lang sein. Die obersten 8 Bits
von Adreßregistern dürfen nicht zur Speicherung von Daten
mibraucht werden. Führen Sie keinen Maschinencode aus, der
im Stack liegt, und speichern Sie keine Systemstrukturen
auf Ihrem Stack. Benutzen Sie keine Software-Schleifen zur
Zeitbestimmung oder zur Zeitverzögerung. Benutzen Sie nicht
den TAS-Befehl. Benutzen Sie keinen selbstmodifizierenden
Code.

NIEMALS die Spezifikationen der Software-Schnittstellen
ignorieren
Wenn Sie System-Libraries, Devices oder Resources benutzen,
müssen Sie die definierten Schnittstellen benutzen.
Assembler-Programmierer (und Compilerbauer) müssen
Funktionen über die Library-Sprungleiste aufrufen, wobei
die Argumente als Langworte mitzugeben sind und die
Library-Basisadresse in A6 stehen muß. Ergebnisse, die in
D0 zurückgegeben werden, müssen erst auf Null/nicht Null
getestet werden, und die Inhalte der Register D0-D1/A0-A1
müssen nach dem Aufruf als zerstört angenommen werden.

NIEMALS die Spezifikationen der Hardware-Schnittstellen
ignorieren
Wenn Sie auf Hardware-Ebene programmieren, müssen Sie die
einschlägigen Hardware-Spezifikationen beachten. Jede
Hardware kann unterschiedlich sein. Nehmen Sie nicht an,
daß Tricks auf tiefster Ebene zur Beschleunigung oder zum
Kopierschutz mit allen Laufwerken, Tastaturen, Systemen
oder zukünftigen Systemen funktionieren.

Software-Distributoren, die Software von externen
Programmierern erwerben oder vertreiben, müssen sich
vergewissern, daß die Programmierer die korrekten
Programmierverfahren kennen und Software erstellen, die
auch auf anderen Maschinen oder anderen DOS-Versionen nicht
abstürzt.

Die Amiga-Entwickler arbeiten ständig daran, die Leistung
der Amiga-Hard- und -Software weiter zu verbessern und
auszuweiten, während die Kompatibilität unter den genannten
Regeln gewahrt bleibt, solange es überhaupt möglich ist.
Wer die Regeln nicht befolgt, sollte sich als gewarnt
betrachten.