home *** CD-ROM | disk | FTP | other *** search
/ No Fragments Archive 10: Diskmags / nf_archive_10.iso / MAGS / ST_USER / 1989 / USER1089.MSA / WD_COUNT.BAS < prev    next >
BASIC Source File  |  1985-11-19  |  875b  |  43 lines

  1. REM Word Counter
  2. REM Written in HiSoft Basic
  3. REM By R.A.Waddilove
  4.  
  5. LIBRARY "GEMAES"
  6.  
  7. WINDOW CLOSE
  8. alert$="[0][Enter file | to count][Ok]" : button%=FNform_alert%(1,alert$)
  9. file$=FNfilename$
  10. OPEN file$ FOR INPUT AS #1
  11. buffer$=INPUT$(LOF(1),#1)
  12. CLOSE #1
  13.  
  14. count%=0
  15. ptr&=SADD(buffer$)
  16. buffend&=ptr&+LEN(buffer$)
  17. WHILE ptr&<buffend&
  18.     IF (PEEKB(ptr&)>32 AND PEEKB(ptr&)<127) THEN INCR count% : CALL inword
  19.     INCR ptr&
  20. WEND
  21. alert$="[0][ "+file$+"="+STR$(count%)+" words][Quit|Another]"
  22. button%=FNform_alert%(1,alert$)
  23. IF button%=2 THEN RUN
  24. SYSTEM
  25.  
  26. SUB inword
  27. SHARED ptr&,buffend&,byte%
  28. DO
  29.     INCR ptr&
  30. LOOP UNTIL PEEKB(ptr&)<33 OR PEEKB(ptr&)>126 OR ptr&>buffend&
  31. END SUB
  32.  
  33. DEF FNfilename$
  34. path$="A:\*.*"
  35. name$=""
  36. ok%=0
  37. fsel_input path$,name$,ok%
  38. WHILE right$(path$,1)<>"\"
  39.     path$=LEFT$(path$,LEN(path$)-1)
  40. WEND
  41. FNfilename$=path$+name$
  42. END DEF
  43.