i have a check engine light on with the eml light on, dtc p0601. on 1999 BMW 323i

reads engine throttle or internal fault. the alldata has very limited info.

Asked by for the 1999 BMW 323i
this obd2 trouble code table can help you.
and for the p0601 you can
With a P0601 OBD-II trouble code, the most common fix is to replace and reprogram the PCM. In a few cases the dealer may be able to reflash the PCM and get it working. But more than likely the PCM will need to be replaced and reprogrammed (we recommend you take it to a dealership for this). The good news is it *may* be covered under your emmissions warranty. So even if you're out of bumper-to-bumper warranty or powertrain warranty, check your warranty guide or dealer to see if this is covered.

Other people have reported that they cleared the code only for it to return again and again. Keep in mind that most shops can replace the PCM but not all can program it.