You cannot create "trully" a new code. You can rather create a reference to an existing one with a different name. It's like creating an alias for the existing code that can be used with a different name.
For example if you create a "New Service Call Classification" as entity reference to "Service Call classification" what you actualy create is a reference to the existing code, thus both will have the same predetermined values.
(I mean the base values, in a service call these fields can have different values but from the same value "pool")
The above will have a defect on you only if you have used ALL available code items.
If not, open Data/Custom Fields and expand Service call. Expand Entity Reference and there you can find the available custom codes. Find an unused (normaly named Service call Code xx) double click to open it. Give it a name, select a display formt, check "Activate" and select in what categories it should be active.
After creating it and activating it, go to Data\codes\Service call. You will find it there and you can begin entering values. A refresh or client restart maybe is needed before you see your code available in Data/Codes/Service Call