Hallo Leute, ich habe ein altes Projekt übernommen und nach Jahren mit Cortex-M setze ich mich mit C51 auseinander. Die Firma hat auch eine Lizenz für PK51 und soweit komme ich gut zurecht damit. Es werden da auch CHM mit installiert, aber nirgends PDF Manuals. Ich habe gerne die PDF Dateien mit im GIT, die ich auch gerne editiere bzw. mit Kommentaren versehe. Google findet online C51, A51 Manuals als PDF, nur für Linker BL51 scheint es nichts zu finden. Ich gewinne den Eindruck, dass Keil oder wer auch immer diese nicht erstellt hat. Auch andere Frage am Range. Aktuell sind meine Makefiles auf A51, C51 und BL51 ausgerichtet und ich bin mit Fehlermeldungen und Optimierungen komplett zufrieden. Gewinne ich wirklich mehr wenn ich auf AX51, CX51 und LX51 umstelle? Welche Optimierungen erlaubt OMF2 Format, die OMF-51 nicht ermöglicht? Grüße und schönes WE
Der prinzipielle Unterschied zwischen OMF-51 und OMF2 ist erst mal nur dass OMF-51 ursprünglich von Intel stammt und nur kleine Records kann, weil ein 8 Bit Längen Index verwendet wird. Viele Felder in OMF 51 sind ebenfalls nur 8Bit breit. Dadurch gibt es auch einige Einschränkungen z.B. bei der Anzahl der Einträge pro Record. OMF2 ist Keil properitär und im wesendlichen durch spezielle Records erweitert. Die verwenden andere Record Typen wobei oft die Felder auf 16Bit erweitert wurden. Zusätzlich gibt es neue Debug Records die darüber Buch führen welche Register eine Funktion belegt. Dadurch sind später Optimierungen über alle Quellen hinweg möglich. Der Nachteil ist das Keil nie eine OMF2 Spec veröffentlicht hat. Die Intel OMF-51 Spec kann man im Internet finden. AX51 kennt ein paar Extra Befehle (ALIGN, EVEN, DD, ...) Generell wurde AX51 CX51 und LX51 eingeführt um auch exotische 51er (NXP 80C51MX, Dallas 390, etc.) besser zu unterstützen. Wenn CX51 / AX51 verwendet wird geht auch LinkerCodePacking (ACALL/AJMP und globales RegisterColoring). Alles in allem würde ich aber sagen, dass sich die Verwendung nur in sehr speziellen Fällen wirklich lohnt.
:
Bearbeitet durch User
Mhm, war der BL51 nicht dafür da falls man mehr als 64K Programmspeicher hatte und Bank-Switching brauchte? Gruß Anja
Anja schrieb: > war der BL51 nicht dafür da falls man mehr als 64K Programmspeicher > hatte und Bank-Switching brauchte? ja das ist aber schon sehr lange so. In der Keil Steinzeit gab es auch noch den L51 der keinen Banksupport hatte. (C51 v3.1 ?) Das war irgendwann um 1986 mit sehr alten Dos Tools.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.