[ros-diffs] [evb] 45412: - Implement some simple video routines. - Fix usable RAM not to include loader code and ram disk (up to 32MB).

evb at svn.reactos.org evb at svn.reactos.org
Thu Feb 4 07:09:03 CET 2010


Author: evb
Date: Thu Feb  4 07:09:03 2010
New Revision: 45412

URL: http://svn.reactos.org/svn/reactos?rev=45412&view=rev
Log:
- Implement some simple video routines.
- Fix usable RAM not to include loader code and ram disk (up to 32MB).


Modified:
    trunk/reactos/boot/armllb/fw.c
    trunk/reactos/boot/armllb/os/loader.c

Modified: trunk/reactos/boot/armllb/fw.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/armllb/fw.c?rev=45412&r1=45411&r2=45412&view=diff
==============================================================================
--- trunk/reactos/boot/armllb/fw.c [iso-8859-1] (original)
+++ trunk/reactos/boot/armllb/fw.c [iso-8859-1] Thu Feb  4 07:09:03 2010
@@ -36,8 +36,7 @@
 LlbFwVideoSetDisplayMode(IN PCHAR DisplayModeName,
                          IN BOOLEAN Init)
 {
-    printf("%s is UNIMPLEMENTED", __FUNCTION__);
-    while (TRUE);
+    /* Return text mode */
     return 0;
 }
 
@@ -46,15 +45,19 @@
                          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 @@
 VOID
 LlbFwVideoHideShowTextCursor(IN BOOLEAN Show)
 {
-    printf("%s is UNIMPLEMENTED", __FUNCTION__);
-    while (TRUE);
+    /* Nothing to do */
+    return;
 }
 
 VOID
@@ -82,8 +85,8 @@
 VOID
 LlbFwVideoClearScreen(IN UCHAR Attr)
 {
-    printf("%s is UNIMPLEMENTED", __FUNCTION__);
-    while (TRUE);
+    /* Clear the screen */
+    LlbVideoClearScreen(TRUE);
 }
 
 VOID

Modified: trunk/reactos/boot/armllb/os/loader.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/armllb/os/loader.c?rev=45412&r1=45411&r2=45412&view=diff
==============================================================================
--- trunk/reactos/boot/armllb/os/loader.c [iso-8859-1] (original)
+++ trunk/reactos/boot/armllb/os/loader.c [iso-8859-1] Thu Feb  4 07:09:03 2010
@@ -99,6 +99,13 @@
         
     /* 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 */




More information about the Ros-diffs mailing list