#!/bin/sh
#block v0.20 ==============================
#Display block text using NiLuJe's fbink
# ʇɟǝןʎdoƆ (ↄ) 2018-2021 PoP under Creative Commons Attribution-ShareAlike 3.0 Unported License
# 2018-08-11 v0.9 initial release
# 2021-03-31 v0.20 revised atoms for lower case characters
#Usage:
#block X Y S "TEXT" [-c] where
#           X is the starting Column number (fbink -x)
#           Y is the starting Row number (fbink -y)
#           S is the font scaling factor (fbink -S)
#             for example S1 8x8 is upscaled to 32x32
#                         ...
#                         S4 32x32 is upscaled to 128x128
#                         S5 40x40 is upscaled to 160x160
#           "TEXT" (in ASCII) to print in Block Style using the atomic ◢ ◣ █ ◥ ◤ and 🮞 🮟 🮐  🮝 🮜 characters
#
#               !"#$%&'()*+,-./0123456789:;<=>@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqRowstuvwxyz{|}~
#              are supported, lower case is rendered as upper case, out of range bytes are rendered as space
#           -c to optionaly clear the screen
#dependence: fbink 1.3.0 minimum, to support -e parameter

X=$1;Y=$2;S=$3;T=$4;c=$5 #no validation!

#keep the Kindle quiet
lipc-set-prop com.lab126.powerd preventScreenSaver 1
killall -stop cvm # pause framework

#keep the scaling factor within good limits
MC=1;MR=1 #to iterate at least once
while [ $MC -lt 4 ] || [ $MR -lt 4 ]; do

eval $(fbink -S $S -qe) #FBINK_VERSION='v1.23.2 for Kindle';viewWidth=1072;viewHeight=1448;screenWidth=1072;screenHeight=1448;viewHoriOrigin=0;viewVertOrigin=4;viewVertOffset=4;DPI=300;BPP=8;lineLength=1088;FONTW=24;FONTH=24;FONTSIZE_MULT=3;FONTNAME='IBM';glyphWidth=8;glyphHeight=8;MAXCOLS=44;MAXROWS=60;isPerfectFit=0;FBID='mxc_epdc_fb';USER_HZ=100;penFGColor=0;penBGColor=255;deviceName='PaperWhite 3';deviceId=513;deviceCodename='Muscat';devicePlatform='Wario';isPBSunxi=0;isKindleLegacy=0;isKoboNonMT=0;ntxBootRota=0;ntxRotaQuirk=0;isNTX16bLandscape=0;currentRota=3;canRotate=0;canHWInvert=1;
MC=$MAXCOLS; MR=$MAXROWS
  #Clamp the scaling factor to allow a minimum of 1x1 in the new 4x4 style
  if [ $MC -lt 4 ] || [ $MR -lt 4 ]; then S=$((S-1)); fi
done

MC=$((($MC/4)*4)) #rezize to 4x4 atoms with no column fraction
MR=$((($MR/4)*4)) #rezize to 4x4 atoms with no row fraction

#
C=$X; R=$Y
i=0
while :; do
  i=$((i+1))
  if [ $i -gt ${#T} ]
  then 
    killall -cont cvm;
    lipc-set-prop com.lab126.powerd preventScreenSaver 0
    exit
  fi

U=$(expr substr $T $i 1)  #next byte of T (bug: next byte is not next unicode)
                          #fix later syntax error for characters ! " (  ) * space the 5 atoms

case $U in

' ')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
'!')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◤  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " █  "
  ;;
'"')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◢◢ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ██ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
'#')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◣◢ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◥◤◥◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢◣◢◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii " ◤◥ "
  ;;
'$')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◣◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ██◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢██ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " ◤◤ "
  ;;
'%')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "   ◢"
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █◢◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◢◤ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◢◤█ "
  ;;
'&')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◢◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ◥◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢█◣◤"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥█◤◣"
  ;;
"'")
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  ◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
'(')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◢◤ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " ◥◣ "
  ;;
')')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥◣  "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◢◤  "
  ;;
'*')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "  ◢ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◥██ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ██◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii " ◤  "
  ;;
'+')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ███"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  █ "
  ;;
',')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  ◤ "
  ;;
'-')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
'.')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " █  "
  ;;
'/')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "   ◢"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  ◢◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◢◤ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◢◤  "
  ;;
