Subject: Re: Adding cd9660 support to the i386/amd64 BIOS bootloader
To: Bang Jun-Young <junyoung@netbsd.org>
From: Jason Thorpe <thorpej@shagadelic.org>
List: tech-install
Date: 06/21/2005 09:45:31
On Jun 21, 2005, at 8:26 AM, Bang Jun-Young wrote:
> Even if it is, we still have nothing to lose, because there's no
> platform
> that have cd9660 support in their bootloaders. When it becomes a real
> problem, we can easily fix it.
You are gravely mistaken:
yeah-baby:thorpej 218$ find . -name "*.c" | xargs grep cd9660
./alpha/stand/boot/filesystem.c:#include <lib/libsa/cd9660.h>
./alpha/stand/boot/filesystem.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./alpha/stand/boot/filesystem.c: cd9660_stat },
./arc/stand/boot/conf.c:#include <lib/libsa/cd9660.h>
./arc/stand/boot/conf.c:#define cd9660_close 0
./arc/stand/boot/conf.c:#define cd9660_write 0
./arc/stand/boot/conf.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./arc/stand/boot/conf.c: cd9660_stat },
./bebox/stand/boot/filesystem.c:#include <cd9660.h>
./bebox/stand/boot/filesystem.c:{ cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek, cd9660_stat },
./macppc/stand/ofwboot/ofdev.c:#include <lib/libsa/cd9660.h>
./macppc/stand/ofwboot/ofdev.c:static struct fs_ops
file_system_cd9660 = {
./macppc/stand/ofwboot/ofdev.c: cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./macppc/stand/ofwboot/ofdev.c: cd9660_stat
./macppc/stand/ofwboot/ofdev.c: file_system[2] =
file_system_cd9660;
./mipsco/stand/common/conf.c:#include <lib/libsa/cd9660.h>
./mipsco/stand/common/conf.c:#define cd9660_close 0
./mipsco/stand/common/conf.c:#define cd9660_write 0
./mipsco/stand/common/conf.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./mipsco/stand/common/conf.c: cd9660_stat },
./ofppc/stand/ofwboot/ofdev.c:#include <lib/libsa/cd9660.h>
./ofppc/stand/ofwboot/ofdev.c:static struct fs_ops file_system_cd9660
= {
./ofppc/stand/ofwboot/ofdev.c: cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./ofppc/stand/ofwboot/ofdev.c: cd9660_stat
./ofppc/stand/ofwboot/ofdev.c: file_system[1] =
file_system_cd9660;
./pmax/stand/common/conf.c:#include <lib/libsa/cd9660.h>
./pmax/stand/common/conf.c:#define cd9660_close 0
./pmax/stand/common/conf.c:#define cd9660_write 0
./pmax/stand/common/conf.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./pmax/stand/common/conf.c: cd9660_stat },
./prep/stand/boot/filesystem.c:#include <lib/libsa/cd9660.h>
./prep/stand/boot/filesystem.c:{ cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek, cd9660_stat },
./sgimips/stand/common/conf.c:#include <lib/libsa/cd9660.h>
./sgimips/stand/common/conf.c:#define cd9660_close 0
./sgimips/stand/common/conf.c:#define cd9660_write 0
./sgimips/stand/common/conf.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./sgimips/stand/common/conf.c: cd9660_stat },
./shark/stand/ofwboot/ofdev.c:#include <lib/libsa/cd9660.h>
./shark/stand/ofwboot/ofdev.c:static struct fs_ops file_system_cd9660
= {
./shark/stand/ofwboot/ofdev.c: cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./shark/stand/ofwboot/ofdev.c: cd9660_stat
./shark/stand/ofwboot/ofdev.c: file_system[1] =
file_system_cd9660;
./sparc/stand/ofwboot/ofdev.c:#include <lib/libsa/cd9660.h>
./sparc/stand/ofwboot/ofdev.c:static struct fs_ops file_system_cd9660
= {
./sparc/stand/ofwboot/ofdev.c: cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./sparc/stand/ofwboot/ofdev.c: cd9660_stat
./sparc/stand/ofwboot/ofdev.c: bcopy(&file_system_cd9660,
&file_system[nfsys++],
./vax/boot/boot/conf.c:#include "lib/libsa/cd9660.h"
./vax/boot/boot/conf.c: { cd9660_open, cd9660_close, cd9660_read,
cd9660_write,
./vax/boot/boot/conf.c: cd9660_seek, cd9660_stat },
./vax/boot/xxboot/bootxx.c:#include "lib/libsa/cd9660.h"
./vax/boot/xxboot/bootxx.c: { cd9660_open, 0, cd9660_read, 0, 0,
cd9660_stat },
./x68k/stand/boot/conf.c:#include <lib/libsa/cd9660.h>
./x68k/stand/boot/conf.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./x68k/stand/boot/conf.c: cd9660_stat },
./sbmips/stand/boot/filesystem.c:#include <lib/libsa/cd9660.h>
./sbmips/stand/boot/filesystem.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./sbmips/stand/boot/filesystem.c: cd9660_stat },
./hp700/stand/boot/conf.c:#include <lib/libsa/cd9660.h>
./hp700/stand/boot/conf.c: { cd9660_open, cd9660_close,
cd9660_read, cd9660_write, cd9660_seek,
./hp700/stand/boot/conf.c: cd9660_stat },
yeah-baby:thorpej 219$
These bootloaders have worked for years. Sounds to me like you need
to figure out some other way to fix the problem on i386.
-- thorpej