Einen wunderschnen guten...

Dies ist der Versuch einer Dokumentation fr:

                     MCWR_SND.CPX  Version 1.0


Einleitung

  Das vorliegende CPX ist ein Ersatz fr das SOUND.CPX von ATARI.
  Die Bedienung ist im Prinzip die gleiche; deshalb werde ich nur auf die 
  nderungen eingehen. Eigentlich erklrt sich sowieso alles von selbst.
  (Warum tippe ich das hier eigentlich?)
  
  Falls jemand eventuell auftretende Seitenhiebe, Sticheleien oder sonstiges 
  nicht versteht, dies aber gerne mchte, dem kann ich nur folgendes 
  empfehlen:
  
  
  - Einstieg in die DF (falls nicht schon geschehen)
  - Eintragen in die Mailbox  MAUS WI2
  - Beitrag zahlen
  - Regelmig 'FFENTLICH' lesen
  
  Wem dann immer noch nicht alles klar ist:
  
  - Gruppenchef und Beta-Tester fr 'Zeig's mir' werden (letzteres ist so 
    ziemlich unmglich)
  - Regelmig 'GRUPPE CHEF' und 'ZEIGSMIR' lesen
  
  Schon nach wenigen Tagen wird sich dann ein nicht reversibler Effekt 
  einstellen... Aber dafr versteht man dann auch das, was man wissen wollte.
  
  
  
