daisy.ngc
1 G20 2 3 O100 sub ([f0] [f1] [f2] [f3]) 4 #61=#1 5 6 O110 if [#2 gt 0] 7 #62=#2 8 O110 else 9 #62=#1 10 O110 endif 11 12 O111 if [#3 gt 0] 13 #63=#3 14 O111 else 15 #63=#1 16 O111 endif 17 18 O112 if [#4 gt 0] 19 #64=#4 20 O112 else 21 #64=#1 22 O112 endif 23 24 #41=0 #42=0 #43=0 #44=0 25 G0 X0Y0Z0A0 26 G93 27 O100 endsub 28 29 O200 sub ([t] [p1] [p2] [p3] [p4]) 30 31 (Find new X) 32 #2=[#2*#1/#61] 33 O210 if [#41 gt 0] 34 #41=[#41-#2] 35 O210 else 36 #41=[#41+#2] 37 O210 endif 38 39 (Find new Y) 40 #3=[#3*#1/#62] 41 O220 if [#42 gt 0] 42 #42=[#42-#3] 43 O220 else 44 #42=[#42+#3] 45 O220 endif 46 47 (Find new Z) 48 #4=[#4*#1/#63] 49 O230 if [#43 gt 0] 50 #43=[#43-#4] 51 O230 else 52 #43=[#43+#4] 53 O230 endif 54 55 (Find new A) 56 #5=[#5*#1/#64] 57 O240 if [#44 gt 0] 58 #44=[#44-#5] 59 O240 else 60 #44=[#44+#5] 61 O240 endif 62 63 G1 X#41 Y#42 Z#43 A#44 F[60/#1] 64 65 O200 endsub 66 67 #100 = [440*1.781797] (Key of G) 68 69 (equal temperament chromatic scale) 70 #101 = [#100*1.059463] (g#) 71 #102 = [#100*1.122462] (a) 72 #103 = [#100*1.189207] (a#) 73 #104 = [#100*1.259921] (b) 74 #105 = [#100*1.334840] (c) 75 #106 = [#100*1.414214] (c#) 76 #107 = [#100*1.498307] (d) 77 #108 = [#100*1.587401] (d#) 78 #109 = [#100*1.681793] (e) 79 #110 = [#100*1.781797] (f) 80 #111 = [#100*1.887749] (f#) 81 82 (set XYZA axis scales) 83 O100 call [6400] [6400] [8000] [80] 84 85 G4P2 86 87 O200 call [1] [#107] [#100/2.0] [#104/2.0] [0] (Dai-) (G) 88 O200 call [1] [#104] [#100/2.0] [#104/2.0] [0] (-sy) 89 90 O200 call [1] [#100] [#100/2.0] [#104/2.0] [#107/2.0] (Dai-) 91 O200 call [1] [#107/2.0] [#100/2.0] [#104/2.0] [#110/2.0] (-sy) (G7) 92 93 O200 call [0.333] [#109/2.0] [#100/2.0] [#105/2.0] [#109/2.0] (Give) (C) 94 O200 call [0.333] [#111/2.0] [#100/2.0] [#105/2.0] [#109/2.0] (me) 95 O200 call [0.333] [#100] [#100/2.0] [#105/2.0] [#109/2.0] (your) 96 O200 call [0.667] [#109/2.0] [#102/2.0] [#105/2.0] [#100] (ans-) (Am7) 97 O200 call [0.333] [#100] [#102/2.0] [#105/2.0] [#100] (-wer) 98 99 O200 call [2] [#107/2.0] [#100/2.0] [#104/2.0] [#107/2.0] (do.) (G) 100 101 O200 call [1] [#102] [#111/4.0] [#105/2.0] [#107/2.0] (I'm) (D7) 102 O200 call [1] [#107] [#111/4.0] [#105/2.0] [#107/2.0] (half) 103 104 O200 call [1] [#104] [#100/2.0] [#104/2.0] [#107/2.0] (cra-) (G) 105 O200 call [1] [#100] [#100/2.0] [#104/2.0] [#109/2.0] (-zy) (Em) 106 107 O200 call [0.333] [#109/2.0] [#102/2.0] [#106/2.0] [#100] (All) (A7) 108 O200 call [0.333] [#111/2.0] [#102/2.0] [#106/2.0] [#100] (for) 109 O200 call [0.333] [#100] [#102/2.0] [#106/2.0] [#100] (the) 110 O200 call [0.667] [#102] [#102/2.0] [#106/2.0] [#100] (love) 111 O200 call [0.333] [#104] [#102/2.0] [#106/2.0] [#100] (of) 112 113 O200 call [1.667] [#102] [#111/4.0] [#105/2.0] [#107/2.0] (you..) (D7) 114 O200 call [0.333] [#104] [#111/4.0] [#105/2.0] [#107/2.0] (it) 115 116 O200 call [0.333] [#105] [#111/4.0] [#105/2.0] [#107/2.0] (won't) (D7) 117 O200 call [0.333] [#104] [#111/4.0] [#105/2.0] [#107/2.0] (be) 118 O200 call [0.333] [#102] [#111/4.0] [#105/2.0] [#107/2.0] (a) 119 120 O200 call [0.667] [#107] [#111/4.0] [#105/2.0] [#107/2.0] (sty-) 121 O200 call [0.333] [#104] [#111/4.0] [#105/2.0] [#107/2.0] (-lish) 122 123 O200 call [0.333] [#102] [#100/2.0] [#104/2.0] [#107/2.0] (marr-) (G) 124 O200 call [1.333] [#100] [#100/2.0] [#104/2.0] [#107/2.0] (iage...) 125 O200 call [0.333] [#102] [#100/2.0] [#104/2.0] [#107/2.0] (I) 126 127 O200 call [0.667] [#104] [#100/2.0] [#104/2.0] [#107/2.0] (can't) 128 O200 call [0.333] [#100] [#100/2.0] [#104/2.0] [#107/2.0] (a-) 129 130 O200 call [0.667] [#109/2.0] [#100/2.0] [#105/2.0] [#109/2.0] (-fford) (C) 131 O200 call [0.333] [#100] [#100/2.0] [#105/2.0] [#109/2.0] (a) 132 133 O200 call [0.333] [#109/2.0] [#100/2.0] [#104/2.0] [#107/2.0] (carr-) (G) 134 O200 call [1.333] [#107/2.0] [#100/2.0] [#104/2.0] [#107/2.0] (iage...) 135 O200 call [0.333] [#107/2.0] [#100/2.0] [#104/2.0] [#107/2.0] (but) 136 137 O200 call [0.667] [#100] [#100/2.0] [#104/2.0] [#107/2.0] (you'll) (G) 138 O200 call [0.333] [#104] [#100/2.0] [#104/2.0] [#107/2.0] (look) 139 O200 call [0.667] [#102] [#111/4.0] [#105/2.0] [#107/2.0] (sweet) (D7) 140 O200 call [0.333] [#107/2.0] [#111/4.0] [#105/2.0] [#107/2.0] (up-) 141 142 O200 call [0.667] [#100] [#100/2.0] [#104/2.0] [#107/2.0] (-on) (G) 143 O200 call [0.333] [#104] [#100/2.0] [#104/2.0] [#107/2.0] (the) 144 O200 call [0.333] [#102] [#111/4.0] [#105/2.0] [#107/2.0] (seat) (D7) 145 O200 call [0.333] [#104] [#111/4.0] [#105/2.0] [#107/2.0] (of) 146 O200 call [0.333] [#105] [#111/4.0] [#105/2.0] [#107/2.0] (a) 147 148 O200 call [0.333] [#107] [#100/2.0] [#104/2.0] [#107/2.0] (bi-) (G) 149 O200 call [0.333] [#104] [#100/2.0] [#104/2.0] [#107/2.0] (-cy-) 150 O200 call [0.333] [#100] [#100/2.0] [#104/2.0] [#107/2.0] (-cle) 151 O200 call [0.667] [#102] [#111/4.0] [#105/2.0] [#107/2.0] (built) (D7) 152 O200 call [0.333] [#107/2.0] [#111/4.0] [#105/2.0] [#107/2.0] (for) 153 154 O200 call [2] [#100] [#100/4.0] [#104/2.0] [#107/2.0] (two.) (G) 155 156 G4P2 157 G0 X0Y0Z0A0 158 159 M2