SILENT KILLERPanel

Current Path: > > usr > libexec > mc > > extfs.d >


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //usr/libexec/mc//extfs.d/

NameTypeSizeLast ModifiedActions
README File 7462 bytes March 04 2017 17:26:20.
README.extfs File 1134 bytes February 24 2017 20:25:57.
a+ File 3206 bytes October 18 2019 20:37:56.
apt+ File 9726 bytes October 18 2019 20:37:56.
audio File 1320 bytes October 18 2019 20:37:56.
bpp File 1207 bytes February 24 2017 20:25:57.
changesetfs File 2562 bytes February 24 2017 20:25:57.
deb File 5464 bytes October 18 2019 20:37:56.
deba File 3074 bytes October 18 2019 20:37:56.
debd File 10503 bytes October 18 2019 20:37:56.
dpkg+ File 8998 bytes October 18 2019 20:37:56.
gitfs+ File 782 bytes February 24 2017 20:25:57.
hp48+ File 3661 bytes October 18 2019 20:37:56.
iso9660 File 5781 bytes October 18 2019 20:37:56.
lslR File 1410 bytes October 18 2019 20:37:56.
mailfs File 5720 bytes October 18 2019 20:37:56.
patchfs File 11146 bytes October 18 2019 20:37:56.
patchsetfs File 2310 bytes February 24 2017 20:25:57.
rpm File 13569 bytes March 04 2017 17:26:20.
rpms+ File 1509 bytes October 18 2019 20:37:56.
trpm File 7836 bytes February 24 2017 20:25:57.
u7z File 4823 bytes March 04 2017 17:26:20.
uace File 1508 bytes October 18 2019 20:37:56.
ualz File 1280 bytes October 18 2019 20:37:56.
uar File 1323 bytes October 18 2019 20:37:56.
uarc File 1828 bytes October 18 2019 20:37:56.
uarj File 1655 bytes October 18 2019 20:37:56.
ucab File 734 bytes October 18 2019 20:37:56.
uha File 969 bytes October 18 2019 20:37:56.
ulha File 3870 bytes October 18 2019 20:37:56.
ulib File 2825 bytes October 18 2019 20:37:56.
urar File 4474 bytes October 18 2019 20:37:56.
uzip File 15261 bytes October 18 2019 20:37:56.
uzoo File 1601 bytes October 18 2019 20:37:56.

Reading File: //usr/libexec/mc//extfs.d//hp48+

#!/bin/sh
#
# Written by Christofer Edvardsen <ce@earthling.net>, Feb 1998
#
# This script makes it possible to view and copy files to/from a hp48
# (tested with a HP48G and the emulator x48)
#
# To use the hp48 external filesystem:
#      - read the relevant parts of your HP48 manual
#      - install kermit
#      - connect the HP48 to your computer or start x48
#      - below change the line which reflects the serial device you use
#      - configure your HP48 (<left shift> - i/o - iopar): 
#        port: wire
#        baud: 9600 
#        transfer format: binary (fast transfers) or
#                         ascii (editable on the pc)
#      - start the server on the HP48: <left shift> - i/o - srvr - serve
#        or the shortcut <right shift> - <right arrow>
#      - on MC's commandline enter "cd hp48://"
#
# Make sure you have kermit installed and that it's using the right serial
# device by changing /dev/ttyXX on the next line
AWK=gawk
KERMIT=${MC_TEST_EXTFS_LIST_CMD:-"kermit -l /dev/ttyS1 -b 9600"}

NOW=`date +"%m-%d-%Y %H:%M"`

hp48_cmd()
{
$KERMIT -C "SET EXIT WARNING OFF,REMOTE $1,QUIT"
}

hp48_cd()
{
(echo SET EXIT WARNING OFF;echo REMOTE HOST HOME
for HP48_DIR in `echo "$1" | tr '/' ' '`;do
  if [ "x$HP48_DIR" != "x." ];then echo REMOTE HOST "$HP48_DIR"; fi
done
echo QUIT)| $KERMIT -B >/dev/null
}

#
# Parses the reply to the DIRECTORY command.
#
# Here's an example reply (taken from [1][2]):
#
#    { HOME } 105617
#    STRAY 185.5 Directory 29225
#    YEN 30.5 Program 53391
#    JYTLIGHT 21848.5 String 62692
#    IOPAR 37.5 List 61074
#
# The meaning of the fields (according to [3][4]):
#
#    { Current_directory } Free_space
#    Object_name Object_size_bytes Object_type Object_CRC
#    ...
#
# [1] http://newarea48.tripod.com/kermit.html
# [2] http://www.hpmuseum.org/forum/thread-4684.html
# [3] https://groups.google.com/d/msg/comp.sys.hp48/bYTCu9K3k20/YWQfF--W3EEJ
# [4] http://www.columbia.edu/kermit/hp48.html (also has a link to the HP's user manual).
#
hp48_parser()
{
HP48_DIRS=

read -r INPUT
while [ "x$INPUT" != "xEOF" ]
do
    set -- $INPUT

    obj_name=$1
    obj_size=$2
    obj_type=$3

    obj_size=`echo $obj_size | $AWK '{ print int($0) }'`  # Truncates floats to ints; anything else to "0".

    if [ "$obj_size" != "0" ]; then  # Skips the 1st reply line (purportedly there aren't zero-size files b/c, according to resource [4], the size is "including name").
      case "$obj_type" in
        Directory)
          HP48_DIRS="$HP48_DIRS $obj_name"
          printf "%crwxr-xr-x   1 %-8d %-8d %8d %s %s\n" 'd' \
            0 0 $obj_size "$NOW" "$HP48_CDIR/$obj_name"
          ;;
        *)
          printf "%crw-r--r--   1 %-8d %-8d %8d %s %s\n" '-' \
            0 0 $obj_size "$NOW" "$HP48_CDIR/$obj_name"
          ;;
    esac
    fi

    read -r INPUT
done

for HP48_DIR in $HP48_DIRS;
do 
    HP48_PDIR="$HP48_CDIR"
    HP48_CDIR="$HP48_CDIR/$HP48_DIR"; hp48_cmd "HOST $HP48_DIR" >/dev/null
    hp48_list
    HP48_CDIR="$HP48_PDIR"; hp48_cmd "HOST UPDIR" >/dev/null
done
}

hp48_list()
{
# It's hard to see why this "EOF" thing is needed. The loop above can be changed to "while read -r obj_name ...". @TODO.
{ hp48_cmd "DIRECTORY"; echo; echo EOF; } | hp48_parser
}

# override any locale for dates
LC_ALL=C
export LC_ALL

case "$1" in
list) HP48_CDIR=
    hp48_cmd "HOST HOME" >/dev/null
    hp48_list
    exit 0;;
copyout)
    cd "`dirname "$4"`"
    hp48_cd "`dirname "$3"`"
    $KERMIT -B -g "`basename "$3"`" -a "$4" >/dev/null
    exit 0;;
copyin) 
    cd "`dirname "$4"`"
    hp48_cd "`dirname "$3"`"
    $KERMIT -B -s "$4" -a "`basename "$3"`" >/dev/null
    exit 0;;
esac
exit 1

SILENT KILLER Tool