1 |
|
/* |
2 |
|
* main.cpp - ROM patches |
3 |
|
* |
4 |
< |
* SheepShaver (C) 1997-2005 Christian Bauer and Marc Hellwig |
4 |
> |
* SheepShaver (C) 1997-2008 Christian Bauer and Marc Hellwig |
5 |
|
* |
6 |
|
* This program is free software; you can redistribute it and/or modify |
7 |
|
* it under the terms of the GNU General Public License as published by |
70 |
|
* Initialize everything, returns false on error |
71 |
|
*/ |
72 |
|
|
73 |
< |
bool InitAll(void) |
73 |
> |
bool InitAll(const char *vmdir) |
74 |
|
{ |
75 |
|
// Load NVRAM |
76 |
< |
XPRAMInit(); |
76 |
> |
XPRAMInit(vmdir); |
77 |
|
|
78 |
|
// Load XPRAM default values if signature not found |
79 |
|
if (XPRAM[0x130c] != 0x4e || XPRAM[0x130d] != 0x75 |
173 |
|
memset((uint8 *)kernel_data + 0xb80, 0x3d, 0x80); |
174 |
|
Mac_memset(vector_lookup_tbl, 0, 128); |
175 |
|
Mac_memset(vector_mask_tbl, 0, 64); |
176 |
< |
kernel_data->v[0xb80 >> 2] = htonl(ROM_BASE); |
176 |
> |
kernel_data->v[0xb80 >> 2] = htonl(ROMBase); |
177 |
|
kernel_data->v[0xb84 >> 2] = htonl(of_dev_tree); // OF device tree base |
178 |
|
kernel_data->v[0xb90 >> 2] = htonl(vector_lookup_tbl); |
179 |
|
kernel_data->v[0xb94 >> 2] = htonl(vector_mask_tbl); |
180 |
< |
kernel_data->v[0xb98 >> 2] = htonl(ROM_BASE); // OpenPIC base |
180 |
> |
kernel_data->v[0xb98 >> 2] = htonl(ROMBase); // OpenPIC base |
181 |
|
kernel_data->v[0xbb0 >> 2] = htonl(0); // ADB base |
182 |
|
kernel_data->v[0xc20 >> 2] = htonl(RAMSize); |
183 |
|
kernel_data->v[0xc24 >> 2] = htonl(RAMSize); |