Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
  • Loading branch information
ventoy committed Jul 7, 2020
1 parent b32cf97 commit 4fda20d
Show file tree
Hide file tree
Showing 16 changed files with 3,474 additions and 2,769 deletions.
2 changes: 1 addition & 1 deletion GRUB2/MOD_SRC/grub-2.04/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ make install
PATH=$PATH:$VT_DIR/GRUB2/INSTALL/bin/:$VT_DIR/GRUB2/INSTALL/sbin/

net_modules_legacy="net tftp http"
all_modules_legacy="date drivemap blocklist ntldr search at_keyboard usb_keyboard gcry_md5 hashsum gzio xzio lzopio lspci pci ext2 xfs ventoy chain read halt iso9660 linux16 test true sleep reboot echo videotest videoinfo videotest_checksum video_colors video_cirrus video_bochs vga vbe video_fb font video gettext extcmd terminal linux minicmd help configfile tr trig boot biosdisk disk ls tar squash4 password_pbkdf2 all_video png jpeg part_gpt part_msdos fat exfat ntfs loopback gzio normal udf gfxmenu gfxterm gfxterm_background gfxterm_menu"
all_modules_legacy="date drivemap blocklist vga_text ntldr search at_keyboard usb_keyboard gcry_md5 hashsum gzio xzio lzopio lspci pci ext2 xfs ventoy chain read halt iso9660 linux16 test true sleep reboot echo videotest videoinfo videotest_checksum video_colors video_cirrus video_bochs vga vbe video_fb font video gettext extcmd terminal linux minicmd help configfile tr trig boot biosdisk disk ls tar squash4 password_pbkdf2 all_video png jpeg part_gpt part_msdos fat exfat ntfs loopback gzio normal udf gfxmenu gfxterm gfxterm_background gfxterm_menu"

net_modules_uefi="efinet net tftp http"
all_modules_uefi="blocklist ventoy test search at_keyboard usb_keyboard gcry_md5 hashsum gzio xzio lzopio ext2 xfs read halt sleep serial terminfo png password_pbkdf2 gcry_sha512 pbkdf2 part_gpt part_msdos ls tar squash4 loopback part_apple minicmd diskfilter linux relocator jpeg iso9660 udf hfsplus halt acpi mmap gfxmenu video_colors trig bitmap_scale gfxterm bitmap font fat exfat ntfs fshelp efifwsetup reboot echo configfile normal terminal gettext chain priority_queue bufio datetime cat extcmd crypto gzio boot all_video efi_gop efi_uga video_bochs video_cirrus video video_fb gfxterm_background gfxterm_menu"
Expand Down
Binary file modified INSTALL/Ventoy2Disk.exe
Binary file not shown.
2 changes: 2 additions & 0 deletions INSTALL/all_in_one.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ sh buildlib.sh
cd $VTOY_PATH/vtoyfat
sh build.sh || exit 1

cd $VTOY_PATH/vtoygpt
sh build.sh || exit 1

cd $VTOY_PATH/ExFAT
sh buidlibfuse.sh || exit 1
Expand Down
41 changes: 32 additions & 9 deletions INSTALL/grub/grub.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,29 @@ function ventoy_debug_pause {
fi
}

function ventoy_cli_console {
if [ "$grub_platform" = "pc" ]; then
terminal_output vga_text
else
if [ "$vtoy_display_mode" != "CLI" ]; then
terminal_output console
fi
fi
}

function ventoy_gui_console {
if [ "$grub_platform" = "pc" ]; then
if [ "$vtoy_display_mode" = "CLI" ]; then
terminal_output console
else
terminal_output gfxterm
fi
else
if [ "$vtoy_display_mode" != "CLI" ]; then
terminal_output gfxterm
fi
fi
}

function ventoy_power {
configfile $prefix/power.cfg
Expand Down Expand Up @@ -186,7 +209,7 @@ function uefi_windows_menu_func {
ventoy_debug_pause

if [ -n "$vtoy_chain_mem_addr" ]; then
terminal_output console
ventoy_cli_console
chainloader ${vtoy_path}/ventoy_x64.efi env_param=${env_param} isoefi=${LoadIsoEfiDriver} ${vtdebug_flag} mem:${vtoy_chain_mem_addr}:size:${vtoy_chain_mem_size}
boot
else
Expand Down Expand Up @@ -262,7 +285,7 @@ function uefi_linux_menu_func {
vt_linux_chain_data ${1}${chosen_path}

if [ -n "$vtoy_chain_mem_addr" ]; then
terminal_output console
ventoy_cli_console
chainloader ${vtoy_path}/ventoy_x64.efi env_param=${env_param} isoefi=${LoadIsoEfiDriver} FirstTry=${FirstTryBootFile} ${vtdebug_flag} mem:${vtoy_chain_mem_addr}:size:${vtoy_chain_mem_size}
boot
else
Expand Down Expand Up @@ -327,7 +350,7 @@ function uefi_iso_menu_func {
uefi_linux_menu_func $1 ${chosen_path}
fi

terminal_output gfxterm
ventoy_gui_console
}

function uefi_iso_memdisk {
Expand All @@ -336,11 +359,11 @@ function uefi_iso_memdisk {
echo 'Loading ISO file to memory ...'
vt_load_iso_to_mem ${1}${chosen_path} vtoy_iso_buf

terminal_output console
ventoy_cli_console
chainloader ${vtoy_path}/ventoy_x64.efi memdisk env_param=${env_param} isoefi=${LoadIsoEfiDriver} ${vtdebug_flag} mem:${vtoy_iso_buf_addr}:size:${vtoy_iso_buf_size}
boot

terminal_output gfxterm
ventoy_gui_console
}


Expand Down Expand Up @@ -527,9 +550,9 @@ function wim_common_menuentry {
if [ "$grub_platform" = "pc" ]; then
linux16 $vtoy_path/ipxe.krn ${vtdebug_flag} mem:${vtoy_chain_mem_addr}:size:${vtoy_chain_mem_size}
else
terminal_output console
ventoy_cli_console
chainloader ${vtoy_path}/ventoy_x64.efi env_param=${env_param} isoefi=${LoadIsoEfiDriver} ${vtdebug_flag} mem:${vtoy_chain_mem_addr}:size:${vtoy_chain_mem_size}
terminal_output gfxterm
ventoy_gui_console
fi
boot
else
Expand All @@ -545,10 +568,10 @@ function wim_unsupport_menuentry {
function efi_common_menuentry {
vt_chosen_img_path chosen_path

terminal_output console
ventoy_cli_console
chainloader ${iso_path}${chosen_path}
boot
terminal_output gfxterm
ventoy_gui_console
}

function efi_unsupport_menuentry {
Expand Down
30 changes: 18 additions & 12 deletions INSTALL/tool/VentoyWorker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -327,22 +327,28 @@ else
SHORT_PART2=${PART2#/dev/}
part2_start=$(cat /sys/class/block/$SHORT_PART2/start)

dd status=none conv=fsync if=./boot/boot.img of=$DISK bs=1 count=440
PART1_TYPE=$(dd if=$DISK bs=1 count=1 skip=450 status=none | ./tool/hexdump -n1 -e '1/1 "%02X"')

PART1_ACTIVE=$(dd if=$DISK bs=1 count=1 skip=446 status=none | ./tool/hexdump -n1 -e '1/1 "%02X"')
PART2_ACTIVE=$(dd if=$DISK bs=1 count=1 skip=462 status=none | ./tool/hexdump -n1 -e '1/1 "%02X"')
if [ "$PART1_TYPE" = "EE" ]; then
vtdebug "This is GPT partition style ..."
./tool/xzcat ./boot/core.img.xz | dd status=none conv=fsync of=$DISK bs=512 count=2014 seek=34
echo -en '\x23' | dd of=$DISK conv=fsync bs=1 count=1 seek=17908 status=none
else
vtdebug "This is MBR partition style ..."
dd status=none conv=fsync if=./boot/boot.img of=$DISK bs=1 count=440

vtdebug "PART1_ACTIVE=$PART1_ACTIVE PART2_ACTIVE=$PART2_ACTIVE"
if [ "$PART1_ACTIVE" = "00" ] && [ "$PART2_ACTIVE" = "80" ]; then
vtdebug "change 1st partition active, 2nd partition inactive ..."
echo -en '\x80' | dd of=$DISK conv=fsync bs=1 count=1 seek=446 status=none
echo -en '\x00' | dd of=$DISK conv=fsync bs=1 count=1 seek=462 status=none
PART1_ACTIVE=$(dd if=$DISK bs=1 count=1 skip=446 status=none | ./tool/hexdump -n1 -e '1/1 "%02X"')
PART2_ACTIVE=$(dd if=$DISK bs=1 count=1 skip=462 status=none | ./tool/hexdump -n1 -e '1/1 "%02X"')

vtdebug "PART1_ACTIVE=$PART1_ACTIVE PART2_ACTIVE=$PART2_ACTIVE"
if [ "$PART1_ACTIVE" = "00" ] && [ "$PART2_ACTIVE" = "80" ]; then
vtdebug "change 1st partition active, 2nd partition inactive ..."
echo -en '\x80' | dd of=$DISK conv=fsync bs=1 count=1 seek=446 status=none
echo -en '\x00' | dd of=$DISK conv=fsync bs=1 count=1 seek=462 status=none
fi
./tool/xzcat ./boot/core.img.xz | dd status=none conv=fsync of=$DISK bs=512 count=2047 seek=1
fi


./tool/xzcat ./boot/core.img.xz | dd status=none conv=fsync of=$DISK bs=512 count=2047 seek=1


./tool/xzcat ./ventoy/ventoy.disk.img.xz | dd status=none conv=fsync of=$DISK bs=512 count=$VENTOY_SECTOR_NUM seek=$part2_start

sync
Expand Down
12 changes: 10 additions & 2 deletions INSTALL/tool/ventoy_lib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -345,11 +345,19 @@ format_ventoy_disk_gpt() {
unit s \
mkpart Ventoy ntfs $part1_start_sector $part1_end_sector \
mkpart VTOYEFI fat16 $part2_start_sector $part2_end_sector \
set 2 boot on \
set 2 esp on \
set 2 msftdata on \
set 2 hidden on \
quit

sync

if ventoy_is_linux64; then
vtoygpt=./tool/vtoygpt_64
else
vtoygpt=./tool/vtoygpt_32
fi

$vtoygpt -f $DISK
sync

udevadm trigger >/dev/null 2>&1
Expand Down
Binary file added INSTALL/tool/vtoygpt_32
Binary file not shown.
Binary file added INSTALL/tool/vtoygpt_64
Binary file not shown.
Binary file modified Ventoy2Disk/Ventoy2Disk/PartDialog.c
Binary file not shown.
Loading

0 comments on commit 4fda20d

Please sign in to comment.