Annotation of qemu/hxtool, revision 1.1.1.2

1.1       root        1: #!/bin/sh
                      2: 
                      3: hxtoh()
                      4: {
                      5:     flag=1
                      6:     while read -r str; do
                      7:         case $str in
                      8:             HXCOMM*)
                      9:             ;;
1.1.1.2 ! root       10:             STEXI*|ETEXI*|SQMP*|EQMP*) flag=$(($flag^1))
1.1       root       11:             ;;
                     12:             *)
                     13:             test $flag -eq 1 && printf "%s\n" "$str"
                     14:             ;;
                     15:         esac
                     16:     done
                     17: }
                     18: 
                     19: hxtotexi()
                     20: {
                     21:     flag=0
1.1.1.2 ! root       22:     line=1
1.1       root       23:     while read -r str; do
                     24:         case "$str" in
                     25:             HXCOMM*)
                     26:             ;;
1.1.1.2 ! root       27:             STEXI*)
        !            28:             if test $flag -eq 1 ; then
        !            29:                 echo "line $line: syntax error: expected ETEXI, found $str" >&2
        !            30:                 exit 1
        !            31:             fi
        !            32:             flag=1
        !            33:             ;;
        !            34:             ETEXI*)
        !            35:             if test $flag -ne 1 ; then
        !            36:                 echo "line $line: syntax error: expected STEXI, found $str" >&2
        !            37:                 exit 1
        !            38:             fi
        !            39:             flag=0
        !            40:             ;;
        !            41:             SQMP*|EQMP*)
        !            42:             if test $flag -eq 1 ; then
        !            43:                 echo "line $line: syntax error: expected ETEXI, found $str" >&2
        !            44:                 exit 1
        !            45:             fi
1.1       root       46:             ;;
                     47:             DEFHEADING*)
                     48:             echo "$(expr "$str" : "DEFHEADING(\(.*\))")"
                     49:             ;;
                     50:             *)
                     51:             test $flag -eq 1 && echo "$str"
                     52:             ;;
                     53:         esac
1.1.1.2 ! root       54:         line=$((line+1))
        !            55:     done
        !            56: }
        !            57: 
        !            58: hxtoqmp()
        !            59: {
        !            60:     IFS=
        !            61:     flag=0
        !            62:     line=1
        !            63:     while read -r str; do
        !            64:         case "$str" in
        !            65:             HXCOMM*)
        !            66:             ;;
        !            67:             SQMP*)
        !            68:             if test $flag -eq 1 ; then
        !            69:                 echo "line $line: syntax error: expected EQMP, found $str" >&2
        !            70:                 exit 1
        !            71:             fi
        !            72:             flag=1
        !            73:             ;;
        !            74:             EQMP*)
        !            75:             if test $flag -ne 1 ; then
        !            76:                 echo "line $line: syntax error: expected SQMP, found $str" >&2
        !            77:                 exit 1
        !            78:             fi
        !            79:             flag=0
        !            80:             ;;
        !            81:             STEXI*|ETEXI*)
        !            82:             if test $flag -eq 1 ; then
        !            83:                 echo "line $line: syntax error: expected EQMP, found $str" >&2
        !            84:                 exit 1
        !            85:             fi
        !            86:             ;;
        !            87:             *)
        !            88:             test $flag -eq 1 && echo "$str"
        !            89:             ;;
        !            90:         esac
        !            91:         line=$((line+1))
1.1       root       92:     done
                     93: }
                     94: 
                     95: case "$1" in
                     96: "-h") hxtoh ;;
                     97: "-t") hxtotexi ;;
1.1.1.2 ! root       98: "-q") hxtoqmp ;;
1.1       root       99: *) exit 1 ;;
                    100: esac
                    101: 
                    102: exit 0

unix.superglobalmegacorp.com