Advertisement
Guest User

FILSEL-V2

a guest
Sep 22nd, 2018
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
QBasic 6.75 KB | None | 0 0
  1. ' Program developed by Jason Page of Page Telegram 2018.
  2. '_TITLE "FILSEL v2 by Jason Page of Page Telegram, (c) 2018."
  3. DIM forms$(100)
  4. DIM fils$(100000)
  5.  
  6. tog = 1
  7.  
  8. max = 48
  9. tt = 38
  10. fed = 0
  11. beg:
  12. SHELL "DIR/B exts.xyz > tmp.xyz"
  13. OPEN "tmp.xyz" FOR INPUT AS #1
  14. IF NOT (EOF(1)) THEN INPUT #1, ot$
  15. CLOSE #1
  16. IF ot$ <> "exts.xyz" THEN
  17.  
  18.     SHELL "echo. > exts.xyz"
  19.  
  20.     forms$(1) = "*.TXT"
  21.     forms$(2) = "*.CSV"
  22.     forms$(3) = "*.INI"
  23.     forms$(4) = "*.RTF"
  24.     forms$(5) = "*.ME "
  25.     forms$(6) = "*.BAS"
  26.     forms$(7) = "*.PHP"
  27.     forms$(8) = "*.   "
  28.     forms$(9) = "*.*  "
  29.     maxc = 9
  30.     SHELL "echo " + forms$(1) + " > exts.xyz"
  31.     FOR i = 2 TO 9
  32.         SHELL "echo " + forms$(i) + " >> exts.xyz"
  33.     NEXT i
  34.  
  35. ELSE
  36.     c = 0
  37.     OPEN "exts.xyz" FOR INPUT AS #1
  38.     DO
  39.  
  40.         IF NOT (EOF(1)) THEN
  41.             c = c + 1
  42.             INPUT #1, forms$(c)
  43.         END IF
  44.     LOOP UNTIL EOF(1) OR c > 99
  45.     maxc = c
  46.     CLOSE #1
  47. END IF
  48. SHELL "echo. > zext.xyz"
  49. CLS
  50. e = 1: f = 1
  51. COLOR 14, 1
  52. LOCATE 1, 1: PRINT "FILSEL by Page Telegram. Select your file & with what program to launch it with."
  53. COLOR 14, 0
  54. LOCATE 1 + 1, 1: PRINT "<     >  /\                                                   \/ ";
  55. COLOR 0, 15
  56. PRINT "[ENT][ESC][E/*]"
  57. LOCATE 2, 2: PRINT "     "
  58. LOCATE 1 + 1, 2: PRINT forms$(e)
  59. COLOR 15, 0
  60. 'IF fils$(1) = "" THEN fils$(1) = "NO FILE"
  61. IF tog = 2 THEN SHELL "DIR/B/S " + forms$(e) + " > zext.xyz" ELSE SHELL "dir/b " + forms$(e) + " > zext.xyz"
  62. OPEN "zext.xyz" FOR INPUT AS #1
  63. DO
  64.     fed = fed + 1
  65.     IF NOT (EOF(1)) THEN INPUT #1, fils$(fed)
  66. LOOP UNTIL EOF(1) OR fed > 99999
  67. CLOSE #1
  68. IF fmax <> 0 THEN
  69.     LOCATE 2, 12: PRINT "                                                   ":
  70.     f$ = RIGHT$(fils$(f), max)
  71.     LOCATE 2, tt - FIX(LEN(f$) / 2)
  72.  
  73.     PRINT f$
  74.     'PRINT fils$(f)
  75. ELSE
  76.     LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE"
  77. END IF
  78.  
  79. COLOR 15, 0
  80. LOCATE 2, 12: PRINT "                                                   "
  81. f$ = RIGHT$(fils$(f), max)
  82. LOCATE 2, tt - FIX(LEN(f$) / 2)
  83. PRINT f$
  84. 'PRINT fils$(f)
  85.  
  86. DO
  87.     SELECT CASE INKEY$
  88.         CASE "*":
  89.             IF tog = 1 THEN tog = 2 ELSE tog = 1
  90.             SOUND 1100, 1
  91.             SOUND 500, 1
  92.         CASE "E", "e"
  93.             COLOR 15, 8
  94.             LOCATE 15, 25: PRINT "                                  ": LOCATE 15, 25: INPUT "Open Using (try notepad)>", cmds$
  95.             IF LEN(cmds$) <> 0 THEN SHELL cmds$ + " exts.xyz" ELSE SHELL "notepad exts.xyz"
  96.             COLOR 15, 0
  97.             GOTO beg:
  98.         CASE CHR$(0) + "K"
  99.             f = 1
  100.             fmax = 0
  101.             'PRINT "Left"   Extensions
  102.             IF e > 1 THEN e = e - 1 ELSE SOUND 500, 1: SOUND 1000, 1
  103.             COLOR 0, 15
  104.             LOCATE 2, 2: PRINT "     "
  105.             LOCATE 1 + 1, 2: PRINT forms$(e)
  106.             COLOR 15, 0
  107.             IF LEN(fils$(1)) = 0 THEN LOCATE 12, 1: PRINT "NO FILE                   "
  108.             IF tog = 2 THEN SHELL "DIR/B/S " + forms$(e) + " > zext.xyz" ELSE SHELL "DIR/B " + forms$(e) + " > zext.xyz"
  109.             OPEN "zext.xyz" FOR INPUT AS #1
  110.             DO
  111.                 IF NOT (EOF(1)) THEN
  112.                     fmax = fmax + 1: INPUT #1, fils$(fmax):
  113.                 END IF
  114.  
  115.             LOOP UNTIL EOF(1)
  116.             CLOSE #1
  117.             IF fmax >= 1 THEN
  118.                 LOCATE 1 + 1, 12: PRINT "                                                   ":
  119.                 f$ = RIGHT$(fils$(f), max)
  120.                 LOCATE 2, tt - FIX(LEN(f$) / 2)
  121.  
  122.                 PRINT f$
  123.                 'PRINT fils$(f)
  124.             ELSE
  125.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE"
  126.             END IF
  127.  
  128.             'LOCATE 1+1, 12: PRINT fils$(f)
  129.  
  130.         CASE CHR$(0) + "M"
  131.             f = 1
  132.             fmax = 0
  133.             'PRINT "Right"  Extensions
  134.             COLOR 0, 15
  135.             IF e < maxc THEN e = e + 1 ELSE SOUND 500, 1: SOUND 1000, 1
  136.             LOCATE 2, 2: PRINT "     "
  137.  
  138.             LOCATE 1 + 1, 2: PRINT forms$(e)
  139.             COLOR 15, 0
  140.  
  141.             IF tog = 2 THEN SHELL "DIR/B/S " + forms$(e) + " > zext.xyz" ELSE SHELL "DIR/B " + forms$(e) + " > zext.xyz"
  142.             OPEN "zext.xyz" FOR INPUT AS #1
  143.             DO
  144.                 IF NOT (EOF(1)) THEN
  145.                     fmax = fmax + 1: INPUT #1, fils$(fmax):
  146.                 END IF
  147.             LOOP UNTIL EOF(1)
  148.             CLOSE #1
  149.             IF fmax >= 1 THEN
  150.                 LOCATE 1 + 1, 12: PRINT "                                                   "
  151.                 f$ = RIGHT$(fils$(f), max)
  152.                 LOCATE 2, tt - FIX(LEN(f$) / 2)
  153.  
  154.                 PRINT f$
  155.  
  156.             ELSE
  157.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE              "
  158.             END IF
  159.  
  160.             '         LOCATE 1+1, 12: PRINT fils$(f)
  161.  
  162.         CASE CHR$(0) + "H"
  163.             COLOR 15, 0
  164.             'PRINT "Up"     Files
  165.             IF f > 1 THEN f = f - 1 ELSE SOUND 500, 1: SOUND 1000, 1
  166.             IF fmax <> 0 THEN
  167.                 LOCATE 1 + 1, 12: PRINT "                                                   "
  168.                 f$ = RIGHT$(fils$(f), max)
  169.                 LOCATE 2, tt - FIX(LEN(f$) / 2)
  170.  
  171.                 PRINT f$
  172.  
  173.                 ' PRINT fils$(f)
  174.                 f$ = RIGHT$(fils$(f), max)
  175.                 LOCATE 2, tt - FIX(LEN(f$) / 2)
  176.  
  177.                 PRINT f$
  178.  
  179.             ELSE
  180.                 '                PRINT RIGHT$(fils$(f), max)
  181.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE              "
  182.             END IF
  183.  
  184.         CASE CHR$(0) + "P"
  185.             COLOR 15, 0
  186.             'PRINT "Down"   Files
  187.             IF f < fmax THEN f = f + 1 ELSE SOUND 500, 1: SOUND 1000, 1
  188.             IF fmax <> 0 THEN
  189.                 LOCATE 1 + 1, 12: PRINT "                                                   ":
  190.                 f$ = RIGHT$(fils$(f), max)
  191.                 LOCATE 2, tt - FIX(LEN(f$) / 2)
  192.  
  193.                 PRINT f$
  194.                 ' PRINT fils$(f)
  195.             ELSE
  196.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE              "
  197.             END IF
  198.         CASE CHR$(27): SHELL "del tmp.xyz": SHELL "del zext.xyz": SYSTEM
  199.         CASE CHR$(13)
  200.             COLOR 15, 8
  201.             LOCATE 15, 25: PRINT "                                  ": LOCATE 15, 25: INPUT "Open Using>", cmds$
  202.             SHELL cmds$ + " " + fils$(f)
  203.             COLOR 15, 0
  204.             LOCATE 15, 25: PRINT "                                  ":
  205.     END SELECT
  206. LOOP
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement