Warning: this is an htmlized version!
The original is across this link,
and the conversion rules are here.
#######
#
# E-scripts on hardware: soundcards
#
# Note 1: use the eev command (defined in eev.el) and the
# ee alias (in my .zshrc) to execute parts of this file.
# Executing this file as a whole makes no sense.
#
# Note 2: be VERY careful and make sure you understand what
# you're doing.
#
# Note 3: If you use a shell other than zsh things like |&
# and the for loops may not work.
#
# Note 4: I always run as root.
#
# Note 5: some parts are too old and don't work anymore. Some
# never worked.
#
# Note 6: the definitions for the find-xxxfile commands are on my
# .emacs.
#
# Note 7: if you see a strange command check my .zshrc -- it may
# be defined there as a function or an alias.
#
# Note 8: the sections without dates are always older than the
# sections with dates.
#
# This file is at <http://angg.twu.net/e/hw-sound.e>
#           or at <http://angg.twu.net/e/hw-sound.e.html>.
#        See also <http://angg.twu.net/emacs.html>,
#                 <http://angg.twu.net/.emacs[.html]>,
#                 <http://angg.twu.net/.zshrc[.html]>,
#                 <http://angg.twu.net/escripts.html>,
#             and <http://angg.twu.net/>.
#
#######




######
#
# Placa de som OPL3-SAx
#
######

isapnp - <<'---'
# (DEBUG)
(READPORT 0x0203)
(VERIFYLD Y)
(ISOLATE)
(IDENTIFY *)
(CONFIGURE YMH0020/-1
  (LD 0
    (IO 0 (BASE 0x0220))
    (IO 1 (BASE 0x0530))
    (IO 2 (BASE 0x0388))
    (IO 3 (BASE 0x0330))
    (IO 4 (BASE 0x0370))
    (INT 0 (IRQ 5 (MODE +E)))
    (DMA 0 (CHANNEL 0))
    (DMA 1 (CHANNEL 1))
    (ACT Y))
  (LD 1
    (IO 0 (BASE 0x0201))
    (ACT Y)))
(WAITFORKEY)
---

# (find-esfile "hardware.e" "kernel 2.1.132 + sound, versão que funciona")

rmmod v_midi
rmmod opl3
rmmod opl3sa2
rmmod ad1848
rmmod mpu401
rmmod sound
rmmod soundcore

cd /boot/angg21/
insmod soundcore.o
insmod sound.o
insmod mpu401.o
insmod ad1848.o
insmod opl3sa2.o io=0x370 mss_io=0x530 irq=5 dma=0 dma2=1 mpu_io=0x330
insmod opl3.o io=0x388
cat /proc/sound

insmod v_midi.o
cat /proc/sound

# (find-fline "~/bin/ins-opl")

cd /boot/angg21/
depmod *.o | sort | uniq

# soundcore.o:
# sound.o: soundcore.o
# mpu401.o: sound.o
# ad1848.o: sound.o
# opl3sa2.o: mpu401.o sound.o ad1848.o
# opl3.o: sound.o
# v_midi: sound.o





######
#
# Placa de som OPL3-SAx: kernel patch
#
######

# (find-k21file "drivers/sound/opl3sa2.c" "case CHIPSET_OPL3SAX:")
# add "case 3:"
cd /usr/src/linux-2.1.132/
make modules |& tee omm2
cp -iv modules/opl3sa2.o /boot/angg21/





######
#
# GUS classic
#
######

cd /boot/angg21/
depmod *.o | sort | uniq

cd /boot/angg21/
insmod soundcore.o
insmod sound.o
(
for io in 0x210 0x220 0x230 0x240 0x250 0x260; do
for irq in 3 5 7 9 11 12 15; do
for dma in 1 3 5 6 7; do
insmod gus.o io=$io irq=$irq dma=$dma && echo io=$io irq=$irq dma=$dma && rmmod gus
done
done
done
) > ~/o




######
#
# GUS on the kernel 2.2
#
######

# With 2.0.26:
cd ~/SOUND/
cat /dev/sndstat > sndstat-gus-2036
# (find-fline "~/SOUND/sndstat-gus-2036")

# soundcore       
# soundcore:	sound           
# 		sound:	ad1848          
# 		sound:		mpu401          
# 		sound	ad1848	mpu401:	opl3sa2         
# 		sound:	opl3            
# 		sound	opl3:	adlib_card      
# 		sound:	gus             
# 		sound:	uart401         
# 		sound:	v_midi          

rmmodules

cd /boot/angg22
insmod soundcore.o
insmod sound.o
insmod ad1848.o
insmod gus.o io=0x220 irq=5 dma=1 type=1

insmod uart401.o

# (find-k22file "Documentation/sound/ultrasound")
# (find-fline "$ES/hardware.e" "# sound")
# (find-vldifile "doc-linux-text.list")

# (find-fline "/usr/doc/HOWTO/Sound-HOWTO.gz" 824)
# (find-fline "/usr/doc/HOWTO/Sound-Playing-HOWTO.gz")
# (find-k2file "drivers/sound/Readme.cards")


cat /dev/sndstat




#  Local Variables:
#  coding:               no-conversion
#  ee-delimiter-hash:    "\n#*\n"
#  ee-delimiter-percent: "\n%*\n"
#  ee-anchor-format:     "«%s»"
#  ee-charset-indicator: "Ñ"
#  End: