o9001
(Sequential S/N Sub Program)
(Reset #590 to STARTING S/N IF needed) 
(After S/N = 999999 it rolls over to 1)
(*****************************)
 IF [#590 GT 999999]  GOTO 979
 
#589 = #590
#524 = FIX[#589/100000]
#589 =[#589 - [#524*100000]]
#525 = FIX[#589/10000]
#589 = [#589 - [#525*10000]]
#526 = FIX[#589/1000]
#589 =[#589 - [#526*1000]]
#527 = FIX[#589/100]
#589 =[#589 - [#527*100]]
#528 = FIX[#589/10]
#589 = [#589- [#528 *10]]
#529 = #589

(**********************)
G90 G0 Z1.000
G0 G91 X.2 Y0  (<----Positon for S)
G0 X.075 Y0
G0 X0 Y.030
G90 G1 Z-.005
G91 G3 X-.150 Y0 I-.075
X.075 Y-.040 I.075
G2 X.075 Y-.040 J-.075
G2 X-.150 Y0 I-.075 
G90 G1 Z.050
G91 G0 X.075 Y.040

G0 G91 X.2 Y0  (<----Positon for /)
G91 G0 Y-.100 X-.075
G90 G1 Z-.005
G91G1 Y.200 X.150
G90 G0 Z.050
G91 G0 Y-.100 X-.075

G0 G91 X.2 Y0  (<----Positon for N)
G0 Y-.100 
G0 X-0.050
G90 G1 Z-.005
G91 G1 Y.200
G1 Y-.200 X.150
G1 Y.200
G90 G0 Z.050
G91 G0 X-.075 Y-.100

G0 G91 X.100 Y0  (<----Positon for :)
G0 X.075
G0 Y0.0625
G90 G1 Z-.005
G0 Z.050
G91 G0 Y-.125
G90 G1 Z-.005
G0 Z.050
G91 G0 Y.0625


G0 G91 X0.3 Y0.0 (<----POSITION HERE FOR 1st NUMBER)
G90
    (FIND FIRST DIGIT)
    IF[#524EQ0]GOTO 10
    IF[#524EQ1.]GOTO 11
    IF[#524EQ2.]GOTO 12
    IF[#524EQ3.]GOTO 13
    IF[#524EQ4.]GOTO 14
    IF[#524EQ5.]GOTO 15
    IF[#524EQ6.]GOTO 16
    IF[#524EQ7.]GOTO 17
    IF[#524EQ8.]GOTO 18
    IF[#524EQ9.]GOTO 19
    (SETTING ERROR)
    M00
    N10M98P4000
    GOTO 925
    N11M98P4001
    GOTO 925
    N12M98P4002
    GOTO 925
    N13M98P4003
    GOTO 925
    N14M98P4004
    GOTO 925
    N15M98P4005
    GOTO 925
    N16M98P4006
    GOTO 925
    N17M98P4007
    GOTO 925
    N18M98P4008
    GOTO 925
    N19M98P4009
    GOTO 925
    (FIND 2ND DIGIT)

    N925 G0G91X.3 Y0 (<----POSITION HERE FOR 2ND NUMBER)
    G90
    IF[#525EQ0]GOTO 20
    IF[#525EQ1.]GOTO 21
    IF[#525EQ2.]GOTO 22
    IF[#525EQ3.]GOTO 23
    IF[#525EQ4.]GOTO 24
    IF[#525EQ5.]GOTO 25
    IF[#525EQ6.]GOTO 26
    IF[#525EQ7.]GOTO 27
    IF[#525EQ8.]GOTO 28
    IF[#525EQ9.]GOTO 29
    (SETTING ERROR)
    M00
    N20M98P4000
    GOTO 950
    N21M98P4001
    GOTO 950
    N22M98P4002
    GOTO 950
    N23M98P4003
    GOTO 950
    N24M98P4004
    GOTO 950
    N25M98P4005
    GOTO 950
    N26M98P4006
    GOTO 950
    N27M98P4007
    GOTO 950
    N28M98P4008
    GOTO 950
    N29M98P4009
    GOTO 950

    (FIND 3RD DIGIT)

N950 G0G91X.3 Y0 (<----POSITION HERE FOR 3RD NUMBER)
    G90
    IF[#526EQ0]GOTO 30
    IF[#526EQ1.]GOTO 31
    IF[#526EQ2.]GOTO 32
    IF[#526EQ3.]GOTO 33
    IF[#526EQ4.]GOTO 34
    IF[#526EQ5.]GOTO 35
    IF[#526EQ6.]GOTO 36
    IF[#526EQ7.]GOTO 37
    IF[#526EQ8.]GOTO 38
    IF[#526EQ9.]GOTO 39
    (SETTING ERROR)
    M00
 N30
    M98P4000
    GOTO 975
 N31
    M98P4001
    GOTO 975
 N32
    M98P4002
    GOTO 975
 N33
    M98P4003
    GOTO 975
 N34
    M98P4004
    GOTO 975
 N35
    M98P4005
    GOTO 975
 N36 
    M98P4006
    GOTO 975
 N37 
    M98P4007
    GOTO 975
 N38
    M98P4008
    GOTO 975
 N39
    M98P4009

    
(Find 4th Digit)
N975 G0G91X.3 Y0 (<----POSITION HERE FOR 4th NUMBER)
    G90
    IF[#527EQ0] GOTO 40
    IF[#527EQ1.]GOTO 41
    IF[#527EQ2.]GOTO 42
    IF[#527EQ3.]GOTO 43
    IF[#527EQ4.]GOTO 44
    IF[#527EQ5.]GOTO 45
    IF[#527EQ6.]GOTO 46
    IF[#527EQ7.]GOTO 47
    IF[#527EQ8.]GOTO 48
    IF[#527EQ9.]GOTO 49
    (SETTING ERROR)
    M00
 N40
    M98P4000
    GOTO 976
 N41
    M98P4001
    GOTO 976
 N42
    M98P4002
    GOTO 976
 N43
    M98P4003
    GOTO 976
 N44
    M98P4004
    GOTO 976
 N45
    M98P4005
    GOTO 976
 N46 
    M98P4006
    GOTO 976
 N47 
    M98P4007
    GOTO 976
 N48
    M98P4008
    GOTO 976
 N49
    M98P4009

(Find 5th Digit)
N976 G0G91X.3 Y0 (<----POSITION HERE FOR 5th NUMBER)
    G90
    IF[#528EQ0]GOTO 50
    IF[#528EQ1.]GOTO 51
    IF[#528EQ2.]GOTO 52
    IF[#528EQ3.]GOTO 53
    IF[#528EQ4.]GOTO 54
    IF[#528EQ5.]GOTO 55
    IF[#528EQ6.]GOTO 56
    IF[#528EQ7.]GOTO 57
    IF[#528EQ8.]GOTO 58
    IF[#528EQ9.]GOTO 59
    (SETTING ERROR)
    M00
 N50
    M98P4000
    GOTO 977
 N51
    M98P4001
    GOTO 977
 N52
    M98P4002
    GOTO 977
 N53
    M98P4003
    GOTO 977
 N54
    M98P4004
    GOTO 977
 N55
    M98P4005
    GOTO 977
 N56 
    M98P4006
    GOTO 977
 N57 
    M98P4007
    GOTO 977
 N58
    M98P4008
    GOTO 977
 N59
    M98P4009

(Find 6th Digit)
N977 G0G91X.3 Y0 (<----POSITION HERE FOR 6th NUMBER)
    G90
    IF[#529EQ0]GOTO 60
    IF[#529EQ1.]GOTO 61
    IF[#529EQ2.]GOTO 62
    IF[#529EQ3.]GOTO 63
    IF[#529EQ4.]GOTO 64
    IF[#529EQ5.]GOTO 65
    IF[#529EQ6.]GOTO 66
    IF[#529EQ7.]GOTO 67
    IF[#529EQ8.]GOTO 68
    IF[#529EQ9.]GOTO 69
    (SETTING ERROR)
    M00
 N60
    M98P4000
    GOTO 978
 N61
    M98P4001
    GOTO 978
 N62
    M98P4002
    GOTO 978
 N63
    M98P4003
    GOTO 978
 N64
    M98P4004
    GOTO 978
 N65
    M98P4005
    GOTO 978
 N66 
    M98P4006
    GOTO 978
 N67 
    M98P4007
    GOTO 978
 N68
    M98P4008
    GOTO 978
 N69
    M98P4009
    (UPDATE AND TEST COUNTERS)

 N978 

#590 =[#590+1]

IF [#590 GT 999999] THEN #590 =1
Goto 980

 N979
(S/N larger than 999999 RESET)
G4P3
Goto 980
  
 N980
    M9 G90 G0 Z1.000 
    M99 (M30)

(****Number Code****)

    o4000 (ZERO)
    G91G0X-.0004Y.1076
    G90 G1Z-.005F20.
    G91 G1X.0176
    G2X.0374Y-.0194I-.0021J-.05
    X.0164Y-.0417I-.0488J-.0432
    G1X-.0009Y-.1012
    G2X-.0157Y-.0372I-.0527J.0004
    X-.0372Y-.0157I-.0375J.0371
    G1X-.0353
    G2X-.0372Y.0157I.0004J.0528
    X-.0157Y.0372I.0371J.0376
    G1Y.1059
    G2X.0157Y.0389I.0585J-.001
    X.0372Y.0175I.0382J-.033
    G1 X.0176
     G90 G0Z.05
    G91
    G0 Y-.1076
    G90
    M99

    o4001 (ONE)
    G91 G0 X.050 Y0
    Y-.100
    G90 G1Z-.005F20.
    G91 G1 Y.200
    G1 X-.050 Y-.025
    G90 G0Z.05
    G91 G0 Y-.175
    G90 G1 Z-.005
    G91 G1 X.100
    G90 G0 Z.050
    G91 G0 X-.050 Y.100
    M99

    o4002 (TWO)
    G91G0X-.071Y.0531
    G90 G1Z-.005F20.
    G91 G2X.0157Y.0375I.0535J-.0004
    X.0377Y.0159I.0379J-.0371
    G1X.0352
    G2X.0375Y-.0159I-.0005J-.0531
    X.0159Y-.0375I-.0373J-.038
    X-.0164Y-.0383I-.0527J-.0001
    G1X-.1256Y-.1213
    X.142
    G90 G0Z.05
    G91 G0 Y.100
    X-.071
    M99

    o4003 (THREE)
    G91G0X-.0605Y.0917
    G90 G1Z-.005F20.
    G91 G2X.0362Y.0159I.0366J-.0341
    G1X.034
    G2X.0357Y-.0159I-.0006J-.0494
    X.0151Y-.0379I-.04J-.0379
    X-.0151Y-.0379I-.0552
    X-.0357Y-.0159I-.0363J.0335
    X.0357Y-.0159I-.0006J-.0494
    X.0151Y-.0379I-.04J-.0379
    X-.0151Y-.0374I-.0546J.0002
    X-.0357Y-.0159I-.0363J.0335
    G1X-.034
    G2X-.0362Y.0154I.0002J.0505
    G90 G0Z.05
    G91 G0Y0.1
    X0.050
    M99

    o4004 (FOUR)
    G91 G0X.0353 Y-.1000
    G90 G1Z-.005F20.
    G91 Y.2117
    X-.1059Y-.1411
    X.1412
    G90 G0Z.05
    G91 G0 X-0.076
    G0 Y.0354
    M99

    o4005 (FIVE)
    G91G0X.0714
    Y.1071
    G90 G1Z-.005F20.
    G91 X-.1428
    Y-.0714
    X.0895
    G2X.0374Y-.0159I-.0005J-.0531
    X.0159Y-.0374I-.0372J-.0379
    G1Y-.0358
    G2X-.0159Y-.0378I-.0537J.0003
    X-.0374Y-.0159I-.0379J.0372
    G1X-.0357
    G2X-.0379Y.0159I.0002J.0536
    X-.0159Y.0374I.0372J.0379
    G90 G0Z.05
    G91 G0 Y0.050
    G0 X0.076
   
    M99

    o4006 (SIX)
    G91G0X.0555Y.091
    G90 G1Z-.005F20.
    G91 G3X-.0379Y.0155I-.0376J-.038
    G1X-.0352
    G3X-.0377Y-.0159I.0002J-.053
    X-.0157Y-.0375I.0378J-.0379
    G1Y-.1062
    G3X.0157Y-.0377I.0533J.0001
    X.0377Y-.0157I.0378J.0376
    G1X.0352
    G3X.0375Y.0157I-.0004J.0535
    X.0159Y.0377I-.0371J.0379
    G1Y.0352
    G3X-.0159Y.0375I-.0531J-.0005
    X-.0375Y.0159I-.038J-.0372
    G1X-.0352
    G3X-.0377Y-.0159I.0002J-.053
    X-.0157Y-.0375I.0378J-.0379
    G90 G0Z.05
    G91 Y.015 X.050
    M99

    o4007 (SEVEN)
    G91G0X-.0714Y.1071
    G90 G1Z-.005F20.
    G91 X.1428
    X-.1071Y-.2142
    G90 G0Z.05
    G91 G0 X.035 Y.1076
    M99

    o4008 (EIGHT)
    G91G0X0.Y.1061
    G90 G1Z-.005F20.
    G91 X.0176
    G2X.0373Y-.016I-.0004J-.0525
    X.0157Y-.0374I-.0378J-.0378
    X-.0157Y-.0372I-.0528J.0004
    X-.0373Y-.0157I-.0376J.0371
    G1X-.0352
    G3X-.0373Y-.0164I.0005J-.0519
    X-.0157Y-.0383I.0398J-.0386
    X.0159Y-.0361I.05J.0004
    X.0375Y-.0151I.0377J.0395
    G1X.0348
    G3X.0373Y.0151I-.0001J.0539
    X.0157Y.0361I-.0346J.0365
    X-.016Y.0383I-.0551J-.0004
    X-.037Y.0164I-.0378J-.0356
    G1X-.0352
    G2X-.0373Y.0157I.0003J.0528
    X-.0157Y.0372I.0371J.0376
    X.0157Y.0374I.0535J-.0004
    X.0373Y.016I.0377J-.0365
    G1X.0176
    G90 G0Z.05
    G91 Y-.1076
    M99

    o4009 (NINE)
    G91G0X-.0555Y-.091
    G90 G1Z-.005F20.
    G91 G3X.0379Y-.0155I.0376J.038
    G1X.0352
    G3X.0375Y.0157I-.0004J.0535
    X.0159Y.0377I-.0371J.0379
    G1Y.1062
    G3X-.0159Y.0375I-.0532J-.0005
    X-.0375Y.0159I-.038J-.0372
    G1X-.0352
    G3X-.0377Y-.0159I.0002J-.053
    X-.0157Y-.0375I.0378J-.0379
    G1Y-.0352
    G3X.0157Y-.0377I.0533J.0001
    X.0377Y-.0157I.0378J.0376
    G1X.0352
    G3X.0375Y.0157I-.0004J.0535
    X.0159Y.0377I-.0371J.0379
    G90 G0Z.05
    G91 G0 X-0.076 Y-.017
    M99

