|The "stack" is the core or all spell resolutions. In combination with the concept of priority, the stack sets down rules for the resolution of all spells and abilities that are cast "in response" to others.
Im assuming you know how priority works, but just incase... 1)A player cant cast a spell unless they have priority, 2)The active player is the player whos turn it is, 3)Active player has priority when stack is empty, 4)A player retains priority after they add a spell to the stack. 5)If both players pass priority in a row, resolve the top spell on the stack, and the active player gains priority.
Ok with that said, you now have a set of rules to govern the stack with. Other than that you just need to keep track of what spells and abilities are on the stack waiting to resolve, and what order they are in.
When the active player casts a spell, that spell does not immediately resolve. The spell goes on the stack and waits to resolve. After it is on the sack, according to rule #4 up there, they retain priority, and then can respond with and instant or ability of some sort if they want. If they just want to resolve their spell, they will pass priority. The non-active player will now have priority, and per #1 up there, they can now put an instant or ability on the stack. After that they are going to probably pass priority. The active player now has a chance to cast a spell also, but if they dont want to they will pass. You know have both players passing priority in a row, so you now resolve the top spell (cast by the non-active player). After the resolution of this spell, the active player gains priority again, and if both players pass again, you will resolve the top spell on the stack (cast by the active player).
As far as Mirari, you need to know, that if during the announcement of a spell or ability, another ability triggers (like mirari) that triggered ability is placed on the stack ontop of the spell or ability that triggered it before the active player would gain priority. So basically what this means is, you cast a spell, say.. stone rain. At this point mirari will trigger and that triggered ability will go on the stack then you will gain priority.
Stone rain -> Mirari Trigger
You will pass priority, and then your opponent will, thus you will resolve the top spell or ability on the stack. When you resolve the mirari trigger, you can either pay nothing and nothing happens, or youpay 3 and place a copy of stone rain on the stack.
Stone Rain -> Copy of Stone Rain
You both pass priority and resolve the copy of stone rain, and then you gain priority again. You pass and your opponent passes, you now resolve the original stone rain. Or of course, your opponent could say, cast a counterspell, or activate a zuran orb or something whenever he would have priority.
(ow my hand hurts(