| 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 |