[ros-dev] [ros-diffs] [ion] 74546: BL Library now works 100% in paging, protected mode. A picture is worth a thousand commits: http://i.imgur.com/Zx2nQ6x.jpg [BOOTLIB]: Add support for protocol open/close/lookup while p...

Thomas Faber thomas.faber at reactos.org
Mon May 15 10:04:10 UTC 2017


We have a bin2c tool that would make including the boot logo much
nicer. You'll want to use something like the attached patch, and add
the bmp file as app/rosload/logo.bmp. Then just include "logo.h"
instead of the g_Logo array in rosload.c.


On 2017-05-15 03:38, ion at svn.reactos.org wrote:
> Author: ion
> Date: Mon May 15 01:38:49 2017
> New Revision: 74546
>
> URL: http://svn.reactos.org/svn/reactos?rev=74546&view=rev
> Log:
> BL Library now works 100% in paging, protected mode. A picture is worth a thousand commits: http://i.imgur.com/Zx2nQ6x.jpg
> [BOOTLIB]: Add support for protocol open/close/lookup while paging and protected mode is enabled.
> [BOOTLIB]: Implement support for dozens of UEFI functions while under protected mode.
> [BOOTLIB]: Fix bugs in existing UEFI functions which were switching to _protected_ mode instead of _real mode_ before making the UEFI call.
> [BOOTLIB]: Free dynamic descriptor in MmMdFreeDescriptor.
> [BOOTLIB]: Implement BlHtDelete.
> [BOOTLIB]: Implement re-initialize-all path in DsppInitialize.
> [BOOTLIB]: Fix small bug in BlDisplayInvalidateOemBitmap
> [BOOTLIB]: Fix bigger bug in BlDisplayGetOemBitmap :)
>
> Modified:
>     trunk/reactos/boot/environ/app/rosload/rosload.c
>     trunk/reactos/boot/environ/include/bl.h
>     trunk/reactos/boot/environ/lib/firmware/efi/firmware.c
>     trunk/reactos/boot/environ/lib/io/device.c
>     trunk/reactos/boot/environ/lib/io/display/display.c
>     trunk/reactos/boot/environ/lib/io/display/efi/gop.c
>     trunk/reactos/boot/environ/lib/misc/util.c
>     trunk/reactos/boot/environ/lib/mm/descriptor.c
>     trunk/reactos/boot/environ/lib/platform/time.c
>
> [This mail would be too long, it was shortened to contain the URLs only.]
>
> Modified: trunk/reactos/boot/environ/app/rosload/rosload.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/app/rosload/rosload.c?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/include/bl.h
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/include/bl.h?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/lib/firmware/efi/firmware.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/firmware/efi/firmware.c?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/lib/io/device.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/io/device.c?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/lib/io/display/display.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/io/display/display.c?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/lib/io/display/efi/gop.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/io/display/efi/gop.c?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/lib/misc/util.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/misc/util.c?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/lib/mm/descriptor.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/mm/descriptor.c?rev=74546&r1=74545&r2=74546&view=diff
>
> Modified: trunk/reactos/boot/environ/lib/platform/time.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/platform/time.c?rev=74546&r1=74545&r2=74546&view=diff
>
>

-------------- next part --------------
Index: CMakeLists.txt
===================================================================
--- boot/environ/CMakeLists.txt	(revision 74550)
+++ boot/environ/CMakeLists.txt	(working copy)
@@ -106,11 +106,18 @@
 
 add_dependencies(bootmgfw asm bugcodes)
 
+add_custom_command(
+    OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/app/rosload/logo.c ${CMAKE_CURRENT_BINARY_DIR}/app/rosload/logo.h
+    COMMAND native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/app/rosload/logo.bmp ${CMAKE_CURRENT_BINARY_DIR}/app/rosload/logo.c ${CMAKE_CURRENT_BINARY_DIR}/app/rosload/logo.h BIN g_Logo
+    DEPENDS native-bin2c ${CMAKE_CURRENT_SOURCE_DIR}/app/rosload/logo.bmp)
+
 list(APPEND ROSLOAD_BASE_SOURCE
      app/rosload/rosload.c
+     ${CMAKE_CURRENT_BINARY_DIR}/app/rosload/logo.c
      )
 
 add_executable(rosload ${ROSLOAD_BASE_SOURCE})
+add_target_include_directories(rosload ${CMAKE_CURRENT_BINARY_DIR}/app/rosload)
 set_target_properties(rosload PROPERTIES SUFFIX ".efi")
 
 if(MSVC)


More information about the Ros-dev mailing list