PofoWiki

Die ultimative Informationsquelle zum ATARI Portfolio

Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:diy:andere:machinecodetext

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
software:diy:andere:machinecodetext [18/11/2012 23:11] – Externe Bearbeitung (Unknown date) 127.0.0.1software:diy:andere:machinecodetext [12/09/2022 21:09] (aktuell) – [MESSAGE.COM] Korrigiert, umformuliert, Quelllisting eingefügt bttr
Zeile 105: Zeile 105:
  
 === MESSAGE.COM === === MESSAGE.COM ===
-Gibt Meldung aus.\\+Gibt Meldung aus. 
 + 
 +Dieses Programm kann mit dem Text-Editor bearbeitet werden. Ab Byte 10 (077 bzw. 4D) beginnt die auszugebende Meldung, die bis zu 226 Zeichen lang sein kann und immer mit "$" (036 bzw. 24) enden muss. Das Zeichen "$" selbst wird dabei nicht mit ausgegeben. Ein Tabulator kann mit ASCII 009 erzeugt werden. 
 Dezimal:\\ Dezimal:\\
-180 009 186 009 001 205 033 205 032 077 069 083 083 065 071 069 036\\ +180 009 186 009 001 205 033 205 032 077 069 083 083 065 071 069 036 
-Die ersten Bytes sind Opcodeder Rest ist der Text der Meldung, in diesem Fall "MESSAGE$" (muß mit "$" (036) enden!)\\ + 
-Dieses Programm kann mit dem Text-Editor bearbeitet werden, der Text (ab Byte 10) kann dann bis zu 226 Zeichen lang sein (ASCII 009 ist der Tabulator, in der Textverarbeitung 8 Zeichen breit, in der DOS-Befehlszeile 4).+Hexadezimal:\\ 
 +B4 09 BA 09 01 CD 21 CD 20 4D 45 53 53 41 47 45 24 
 + 
 +Ein mit dem [[https://github.com/swanlizard/a72|A72-Assembler]] erstelltes Listing des Quellcodes: 
 + 
 +<code asm> 
 +0100 B409                       MOV     AH,9 
 +0102 BA0901                     MOV     DX,OFFSET MESSAGE 
 +0105 CD21                       INT     21H 
 +0107 CD20                       INT     20H 
 +0109 4D45535341474524   MESSAGE DB      "MESSAGE$" 
 +</code>
  
 === BLINDIN.COM === === BLINDIN.COM ===
Zeile 133: Zeile 147:
 B4 01 CD 21 EB FA\\ B4 01 CD 21 EB FA\\
  
 +In Debug sieht der Quellcode dazu so aus:
 +
 +<code asm>
 +xxxx:0100 B401          MOV     AH,01
 +xxxx:0102 CD21          INT     21
 +xxxx:0104 EBFA          JMP     0100
 +</code>
  
 +Arbeitsprinzip: Die [[https://fd.lod.bz/rbil/interrup/dos_kernel/2101.html|DOS-Funktion 01h]] ("READ CHARACTER FROM STANDARD INPUT, WITH ECHO") wird in einer Schleife ohne Abbruchbedingung aufgerufen. Funktion 01h prüft aber selbst, ob der Anwender <key>Strg</key>+<key>c</key> für einen Abbruch gedrückt hat.
 ===== HT2B.COM ===== ===== HT2B.COM =====
 Schön und gut, mit dem Printer Setup-Code haben wir also eine Möglichkeit Binärdateien zu erzeugen, die jegliche 8-Bit-Werte enthalten können (0..255). Aber mal ehrlich, die Lust am Programmieren ist schnell dahin, wenn man Byte für Byte in der nötigen Syntax (\xxx) eintippen muss. Außerdem ist die Darstellung der bereits eingegebenen Bytes nicht gerade komfortabel.\\ Schön und gut, mit dem Printer Setup-Code haben wir also eine Möglichkeit Binärdateien zu erzeugen, die jegliche 8-Bit-Werte enthalten können (0..255). Aber mal ehrlich, die Lust am Programmieren ist schnell dahin, wenn man Byte für Byte in der nötigen Syntax (\xxx) eintippen muss. Außerdem ist die Darstellung der bereits eingegebenen Bytes nicht gerade komfortabel.\\
software/diy/andere/machinecodetext.txt · Zuletzt geändert: 12/09/2022 21:09 von bttr