@echo off
setlocal
set "title=Fix macOS VirtualBox"
title %title%
color 0F
set "vbox=C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
if not exist "%vbox%" (
echo Не найден: %vbox%
pause
exit /b
)
:menu
cls
echo ---------------------------
echo %title%
echo ---------------------------
echo [1] Список ВМ
echo [2] Fix процессор Intel
echo [3] Fix процессор AMD
echo [0] Выход
echo ---------------------------
choice /c 1230 /n /m "Выберите пункт: "
if errorlevel 4 exit
if errorlevel 3 goto processor_amd
if errorlevel 2 goto processor_intel
if errorlevel 1 goto list_vm
goto menu
:list_vm
"%vbox%" list vms
pause
goto menu
:processor_intel
set /p "os=Имя ВМ: "
set "cpu_profile="
goto apply_settings
:processor_amd
set /p os=Имя ВМ:
set "cpu_profile=Intel Core i7-6700K"
goto apply_settings
:apply_settings
echo Настройка ВМ "%os%"...
echo.
bcdedit /set hypervisorlaunchtype off
"%vbox%" modifyvm "%os%" --vram 256
"%vbox%" modifyvm "%os%" --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
"%vbox%" setextradata "%os%" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac19,3"
"%vbox%" setextradata "%os%" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
"%vbox%" setextradata "%os%" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
"%vbox%" setextradata "%os%" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
"%vbox%" setextradata "%os%" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 0
"%vbox%" setextradata "%os%" "VBoxInternal/TM/TSCMode" "RealTSCOffset"
:: Получить разрешение экрана
for /f "tokens=2 delims==" %%a in ('wmic path Win32_VideoController get CurrentHorizontalResolution /value ^| find "="') do set w=%%a
for /f "tokens=2 delims==" %%a in ('wmic path Win32_VideoController get CurrentVerticalResolution /value ^| find "="') do set h=%%a
"%vbox%" setextradata "%os%" VBoxInternal2/EfiGraphicsResolution %w%x%h%
if defined cpu_profile (
"%vbox%" modifyvm "%os%" --cpu-profile "%cpu_profile%"
)
echo.
echo Готово.
pause
goto menu
*текст* - жирный,
~текст~ - курсивный,
-текст- - _текст_ - подчеркнутый