328 uses a 2.8 liter version of the baby six. It is mostly evolutionary over the 2.5 liter from the first e36 325i. It has double vanos (intake and exhaust variable valve timing). It is a smooter engine, with a fatter torque curve.
The 2.5 liter in the 323i is also an evolutionary version of the original 2.5 liter engine the first e36 325i.
For chips, Jim Conforti does the best job. He adjusts partial throttle fuel and ignition maps, not just WOT maps like Dinan and everyone else does. GIAC also makes pretty good chips.