Turbo Assembler

Aus C64-Wiki
Zur Navigation springenZur Suche springen
Turbo Assembler
Der Startbildschirm
Der Startbildschirm
Entwickler Wolfram Roemhild
Verleger Omikron Software
Release 1985
Plattform(en) C64
Genre Programmierung
Steuerung
Medien
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[Bearbeiten | Quelltext bearbeiten]

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[Bearbeiten | Quelltext bearbeiten]