Turbo Assembler

Aus C64-Wiki
Zur Navigation springenZur Suche springen
Turbo Assembler
Der Startbildschirm
Entwickler Wolfram Roemhild
Verleger Omikron Software
Release 1985
Plattform(en) C64
Genre Programmierung
Steuerung Icon tastatur.png
Medien Icon disk525 1.png
Sprache(n) Programm: Sprache:englisch
Information Nachfolger: Turbo Assembler Macro und Turbo Macro Pro

Beschreibung[Bearbeiten | Quelltext bearbeiten]

Der Turbo Assembler (kurz: TA) wurde im Jahr 1985 durch die deutsche Computerfirma Omikron Software veröffentlicht. Programmiert wurde der Makro-Assembler TA von Wolfram Roemhild.

In der C64-Szene wurde dieser über die Jahre weiterentwickelt und so entstanden daraus auch verschiedenen Versionen des Turbo Assembler Macro und Turbo Macro Pro.


Allgemeines

Folgende Eigenschaften besitzt der TA:

  • Der TA versteht Makros und Labels, und formatiert den Quellcode bei der Eingabe entsprechend.
  • Eine Eingabezeile darf aus 40 Zeichen bestehen.
  • Labels und Konstanten dürfen max. 15 Zeichen lang sein.
  • Alle Befehle, Makros und Labels müssen in Kleinbuchstaben eingegeben werden!
  • Der TA belegt den Speicherbereich $9000-$CF00 (36864 bis 52992), so dass in diesem Bereich mit dem TA keine eigene Maschinenspracheprogramm assembliert werden können.
  • Ebenfalls belegt der Quellcode des Editors den Bereich $8feb bis $0801 (36843 bis 2049) rückwärts in gepackter Form!
  • TA kennt folgende Zahlenwerte:
    • Hexadezimale: $CF
    • Binäre (max. 8-Bit): %11001101
    • Dezimale: !200 oder 200 (das ! darf weggelassen werden)
  • Einfache Berechnungen sind möglich mit: ( ) + - * /
  • Logische Berechnungen mit:
    • UND: &
    • ODER: .
    • EXOR: :
  • Unteres Byte eines 16-Bit Wertes: <
  • Oberes Byte eines 16-Bit Wertes: >
  • Zeichen und Texte werden in Anführungszeichen gesetzt: lda #"TExt 1"
  • Kommentare werden mit ; eingeleitet - Beispiel: ; Ein neuer Kommentar...
  • Die aktuelle Speicheradresse kann mit * genutz werden; Beispiel: LDA #>*
  • Eine Speicheradresse kann wie folgt gesetzt werden, z.B. für den Start des Maschinenspracheprogramms: *= $3000
  • Folgende Pseudo-OP-Codes gibt es:
    • .byte - Bytes bspw. für Sprite- oder Zeichen-Daten; Beispiel: .byte 164, $AF, %10100101
    • .word - 16-Bit-Werte (bspw. für Listen); Beispiel: .word *, 49152, $C000
    • .text - Texte für Bildschirmausgaben; Beispiel: .text "Das C64-Wiki praesentiert:"
    • .offs - Beispiel: .offs 20 - Alternativ auch mit: *= *+10

Bedienung[Bearbeiten | Quelltext bearbeiten]

  • Starten per SYS 36864
  • Restart ebenfalls durch die Taste RESTORE .

Die Funktionstastenbelegung:

  • F1 : Springt 20 Zeilen höher.
  • F2 : Sprung zur ersten Zeile.
  • F3 : .text " " an aktueller Cursorposition einfügen.
  • F4 : Assembliert den Code und startet es. Wenn kein gültiger Code vorhanden ist, wird der Turbo Assembler nach BASIC beendet.
  • F5 : .byte $00 an aktueller Cursorposition einfügen.
  • F6 : Aktuelle Zeile löschen.
  • F7 : Springt 20 Zeiler tiefer.
  • F8 : Sprung zur letzten Zeile.

Wichtige Kommandos werden mit der Taste   eingeleitet, gefolgt von nachfolgenden Tasten:

  •   +:
    • plus 1 : TA nach BASIC verlassen.
    • plus 2 : Aktuelle Zeile mit Trennlinie ";----------------------" füllen.
    • plus 3 : Quellcode wird assembliert. Anschließend kann er mit der Taste S  gestartet werden. Beim laufenden Maschinenprogramm erfolgt mit RESTORE  ein Rücksprung in den Editor.
    • plus 4 : Assemblierter Quellcode wird in eine SEQ-Datei abgespeichert. Wird anstelle des Dateinamens ein ? eingegeben, so wird das Listing ausgedruckt, und bei * wird es auf dem Monitor angezeigt.
    • plus 5 : Quellcode wird assembliert und auf Diskette abgespeichert.
    • plus 6 : Fragt Speicherbereich ab und deklariert ihn ab Cursorposition als .byte
    • plus 7 : Setzt den Cursor-Tab auf die aktuelle Spalte.
    • plus 8 : Setzt den Cursor-Tab auf die aktuelle Spalte zur Ausrichtung von Mnemonics und Pseudo-Op-Codes.
    • plus  : Kopiert die aktuelle Zeile in die Zwischenablage.
    • plus £ : Fügt die Zwischenablage in die aktuelle Zeile ein.
    • plus @ : Diskettenstatus anzeigen.
    • plus * : Directory einer Diskette anzeigen.
    • plus D : DOS-Befehl an das Diskettenlaufwerk senden.
    • plus C : Kaltstart des TA, dabei wird der aktuelle Quellcode gelöscht.
    • plus K : Die Funktionstasten F3 bis F6 können frei belegt werden.
    • plus F1 : Setzt die Funktionstastenbelegung wieder auf Standardeinstellungen zurück.
    • plus L : Lädt eine Datei im TA-Format in den Editor.
    • plus S : Speichert eine Datei im TA-Format auf Diskette ab.
    • plus O : Wechsel des Farbschema im Editor. Es stehen 6 verschiedene zur Verfügung.


Beispielprogramm[Bearbeiten | Quelltext bearbeiten]

Farbdemo
Farbwechsel der Bildschirmfarben
	*= $1000
start
	inc $d020
        inc $d021
	jmp start

Die Speicheradressen 53280 ($d020) und 53281 ($d021) zuständig für die Bildschirmrahmen- und -hintergrundfarbe werden ständig erhöht. Danach erfolgt ein Rücksprung auf das Label "start".


Weblinks[Bearbeiten | Quelltext bearbeiten]

Anleitungen


Quellen