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 | ||