wok diff syslinux/stuff/iso2exe/iso2exe.sh @ rev 20332
syslinux:isohybrid.sh/iso2exe.sh rework GPT partition
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Wed May 30 11:10:35 2018 +0200 (2018-05-30) |
parents | e6f0efe26374 |
children | 4c206553708a |
line diff
1.1 --- a/syslinux/stuff/iso2exe/iso2exe.sh Thu Mar 30 15:54:03 2017 +0200 1.2 +++ b/syslinux/stuff/iso2exe/iso2exe.sh Wed May 30 11:10:35 2018 +0200 1.3 @@ -116,10 +116,10 @@ 1.4 ddq if=/tmp/exe$$ bs=1 count=3 skip=$((0x7C00)) of=$1 seek=$i conv=notrunc 1.5 fi 1.6 rm -f /tmp/exe$$ /tmp/coff$$ 1.7 - if [ -z "$RECURSIVE_PARTITION" -a $(get 470 $1 4) -eq 0 ]; then 1.8 - store 464 $((1+$i/512)) $1 8 1.9 - store 470 $(($i/512)) $1 8 1.10 - store 474 $(($(get 474 $1 4) - $i/512)) $1 32 1.11 + if [ -z "$RECURSIVE_PARTITION" -a $(get 454 $1 4) -eq 0 ]; then 1.12 + store 448 $((1+$i/512)) $1 8 1.13 + store 454 $(($i/512)) $1 8 1.14 + store 458 $(($(get 458 $1 4) - $i/512)) $1 32 1.15 fi 1.16 } 1.17 1.18 @@ -204,19 +204,19 @@ 1.19 printf " $i:%08X %08X %02X\n" $OFFSET $SIZE \ 1.20 $(get $((446+4+16*i)) "$1" 1) 1.21 done 1.22 - if [ $(get 466 "$1") -eq 65263 ]; then 1.23 + if [ $(get 450 "$1") -eq 65262 ]; then 1.24 echo "EFI partitions :" 1.25 - n=$(get 584 "$1" 1) 1.26 + n=$(get 592 "$1") 1.27 s=$(get 596 "$1") 1.28 - o=$((($(get 552 "$1" 1)*512)-($(get 592 "$1")*$s))) 1.29 + o=$(($(get 584 "$1")*512)) 1.30 i=0 1.31 - while [ $n -gt $i ]; do 1.32 + while [ $i -lt $n ]; do 1.33 f=$(get $(($o+0x20)) "$1" 4) 1.34 l=$(($(get $(($o+0x28)) "$1" 4)-$f)) 1.35 [ $l -eq 0 ] && break 1.36 printf " $i:%08X %08X %s\n" $f $(($l+1)) \ 1.37 - "$(od -An -N 36 -w -j $(($o+0x38)) -t a "$1" \ 1.38 - | sed 's/\( nul\)*//g;s/ //g;s/ sp//')" 1.39 + "$(od -An -N 72 -w72 -j $(($o+0x38)) -t a "$1" \ 1.40 + | sed 's/ nul//g;s/ //g;s/ sp//g')" 1.41 o=$(($o+$s)) 1.42 i=$(($i+1)) 1.43 done 1.44 @@ -552,7 +552,7 @@ 1.45 0) [ -x /usr/bin/isohybrid ] && isohybrid -entry 2 $1;; 1.46 esac 1.47 1.48 - gpt= ; [ $(get 466 $1) -eq 65263 ] && gpt=1 1.49 + gpt= ; [ $(get 450 $1) -eq 65262 ] && gpt=1 1.50 mac= ; [ $(get 2048 $1) -eq 19792 ] && mac=1 1.51 echo "Read hybrid & tazlito data..." 1.52 if [ -n "$gpt" ]; then