| 1 |
1275 |
phoenix |
How to try to survive an IBM Mwave under Linux SB drivers
|
| 2 |
|
|
|
| 3 |
|
|
|
| 4 |
|
|
+ IBM have now released documentation of sorts and Torsten is busy
|
| 5 |
|
|
trying to make the Mwave work. This is not however a trivial task.
|
| 6 |
|
|
|
| 7 |
|
|
----------------------------------------------------------------------------
|
| 8 |
|
|
|
| 9 |
|
|
OK, first thing - the IRQ problem IS a problem, whether the test is bypassed or
|
| 10 |
|
|
not. It is NOT a Linux problem, but an MWAVE problem that is fixed with the
|
| 11 |
|
|
latest MWAVE patches. So, in other words, don't bypass the test for MWAVES!
|
| 12 |
|
|
|
| 13 |
|
|
I have Windows 95 on /dev/hda1, swap on /dev/hda2, and Red Hat 5 on /dev/hda3.
|
| 14 |
|
|
|
| 15 |
|
|
The steps, then:
|
| 16 |
|
|
|
| 17 |
|
|
Boot to Linux.
|
| 18 |
|
|
Mount Windows 95 file system (assume mount point = /dos95).
|
| 19 |
|
|
mkdir /dos95/linux
|
| 20 |
|
|
mkdir /dos95/linux/boot
|
| 21 |
|
|
mkdir /dos95/linux/boot/parms
|
| 22 |
|
|
|
| 23 |
|
|
Copy the kernel, any initrd image, and loadlin to /dos95/linux/boot/.
|
| 24 |
|
|
|
| 25 |
|
|
Reboot to Windows 95.
|
| 26 |
|
|
|
| 27 |
|
|
Edit C:/msdos.sys and add or change the following:
|
| 28 |
|
|
|
| 29 |
|
|
Logo=0
|
| 30 |
|
|
BootGUI=0
|
| 31 |
|
|
|
| 32 |
|
|
Note that msdos.sys is a text file but it needs to be made 'unhidden',
|
| 33 |
|
|
readable and writable before it can be edited. This can be done with
|
| 34 |
|
|
DOS' "attrib" command.
|
| 35 |
|
|
|
| 36 |
|
|
Edit config.sys to have multiple config menus. I have one for windows 95 and
|
| 37 |
|
|
five for Linux, like this:
|
| 38 |
|
|
------------
|
| 39 |
|
|
[menu]
|
| 40 |
|
|
menuitem=W95, Windows 95
|
| 41 |
|
|
menuitem=LINTP, Linux - ThinkPad
|
| 42 |
|
|
menuitem=LINTP3, Linux - ThinkPad Console
|
| 43 |
|
|
menuitem=LINDOC, Linux - Docked
|
| 44 |
|
|
menuitem=LINDOC3, Linux - Docked Console
|
| 45 |
|
|
menuitem=LIN1, Linux - Single User Mode
|
| 46 |
|
|
REM menudefault=W95,10
|
| 47 |
|
|
|
| 48 |
|
|
[W95]
|
| 49 |
|
|
|
| 50 |
|
|
[LINTP]
|
| 51 |
|
|
|
| 52 |
|
|
[LINDOC]
|
| 53 |
|
|
|
| 54 |
|
|
[LINTP3]
|
| 55 |
|
|
|
| 56 |
|
|
[LINDOC3]
|
| 57 |
|
|
|
| 58 |
|
|
[LIN1]
|
| 59 |
|
|
|
| 60 |
|
|
[COMMON]
|
| 61 |
|
|
FILES=30
|
| 62 |
|
|
REM Please read README.TXT in C:\MWW subdirectory before changing the DOS= statement.
|
| 63 |
|
|
DOS=HIGH,UMB
|
| 64 |
|
|
DEVICE=C:\MWW\MANAGER\MWD50430.EXE
|
| 65 |
|
|
SHELL=c:\command.com /e:2048
|
| 66 |
|
|
-------------------
|
| 67 |
|
|
|
| 68 |
|
|
The important things are the SHELL and DEVICE statements.
|
| 69 |
|
|
|
| 70 |
|
|
Then change autoexec.bat. Basically everything in there originally should be
|
| 71 |
|
|
done ONLY when Windows 95 is booted. Then you add new things specifically
|
| 72 |
|
|
for Linux. Mine is as follows
|
| 73 |
|
|
|
| 74 |
|
|
---------------
|
| 75 |
|
|
@ECHO OFF
|
| 76 |
|
|
if "%CONFIG%" == "W95" goto W95
|
| 77 |
|
|
|
| 78 |
|
|
REM
|
| 79 |
|
|
REM Linux stuff
|
| 80 |
|
|
REM
|
| 81 |
|
|
SET MWPATH=C:\MWW\DLL;C:\MWW\MWGAMES;C:\MWW\DSP
|
| 82 |
|
|
SET BLASTER=A220 I5 D1
|
| 83 |
|
|
SET MWROOT=C:\MWW
|
| 84 |
|
|
SET LIBPATH=C:\MWW\DLL
|
| 85 |
|
|
SET PATH=C:\WINDOWS;C:\MWW\DLL;
|
| 86 |
|
|
CALL MWAVE START NOSHOW
|
| 87 |
|
|
c:\linux\boot\loadlin.exe @c:\linux\boot\parms\%CONFIG%.par
|
| 88 |
|
|
|
| 89 |
|
|
:W95
|
| 90 |
|
|
REM
|
| 91 |
|
|
REM Windows 95 stuff
|
| 92 |
|
|
REM
|
| 93 |
|
|
c:\toolkit\guard
|
| 94 |
|
|
SET MSINPUT=C:\MSINPUT
|
| 95 |
|
|
SET MWPATH=C:\MWW\DLL;C:\MWW\MWGAMES;C:\MWW\DSP
|
| 96 |
|
|
REM The following is used by DOS games to recognize Sound Blaster hardware.
|
| 97 |
|
|
REM If hardware settings are changed, please change this line as well.
|
| 98 |
|
|
REM See the Mwave README file for instructions.
|
| 99 |
|
|
SET BLASTER=A220 I5 D1
|
| 100 |
|
|
SET MWROOT=C:\MWW
|
| 101 |
|
|
SET LIBPATH=C:\MWW\DLL
|
| 102 |
|
|
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;
|
| 103 |
|
|
SET INCLUDE=f:\MSDEV\INCLUDE;F:\MSDEV\MFC\INCLUDE
|
| 104 |
|
|
SET LIB=F:\MSDEV\LIB;F:\MSDEV\MFC\LIB
|
| 105 |
|
|
win
|
| 106 |
|
|
|
| 107 |
|
|
------------------------
|
| 108 |
|
|
|
| 109 |
|
|
Now build a file in c:\linux\boot\parms for each Linux config that you have.
|
| 110 |
|
|
|
| 111 |
|
|
For example, my LINDOC3 config is for a docked Thinkpad at runlevel 3 with no
|
| 112 |
|
|
initrd image, and has a parameter file named LINDOC3.PAR in c:\linux\boot\parms:
|
| 113 |
|
|
|
| 114 |
|
|
-----------------------
|
| 115 |
|
|
# LOADLIN @param_file image=other_image root=/dev/other
|
| 116 |
|
|
#
|
| 117 |
|
|
# Linux Console in docking station
|
| 118 |
|
|
#
|
| 119 |
|
|
c:\linux\boot\zImage.krn # First value must be filename of Linux kernel.
|
| 120 |
|
|
root=/dev/hda3 # device which gets mounted as root FS
|
| 121 |
|
|
ro # Other kernel arguments go here.
|
| 122 |
|
|
apm=off
|
| 123 |
|
|
doc=yes
|
| 124 |
|
|
3
|
| 125 |
|
|
-----------------------
|
| 126 |
|
|
|
| 127 |
|
|
The doc=yes parameter is an environment variable used by my init scripts, not
|
| 128 |
|
|
a kernel argument.
|
| 129 |
|
|
|
| 130 |
|
|
However, the apm=off parameter IS a kernel argument! APM, at least in my setup,
|
| 131 |
|
|
causes the kernel to crash when loaded via loadlin (but NOT when loaded via
|
| 132 |
|
|
LILO). The APM stuff COULD be forced out of the kernel via the kernel compile
|
| 133 |
|
|
options. Instead, I got an unofficial patch to the APM drivers that allows them
|
| 134 |
|
|
to be dynamically deactivated via kernel arguments. Whatever you chose to
|
| 135 |
|
|
document, APM, it seems, MUST be off for setups like mine.
|
| 136 |
|
|
|
| 137 |
|
|
Now make sure C:\MWW\MWCONFIG.REF looks like this:
|
| 138 |
|
|
|
| 139 |
|
|
----------------------
|
| 140 |
|
|
[NativeDOS]
|
| 141 |
|
|
Default=SB1.5
|
| 142 |
|
|
SBInputSource=CD
|
| 143 |
|
|
SYNTH=FM
|
| 144 |
|
|
QSound=OFF
|
| 145 |
|
|
Reverb=OFF
|
| 146 |
|
|
Chorus=OFF
|
| 147 |
|
|
ReverbDepth=5
|
| 148 |
|
|
ChorusDepth=5
|
| 149 |
|
|
SBInputVolume=5
|
| 150 |
|
|
SBMainVolume=10
|
| 151 |
|
|
SBWaveVolume=10
|
| 152 |
|
|
SBSynthVolume=10
|
| 153 |
|
|
WaveTableVolume=10
|
| 154 |
|
|
AudioPowerDriver=ON
|
| 155 |
|
|
|
| 156 |
|
|
[FastCFG]
|
| 157 |
|
|
Show=No
|
| 158 |
|
|
HideOption=Off
|
| 159 |
|
|
-----------------------------
|
| 160 |
|
|
|
| 161 |
|
|
OR the Default= line COULD be
|
| 162 |
|
|
|
| 163 |
|
|
Default=SBPRO
|
| 164 |
|
|
|
| 165 |
|
|
Reboot to Windows 95 and choose Linux. When booted, use sndconfig to configure
|
| 166 |
|
|
the sound modules and voilą - ThinkPad sound with Linux.
|
| 167 |
|
|
|
| 168 |
|
|
Now the gotchas - you can either have CD sound OR Mixers but not both. That's a
|
| 169 |
|
|
problem with the SB1.5 (CD sound) or SBPRO (Mixers) settings. No one knows why
|
| 170 |
|
|
this is!
|
| 171 |
|
|
|
| 172 |
|
|
For some reason MPEG3 files, when played through mpg123, sound like they
|
| 173 |
|
|
are playing at 1/8th speed - not very useful! If you have ANY insight
|
| 174 |
|
|
on why this second thing might be happening, I would be grateful.
|
| 175 |
|
|
|
| 176 |
|
|
===========================================================
|
| 177 |
|
|
_/ _/_/_/_/
|
| 178 |
|
|
_/_/ _/_/ _/
|
| 179 |
|
|
_/ _/_/ _/_/_/_/ Martin John Bartlett
|
| 180 |
|
|
_/ _/ _/ _/ (martin@nitram.demon.co.uk)
|
| 181 |
|
|
_/ _/_/_/_/
|
| 182 |
|
|
_/
|
| 183 |
|
|
_/ _/
|
| 184 |
|
|
_/_/
|
| 185 |
|
|
===========================================================
|