TypeGram

Still in future development is a KISS distraction free typing program. Currently does not save. Source code below:

' This program is not fully functional yet. Feel free to fork!

DIM cha(0 TO 25, 0 TO 80) AS STRING
DECLARE SUB page (xp, yp, pg, men, t$)
CLS
LOCATE 1, 1
PRINT "[ESC] *************     KIS TYPE WRITER by Page Telegram V1    *****************"
ext = 0
min = 0
xp = 1
yp = 2
DO
SELECT CASE INKEY$
 CASE CHR$(27)    'esc
   IF men = 0 THEN men = 1 ELSE men = 0
   IF men = 0 THEN
        LOCATE 1, 1
        PRINT "[ESC] ***    KIS TYPE WRITER  by Page Telegram V1 ** C";
        COLOR 14: PRINT xp;
        COLOR 7: PRINT "L";
        COLOR 14: PRINT yp - 1;
        COLOR 7: PRINT "P";
        COLOR 14: PRINT pg + 1;
        COLOR 7
        PRINT "****"
    END IF
    IF men = 1 THEN
        LOCATE 1, 1
        PRINT "{ESC}    {Q}uit    {S}ave    Save{A}s    {O}pen    {D}elete    [K]ey #########"
   END IF

  CASE "?"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "?"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "/"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "/"
    CALL page(xp, yp, pg, men, t$)
  END IF


  CASE "."
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "."
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE ">"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = ">"
    CALL page(xp, yp, pg, men, t$)
  END IF


  CASE ","
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = ","
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "<"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "<"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "'"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "'"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE CHR$(34)
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = CHR$(34)
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE ";"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = ";"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE ":"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = ":"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "}"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "}"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "]"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "]"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "["
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "["
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "{"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "{"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "="
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "="
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "+"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "+"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "-"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "-"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "_"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "_"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE ")"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = ")"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "0"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "0"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "("
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "("
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "9"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "9"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "*"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "*"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "8"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "8"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "&"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "&"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "7"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "7"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "^"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "^"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "6"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "6"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "%"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "%"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "5"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "5"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "$"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "$"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "4"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "4"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "#"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "#"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "3"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "3"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "@"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "@"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "2"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "2"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "!"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "!"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "1"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "1"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "Z"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "Z"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "z"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "z"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "Y"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "Y"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "y"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "y"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "X"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "X"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "x"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "x"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "W"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "W"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "w"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "w"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "V"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "V"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "v"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "v"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "U"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "U"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "u"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "u"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "T"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "T"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "t"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "t"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "R"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "R"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "r"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "r"
    CALL page(xp, yp, pg, men, t$)
  END IF




 CASE "P"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "P"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "p"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "p"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "N"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "N"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "n"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "n"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "M"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "M"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "m"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "m"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "L"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "L"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "l"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "l"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "K"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "K"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "k"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "k"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "J"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "J"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "j"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "j"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "I"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "I"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "i"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "i"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "H"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "H"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "h"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "h"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "G"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "G"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "g"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "g"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "F"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "F"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "f"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "f"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "E"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "E"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "e"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "e"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "D"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "D"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "d"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "d"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "C"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "C"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "c"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "c"
    CALL page(xp, yp, pg, men, t$)
  END IF




 CASE "B"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "B"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "b"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Press [ESC]                            "
  BEEP
  ELSE
   t$ = "b"
    CALL page(xp, yp, pg, men, t$)
  END IF







 CASE "O"
  IF men = 1 THEN
   LOCATE 2, 1
   INPUT "Open:", fil$
  ELSE
   t$ = "O"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "o"
  IF men = 1 THEN
   LOCATE 2, 1
   INPUT "Open:", fil$
  ELSE
   t$ = "o"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "A"
  IF men = 1 THEN
   ': rep1
   LOCATE 2, 1:
   PRINT "                                             "
   LOCATE 2, 1
   INPUT "Save As:", fil$
   'IF LEN(fil$) > 7 THEN GOTO rep1:
   SHELL "mkdir " + fil$
   
   'OPEN fil$ FOR OUTPUT AS #10
    FOR xi = 1 TO xp
     FOR yi = 1 TO yp
      IF LEN(cha$(xi, yi)) = 0 THEN PRINT #10, ""
       FOR pi = 1 TO pg
        LOCATE 2, 15
        COLOR 14
        PRINT "Saving Pg:"; pi
        COLOR 7
        PRINT
        'open
       NEXT pi
     NEXT yi
     PRINT #10, cha$(xi, yi)
    NEXT xi
  
  ELSE
   t$ = "A"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "a"
  IF men = 1 THEN
   LOCATE 2, 1
   INPUT "Save As:", fil$
  ELSE
   t$ = "a"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "S"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Saving"
  ELSE
   t$ = "S"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "s"
  IF men = 1 THEN
   LOCATE 2, 1
   PRINT "Saving"
  ELSE
   t$ = "s"
    CALL page(xp, yp, pg, men, t$)
  END IF


 CASE "Q"
  IF men = 1 THEN
   SYSTEM
  men = 0
  ELSE
   t$ = "Q"
    CALL page(xp, yp, pg, men, t$)
  END IF

 CASE "q"
  IF men = 1 THEN
   SYSTEM
  men = 0
  ELSE
   t$ = "q"
    CALL page(xp, yp, pg, men, t$)
 
  END IF
 CASE CHR$(32)    'spc
  IF men = 1 THEN
   SYSTEM
  men = 0
  ELSE
   t$ = " "
    CALL page(xp, yp, pg, men, t$)
  END IF
  
  
 CASE CHR$(13)    'ent
    xp = 0
   
    IF yp < 24 THEN
     yp = yp + 1
     CALL page(xp, yp, pg, men, t$)
    ELSE
     pg = pg + 1
    yp = 1
    END IF

 CASE CHR$(0) + "H"   'up