'0')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢█◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█ █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█ █ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥█◤ "
  ;;
'1')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◢  "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " █  "
  ;;
'2')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢██ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ◢◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢◤  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "██◤ "
  ;;
'3')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢█◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◥█ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥█◤ "
  ;;
'4')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢ ◢ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█ █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◥██ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  ◤ "
  ;;
'5')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "██◤ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█◣  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◥◣ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥█◤ "
  ;;
'6')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢█◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█◣  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█◥◣ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥█◤ "
  ;;
'7')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "███ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ◢◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢◤  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◤   "
  ;;
'8')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢██ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█◣◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢◥◣ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "██◤ "
  ;;
'9')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢█◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█ █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◥◤█ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◢█◤ "
  ;;
':')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
';')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  ◤ "
  ;;
'<')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "  ◢◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ◢◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◥◣ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  ◥◣"
  ;;
'=')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
'>')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◥◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  ◥◣"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  ◢◤"
  fbink    -x $C -y $((R+3)) -S $S -F unscii " ◢◤ "
  ;;
'?')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◥██"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  ◢◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  ◤ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  █ "
  ;;
'@')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢◤◥◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█ █◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█   "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥◣◢◤"
  ;;
'a' )
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐🮐🮟🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝  🮜"
  ;;
'b')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐 🮞🮜"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐 🮝🮟"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
'c')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞🮐🮐🮜"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐   "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐   "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
'd')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐🮜 🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮜🮐🮐🮜"
  ;;
'e')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮜"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐🮟  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐   "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
'f')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮜"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐🮟  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐   "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝   "
  ;;
'g')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞🮐🮐 "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐 🮞🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮝"
  ;;
'h')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞  🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐🮐🮐🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝  🮜"
  ;;
'i')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "  🮝 "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  🮐 "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  🮐 "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  🮜 "
  ;;
'j')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮐"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "   🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮞  🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
'k')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮐 🮞🮜"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐🮐🮐 "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐 🮝🮟"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝  🮜"
  ;;
'l')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮐   "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐   "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐  🮞"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮜🮐🮐🮜"
  ;;
'm')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐🮜🮜🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮜  🮜"
  ;;
'n')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮜  🮜"
  ;;
'o')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
'p')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮜"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐🮝🮜 "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝   "
  ;;
'q')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐 🮟🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"

  ;;
'r')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮟"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮜"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐🮞🮐🮟"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝  🮐"
  ;;
's')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞🮐🮐🮜"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮝🮟  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  🮝🮟"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
't')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞🮐🮐🮐"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  🮐 "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  🮐 "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  🮐 "
  ;;
'u')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
'v')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮝🮟🮞🮜"
  fbink    -x $C -y $((R+3)) -S $S -F unscii " 🮝🮜 "
  ;;
'w')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮞  🮞"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮐🮞🮞🮐"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮝🮐🮐🮜"
  ;;
'x')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮟🮞🮜"
  fbink    -x $C -y $((R+1)) -S $S -F unscii " 🮝🮜 "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " 🮞🮟 "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮞🮜🮝🮟"
  ;;
'y')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮐  🮐"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "🮝🮟🮞🮜"
  fbink    -x $C -y $((R+2)) -S $S -F unscii " 🮐🮜 "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮞🮜  "
  ;;
'z')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "🮝🮐🮐🮜"
  fbink    -x $C -y $((R+1)) -S $S -F unscii " 🮞🮜 "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "🮞🮜  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "🮐🮐🮐🮟"
  ;;
'A')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "██◣█"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥  ◤"
  ;;
'B')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█ ◢◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█ ◥◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'C')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢██◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█   "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█   "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'D')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█◤ █"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◤██◤"
  ;;
'E')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█◣  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█   "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'F')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█◣  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█   "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥   "
  ;;
'G')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢██ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█ ◢█"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◥"
  ;;
'H')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢  ◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "████"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥  ◤"
  ;;
'I')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "  ◥ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  ◤ "
  ;;
'J')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥███"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "   █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢  █"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'K')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "█ ◢◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "███ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█ ◥◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥  ◤"
  ;;
'L')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "█   "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█   "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█  ◢"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◤██◤"
  ;;
'M')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█◤◤█"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◤  ◤"
  ;;
'N')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◤  ◤"
  ;;
'O')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'P')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  ◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█◥◤ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥   "
  ;;
