atari-home.de - Foren
Hardware => Hardware (Classic 16-/32-Bit) => Thema gestartet von: guest1288 am So 24.10.2010, 20:43:25
-
Hi,
mal hier die Profis fragen bezgl. DMA Sound...
Wie und welche Möglichkeiten hat man um herrauszufinden
welche "Hardware" im Atari steckt...
Woher weiß z.B. Der STE das er DMA-SOUND hat ?
AM TOS1.xx kann es ja nicht liegen TOS 2.06 weiß es ja auch. Aber wie genau funktioniert das ?
Wie teste das Betriebssystem das ?
Gruß
Sascha
-
Hallo Sascha,
nicht nur in den STE-TOS Versionen sondern auch Falcon und TT sind mit Sicherheit Möglichkeiten integriert die erweiterte Hardware irgendwie abzufragen und wenn sie erfolgreich gefunden wurden wird dann ein eintsprechender Cookie im System angelegt. Im Mega STE wird z.B für den HD-Betrieb des Diskettenlaufwerks die Dipschalterstellung abgefragt. Es wird nicht direkt erkannt ob wirklich ein Ajax und ein HD-Diskettenlaufwerk vorhanden ist.
Mit Sicherheit wird es auch im ATARI ST-STE-TT Profibuch (http://www.atariprofibuch.de/ATARI%20Profibuch%20ST-STE-TT.pdf) erklärt das es seit dem 10.10.2010 als PDF gibt. ;)
Leider weis ich es selber nicht genauer wie das TOS das macht. Vielleicht kann ja noch wer eine kurze präzise Erklärung dazu posten.
Gruß Arthur
-
Habe hier (http://toshyp.atari.org/de/003007.html) noch etwas dazu gefunden. Also über den Cookie _SND kannst Du die Soundhardware ab TOS 1.06 aufwärts über den _SND Cookie ermitteln.
3.7.2.580 Cookie, _SND
Soundhardware
Bittabelle, die die vorhandenen Soundmöglichkeiten beschreibt. Es gilt:
Bit 0 = GI/Yamaha Sound-Chip
Bit 1 = Stereo-DMA-Sound (wie bei STE und TT)
Bit 2 = CODEC
Bit 3 = Digitaler Signalprozessor (DSP)
Bit 4 = Multiplexer
Bit 5 = erweiterte XBIOS-Routinen (Milan, GSXB)
Alle anderen Bits sind für zukünftige Zwecke reserviert.
Das MilanBlaster XBIOS setzt die Bit Nr. 2 und Nr. 5 (0x00000024l).
3.7.2.581 Cookie, _SWI
DIP-Switches
Die oberen 24 Bit sind z.Zt. unbelegt. Für die unteren 8 Bit gilt folgende Belegung:
Bit 6 = 720 Kbyte bzw. 1,44 Mbyte Diskettenlaufwerk
Bit 7 = Stereo bzw. Mono System
Die restlichen der unteren 8 Bits sind z.Zt. ebenfalls nicht belegt.
-
"Wie" ist relativ einfach. Die ST-Hardware löst immer dann eine sogenannte Exception aus, wenn auf ein nicht vorhandenes Hardwareregister zugegriffen wird.
TOS 2.06 und später greift ergo testweise auf die Register des DMA-Sounds zu. Wenn eine Exception auftrittt, heisst das die DMA Hardware ist nicht verbaut. Wenn keine Exception auftritt, ist die Hardware vorhanden. Der _SND Cookie wird dann entsprechend gesetzt.
EmuTOS nutzt die gleiche Methode.
TOS 1.06 und 1.62 setzt diese Register einfach voraus,w eswegen sie ohne STE Hardware nicht funktionieren. Frühere TOS Versionen ignorieren die nicht vorhandene Hardware einfach. Cookiejar und Hardwareerkennung über Exceptions sind aber nachrüstbar, z.B. um ein Cookiejar anzulegen.