wok-current rev 23810
syslinux/iso2exe: use isoboot
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Mon May 25 10:10:30 2020 +0000 (2020-05-25) |
parents | 24235f64ae6c |
children | e93fa0cecd8a |
files | linld/receipt linld/stuff/src/!COMPILE.BAT linld/stuff/src/HEADER.ASM linld/stuff/src/HEADER.CMD linld/stuff/src/_END.ASM lxappearance-dev/receipt lxappearance/receipt lxdm/receipt lxrandr/receipt lxtask/receipt syslinux/receipt syslinux/stuff/iso2exe/init syslinux/stuff/iso2exe/iso2exe.c syslinux/stuff/iso2exe/iso2exe.sh syslinux/stuff/iso2exe/taziso |
line diff
1.1 --- a/linld/receipt Sun May 24 16:43:25 2020 +0000 1.2 +++ b/linld/receipt Mon May 25 10:10:30 2020 +0000 1.3 @@ -46,6 +46,7 @@ 1.4 grep '^Warning[ :]' */LNK.LOG */CPP.LOG 1.5 grep '*Warning*' */*.LST 1.6 cp LINLD$SUFFIX/LINLD.COM linld.com 1.7 + cp LINLD$SUFFIX/HEADER.COM header.com 1.8 cp TAZBOOT/TAZBOOT.COM tazboot.com 1.9 dd count=$((0x$(sed '/ FOLD/!d;s|.*:||;s| .*||;q' LINLD$SUFFIX/ISOBOOT.MAP) - 0x100)) \ 1.10 if=LINLD$SUFFIX/ISOBOOT.COM bs=1 > isoboot.com
2.1 --- a/linld/stuff/src/!COMPILE.BAT Sun May 24 16:43:25 2020 +0000 2.2 +++ b/linld/stuff/src/!COMPILE.BAT Mon May 25 10:10:30 2020 +0000 2.3 @@ -15,3 +15,4 @@ 2.4 tasm /la /m /dISOHOOK /dMOVE_SETUP /dUSE_ARGSTR /dNO386 /dLARGE_IMAGES /dLONG_FILENAME *.asm > asm.log 2.5 tlink /m /s /t @link.cmd > lnk.log 2.6 tlink /m /s /t @link2.cmd > lnk2.log 2.7 +tlink /m /s /t @header.cmd > header.log
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 3.2 +++ b/linld/stuff/src/HEADER.ASM Mon May 25 10:10:30 2020 +0000 3.3 @@ -0,0 +1,76 @@ 3.4 +;*************************************************************** 3.5 +;****** This file is distributed under GPL 3.6 +;*************************************************************** 3.7 + ideal 3.8 + %PAGESIZE 1000 3.9 + %crefref 3.10 + %noincl 3.11 + %nomacs 3.12 + p8086 3.13 + 3.14 + group DGROUP _TEXT 3.15 + assume cs:DGROUP,ds:DGROUP 3.16 + 3.17 + segment _TEXT byte public use16 'CODE' 3.18 + 3.19 + org 100h 3.20 + global _text_start:byte 3.21 + label _text_start byte 3.22 + 3.23 + mov di,80h 3.24 + cmp [byte di],1 3.25 + ja notfound 3.26 + ifdef WITH_LONG_FILENAME 3.27 + mov si,offset tazboot_cmd 3.28 + mov ax,716Ch 3.29 + xor bx,bx ; R/O 3.30 + xor cx,cx ; attributes 3.31 + cwd ; action = open 3.32 + stc 3.33 + int 21h 3.34 + jnc found 3.35 + mov dx,si 3.36 + else 3.37 + mov dx,offset tazboot_cmd 3.38 + endif 3.39 + mov ax,3d00h ; read-only+compatibility 3.40 + ;mov cl,0 ; attribute mask 3.41 + int 21h 3.42 + jc notfound 3.43 +found: 3.44 + xchg ax,bx 3.45 + mov ah,3Eh 3.46 + int 21h 3.47 + mov cx,endcmd-begcmd+1 3.48 + mov si,offset default_arg 3.49 + rep 3.50 + movsb 3.51 +notfound: 3.52 + mov di,9000h 3.53 + mov si,offset tomove 3.54 + mov ch,1 3.55 + jmp move 3.56 +tomove: 3.57 + cld 3.58 + mov di,100h 3.59 + mov si,offset endcmd 3.60 + mov ch,40h 3.61 +move: 3.62 + push di 3.63 + rep 3.64 + movsw 3.65 + ret 3.66 + 3.67 +default_arg db endcmd-begcmd 3.68 +begcmd db " @" 3.69 +tazboot_cmd db "tazboot.cmd",0 3.70 +endcmd: 3.71 + 3.72 +;*************************************************************** 3.73 + 3.74 + ends _TEXT 3.75 + 3.76 + 3.77 + end _text_start 3.78 + 3.79 +;###### END OF FILE ############################################
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 4.2 +++ b/linld/stuff/src/HEADER.CMD Mon May 25 10:10:30 2020 +0000 4.3 @@ -0,0 +1,1 @@ 4.4 +header.obj, header
5.1 --- a/linld/stuff/src/_END.ASM Sun May 24 16:43:25 2020 +0000 5.2 +++ b/linld/stuff/src/_END.ASM Mon May 25 10:10:30 2020 +0000 5.3 @@ -17,7 +17,7 @@ 5.4 label _data_end byte 5.5 ends _DATA 5.6 5.7 - segment _BSS byte public use16 'BSS' 5.8 + segment _BSS word public use16 'BSS' 5.9 STACK_SIZE = 1024 5.10 5.11 global _version_string:byte
6.1 --- a/lxappearance-dev/receipt Sun May 24 16:43:25 2020 +0000 6.2 +++ b/lxappearance-dev/receipt Mon May 25 10:10:30 2020 +0000 6.3 @@ -7,7 +7,7 @@ 6.4 MAINTAINER="pankso@slitaz.org" 6.5 LICENSE="GPL2" 6.6 WANTED="lxappearance" 6.7 -WEB_SITE="https://lxde.org/" 6.8 +WEB_SITE="https://wiki.lxde.org/en/LXAppearance" 6.9 TAGS="LXDE" 6.10 HOST_ARCH="i486 arm" 6.11
7.1 --- a/lxappearance/receipt Sun May 24 16:43:25 2020 +0000 7.2 +++ b/lxappearance/receipt Mon May 25 10:10:30 2020 +0000 7.3 @@ -6,7 +6,7 @@ 7.4 SHORT_DESC="LXDE GTK+ theme switcher" 7.5 MAINTAINER="pankso@slitaz.org" 7.6 LICENSE="GPL2" 7.7 -WEB_SITE="http://lxde.sourceforge.net/" 7.8 +WEB_SITE="https://wiki.lxde.org/en/LXAppearance" 7.9 TARBALL="$PACKAGE-$VERSION.tar.xz" 7.10 WGET_URL="$SF_MIRROR/lxde/$TARBALL" 7.11 TAGS="LXDE"
8.1 --- a/lxdm/receipt Sun May 24 16:43:25 2020 +0000 8.2 +++ b/lxdm/receipt Mon May 25 10:10:30 2020 +0000 8.3 @@ -7,7 +7,7 @@ 8.4 MAINTAINER="pankso@slitaz.org" 8.5 LICENSE="GPL3" 8.6 TARBALL="$PACKAGE-$VERSION.tar.xz" 8.7 -WEB_SITE="https://lxde.org/" 8.8 +WEB_SITE="https://wiki.lxde.org/en/LXDM" 8.9 WGET_URL="$SF_MIRROR/lxde/$TARBALL" 8.10 TAGS="LXDE" 8.11
9.1 --- a/lxrandr/receipt Sun May 24 16:43:25 2020 +0000 9.2 +++ b/lxrandr/receipt Mon May 25 10:10:30 2020 +0000 9.3 @@ -7,7 +7,7 @@ 9.4 SHORT_DESC="LXDE monitor configuration tool." 9.5 MAINTAINER="gokhlayeh@slitaz.org" 9.6 LICENSE="GPL2" 9.7 -WEB_SITE="https://lxde.org" 9.8 +WEB_SITE="https://wiki.lxde.org/en/LXRandR" 9.9 9.10 TARBALL="$PACKAGE-$VERSION.tar.xz" 9.11 WGET_URL="$SF_MIRROR/lxde/$TARBALL"
10.1 --- a/lxtask/receipt Sun May 24 16:43:25 2020 +0000 10.2 +++ b/lxtask/receipt Mon May 25 10:10:30 2020 +0000 10.3 @@ -7,7 +7,7 @@ 10.4 SHORT_DESC="LXDE task manager." 10.5 MAINTAINER="pankso@slitaz.org" 10.6 LICENSE="GPL2" 10.7 -WEB_SITE="https://lxde.org" 10.8 +WEB_SITE="https://wiki.lxde.org/en/LXTask" 10.9 10.10 TARBALL="$PACKAGE-$VERSION.tar.xz" 10.11 WGET_URL="$SF_MIRROR/lxde/$TARBALL"
11.1 --- a/syslinux/receipt Sun May 24 16:43:25 2020 +0000 11.2 +++ b/syslinux/receipt Mon May 25 10:10:30 2020 +0000 11.3 @@ -43,7 +43,8 @@ 11.4 $i > kbd/$(basename $i .map.gz) 11.5 done 11.6 cp -a $stuff/iso2exe . 11.7 - cp $LINLD/*/tazboot.com iso2exe/boot.com 11.8 + cp $LINLD/*/isoboot.com iso2exe/boot.com 11.9 + cp $LINLD/*/header.com iso2exe/header.com 11.10 make -C iso2exe 11.11 } 11.12
12.1 --- a/syslinux/stuff/iso2exe/init Sun May 24 16:43:25 2020 +0000 12.2 +++ b/syslinux/stuff/iso2exe/init Mon May 25 10:10:30 2020 +0000 12.3 @@ -126,16 +126,15 @@ 12.4 gettazboot() 12.5 { 12.6 echo -e "\nCreating $(basename $1) ..." 12.7 - X=$(($(get 20 /mnt/$ISO) - 0xC0)) 12.8 - [ $X -lt 30000 ] && X=$((0x7FF0)) 12.9 - O=$(($(get 64 /mnt/$ISO) - 0xC0)) 12.10 - L=$(($X - $(get 24 /mnt/$ISO) - $O)) 12.11 - S=$((32+$L)) 12.12 + S=$((32+HEADERSZ)) 12.13 P=$((($S+511)/512)) 12.14 E=$((4096-(32*$P))) 12.15 - words2bin 0x5A4D $(($S%512)) $P 0 2 $E -1 $((${2:-0}-16)) \ 12.16 + words2bin 0x5A4D $(($S%512)) $P 0 2 $E -1 -16 \ 12.17 -2 0 256 -16 28 0x6C53 0x5469 0x7A61 > $1 12.18 - ddq bs=1 count=$(echo $L) skip=$(echo $O) if=/mnt/$ISO >> $1 12.19 + uudecode - >> $1 << EOT 12.20 +HEADERCODE 12.21 +EOT 12.22 + ddq if=/mnt/slitaz/boot/linld.com >> $1 12.23 } 12.24 12.25 checkmagic() 12.26 @@ -437,18 +436,15 @@ 12.27 $DIALOG --clear --title " SliTaz bootloader for DOS " \ 12.28 --yes-label "Install" --yesno \ 12.29 "\nThe file TAZBOOT.EXE will be created in the top directory. It supports 12.30 -any linux kernel, multiple initramfs, a kernel command line and 12.31 -an ISO image file loopback (retrieves files from an ISO file).\n\n 12.32 -Usage: tazboot.exe [[@commands]|[kernel=<bzimage>] 12.33 -[initrd=<rootfs>[,<rootfs2>...]] [bootfrom=<isofile>] cmdline args ...]\n\n 12.34 -Defaults: tazboot @tazboot.cmd or tazboot kernel=bzImage auto\n\n\ 12.35 +any linux kernel, multiple initramfs, and a kernel command line.\n\n 12.36 +Usage: tazboot.exe [[@commands]|[image=<bzimage>] 12.37 +[initrd=<rootfs>[,<rootfs2>...]] cmdline args ...]\n\n 12.38 +Defaults: tazboot @tazboot.cmd or tazboot image=bzImage auto\n\n\ 12.39 Examples for tazboot.cmd:\n\n\ 12.40 - bootfrom=\\isos\\slitaz-4.0.iso\n\ 12.41 kernel=boot/bzImage\n\ 12.42 initrd=boot/rootfs4.gz,boot/rootfs3.gz,boot/rootfs2.gz,boot/rootfs1.gz\n\ 12.43 autologin\n\n\ 12.44 - kernel=\\slitaz\\vmlinuz root=/dev/sda5 ro\n\n 12.45 -Unlike GRUB4DOS, it doesn't require unfragmented ISO image files.\n" 24 78 12.46 + image=\\slitaz\\vmlinuz root=/dev/sda5 ro\n" 24 78 12.47 [ $? -eq 0 ] || return 12.48 gettazboot /mnt/tazboot.exe 12.49 } 12.50 @@ -745,6 +741,8 @@ 12.51 12.52 if [ "$1" = "--build" ]; then #install-begin 12.53 cp $0 $0.tmp 12.54 + uuencode -m - < header.com | sed -e '/^HEADERCODE$/r/dev/stdin' \ 12.55 + -e "s|HEADERSZ|$(stat -c %s header.com)|" -e '/^HEADERCODE$/d' -i $0.tmp 12.56 uuencode -m - < ifmem.bin | sed -e 's|^[ \t]*||;s|[ \t]*###.*||' \ 12.57 -e 's| *;;|;;|;s|\t\t*|\t|g' \ 12.58 -e '/^ifmemcode$/r/dev/stdin' -e '/^ifmemcode$/d' -i $0.tmp 12.59 @@ -1221,7 +1219,7 @@ 12.60 $(xfile tazlito "flavor" "Get flavor file") \ 12.61 $(fddata "fdbootstrap" "Create a floppy bootstrap") \ 12.62 $(cdfile isolinux.cfg "floppyset" "Boot floppy set") \ 12.63 - "tazboot" "Get tazboot.exe Linux loader" \ 12.64 +$(cdfile linld.com "tazboot" "Get tazboot.exe Linux loader") \ 12.65 $(cdexe boot/bzImage "bzimage" "Get linux DOS/EXE file") \ 12.66 $(cdexe "memtest*" "memtest" "Get Memtest86 DOS/EXE file") \ 12.67 $(cdfilef "memtest*" "fdmemtest" "Create a Memtest86 boot floppy") \
13.1 --- a/syslinux/stuff/iso2exe/iso2exe.c Sun May 24 16:43:25 2020 +0000 13.2 +++ b/syslinux/stuff/iso2exe/iso2exe.c Mon May 25 10:10:30 2020 +0000 13.3 @@ -497,7 +497,7 @@ 13.4 SYSLINUX_MBR, /* 1 */ 13.5 FLAVOR_INFO, /* 2 */ 13.6 FLOPPY_BOOT, /* 3 */ 13.7 - TAZBOOT_COM, /* 4 */ 13.8 + ISOBOOT_COM, /* 4 */ 13.9 ROOTFS_GZ, /* 5 */ 13.10 DOSSTUB, /* 6 */ 13.11 BOOT_MD5, /* 7 */ 13.12 @@ -530,7 +530,7 @@ 13.13 case FLOPPY_BOOT: /* floppy.boot */ 13.14 file_size = BYTE(buffer+26)*512; 13.15 file_offset = WORD(buffer+64) - 0xC0 - file_size; break; 13.16 - case TAZBOOT_COM: /* tazboot.com */ 13.17 + case ISOBOOT_COM: /* isoboot.com */ 13.18 file_offset = WORD(buffer+64) - 0xC0; 13.19 file_size = stub - WORD(buffer+24) - file_offset; break; 13.20 case ROOTFS_GZ: /* rootfs.gz */
14.1 --- a/syslinux/stuff/iso2exe/iso2exe.sh Sun May 24 16:43:25 2020 +0000 14.2 +++ b/syslinux/stuff/iso2exe/iso2exe.sh Mon May 25 10:10:30 2020 +0000 14.3 @@ -170,7 +170,7 @@ 14.4 floppy.boot) SIZE=$(($(get 26 "$ISO" 1)*512)) 14.5 OFFSET=$(($(get 64 "$ISO") - 0xC0 - $SIZE));; 14.6 rootfs.gz) SIZE=$(get 24 "$ISO"); OFFSET=$(($stub - $SIZE));; 14.7 - tazboot.com) OFFSET=$(($(get 64 "$ISO") - 0xC0)) 14.8 + isoboot.com) OFFSET=$(($(get 64 "$ISO") - 0xC0)) 14.9 SIZE=$(($stub - $(get 24 "$ISO") - $OFFSET));; 14.10 dosstub) [ "$dosstub" ] && OFFSET=$stub && SIZE=$((0x7FF0 - $OFFSET));; 14.11 boot.md5) [ $(get 0 "$ISO") -eq 23117 ] && 14.12 @@ -242,7 +242,7 @@ 14.13 list() 14.14 { 14.15 HEAP=0 14.16 - for f in win32.exe syslinux.mbr flavor.info floppy.boot tazboot.com \ 14.17 + for f in win32.exe syslinux.mbr flavor.info floppy.boot isoboot.com \ 14.18 rootfs.gz dosstub boot.md5 fs.iso custom.magic custom.append \ 14.19 custom.initrd; do 14.20 fileofs $f 14.21 @@ -423,7 +423,7 @@ 14.22 SYSLINUX_MBR syslinux.mbr 14.23 FLAVOR_INFO flavor.info 14.24 FLOPPY_BOOT floppy.boot 14.25 -TAZBOOT_COM tazboot.com 14.26 +ISOBOOT_COM isoboot.com 14.27 ROOTFS_GZ rootfs.gz 14.28 DOSSTUB dosstub 14.29 BOOT_MD5 boot.md5
15.1 --- a/syslinux/stuff/iso2exe/taziso Sun May 24 16:43:25 2020 +0000 15.2 +++ b/syslinux/stuff/iso2exe/taziso Mon May 25 10:10:30 2020 +0000 15.3 @@ -32,16 +32,15 @@ 15.4 gettazboot() 15.5 { 15.6 echo -e "\nCreating $(basename $1) ..." 15.7 - X=$(($(get 20 /mnt/$ISO) - 0xC0)) 15.8 - [ $X -lt 30000 ] && X=$((0x7FF0)) 15.9 - O=$(($(get 64 "$ISO") - 0xC0)) 15.10 - L=$(($X - $(get 24 "$ISO") - $O)) 15.11 - S=$((32+$L)) 15.12 + S=$((32+HEADERSZ)) 15.13 P=$((($S+511)/512)) 15.14 E=$((4096-(32*$P))) 15.15 - words2bin 0x5A4D $(($S%512)) $P 0 2 $E -1 $((${2:-0}-16)) \ 15.16 + words2bin 0x5A4D $(($S%512)) $P 0 2 $E -1 -16 \ 15.17 -2 0 256 -16 28 0x6C53 0x5469 0x7A61 > $1 15.18 - ddq bs=1 count=$(echo $L) skip=$(echo $O) if="$ISO" >> $1 15.19 + uudecode - >> $1 << EOT 15.20 +HEADERCODE 15.21 +EOT 15.22 + ddq if=/mnt/slitaz/boot/linld.com >> $1 15.23 } 15.24 15.25 uncpio() 15.26 @@ -576,18 +575,15 @@ 15.27 $DIALOG --clear --title " SliTaz bootloader for DOS " \ 15.28 --yes-label "Install" --yesno \ 15.29 "\nThe file TAZBOOT.EXE will be created in the top directory. It supports 15.30 -any linux kernel, multiple initramfs, a kernel command line and 15.31 -an ISO image file loopback (retrieves files from an ISO file).\n\n 15.32 -Usage: tazboot.exe [[@commands]|[kernel=<bzimage>] 15.33 -[initrd=<rootfs>[,<rootfs2>...]] [bootfrom=<isofile>] cmdline args ...]\n\n 15.34 -Defaults: tazboot @tazboot.cmd or tazboot kernel=bzImage auto\n\n\ 15.35 +any linux kernel, multiple initramfs and a kernel command line.\n\n 15.36 +Usage: tazboot.exe [[@commands]|[image=<bzimage>] 15.37 +[initrd=<rootfs>[,<rootfs2>...]] cmdline args ...]\n\n 15.38 +Defaults: tazboot @tazboot.cmd or tazboot image=bzImage auto\n\n\ 15.39 Examples for tazboot.cmd:\n\n\ 15.40 - bootfrom=\\isos\\slitaz-4.0.iso\n\ 15.41 - kernel=boot/bzImage\n\ 15.42 + image=boot/bzImage\n\ 15.43 initrd=boot/rootfs4.gz,boot/rootfs3.gz,boot/rootfs2.gz,boot/rootfs1.gz\n\ 15.44 autologin\n\n\ 15.45 - kernel=\\slitaz\\vmlinuz root=/dev/sda5 ro\n\n 15.46 -Unlike GRUB4DOS, it doesn't require unfragmented ISO image files.\n" 0 0 15.47 + image=\\slitaz\\vmlinuz root=/dev/sda5 ro\n" 0 0 15.48 [ $? -eq 0 ] || return 15.49 fi 15.50 gettazboot tazboot.exe 15.51 @@ -825,11 +821,6 @@ 15.52 [ $(get 32769 "$ISO" 4) -eq 808469571 ] && menuitem "$@" 15.53 } 15.54 15.55 -hastazboot() 15.56 -{ 15.57 - [ $(get 0 "$ISO") -eq 23117 ] && menuitem "$@" 15.58 -} 15.59 - 15.60 burnable() 15.61 { 15.62 [ "$(sed '/Can wr.*1$/!d' /proc/sys/dev/cdrom/info 2> /dev/null)" ] && 15.63 @@ -1128,6 +1119,8 @@ 15.64 } 15.65 15.66 if [ "$1" = "--build" ]; then #install-begin 15.67 + uuencode -m - < header.com | sed -e '/^HEADERCODE$/r/dev/stdin' \ 15.68 + -e "s|HEADERSZ|$(stat -c %s header.com)|" -e '/^HEADERCODE$/d' -i $0 15.69 uuencode -m - < ifmem.bin | sed -e '/^ifmemcode$/r/dev/stdin' \ 15.70 -e '/^ifmemcode$/d' -i $0 15.71 uuencode -m - < bootloader.bin | sed -e '/^bootloader$/r/dev/stdin' \ 15.72 @@ -1382,7 +1375,7 @@ 15.73 $(hasflavinfo "showfavinfo" "Show flavor extra info") \ 15.74 $(hasflavor "flavor" "Get flavor file") \ 15.75 $(cdfile isolinux.cfg "floppyset" "Boot floppy set") \ 15.76 -$(hastazboot "tazboot" "Get tazboot.exe Linux loader") \ 15.77 +$(cdfile linld.com "tazboot" "Get tazboot.exe Linux loader") \ 15.78 $(cdexe boot/bzImage "bzimage" "Get linux DOS/EXE file") \ 15.79 $(cdexe 'memtest*' "memtest" "Get Memtest86 DOS/EXE file") \ 15.80 $(cdfilef 'memtest*' "fdmemtest" "Create a Memtest86 boot floppy") \