Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
cpm:m80 [2010/08/05 08:51] – angelegt volkerp | cpm:m80 [2011/09/30 07:43] (aktuell) – [LIB80] volkerp | ||
---|---|---|---|
Zeile 6: | Zeile 6: | ||
Größere Projekte bestehen aus mehreren Assemblerquelldateien. Diese werden einzeln mit M80 übersetzt und anschließend mit dem Linker in eine ausführbare Maschinencode-Datei umgewandelt. Mehrere REL-Dateien können mit LIB80 zu einer Bibliothek *.LIB zusammengefasst werden. Aus einer solchen Bibliothek entnimmt der Linker nur die benötigten Teile, es wird also nicht immer alles dazugelinkt. | Größere Projekte bestehen aus mehreren Assemblerquelldateien. Diese werden einzeln mit M80 übersetzt und anschließend mit dem Linker in eine ausführbare Maschinencode-Datei umgewandelt. Mehrere REL-Dateien können mit LIB80 zu einer Bibliothek *.LIB zusammengefasst werden. Aus einer solchen Bibliothek entnimmt der Linker nur die benötigten Teile, es wird also nicht immer alles dazugelinkt. | ||
+ | |||
+ | |||
+ | ===== SCP: ASM, | ||
+ | |||
+ | Unter SCP1520 gab es " | ||
+ | |||
+ | Eine ausführliche Beschreibung gibt es in | ||
+ | |||
+ | * {{: | ||
+ | |||
+ | Ersetzt man SCP durch CP/M, ASM durch M80 usw., hat man ein sehr gutes Handbuch für das Toolpaket von Microsoft. | ||
+ | |||
+ | |||
+ | ===== Beispiel ===== | ||
Zeile 12: | Zeile 26: | ||
M80 =DEMO/ | M80 =DEMO/ | ||
L80 / | L80 / | ||
+ | | ||
+ | :!: Wird der Linker ohne /P: aufgerufen, wird am Codeanfang ein Sprung zum Programmbeginn eingefügt, der Code wird also um 3 Byte länger! Deshalb wird oftmals ein anderer Linker wie LINK 1.31 von Digital Research oder der in der DDR verbreitete Link/MT+ Release 5.5 genutzt, da diese etwas einfacher in der Syntax sind: | ||
+ | |||
+ | einfaches Assemblieren und Linken von DEMO.MAC mit LINK: | ||
+ | |||
+ | M80 =DEMO/ | ||
+ | LINK DEMO | ||
- | Neukompilieren von CP/A (Achtung: es wird ein anderer Linker genutzt!) | + | Neukompilieren von CP/A: |
M80 BIOS.ERL=BIOS/ | M80 BIOS.ERL=BIOS/ | ||
Zeile 113: | Zeile 134: | ||
*EXP | *EXP | ||
*^C | *^C | ||
- | | + | |
+ | *TRANSUB.LIB/ | ||
| | ||
^C | ^C |