TURBO PASCAL

Unter MS-DOS 2.11 gab es ein kommerzielles Programm, das überflüssige Routinen aus einem fertigen, mit TURBO PASCAL erstellten, Programm entfernte und somit das .COM File entsprechend verkürzte, weil ja die komplette Laufzeitbibliothek1 eingebunden wurde. Dies wollte ich auch für CP/M machen2, jedoch lief es darauf hinaus, dass ich den kompletten Compiler disassemblierte und neue Funktionen und Prozeduren hinzufügte.

Aber nicht nur wegen des genannten Grundes sondern auch wegen einiger Funktionen, die es beim CP/M TURBO PASCAL nicht gab, habe ich diese Arbeit in Angriff genommen. So fehlte z.B. die Funktion „APPEND", die sich leicht implementieren ließ. Auch die aktuelle Position des Cursors ließ sich bem JOYCE leicht auslesen (WHEREX, WHEREY). Außerdem fand ich die DU: Angabe sehr praktisch bei der Angabe einer Datei. Zum Schluß lässt sich noch anmerken, dass der Editor auf jeden Fall der Tastatur des JOYCE angepasst werden musste.
Nach dem Assemblieren der Module wird einer neuer Compiler zusammengestellt mit (hier mit dem CP/M PLUS Linker):

LINK TPneu=TR,TM,TEN,TC,TI[A]

Hier die Quelldateien:
Für alle folgenden Dateien wird eine gemeinsame Definitionsbibliothek benötigt.
Der Vollständigkeit halber hier noch die Overlay-Datei TURBO.OVR.
Originale Quelle TURBO.MAC.

Durch die Disassemblierung von TURBO PASCAL entstand die Idee, einen TURBO PASCAL Compiler zu erstellen, der mittels Kommandozeile von CP/M aus aktiviert werden kann.

Das Originalpaket zum Runterladen gibt es hier: [Download]
1. Hier eine Übersicht über die Adressen in der Originalbibliothek.
2. Entstanden sind lediglich zwei Analyseprogramme, nämlich TPANAL.MAC und TPSCAN.MAC.
Zurück zu den Disassembler-Aktivitäten