Attached is the M1502
Basically everything after what I added in the other post is just g-code.
It works flawlessly if there is no leading Zeros (all real numbers).
Thank you,
Mike in MN
Here is the code in the attached file (The g-code is incomplete as of right now with regards to the "Zs" I will absolute code them.)
' 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"