wok diff BootProg/stuff/bootprog.sh @ rev 25791

Up dropbear (2024.86), libssh2 (1.11.1), xz (5.6.3)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Wed Oct 23 13:27:53 2024 +0000 (3 months ago)
parents 82a123e54615
children
line diff
     1.1 --- a/BootProg/stuff/bootprog.sh	Sun May 26 08:12:35 2024 +0000
     1.2 +++ b/BootProg/stuff/bootprog.sh	Wed Oct 23 13:27:53 2024 +0000
     1.3 @@ -11,17 +11,17 @@
     1.4  do	[ "${FS:-$($r=5 bs=1 skip=$c)}" = "$f" ] || continue
     1.5  	echo "Install $f bootsector on $1."
     1.6  	for a in "$o skip=$((o+b)) count=$((s-o))" "0 skip=$b count=11"
     1.7 -	do sed '1,/^exit/d' $0 | $w=$a; done
     1.8 -	echo -n $f | $w=$c
     1.9 -	echo "Set boot file $2" && echo -n "$2" | case "$f" in
    1.10 -	E*)	sed 's| |.|;s| ||g' | cat - /dev/zero;;
    1.11 -	*)	tr a-z A-Z | sed 's|\.|       |;s|^\(.\{8\}\) *|\1|;s|$|   |'
    1.12 -	esac | $w=499 count=11
    1.13 -	case "$f" in
    1.14 +	do sed 1,/^exit/d $0|$w=$a;done
    1.15 +	echo -n $f|$w=$c
    1.16 +	echo "Set boot file $2" && echo -n "$2" | case $f in
    1.17 +	E*)	sed 's| |.|;s| ||g'|cat - /dev/zero|$w=499 count=11;;
    1.18 +	*)	tr a-z A-Z|sed 's|\.|       |;s|^\(.\{8\}\) *|\1|;s|$|   |'|$w=499 count=11
    1.19 +	esac
    1.20 +	case $f in
    1.21  	*32)	$w=$(($(od -An -j50 -N2 -d $1)<<9)) if=$1 count=$s;;
    1.22 -	E*)	$r=11 bs=1b | od -vAn -tu1 -w1 - | LANG=C awk '
    1.23 -{ if (++i!=107 && i!=108 && i!=113) a=or(lshift(and(a,1),31),$1+a/2) }
    1.24 -END { b=a/256;c=b/256; for (;i>0;i-=44) printf "%c%c%c%c",a%256,b%256,c%256,(c/256)%256 }' | $w=5632
    1.25 +	E*)	$r=11 bs=1b|od -vAn -tu1 -w1 -|LANG=C awk '
    1.26 +{if(++i!=107&&i!=108&&i!=113)a=or(lshift(and(a,1),31),$1+a/2)}
    1.27 +END{b=a/256;c=b/256;for(;i>0;i-=44)printf "%c%c%c%c",a%256,b%256,c%256,(c/256)%256}'|$w=5632
    1.28  	esac
    1.29  	exit 0
    1.30  done<<s 2>/dev/null