Strippit  HECC80-Control
G  &  M   Programming Codes
For the Most Part,  Strippit Published  Excellent Manuals  for their
HECC80 Control Punch Machines  back in the 1970's and 1980's.

However,  Strippit's NC Programming Manuals  Included Very Few
Programming Examples  and was  Never Updated to
Even List All  G  and  M  Programming Codes  their Controls Used!
Even So,  You Should get a  Programming Manual  if you do not have one!
We can Supply Programming Manual if your was  "Lost".

So I will List  HECC80-Control Codes  here with their  Function and a Brief Description,
and a  Couple of  Test-Programs  I use,  as  Programming Examples.

Note that this  G-Code  Programming Language  is a  Very Loose Standard that
Different Machine and Control Manufactures did NOT Adhere to Closely.

So these Codes are Presented as  "Strippit  HECC80  Control Codes"  Only, 
and  may Not be Same as used on Other Machine-Tools,  and  May Not even be
the Same on all Versions of Strippit's Own Machines,  which  Used Various 
HECC80/1,  HECC80/750,  HECC80/28,  HECC80/3,  Fanuc,  MAC,  and  IBM-P.C.  Controls.

  Strippit  HECC80 Control  Punch Press Codes

N          Optional  Program-Line Block-Number.   For Programmer's Convenience Only  as
             Control Does Not use Block Numbers for Anything.   Example,   Block 6 is  N006

M00      Cycle Stop

M02      End of Program.    Not usually used or needed.

M08      Tool Lube On,  Activates Spray Mist Lubricator.   Only on some 33-Station
             Machines and  No One uses.   Who wants Operators to Breath Oil Fumes?

M09      Tool Lube Off

M30      Rewind.   Rewind Stop-Code  (a Percent Sign)   %    Must Appear in Program Before
             M30 Code.   Note that  HECC80 Control does Not Need Rewind as Control will
             Automatically Loop-Around to Beginning of Program.   This Code is Carry-Over from
             Old Paper-Tape Days when Paper-Tape Programs were  "Rewind"  to the Beginning.

M70      Low-Speed  Press-Drive

M72      High-Speed  Press-Drive.  2-Speed Press-Drive Machines automaticly go to hi-speed.

M74      Progressive Move  "Canned-Cycle".     Note,  There are Several  "Canned-Cycle"
             Codes and it means a Whole Sequence of Events that are Performed by just 1 Code.

M75      Load Position.    Axis is Moved to your Selected Positions,  Turns-Off  All Modal
             Codes that were ON,   and  Stops Program  for you to  Load your Part-Sheet.

M81      Post Punch Delay.    A  Move-Delay After Punch of  100  or  250 msec.  Selected by
             Red-Switch on Front Panel Controller Board  in  Slot #7.   This allows Extra Time for
             Tool to Strip Out of Part,  after Punch,  so there is  Less Change of a Part-Tool Jam.
              A  Modal Command,  stays  On  &  Active  Until  Turned-Off by Code.

M82      End  Post Punch Delay.    

G00      Point to Point  Punching Mode.   Used to go Back to  Point to Point Punching
             After a  Nibble or Cutting  Mode.

G01      Linear  (Straight Line)  Nibble Mode  (Contouring)

G02      Circular Nibble  (Contouring),  Clockwise-Direction

G03      Circular Nibble  (Contouring),  Counter-Clockwise Direction

G60      Slow Feed,  750 Inch Per Minute Axis Speed.   I Like Using  "F"  Feedrates than  G60

G61      Remove Slow Feed,  Go to  Normal Full-Speed  (Machine Dependent)  Feedrate

G67      Turn the Punch Off

G68      Turn the Punch Back On

G69      Retract  X  &  Y  Axis  to   "Home"  Position  and  T  Axis  (Tool Turret)
             Retracts to  Station  T01.     Not to be Confused with   "Load Position".  

G70      Dimensions are in  Inch Input

G71      Dimensions are in  Metric Input

G84      Tapping Head Canned-Cycle,  No HECC80 Machine has Tapping Heads Anymore

