diff --git a/reactos/boot/armllb/fw.c b/reactos/boot/armllb/fw.c index be4dfde6e38..884d0f81e22 100644 --- a/reactos/boot/armllb/fw.c +++ b/reactos/boot/armllb/fw.c @@ -36,8 +36,7 @@ ULONG LlbFwVideoSetDisplayMode(IN PCHAR DisplayModeName, IN BOOLEAN Init) { - printf("%s is UNIMPLEMENTED", __FUNCTION__); - while (TRUE); + /* Return text mode */ return 0; } @@ -46,15 +45,19 @@ LlbFwVideoGetDisplaySize(OUT PULONG Width, OUT PULONG Height, OUT PULONG Depth) { - printf("%s is UNIMPLEMENTED", __FUNCTION__); - while (TRUE); + /* Query static settings */ + *Width = LlbHwGetScreenWidth(); + *Height = LlbHwGetScreenHeight(); + + /* Depth is always 16 bpp */ + *Depth = 16; } ULONG LlbFwVideoGetBufferSize(VOID) { - printf("%s is UNIMPLEMENTED", __FUNCTION__); - while (TRUE); + /* X * Y * BPP */ + return LlbHwGetScreenWidth() * LlbHwGetScreenHeight() * 2; } VOID @@ -68,8 +71,8 @@ LlbFwVideoSetTextCursorPosition(IN ULONG X, VOID LlbFwVideoHideShowTextCursor(IN BOOLEAN Show) { - printf("%s is UNIMPLEMENTED", __FUNCTION__); - while (TRUE); + /* Nothing to do */ + return; } VOID @@ -82,8 +85,8 @@ LlbFwVideoCopyOffScreenBufferToVRAM(IN PVOID Buffer) VOID LlbFwVideoClearScreen(IN UCHAR Attr) { - printf("%s is UNIMPLEMENTED", __FUNCTION__); - while (TRUE); + /* Clear the screen */ + LlbVideoClearScreen(TRUE); } VOID diff --git a/reactos/boot/armllb/os/loader.c b/reactos/boot/armllb/os/loader.c index d4e520a3036..7c705caad2c 100755 --- a/reactos/boot/armllb/os/loader.c +++ b/reactos/boot/armllb/os/loader.c @@ -99,6 +99,13 @@ LlbBuildMemoryMap(VOID) /* Query memory information */ LlbEnvGetMemoryInformation(&Base, &Size); + + /* Don't use memory that the RAMDISK is using */ + /* HACK HACK */ + Base += 32 * 1024 * 1024; + Size -= 32 * 1024 * 1024; + + /* Allocate an entry for it */ LlbAllocateMemoryEntry(BiosMemoryUsable, Base, Size); /* Call the hardware-specific function for hardware-defined regions */