...
 
Commits (12)
    https://gitcode.net/btwise/opencorepkg_mod/-/commit/3df90c7315ff36f85d508c0fbf78ee1e2a5c8a99 Bump version 2023-12-11T23:41:54+03:00 Andrey1970AppleLife ua6lpo@rambler.ru https://gitcode.net/btwise/opencorepkg_mod/-/commit/2923cdbcf516a457fdab922ec59d39987615a518 DataBase: Updated MaximumOSVersion 2023-12-12T00:43:03+03:00 Andrey1970AppleLife ua6lpo@rambler.ru https://gitcode.net/btwise/opencorepkg_mod/-/commit/fc9a5ece42a53133e4d43116b2ecb9c0bfaa7c7c OcSerializeLib: Remove non-needed MDEPKG_NDEBUG conditional code 2023-12-13T07:57:12+00:00 Mike Beaton mjsbeaton@gmail.com Which was designed to avoid warnings caused by apparently unused variables when DEBUG statements are compiled with MDEPKG_NDEBUG defined, but which is actually causing compilation errors with improved DEBUG macro. https://gitcode.net/btwise/opencorepkg_mod/-/commit/1420b086dda3ea31b01ff7cf1448f6950189c861 Merge branch 'master' of https://github.com/acidanthera/OpenCorePkg 2023-12-14T12:33:31+08:00 btwise tyq@qq.com https://gitcode.net/btwise/opencorepkg_mod/-/commit/b01f6ce83efd262d899b3c38f829b2ce5004720d Merge branch 'master' of https://gitee.com/btwise/OpenCorePkg 2023-12-14T12:46:00+08:00 btwise tyq@qq.com https://gitcode.net/btwise/opencorepkg_mod/-/commit/0db23b66c9f820ba472c06d687983b01ae48a732 Build: Fixed OpenCore RELEASE compilation for VS2022. 2023-12-21T14:48:39+03:00 Mikhail Krichanov mikhailkrichanov@gmail.com https://gitcode.net/btwise/opencorepkg_mod/-/commit/47ad1a72b09654b6720f70b21d66eac8a8055861 OpenDuet: Change PcdImageProtectionPolicy to 0x00000003 to allow HfsPlusLegac... 2023-12-28T12:15:25+03:00 Mike Beaton mjsbeaton@gmail.com https://gitcode.net/btwise/opencorepkg_mod/-/commit/b585ba824b53ef4afa4c08dc90ac98496581fb7e OcCpuLib: Fix CPU frequency calculation on AMD 10h family 2023-12-30T22:37:48-06:00 John Davis goldfishnet64@outlook.com https://gitcode.net/btwise/opencorepkg_mod/-/commit/2b66a703a0fb6448a4d19111f19ce95401a37dd4 BootPickers: Swap positions of Shutdown and Restart buttons 2024-01-01T16:00:30+00:00 Mike Beaton mjsbeaton@gmail.com to better match newer macOS. Add OC_ATTR_USE_REVERSED_UI bit to use old layout. https://gitcode.net/btwise/opencorepkg_mod/-/commit/d41bb10cd2c7beb92b35ee97d939d6731ce40888 Docs: Rebuild 2024-01-01T16:20:12+00:00 Mike Beaton mjsbeaton@gmail.com https://gitcode.net/btwise/opencorepkg_mod/-/commit/762113268c74cc208b8c615797ffd03c6e7f572a Merge branch 'master' of https://github.com/acidanthera/OpenCorePkg 2024-01-03T13:12:35+08:00 btwise tyq@qq.com https://gitcode.net/btwise/opencorepkg_mod/-/commit/20be0248c6a57fb6ddb6e9217bfdf1e55998034b Merge branch 'master' of https://gitee.com/btwise/OpenCorePkg 2024-01-03T13:13:31+08:00 btwise tyq@qq.com
