Turbo Assembler
Aus C64-Wiki
Zur Navigation springenZur Suche springenTurbo Assembler | |
---|---|
Entwickler | Wolfram Roemhild |
Verleger | Omikron Software |
Release | 1985 |
Plattform(en) | C64 |
Genre | Programmierung |
Steuerung | |
Medien | |
Sprache(n) | Programm: |
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
- .byte - Bytes bspw. für Sprite- oder Zeichen-Daten; Beispiel:
Bedienung[Bearbeiten | Quelltext bearbeiten]
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]
- 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]
- CSDb Alle Einträge
- Anleitungen
- Anleitung zum Turbo Assembler (7.4) bei retro-programming.de
- Eine weitere Anleitung zum Turbo Assembler 6
- Anleitung zum Turbo Assembler 5.2 auf codebase64.org
Quellen