VOICE Homepage: http://de.os2voice.org |
November 2003
[Inhaltsverzeichnis]
|
Von Jürgen Gaida © November 2003 |
Dieser Artikel beschreibt den Aufbau, jedenfalls bezogen auf die Soundkarteneinträge, sowie die verschiedenen Möglichkeiten zur Bearbeitung der MMPM2.INI.
Der Anlaß, diesen Artikel zu schreiben, bestand darin, daß vielerorts und zuletzt noch in Robert Fuchs Artikel im VOICE Newsletter (Februar 2003) bei Problemen mit der Soundkarteninstallation unter OS/2 Warp 4, Warp 4.5 (MCP1 und MCP2) und insbesondere eCS 1.0x immer der Rat gegeben wurde, MMPM/2 zu entfernen und anschließend neu zu installieren.
In einigen Newsgroups und auf OS/2-spezifischen Webseiten kamen jedoch auch immer wieder Vorschläge, es erst einmal anders zu versuchen.
Dieser Artikel beschreibt das "anders versuchen". Eine Funktionsgarantie kann nicht gegeben werden, allerdings erscheinen der Aufbau und das Prozedere zur Bearbeitung am Ende trivial, so daß unter normalen Umständen die MMPM2.INI erfolgreich bearbeitet werden kann.
Die Probleme bei der Soundkarteninstallation treten für gewöhnlich dann auf, wenn eine ISA-Soundkarte gegen eine PCI-Soundkarte getauscht wird. Insbesondere wenn die ISA-Soundkarte von OS/2 direkt unterstützt wurde, fehlte eine Deinstallationsroutine. Aber auch andere, externe Treiber bringen nicht immer eine funktionierende Deinstallationsroutine mit, so daß am Ende außer dem Entfernen von MMPM/2 keine Alternative blieb. Besonders problematisch erwies sich dabei eCS 1.0x, da bei vielen Installationen ein entsprechender Menüeintrag "MMPM/2 entfernen" nicht vorhanden war - ob es alle eCS Versionen/Installationen betrifft, ist unklar. Möglicherweise ist der Autor auch der einzige, der ein solches System hat. Jedoch, die Deinstallation des MMPM/2-Systems ist natürlich mit einer Menge zusätzlicher Arbeit verbunden. Müssen doch anschließend nach erfolgter Neuinstallation die diversen Multimedia-Plugins der Browser neuinstalliert werden, ebenso wie alle anderen MMPM/2-spezifischen Erweiterungen.
Mit der Bearbeitung einer bestehenden MMPM2.INI zur Vorbereitung der Installation einer neuen Soundkarte oder besser der Installation eines neuen Treibers kann nun das Entfernen von MMPM/2 vermieden werden. Sollten die hier angegebenen Lösungsschritte nicht zum Erfolg führen - MMPM/2 können Sie anschließend immer noch entfernen und neu installieren.
Dieser Artikel enthält Beispiele zu 6 verschiedenen Soundkarten - einige dieser MMPM2.INI'S wurden mir von Robert Fuchs zur Verfügung gestellt und stammen zum Teil auch von Mitgliedern des Team OS/2 Ruhr e.V. An dieser Stelle vielen Dank für die Unterstützung!
Durch die Vielzahl an Beispielen ist der Artikel nicht sehr flüssig zu lesen, jedoch hat jedes der Beispiele gewisse Strukturmerkmale, die auch auf andere Soundkartentreiber, die nicht genannt sind, zutreffen und somit deren Identifizierung vereinfachen können.
Die Inhalte der MMPM2.INI sind in einer anderen Schriftart dargestellt als Kommentare und weiterer Text. Die Reihenfolge der Einträge/Sektionen kann von der hier gefundenen abweichen. Sektionen beginnen immer mit einem Begriff in eckigen Klammern [abcxyz] und enden mit der nächsten Sektion. Dieser Aufbau ist eigentlich typisch für ASCII-Steuerdateien.
[systemvalues] closedcaption=0 mastervolume=100 headphones=1 speakers=1 workpath=C:\MMOS2 qosvalue=65537 qoserrorflag=2
Als "workpath" können andere Pfade angegeben sein. Wichtig ist dabei nur, daß der Pfad bzw. das Verzeichnis auch vorhanden ist!
[IBMDIGVIDPLAYER01] VERSIONNUMBER=1.2 PRODUCTINFO=Software Motion Video MCDDRIVER=SVMC MCDTABLE=MDM RESOURCENAME=VIDEO PLAYER01 DEVICEFLAG=1 DEVICETYPE=12 SHARETYPE=3 RESOURCEUNITS=10 RESOURCECLASSES=2,10,1 CONNECTORS=1,3,,1 EXTNAMES=5,AVI,FLC,FLI,MOV,QT EATYPES=Digital Video ALIASNAME=DigitalVideo Player
[SPEAKER] VERSIONNUMBER=1 PRODUCTINFO=SPEAKER RESOURCENAME=SPEAKER DEVICEFLAG=2 DEVICETYPE=13 SHARETYPE=1 RESOURCEUNITS=0 RESOURCECLASSES=1,1 CONNECTORS=1,15,,0
[HEADPHONE] VERSIONNUMBER=1 PRODUCTINFO=HEADPHONE RESOURCENAME=HEADPHONE DEVICEFLAG=2 DEVICETYPE=14 SHARETYPE=1 RESOURCEUNITS=0 RESOURCECLASSES=1,1 CONNECTORS=1,15,,0
[MICROPHONE] VERSIONNUMBER=1 PRODUCTINFO=MICROPHONE RESOURCENAME=MICROPHONE DEVICEFLAG=2 DEVICETYPE=15 SHARETYPE=1 RESOURCEUNITS=0 RESOURCECLASSES=1,1 CONNECTORS=1,16,,0
[IBMFILTER01] VERSIONNUMBER=2.0 PRODUCTINFO=IBM Mapper MCDDRIVER=FILTMCD VSDDRIVER=IBMMAP MCDTABLE=MDM RESOURCENAME=Filter1 DEVICEFLAG=2 DEVICETYPE=18 SHARETYPE=3 RESOURCEUNITS=10 RESOURCECLASSES=1,1 PARMSTRING=Mapper ALIASNAME=MAPPER
[IBMFILTER02] VERSIONNUMBER=2.0 PRODUCTINFO=IMA CODEC MCDDRIVER=FILTMCD VSDDRIVER=IMAFILT MCDTABLE=MDM RESOURCENAME=Filter2 DEVICEFLAG=2 DEVICETYPE=18 SHARETYPE=3 RESOURCEUNITS=10 RESOURCECLASSES=1,1 PARMSTRING=IMAADPCMFilter ALIASNAME=IMACODEC
[IBMFILTER03] VERSIONNUMBER=2.0 PRODUCTINFO=Microsoft CODEC MCDDRIVER=FILTMCD VSDDRIVER=MSFILT MCDTABLE=MDM RESOURCENAME=Filter3 DEVICEFLAG=2 DEVICETYPE=18 SHARETYPE=3 RESOURCEUNITS=10 RESOURCECLASSES=1,1 PARMSTRING=MSADPCMFilter ALIASNAME=MSCODEC
[IBMMPEGPLAYER01] VERSIONNUMBER=1.2 PRODUCTINFO=OpenMPEG Video MCDDRIVER=DVMC MCDTABLE=MDM RESOURCENAME=OpenMPEG01 DEVICEFLAG=5 DEVICETYPE=12 SHARETYPE=3 RESOURCEUNITS=10 RESOURCECLASSES=2,10,1 CONNECTORS=1,3,,1 EXTNAMES=7,MPG,VBS,DAT,M2P,CDI,M2T,M1T ALIASNAME=OpenMPEG Video 2
[IBMCDAUDIO01] VERSIONNUMBER=2.0 PRODUCTINFO=IBMCDAUDIO MCDDRIVER=CDAUDIO VSDDRIVER=GENCDVSD PDDNAME=CDROM MCDTABLE=MDM RESOURCENAME=CD1 DEVICEFLAG=1 DEVICETYPE=3 SHARETYPE=2 RESOURCEUNITS=1 RESOURCECLASSES=1,1 PARMSTRING=Drive=1 CONNECTORS=1,6,HEADPHONE,1 ALIASNAME=Compact Disc
[IBMCDAUDIO02] VERSIONNUMBER=2.0 PRODUCTINFO=IBMCDAUDIO MCDDRIVER=CDAUDIO VSDDRIVER=GENCDVSD PDDNAME=CDROM MCDTABLE=MDM RESOURCENAME=CD2 DEVICEFLAG=1 DEVICETYPE=3 SHARETYPE=2 RESOURCEUNITS=1 RESOURCECLASSES=1,1 PARMSTRING=Drive=2 CONNECTORS=1,6,HEADPHONE,1 ALIASNAME=CD 2
Folgender Eintrag verdeutlicht bereits den einfachen Aufbau der
MMPM2.INI:
in diesem Abschnitt wird der Digital Video Encoder beschrieben, der in
der Sektion [drivers] (folgt weiter unten) in der Zeile
"Digitalvideo" auftaucht.
[IBMDIGVIDENC01] VERSIONNUMBER=1.21J PRODUCTINFO=Hauppauge WinCast TV MCDDRIVER=SVMC VSDDRIVER=VIDVCI PDDNAME=WCAST 1$ MCDTABLE=MDM RESOURCENAME=Wcast01 DEVICEFLAG=1 DEVICETYPE=12 SHARETYPE=3 RESOURCEUNITS=10 RESOURCECLASSES=2,10,1 CONNECTORS=1,3,,1 ALIASNAME=Wcast 3
Der nächste Abschnitt listet alle vorhandenen Treiber auf und ist der wichtigste Abschnitt, da er die Begriffe und Namen aufzeigt, die im weiteren zur Bearbeitung benötigt werden.
[drivers] Digitalvideo=IBMDIGVIDPLAYER01,IBMMPEGPLAYER01,IBMDIGVIDENC01 Speaker=SPEAKER Headphone=HEADPHONE Microphone=MICROPHONE Filter=IBMFILTER01,IBMFILTER02,IBMFILTER03 CDaudio=IBMCDAUDIO01,IBMCDAUDIO02 CDXA=IBMCD0XA_1
Je nach vorhandener Hardware, können auch weniger oder mehr CD-Audioeinheiten gelistet sein. Es können Player fehlen oder weitere vorhanden sein. Sowohl die aufgeführten Filter als auch CD-Audioeinheiten sollten auch vorhanden sein. D.h. jeder Filter muß in der MMPM2.INI beschrieben sein, ebenso wie CD-Audiogeräte, welche natürlich auch hardwareseitig vorhanden sein sollten!
Nachfolgende Einträge (immer noch in der Sektion [drivers]) verweisen auf die installierte Soundkarte!
ProAudioSpectrum 16
Waveaudio=IBMWAVEPAS1601 Sequencer=IBMSEQPAS1601 Ampmix=IBMAMPMIXPAS1601
Unabhängig vom gewählten Beispiel stehen in diesen 3 Zeilen alle installierten Treiber und Kontrolleinheiten sowie Regel-/Mixereinheiten. Unter Sequencer und Ampmix sind auch mehrere Einträge möglich.
Aureal Vortex AU8820
Waveaudio=AURVORTEXWAVE01 Ampmix=AURVORTEXAMPMIX01,AURWTAMPMIX01,AURMPUAMPMIX01 Sequencer=AURVORTEXWT01,AURVORTEXMPU40101
WaveAudio (Crystal-Chipsatz)
Waveaudio=IBMWaveBusAudio01 Ampmix=IBMAmpMixBusAudio01,IBMAMPMIXMPU40101 Sequencer=IBMSEQMPU40101
Soundblaster Live
Waveaudio=SBLIVEWAVE01 Ampmix=SBLIVEAMPMIX01 Sequencer=DOCTiMidity01
Soundblaster AWE32
Waveaudio=IBMWAVESB01 Ampmix=IBMAMPMIXSB01,IBMAMPMIXMPU40101 Sequencer=IBMSEQSB01,IBMSEQMPU40101
Yamaha M724
Waveaudio=IBMWAVEYMF01 Sequencer=IBMSEQYMF01 Ampmix=IBMAMPMIXYMF01
Wichtig! Bevor diese Einträge bearbeitet werden: die Treibernamen verweisen auf weitere Sektionen in der MMPM2.INI.
Man sollte daher zuerst die Sektionen lokalisieren und bearbeiten. Danach können die drei vorgenannten Einträge modifiziert oder gelöscht werden.
Ebenfalls wichtig: Die Wave- und Sequencersektionen werden meist zusätzlich mit dem Zusatz PLAY und einmal mit Zusatz RECORD aufgeführt. Insgesamt kann damit sowohl der Waveaudiotreiber als auch der Sequencer bis zu 3mal in der MMPM2.INI auftauchen. Die Anordnung der Einträge kann auch von den Beispielen abweichen. Wichtig sind jedoch immer die Zeilen für Waveaudio, Sequencer und Ampmix.
Im folgenden nun die Soundkartenspezifischen Einträge, entsprechend der obigen Beispiele.
ProAudioSpectrum 16
[IBMWAVEPAS1601] VERSIONNUMBER=2.0 PRODUCTINFO=Pro AudioSpectrum 16 MCDDRIVER=AUDIOMCD VSDDRIVER=AUDIOIF PDDNAME=PAS161$ MCDTABLE=MDM RESOURCENAME=ProAudioSpecW01 DEVICEFLAG=1 DEVICETYPE=7 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,3,IBMAMPMIXPAS1601,1 PARMSTRING=FORMAT=1,SAMPRATE=22050,BPS=16,CHANNELS=1,DIRECTION=PLAY EXTNAMES=7,WAV,_AU,VOC,AU,SND,AIF,IFF EATYPES=Digital Audio ALIASNAME=Digital Audio
[IBMWAVEPAS1601-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=0,3,1,1,3,1
[IBMWAVEPAS1601-RECORD] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=1,3,1,0,3,1
Aureal Vortex AU8820
[AURVORTEXWAVE01] VERSIONNUMBER=0.1.3 PRODUCTINFO=Aureal Vortex AU8820 MCDDRIVER=AUDIOMCD VSDDRIVER=AUDIOIF PDDNAME=ASPOS21$ MCDTABLE=MDM RESOURCENAME=AurealWave01 DEVICEFLAG=1 DEVICETYPE=7 SHARETYPE=3 RESOURCEUNITS=17 RESOURCECLASSES=1,1 CONNECTORS=1,3,AURVORTEXAMPMIX01,1 PARMSTRING=FORMAT=1,SAMPRATE=22050,BPS=8,CHANNELS=1,DIRECTION=PLAY EXTNAMES=1,WAV EATYPES=Digital Audio ALIASNAME=Digital Audio
[AURVORTEXWAVE01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=0,3,1,1,3,1
[AURVORTEXWAVE01-RECORD] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=1,3,1,0,3,1
Wie bereits eingangs erwähnt, taucht der Waveaudiotreiber dreimal auf. Zur vollständigen Entfernung müssen also alle drei Sektionen gelöscht werden. Ebenfalls gut erkennbar ist, daß über die Zeile CONNECTORS der Zugriff auf den AMPMIX festgelegt wird.
WaveAudio (Crystal-Chipsatz)
[IBMWaveBusAudio01] VERSIONNUMBER=1.76. PRODUCTINFO=Crystal Audio MCDDRIVER=AUDIOMCD VSDDRIVER=AUDIOIF PDDNAME=BSAUD1$ MCDTABLE=MDM RESOURCENAME=BusAudioW01 DEVICEFLAG=1 DEVICETYPE=7 SHARETYPE=3 RESOURCEUNITS=2 RESOURCECLASSES=2,1,2 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=1,3,IBMAmpMixBusAudio01,1 PARMSTRING=FORMAT=1,SAMPRATE=22050,BPS=16,CHANNELS=2,DIRECTION=PLAY EXTNAMES=4,WAV,VOC,OGG,MP3 EATYPES=Digital Audio, ALIASNAME=Digital Audio
[IBMWaveBusAudio01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=0,3,1,1,3,1
[IBMWaveBusAudio01-RECORD] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=1,3,1,0,3,1
Soundblaster Live
[SBLIVEWAVE01] VERSIONNUMBER=0.8.0 PRODUCTINFO=SoundBlaster Live! Wave Audio MCDDRIVER=AUDIOMCD VSDDRIVER=AUDIOIF PDDNAME=SBLIVE1$ MCDTABLE=MDM RESOURCENAME=SBLiveWave01 DEVICEFLAG=1 DEVICETYPE=7 SHARETYPE=3 RESOURCEUNITS=33 RESOURCECLASSES=2,32,1 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=1,3,SBLIVEAMPMIX01,1 PARMSTRING=FORMAT=1,SAMPRATE=22050,BPS=8,CHANNELS=1,DIRECTION=PLAY EXTNAMES=1,WAV EATYPES=Digital Audio ALIASNAME=Digital Audio
[SBLIVEWAVE01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=0,3,1,1,3,1
[SBLIVEWAVE01-RECORD] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=1,3,1,0,3,1
Soundblaster AWE32
[IBMWAVESB01] VERSIONNUMBER=1.1 PRODUCTINFO=Sound Blaster AWE32 MCDDRIVER=AUDIOMCD VSDDRIVER=SBAWEVSD PDDNAME=SBAUD1$ MCDTABLE=MDM RESOURCENAME=SoundBlasterW01 DEVICEFLAG=1 DEVICETYPE=7 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,3,IBMAMPMIXSB01,1 PARMSTRING=FORMAT=1,SAMPRATE=22050,BPS=16,CHANNELS=2,DIRECTION=PLAY EXTNAMES=2,WAV,VOC EATYPES=Digital Audio ALIASNAME=Digital Audio
[IBMWAVESB01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=0,3,1,1,3,1
[IBMWAVESB01-RECORD] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=1,3,1,0,3,1
Yamaha M724
[IBMWAVEYMF01] VERSIONNUMBER=2.0 PRODUCTINFO=YM724 MCDDRIVER=AUDIOMCD VSDDRIVER=AUDIOIF PDDNAME=YM7241$ MCDTABLE=MDM RESOURCENAME=YmfW01 DEVICEFLAG=1 DEVICETYPE=7 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,3,IBMAMPMIXYMF01,1 PARMSTRING=FORMAT=1,SAMPRATE=22050,BPS=16,CHANNELS=1,DIRECTION=PLAY EXTNAMES=1,WAV EATYPES=Digital Audio ALIASNAME=Digital Audio
[IBMWAVEYMF01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=Ampmix01 CONNECTION01=0,3,1,1,3,1
[IBMWAVEYMF01-RECORD] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=Ampmix01 CONNECTION01=1,3,1,0,3,1
Mit diesen Einträgen sind alle Einstellungen und Referenzen der Soundkarte in Bezug auf WaveAudio erfaßt. Werden diese gelöscht, steht auch kein Sound mehr zur Verfügung. Der Soundkartentreiber ist damit jedoch noch nicht deinstalliert, da ja noch der Sequencer und der Ampmix ausstehen.
Wie man an den Beispielen sehen kann, sind die Einstellungen der alten ISA-Karten durchaus nicht antiquierter als die der neueren PCI-Karten. Die AWE32 kommt neben der WaveAudio (Crystal Chipsatz) als einzige Karte in den Beispielen mit 2 Kanälen als Standard. Und selbst die Standardeinstellungen der steinalten PAS16 müssen sich nicht hinter denen des Aureal-Chipsatzes oder der Soundblaster Live verstecken.
Es folgen nun die Beispiele für die Abschnitte AMPMIX.
ProAudioSpectrum 16
[IBMAMPMIXPAS1601] VERSIONNUMBER=2.0 PRODUCTINFO=Pro AudioSpectrum 16 MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=PAS161$ MCDTABLE=MDM RESOURCENAME=ProAudioSpecA01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=2 RESOURCECLASSES=2,1,1 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=TREBLE=50,BASS=50,PITCH=50,GAIN=70,BALANCE=50,VOL=70,INPUT=MIC,OUTPUT=SPEAKER,RESOURCEDLL=AUDIOIF,RCID=5
Aureal Vortex AU8820
[AURVORTEXAMPMIX01] VERSIONNUMBER=0.1.3 PRODUCTINFO=Aureal Vortex AU8820 MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=ASPOS21$ MCDTABLE=MDM RESOURCENAME=AurealAmpMixer01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=17 RESOURCECLASSES=2,16,1 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=BALANCE=50,VOL=100,INPUT=LINE,OUTPUT=SPEAKER
[AURWTAMPMIX01] VERSIONNUMBER=0.1.3 PRODUCTINFO=Aureal Vortex AU8820 Wavetable MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=ASPOS21$ MCDTABLE=MDM RESOURCENAME=AurealWtMixer01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=BALANCE=50,VOL=100,INPUT=LINE,OUTPUT=SPEAKER
[AURMPUAMPMIX01] VERSIONNUMBER=0.1.3 PRODUCTINFO=Aureal Vortex AU8820 MPU-401 MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=ASPOS31$ MCDTABLE=MDM RESOURCENAME=AurealMpuMixer01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=BALANCE=50,VOL=100,INPUT=LINE,OUTPUT=SPEAKER
WaveAudio (Crystal-Chipsatz)
[IBMAmpMixBusAudio01] VERSIONNUMBER=1.76. PRODUCTINFO=Crystal Audio MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=BSAUD1$ MCDTABLE=MDM RESOURCENAME=BusAudioA01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=2 RESOURCECLASSES=2,1,2 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=TREBLE=50,BASS=50,PITCH=50,GAIN=70,BALANCE=50,VOL=75,INPUT=LINE,OUTPUT=SPEAKER,RESOURCEDLL=BSAUDRES,RCID=8
[IBMAMPMIXMPU40101] VERSIONNUMBER=2.0.0 PRODUCTINFO=MPU-401 MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=MPU4011$ MCDTABLE=MDM RESOURCENAME=MPU-401AMPMIX01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=2,4,,0,14,,0 PARMSTRING=TREBLE=50,BASS=50,PITCH=50,GAIN=70,BALANCE=50,VOL=100,INPUT=LINE,OUTPUT=SPEAKER,RESOURCEDLL=MPU401,RCID=9
Soundblaster Live
[SBLIVEAMPMIX01] VERSIONNUMBER=0.8.0 PRODUCTINFO=SoundBlaster Live! Wave Audio MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=SBLIVE1$ MCDTABLE=MDM RESOURCENAME=SBLiveAmpMixer01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=33 RESOURCECLASSES=2,32,1 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=BALANCE=50,VOL=100,INPUT=LINE,GAIN=70,OUTPUT=SPEAKER
Soundblaster AWE32
[IBMAMPMIXSB01] VERSIONNUMBER=1.1 PRODUCTINFO=Sound Blaster AWE32 MCDDRIVER=AMPMXMCD VSDDRIVER=SBAWEVSD PDDNAME=SBAUD1$ MCDTABLE=MDM RESOURCENAME=SoundBlasterA01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=2 RESOURCECLASSES=2,1,1 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=TREBLE=75,BASS=75,PITCH=50,GAIN=50,BALANCE=50,VOL=100,INPUT=MIC,OUTPUT=SPEAKER,RESOURCEDLL=SBAWEVSD,RCID=4
[IBMAMPMIXMPU40101] VERSIONNUMBER=2.0.0 PRODUCTINFO=MPU-401 MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=MPU4011$ MCDTABLE=MDM RESOURCENAME=MPU-401AMPMIX01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=2,4,,0,14,,0 PARMSTRING=TREBLE=50,BASS=50,PITCH=50,GAIN=70,BALANCE=50,VOL=100,INPUT=LINE,OUTPUT=SPEAKER,RESOURCEDLL=MPU401,RCID=9
Yamaha M724
[IBMAMPMIXYMF01] VERSIONNUMBER=2.0 PRODUCTINFO=YM724 MCDDRIVER=AMPMXMCD VSDDRIVER=AUDIOIF PDDNAME=YM7241$ MCDTABLE=MDM RESOURCENAME=YmfA01 DEVICEFLAG=2 DEVICETYPE=9 SHARETYPE=3 RESOURCEUNITS=2 RESOURCECLASSES=2,1,1 VALIDCOMBINATIONS=1,2,2,1 CONNECTORS=5,4,,0,9,,0,8,,0,10,,0,7,,0 PARMSTRING=TREBLE=75,BASS=75,PITCH=50,GAIN=70,BALANCE=50,VOL=100,INPUT=LINE,OUTPUT=SPEAKER,RESOURCEDLL=AUDIOIF,RCID=4
Der Aufbau der Sektion AMPMIX ist letztlich immer gleich. Zusammen mit der Sektion [systemvalues] lassen sich die Lautstärke, die Balance, Bässe, Höhen usw. zur Not auch ohne GUI-Mixer manipulieren. Jedenfalls sind diese Einträge einen Blick wert, wenn der Sound nur noch ganz dünn kommt.
Die nächste und vorerst letzte Sektion ist der Sequencer. Wie schon erwähnt, sind meist mehrere Sektionen SEQUENCER möglich.
Es folgen nun die Beispiele für die Sektion SEQUENCER.
ProAudioSpectrum 16
[IBMSEQPAS1601] VERSIONNUMBER=2.0 PRODUCTINFO=Pro AudioSpectrum 16 MCDDRIVER=MIDIMCD VSDDRIVER=AUDIOIF PDDNAME=PAS161$ MCDTABLE=MDM RESOURCENAME=ProAudioSpecS01 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,1,IBMAMPMIXPAS1601,1 PARMSTRING=CHANNELS=1111111111111111 MIDITYPE=General MIDI EXTNAMES=1,MID EATYPES=MIDI ALIASNAME=MIDI
[IBMSEQPAS1601-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=0,1,1,1,4,1
Aureal Vortex AU8820
[AURVORTEXWT01] VERSIONNUMBER=0.1.3 PRODUCTINFO=Aureal Vortex AU8820 Wavetable MCDDRIVER=MIDIMCD VSDDRIVER=AUDIOIF PDDNAME=ASPOS21$ MCDTABLE=MDM RESOURCENAME=AurealWavetable01 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,1,AURWTAMPMIX01,1 PARMSTRING=CHANNELS=1111111111111111 MIDITYPE=General MIDI EXTNAMES=1,MID EATYPES=MIDI ALIASNAME=MIDI
[AURVORTEXWT01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX02 CONNECTION01=0,1,1,1,4,1
[AURVORTEXMPU40101] VERSIONNUMBER=0.1.3 PRODUCTINFO=Aureal Vortex AU8820 MPU-401 MCDDRIVER=MIDIMCD VSDDRIVER=AUDIOIF PDDNAME=ASPOS31$ MCDTABLE=MDM RESOURCENAME=AurealMPU40101 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,1,AURMPUAMPMIX01,1 PARMSTRING=CHANNELS=1111111111111111 MIDITYPE=General MIDI ALIASNAME=MIDI 2
[AURVORTEXMPU40101-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX03 CONNECTION01=0,1,1,1,4,1
WaveAudio (Crystal-Chipsatz)
[IBMSEQMPU40101] VERSIONNUMBER=2.0.0 PRODUCTINFO=MPU-401 MCDDRIVER=MIDIMCD VSDDRIVER=AUDIOIF PDDNAME=MPU4011$ MCDTABLE=MDM RESOURCENAME=MPU-401SEQ01 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,1,IBMAMPMIXMPU40101,1 PARMSTRING=CHANNELS=1111111111111111, MIDITYPE=General MIDI EXTNAMES=1,MID EATYPES=MIDI ALIASNAME=MIDI
[IBMSEQMPU40101-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX02 CONNECTION01=0,1,1,1,4,1
Soundblaster Live
[DOCTiMidity01] VERSIONNUMBER=2.10. PRODUCTINFO=TiMidity 2.10.4 MCDDRIVER=TIMIDITY MCDTABLE=MDM RESOURCENAME=TiMidity01 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=1 RESOURCEUNITS=1 RESOURCECLASSES=1,1 ALIASNAME=TiMidity EXTNAMES=2,MID,MOD
Soweit TiMidity eine Deinstallationsroutine besitzt, sollte diese auch verwendet werden!
Soundblaster AWE32
[IBMSEQSB01] VERSIONNUMBER=1.1 PRODUCTINFO=SoundBlaster AWE32 MCDDRIVER=MIDIMCD VSDDRIVER=SBAWEVSD PDDNAME=SBAUD1$ MCDTABLE=MDM RESOURCENAME=SoundBlasterS01 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,1,IBMAMPMIXSB01,1 PARMSTRING=CHANNELS=1111111111111111, MIDITYPE=Soundblaster EXTNAMES=1,MID EATYPES=MIDI ALIASNAME=MIDI
[IBMSEQSB01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX CONNECTION01=0,1,1,1,4,1
[IBMSEQMPU40101] VERSIONNUMBER=2.0.0 PRODUCTINFO=MPU-401 MCDDRIVER=MIDIMCD VSDDRIVER=AUDIOIF PDDNAME=MPU4011$ MCDTABLE=MDM RESOURCENAME=MPU-401SEQ01 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,1,IBMAMPMIXMPU40101,1 PARMSTRING=CHANNELS=1111111111111111, MIDITYPE=General MIDI ALIASNAME=MIDI2
[IBMSEQMPU40101-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=AMPMIX02 CONNECTION01=0,1,1,1,4,1
Yamaha M724
[IBMSEQYMF01] VERSIONNUMBER=2.0 PRODUCTINFO=YM724 MCDDRIVER=MIDIMCD VSDDRIVER=AUDIOIF PDDNAME=YM7241$ MCDTABLE=MDM RESOURCENAME=YmfS01 DEVICEFLAG=1 DEVICETYPE=8 SHARETYPE=3 RESOURCEUNITS=1 RESOURCECLASSES=1,1 CONNECTORS=1,1,IBMAMPMIXYMF01,1 PARMSTRING=MIDITYPE=General MIDI 16 CHANNELS=1111111111111111 EXTNAMES=1,MID EATYPES=MIDI ALIASNAME=MIDI
[IBMSEQYMF01-PLAY] NUMDEVICES=1 NUMCONNECTIONS=1 DEVICE01=Ampmix01 CONNECTION01=0,1,1,1,4,1
Bei einigen Installationen findet sich noch eine weitere Sektion: [default names]. Diese Sektion kann, muß aber nicht vorhanden sein.
ProAudioSpectrum 16
[defaultnames] Waveaudio=IBMWAVEPAS1601
Soundblaster Live
[defaultnames] CDaudio=IBMCDAUDIO01
Dieser Eintrag dürfte nur in solchen Fällen zu finden sein, in denen eine bestimmte Einheit als bevorzugte Einheit definiert wurde. Falls eine Soundkarte deinstalliert werden soll, ist dieser Abschnitt zu suchen, da er ungültige Verweise enthalten kann. Nicht alle Einträge unter [defaultnames] müssen soundkartenspezifisch sein (siehe Soundblaster Live). Es sollten dann auch nur die Einträge bearbeitet/gelöscht werden, die auf die Soundkarte verweisen.
Anhand der oben gezeigten Beispiele sollte es nun möglich sein, in der MMPM2.INI die soundkartenspezifischen Einträge zu finden, auch wenn eine ganz andere Karte im Einsatz ist, als in den Beispielen aufgezeigt.
MMPM/2 scheint durchaus in der Lage zu sein, fehlende oder unvollständige Einträge zu ergänzen. Wird nur ein Eintrag übersehen, so kann es passieren, daß beim nächsten Neustart die MMPM2.INI wieder mit den alten Einträgen initialisiert wird.
Zur Bearbeitung der MMPM2.INI bieten sich neben dem Editor E, dem erweiterten E oder Tedit natürlich auch die üblichen INI-Editoren, wie z.B. in Gorans INI Tools an, soweit sie mit einfachen Textdateien umgehen können. Denn wie die Beispiele zeigen, ist die MMPM2.INI Plain-ASCII!
Einen Haken hat die Sache aber dennoch: Wie viele INI-Dateien, wird auch die MMPM2.INI beim Systemstart von der WPS geladen und intern in das WPS-eigene Binärformat gewandelt. Erst beim Systemabschluß werden diese Daten wieder zurückgeschrieben. Alle bis dahin vorgenommen Änderungen an der MMPM2.INI werden dann überschrieben.
Somit bleiben nur zwei Möglichkeiten:
Nach dem Booten auf den Prompt wird mit tedit <enter> der tiny editor aufgerufen. Mit der Funktionstaste <F8> und Eingabe der Dateiposition X:\MMOS2\MMPM2.INI ("X" = Bootlaufwerk) wird die zu editierende MMPM2.INI geladen.
Zunächst gilt es, die Treiber zu lokalisieren. Immer noch auf der Befehlszeile im Tedit wird durch L /drivers /c <enter> die Treibersektion gesucht. Nun mit Stift und Papier (oder mit dem Befehl PRINT LPT1 die Datei ausdrucken und die Einträge markieren) die Einträge in der Sektion [drivers] in den Zeilen Waveaudio, Sequencer und Ampmix notieren. Groß- oder Kleinschreibung ist nicht wichtig, nur vollständig muß es sein.
Auf meinem heimischen Rechner werkelte eine PAS16, die mangels Resourcen im ISA-Slot des Epox 8KTA3Pro jedoch weder einen IRQ noch einen DMA zur Verfügung hatte - ein ISA/PCI-shared Slot ist zwar "nützlich" aber letztlich unbenutzbar, wenn alle anderen PCI-Slots ausgelastet sind, da sich der ISA/PCI-shared seine Resourcen mit einem weiteren PCI-Slot teilt - da bleibt für ISA mit Exklusivitätsanspruch nichts übrig.
Die Einträge waren daher (siehe auch die bereits gezeigten
Beispiele):
Waveaudio = IBMWAVEPAS1601 Sequencer = IBMSEQPAS1601 Ampmix = IBMAMPMIXPAS1601
Im Tedit auf der Befehlszeile (zwischen Befehlszeile und Datei wechselt man mit <Esc>) wird nun die Suche dieser "Kennwörter" ausgelöst: L /ibmwavepas1601/c <enter> liefert zuerst die Zeile aus der [drivers] Sektion. Diese wird vorerst übersprungen und durch die Tastenkombination <Alt><F> wird der nächste Treffer angezeigt.
Die gefunden Zeile wird sofort mit <Alt><L> markiert. Mit den üblichen Bildlauftasten <Pfeil auf> - <Pfeil ab> wird der Cursor auf die letzte Zeile der gefundenen Sektion gesetzt.
Auch diese Zeile wird mit <Alt><L> markiert. Dadurch ist automatisch die gesamte Sektion markiert.
Mit <Alt><D> wird sie sogleich entfernt.
<Alt><F> liefert den nächsten Treffer. Wie oben beschrieben, <Alt><L>, dann Cursor auf die letzte Zeile der Sektion, <Alt><L>, <Alt><D> und schon ist das Ziel ein wenig näher gerückt.
Dies wird fortgeführt, bis auf <Alt><F> kein Treffer gefunden wird. Nun muß noch der Eintrag aus der Sektion [drivers] gelöscht werden. <Strg><Pos1> führt an den Dateianfang. <Alt><F> findet die Zeile in der Sektion [drivers], <Alt><L> markiert und <Alt><D> löst Probleme.
Dieses Prozedere muß nun für alle Einträge hinter Waveaudio, Sequencer und Ampmix wiederholt werden.
Als Beispiel dient hier eine Kopie der ursprünglichen MMPM2.INI meines Systems mit einer PAS16.
Nach dem Start zeigt der INI-Editor links die Sektionen als Applications. Im rechten Fenster werden die Keys angezeigt (irgendwie habe ich nicht das richtige Sprachpaket installiert), und im unteren Fenster die Values in ASCII und darunter in Hexadezimal-Notation. Durch diese Art der Darstellung wirkt die MMPM2.INI auch wesentlich aufgeräumter und ist im Aufbau leichter zu überblicken.
Zunächst gilt es also wieder, die Sektion [drivers] ausfindig zu machen. Nachschauen und blättern im linken Fenster führt schnell zum Erfolg.
Anklicken der Application Drivers liefert auf der rechten Seite die gesuchten Einträge Waveaudio, Sequencer und Ampmix.
Auch lassen sich auf der linken Seite die ersten Kandidaten zur Löschung entdecken.
Abb.1: Ini-Editor
Also, wie gehabt, alle Einträge unter Waveaudio, Sequencer und Ampmix verweisen auf weitere Einträge im linken Applicationsfenster, die es zu löschen gilt. Der hier ausgewählte Sequencereintrag verweist auf den IBMSEQPAS1601. Also sind alle Einträge, die auf IBMSEQPAS1601 lauten, im linken Fenster ausfindig zu machen. "Nachschauen und blättern". Neben dem Eintrag IBMSEQPAS1601 ist auch IBMSEQPAS1601-PLAY auszumachen. Also müssen beide gelöscht werden.
Achten Sie darauf, daß der INI-Editor nicht im Safe-Mode läuft (leicht erkennbar an den "unsichtbaren" Symbolen)!
Der Eintrag IBMSEQPAS1601 wird selektiert und im Menü Application angewählt. Aus dem Dialog wird Delete App ausgewählt, die nachfolgende Anfrage ordnungsgemäß beantwortet, und schon ist der erste Eintrag entfernt.
Mit den anderen Einträgen wird gleichermaßen verfahren.
Abb.2: Ini-Editor
Zum Schluß sind die Einträge Waveaudio, Sequencer und Ampmix aus der Sektion [drivers] zu entfernen sowie, falls vorhanden, Referenzen in der Sektion [defaultnames].
Das Löschen der Einträge unter Keys verläuft analog zu den Applications.
Der Eintrag unter Keys wird selektiert, im Menü wird Keys ausgewählt, dann im Dialog Delete Key und anschließend die Abfrage mit Ok bestätigt. Der Key ist damit gelöscht.
Nach der Bearbeitung finden sich keine Einträge mehr, die auf die ursprünglich eingebaute Soundkarte ProAudioSpectrum16 verweisen.
Nach dem Entfernen der soundkartenspezifischen Einträge in der CONFIG.SYS (z.B. mit ConfigTool) und einem Neustart des Systems sollte die neue Soundkarte installiert werden können. In meinen System hat eine eingebaute Terratec DMXfire 1024 nach der Treiberinstallation jedenfalls sofort Systemtöne abgespielt.
Wie ich nach der Erstellung der Beschreibung für den TinyEditor bemerkt habe, besteht noch eine abgewandelte Möglichkeit die MMPM2.INI zu editieren, und zwar ohne Neu- oder Warmstart.
Nach Abschluß meiner Aktivitäten habe ich Checkini über das System geschickt, welches nach dem Durchlauf einen WPS-Reset herbeigeführt hat.
Die MMPM2.INI lag anschließend in der gewünschten, modifizierten Version vor.
Statt des Neustarts des Systems reicht also anscheinend ein WPS-Reset völlig aus.
Daher ist insbesondere das Bearbeiten der MMPM2.INI mit einem INI-Editor interessant, da wesentlich komfortabler.
Daten und Quellen:
|
[Artikelverzeichnis]
editor@os2voice.org
[Vorherige Seite] [Inhaltsverzeichnis] [Nächste Seite]
VOICE Homepage: http://de.os2voice.org