Das 'Warum'

  Diese Frage sollten sich viele Programmierer stellen!
  
  In meinem Fall war es so, da ich auf ein Programm stie (Zeig's mir), das 
  den MCWR-Cookie untersttzt (Erklrung kommt gleich). Leider fand ich kein 
  Programm, da diesen vernnftig einstellt.
  
  Dazu gesellte sich der Umstand, da das SOUND.CPX von ATARI unter Hi und 
  TrueColor (zumindest auf der NOVA) abstrzt...

  
  
Der MCWR-Cookie

  Dieses kleine Gebilde soll ein Manko der ATARI-DMA-Sound Untersttzung 
  ausmerzen. Es gibt nmlich keine!
  
  ATARI hat leider versumt, Betriebssystemaufrufe einzufhren, die den 
  DMA-Sound beeinflussen. Noch schlimmer ist die fehlende Mglichkeit, den 
  momentanen Status abzufragen.
  
  Somit wurde der Cookie kreiert - aber leider nicht von ATARI!
  
  Egal. In diesen Cookie schreibt man den Zustand der DMA Hardware und kann 
  ihn so wieder einstellen.
  



Das CPX

  Tja, hier isses nun. Es wird - wie alle CPXe - in den dafr vorgesehenen 
  Ordner kopiert, und das war's. Das SOUND.CPX von ATARI kann man nun lschen.
  
  Nun die Unterschiede in Look, Bedienung und Funktion des CPX, im Vergleich 
  zum Original:
  
  - Farbe! (Hallo Patrick, Hallo Reiner) Das CPX wurde etwas farbiger 
    gestaltet, um nicht ganz so langweilig zu erscheinen. In Monochrom stellt 
    sich natrlich die alte Langeweile wieder ein.
    
  - Keine Abstrze in Hi- oder TrueColor (Gru an Martin und Gerhard)
  
  - MCWR_SND erzeugt einen MCWR-Cookie (falls nicht schon vorhanden), sofern 
    dies Mglich ist; soll heien: Ein COOKIE-Jar mu da sein, und Platz fr 
    den Eintrag mu er auch noch haben.

  - Der MCWR-Cookie wird benutzt!!! Beim Neuladen des CPX (oder Booten des 
    Rechners) werden die gesicherten Werte eingestellt und in den COOKIE 
    eingetragen. Bei jedem Aufruf des CPX werden die aktuellen Werte des 
    COOKIEs eingestellt (da hilft auch 'Abbruch' nichts). Jeder nderung folgt 
    eine Aktualisierung des COOKIEs.
  
  - Den Lautsprecher des TT kann man abschalten. Die geschah auf Wunsch von 
    50% der Beta-Tester (Danke Reiner).
  
  - Die selben 50% schlugen auch vor, die Beimischung des PSG-Signals 
    einstellen zu knnen. Bitte sehr, geht auch. Der Button, neben dem PSG 
    steht, ffnet ein PopUp.
    
    Hier kann man nun whlen ob die Ausgabe des Soundchips abgeschaltet wird 
    (Aus), man die Lautstrke des PSG um 12dB absenkt (-12 dB) oder ob er 1:1 
    dem DMA-Sound beigemischt wird (0 dB).
  
  
  - Die Balance-Einstellung ist zwar prinzipiell gleich, aber die Werte werden 
    anders angegeben. Zum einen stehen sie im Slider (getrennt nach 
    links/rechts), zum anderen geben sie die Lautstrke des jeweiligen Kanals 
    an.
    
    Beide auf 20 bedeutet also, Balance in der Mitte. Links auf 0 heit 
    Balance auf rechts. Das entspricht den Mglichkeiten der Hardware, die 
    Lautstrke fr jeden Kanal getrennt absenken zu knnen.
    



Die Zukunft

  "Niemand wei, was die Zukunft bringt"
  
  Das Programm ist selbstverstndlich fehlerfrei. Also, "bei mir 
  funktioniert's". 
  Bei Thorsten funktioniert ja schlielich auch alles. (Bis auf den Eprommer) 
  
  
  Zumindest sind bisher noch keine Netzteile oder Taschenlampen drauf 
  gegangen...
  
  Im Klartext: Fehlerreports bitte an
  
     John McLoud
     Mozartstrae 1a
     65439 Flrsheim am Main
     
  oder per e-mail an:
  
    John Mcloud @ WI2 im Mausnetz
    
  


Rechtliches

  Da es keine fehlerfreien Programme gibt (hab ich mal was anderes 
  behauptet?), ist auch MCWR_SND nicht fehlerfrei.
  
  Der Look des Programmes (und das Icon) sind bei ATARI geklaut, hoffentlich 
  ohne Konsequenzen.
  
  Weiterhin verwende ich in diesem Text Warenzeichen ohne Ende. Sie sind als 
  solche zu betrachten, auch wenn sie nicht so gekennzeichnet sind.
  
  Ich bernehme aber keinerlei Garantie fr irgendwas; dafr ist der Gebrauch 
  des Programms auch kostenlos (hoffentlich nicht umsonst).
  
  Fr eine Funktion auf FALCONs bernehme ich noch weniger Garantie.
  Seit 'Hai Nuun' ist unser FALCON-Betatester jedem Test gegenber etwas 
  skeptisch. (Kopf hoch, Michael)
  
  Also, macht mich nicht fr formatierte Festplatten auf FALCONs 
  verantwortlich.


  Ganz besonders bernehme ich keine Garantie fr kaputte Taschenlampen, 
  defekte Netzteile, leere Taschenrechner und weggeschnapptte Eprommer. 

  Ach so, das Programm ist trotz meiner Unkenntnis in 'C' geschrieben (kann 
  man in GFA-Basic CPXe schreiben? Die Frage ist ernstgemeint. Ich bitte um 
  Antwort).




Dank an

  Alle Betatester   (war nett von Dir, Reiner; Dirk, Du mut eh immer ran)
  Dirk Haun         (Tips in 'C', Assemblerroutine fr COOKIEs & Test)
  Thorsten Pohlmann (Wofr danke ich dem eigentlich?)
  Joachim Loder     (Die Personifizierung des zu spt kommens; Termine? Wozu?)
  Volker Laut       (Fr heftige Tritte, wenn ich mal wieder abhnge)
  Sabine Hart       (Meine Verlobte)
  Lara McLoud       (Ja, die gibt's! Frau, Du bist echt in Ordnung)
  die "Bren '89"   (Dartverein in Flrsheim; Dank fr schne Stunden)
  Art Guiness       (Tolles Bier)
  den Arabern       (oder wer auch immer den Kaffee erfunden hat)
  "House of Prince" (Ich kann mir das Qualmen einfach nicht abgewhnen)
  Michael Ruge      (Fr das nicht verabreichte blaue Auge)
  Carlo Guzzi       (fr's Grnden einer Motorradfabrik)
  
  Alexander Schuster, Reiner Laun und Umberto Muscolino. (Ciao Babies!!!)
  

Zum Schlu noch der MCWR-COOKIE, wie ich ihn implementiert habe:

Der Wert des MCWR-COOKIEs wird als Werte fr das MICROWIRE-Interface benutzt.

Das hchste Byte steht fr die Gesamtautstrke
Das darauffolgende Byte reprsentiert die Lautstrke des linken Kanals
Das darauffolgende Byte reprsentiert die Lautstrke des rechten Kanals
Das letzte Byte wird in zwei Nibble aufgeteilt. Das hherwertige stellt den 
Wert fr Tiefen, das Niederwertige den fr Hhen dar.

In 'C' ausgedrckt:

Der Wert des MCWR-COOKIEs reprsentiert folgende Struktur.

typedef struct
{
	unsignded volume: 8;
	unsignded left:   8;
    unsignded right:  8;
    unsignded bass:   4;
    unsignded treble: 4;
} MCWR;
	
 