]> git.proxmox.com Git - mirror_edk2.git/blob - DuetPkg/CreateBootDisk.bat
Add some customization BAT steps for DUET platform
[mirror_edk2.git] / DuetPkg / CreateBootDisk.bat
1 @REM
2
3 @REM Set up environment at fisrt.
4
5 @REM set BASETOOLS_DIR=%WORKSPACE_TOOLS_PATH%\Bin\Win32
6 @set BASETOOLS_DIR=m:\tree\BaseTools\Bin\Win32
7 @set BUILD_DIR=%WORKSPACE%\Build\DuetPkg\DEBUG_MYTOOLS
8 @set DISK_LABEL=DUET
9 @echo on
10
11
12 @if "%1"=="" goto Help
13 @if "%2"=="" goto Help
14 @if "%3"=="" goto Help
15 @set EFI_BOOT_DISK=%2
16 @if "%1"=="floppy" goto CreateFloppy
17 @if "%1"=="usb" goto CreateUsb
18 @if "%1"=="ide" goto CreateIde
19 goto Help
20
21 :CreateFloppy
22 @if NOT "%3"=="FAT12" goto WrongFATType
23 @echo Start to create floppy boot disk ...
24 @echo Format %EFI_BOOT_DISK% ...
25 @echo.> FormatCommandInput.txt
26 @echo.n>> FormatCommandInput.txt
27 @format /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
28 @del FormatCommandInput.txt
29 @echo Create boot sector ...
30 %BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o FDBs.com
31 %BASETOOLS_DIR%\Bootsectimage.exe -g FDBs.com %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Bootsect.com -f
32 @REM @del FDBS.com
33 %BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Bootsect.com
34 @echo Done.
35 copy %BUILD_DIR%\FV\EfiLdr %EFI_BOOT_DISK%
36 mkdir %EFI_BOOT_DISK%\efi\boot
37 copy %WORKSPACE%\EdkShellBinPkg\bin\ia32\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootia32.efi /y
38 @goto end
39
40 :CreateUsb
41 @echo Start to create usb boot disk ...
42 @if "%3"=="FAT16" goto CreateUsb_FAT16
43 @if "%3"=="FAT32" goto CreateUsb_FAT32
44 @if "%3"=="FAT12" goto WrongFATType
45
46 :CreateUsb_FAT16
47 @echo Format %EFI_BOOT_DISK% ...
48 @echo.> FormatCommandInput.txt
49 @format /FS:FAT /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
50 @del FormatCommandInput.txt
51 @echo Create boot sector ...
52 @%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs16.com
53 @%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs16.com %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Bs16.com -f
54 @del UsbBs16.com
55 @%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Bs16.com
56 @%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Mbr.com
57 @copy %BUILD_DIR%\FV\EfiLdr16 %EFI_BOOT_DISK%
58 @mkdir %EFI_BOOT_DISK%\efi\boot
59 @copy %WORKSPACE%\EdkShellBinPkg\bin\ia32\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootia32.efi /y
60 @echo Done.
61 @echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!
62 @goto end
63
64 :CreateUsb_FAT32
65 @echo Format %EFI_BOOT_DISK% ...
66 @echo.> FormatCommandInput.txt
67 @format /FS:FAT32 /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
68 @del FormatCommandInput.txt
69 @echo Create boot sector ...
70 @%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs32.com
71 @%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs32.com %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Bs32.com -f
72 @del UsbBs32.com
73 @%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Bs32.com
74 @%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT\Mbr.com
75 @copy %BUILD_DIR%\FV\EfiLdr20 %EFI_BOOT_DISK%
76 @mkdir %EFI_BOOT_DISK%\efi\boot
77 @copy %WORKSPACE%\EdkShellBinPkg\bin\ia32\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootia32.efi /y
78 @echo Done.
79 @echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!
80 @goto end
81
82 :CreateIde
83 @goto end
84
85 :WrongFATType
86 @echo Wrong FAT type %3 for %1
87 @goto end
88
89 :Help
90 @echo "Usage: CreateBootDisk [usb|floppy|ide] DiskNumber [FAT12|FAT16|FAT32]"
91 :end
92 @echo on