Motronic has a immobilisation code stored in the EMS as does the diesel, these stored codes CANNOT be changed, the GEMS does not, the GEMS code can be rolled. Info quote below. From Nanocom GEMS info.
ยท Security Learn: When the ignition is turned on, the BECM providing it is in receipt of a valid mobilisation code and is therefore not in an alarmed or immobilised state, sends a coded signal to the GEMS which the GEMS then compares against a mobilisation code it has stored in it. If the two codes compare OK the GEMS allows the engine to start. This forms the basis of the immobiliser. If the GEMS ECU, the BECM, or the lockset & key fob is replaced, or other data in the BECM is changed, it may be required for the GEMS to re-learn a new mobilisation code. This is done by putting the GEMS into Security learn mode whereby the next coded signal it receives is not compared, but is instead stored as the master copy. When the Security Learn mode has been entered, the ignition has to be turned off and turned back on to trigger the BECM into sending the code. The GEMS will check the incoming code and should accept it; however, if there is an error, however slight in the codes makeup, the GEMS can reject it; in such a case there will be no valid code stored. This status indicates whether the system has a valid code stored or not and is only valid in the ignition cycle in which is learned.