No description
62ddcc8f79
Use -mrtd and -mregparm=3 to reduce the generated code sizes. This means that any missing prototypes could be fatal. Also, you must take care when writing assembly code. See the comments at the beginning of startup.S, for more details. * kern/i386/pc/startup.S (pupa_halt): Modified for the new compilation mechanism. (pupa_chainloader_real_boot): Likewise. (pupa_biosdisk_rw_int13_extensions): Likewise. (pupa_biosdisk_rw_standard): Likewise. (pupa_biosdisk_check_int13_extensions): Likewise. (pupa_biosdisk_get_diskinfo_int13_extensions): Likewise. (pupa_biosdisk_get_diskinfo_standard): Likewise. (pupa_get_memsize): Likewise. (pupa_get_mmap_entry): Likewise. (pupa_console_putchar): Likewise. (pupa_console_setcursor): Likewise. (pupa_getrtsecs): Use pushl instead of push. * kern/i386/pc/init.c (pupa_machine_init): Use the scratch memory instead of the stack for a mmap entry, because some BIOSes may ignore the maximum size and overflow. * conf/i386-pc.rmk (COMMON_CFLAGS): Added -mrtd and -mregparm=3. * genmk.rb (PModule#rule): Compile automatically generated sources with module-specific CFLAGS as well as other sources. |
||
---|---|---|
boot/i386/pc | ||
conf | ||
disk/i386/pc | ||
fs | ||
include/grub | ||
kern | ||
loader/i386/pc | ||
term/i386/pc | ||
util | ||
.cvsignore | ||
aclocal.m4 | ||
AUTHORS | ||
autogen.sh | ||
ChangeLog | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.ac | ||
COPYING | ||
genkernsyms.sh | ||
genmk.rb | ||
genmodsrc.sh | ||
gensymlist.sh | ||
INSTALL | ||
install-sh | ||
Makefile.in | ||
mkinstalldirs | ||
NEWS | ||
README | ||
stamp-h.in | ||
THANKS | ||
TODO |
This is PUPA, the Preliminary Universal Programming Architecture for
GRUB. PUPA is a research project for the next generation of GNU GRUB.
The most important goal is to make GNU GRUB cleaner, safer, more robust,
more powerful, and more portable.
See the file NEWS for a description of recent changes to PUPA.
See the file INSTALL for instructions on how to build and install the
PUPA data and program files.
Please visit the official web page of PUPA, for more information.
The URL is <http://www.nongnu.org/pupa/>.
Because PUPA is still in developmental stage, PUPA is not for general
use (yet). For now, you can install PUPA into a floppy by these
instructions:
$ configure && make
$ ./pupa-mkimage -v -d . -o core.img chain fat
$ dd if=boot.img of=/dev/fd0 bs=512 count=1
$ dd if=core.img of=/dev/fd0 bs=512 seek=1
It would be easier to use Bochs <http://bochs.sf.net/> than a real
machine.