G90      Absolute  Input

G91      Incremental  Input

G92      Absolute  Preset

X          X Axis  Position Command.    Dimensions are in  .001 Inch  or  .01 Millimeter.   
            Assumed to be Positive  Unless there is a Minus Sign.  
            Trailing Zeros can be used,   but  are Not needed.

            There is Less Confusion if you Always use a Decimal Point.
            Example,   X 48 Inches.     In 5-Digit Mode,  The Following
            are  All the Same as far as  HECC80 Control  is Concerned;
            X48     X+48     X48.     X+48.     X48000     X+48000     X48.000     X+48.000
            I prefer   X48.     If you Always use Decimal Points,  Control will  Never be
            Confused by 5 or 6  Digit Programs,  or  the 5 or 6  Digit Control-Switch Settings.
            In  6 Digit Mode  without a Decimal Point,  Control would see  X48  as  480 Inches!

Y         Y Axis Position Command.     Same as  X Above.

T         Turret Tool Station Command.    Expressed as  T  with  2 Digit Station Number
            puts that  Station Under the Punch-Ram.     Example,  Tool-Station #6  is   T06

F          F  Codes are,  In That Special Strippit-WayConfusingly used in  Different Ways.

            In  Normal  Point to Point Punching,  
            F  can  (Feedrate is Optional)  be used to  Set Feedrate Speed on  X and Y Axis
            in 1 Inch Increments between  1 Inch Per Minute  and  Full Speed.

            For Example,  on a FC1000/3 Machine  the Axis Move at Normal Full-Speed of
            3000 IPM  unless a Feedrate is Specified.   So I could Improve Accuracy or Keep
            Large Parts from Pulling-Out of Workclamps by  Slowing  X and Y Axis Speed.  
            Perhaps  I would use   F15  for  1500 IPM,  or   F1  for  1000 IPM  Feedrate Speed.
            Add the   F15   to the  First Line of Code  After  Load-Position Block.

            In  Nibble Contouring Mode,    F  is  Used to Set  Actual Bite-Size of the Nibbling.

            In Most  HECC80/1 Machines  you can use   F040   to   F200  Maximum which
            corresponds to a  Nibble-Bite-Size of  .040  to  .200 Inch.   Undocumented,  But
            Decimal Points seem Ok with   F.2   Same as   F200   which is  .200 Inch  Bite.
            In Metric Mode   F100   to   F500  Maximum corresponds to  1.00mm  to  5.00 mm.

            In Most  HECC80/3 Machines,  In Normal  High-Speed  Press-Drive Mode  (M72)
            you can use   F040   to   F200  Max.  which is Nibble-Bite of  .040  to  .200 Inch.
            In Optional  Low-Speed  Press-Drive Mode  (M70)  you can use   F040   to   F500
            Max.  which is  Nibble-Bite of  .040  to  .500 Inch.

            In some  Laser and Plasma Continuous-Cutting Machines,   F  can be used as a
            Operator-Added  Feedrate-Override  as a  Percent  %  of  Programmed Feedrate.

I           Circular Interpolation Parameter for  X-Axis.     I  Data is Distance from
            Start-Point  to the Center of Curvature of the Arc,   and  Must be Sined.
            When in 5 Digit Mode,  Values from  00000  to  99999  may be used.
            In 6 Digit Mode  (Including Metric),  Values from  000000  to  999999  may be used.

J          Circular Interpolation Parameter for  Y-Axis.   
            Similar to  I Data word,  Except  J  is Distance from  Start-Point of Arc to
            Center of Curvature of the Arc  Measured Parallel to Y-Axis.

This page was last updated: February 7, 2023
  Additional HECC80 Control Laser & Plasma Cutting Codes

G00    End Cutting Mode

G01    Linear Cut

G02    Circular Cut,  Clockwise Direction

G03    Circular Cut,  Counter Clockwise Direction

G04    Dwell

