home *** CD-ROM | disk | FTP | other *** search
/ 17 Bit Software 1: Collection A / 17Bit_Collection_A.iso / files / 35.dms / 35.adf / menu1.bas < prev    next >
BASIC Source File  |  1988-05-22  |  2KB  |  59 lines

  1. 1     rem mouse.menu John R Blackburn Nov 1985
  2. 4     lx=1:ly=3:lp=1
  3. 6     s1$="please be patient while i am surching for basic programs"
  4. 7     s2$="i am now loading "
  5. 8     s3$="you have selected"
  6. 10    screen 1,1,0
  7. 20    dim a$(50)
  8. 30    print at (30,10) inverse(1) "SEARCHING FOR BASIC PROGRAMS"
  9. 31    print at (0,0)
  10. 32    ss$=s1$:gosub 500
  11. 35    chdir "ram:"
  12. 50    shell "list df0: p #?.bas quick to list.prg"
  13. 60    open "i",#2,"list.prg"
  14. 70    for x = 0 to 41
  15. 80    line input#2, a$(x)
  16. 90    if not eof(2) then goto 100
  17. 95    y=x: goto 108
  18. 100   next x
  19. 108   close #2:chdir "df0:"
  20. 110   scnclr:print at (10,1) inverse(1) "PRESS LEFT MOUSE BUTTON TO LOAD SELECTED PROGRAM"
  21. 111   for x = 1 to (y-1)
  22. 112   t = instr(1,a$(x),"."): t=t-1
  23. 114   a$(x)=left$(a$(x),t)
  24. 116   px = 1
  25. 117   if x>20 then px = 40
  26. 118   py=x+2
  27. 119   if x>20 then py=(x-20)+2
  28. 120   print at (px,py) x; a$(x)
  29. 130   next x
  30. 200   ask mouse mx%,my%,b%
  31. 210   if b%=4 then goto 400
  32. 300   if my%<18 then goto 200
  33. 305   if my%> 175 then goto 200
  34. 310   p= fix((my%-10)/8)
  35. 320   if mx%>320 then p=p+20
  36. 330   if p<1 or p> (y-1) then goto 200
  37. 350   px=1
  38. 355   if p>20 then px=40
  39. 360   py=p+2
  40. 365   if p>20 then py=(p-20)+2
  41. 368   if px=lx and py=ly then goto 200
  42. 369   print at (lx,ly) lp; a$(lp)
  43. 370   print at (px,py) inverse(1) p; a$(p)
  44. 371   print at (0,0)
  45. 375   lx=px:ly=py:lp=p
  46. 380   ss$=s3$+a$(p):gosub 500
  47. 384   sleep 10^6
  48. 385   ask mouse mx%,my%,b%
  49. 386   if b%=4 then goto 400
  50. 387   sleep 10^6
  51. 395   goto 200
  52. 400   scnclr:print at (30,10) inverse(1) "LOADING ";a$(p)
  53. 401   print at (0,0)
  54. 402   ss$=s2$+a$(p):gosub 500
  55. 410   chain a$(p)
  56. 500   s$=translate$(ss$)
  57. 510   s%=narrate(s$)
  58. 520   return
  59.