| Code | Parameters | Description | 
    | Motion | (X Y Z A B C U V W apply to all motions) | 
|---|
    | G0 |  | Rapid Move | 
    | G1 |  | Linear Move | 
    | G2, G3 | I J K or R P | Arc Move | 
    | G4 | P | Dwell | 
    | G5 | I J P Q | Cubic Spline | 
    | G5.1 | I J | Quadratic Spline | 
    | G5.2 | P L | NURBS | 
    | G38.2 - G38.5 |  | Straight Probe | 
    | G33 | K ($) | Spindle Synchronized Motion | 
    | G33.1 | K ($) | Rigid Tapping | 
    | G80 |  | Cancel Canned Cycle | 
    | Canned cycles | (X Y Z or U V W apply to canned cycles, depending on active plane) | 
|---|
    | G70 | Q (X) (Z) (D) (E) (P) | Lathe finishing cycle | 
    | G71 G72 | Q (X) (Z) (D) (E) (P) | Lathe roughing cycle | 
    | G73 | R L Q | Drilling Cycle, Chip Breaking | 
    | G74 | R L (P) ($) | Left-hand Tapping Cycle, Dwell | 
    | G76 | P Z I J R K Q H L E ($) | Threading Cycle | 
    | G81 | R L (P) | Drilling Cycle | 
    | G82 | R L (P) | Drilling Cycle, Dwell | 
    | G83 | R L Q | Drilling Cycle, Peck | 
    | G84 | R L (P) ($) | Right-hand Tapping Cycle, Dwell | 
    | G85 | R L (P) | Boring Cycle, Feed Out | 
    | G89 | R L (P) | Boring Cycle, Dwell, Feed Out | 
    | Distance Mode | 
|---|
    | G90, G91 |  | Distance Mode | 
    | G90.1, G91.1 |  | Arc Distance Mode | 
    | G7 |  | Lathe Diameter Mode | 
    | G8 |  | Lathe Radius Mode | 
    | Feed Rate Mode | 
|---|
    | G93, G94, G95 | S ($) | Feed Rate Mode | 
    | Spindle Control | 
|---|
    | M3, M4, M5 | S ($) | Spindle Control | 
    | M19 | R Q (P) ($) | Orient Spindle | 
    | G96, G97 | S D ($) | Spindle Control Mode | 
    | Coolant | 
|---|
    | M7, M8, M9 |  | Coolant Control | 
    | Tool Length Offset | 
|---|
    | G43 | H | Tool Length Offset | 
    | G43.1 |  | Dynamic Tool Length Offset | 
    | G43.2 | H | Apply additional Tool Length Offset | 
    | G49 |  | Cancel Tool Length Compensation | 
    | Stopping | 
|---|
    | M0, M1 |  | Program Pause | 
    | M2, M30 |  | Program End | 
    | M60 |  | Pallet Change Pause | 
    | Units | 
|---|
    | G20, G21 |  | Units (inch, mm) | 
    | Plane Selection | (affects G2, G3, G81…G89, G40…G42) | 
|---|
    | G17 - G19.1 |  | Plane Select | 
    | Cutter Radius Compensation | 
|---|
    | G40 |  | Compensation Off | 
    | G41,G42 | D | Cutter Compensation | 
    | G41.1, G42.1 | D L | Dynamic Cutter Compensation | 
    | Path Control Mode | 
|---|
    | G61 G61.1 |  | Exact Path Mode | 
    | G61.1 |  | Exact Stop Mode | 
    | G64 | P Q | Path Blending | 
    | Return Mode in Canned Cycles | 
|---|
    | G98, G99 |  | Canned Cycle Return Level | 
    | Other Modal Codes | 
|---|
    | F |  | Set Feed Rate | 
    | S | ($) | Set Spindle Speed | 
    | T |  | Select Tool | 
    | M48, M49 |  | Speed and Feed Override Control | 
    | M50 | P0 (off) or P1 (on) | Feed Override Control | 
    | M51 | P0 (off) or P1 (on) ($) | Spindle Speed Override Control | 
    | M52 | P0 (off) or P1 (on) | Adaptive Feed Control | 
    | M53 | P0 (off) or P1 (on) | Feed Stop Control | 
    | G54-G59.3 |  | Select Coordinate System | 
    | Flow-control Codes | 
|---|
    | o sub |  | Subroutines, sub/endsub call | 
    | o while |  | Looping, while/endwhile do/while | 
    | o if |  | Conditional, if/else/endif | 
    | o repeat |  | Repeat a loop of code | 
    | [] |  | Indirection | 
    | o call |  | Call named file | 
    | M70 |  | Save modal state | 
    | M71 |  | Invalidate stored state | 
    | M72 |  | Restore modal state | 
    | M73 |  | Save and Auto-restore modal state | 
    | Input/Output Codes | 
|---|
    | M62 - M65 | P | Digital Output Control | 
    | M66 | P E L Q | Wait on Input | 
    | M67 | T | Analog Output, Synchronized | 
    | M68 | T | Analog Output, Immediate | 
    | Non-modal Codes | 
|---|
    | M6 | T | Tool Change | 
    | M61 | Q | Set Current Tool | 
    | G10 L0 |  | Reload Tool Table Data | 
    | G10 L1 | P Q R | Set Tool Table | 
    | G10 L10 | P | Set Tool Table | 
    | G10 L11 | P | Set Tool Table | 
    | G10 L2 | P R | Set Coordinate System | 
    | G10 L20 | P | Set Coordinate System | 
    | G28, G28.1 |  | Go/Set Predefined Position | 
    | G30, G30.1 |  | Go/Set Predefined Position | 
    | G53 |  | Move in Machine Coordinates | 
    | G52, G92 |  | Coordinate System Offset | 
    | G92.1, G92.2 |  | Reset G92 Offsets | 
    | G92.3 |  | Restore G92 Offsets | 
    | M101 - M199 | P Q | User Defined Commands | 
    | Comments & Messages | 
|---|
    | ; (…) |  | Comments | 
    | (MSG,…) |  | Messages | 
    | (DEBUG,…) |  | Debug Messages | 
    | (PRINT,…) |  | Print Messages |