BEEP
'   LOCATE 1, 1
'   PRINT "^"
 CASE CHR$(0) + "K"   'left
BEEP
'   LOCATE 1, 1
'   PRINT "<"
 CASE CHR$(0) + "P"   ' down
BEEP
'   LOCATE 1, 1
'   PRINT CHR$(251)
 CASE CHR$(0) + "M"   'right
BEEP
'   LOCATE 1, 1
'   PRINT ">"

CASE CHR$(83)      'del
 BEEP
 'cha$(yp, xp,pg) = ""
 'LOCATE yp, xp
 'PRINT "                                                                               "
 'FOR i = 1 TO xp - 1
 ' LOCATE yp + 1, i
 ' PRINT cha$(yp, i,pg)
 
 'NEXT i
 '  xp = xp - 1
'LOCATE 2, 1: PRINT "                                                                                 "
'COLOR 14
'LOCATE 2, xp + 1: PRINT "*"
'COLOR 7
'FOR i = 1 TO 23
'LOCATE i, 1: PRINT " "
'NEXT i
'LOCATE yp + 1, 1
'COLOR 14
'PRINT ">"
'COLOR 7
'        LOCATE 1, 1
'        PRINT "[ESC] ***    KIS TYPE WRITER  by Page Telegram V1 ** C";
'        COLOR 14: PRINT xp;
'        COLOR 7: PRINT "L";
'        COLOR 14: PRINT yp - 1;
'        COLOR 7: PRINT "P";
'        COLOR 14: PRINT pg + 1
'        COLOR 7
'
CASE CHR$(8): BEEP   ' bks
 
'  IF yp > 3 THEN yp = yp - 1 ELSE BEEP ' no less than first line

' IF xp > 2 THEN 'if more than string start position
'   xp = LEN(cha$(yp, xp,pg))
   'yp = yp - 1
'  ELSE
' cha$(yp, xp) = ""
' LOCATE 23, 1
' PRINT yp, xp
' LOCATE yp + 1, xp
' PRINT "                                                                             "
' FOR i = 1 TO LEN(cha$(yp, xp - 1))
'  LOCATE yp + 2, i
'  PRINT cha$(yp, i)
    
' NEXT i
 ' IF xp > 1 THEN xp = xp - 1

  'END IF
   ' yp = yp - 1
'LOCATE 2, 1: PRINT "                                                                                 "
'COLOR 14
'LOCATE 2, xp + 1: PRINT "*"
'COLOR 7
'FOR i = 1 TO 23
'LOCATE i, 1: PRINT " "
'NEXT i
'LOCATE yp + 1, 1
'COLOR 14
'PRINT ">"
'COLOR 7

'        LOCATE 1, 1
 '       PRINT "[ESC] ***    KIS TYPE WRITER  by Page Telegram V1 ** C";
  '      COLOR 14: PRINT xp;
   '     COLOR 7: PRINT "L";
    '    COLOR 14: PRINT yp - 1;
     '   COLOR 7: PRINT "P";
      '  COLOR 14: PRINT pg + 1
       ' COLOR 7



END SELECT
LOOP UNTIL ext = 1

SUB page (xp, yp, pg, men, t$)
SHARED cha() AS STRING
 
 xp = xp + 1
 IF xp > 79 THEN ' return
  xp = 2
  yp = yp + 1
   IF yp > 23 THEN ' page
    yp = 2
    pg = pg + 1
   END IF

 END IF
 cha$(yp, xp) = t$
 LOCATE yp + 1, xp
 PRINT cha$(yp, xp)
LOCATE 2, 1: PRINT "                                                                                 "
COLOR 14
LOCATE 2, xp: PRINT "*"
COLOR 7
FOR i = 1 TO 23
LOCATE i, 1: PRINT " "
NEXT i
LOCATE yp + 1, 1
COLOR 14
PRINT ">"
COLOR 7
        LOCATE 1, 1
        PRINT "[ESC] ***    KIS TYPE WRITER  by Page Telegram V1 ** C";
        COLOR 14: PRINT xp;
        COLOR 7: PRINT "L";
        COLOR 14: PRINT yp - 1;
        COLOR 7: PRINT "P";
        COLOR 14: PRINT pg + 1;
        COLOR 7
        PRINT "****"

END SUB