Kernels

Kernel 2.0.31

We Love Linux!よりlinux-2.0.31.tar.gz
DMSDOS fsよりdmsdosfs-0.8.3.tgz
Music Heaven with Linux/AWE32 (日本語のページ)より、
awedrv-0.4.2c.tgz
awesfx-0.4.2b.tgz
pnp-0.2.5a.tar.gz
を入手。

  1. kernelソースの展開。
    1. cd /usr/src
    2. mkdir linux-2.0.31
    3. ln -s linux-2.0.31 linux
    4. tar xvzf linux-2.0.31.tar.gz
  2. awe32 driverソースの展開 & パッチあて
    1. cd /usr/src
    2. tar xvzf awedrv-0.4.2c.tgz
    3. cd /usr/src/awedrv-0.4.2c を読む
    4. INSTALL.awe を読む
    5. cd /usr/src/linux
    6. make mrproper
    7. make xconfig
    8. [Save and Exit]を選択し終了
    9. cd /usr/src/awedrv-0.4.2c
    10. sh ./install.sh
    11. ls /usr/src/linux/drivers/sound/*.rejでrejectされたファイルが無ければOK
  3. PNP driverのソースの展開 & パッチあて
    1. cd /usr/src
    2. tar xvzf pnp-0.2.5a.tar.gz
    3. cd /usr/src/pnp-0.2.5a
    4. INSTALL を読む
    5. cd /usr/src/linux
    6. patch -p1 < ../pnp-0.2.5a/diffs
    7. find -name \*.rejでrejectされたファイルが無ければOK
    8. mkdir /usr/src/linux/drivers/pnpisa
    9. cp ../pnp-0.2.5a/kernel/* /usr/src/linux/drivers/pnpisa
    10. cd /usr/src/linux/include/linux
    11. ln -s ../../drivers/pnpisa/pnp.h
    12. cd /usr/src/linux
    13. patch -p1 -b.pre-pnp-snd < ../pnp-0.2.5a/patches/awe32
    14. find \*.rej
      ./drivers/sound/lowlevel/awe_wave.c.rejがある
      static int
      awe_detect(void)
      {
      	int base;
      #if defined(CONFIG_PNPISA) || (defined(MODULE) && defined(CONFIG_PNPISA_MODULE))
       	if ((awe_pnp_dev = pnp_getdevice(PNP_EISAID('C','T','L',0x0021), awe_pnp))
       		!= NULL) {
       /*		printk("SB AWE32 PnP: 0x%x.\n", awe_pnp_dev->io[0]);*/
       		awe_base = awe_pnp_dev->io[0];
       		return 1;
       	}
      #endif
      	if (awe_base == 0) {
      		for (base = 0x620; base <= 0x680; base += 0x20)
      			if (awe_detect_base(base))
      				return 1;
      		DEBUG(0,printk("AWE32 not found\n"));
      		return 0;
      	}
      	return 1;
      }
      と/drivers/sound/lowlevel/awe_wave.cを変更。
  4. DMSDOS fsのソースの展開 & パッチあて
    1. cd /usr/src/dmsdosfs-0.8.3.0
    2. doc/dmsdos.doc を読む
    3. ./INSTALL_2.0.1
      Patching /usr/src/linux/fs/Makefile.old ...Error: line 201: hpfs sysv smbfs ncpfs ufs affs not found in /usr/src/linux/fs/Makefile.old.
      /usr/src/dmsdosfs-0.8.3.0/Makefile.dpatに従い、/usr/src/linux/fs/Makefileを変更。
      ALL_SUB_DIRSに追加
      ALL_SUB_DIRS = minix ext ext2 fat msdos vfat proc isofs nfs xiafs umsdos \
      		hpfs sysv smbfs ncpfs ufs affs autofs dmsdos
      
      CONFIG_MSDOS_FSの後に追加
      ifeq ($(CONFIG_MSDOS_FS),y)
      SUB_DIRS += msdos
      else
        ifeq ($(CONFIG_MSDOS_FS),m)
        MOD_SUB_DIRS += msdos
        endif
      endif
      
      ifeq ($(CONFIG_DMSDOS_FS),y)
      SUB_DIRS += dmsdos
      else
        ifeq ($(CONFIG_DMSDOS_FS),m)
        MOD_SUB_DIRS += dmsdos
        endif
      endif
      
    4. ./UTIL_COMPILE
  5. cd /usr/src/linux
    Makefile の編集
    INSTALL_PATH=/boot
  6. make xconfig
  7. make dep; make clean
  8. make zlilo
  9. make modules
  10. make modules_install

Return to Ah! My Good OS Linux.
Return to Noizumi Web Page
[EOF]