186 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			186 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
	How to try to survive an IBM Mwave under Linux SB drivers
 | 
						|
 | 
						|
 | 
						|
+	IBM have now released documentation of sorts and Torsten is busy
 | 
						|
	trying to make the Mwave work. This is not however a trivial task.
 | 
						|
 | 
						|
----------------------------------------------------------------------------
 | 
						|
 | 
						|
OK, first thing - the IRQ problem IS a problem, whether the test is bypassed or
 | 
						|
not.  It is NOT a Linux problem, but an MWAVE problem that is fixed with the
 | 
						|
latest MWAVE patches. So, in other words, don't bypass the test for MWAVES!
 | 
						|
 | 
						|
I have Windows 95 on /dev/hda1, swap on /dev/hda2, and Red Hat 5 on /dev/hda3.
 | 
						|
 | 
						|
The steps, then:
 | 
						|
 | 
						|
    Boot to Linux. 
 | 
						|
    Mount Windows 95 file system (assume mount point = /dos95).
 | 
						|
    mkdir /dos95/linux
 | 
						|
    mkdir /dos95/linux/boot
 | 
						|
    mkdir /dos95/linux/boot/parms
 | 
						|
 | 
						|
    Copy the kernel, any initrd image, and loadlin to /dos95/linux/boot/.
 | 
						|
 | 
						|
    Reboot to Windows 95.
 | 
						|
 | 
						|
    Edit C:/msdos.sys and add or change the following:
 | 
						|
 | 
						|
        Logo=0
 | 
						|
        BootGUI=0
 | 
						|
 | 
						|
    Note that msdos.sys is a text file but it needs to be made 'unhidden',
 | 
						|
    readable and writable before it can be edited.  This can be done with
 | 
						|
    DOS' "attrib" command.
 | 
						|
 | 
						|
    Edit config.sys to have multiple config menus. I have one for windows 95 and
 | 
						|
    five for Linux, like this:
 | 
						|
------------
 | 
						|
[menu]
 | 
						|
menuitem=W95, Windows 95
 | 
						|
menuitem=LINTP, Linux - ThinkPad
 | 
						|
menuitem=LINTP3, Linux - ThinkPad Console
 | 
						|
menuitem=LINDOC, Linux - Docked
 | 
						|
menuitem=LINDOC3, Linux - Docked Console
 | 
						|
menuitem=LIN1, Linux - Single User Mode
 | 
						|
REM menudefault=W95,10
 | 
						|
 | 
						|
[W95]
 | 
						|
 | 
						|
[LINTP]
 | 
						|
 | 
						|
[LINDOC]
 | 
						|
 | 
						|
[LINTP3]
 | 
						|
 | 
						|
[LINDOC3]
 | 
						|
 | 
						|
[LIN1]
 | 
						|
 | 
						|
[COMMON]
 | 
						|
FILES=30
 | 
						|
REM Please read README.TXT in C:\MWW subdirectory before changing the DOS= statement.
 | 
						|
DOS=HIGH,UMB
 | 
						|
DEVICE=C:\MWW\MANAGER\MWD50430.EXE
 | 
						|
SHELL=c:\command.com /e:2048
 | 
						|
-------------------
 | 
						|
 | 
						|
The important things are the SHELL and DEVICE statements.
 | 
						|
 | 
						|
    Then change autoexec.bat. Basically everything in there originally should be
 | 
						|
    done ONLY when Windows 95 is booted. Then you add new things specifically
 | 
						|
    for Linux.  Mine is as follows
 | 
						|
 | 
						|
---------------
 | 
						|
@ECHO OFF
 | 
						|
if "%CONFIG%" == "W95" goto W95
 | 
						|
 | 
						|
REM
 | 
						|
REM Linux stuff
 | 
						|
REM
 | 
						|
SET MWPATH=C:\MWW\DLL;C:\MWW\MWGAMES;C:\MWW\DSP
 | 
						|
SET BLASTER=A220 I5 D1
 | 
						|
SET MWROOT=C:\MWW
 | 
						|
SET LIBPATH=C:\MWW\DLL
 | 
						|
SET PATH=C:\WINDOWS;C:\MWW\DLL;
 | 
						|
CALL MWAVE START NOSHOW
 | 
						|
c:\linux\boot\loadlin.exe @c:\linux\boot\parms\%CONFIG%.par
 | 
						|
 | 
						|
:W95
 | 
						|
REM
 | 
						|
REM Windows 95 stuff
 | 
						|
REM
 | 
						|
c:\toolkit\guard
 | 
						|
SET MSINPUT=C:\MSINPUT
 | 
						|
SET MWPATH=C:\MWW\DLL;C:\MWW\MWGAMES;C:\MWW\DSP
 | 
						|
REM The following is used by DOS games to recognize Sound Blaster hardware.
 | 
						|
REM If hardware settings are changed, please change this line as well.
 | 
						|
REM See the Mwave README file for instructions.
 | 
						|
SET BLASTER=A220 I5 D1
 | 
						|
SET MWROOT=C:\MWW
 | 
						|
SET LIBPATH=C:\MWW\DLL
 | 
						|
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;E:\ORAWIN95\BIN;f:\msdev\bin;e:\v30\bin.dbg;v:\devt\v30\bin;c:\JavaSDK\Bin;C:\MWW\DLL;
 | 
						|
SET INCLUDE=f:\MSDEV\INCLUDE;F:\MSDEV\MFC\INCLUDE
 | 
						|
SET LIB=F:\MSDEV\LIB;F:\MSDEV\MFC\LIB
 | 
						|
win
 | 
						|
 | 
						|
------------------------
 | 
						|
 | 
						|
Now build a file in c:\linux\boot\parms for each Linux config that you have.
 | 
						|
 | 
						|
For example, my LINDOC3 config is for a docked Thinkpad at runlevel 3 with no
 | 
						|
initrd image, and has a parameter file named LINDOC3.PAR in c:\linux\boot\parms:
 | 
						|
 | 
						|
-----------------------
 | 
						|
#   LOADLIN @param_file image=other_image root=/dev/other
 | 
						|
#
 | 
						|
#	Linux Console in docking station
 | 
						|
#
 | 
						|
c:\linux\boot\zImage.krn        # First value must be filename of Linux kernel.
 | 
						|
root=/dev/hda3                  # device which gets mounted as root FS
 | 
						|
ro                              # Other kernel arguments go here.
 | 
						|
apm=off
 | 
						|
doc=yes
 | 
						|
3
 | 
						|
-----------------------
 | 
						|
 | 
						|
The doc=yes parameter is an environment variable used by my init scripts, not
 | 
						|
a kernel argument.
 | 
						|
 | 
						|
However, the apm=off parameter IS a kernel argument!  APM, at least in my setup,
 | 
						|
causes the kernel to crash when loaded via loadlin (but NOT when loaded via
 | 
						|
LILO). The APM stuff COULD be forced out of the kernel via the kernel compile
 | 
						|
options. Instead, I got an unofficial patch to the APM drivers that allows them
 | 
						|
to be dynamically deactivated via kernel arguments. Whatever you chose to
 | 
						|
document, APM, it seems, MUST be off for setups like mine.
 | 
						|
 | 
						|
Now make sure C:\MWW\MWCONFIG.REF looks like this:
 | 
						|
 | 
						|
----------------------
 | 
						|
[NativeDOS]
 | 
						|
Default=SB1.5
 | 
						|
SBInputSource=CD
 | 
						|
SYNTH=FM
 | 
						|
QSound=OFF
 | 
						|
Reverb=OFF
 | 
						|
Chorus=OFF
 | 
						|
ReverbDepth=5
 | 
						|
ChorusDepth=5
 | 
						|
SBInputVolume=5
 | 
						|
SBMainVolume=10
 | 
						|
SBWaveVolume=10
 | 
						|
SBSynthVolume=10
 | 
						|
WaveTableVolume=10
 | 
						|
AudioPowerDriver=ON
 | 
						|
 | 
						|
[FastCFG]
 | 
						|
Show=No
 | 
						|
HideOption=Off
 | 
						|
-----------------------------
 | 
						|
 | 
						|
OR the Default= line COULD be
 | 
						|
 | 
						|
Default=SBPRO
 | 
						|
 | 
						|
Reboot to Windows 95 and choose Linux. When booted, use sndconfig to configure
 | 
						|
the sound modules and voilà - ThinkPad sound with Linux.
 | 
						|
 | 
						|
Now the gotchas - you can either have CD sound OR Mixers but not both. That's a
 | 
						|
problem with the SB1.5 (CD sound) or SBPRO (Mixers) settings. No one knows why
 | 
						|
this is!
 | 
						|
 | 
						|
For some reason MPEG3 files, when played through mpg123, sound like they
 | 
						|
are playing at 1/8th speed - not very useful!  If you have ANY insight
 | 
						|
on why this second thing might be happening, I would be grateful.
 | 
						|
 | 
						|
===========================================================
 | 
						|
    _/      _/_/_/_/
 | 
						|
   _/_/  _/_/     _/
 | 
						|
  _/ _/_/ _/_/_/_/      Martin John Bartlett
 | 
						|
 _/  _/  _/     _/      (martin@nitram.demon.co.uk)
 | 
						|
_/      _/_/_/_/
 | 
						|
       _/
 | 
						|
_/    _/
 | 
						|
 _/_/
 | 
						|
===========================================================
 |