home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib32b.dsk / ONERR.EX2.bas < prev    next >
BASIC Source File  |  2023-02-26  |  2KB  |  37 lines

  1. 10  REM  **********************
  2. 20  REM  *     ONERR.EX2      *
  3. 30  REM  *  BY LOREN WRIGHT   *
  4. 40  REM  * COPYRIGHT (C) 1987 *
  5. 50  REM  * BY MICROSPARC, INC *
  6. 60  REM  * CONCORD, MA  01742 *
  7. 70  REM  **********************
  8. 80  REM  MAIN MENU
  9. 90  HOME : TEXT : VTAB 9: PRINT "1) LOAD FILE": PRINT : PRINT "2) SAVE FILE": PRINT : PRINT "3) CATALOG": PRINT : PRINT "4) QUIT"
  10. 100  VTAB 18: PRINT "ENTER NUMBER OF CHOICE:";: GET Z$: PRINT : IF Z$ <"1"  OR Z$ >"4"  THEN  PRINT  CHR$(7): GOTO 100
  11. 110  ON  VAL(Z$) GOSUB 120,170,210,240: GOTO 90
  12. 120 EF = 1: ONERR  GOTO 260
  13. 130  HOME : TEXT : VTAB 4: HTAB 15: PRINT "LOAD FILE": VTAB 22: HTAB 12: PRINT "RETURN FOR MENU": VTAB 12: HTAB 1: INPUT "FILE NAME: ";NA$: IF NA$ = ""  THEN  RETURN 
  14. 140  HOME : HGR 
  15. 150  PRINT  CHR$(4)"BLOAD"NA$",A$2000"
  16. 160  VTAB 22: PRINT "PRESS RETURN TO CONTINUE";: GET Z$: PRINT : RETURN 
  17. 170 EF = 2: ONERR  GOTO 260
  18. 180  HOME : TEXT : VTAB 4: HTAB 15: PRINT "SAVE FILE": VTAB 22: HTAB 12: PRINT "RETURN FOR MENU": VTAB 12: HTAB 1: INPUT "FILE NAME: ";NA$: IF NA$ = ""  THEN  RETURN 
  19. 190  PRINT  CHR$(4)"BSAVE"NA$",A$2000,L$2000"
  20. 200  HOME : VTAB 22: PRINT "PRESS RETURN TO CONTINUE";: GET Z$: PRINT : RETURN 
  21. 210 EF = 3: ONERR  GOTO 260
  22. 220  PRINT  CHR$(4) LEFT$("CATALOG",7 -4 *( PEEK(48896) = 76))
  23. 230  PRINT "PRESS RETURN TO CONTINUE";: GET Z$: PRINT : RETURN 
  24. 240  HOME : VTAB 12: INPUT "ARE YOU SURE YOU WANT TO QUIT? ";YN$: IF YN$ < >"Y"  AND YN$ < > CHR$(121)  THEN  RETURN 
  25. 250  END 
  26. 260  POKE 216,0:E =  PEEK(222):EL =  PEEK(218) +256 * PEEK(219): CALL  -3288
  27. 270  HOME : TEXT : VTAB 12
  28. 280  IF E = 4  THEN  PRINT "DISK IS WRITE-PROTECTED": GOTO 350
  29. 290  IF E = 6  THEN  PRINT "FILE NOT FOUND ON THIS DISK": GOTO 350
  30. 300  IF E = 8  THEN  PRINT "I/O ERROR--CHECK DRIVE DOOR": GOTO 350
  31. 310  IF E = 9  THEN  PRINT "DISK FULL": GOTO 350
  32. 320  IF E = 11  OR (E = 16  AND  PEEK(48896) = 76)  THEN  PRINT "ILLEGAL FILE NAME": GOTO 350
  33. 330  IF E = 13  THEN "FILE TYPE MISMATCH": GOTO 350
  34. 340  PRINT "ERROR "E" IN LINE "EL
  35. 350  VTAB 22: HTAB 4: PRINT "RETURN TO CONTINUE, ESCAPE TO QUIT";
  36. 360  GET Z$: PRINT : IF Z$ < > CHR$(27)  THEN  ON EF GOTO 120,170,210
  37. 370  END