•  Back 
  •  BIOS 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - das Betriebssystem
Author      : 
Version     : tos.hyp (5. März 2013)
Subject     : Programmieren/Atari
Nodes       : 3001
Index Size  : 93602
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Titel
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File3.1  Das BIOS                                                      TOS

Die BIOS-Funktionen stellen die unterste Schnittstelle des 
Betriebssystems zur Hardware des Atari dar, und werden über den 
680X0-Trap#13 aufgerufen. Diese Funktionen sollten möglichst nicht von 
Applikationsprogrammen verwendet werden, da wesentlich 
leistungsfähigere Funktionen auf höherer Ebene als bessere Alternative 
verfügbar sind. Insgesamt sind die folgenden Funktionen verfügbar:

Bconin     Zeichen von Eingabegerät einlesen.
Bconout    Zeichen auf Ausgabegerät ausgeben.
Bconstat   Status eines Eingabegeräts ermitteln.
Bcostat    Status eines Ausgabegeräts ermitteln.
Drvmap     Angeschlossene Laufwerke ermitteln.
Getbpb     BIOS-Parameterblock eines Geräts ermitteln.
Getmpb     Speicherparameterblock ermitteln.
Kbshift    Tastaturstatus ermitteln.
Mediach    Ermitteln, ob die Diskette gewechselt wurde.
Rwabs      Sektoren auf Laufwerken lesen und schreiben.
Setexc     Exceptionvektoren ermitteln und festlegen.
Tickcal    Timer-Konstante ermitteln.

Das BIOS ist in MagiC reentrant. Das heißt, diese Funktionen können 
(solange der jeweilge Supervisorstack nicht überläuft...) auch aus 
Interrupts mehrfach aufgerufen werden.

Hinweis:

   ∙ Die <saveptr_area> des BIOS ist (aus Kompatiblitätsgründen) noch 
     vorhanden, wird jedoch vom System nicht benutzt.

   ∙ Die Stacküberprüfung von Turbo C/Pure-C wird bei Routinen 
     versagen, die im Supervisor-Modus ausgeführt werden (unter TOS 
     konnte das bisher nur bei USERDEF-Routinen im AES, die ebenfalls 
     im Supervisor-Modus ausgeführt werden, passieren).

Falls Sie eigene Routinen ins BIOS hängen, dann achten Sie darauf, 
diese voll reentrant zu gestalten. Machen Sie keine Annahmen über den 
Inhalt der <saveptr_area> !

Das BIOS nimmt seine Parameter auf dem Stack entgegen; dabei wird das 
letzte Argument aus der Parameterliste als erstes auf dem Stack 
abgelegt. Funktionsergebnisse werden im Prozessorregister d0 
zurückgeliefert. Nur die Register d3-d7 und a3-a7 werden gerettet, 
alle anderen können durch den Aufruf verändert werden.

Querverweis: GEMDOS   XBIOS   Reset-Vektor   VT-52-Terminal