G25      Set Offsets  --  The Following Offsets May be Defined:
                 X   --   Cutter Width for  G41  and  G42  Codes
                 Y   --   Material Thickness,   For  FC1500/45  Only
                  I   --   Cutting Head Position in  X  Axis
                 J   --   Cutting Head Position in  Y  Axis
                 F   --   Feed Rate Override,   in  %  of Programmed Feedrate
                 D  --   Duty Cycle  and  Pulse-Frequency,    Old  500 Watt Lasers Only

G40      Cutter Width Compensation Off

G41      Left  Cutter Compensation

G42      Right  Cutter Compensation

G63      Prepare to Cut  --  Pulse Mode,  Laser Only

G64      Prepare to Cut  --  Continuous

G65      Stop Mode  --  Used for Sharp Corners

G66      Go Mode  --  Used to Blend from one Cut to Another Cut

G09      Suspend Go Mode for a Single Block

M63      Air Assist Gas,  Laser Only

M64      Oxygen Assist Gas,  Laser Only

M65      Plasma-Head Up

M66      Plasma-Head Down

M67      Laser Beam  or  Plasma Torch Off

M68      Laser Beam  or  Plasma Torch On

  Additional  HECC80 Control  Load  &  Un-Loader  Codes

G82    A  "Canned-Cycle"  that  Combines Actions;   Pick Up Sheet,   Load,   Gage Sheet,
          and   Un-Load Finished Sheet.   
          Or  the Individual Actions May Be Programmed with Following  M Codes;
               M76   --   Pick Up Sheet
               M78   --   Gage Sheet in  Y
               M77   --   Gage Sheet in  X
               M79   --   Unload Finished Sheet

G83    Same as  G82  Except Transfer to Next Machine

G85    Load and Stack Sheets with No Punching

G86    Load and Transfer Sheets with No Punching


1  --  Not all Part-Programs  Need  or  Use  All Available Codes!

2  --  Different HECC80 Control Versions can and do use Codes in Different ways.

3  --  The Same Codes are Sometimes Confusingly Used in Very Different Ways
        Depending on the Operation Type.    Example,  G67  can be Punch-Off, 
        But  G67  can also be Beam or Torch Off  on a Laser or Plasma Cycle.

4  --  You can Add Comment to your Programs to Help make Program Easier to
        Understand,  or  to Help Machine Operator Set-Up Machine to Run Parts.
        Just put your  Comments inside Brackets  like this;
        (Comment inside Brackets  are  Ignored by HECC80 Controls)

5  --  Programs will be In  Absolute Mode,  unless you tell Control Differently with Codes.

6  --  Add Spaces Between  X, Y, T,  Etc.  to make it  Easier to Read,  Control Does Not Care!

7  --  HECC80 Type Programming  Must  be  All Capital Letters.

8  --  Some Codes are  "Modal",  Like  G68  or  F,   and  they Stay-On in All Subsequent
        Blocks  Until Turned-Off,  or  are Turned-Off at End of Program by  M02,  M30,  or  M75.

9  --  Programs with X and Y Moves Over 100 Inches,  and  Metric Programs,  will Need
        Panel-Switch Turned to  6-Digit  Rather than  5-Digit.    Personally,  it Seems there
        would be Less Confusion if  All Programs were done in  6-Digits.

10 --  HECC80/1  Controls  Read First Block of a Program then  "Looks"  for the Hidden
        Carriage-Return Character at  End of the Block,  to  Automatically Decide if it is 
        EIA  or  ASCII  Code.    Because of this 1 time Process, 
        Information in the First Block of Your Part-Program is  Ignored  and  Dropped!

        To Avoid this Problem,  I Set-Up the 
        P.C. File-Transfer Program to Insert a  Carriage-Return Character  at  Front of Your
        Part-Programs to be Downloaded.    Or,  you can Start Your Part-Programs with a 
        "Dummy-Block"    N000   for the Control to use for this Purpose.
        Note,   HECC80/3  Controls  do Not  have this Problem.

Program Examples;

Here are 2 Programs,  "TEST2"  and  "Circles"  that I use to Exercise and Test Circuit Boards
on my HECC80 Control Test Strippit Machines that Customer's have Sent-In to be Repaired.
Programs are Not Actual Part Programs,   But  Do Test  All Machine Operation Functions.

