We have version 3.02 now : just a small fix for bootkernel name guessing.
This commit is contained in:
parent
7ee41d4310
commit
340ca7145e
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: boot32.c,v 1.6 2002/12/30 15:54:46 reinoud Exp $ */
|
||||
/* $NetBSD: boot32.c,v 1.7 2003/01/06 02:54:03 reinoud Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002 Reinoud Zandijk
|
||||
@ -542,8 +542,9 @@ void add_initvectors(void) {
|
||||
|
||||
|
||||
void create_configuration(int argc, char **argv, int start_args) {
|
||||
int i, root_specified, id_low, id_high;
|
||||
|
||||
int i, root_specified, id_low, id_high;
|
||||
char *pos;
|
||||
|
||||
bconfig_new_phys = kernel_free_vm_start - pv_offset;
|
||||
bconfig_page = get_relocated_page(bconfig_new_phys, nbpp);
|
||||
bconfig = (struct bootconfig *) (bconfig_page->logical);
|
||||
@ -561,8 +562,21 @@ void create_configuration(int argc, char **argv, int start_args) {
|
||||
bconfig->version = BOOTCONFIG_VERSION;
|
||||
strcpy(bconfig->kernelname, booted_file);
|
||||
|
||||
/* get the kernel base name and update the RiscOS name to a Unix name */
|
||||
i = strlen(bconfig->kernelname);
|
||||
while ((i >= 0) && (bconfig->kernelname[i] != '.')) i--;
|
||||
if (i) memcpy(bconfig->kernelname, bconfig->kernelname+i+1, strlen(booted_file)-i);
|
||||
|
||||
pos = bconfig->kernelname;
|
||||
while (*pos) {
|
||||
if (*pos == '/') *pos = '.';
|
||||
pos++;
|
||||
};
|
||||
|
||||
/* set the machine_id */
|
||||
memcpy(&(bconfig->machine_id), &id_low, 4);
|
||||
|
||||
/* check if the `root' is specified */
|
||||
root_specified = 0;
|
||||
strcpy(bconfig->args, "");
|
||||
for (i = start_args; i < argc; i++) {
|
||||
@ -574,12 +588,14 @@ void create_configuration(int argc, char **argv, int start_args) {
|
||||
strcat(bconfig->args, DEFAULT_ROOT);
|
||||
};
|
||||
|
||||
/* mark kernel pointers */
|
||||
bconfig->kernvirtualbase = marks[MARK_START];
|
||||
bconfig->kernphysicalbase = kernel_physical_start;
|
||||
bconfig->kernsize = kernel_free_vm_start - marks[MARK_START];
|
||||
bconfig->ksym_start = marks[MARK_SYM];
|
||||
bconfig->ksym_end = marks[MARK_SYM] + marks[MARK_NSYM];
|
||||
|
||||
/* setup display info */
|
||||
bconfig->display_phys = videomem_start;
|
||||
bconfig->display_start = videomem_start;
|
||||
bconfig->display_size = display_size;
|
||||
@ -588,6 +604,7 @@ void create_configuration(int argc, char **argv, int start_args) {
|
||||
bconfig->log2_bpp = vdu_var(os_MODEVAR_LOG2_BPP);
|
||||
bconfig->framerate = 56; /* XXX why? better guessing possible? XXX */
|
||||
|
||||
/* fill in memory info */
|
||||
bconfig->pagesize = nbpp;
|
||||
bconfig->drampages = total_dram_pages + total_podram_pages; /* XXX */
|
||||
bconfig->vrampages = total_vram_pages;
|
||||
|
@ -1,4 +1,4 @@
|
||||
$NetBSD: version,v 1.2 2003/01/02 01:05:35 reinoud Exp $
|
||||
$NetBSD: version,v 1.3 2003/01/06 02:54:04 reinoud Exp $
|
||||
|
||||
0.90: Experimental C version
|
||||
0.91: General cleanup
|
||||
@ -16,3 +16,4 @@ $NetBSD: version,v 1.2 2003/01/02 01:05:35 reinoud Exp $
|
||||
2.99: acorn32 version split off from acorn26 bootloader
|
||||
3.00: acorn32 bootloader version 3 is alive
|
||||
3.01: fixed serious non VRAM screen issues and made NC live again!
|
||||
3.02: first small try for bootfile name fixing
|
||||
|
Loading…
Reference in New Issue
Block a user