Okay so I found this info and the problem can be fixed but i am a beginner, and have no idea what i am doing can some one please help this is what i found:
The problem is that the "roaming" indicator is a function both of the SIMCARD as well as the phone's firmware.
See, on the belus network, there is one active MCC, but it is used by multiple "providers" (even though we know that they are legitimately all the same provider), so you have 4 or more "networks" that are served by the same network, and each of these four virtual networks have SIMCARDS coded with ITS OWN MCC.
In order to determine the roaming status, the PHONE compares the NETWORK MCC with the SIM MCC. If they DON'T match, it assumes that you are roaming.
In some cases, the SIMCARD can identify to the phone that despite the NETWORK and SIM MCC's not matching, you STILL aren't roaming, but belus likes to screw with you (as does robbers), so they keep this determination within their phone's firmware -- i.e., to make stupid people thing that their non-belus phone is somehow inferior/incompatible.
Of course, there is a side-effect to this issue: If you actually *ARE* roaming, it isn't immediately OBVIOUS. You also can't do things like "disable data roaming", which would save you money in the event that you found yourself roaming.
The solution, of course, is to modify the code to recognize that the NETWORK and SIM MCC's are equal, even though they aren't.
You should look at the isRoamingBetweenOperators() function at frameworks/base/telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java, specifically, the code within the 'try' block -- you can see "equalsMcc = sim.equals(operator)". Make it "equalsMcc = sim.equals(operator) || (sim.equals(what_it_actually_is) && operator.equals(what_it_actually_is))". Doing this will override the roaming check in your specific case, while NOT breaking it for other networks.
Note: It may also be necessary to override the equalsOnsl and/or equalsOnss values -- you can do those in the exact same way, however, I doubt that it will be necessary. Much more likely that it is the MCC alone that is causing problems.
HOW DO I DO THIS STUFF I AM AN COMPLETE BEGINNER NEED STEP BY STEP INSTRUCTIONS.