home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / pcboard / wui_25a.zip / WUI.PPS < prev   
Text File  |  1993-05-14  |  18KB  |  393 lines

  1. ;*****************************************************************************
  2. ;*                                                                           *
  3. ;*                             WUI.PPE v2.50a                                *
  4. ;*               PCBOARD 15.0 WRITE USER INFORMATION PROGRAM                 *
  5. ;*                                                                           *
  6. ;*                Written by Larry Steele and Jerry Claxton                  *
  7. ;*                 Written in PCBoard Programming Language                   *
  8. ;*                         Compiled on 05-14-1993                            *
  9. ;*                                                                           *
  10. ;*                   "The Shoppe Bulletin Board Systems"                     *
  11. ;*               Node 1 - 708-888-0725 - [16.8 DS] - 80486/50                *
  12. ;*               Node 2 - 708-888-1162 - [16.8 DS] - 80486/40                *
  13. ;*               Node 3 - 708-888-0078 - [16.8 DS] - 80486/40                *
  14. ;*               Node 4 - 708-888-4175 - [16.8 DS] - 80486/40                *
  15. ;*               Node 5 - PRIVATE LINE - [16.8 DS] - 80486/66                *
  16. ;*****************************************************************************
  17.  
  18.  
  19. ;*****************************************************************************
  20. ;* Define variable types                                                     *
  21. ;*****************************************************************************
  22.  
  23. BOOLEAN Save_User_Record
  24.  
  25. STRING Write_User_Information, Command_Line
  26. STRING User_PassWord_One, User_PassWord_Two
  27. STRING Message_Clear
  28. STRING Scroll_Screen
  29. STRING Long_Header
  30. STRING Full_Screen
  31. STRING Editor_WorkSpace
  32. STRING Expert_Mode
  33.  
  34. ;*****************************************************************************
  35. ;* Load the current users information                                        *
  36. ;*****************************************************************************
  37.  
  38. GETUSER
  39. GOSUB GRAB_INFO
  40.  
  41. ;*****************************************************************************
  42. ;* Check the command line for any Parameters                                 *
  43. ;*****************************************************************************
  44.  
  45. GETTOKEN Command_Line
  46. IF (STRIP(Command_Line, " ") = "A") GOTO PASSWORD
  47. IF (STRIP(Command_Line, " ") = "B") GOTO CITY_STATE
  48. IF (STRIP(Command_Line, " ") = "C") GOTO DATA_PHONE
  49. IF (STRIP(Command_Line, " ") = "D") GOTO HOME_PHONE
  50. IF (STRIP(Command_Line, " ") = "E") GOTO CPU_BRAND
  51. IF (STRIP(Command_Line, " ") = "F") GOTO MSG_CLEAR
  52. IF (STRIP(Command_Line, " ") = "G") GOTO MSG_SCROLL
  53. IF (STRIP(Command_Line, " ") = "H") GOTO MSG_HEADER
  54. IF (STRIP(Command_Line, " ") = "I") GOTO MSG_FULLSCREEN
  55. IF (STRIP(Command_Line, " ") = "J") GOTO MSG_COLUMNS
  56.  
  57. IF (STRIP(Command_Line, " ") = "K" & PSA(3)) GOTO PSA_STREET_NUMBER1
  58. IF (STRIP(Command_Line, " ") = "L" & PSA(3)) GOTO PSA_STREET_NUMBER2
  59. IF (STRIP(Command_Line, " ") = "M" & PSA(3)) GOTO PSA_CITY
  60. IF (STRIP(Command_Line, " ") = "N" & PSA(3)) GOTO PSA_PROVINCE_STATE
  61. IF (STRIP(Command_Line, " ") = "O" & PSA(3)) GOTO PSA_ZIPCODE
  62. IF (STRIP(Command_Line, " ") = "P" & PSA(3)) GOTO PSA_COUNTRY
  63.  
  64. IF (STRIP(Command_Line, " ") = "X" & PSA(1)) GOTO PSA_ALIAS_NAME
  65.  
  66. IF (STRIP(Command_Line, " ") = "V") GOTO VIEW_USER_STATS
  67. IF (STRIP(Command_Line, " ") <> "") Command_Line = ""
  68.  
  69. ;*****************************************************************************
  70. ;* Start of Main PPE program                                                 *
  71. ;*****************************************************************************
  72.  
  73. :BEGIN_MAIN
  74.      CLS
  75.      Write_User_Information = ""
  76.      PRINTLN "@X7F┌─────────────────────────────────────────────────────────────────────────────@X70┐@X07"
  77.      PRINTLN "@X7F│ @X70@SYSDATE:8@        @X7BW R I T E   U S E R   I N F O R M A T I O N        @X70@SYSTIME:5@:04 │@X07"
  78.      PRINTLN "@X7F└@X70─────────────────────────────────────────────────────────────────────────────┘@X07"
  79.      PRINTLN "@X70┌─────────────────────────────────────────────────────────────────────────────@X7F┐@X07"
  80.      PRINTLN "@X70│ @X71(@X7EA@X71) Change your Password          (@X7EF@X71) Clear the screen between each message @X7F│@X07"
  81.      PRINTLN "@X70│ @X71(@X7EB@X71) Change City and State         (@X7EG@X71) Scroll multi-screen messages          @X7F│@X07"
  82.      PRINTLN "@X70│ @X71(@X7EC@X71) Business or data phone        (@X7EH@X71) Use long header when reading messages @X7F│@X07"
  83.      PRINTLN "@X70│ @X71(@X7ED@X71) Home or voice phone           (@X7EI@X71) Full Screen Editor Default            @X7F│@X07"
  84.      PRINTLN "@X70│ @X71(@X7EE@X71) Brand of CPU you are using    (@X7EJ@X71) Set editor workspace to 79 columns    @X7F│@X07"
  85.      IF (PSA(1) | PSA(3)) THEN
  86.          PRINTLN "@X70│                                                                             @X7F│@X07"
  87.          PRINTLN "@X70│ @X71(@X7EK@X71) Street Address and Number     (@X7EX@X71) Create or change your ALIAS name      @X7F│@X07"
  88.          PRINTLN "@X70│ @X71(@X7EL@X71) Suite or Apartment Number                                               @X7F│@X07"
  89.          PRINTLN "@X70│ @X71(@X7EM@X71) City, Town or Village         @X08┌───────────────────────────────────────┐@X70 @X7F│@X07"
  90.          PRINTLN "@X70│ @X71(@X7EN@X71) Province or State             @X08│@X0F@USER:38C@@POS:77@@X08│@X70 @X7F│@X07"
  91.          PRINTLN "@X70│ @X71(@X7EO@X71) Postal Zip Code               @X08│ @X0E[@X0FExpire: @EXPDATE:8@@X0E]   [@X0FDays Left: @EXPDAYS:3R@@X0E@POS:75@]@POS:77@@X08│@X70 @X7F│@X07"
  92.          PRINTLN "@X70│ @X71(@X7EP@X71) Country or Region             @X08└───────────────────────────────────────┘@X70 @X7F│@X07"
  93.          PRINTLN "@X70└@X7F─────────────────────────────────────────────────────────────────────────────┘@X07"
  94.          INPUTSTR "(@X0FV@X0E)iew, Write User Information Command", Write_User_Information, 0Eh, 1, MASK_ALPHA(), FIELDLEN + GUIDE + UPCASE + LFBEFORE + ERASELINE
  95.      ELSE
  96.          PRINTLN "@X70└@X7F─────────────────────────────────────────────────────────────────────────────┘@X07"
  97.          INPUTSTR "(@X0FV@X0E)iew, Write User Information Command", Write_User_Information, 0Eh, 1, "abcdefghijqvABCDEFGHIJQV", FIELDLEN + GUIDE + UPCASE + LFBEFORE + ERASELINE
  98.      END IF
  99.  
  100.      IF (Write_User_Information = "A") GOSUB PASSWORD
  101.      IF (Write_User_Information = "B") GOSUB CITY_STATE
  102.      IF (Write_User_Information = "C") GOSUB DATA_PHONE
  103.      IF (Write_User_Information = "D") GOSUB HOME_PHONE
  104.      IF (Write_User_Information = "E") GOSUB CPU_BRAND
  105.      IF (Write_User_Information = "F") GOSUB MSG_CLEAR
  106.      IF (Write_User_Information = "G") GOSUB MSG_SCROLL
  107.      IF (Write_User_Information = "H") GOSUB MSG_HEADER
  108.      IF (Write_User_Information = "I") GOSUB MSG_FULLSCREEN
  109.      IF (Write_User_Information = "J") GOSUB MSG_COLUMNS
  110.  
  111.      IF (Write_User_Information = "K" & PSA(3)) GOSUB PSA_STREET_NUMBER1
  112.      IF (Write_User_Information = "L" & PSA(3)) GOSUB PSA_STREET_NUMBER2
  113.      IF (Write_User_Information = "M" & PSA(3)) GOSUB PSA_CITY
  114.      IF (Write_User_Information = "N" & PSA(3)) GOSUB PSA_PROVINCE_STATE
  115.      IF (Write_User_Information = "O" & PSA(3)) GOSUB PSA_ZIPCODE
  116.      IF (Write_User_Information = "P" & PSA(3)) GOSUB PSA_COUNTRY
  117.  
  118.      IF (Write_User_Information = "X" & PSA(1)) GOSUB PSA_ALIAS_NAME
  119.  
  120.      IF (Write_User_Information = "V") GOSUB VIEW_USER_STATS
  121.      IF (Write_User_Information = "Q") GOTO END_PROGRAM
  122.      IF (Write_User_Information = "") GOTO END_PROGRAM
  123.      GOTO BEGIN_MAIN
  124.  
  125. ;*****************************************************************************
  126. ;* Start of PPE GOTO'S AND GOSUB'S                                           *
  127. ;*****************************************************************************
  128.  
  129. :PASSWORD
  130.      IF (EXIST(PPEPATH() + "WUI_A")) DISPFILE PPEPATH() + "WUI_A", LANG + SEC + GRAPH
  131.  
  132.      PROMPTSTR 152, User_PassWord_One, 13, MASK_PWD(), FIELDLEN + GUIDE + UPCASE + LFBEFORE + ECHODOTS + LFAFTER
  133.      IF (User_PassWord_One = "") RETURN
  134.  
  135.      PROMPTSTR 111, User_PassWord_Two, 13, MASK_PWD(), FIELDLEN + GUIDE + UPCASE + LFBEFORE + ECHODOTS
  136.  
  137.      IF (User_PassWord_One <> User_PassWord_Two) THEN
  138.          PRINTLN
  139.          DISPTEXT 110, LFBEFORE + BELL
  140.          DELAY (30)
  141.          PRINTLN
  142.      ELSE
  143.          Save_User_Record = TRUE
  144.          U_PWD = User_PassWord_One
  145.      END IF
  146.  
  147.      User_PassWord_One = ""
  148.      User_PassWord_Two = ""
  149.      IF (Command_Line = "") RETURN
  150.      GOTO END_PROGRAM
  151.  
  152.  
  153. :CITY_STATE
  154.      Save_User_Record = TRUE
  155.      IF (EXIST(PPEPATH() + "WUI_B")) DISPFILE PPEPATH() + "WUI_B", LANG + SEC + GRAPH
  156.  
  157.      PROMPTSTR 265, U_CITY, 24, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  158.      IF (Command_Line = "") RETURN
  159.      GOTO END_PROGRAM
  160.  
  161.  
  162. :DATA_PHONE
  163.      Save_User_Record = TRUE
  164.      IF (EXIST(PPEPATH() + "WUI_C")) DISPFILE PPEPATH() + "WUI_C", LANG + SEC + GRAPH
  165.  
  166.      PROMPTSTR 113, U_BDPHONE, 13, MASK_NUM() + "-", FIELDLEN + GUIDE + UPCASE + LFBEFORE
  167.      IF (Command_Line = "") RETURN
  168.      GOTO END_PROGRAM
  169.  
  170.  
  171. :HOME_PHONE
  172.      Save_User_Record = TRUE
  173.      IF (EXIST(PPEPATH() + "WUI_D")) DISPFILE PPEPATH() + "WUI_D", LANG + SEC + GRAPH
  174.  
  175.      PROMPTSTR 114, U_HVPHONE, 13, MASK_NUM() + "-", FIELDLEN + GUIDE + UPCASE + LFBEFORE
  176.      IF (Command_Line = "") RETURN
  177.      GOTO END_PROGRAM
  178.  
  179.  
  180. :CPU_BRAND
  181.      Save_User_Record = TRUE
  182.      IF (EXIST(PPEPATH() + "WUI_E")) DISPFILE PPEPATH() + "WUI_E", LANG + SEC + GRAPH
  183.  
  184.      PROMPTSTR 2, U_CMNT1, 30, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  185.      IF (Command_Line = "") RETURN
  186.      GOTO END_PROGRAM
  187.  
  188.  
  189. :MSG_CLEAR
  190.      Save_User_Record = TRUE
  191.      IF (EXIST(PPEPATH() + "WUI_F")) DISPFILE PPEPATH() + "WUI_F", LANG + SEC + GRAPH
  192.  
  193.      PROMPTSTR 556, Message_Clear, 1, "YN", FIELDLEN + GUIDE + UPCASE + LFBEFORE + YESNO
  194.  
  195.      IF (Message_Clear = NOCHAR()) U_CLS = 0
  196.      IF (Message_Clear = YESCHAR()) U_CLS = 1
  197.      IF (Command_Line = "") RETURN
  198.      GOTO END_PROGRAM
  199.  
  200.  
  201. :MSG_SCROLL
  202.      Save_User_Record = TRUE
  203.      IF (EXIST(PPEPATH() + "WUI_G")) DISPFILE PPEPATH() + "WUI_G", LANG + SEC + GRAPH
  204.  
  205.      PROMPTSTR 627, Scroll_Screen, 1, "YN", FIELDLEN + GUIDE + UPCASE + LFBEFORE + YESNO
  206.  
  207.      IF (Scroll_Screen = NOCHAR()) U_SCROLL = 0
  208.      IF (Scroll_Screen = YESCHAR()) U_SCROLL = 1
  209.      IF (Command_Line = "") RETURN
  210.      GOTO END_PROGRAM
  211.  
  212.  
  213. :MSG_HEADER
  214.      Save_User_Record = TRUE
  215.      IF (EXIST(PPEPATH() + "WUI_H")) DISPFILE PPEPATH() + "WUI_H", LANG + SEC + GRAPH
  216.  
  217.      PROMPTSTR 628, Long_Header, 1, "YN", FIELDLEN + GUIDE + UPCASE + LFBEFORE + YESNO
  218.  
  219.      IF (Long_Header = NOCHAR()) U_LONGHDR = 0
  220.      IF (Long_Header = YESCHAR()) U_LONGHDR = 1
  221.      IF (Command_Line = "") RETURN
  222.      GOTO END_PROGRAM
  223.  
  224.  
  225. :MSG_FULLSCREEN
  226.      Save_User_Record = TRUE
  227.      IF (EXIST(PPEPATH() + "WUI_I")) DISPFILE PPEPATH() + "WUI_I", LANG + SEC + GRAPH
  228.  
  229.      PROMPTSTR 583, Full_Screen, 1, "YNA", FIELDLEN + GUIDE + UPCASE + LFBEFORE
  230.  
  231.      IF (Full_Screen = NOCHAR()) THEN
  232.          U_FSEP = 0
  233.          U_FSE = 0
  234.      ELSEIF (Full_Screen = YESCHAR())
  235.          U_FSEP = 0
  236.          U_FSE = 1
  237.      ELSEIF (Full_Screen = "A")
  238.          U_FSEP = 1
  239.          U_FSE = 0
  240.      END IF
  241.      IF (Command_Line = "") RETURN
  242.      GOTO END_PROGRAM
  243.  
  244.  
  245. :MSG_COLUMNS
  246.      Save_User_Record = TRUE
  247.      IF (EXIST(PPEPATH() + "WUI_J")) DISPFILE PPEPATH() + "WUI_J", LANG + SEC + GRAPH
  248.  
  249.      PROMPTSTR 637, Editor_WorkSpace, 1, "YN", FIELDLEN + GUIDE + UPCASE + LFBEFORE + YESNO
  250.  
  251.      IF (Editor_WorkSpace = NOCHAR()) U_DEF79 = 0
  252.      IF (Editor_WorkSpace = YESCHAR()) U_DEF79 = 1
  253.      IF (Command_Line = "") RETURN
  254.      GOTO END_PROGRAM
  255.  
  256.  
  257. :PSA_STREET_NUMBER1
  258.      Save_User_Record = TRUE
  259.      IF (EXIST(PPEPATH() + "WUI_K")) DISPFILE PPEPATH() + "WUI_K", LANG + SEC + GRAPH
  260.  
  261.      INPUTSTR "Street Address and Number", U_ADDR(0), 0Eh, 50, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  262.      IF (Command_Line = "") RETURN
  263.      GOTO END_PROGRAM
  264.  
  265.  
  266. :PSA_STREET_NUMBER2
  267.      Save_User_Record = TRUE
  268.      IF (EXIST(PPEPATH() + "WUI_L")) DISPFILE PPEPATH() + "WUI_L", LANG + SEC + GRAPH
  269.  
  270.      INPUTSTR "Suite or Apartment Number", U_ADDR(1), 0Eh, 50, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  271.      IF (Command_Line = "") RETURN
  272.      GOTO END_PROGRAM
  273.  
  274.  
  275. :PSA_CITY
  276.      Save_User_Record = TRUE
  277.      IF (EXIST(PPEPATH() + "WUI_M")) DISPFILE PPEPATH() + "WUI_M", LANG + SEC + GRAPH
  278.  
  279.      INPUTSTR "City, Town or Village", U_ADDR(2), 0Eh, 25, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  280.      IF (Command_Line = "") RETURN
  281.      GOTO END_PROGRAM
  282.  
  283.  
  284. :PSA_PROVINCE_STATE
  285.      Save_User_Record = TRUE
  286.      IF (EXIST(PPEPATH() + "WUI_N")) DISPFILE PPEPATH() + "WUI_N", LANG + SEC + GRAPH
  287.      
  288.      INPUTSTR "Province or State", U_ADDR(3), 0Eh, 10, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  289.      IF (Command_Line = "") RETURN
  290.      GOTO END_PROGRAM
  291.  
  292.  
  293. :PSA_ZIPCODE
  294.      Save_User_Record = TRUE
  295.      IF (EXIST(PPEPATH() + "WUI_O")) DISPFILE PPEPATH() + "WUI_O", LANG + SEC + GRAPH
  296.      
  297.      INPUTSTR "Postal/Zip Code", U_ADDR(4), 0Eh, 10, MASK_NUM() + "-", FIELDLEN + GUIDE + UPCASE + LFBEFORE
  298.      IF (Command_Line = "") RETURN
  299.      GOTO END_PROGRAM
  300.  
  301.  
  302. :PSA_COUNTRY
  303.      Save_User_Record = TRUE
  304.      IF (EXIST(PPEPATH() + "WUI_P")) DISPFILE PPEPATH() + "WUI_P", LANG + SEC + GRAPH
  305.      
  306.      INPUTSTR "Country or Region", U_ADDR(5), 0Eh, 15, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  307.      IF (Command_Line = "") RETURN
  308.      GOTO END_PROGRAM
  309.  
  310.  
  311. :PSA_ALIAS_NAME
  312.      IF (READLINE(PCBDAT(), 259) = "0" & (U_ALIAS <> "")) THEN
  313.          PRINTLN
  314.          PRINTLN "@X0CSorry, @FIRST@, You have already chosen an ALIAS name."
  315.          PRINTLN
  316.          PRINTLN "@X0EThe SysOp has disabled the ability to change your alias name.  You may leave a"
  317.          PRINTLN "@X0Ecomment to the System Operator to request a new alias name."
  318.          PRINTLN
  319.          WAIT
  320.      ELSE
  321.          Save_User_Record = TRUE
  322.          IF (EXIST(PPEPATH() + "ALIAS")) DISPFILE PPEPATH() + "ALIAS", LANG + SEC + GRAPH
  323.  
  324.          PROMPTSTR 690, U_ALIAS, 25, MASK_ASCII(), FIELDLEN + GUIDE + UPCASE + LFBEFORE
  325.          IF (U_RECNUM(U_ALIAS) <> -1) THEN
  326.              NEWLINES 2
  327.              DISPTEXT 256, LFAFTER + BELL + NEWLINE
  328.              Save_User_Record = 0
  329.  
  330.              WAIT
  331.          END IF
  332.      END IF
  333.  
  334.      IF (Command_Line = "") RETURN
  335.      GOTO END_PROGRAM
  336.  
  337.  
  338. :VIEW_USER_STATS
  339.      CLS
  340.      PRINTLN "@X70┌─────────────────────────────────────────────────────────────────────────────@X7F┐@X07"
  341.      PRINTLN "@X70│ @X74Security Level       @X70: @X71" + STRING(U_SEC) + "@POS:51@@X74Expert Mode      @X70: @X71" + Expert_Mode + "@POS:79@@X7F│@X07"
  342.      PRINTLN "@X70│ @X74Full Name            @X70: @X71" + U_NAME() + "@POS:51@@X74Protocol         @X70: @X71" + U_TRANS + "@POS:79@@X7F│@X07"
  343.      PRINTLN "@X70│ @X74City and State       @X70: @X71" + U_CITY + "@POS:51@@X74Page Lenght      @X70: @X71" + STRING(U_PAGELEN) + "@POS:79@@X7F│@X07"
  344.      PRINTLN "@X70│ @X74Business Phone       @X70: @X71" + U_BDPHONE + "@POS:51@@X74Reg Ex Date      @X70: @X71" + STRING(U_EXPDATE) + "@POS:79@@X7F│@X07"
  345.      PRINTLN "@X70│ @X74Home Phone           @X70: @X71" + U_HVPHONE + "@POS:51@@X74Days Left        @X70: @X71" + "@EXPDAYS:3R@" + "@POS:79@@X7F│@X07"
  346.      PRINTLN "@X70│ @X74Password             @X70: @X71" + U_PWD + "@POS:51@@X74Message Clear    @X70: @X71" + Message_Clear + "@POS:79@@X7F│@X07"
  347.      PRINTLN "@X70│ @X74@POS:51@@X74Full Scrn Editor @X70: @X71" + Full_Screen + "@POS:79@@X7F│@X07"
  348.      PRINTLN "@X70│ @X74Street Address       @X70: @X71" + RTRIM(U_ADDR(0), " ") + "@POS:51@@X7479-Column Editor @X70: @X71" + Editor_WorkSpace + "@POS:79@@X7F│@X07"
  349.      PRINTLN "@X70│ @X74Suite or Apartment # @X70: @X71" + RTRIM(U_ADDR(1), " ") + "@POS:51@@X74Scroll Long Msgs @X70: @X71" + Scroll_Screen + "@POS:79@@X7F│@X07"
  350.      PRINTLN "@X70│ @X74City/Town or Village @X70: @X71" + RTRIM(U_ADDR(2), " ") + "@POS:51@@X74Long Headers     @X70: @X71" + Long_Header + "@POS:79@@X7F│@X07"
  351.      PRINTLN "@X70│ @X74Province or State    @X70: @X71" + RTRIM(U_ADDR(3), " ") + "@POS:79@@X7F│@X07"
  352.      PRINTLN "@X70│ @X74Postal/Zip Code      @X70: @X71" + RTRIM(U_ADDR(4), " ") + "@POS:51@@X74Last Date on     @X70: @X71" + STRING(U_LDATE()) + "@POS:79@@X7F│@X07"
  353.      PRINTLN "@X70│ @X74Country or Region    @X70: @X71" + RTRIM(U_ADDR(5), " ") + "@POS:51@@X74Last Time on     @X70: @X71" + STRING(U_LTIME()) + "@POS:79@@X7F│@X07"
  354.      PRINTLN "@X70│ @X74@POS:51@Online Today @X70    : @X71" + STRING(U_TIMEON()) + " min.@POS:79@@X7F│@X07"
  355.      PRINTLN "@X70│ @X74Current ALIAS Name   @X70: @X71" + U_ALIAS + "@POS:79@@X7F│@X07"
  356.      PRINTLN "@X70└@X7F─────────────────────────────────────────────────────────────────────────────┘@X07"
  357.      PRINTLN
  358.  
  359.      WAIT
  360.      IF (Command_Line = "") RETURN
  361.      GOTO END_PROGRAM
  362.  
  363.  
  364. :GRAB_INFO
  365.      IF (U_EXPERT = 0) Expert_Mode = "OFF"
  366.      IF (U_EXPERT = 1) Expert_Mode = "ON "
  367.  
  368.      IF (U_CLS = 0) Message_Clear = NOCHAR()
  369.      IF (U_CLS = 1) Message_Clear = YESCHAR()
  370.  
  371.      IF ((U_FSEP = 0) & (U_FSE = 0)) Full_Screen = NOCHAR()
  372.      IF ((U_FSEP = 0) & (U_FSE = 1)) Full_Screen = YESCHAR()
  373.      IF ((U_FSEP = 1) & (U_FSE = 0)) Full_Screen = "A"
  374.  
  375.      IF (U_DEF79 = 0) Editor_WorkSpace = NOCHAR()
  376.      IF (U_DEF79 = 1) Editor_WorkSpace = YESCHAR()
  377.  
  378.      IF (U_SCROLL = 0) Scroll_Screen = NOCHAR()
  379.      IF (U_SCROLL = 1) Scroll_Screen = YESCHAR()
  380.  
  381.      IF (U_LONGHDR = 0) Long_Header = NOCHAR()
  382.      IF (U_LONGHDR = 1) Long_Header = YESCHAR()
  383.      RETURN
  384.  
  385.  
  386. :END_PROGRAM
  387.      IF (Save_User_Record = TRUE) THEN
  388.          IF (Command_Line <> "") PRINTLN
  389.          DISPTEXT 273, LFAFTER + LFBEFORE + BELL
  390.          PUTUSER
  391.      END IF
  392.      END
  393.