......@@ -262,4 +262,4 @@ AppleModelYear:
- 2018
- 2019
MinimumOSVersion: "10.12.5"
MaximumOSVersion: "13.6"
MaximumOSVersion: "13.6.3"
......@@ -173,4 +173,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.11.4"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -133,4 +133,4 @@ AppleModelYear:
- 2015
- 2016
MinimumOSVersion: "10.10.2"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -174,4 +174,4 @@ AppleModelYear:
- 2018
- 2019
MinimumOSVersion: "10.12.5"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -135,4 +135,4 @@ AppleModelYear:
- 2017
- 2018
MinimumOSVersion: "10.10.3"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -126,4 +126,4 @@ AppleModelYear:
- 2017
- 2018
MinimumOSVersion: "10.10.3"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -150,4 +150,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.10.2"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -130,4 +130,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.12"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -192,4 +192,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.12.1"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -154,4 +154,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.12.1"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -155,4 +155,4 @@ AppleModelYear:
- 2018
- 2019
MinimumOSVersion: "10.12.5"
MaximumOSVersion: "13.6"
MaximumOSVersion: "13.6.3"
......@@ -248,4 +248,4 @@ AppleModelYear:
- 2017
- 2018
MinimumOSVersion: "10.12.5"
MaximumOSVersion: "13.6"
MaximumOSVersion: "13.6.3"
......@@ -211,4 +211,4 @@ AppleModelYear:
- 2017
- 2018
MinimumOSVersion: "10.12.5"
MaximumOSVersion: "13.6"
MaximumOSVersion: "13.6.3"
......@@ -154,4 +154,4 @@ AppleModelYear:
- 2018
- 2019
MinimumOSVersion: "10.9.1"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -160,4 +160,4 @@ AppleModelYear:
- 2017
- 2018
MinimumOSVersion: "10.10"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -184,4 +184,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.11"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -155,4 +155,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.11"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -180,4 +180,4 @@ AppleModelYear:
- 2016
- 2017
MinimumOSVersion: "10.11"
MaximumOSVersion: "12.7"
MaximumOSVersion: "12.7.2"
......@@ -118,4 +118,4 @@ AppleModelYear:
- 2020
- 2021
MinimumOSVersion: "10.12.4"
MaximumOSVersion: "13.6"
MaximumOSVersion: "13.6.3"
......@@ -145,4 +145,4 @@ AppleModelYear:
- 2018
- 2019
MinimumOSVersion: "10.12.4"
MaximumOSVersion: "13.6"
MaximumOSVersion: "13.6.3"
......@@ -153,4 +153,4 @@ AppleModelYear:
- 2018
- 2019
MinimumOSVersion: "10.12.4"
MaximumOSVersion: "13.6"
MaximumOSVersion: "13.6.3"
OpenCore Changelog
==================
#### v0.9.8
- Updated OpenDuet to allow loading unsigned, unaligned legacy Apple images such as HfsPlusLegacy.efi
- Fixed CPU frequency calculation on AMD 10h family
- Swapped the position of Shutdown and Restart buttons to better match recent macOS
- Added `OC_ATTR_USE_REVERSED_UI` to allow access to previous default Shutdown and Restart button arrangement
#### v0.9.7
- Updated recovery_urls.txt
- Changed OpenDuet to enforce `W^X` settings rather than fixing them in loaded images
......
0b8c21ce5395a0ee6f94efe89ed89b4a
e8e6a05be5ae29df99c3e435fc0e7add
......@@ -94,7 +94,7 @@
\vspace{0.2in}
Reference Manual (0.9.7)
Reference Manual (0.9.8)
\vspace{0.2in}
......@@ -3693,6 +3693,10 @@ the default boot entry choice will remain changed until the next manual reconfig
\item A list of recommended flavours is provided in \texttt{Docs/Flavours.md}.
\end{itemize}
\medskip
\item \texttt{0x0100} --- \texttt{OC\_ATTR\_USE\_REVERSED\_UI}, reverse position of Shutdown and
Restart buttons, affects OpenCanopy and builtin picker. The reversed setting matches older macOS,
and since it was the previous default in OpenCore it may better match some custom backgrounds.
Only applicable when \texttt{OC\_ATTR\_USE\_MINIMAL\_UI} is not set.
\end{itemize}
\item
......
\documentclass[]{article}
%DIF LATEXDIFF DIFFERENCE FILE
%DIF DEL PreviousConfiguration.tex Sun Nov 12 17:46:03 2023
%DIF ADD ../Configuration.tex Sun Nov 19 19:16:39 2023
%DIF DEL PreviousConfiguration.tex Thu Dec 28 17:20:22 2023
%DIF ADD ../Configuration.tex Mon Jan 1 15:56:40 2024
\usepackage{lmodern}
\usepackage{amssymb,amsmath}
......@@ -154,7 +154,7 @@
\vspace{0.2in}
Reference Manual (0.9\DIFdelbegin \DIFdel{.6}\DIFdelend \DIFaddbegin \DIFadd{.7}\DIFaddend )
Reference Manual (0.9\DIFdelbegin \DIFdel{.7}\DIFdelend \DIFaddbegin \DIFadd{.8}\DIFaddend )
\vspace{0.2in}
......@@ -1677,45 +1677,39 @@ To view their current state, use the \texttt{pmset -g} command in Terminal.
\textbf{Description}: Fix errors in early Mac OS X boot.efi images.
Modern secure PE loaders will refuse to load \texttt{boot.efi} images from
\DIFdelbegin \DIFdel{Mac OS X }\DIFdelend \DIFaddbegin \DIFadd{macOS }\DIFaddend 10.4 \DIFdelbegin \DIFdel{and 10.5 }\DIFdelend \DIFaddbegin \DIFadd{to 10.12 }\DIFaddend due to these files containing \texttt{W\^{}X} errors
\DIFaddbegin \DIFadd{(in all versions) }\DIFaddend and illegal overlapping sections \DIFaddbegin \DIFadd{(in 10.4 and 10.5 32-bit
versions only)}\DIFaddend .
macOS 10.4 to 10.12 due to these files containing \texttt{W\^{}X} errors
(in all versions) and illegal overlapping sections (in 10.4 and 10.5 32-bit
versions only).
This quirk detects these issues and pre-processes such images in memory,
so that a modern loader \DIFdelbegin \DIFdel{can }\DIFdelend \DIFaddbegin \DIFadd{will }\DIFaddend accept them.
so that a modern loader will accept them.
Pre-processing in memory is incompatible with secure boot, as the image loaded
is not the image on disk, so you cannot sign files which are loaded in this way
based on their original disk image contents.
Certain firmware will offer to register the hash of new, unknown images - this would
still work. On the other hand, it is not particularly realistic to want to
start \DIFdelbegin \DIFdel{such }\DIFdelend \DIFaddbegin \DIFadd{these }\DIFaddend early, insecure images with secure boot anyway.
start these early, insecure images with secure boot anyway.
\emph{Note 1}: The quirk is \DIFdelbegin \DIFdel{only applied to Apple-specific `fat' (both 32-bit and 64-bit
versions in one image) }\texttt{\DIFdel{.efi}} %DIFAUXCMD
\DIFdel{files, and is }\DIFdelend never applied during the Apple secure boot path for
newer macOS. \DIFaddbegin \DIFadd{The Apple secure boot path includes its own separate mitigations
for }\texttt{\DIFadd{boot.efi}} \texttt{\DIFadd{W\^{}X}} \DIFadd{issues.
}\DIFaddend
\emph{Note 1}: The quirk is never applied during the Apple secure boot path for
newer macOS. The Apple secure boot path includes its own separate mitigations
for \texttt{boot.efi} \texttt{W\^{}X} issues.
\emph{Note 2}: \DIFdelbegin \DIFdel{The quirk
is only needed for loading Mac OS X 10.4 }\DIFdelend \DIFaddbegin \DIFadd{When enabled, and when not processing for Apple secure boot, this quirk
\emph{Note 2}: When enabled, and when not processing for Apple secure boot, this quirk
is applied to:
}\begin{itemize}
\begin{itemize}
\tightlist
\item \DIFadd{All images from Apple Fat binaries (32-bit }\DIFaddend and \DIFdelbegin \DIFdel{10.5, and even then
only if }\DIFdelend \DIFaddbegin \DIFadd{64-bit versions in one image).
}\item \DIFadd{All Apple-signed images.
}\item \DIFadd{All images at
}\texttt{\DIFadd{\textbackslash System\textbackslash Library\textbackslash CoreServices\textbackslash boot.efi}}
\DIFadd{within their filesystem.
}\end{itemize}
\item All images from Apple Fat binaries (32-bit and 64-bit versions in one image).
\item All Apple-signed images.
\item All images at
\texttt{\textbackslash System\textbackslash Library\textbackslash CoreServices\textbackslash boot.efi}
within their filesystem.
\end{itemize}
\emph{\DIFadd{Note 3}}\DIFadd{: This quirk is needed for macOS 10.4 to 10.12 (and
higher, if Apple secure boot is not enabled), but only when }\DIFaddend the firmware
itself includes a modern, more secure PE COFF image loader. This \DIFdelbegin \DIFdel{includes
}\DIFdelend \DIFaddbegin \DIFadd{applies to
}\DIFaddend current builds of OpenDuet\DIFaddbegin \DIFadd{, and to OVMF if built from audk source code}\DIFaddend .
\emph{Note 3}: This quirk is needed for macOS 10.4 to 10.12 (and
higher, if Apple secure boot is not enabled), but only when the firmware
itself includes a modern, more secure PE COFF image loader. This applies to
current builds of OpenDuet, and to OVMF if built from audk source code.
\item
\texttt{ForceBooterSignature}\\
......@@ -3759,7 +3753,11 @@ the default boot entry choice will remain changed until the next manual reconfig
\item A list of recommended flavours is provided in \texttt{Docs/Flavours.md}.
\end{itemize}
\medskip
\end{itemize}
\DIFaddbegin \item \texttt{\DIFadd{0x0100}} \DIFadd{--- }\texttt{\DIFadd{OC\_ATTR\_USE\_REVERSED\_UI}}\DIFadd{, reverse position of Shutdown and
Restart buttons, affects OpenCanopy and builtin picker. The reversed setting matches older macOS,
and since it was the previous default in OpenCore it may better match some custom backgrounds.
Only applicable when }\texttt{\DIFadd{OC\_ATTR\_USE\_MINIMAL\_UI}} \DIFadd{is not set.
}\DIFaddend \end{itemize}
\item
\texttt{PickerAudioAssist}\\
......
......@@ -94,7 +94,7 @@
\vspace{0.2in}
Reference Manual (0.9.6)
Reference Manual (0.9.7)
\vspace{0.2in}
......@@ -1617,26 +1617,39 @@ To view their current state, use the \texttt{pmset -g} command in Terminal.
\textbf{Description}: Fix errors in early Mac OS X boot.efi images.
Modern secure PE loaders will refuse to load \texttt{boot.efi} images from
Mac OS X 10.4 and 10.5 due to these files containing \texttt{W\^{}X} errors
and illegal overlapping sections.
macOS 10.4 to 10.12 due to these files containing \texttt{W\^{}X} errors
(in all versions) and illegal overlapping sections (in 10.4 and 10.5 32-bit
versions only).
This quirk detects these issues and pre-processes such images in memory,
so that a modern loader can accept them.
so that a modern loader will accept them.
Pre-processing in memory is incompatible with secure boot, as the image loaded
is not the image on disk, so you cannot sign files which are loaded in this way
based on their original disk image contents.
Certain firmware will offer to register the hash of new, unknown images - this would
still work. On the other hand, it is not particularly realistic to want to
start such early, insecure images with secure boot anyway.
start these early, insecure images with secure boot anyway.
\emph{Note 1}: The quirk is only applied to Apple-specific `fat' (both 32-bit and 64-bit
versions in one image) \texttt{.efi} files, and is never applied during the Apple secure
boot path for newer macOS.
\emph{Note 1}: The quirk is never applied during the Apple secure boot path for
newer macOS. The Apple secure boot path includes its own separate mitigations
for \texttt{boot.efi} \texttt{W\^{}X} issues.
\emph{Note 2}: The quirk is only needed for loading Mac OS X 10.4 and 10.5, and even then
only if the firmware itself includes a modern, more secure PE COFF image loader. This includes
current builds of OpenDuet.
\emph{Note 2}: When enabled, and when not processing for Apple secure boot, this quirk
is applied to:
\begin{itemize}
\tightlist
\item All images from Apple Fat binaries (32-bit and 64-bit versions in one image).
\item All Apple-signed images.
\item All images at
\texttt{\textbackslash System\textbackslash Library\textbackslash CoreServices\textbackslash boot.efi}
within their filesystem.
\end{itemize}
\emph{Note 3}: This quirk is needed for macOS 10.4 to 10.12 (and
higher, if Apple secure boot is not enabled), but only when the firmware
itself includes a modern, more secure PE COFF image loader. This applies to
current builds of OpenDuet, and to OVMF if built from audk source code.
\item
\texttt{ForceBooterSignature}\\
......
......@@ -110,11 +110,13 @@ typedef struct OC_HOTKEY_CONTEXT_ OC_HOTKEY_CONTEXT;
#define OC_ATTR_SHOW_DEBUG_DISPLAY BIT5
#define OC_ATTR_USE_MINIMAL_UI BIT6
#define OC_ATTR_USE_FLAVOUR_ICON BIT7
#define OC_ATTR_USE_REVERSED_UI BIT8
#define OC_ATTR_ALL_BITS (\
OC_ATTR_USE_VOLUME_ICON | OC_ATTR_USE_DISK_LABEL_FILE | \
OC_ATTR_USE_GENERIC_LABEL_IMAGE | OC_ATTR_HIDE_THEMED_ICONS | \
OC_ATTR_USE_POINTER_CONTROL | OC_ATTR_SHOW_DEBUG_DISPLAY | \
OC_ATTR_USE_MINIMAL_UI | OC_ATTR_USE_FLAVOUR_ICON )
OC_ATTR_USE_MINIMAL_UI | OC_ATTR_USE_FLAVOUR_ICON | \
OC_ATTR_USE_REVERSED_UI )
/**
Default timeout for IDLE timeout during menu picker navigation
......
......@@ -30,7 +30,7 @@
OpenCore version reported to log and NVRAM.
OPEN_CORE_VERSION must follow X.Y.Z format, where X.Y.Z are single digits.
**/
#define OPEN_CORE_VERSION "0.9.7"
#define OPEN_CORE_VERSION "0.9.8"
/**
OpenCore build type reported to log and NVRAM.
......
......@@ -250,6 +250,7 @@ typedef enum {
#define CPU_MODEL_ALDERLAKE_S 0x97
#define AMD_CPU_FAMILY 0xF
#define AMD_CPU_EXT_FAMILY_10H 0x1
#define AMD_CPU_EXT_FAMILY_15H 0x6
#define AMD_CPU_EXT_FAMILY_16H 0x7
#define AMD_CPU_EXT_FAMILY_17H 0x8
......
......@@ -67,6 +67,15 @@ typedef enum {
typedef _TAB_FOCUS TAB_FOCUS;
STATIC TAB_FOCUS mFocusList[] = {
TAB_PICKER,
TAB_SHUTDOWN,
TAB_RESTART,
#if defined (BUILTIN_DEMONSTRATE_TYPING)
TAB_TYPING_DEMO
#endif
};
STATIC TAB_FOCUS mFocusListReversed[] = {
TAB_PICKER,
TAB_RESTART,
TAB_SHUTDOWN,
......@@ -376,7 +385,10 @@ OcShowSimpleBootMenu (
FocusState = 0;
if ((BootContext->PickerContext->PickerAttributes & OC_ATTR_USE_MINIMAL_UI) == 0) {
FocusList = mFocusList;
STATIC_ASSERT (ARRAY_SIZE (mFocusList) == ARRAY_SIZE (mFocusListReversed), "Mismatched focus list sizes");
FocusList = ((BootContext->PickerContext->PickerAttributes & OC_ATTR_USE_REVERSED_UI) == 0)
? mFocusList
: mFocusListReversed;
NumFocusList = ARRAY_SIZE (mFocusList);
} else {
FocusList = mFocusListMinimal;
......@@ -557,11 +569,20 @@ OcShowSimpleBootMenu (
ShutdownRestartRow = gST->ConOut->Mode->CursorRow;
gST->ConOut->OutputString (gST->ConOut, L" ");
RestartColumn = gST->ConOut->Mode->CursorColumn;
gST->ConOut->OutputString (gST->ConOut, L"|Restart|");
gST->ConOut->OutputString (gST->ConOut, L" ");
ShutdownColumn = gST->ConOut->Mode->CursorColumn;
gST->ConOut->OutputString (gST->ConOut, L"|Shutdown|");
if ((BootContext->PickerContext->PickerAttributes & OC_ATTR_USE_REVERSED_UI) == 0) {
ShutdownColumn = gST->ConOut->Mode->CursorColumn;
gST->ConOut->OutputString (gST->ConOut, L"|Shutdown|");
gST->ConOut->OutputString (gST->ConOut, L" ");
RestartColumn = gST->ConOut->Mode->CursorColumn;
gST->ConOut->OutputString (gST->ConOut, L"|Restart|");
} else {
RestartColumn = gST->ConOut->Mode->CursorColumn;
gST->ConOut->OutputString (gST->ConOut, L"|Restart|");
gST->ConOut->OutputString (gST->ConOut, L" ");
ShutdownColumn = gST->ConOut->Mode->CursorColumn;
gST->ConOut->OutputString (gST->ConOut, L"|Shutdown|");
}
gST->ConOut->OutputString (gST->ConOut, L"\r\n");
} else {
......
......@@ -717,6 +717,7 @@ ScanAmdProcessor (
}
break;
case AMD_CPU_EXT_FAMILY_10H:
case AMD_CPU_EXT_FAMILY_15H:
case AMD_CPU_EXT_FAMILY_16H:
if (Cpu->CPUFrequencyFromVMT == 0) {
......@@ -740,8 +741,8 @@ ScanAmdProcessor (
}
//
// AMD 15h and 16h CPUs don't support hyperthreading,
// so the core count is equal to the thread count
// AMD 10h, 15h, and 16h CPUs don't support hyperthreading,
// so the core count is equal to the thread count.
//
Cpu->CoreCount = Cpu->ThreadCount;
break;
......
......@@ -20,14 +20,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include <Library/BaseLib.h>
#include <Library/DebugLib.h>
#if defined (MDEPKG_NDEBUG)
#if defined (__GNUC__) || defined (__clang__)
#define GetSchemaTypeName(expression) (NULL)
#endif
#else
STATIC
CONST CHAR8 *
mSchemaTypeNames[] = {
......@@ -51,8 +43,6 @@ GetSchemaTypeName (
return "custom";
}
#endif
OC_SCHEMA *
LookupConfigSchema (
IN OC_SCHEMA *SortedList,
......
......@@ -184,7 +184,7 @@
MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf {
<LibraryClasses>
!if $(TARGET) == RELEASE
DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
DebugLib|OpenCorePkg/Library/OcDebugLibNull/OcDebugLibNull.inf
!endif
}
MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
......
......@@ -262,6 +262,11 @@
gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x0
gOpenCorePkgTokenSpaceGuid.PcdCanaryAllowRdtscFallback|TRUE
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x02
#
# Policy required to allow legacy, non-aligned, non-signed Apple images
# such as HfsPlusLegacy.efi.
#
gEfiMdePkgTokenSpaceGuid.PcdImageProtectionPolicy|0x00000003
[BuildOptions]
MSFT:NOOPT_*_*_CC_FLAGS = -D OC_TARGET_RELEASE=1 /FAcs -Dinline=__inline /GS /kernel
......
......@@ -55,6 +55,12 @@ extern INT64 mBackgroundImageOffsetY;
STATIC UINT32 mBootPickerLabelScrollHoldTime = 0;
STATIC GUI_OBJ *mBootPickerFocusList[] = {
&mBootPicker.Hdr.Obj,
&mCommonShutDown.Hdr.Obj,
&mCommonRestart.Hdr.Obj
};
STATIC GUI_OBJ *mBootPickerFocusListReversed[] = {
&mBootPicker.Hdr.Obj,
&mCommonRestart.Hdr.Obj,
&mCommonShutDown.Hdr.Obj
......@@ -1402,6 +1408,18 @@ GLOBAL_REMOVE_IF_UNREFERENCED GUI_VIEW_CONTEXT mBootPickerViewContext = {
ARRAY_SIZE (mBootPickerFocusList)
};
GLOBAL_REMOVE_IF_UNREFERENCED GUI_VIEW_CONTEXT mBootPickerViewContextReversed = {
InternalCommonViewDraw,
InternalCommonViewPtrEvent,
ARRAY_SIZE (mBootPickerViewChildren),
mBootPickerViewChildren,
InternalBootPickerViewKeyEvent,
InternalGetCursorImage,
InternalBootPickerExitLoop,
mBootPickerFocusListReversed,
ARRAY_SIZE (mBootPickerFocusListReversed)
};
GLOBAL_REMOVE_IF_UNREFERENCED GUI_VIEW_CONTEXT mBootPickerViewContextMinimal = {
InternalCommonViewDraw,
InternalCommonViewPtrEvent,
......@@ -1954,7 +1972,10 @@ BootPickerViewInitialize (
DrawContext,
GuiContext,
(GuiContext->PickerContext->PickerAttributes & OC_ATTR_USE_MINIMAL_UI) == 0
? &mBootPickerViewContext
? ((GuiContext->PickerContext->PickerAttributes & OC_ATTR_USE_REVERSED_UI) == 0
? &mBootPickerViewContext
: &mBootPickerViewContextReversed
)
: &mBootPickerViewContextMinimal
);
......
......@@ -701,14 +701,24 @@ CommonViewInitialize (
ShutDownWidth = MAX (ShutDownImage->Width, FocusImage->Width);
ShutDownHeight = MAX (ShutDownImage->Height, FocusImage->Height);
mCommonRestart.Hdr.Obj.OffsetX = (RestartWidth - RestartImage->Width) / 2;
if ((GuiContext->PickerContext->PickerAttributes & OC_ATTR_USE_REVERSED_UI) == 0) {
mCommonRestart.Hdr.Obj.OffsetX = ShutDownWidth + BOOT_ACTION_BUTTON_SPACE * GuiContext->Scale + (RestartWidth - RestartImage->Width) / 2;
} else {
mCommonRestart.Hdr.Obj.OffsetX = (RestartWidth - RestartImage->Width) / 2;
}
mCommonRestart.Hdr.Obj.OffsetY = (RestartHeight - RestartImage->Height) / 2;
mCommonRestart.Hdr.Obj.Width = RestartImage->Width;
mCommonRestart.Hdr.Obj.Height = RestartImage->Height;
mCommonRestart.ImageId = ICON_RESTART;
mCommonRestart.ImageState = ICON_TYPE_BASE;
mCommonShutDown.Hdr.Obj.OffsetX = RestartWidth + BOOT_ACTION_BUTTON_SPACE * GuiContext->Scale + (ShutDownWidth - ShutDownImage->Width) / 2;
if ((GuiContext->PickerContext->PickerAttributes & OC_ATTR_USE_REVERSED_UI) == 0) {
mCommonShutDown.Hdr.Obj.OffsetX = (ShutDownWidth - ShutDownImage->Width) / 2;
} else {
mCommonShutDown.Hdr.Obj.OffsetX = RestartWidth + BOOT_ACTION_BUTTON_SPACE * GuiContext->Scale + (ShutDownWidth - ShutDownImage->Width) / 2;
}
mCommonShutDown.Hdr.Obj.OffsetY = (ShutDownHeight - ShutDownImage->Height) / 2;
mCommonShutDown.Hdr.Obj.Width = ShutDownImage->Width;
mCommonShutDown.Hdr.Obj.Height = ShutDownImage->Height;
......
......@@ -62,6 +62,12 @@ STATIC GUI_INTERPOLATION mPasswordIncorrectInterpol = {
};
STATIC GUI_OBJ *mPasswordFocusList[] = {
&mPasswordBoxContainer.Obj,
&mCommonShutDown.Hdr.Obj,
&mCommonRestart.Hdr.Obj
};
STATIC GUI_OBJ *mPasswordFocusListReversed[] = {
&mPasswordBoxContainer.Obj,
&mCommonRestart.Hdr.Obj,
&mCommonShutDown.Hdr.Obj
......@@ -608,6 +614,18 @@ STATIC GUI_VIEW_CONTEXT mPasswordViewContext = {
ARRAY_SIZE (mPasswordFocusList)
};
STATIC GUI_VIEW_CONTEXT mPasswordViewContextReversed = {
InternalCommonViewDraw,
InternalPasswordViewPtrEvent,
ARRAY_SIZE (mPasswordViewChildren),
mPasswordViewChildren,
InternalPasswordViewKeyEvent,
InternalGetCursorImage,
InternalPasswordExitLoop,
mPasswordFocusListReversed,
ARRAY_SIZE (mPasswordFocusListReversed)
};
STATIC GUI_VIEW_CONTEXT mPasswordViewContextMinimal = {
InternalCommonViewDraw,
InternalPasswordViewPtrEvent,
......@@ -753,7 +771,10 @@ PasswordViewInitialize (
DrawContext,
GuiContext,
(GuiContext->PickerContext->PickerAttributes & OC_ATTR_USE_MINIMAL_UI) == 0
? &mPasswordViewContext
? ((GuiContext->PickerContext->PickerAttributes & OC_ATTR_USE_REVERSED_UI) == 0
? &mPasswordViewContext
: &mPasswordViewContextReversed
)
: &mPasswordViewContextMinimal
);
......