xref: /onnv-gate/usr/src/grub/grub-0.97/TODO (revision 8044:b3af80bbf173)
1*8044SWilliam.Kucharski@Sun.COM-*- Mode: Outline -*-
2*8044SWilliam.Kucharski@Sun.COM
3*8044SWilliam.Kucharski@Sun.COMBefore working on anything in this file, it's very important that you
4*8044SWilliam.Kucharski@Sun.COMmake contact with the core GRUB developers. Things herein might be
5*8044SWilliam.Kucharski@Sun.COMslightly out of date or otherwise not easy to understand at first
6*8044SWilliam.Kucharski@Sun.COMglance. So write to <bug-grub@gnu.org> first.
7*8044SWilliam.Kucharski@Sun.COM
8*8044SWilliam.Kucharski@Sun.COMPriorities:
9*8044SWilliam.Kucharski@Sun.COM  Reported bugs generally have top priority.
10*8044SWilliam.Kucharski@Sun.COM  Non-reported and non-encountered bugs (things we know don't work,
11*8044SWilliam.Kucharski@Sun.COM    but don't really impede things) have lower priority.
12*8044SWilliam.Kucharski@Sun.COM  Things in this file are ranked with one to three !; the more, the
13*8044SWilliam.Kucharski@Sun.COM  higher priority.
14*8044SWilliam.Kucharski@Sun.COM
15*8044SWilliam.Kucharski@Sun.COM
16*8044SWilliam.Kucharski@Sun.COMThings that should be done before 1.0:
17*8044SWilliam.Kucharski@Sun.COM
18*8044SWilliam.Kucharski@Sun.COM* Finish the Multiboot Speicification 0.7. !!!
19*8044SWilliam.Kucharski@Sun.COM
20*8044SWilliam.Kucharski@Sun.COM* Add more --disable-FOO options to configure, so that you can create a
21*8044SWilliam.Kucharski@Sun.COM  minimum GRUB image. This is useful for boot floppies because of the size
22*8044SWilliam.Kucharski@Sun.COM  restriction. !
23*8044SWilliam.Kucharski@Sun.COM
24*8044SWilliam.Kucharski@Sun.COM* Implement a new version of track_int13, using Virtual 8086 Mode. !!!
25*8044SWilliam.Kucharski@Sun.COM
26*8044SWilliam.Kucharski@Sun.COM* Add missing features of graphics support. !!
27*8044SWilliam.Kucharski@Sun.COM
28*8044SWilliam.Kucharski@Sun.COMThings that should _not_ be done before 1.0:
29*8044SWilliam.Kucharski@Sun.COM
30*8044SWilliam.Kucharski@Sun.COM* Add configuration inclusion support by adding a command "include". !
31*8044SWilliam.Kucharski@Sun.COM
32*8044SWilliam.Kucharski@Sun.COM* Add automatic configuration support.
33*8044SWilliam.Kucharski@Sun.COM
34*8044SWilliam.Kucharski@Sun.COM* Add bunzip2 support.
35*8044SWilliam.Kucharski@Sun.COM
36*8044SWilliam.Kucharski@Sun.COM* Define the module system.
37*8044SWilliam.Kucharski@Sun.COM
38*8044SWilliam.Kucharski@Sun.COM* Add BSD syntax support, using results of ioprobe to map drives. !
39*8044SWilliam.Kucharski@Sun.COM  (0x1f0-0x1f7 = primary IDE, 0x170-0x176 = secondary,
40*8044SWilliam.Kucharski@Sun.COM   0x1e8-0x1ef = tertiary, 0x168-0x16f = quaternary).
41*8044SWilliam.Kucharski@Sun.COM
42*8044SWilliam.Kucharski@Sun.COM* Add a real scripting language, possibly retaining backward
43*8044SWilliam.Kucharski@Sun.COM  compatibility so that old config files can be used.
44*8044SWilliam.Kucharski@Sun.COM
45*8044SWilliam.Kucharski@Sun.COM* Add internationalization support, emulating gettext as much as is
46*8044SWilliam.Kucharski@Sun.COM  feasible.
47*8044SWilliam.Kucharski@Sun.COM
48*8044SWilliam.Kucharski@Sun.COM* Support other architectures than i386-pc.
49*8044SWilliam.Kucharski@Sun.COM
50*8044SWilliam.Kucharski@Sun.COM* Add real memory management.
51*8044SWilliam.Kucharski@Sun.COM
52*8044SWilliam.Kucharski@Sun.COM
53*8044SWilliam.Kucharski@Sun.COMThings that may be done anytime:
54*8044SWilliam.Kucharski@Sun.COM
55*8044SWilliam.Kucharski@Sun.COM* Port the script ``grub-install'' to OpenBSD. At least you will have to
56*8044SWilliam.Kucharski@Sun.COM  modify the function `convert' so that it can translate a native device
57*8044SWilliam.Kucharski@Sun.COM  name into the corresponding GRUB drive representation. !
58*8044SWilliam.Kucharski@Sun.COM
59*8044SWilliam.Kucharski@Sun.COM* Add a command to run a GRUB script file. !!
60*8044SWilliam.Kucharski@Sun.COM
61*8044SWilliam.Kucharski@Sun.COM* Add commands to manipulate the menu from the command-line interface. !
62*8044SWilliam.Kucharski@Sun.COM
63*8044SWilliam.Kucharski@Sun.COM* Make symbolic links work for BSD FFS.
64*8044SWilliam.Kucharski@Sun.COM
65*8044SWilliam.Kucharski@Sun.COM* Add indirect block support to the BSD FFS filesystem code, so files
66*8044SWilliam.Kucharski@Sun.COM  larger than 16MB can be read.
67*8044SWilliam.Kucharski@Sun.COM
68*8044SWilliam.Kucharski@Sun.COM* Fix-up FreeBSD, NetBSD (and OpenBSD ?) command-line boot
69*8044SWilliam.Kucharski@Sun.COM  parameters.
70*8044SWilliam.Kucharski@Sun.COM
71*8044SWilliam.Kucharski@Sun.COM* Support embedding a Stage 1.5 in the "bootloader" area of a FFS
72*8044SWilliam.Kucharski@Sun.COM  partition. (We already have the code, but need an approval by an
73*8044SWilliam.Kucharski@Sun.COM  expert before turning on the support. Any volunteers?)
74*8044SWilliam.Kucharski@Sun.COM
75*8044SWilliam.Kucharski@Sun.COM* Support embedding a Stage 1.5 in the EXT2_BOOT_LOADER_INO of an ext2fs
76*8044SWilliam.Kucharski@Sun.COM  partition, so that it won't be accidentally erased or modified by
77*8044SWilliam.Kucharski@Sun.COM  the kernel.
78*8044SWilliam.Kucharski@Sun.COM
79*8044SWilliam.Kucharski@Sun.COM* Add ISA PnP support.
80*8044SWilliam.Kucharski@Sun.COM
81*8044SWilliam.Kucharski@Sun.COM* Add more filesystems support (NTFS, etc.)
82*8044SWilliam.Kucharski@Sun.COM
83*8044SWilliam.Kucharski@Sun.COM* Add more remote console support (parallel and net).
84*8044SWilliam.Kucharski@Sun.COM
85*8044SWilliam.Kucharski@Sun.COM* Add (real) RAID support.
86*8044SWilliam.Kucharski@Sun.COM
87*8044SWilliam.Kucharski@Sun.COM? Add a partition naming syntax that means ``the first partition of
88*8044SWilliam.Kucharski@Sun.COM  this type''.  We need this for clean Hurd install floppies.
89*8044SWilliam.Kucharski@Sun.COM  Nope.  Improving the `find' command would solve this problem.
90*8044SWilliam.Kucharski@Sun.COM
91*8044SWilliam.Kucharski@Sun.COM* Add CDROM-chainloading support. It would be enough to support only
92*8044SWilliam.Kucharski@Sun.COM  BIOSes which have bootable-CDROM support (so you may use the "Bootable
93*8044SWilliam.Kucharski@Sun.COM  CDROM" BIOS calls). It is not trivial to support BIOSes without the
94*8044SWilliam.Kucharski@Sun.COM  capability to boot CDROM.
95*8044SWilliam.Kucharski@Sun.COM
96*8044SWilliam.Kucharski@Sun.COM? Divide pxegrub into two parts, so the initial image doesn't exceed
97*8044SWilliam.Kucharski@Sun.COM  the 32KB limit. I'm not sure if this is really necessary, because the
98*8044SWilliam.Kucharski@Sun.COM  PXE standard just says that it is _recommended_ to improve the
99*8044SWilliam.Kucharski@Sun.COM  modularity of a boot image. Obviously, this reason doesn't apply to
100*8044SWilliam.Kucharski@Sun.COM  GRUB, as pxegrub is merely a secondary boot loader. So whether this
101*8044SWilliam.Kucharski@Sun.COM  task should be done depends on if existing PXE ROMs support >32KB
102*8044SWilliam.Kucharski@Sun.COM  images or not, after all.
103