1 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 9OK, first thing - the IRQ problem IS a problem, whether the test is bypassed or 10not. It is NOT a Linux problem, but an MWAVE problem that is fixed with the 11latest MWAVE patches. So, in other words, don't bypass the test for MWAVES! 12 13I have Windows 95 on /dev/hda1, swap on /dev/hda2, and Red Hat 5 on /dev/hda3. 14 15The 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] 40menuitem=W95, Windows 95 41menuitem=LINTP, Linux - ThinkPad 42menuitem=LINTP3, Linux - ThinkPad Console 43menuitem=LINDOC, Linux - Docked 44menuitem=LINDOC3, Linux - Docked Console 45menuitem=LIN1, Linux - Single User Mode 46REM menudefault=W95,10 47 48[W95] 49 50[LINTP] 51 52[LINDOC] 53 54[LINTP3] 55 56[LINDOC3] 57 58[LIN1] 59 60[COMMON] 61FILES=30 62REM Please read README.TXT in C:\MWW subdirectory before changing the DOS= statement. 63DOS=HIGH,UMB 64DEVICE=C:\MWW\MANAGER\MWD50430.EXE 65SHELL=c:\command.com /e:2048 66------------------- 67 68The 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 76if "%CONFIG%" == "W95" goto W95 77 78REM 79REM Linux stuff 80REM 81SET MWPATH=C:\MWW\DLL;C:\MWW\MWGAMES;C:\MWW\DSP 82SET BLASTER=A220 I5 D1 83SET MWROOT=C:\MWW 84SET LIBPATH=C:\MWW\DLL 85SET PATH=C:\WINDOWS;C:\MWW\DLL; 86CALL MWAVE START NOSHOW 87c:\linux\boot\loadlin.exe @c:\linux\boot\parms\%CONFIG%.par 88 89:W95 90REM 91REM Windows 95 stuff 92REM 93c:\toolkit\guard 94SET MSINPUT=C:\MSINPUT 95SET MWPATH=C:\MWW\DLL;C:\MWW\MWGAMES;C:\MWW\DSP 96REM The following is used by DOS games to recognize Sound Blaster hardware. 97REM If hardware settings are changed, please change this line as well. 98REM See the Mwave README file for instructions. 99SET BLASTER=A220 I5 D1 100SET MWROOT=C:\MWW 101SET LIBPATH=C:\MWW\DLL 102SET 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; 103SET INCLUDE=f:\MSDEV\INCLUDE;F:\MSDEV\MFC\INCLUDE 104SET LIB=F:\MSDEV\LIB;F:\MSDEV\MFC\LIB 105win 106 107------------------------ 108 109Now build a file in c:\linux\boot\parms for each Linux config that you have. 110 111For example, my LINDOC3 config is for a docked Thinkpad at runlevel 3 with no 112initrd 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# 119c:\linux\boot\zImage.krn # First value must be filename of Linux kernel. 120root=/dev/hda3 # device which gets mounted as root FS 121ro # Other kernel arguments go here. 122apm=off 123doc=yes 1243 125----------------------- 126 127The doc=yes parameter is an environment variable used by my init scripts, not 128a kernel argument. 129 130However, the apm=off parameter IS a kernel argument! APM, at least in my setup, 131causes the kernel to crash when loaded via loadlin (but NOT when loaded via 132LILO). The APM stuff COULD be forced out of the kernel via the kernel compile 133options. Instead, I got an unofficial patch to the APM drivers that allows them 134to be dynamically deactivated via kernel arguments. Whatever you chose to 135document, APM, it seems, MUST be off for setups like mine. 136 137Now make sure C:\MWW\MWCONFIG.REF looks like this: 138 139---------------------- 140[NativeDOS] 141Default=SB1.5 142SBInputSource=CD 143SYNTH=FM 144QSound=OFF 145Reverb=OFF 146Chorus=OFF 147ReverbDepth=5 148ChorusDepth=5 149SBInputVolume=5 150SBMainVolume=10 151SBWaveVolume=10 152SBSynthVolume=10 153WaveTableVolume=10 154AudioPowerDriver=ON 155 156[FastCFG] 157Show=No 158HideOption=Off 159----------------------------- 160 161OR the Default= line COULD be 162 163Default=SBPRO 164 165Reboot to Windows 95 and choose Linux. When booted, use sndconfig to configure 166the sound modules and voilà - ThinkPad sound with Linux. 167 168Now the gotchas - you can either have CD sound OR Mixers but not both. That's a 169problem with the SB1.5 (CD sound) or SBPRO (Mixers) settings. No one knows why 170this is! 171 172For some reason MPEG3 files, when played through mpg123, sound like they 173are playing at 1/8th speed - not very useful! If you have ANY insight 174on 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=========================================================== 186