NEW
  PREFIX
AUTO 4,1
#!/bin/sh
#
#  This script tests the standard functions defined in MAKEFUNCS
#  that are used by multiple MAKE scripts
#
#  Load Functions File
#
#. MAKEFUNCS
#  This script defines standard functions used by multiple scripts
#  Clear Screen Function
FUNCTION CS {
  ECHO \f
}
# Title Box Function
# CALL TBOX Str_Title
FUNCTION TBOX {
  ECHO -N "\e[1;20H"
  ECHO "\e[7m                                        \e[0m"
  SET LINE = 2
  WHILE [ $LINE -NE 5 ]
    ECHO -N "\e[${LINE};20H"
    ECHO "\e[7m \e[0m                                      \e[7m \e[0m"
    SET LINE = $LINE + 1
  LOOP
  ECHO -N "\e[5;20H"
  ECHO "\e[7m                                        \e[0m"
  ECHO -N "\e[3;22H $1"
}
# Print Inverse
FUNCTION INVERSE {
  ECHO -N "\e[7m$1\e[0m"
}
# Print at Screen Location Function
# CALL PRINTXY Num_Row Num_Column Str_String
FUNCTION PRINTXY {
  ECHO -N "\e[$1;$2H$3"
}
# Print Inverse At X Y
# CALL INVERSEXY Row Col String
FUNCTION INVERSEXY {
  ECHO -N "\e[$1;$2H\e[7m$3\e[0m"
}
# STATUSLINE Function
# CALL STATUSLINE Str_Message
FUNCTION STATUSLINE {
  ECHO -N "\e[24;0H\e[7m                                        "
  ECHO -N "                                        \e[0m"
  ECHO -N "\e[24;2H\e[7m$1\e[0m"
  ECHO -N "\e[24;68H\e[7m"
#  TIME | CUT -M 10 -N 20
  # SET DTIME = `TIME | CUT -M 10 -N 20`: ECHO -N ${DTIME}
  ECHO -N "\e[0m"
}
# YesNoKeyPress Function
#  CALL YNKP Returns 1(Y) or 0 (N)
FUNCTION YNKP {
  ECHO Not yet implemented
}
# Get String At X Y Function
#  CALL GETXY Num_Row Num_Column Num_Length
FUNCTION GETXY {
  ECHO Not yet implemented
}
#
#  Test CS (ClearScreen Function)
#
CALL CS
CALL TBOX "This is the Title"
CALL STATUSLINE "Loading Functions..."
CALL PRINTXY 10 10 "Hello World at 10 10"
CALL PRINTXY 18 1 " "
ECHO
CALL INVERSE "Inverse where cursor is"
ECHO "\nNow normal"
CALL INVERSEXY 15 15 "Inverse Now at 15 15"
CALL PRINTXY 18 1 " "
ECHO
MAN
TEXT /MAKE/USR/SHARE/MAKE/TESTFUNCS2