'Q')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█ ◣█"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"

  ;;
'R')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◣"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  ◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█◢█◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥  █"
  ;;
'S')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢██◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◥◣  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  ◥◣"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'T')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢███"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  █ "
  ;;
'U')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'V')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◥◣◢◤"
  fbink    -x $C -y $((R+3)) -S $S -F unscii " ◥◤ "
  ;;
'W')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◢  ◢"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "█◢◢█"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◥██◤"
  ;;
'X')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥◣◢◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ◥◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◢◣ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◢◤◥◣"
  ;;
'Y')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "█  █"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◥◣◢◤"
  fbink    -x $C -y $((R+2)) -S $S -F unscii " █◤ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◢◤  "
  ;;
'Z')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥██◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii " ◢◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◢◤  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "███◣"
  ;;
'[')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " █◤ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " █◣ "
  ;;
'\')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◣   "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◥◣  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◥◣ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "  ◥◣"
  ;;
']')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◥█ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "  █ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " ◢█ "
  ;;
'^')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◢◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
'_')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "████"
  ;;
'`')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◥◣ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;
'{')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " █◤ "
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◢█  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "◥█  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " █◣ "
  ;;
'|')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◣  "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █  "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " ◣  "
  fbink    -x $C -y $((R+3)) -S $S -F unscii " █  "
  ;;
'}')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥█  "
  fbink    -x $C -y $((R+1)) -S $S -F unscii " █◣ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii " █◤ "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "◢█  "
  ;;
'~')
  fbink $c -x $C -y $((R+0)) -S $S -F unscii " ◢ ◤"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "◤ ◤ "
  fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
  fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;

'█') # U+2588
  fbink $c -x $C -y $((R+0)) -S $S -F unscii "████"
  fbink    -x $C -y $((R+1)) -S $S -F unscii "████"
  fbink    -x $C -y $((R+2)) -S $S -F unscii "████"
  fbink    -x $C -y $((R+3)) -S $S -F unscii "████"
  ;;

'◢') # U+25E2
 fbink $c -x $C -y $((R+0)) -S $S -F unscii "   ◢"
 fbink    -x $C -y $((R+1)) -S $S -F unscii "  ◢◢"
 fbink    -x $C -y $((R+2)) -S $S -F unscii " ◢◢◢"
 fbink    -x $C -y $((R+3)) -S $S -F unscii "◢◢◢◢"
  ;;

'◣') # U+25E3
 fbink $c -x $C -y $((R+0)) -S $S -F unscii "◣   "
 fbink    -x $C -y $((R+1)) -S $S -F unscii "◣◣  "
 fbink    -x $C -y $((R+2)) -S $S -F unscii "◣◣◣ "
 fbink    -x $C -y $((R+3)) -S $S -F unscii "◣◣◣◣"
  ;;

'◤') # U+25E4
 fbink $c -x $C -y $((R+0)) -S $S -F unscii "◤◤◤◤"
 fbink    -x $C -y $((R+1)) -S $S -F unscii "◤◤◤ "
 fbink    -x $C -y $((R+2)) -S $S -F unscii "◤◤  "
 fbink    -x $C -y $((R+3)) -S $S -F unscii "◤   "
  ;;

'◥') # U+25E5
 fbink $c -x $C -y $((R+0)) -S $S -F unscii "◥◥◥◥"
 fbink    -x $C -y $((R+1)) -S $S -F unscii " ◥◥◥"
 fbink    -x $C -y $((R+2)) -S $S -F unscii "  ◥◥"
 fbink    -x $C -y $((R+3)) -S $S -F unscii "   ◥"
  ;;

*) # out of range
 fbink $c -x $C -y $((R+0)) -S $S -F unscii "    "
 fbink    -x $C -y $((R+1)) -S $S -F unscii "    "
 fbink    -x $C -y $((R+2)) -S $S -F unscii "    "
 fbink    -x $C -y $((R+3)) -S $S -F unscii "    "
  ;;

esac
echo $R $C
c="" #no more optional clear screen from here on
C=$((C+4)); if [ $C -ge $MC ]; then C=$X; R=$((R+4)); fi
if [ $R -ge $MR ]; then C=$X; R=$Y; c="-c"; fi #clear screen and wrap to initial position
done