Clearly I stand corrected w/regards to Atonement and class abilities. I really need to double check spell descriptions before I open my mouth.
In any case, my final version of how to handle classes with conduct codes:
1) Discuss the code with the player, and consider ways to elaborate or customize. (I'll give an example later).
2) Write out the code, 2 copies, one for each player and DM.
3) If a character breaks a point of code, it gets a black mark.
4) If a character performs above and beyond the call to support a point, a black mark can be removed.
5) If there is ever a time when all points are checked, the character is in violation and consequences set in.
6) If any single point gets as many check marks as there are points to the code, the character is in violation and consequences occur.
Now any rules lawyer can see the flaw: Write a code with 57 points, at least one of which is something like "Don't commit suicide". So the Dm needs to be involved in writing the code, to prevent abuse.
As an example, the Code of the Golden One says:
1) Never willingly commit an Evil act.
2) Defend the weak and helpless.
3) Be just and merciful (I think).
4) Lay the Undead to rest.
A reasonable variation on point 4 might be, "Lay down the dark undead at once. Help other undead find peace."
We had a Paladin in our game who came upon the ghost of a serving girl who had been murdered by her employer, and was stuck there because of unfinished family business. The Paladin noted that she detected as Evil, but recalled that all Undead do, regardless of their true alignment. (The scale includes a note about undead ranking a solid step stronger on the spell than your run-of-the-mill bad guy.) Knowing that he could get a false positive, he decided to cast Detect Good as well, and she showed up on that as well. After talking to her, he voluntarily allowed her to possess his body so she could see to that final task.
Great RP scene, and well played by the Paladin's player.