mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 01:05:42 +00:00
- Reading MBR from RAMDISK does not work since RAMDISK starts at BootSector (rdoffset) and disk sector functions are NULL. Build bogus signature/checksum for now, unless MBR really needed later.
- Now FreeLDR crashes no more and arrives at FrLdrStartup to boot kernel and setup paging. svn path=/trunk/; revision=45425
This commit is contained in:
parent
466a1c65ee
commit
f00336e8df
1 changed files with 8 additions and 6 deletions
|
@ -1031,14 +1031,14 @@ ArmPrepareForReactOS(IN BOOLEAN Setup)
|
||||||
PLIST_ENTRY NextEntry, OldEntry;
|
PLIST_ENTRY NextEntry, OldEntry;
|
||||||
PARC_DISK_INFORMATION ArcDiskInformation;
|
PARC_DISK_INFORMATION ArcDiskInformation;
|
||||||
PARC_DISK_SIGNATURE ArcDiskSignature;
|
PARC_DISK_SIGNATURE ArcDiskSignature;
|
||||||
ULONG ArcDiskCount = 0, Checksum = 0;
|
ULONG ArcDiskCount = 0;
|
||||||
|
#if 0
|
||||||
|
ULONG Checksum = 0;
|
||||||
PMASTER_BOOT_RECORD Mbr;
|
PMASTER_BOOT_RECORD Mbr;
|
||||||
PULONG Buffer;
|
PULONG Buffer;
|
||||||
|
#endif
|
||||||
PWCHAR ArmModuleName;
|
PWCHAR ArmModuleName;
|
||||||
|
|
||||||
TuiPrintf("About to prepare for kernel boot\n");
|
|
||||||
while (TRUE);
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Allocate the ARM Shared Heap
|
// Allocate the ARM Shared Heap
|
||||||
//
|
//
|
||||||
|
@ -1533,6 +1533,7 @@ ArmPrepareForReactOS(IN BOOLEAN Setup)
|
||||||
InitializeListHead(&ArcDiskInformation->DiskSignatureListHead);
|
InitializeListHead(&ArcDiskInformation->DiskSignatureListHead);
|
||||||
ArmLoaderBlock->ArcDiskInformation = (PVOID)((ULONG_PTR)ArcDiskInformation | KSEG0_BASE);
|
ArmLoaderBlock->ArcDiskInformation = (PVOID)((ULONG_PTR)ArcDiskInformation | KSEG0_BASE);
|
||||||
|
|
||||||
|
#if 0
|
||||||
//
|
//
|
||||||
// Read the MBR
|
// Read the MBR
|
||||||
//
|
//
|
||||||
|
@ -1546,12 +1547,13 @@ ArmPrepareForReactOS(IN BOOLEAN Setup)
|
||||||
for (i = 0; i < 128; i++) Checksum += Buffer[i];
|
for (i = 0; i < 128; i++) Checksum += Buffer[i];
|
||||||
Checksum = ~Checksum + 1;
|
Checksum = ~Checksum + 1;
|
||||||
|
|
||||||
|
#endif
|
||||||
//
|
//
|
||||||
// Allocate a disk signature and fill it out
|
// Allocate a disk signature and fill it out
|
||||||
//
|
//
|
||||||
ArcDiskSignature = ArmAllocateFromSharedHeap(sizeof(ARC_DISK_SIGNATURE));
|
ArcDiskSignature = ArmAllocateFromSharedHeap(sizeof(ARC_DISK_SIGNATURE));
|
||||||
ArcDiskSignature->Signature = Mbr->Signature;
|
ArcDiskSignature->Signature = 0xBADAB00B;// Mbr->Signature;
|
||||||
ArcDiskSignature->CheckSum = Checksum;
|
ArcDiskSignature->CheckSum = 0xFAB4BEEF; //Checksum;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Allocare a string for the name and fill it out
|
// Allocare a string for the name and fill it out
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue