Added 'bootdelay' feature in boot monitor, it pauses a given number of ms
so the list of programs in the image and their sizes can be seen before the kernel starts filling the screen. Added some formatting fixes in installboot and boot monitor itself, some of the segments were larger than the formatting allowed.
This commit is contained in:
parent
b421423c77
commit
5927788cdd
@ -1549,6 +1549,7 @@ void help(void)
|
|||||||
{ "ramimagedev", "RAM disk image if root is RAM" },
|
{ "ramimagedev", "RAM disk image if root is RAM" },
|
||||||
{ "ramsize", "RAM disk size" },
|
{ "ramsize", "RAM disk size" },
|
||||||
{ "bootdev", "Special name for the boot device" },
|
{ "bootdev", "Special name for the boot device" },
|
||||||
|
{ "bootdelay", "Delay after loading, before booting (ms)" },
|
||||||
{ "fd0, d0p2, c0d0p1s0", "Devices (as in /dev)" },
|
{ "fd0, d0p2, c0d0p1s0", "Devices (as in /dev)" },
|
||||||
{ "image", "Name of the kernel image" },
|
{ "image", "Name of the kernel image" },
|
||||||
{ "main", "Startup function" },
|
{ "main", "Startup function" },
|
||||||
|
|||||||
@ -377,6 +377,7 @@ int get_segment(u32_t *vsec, long *size, u32_t *addr, u32_t limit)
|
|||||||
void exec_image(char *image)
|
void exec_image(char *image)
|
||||||
/* Get a Minix image into core, patch it up and execute. */
|
/* Get a Minix image into core, patch it up and execute. */
|
||||||
{
|
{
|
||||||
|
char *delayvalue;
|
||||||
int i;
|
int i;
|
||||||
struct image_header hdr;
|
struct image_header hdr;
|
||||||
char *buf;
|
char *buf;
|
||||||
@ -497,7 +498,7 @@ void exec_image(char *image)
|
|||||||
a_data+= a_text;
|
a_data+= a_text;
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("%06lx %06lx %7ld %7ld %7ld",
|
printf("%07lx %07lx %8ld %8ld %8ld",
|
||||||
procp->cs, procp->ds,
|
procp->cs, procp->ds,
|
||||||
hdr.process.a_text, hdr.process.a_data,
|
hdr.process.a_text, hdr.process.a_data,
|
||||||
hdr.process.a_bss
|
hdr.process.a_bss
|
||||||
@ -570,6 +571,11 @@ void exec_image(char *image)
|
|||||||
/* Run the trailer function just before starting Minix. */
|
/* Run the trailer function just before starting Minix. */
|
||||||
if (!run_trailer()) { errno= 0; return; }
|
if (!run_trailer()) { errno= 0; return; }
|
||||||
|
|
||||||
|
/* Do delay if wanted. */
|
||||||
|
if((delayvalue = b_value("bootdelay")) != nil > 0) {
|
||||||
|
delay(delayvalue);
|
||||||
|
}
|
||||||
|
|
||||||
/* Translate the boot parameters to what Minix likes best. */
|
/* Translate the boot parameters to what Minix likes best. */
|
||||||
if (!params2params(params, sizeof(params))) { errno= 0; return; }
|
if (!params2params(params, sizeof(params))) { errno= 0; return; }
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user