]>
Commit | Line | Data |
---|---|---|
6d3f7723 | 1 | @REM\r |
2 | \r | |
3 | @REM Set up environment at fisrt.\r | |
4 | \r | |
2a5ef1fc | 5 | @set BASETOOLS_DIR=%WORKSPACE_TOOLS_PATH%\Bin\Win32\r |
6d3f7723 | 6 | @set BUILD_DIR=%WORKSPACE%\Build\DuetPkg\DEBUG_MYTOOLS\r |
e88f3056 | 7 | @set BOOTSECTOR_BIN_DIR=%WORKSPACE%\DuetPkg\BootSector\bin\r |
6d3f7723 | 8 | @set DISK_LABEL=DUET\r |
e843cdd7 | 9 | @set PROCESSOR=""\r |
6d3f7723 | 10 | \r |
e843cdd7 | 11 | @echo on\r |
6d3f7723 | 12 | \r |
13 | @if "%1"=="" goto Help\r | |
14 | @if "%2"=="" goto Help\r | |
15 | @if "%3"=="" goto Help\r | |
e843cdd7 | 16 | @if "%4"=="" goto NoArch\r |
6d3f7723 | 17 | @set EFI_BOOT_DISK=%2\r |
e843cdd7 | 18 | @if "%4"=="IA32" set PROCESSOR=IA32\r |
19 | @if "%4"=="X64" set PROCESSOR=X64\r | |
20 | @if %PROCESSOR%=="" goto WrongArch\r | |
6d3f7723 | 21 | @if "%1"=="floppy" goto CreateFloppy\r |
e25803f0 | 22 | @if "%1"=="file" goto CreateFile\r |
6d3f7723 | 23 | @if "%1"=="usb" goto CreateUsb\r |
24 | @if "%1"=="ide" goto CreateIde\r | |
e843cdd7 | 25 | \r |
6d3f7723 | 26 | goto Help\r |
27 | \r | |
28 | :CreateFloppy\r | |
29 | @if NOT "%3"=="FAT12" goto WrongFATType\r | |
30 | @echo Start to create floppy boot disk ...\r | |
31 | @echo Format %EFI_BOOT_DISK% ...\r | |
32 | @echo.> FormatCommandInput.txt\r | |
33 | @echo.n>> FormatCommandInput.txt\r | |
34 | @format /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL\r | |
35 | @del FormatCommandInput.txt\r | |
36 | @echo Create boot sector ...\r | |
37 | %BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o FDBs.com\r | |
e88f3056 | 38 | %BASETOOLS_DIR%\Bootsectimage.exe -g FDBs.com %BOOTSECTOR_BIN_DIR%\Bootsect.com -f\r |
6d3f7723 | 39 | @REM @del FDBS.com\r |
e88f3056 | 40 | %BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bootsect.com\r |
6d3f7723 | 41 | @echo Done.\r |
42 | copy %BUILD_DIR%\FV\EfiLdr %EFI_BOOT_DISK%\r | |
43 | mkdir %EFI_BOOT_DISK%\efi\boot\r | |
e843cdd7 | 44 | @if "%PROCESSOR%"=="IA32" goto CreateBootFileForIA32\r |
45 | @if "%PROCESSOR%"=="X64" goto CreateBootFileForX64\r | |
6d3f7723 | 46 | @goto end\r |
47 | \r | |
e25803f0 | 48 | :CreateFile\r |
49 | @if NOT "%3"=="FAT12" goto WrongFATType\r | |
50 | @echo Start to create file boot disk ...\r | |
51 | @echo Create boot sector ...\r | |
52 | %BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o FDBs.com\r | |
e88f3056 | 53 | %BASETOOLS_DIR%\Bootsectimage.exe -g FDBs.com %BOOTSECTOR_BIN_DIR%\Bootsect.com -f\r |
e25803f0 | 54 | @REM @del FDBS.com\r |
e88f3056 | 55 | %BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bootsect.com\r |
e25803f0 | 56 | @echo Done.\r |
57 | @goto end\r | |
58 | \r | |
6d3f7723 | 59 | :CreateUsb\r |
60 | @echo Start to create usb boot disk ...\r | |
61 | @if "%3"=="FAT16" goto CreateUsb_FAT16\r | |
62 | @if "%3"=="FAT32" goto CreateUsb_FAT32\r | |
63 | @if "%3"=="FAT12" goto WrongFATType\r | |
64 | \r | |
65 | :CreateUsb_FAT16\r | |
e843cdd7 | 66 | @if "%5"=="step2" goto CreateUsb_FAT16_step2\r |
6d3f7723 | 67 | @echo Format %EFI_BOOT_DISK% ...\r |
68 | @echo.> FormatCommandInput.txt\r | |
69 | @format /FS:FAT /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL\r | |
70 | @del FormatCommandInput.txt\r | |
71 | @echo Create boot sector ...\r | |
72 | @%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs16.com\r | |
e88f3056 | 73 | @%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs16.com %BOOTSECTOR_BIN_DIR%\Bs16.com -f\r |
74 | @%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bs16.com\r | |
75 | @%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Mbr.com\r | |
e25803f0 | 76 | @echo Done.\r |
77 | @echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!\r | |
78 | @goto end\r | |
79 | \r | |
80 | :CreateUsb_FAT16_step2\r | |
6d3f7723 | 81 | @copy %BUILD_DIR%\FV\EfiLdr16 %EFI_BOOT_DISK%\r |
82 | @mkdir %EFI_BOOT_DISK%\efi\boot\r | |
e843cdd7 | 83 | @if "%PROCESSOR%"=="IA32" goto CreateBootFileForIA32\r |
84 | @if "%PROCESSOR%"=="X64" goto CreateBootFileForX64\r | |
6d3f7723 | 85 | @goto end\r |
86 | \r | |
87 | :CreateUsb_FAT32\r | |
e843cdd7 | 88 | @if "%5"=="step2" goto CreateUsb_FAT32_step2\r |
6d3f7723 | 89 | @echo Format %EFI_BOOT_DISK% ...\r |
90 | @echo.> FormatCommandInput.txt\r | |
91 | @format /FS:FAT32 /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL\r | |
92 | @del FormatCommandInput.txt\r | |
93 | @echo Create boot sector ...\r | |
94 | @%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs32.com\r | |
e88f3056 | 95 | @%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs32.com %BOOTSECTOR_BIN_DIR%\Bs32.com -f\r |
6d3f7723 | 96 | @del UsbBs32.com\r |
e88f3056 | 97 | @%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bs32.com\r |
98 | @%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Mbr.com\r | |
6d3f7723 | 99 | @echo Done.\r |
100 | @echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!\r | |
101 | @goto end \r | |
102 | \r | |
b0e441b5 | 103 | :CreateUsb_FAT32_step2\r |
104 | @copy %BUILD_DIR%\FV\EfiLdr20 %EFI_BOOT_DISK%\r | |
105 | @mkdir %EFI_BOOT_DISK%\efi\boot\r | |
e843cdd7 | 106 | @if "%PROCESSOR%"=="IA32" goto CreateBootFileForIA32\r |
107 | @if "%PROCESSOR%"=="X64" goto CreateBootFileForX64\r | |
b0e441b5 | 108 | @goto end\r |
109 | \r | |
6d3f7723 | 110 | :CreateIde\r |
111 | @goto end\r | |
112 | \r | |
e843cdd7 | 113 | :CreateBootFileForIA32\r |
114 | copy %WORKSPACE%\EdkShellBinPkg\MinimumShell\IA32\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootia32.efi /y\r | |
115 | @goto end\r | |
116 | \r | |
117 | :CreateBootFileForX64\r | |
118 | copy %WORKSPACE%\EdkShellBinPkg\MinimumShell\X64\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootx64.efi /y\r | |
119 | @goto end\r | |
120 | \r | |
6d3f7723 | 121 | :WrongFATType\r |
122 | @echo Wrong FAT type %3 for %1\r | |
123 | @goto end\r | |
124 | \r | |
e843cdd7 | 125 | :NoArch\r |
126 | @echo Error! Please specific the architecture.\r | |
127 | @goto Help\r | |
128 | \r | |
129 | :WrongArch\r | |
130 | @echo Error! Wrong architecture.\r | |
131 | @goto Help\r | |
132 | \r | |
6d3f7723 | 133 | :Help\r |
e843cdd7 | 134 | @echo "Usage: CreateBootDisk [usb|floppy|ide] DiskNumber [FAT12|FAT16|FAT32] [IA32|X64]"\r |
6d3f7723 | 135 | :end\r |
136 | @echo on |