PofoWiki

Die ultimative Informationsquelle zum ATARI Portfolio

Benutzer-Werkzeuge

Webseiten-Werkzeuge


hardware:doku:techrefguide:abschnitt3

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
hardware:doku:techrefguide:abschnitt3 [03/05/2008 23:05] – Formatierung. uxthardware:doku:techrefguide:abschnitt3 [13/06/2020 18:06] (aktuell) – Beispiel zum DTMF karlmueller
Zeile 324: Zeile 324:
              DL         aus              DL         aus
              DL         ein              DL         ein
 +\\
 +Die Beschreibung zum DTMF ist nicht ganz vollständig, deshalb hier ein kurzes Programmteil:
 +  ; Quelle: ATARI.RSC Vol. V, Issue 2 December 1992
 +  
 +  ; DTMF duration testing under
 +  ; assembled under TASM
 +  
 +  ; 2710h(10000) = short duration,
 +  ; 72e3h(29411) = default duration
 +  
 + .model small
 + .stack 100h
 + .data
 +  
 +  dtmf_dur dw 0
 +  temp dw 0
 +  numstr db '00001111',0
 +  
 +        .code
 +  mov ax, @data
 +  mov ds, ax
 +  
 +  mov ah, 18h ; Mute States call
 +  mov al, 08h ; Get DTMF duration
 +  int 61h
 +  
 +  mov dtmf_dur, dx         ; save old duration value
 +                                  ; from register
 +  
 +  mov ah, 18h ; Mute States call
 +  mov al, 09h ; Set DTMF duration
 +  mov dx, 2710h ; stuff new duration value
 +  int 61h ; into register
 +  
 +  mov ah, 17h ; dial number to check tone
 +  mov temp, @data ; duration
 +  mov ds, temp
 +  mov si, OFFSET numstr
 +  mov cx, 8h ; length of string = 8 characters
 +  int 61h
 +  
 +  mov dx, dtmf_dur         ; stuff old duration value
 +                                  ; into register
 +  mov ah,18h ; Set DTMF duration
 +  mov al,09h
 +  int 61h
 +  
 +  mov ah, 17h ; dial number to recheck
 +                                  ; old tone duration
 +  mov temp, @data
 +  mov ds, temp
 +  mov si, OFFSET numstr
 +  mov cx, 8h
 +  int 61h
 +  
 +  ;;;;;;;;;;;;;;;;;
 +  ;terminate
 +  
 +  mov ah,4ch
 +  int 21h
 +  
 +  end
 \\ \\
 \\ \\
Zeile 522: Zeile 584:
 **__Fn 2CH__ BIOS-Versionsnummer ermitteln**\\ **__Fn 2CH__ BIOS-Versionsnummer ermitteln**\\
   Parameter: AH    2CH   Parameter: AH    2CH
