@andy_tratter No, that's not the way it should work.
Your G-code should begin with G01 (or G1) and include M03 to enable the laser.
If you want to learn another technique, take a look at G-code generated by T2Laser using Velocity Mode. It scans the line continuously and uses the feed rate to change the burn, much more efficient than changing laser power at each dot and it doesn't require PWM/TTL.
The normal method is to use the S value (spindle speed which we use for laser power) and change it for each grey scale change. T2Laser is intelligent and generates smaller G-code by only changing as needed so you will often see longer lines as you described.