' Macro for consecutive S/N engraving from MACH
Main
End

Sub main
Dim A As String
Dim Ch As String
Dim Cnt As Integer
Dim Value As String
SetVar(1303 , .250)  'LetterSpacing
Setvar(1300 , -0.005) ' Z Depth cutting
Setvar(1200 , 0.050) ' Safe Z 
'CPx= Getoemdro(0)
'CPy= Getoemdro(1)
SETIJMODE(1)
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

Value = Question( "What is the value ??" )   
Message(Value) 

A = Value
For Cnt=1 To Len(A)
  Ch=Mid(A,Cnt,1)
  Select Case Ch
    Case "0" ZERO
    Case "1" ONE
    Case "2" TWO
    Case "3" THREE
    Case "4" FOUR
    Case "5" FIVE
    Case "6" SIX
    Case "7" SEVEN
    Case "8" EIGHT
    Case "9" NINE
  End Select
Next

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))
SETIJMODE(1)
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend   

End Sub




Sub ZERO 
message "Zero"
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

Code "G91X.025"
Code "G91X.0419 Y.013"
Code "Z-.2"
Code "G1 Z-.06 F10."
Code "G91G3 Y.0539 I-.0741 J.027"
Code "G91X-.0374 I-.0187 J-.0066"
Code "G91Y-.0539 I.0741 J-.0269"
Code "G91X.0374 I.0187 J.0067"
Code "G0 Z.26"
Code "G91X.0045 Y-.013"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend 
End Sub 



Sub ONE
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

message "One"
Code "G91X.025"
Code "G91Y.0685"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91X.0114 Y.0115"
Code "G91Y-.08"
Code "G0 Z.26"
Code "G91X-.0114"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91X.0229"
Code "G0 Z.26"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend 
End Sub




Sub TWO 
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

message "Two"
Code "G91X.025"
Code "G91X.0017 Y.0685"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91G2 X.0444 Y-.0104 I.0205 J-.0123"
Code "G91X-.0059 Y-.0143 I-.0228 J.0011"
Code "G91X-.0206 Y-.0153 I-.1236 J.1441"
Code "G91G3 X-.0196 Y-.0285 I.0186 J-.0339"
Code "G91G1 X.0478"
Code "G0 Z.26"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend   
End Sub



Sub THREE
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

message "Three"

Code "G91X.025"
Code "G91X.0011 Y.0685"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91G2 X.0395 Y.0052 I.0221 J-.0151"
Code "G91X-.0164 Y-.0337 I-.0135 J-.0142"
Code "G91G0 Z.26"
Code "G91X.0057"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91G2 X.0119 Y-.0338 I-.0017 J-.0196"
Code "G91X-.0418 Y.0052 I-.0185 J.0222"
Code "G0 Z.26"
Code "G91X.048 Y-.0114"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend  
End Sub



Sub FOUR
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

message "Four"
Code "G91X.025"
Code "G91X.0414"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91Y.08"
Code "G91X-.0414 Y-.0612"
Code "G91X.0531"
Code "G0 Z.26"
Code "G91Y-.0188"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend   
End Sub



Sub FIVE
 Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

message "Five"
Code "G91X.025"
Code "G91X.0484 Y.0801"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91X-.0484"
Code "G91Y-.0355"
Code "G91G2 X.0458 Y-.0045 I.0205 J-.0268"
Code "G91X-.0245 Y-.0401 I-.0214 J-.0145"
Code "G91X-.0213 Y.0114 I0. J.0254"
Code "G0 Z.26"
Code "G91X.0501 Y-.0114"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend   
End Sub



Sub SIX 

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))


message "Six"
Code "G91X.025"
Code "G91X.048 Y.068"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91G3 X-.0434 Y-.0043 I-.0208 J-.0116"
Code "G91X-.0016 Y-.0457 I.0667 J-.0252"
Code "G91X.0457 Y-.0016 I.0231 J.0057"
Code "G91X-.0457 Y.0016 I-.0226 J.0073"
Code "G0 Z.26"
Code "G91X.0468 Y-.018"
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend   
End Sub 




Sub SEVEN
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))


message "Seven"
Code "G91X.025"
Code "G91Y.08"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91X.048"
Code "G91G3 X-.024 Y-.08 I.1214 J-.0801"
Code "G0 Z.26"
Code "G91X.024"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend   
End Sub




Sub EIGHT 

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

message "Eight"
Code "g90 G0  Z#1200 X[#1301 + .2250] Y#1302 "

Code "G91X.025"
Code "G91X.0214 Y.0428"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91G2 Y.0372 I0. J.0186"
Code "G91X.0237 Y-.0186 I.004 J-.0193"
Code "G91X-.0237 Y-.0186 I-.0195 J.0005"
Code "G91G3 Y-.0428 I0. J-.0214"
Code "G91X.0266 Y.0214 I.0042 J.0219"
Code "G91X-.0214 Y.0214 I-.0214 J0."
Code "G0 Z.26"
Code "G91X.0214 Y-.0428"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend   
End Sub




Sub NINE 
Setvar(1301, getdro(0))
Setvar(1302, getdro(1))


message "Nine"
Code "G91X.025"
Code "G91X.0018 Y.0122"
Code "Z-.03"
Code "G1 Z-.23"
Code "G91G3 X.0434 Y.0043 I.0208 J.0116"
Code "G91X.0016 Y.0457 I-.0667 J.0252"
Code "G91X-.0457 Y.0016 I-.0231 J-.0057"
Code "G91X.0457 Y-.0016 I.0226 J-.0073"
Code "G0 Z.26"
Code "G91X.003 Y-.0622"

Setvar(1301, getdro(0))
Setvar(1302, getdro(1))

While IsMoving()
Wend 
End Sub 

SETIJMODE(0)
CODE"G90"
CODE"M30"                