My Comment  at  End of Each Code-Line are  NOT part of the Program.

Bear-In-Mind  that these  2 Programs were written for
FC1000/2  &  FC1000/3  Machines which have Table Size / Load Position of  X48.  and  Y38.

FC1250/30/1500  Machines with Table Size / Load Position of  X60.  and  Y50.  will Also run OK.

But  FC750  Machines have Smaller Table Size / Load Position of  X40.  and  Y30.  and
will Need to have X and Y Dimensions Reduced  or  X and Y Axis will Run into Table Limits!

( TEST2  Program,  Written for a  HECC80 Control FC1000  Size Machine )
( Put  1 Inch Nibble-Tool  in Turret Station T02 )

N001 G69                                  ---  Homes   X, Y, T  Axis  so Control Knows Axis-Position after
                                                        Machine Start-Up.   Normally,  you should  NOT have a  G69  
                                                        in your Program.   Remove This Block Completely!
                                                        Why Home  All 3 Axis  Every Time You Run Program?
                                                        Just have Machine Operator  Home  X, Y, T  Axis
                                                        1-Time  with  "Home"  Buttons  on Control,  at Start-Up!

N002 X48. Y38. M75                 ---  Go to  Load Position  X 48  &  Y 38  Inches  and Stop

N003 X40. T05 G68 F15           ---  Set  Axis Speed to 1500 I.P.M.,   go to  X 40 Inches, 
                                                        Put Turret Station #5 Under Punch-Ram,  Turn-On Punch,
                                                        Punch,  and  Continue on to  Next Code Block

N004 X10.                                  ---  Go to  X 10 Inches and Punch
N005 X40.                                  ---  Go to  X 40 Inches and Punch
N006 X39.                                  ---  Go to  X 39 Inches and Punch
N007 X40.                                  ---  Go to  X 40 Inches and Punch
N008 X39.                                  ---  Go to  X 39 Inches and Punch
N009 X40.                                  ---  Go to  X 40 Inches and Punch
N010 Y35. T12                          ---  Go to  Y 35 Inches,  Change to Station #12,  and Punch
N011 Y05.                                 ---  Go to  Y 5 Inches and Punch
N012 Y35.                                 ---  Go to  Y 35 Inches and Punch
N013 Y34.                                 ---  Go to  Y 34 Inches and Punch
N014 Y35.                                 ---  Go to  Y 35 Inches and Punch
N015 Y34.                                 ---  Go to  Y 34 Inches and Punch
N016 Y35. T02                          ---  Put Station #2 under Ram,   go to Y 35 Inches,  Punch
N017 G01 X30.  F.2                   ---  Linear Nibble   X-Axis,  use  .200 Inch Bites
N018 G01 Y25.  F.2                   ---  Linear Nibble   Y-Axis,  use  .200 Inch Bites
N019 G01 X40.  F.2                   ---  Linear Nibble   X-Axis,  use  .200 Inch Bites
N020 G01 Y35.  F.2                   ---  Linear Nibble   X-Axis,  use  .200 Inch Bites
N021 G00 X20. Y20.                 ---  Go Back to  Point to Point  Punching Mode,
                                                        Go to  X 20  and  Y 20 Inches,  and  Punch
N022 X25. Y25.                         ---  Punch at  X and Y  25 Inches
N023 X30. Y30.                         ---  Punch at  X and Y  30 Inches

N024 X48. T11 G67                   ---  Note,  FC1000's Only have 48 Inches of Travel in X Axis.
                                                   "Get Ready"  for a Progressive-Move for Long-Parts  48  to  96
                                                   Inches on a FC1000 for 1 Prog-Move,  or  96  to 144 Inches with
                                                   2 Prog-Move Cycles.    Go to X 48 Inches.   Put Tool #11 Under
                                                   Ram  which puts  2 Small Stations Under  2 Prog-Move
                                                   Hold-Down Cylinders.   Turn-Off Punch.