-  Rückgabe:  DS:BX Adresse der BIOS-Versionsnummer+  Rückgabe:  DS:DX Adresse der BIOS-Versionsnummer
 **Anmerkung:** Die Versionsnummer besteht aus einer Haupt- und einer Nebennummer, mit einem "$" terminiert. Ein typisches Beispiel ist "1.050$". Verwenden sie Int 60H Fn 0H.\\ **Anmerkung:** Die Versionsnummer besteht aus einer Haupt- und einer Nebennummer, mit einem "$" terminiert. Ein typisches Beispiel ist "1.050$". Verwenden sie Int 60H Fn 0H.\\
 +Das Technische Referenzhandbuch ist falsch. Es muss DX und nicht BX sein (Quelle: The Resource File Jun 1990, Seite 11. 
 \\ \\
 \\ \\
Zeile 750: Zeile 813:
    C:\AUTOEXEC.BAT    C:\AUTOEXEC.BAT
 Die CONFIG.SYS Datei wird immer von Laufwerk C geladen und kann nicht umgangen werden.\\ Die CONFIG.SYS Datei wird immer von Laufwerk C geladen und kann nicht umgangen werden.\\
 +
  
  
Zeile 755: Zeile 819:
 Eine RUN Datei ist ein speziell geschriebenes Programm, dass direkt von einer CCM ausgeführt werden kann ohne in das TPA (Transient Programm Area) geladen werden zu müssen. Ein offensichtlicher Vorteil dieser Art der Ausführung ist die Minimierung des Gebrauchs des Hauptspeichers.\\ Eine RUN Datei ist ein speziell geschriebenes Programm, dass direkt von einer CCM ausgeführt werden kann ohne in das TPA (Transient Programm Area) geladen werden zu müssen. Ein offensichtlicher Vorteil dieser Art der Ausführung ist die Minimierung des Gebrauchs des Hauptspeichers.\\
 \\ \\
-Eine RUN Datei kann vom Befehlsprozessor ausgeführt werden indem man RUN <Dateiname> tippt oder als normales Programm auf der DOS-Eene durch Aufruf des Int 21H Fn 4BH, aber mit AL auf 80H und CL auf CCH gesetzt.\\+Eine RUN Datei kann vom Befehlsprozessor ausgeführt werden indem man RUN <Dateiname> tippt oder als normales Programm auf der DOS-Ebene durch Aufruf des Int 21H Fn 4BH, aber mit AL auf 80H und CL auf CCH gesetzt.\\
 \\ \\
 Es gibt mehere Bedingungen für Programme die den Befehl RUN verwenden:\\ Es gibt mehere Bedingungen für Programme die den Befehl RUN verwenden:\\
Zeile 890: Zeile 954:
 Der Terminplaner sortiert die Einträge chronologisch wann immer er geladen wird. Der Terminplaner sortiert die Einträge chronologisch wann immer er geladen wird.
 \\ \\
 +
  
 ==== 3.9.2 Formate der Systemdateien ==== ==== 3.9.2 Formate der Systemdateien ====
-Es gibt drei System-Dateien die die Funktionsweise des BIOS und der internen Anwendungen steuern. Jede dieser Dateien hat ihr eigenes festgelegtes standard Datei-FOrmat. Diese sind:\\+Es gibt drei System-Dateien die die Funktionsweise des BIOS und der internen Anwendungen steuern. Jede dieser Dateien hat ihr eigenes festgelegtes standard Datei-Format. Diese sind:\\
    Klemmbrett (C:\SYSTEM\CLIPBORD.DAT)    Klemmbrett (C:\SYSTEM\CLIPBORD.DAT)
    Wiederherstellen (C:\SYSTEM\UNDELETE.DAT)    Wiederherstellen (C:\SYSTEM\UNDELETE.DAT)
-   Permanente Daten (C:\SYSTEM\PERMDAT.DAT)+   Permanente Daten (C:\SYSTEM\PERMDATA.DAT)
 Alle drei Dateien werden in den Hauptspeicher geladen, wenn eine Anwendung aufgerufen wird. Wenn wärend der Bearbeitung Daten aus diesen Dateien geändert werden, so geschieht dies nur in der Kopie im Hauptspeicher. Alle drei Dateien werden neu geschrieben wenn die Anwendungen beendet werden (z.B.: druch Drücken der Esc-Taste oder durch Beenden im Hauptmenü).\\ Alle drei Dateien werden in den Hauptspeicher geladen, wenn eine Anwendung aufgerufen wird. Wenn wärend der Bearbeitung Daten aus diesen Dateien geändert werden, so geschieht dies nur in der Kopie im Hauptspeicher. Alle drei Dateien werden neu geschrieben wenn die Anwendungen beendet werden (z.B.: druch Drücken der Esc-Taste oder durch Beenden im Hauptmenü).\\
 \\ \\
 +
 === 3.9.2.1 CLIPBORD.DAT === === 3.9.2.1 CLIPBORD.DAT ===
 Dies ist die Datei, die von den Anwendungen als Klemmbrett verwendet wird. Es ist ein Datenblock, der mit einer Null (00H) terminiert ist. Zeilenumbrüche werden al 0DH gespeichert, ohne den anschließenden Zeilenvorschub 0AH. Die maximale Größe des Klemmbretts ist 8K Zeichen. Dies muss einschließlich des Null-Terminators sein.\\ Dies ist die Datei, die von den Anwendungen als Klemmbrett verwendet wird. Es ist ein Datenblock, der mit einer Null (00H) terminiert ist. Zeilenumbrüche werden al 0DH gespeichert, ohne den anschließenden Zeilenvorschub 0AH. Die maximale Größe des Klemmbretts ist 8K Zeichen. Dies muss einschließlich des Null-Terminators sein.\\
Zeile 1032: Zeile 1098:
  
 \\ \\
 +
 +
  
 ==== 3.10.2 Dataillierte Beschreibung der Funktionen ==== ==== 3.10.2 Dataillierte Beschreibung der Funktionen ====
Zeile 1084: Zeile 1152:
   1. Der Zielpuffer sollte mindestens "max"+1 lang sein, um die Null-Terminaton zu beinhalten.   1. Der Zielpuffer sollte mindestens "max"+1 lang sein, um die Null-Terminaton zu beinhalten.
   2. Falls sie einen Text vorgeben wollen, schreiben sie ihn in den Zielpuffer, null-terminiert.   2. Falls sie einen Text vorgeben wollen, schreiben sie ihn in den Zielpuffer, null-terminiert.
-  3. Die Reihe von Beeindigungs-Codes besteht aus 16-Bit "Tasten". Das obere Nibbel ist bei den normalen 256 +  3. Die Reihe von Beeindigungs-Codes besteht aus 16-Bit "Tasten". Das obere Nibbel ist bei den 
-     Zeichen gleich Null, aber für Steuerungstasten wie Start, Ende, u.s.w. ist es 1. +     normalen 256 Zeichen gleich Null, aber für Steuerungstasten wie Start, Ende, u.s.w. ist es 1. 
-  4. TASTENCODES: normale ASCII-Zeichen, dargestellt als AL=ASCII-Code, AH=0. Zum Beispiel "A" ist 0041H. +  4. TASTENCODES: normale ASCII-Zeichen, dargestellt als AL=ASCII-Code, AH=0. 
-     Erweiterte Tastencodes werden als AL=Scancode, AH=1 (z.B. linke Cursortaste=0148H) dargestellt. Spezielle +     Zum Beispiel "A" ist 0041H. Erweiterte Tastencodes werden als AL=Scancode, AH=1 (z.B. linke 
-    (DIP-spezifische) Tastencodes werden als AL=code , AH=2/3 dargestellt. Z.B. bevor sie wiederhergestellte +     Cursortaste=0148H) dargestellt. Spezielle (DIP-spezifische) Tastencodes werden als AL=code, 
-     Zeichen senden (immer eingefügt, kein ^ verarbeitet) senden sie 0201H, am Ende der Wiederhergestellten +     AH=2/3 dargestellt. Z.B. bevor sie wiederhergestellte Zeichen senden (immer eingefügt, kein ^ 
-     Zeichen senden sie 0202H.+     verarbeitet) senden sie 0201H, am Ende der Wiederhergestellten Zeichen senden sie 0202H.
   5. Wenn sie einen Rahmen angeben, so werden beim Bearbeiten 2 Bytes von "wid" genommen.   5. Wenn sie einen Rahmen angeben, so werden beim Bearbeiten 2 Bytes von "wid" genommen.
-  6. Ähnlich, wenn sie eine Eingabeaufforderung angeben haben sie weniger Spielraum bei der Bearbeitung. +  6. Ähnlich, wenn sie eine Eingabeaufforderung angeben haben sie weniger Spielraum bei der 
-  7. Doppelwort Zeiger und Adressen haben die niederwertige Adresse im höherwertigen Wort (also Offset:Segment) +     Bearbeitung. 
 +  7. Doppelwort Zeiger und Adressen haben die niederwertige Adresse im höherwertigen Wort
 \\ \\
 \\ \\
Zeile 1255: Zeile 1324:
                 CS:SI Fehlertext (doppelt null-terminiert)                 CS:SI Fehlertext (doppelt null-terminiert)
   Rückgabe:     keine.   Rückgabe:     keine.
-  Beschreibung: Zeigt den Text in CS:SI in einem doppelten Rahmen. Es gibt keine Überschrift. Es wird ein Piepton ausgegeben und auf einen Tastendruck gewartet. Der Bildschirm wird dann wiederhergestellt und die Steuerung an den Aufrufer zurückgegeben.\\+Beschreibung: Zeigt den Text in CS:SI in einem doppelten Rahmen. Es gibt keine Überschrift. Es wird ein Piepton ausgegeben und auf einen Tastendruck gewartet. Der Bildschirm wird dann wiederhergestellt und die Steuerung an den Aufrufer zurückgegeben.\\
 \\ \\
 \\ \\
hardware/doku/techrefguide/abschnitt3.1209849438.txt.gz · Zuletzt geändert: 16/02/2024 17:02 (Externe Bearbeitung)