Programming instructions
166
Intermec Fingerprint 6.13 – Programmer's Guide
Continued!
16. ERROR-HANDLING, cont'd.
4. Error-Handling
Program, cont'd.
Listing of ERRHAND.PRG Utility Program
10 PROGNO$ = "Ver. 1.2 92-01-10"
15 NORDIS1$ = "TEST PROGRAM" :
NORDIS2$ = "VERSION 1.2"
20 GOSUB 700000 : 'Initiate
100000 'Error routine
100010 EFLAG% = ERR
100050 'PRINT EFLAG%:'Activate for debug
100060 LASTERROR% = EFLAG%
100200 RESUME NEXT
160000 'PRINT "Last error = ";LASTERROR%:
'Activate for debug
160050 'IF LASTERROR% <> 0 THEN PRINT "At line ";ERL
160100 LASTERROR% = 0
160200 RETURN
200000 'Error handling routine
200010 IF EFLAG% = 1006 THEN GOTO 200040:
'Formfeed instead of print
200020 LED (1) ON : LED (0) OFF : BUSY
200030 SOUND 400, 10
200040 IF EFLAG% = 1031 THEN GOSUB 300000
200050 IF EFLAG% = 1005 THEN GOSUB 310000
200060 IF EFLAG% = 1006 THEN GOSUB 320000
200070 IF EFLAG% = 1022 THEN GOSUB 330000
200080 IF EFLAG% = 1027 THEN GOSUB 340000
200090 DISP1$ = NORDIS1$ : DISP2$ = NORDIS2$
200100 GOSUB 600000
200110 LED (1) OFF : LED (0) ON : READY
200400 RETURN
300000 'Error 1031 Next label not found
300010 DISP1$ = "LABEL NOT FOUND"
300020 DISP2$ = "ERR NO. " + STR$ (ERR)
300030 GOSUB 600000
300040 EFLAG% = 0
300050 FORMFEED
300060 IF EFLAG% = 1031 THEN GOTO 300040
300200 RETURN
310000 'Error 1005 Out of paper
310010 DISP1$ = "OUT OF PAPER"
310020 DISP2$ = "ERR NO. " + STR$ (ERR)
310030 GOSUB 600000
310040 IF (PRSTAT AND 1)=0 THEN GOTO 310040:
'Wait until head lifted
310050 EFLAG% = 0
310060 IF (PRSTAT AND 1) = 0 THEN FORMFEED
ELSE GOTO 310060
310070 IF EFLAG% = 1005 THEN GOTO 310040
310080 IF EFLAG% = 1031 THEN GOSUB 300000
310200 RETURN
320000 'Error 1006 No field to print
320010 GOSUB 400000
320200 RETURN