N025 Y.05 X-48. G91 M74        ---  Progressive Move Canned Cycle.    Prog-Move Cylinders
                                                  Come Down and Trap Sheet.    Workclamps Open.  
                                                  Go to  Incremental Mode,   Back-Off  .050 Inch  in  Y for Move 
                                                  Clearance,   Move X-Axis  (But Not Part!)  Minus 48 Inches.  
                                                  Close Workclamps,   then  Raise Prog-Move Cylinders.

N026 X58. G90 G68                   ---  Go Back to  Absolute Mode.    X Axis now will Move in
                                                  the  48  to  96 Inch  Movement Range.    Move to  X 58
                                                  Inches  On-The-Sheet,  Turn Punch back On,  and  Punch.

N027 X68.                                   ---  Punch at  X 68 inches  On-The-Sheet Dimension

N028 X78.                                   ---  This is Last Block  of Code and  End of My Program.
                                                         Punch at  X 78 inches  On-The-Sheet.
                                                         HECC80 Control will  Automatically Loop-Back to
                                                         Beginning of Program,  and  then
                                                         Runs First Block  N001 which  Homes Axis, 
                                                         then Runs Block  N002 which  Moves Axis to Load 
                                                         Position  and  Stops.   All Modal Codes are Turned-Off.
                                                         Control Waits for  "Cycle Start"  Button to be
                                                         Pushed to  Run Program Again.

( CIRCLES   Program Written for a  HECC80 Control  FC1000  Size Machine )
( Makes  3 Point to Point Punches,  Contour Nibbles 2 Circles,  then a Last Punch at End)
( Put  1 Inch Nibble-Tool in Turret Station T02 )

N001 G69                                     ---  Homes   X, Y, T  Axis  so Control Knows Axis-Position after
                                                           Machine Start-Up.   Normally,  you should NOT have a  G69
                                                           in your Program.   Remove This Block Completely!
                                                           Why Home  All 3 Axis  Every Time You Run Program?
                                                          Just have Machine Operator  Home  X, Y, T  Axis
                                                          1-Time with  "Home"  Buttons  on Control,  at Start-Up!

N002 X48. Y38. M75                    ---  Move to X 48 and Y 38 Inches,  Stop for Load Position

N004 X3.711 Y20.355 T02 G68 F1   ---  Move to New  X, Y, T  Positions, Turn-On Punch and
                                                           Punch.    Arbitrarily,  I Changed Axis Speed to 1000 I.P.M.
                                                           Usually,  I put this  F Number at  End of First Punch Block,
                                                           which in this Program is  Block N004.
                                                           Note,  there is  No Block  N003 in this Program.

N005 X23.237 Y18.106                ---  Move to New X & Y Position  and Punch
N006 X12.956 Y14.792                ---  Move  and Punch
N007 G03 I-2.5 F117                    ---  Nibble Circle Radius 2.5 inch  Counter-Clockwise
                                                           at a  Nibble Bite-Size of  .117 inch
N008 G00 X20.871 Y10.769        ---  Go to  Point to Point,  and  Punch at  X20.871  Y10.769
N009 X35.625 Y14.792                ---  Move and Punch  at  X35.625  Y14.792
N010 G02 I-1.5 F106                    ---  Nibble Circle Radius 1.5 inch  Clockwise
                                                           at a  Nibble Bite-Size of  .106 inch

N011 G00 X42.172 Y18.698         ---  This is Last Block of Code  and  End of My Program.
                                                            Go to  Point to Point Mode,  Punch at  X42.172  Y18.698
                                                            HECC80 Control will  Automatically Loop-Back to
                                                            Beginning of Program,  and then
                                                            Runs First Block  N001  which Homes Axis, 
                                                            then Runs Block  N002  which Moves Axis to Load 
                                                            Position and Stops.    All Modal Codes are Turned-Off.
                                                            Control Waits for  "Cycle Start"  Button  to be
                                                            Pushed to Run Program Again.

  N012  G67                                         On some Machines I add this  Turn Punch-Off   Code,
                                                            But you should Not need it!     Try it  with  &  without!