I like to think of the past tense as a flag in the middle of a sentence to call out and mark tense. Training your ear to notice these “flags” or markers will help you better capture meaning. The English language aims for simplicity and reduces markers to a minimum.
Have a look at the past simple marked by -ed, did or irregular verb in the past simple form.
To keep it simple (no pun intended of course), remember that we don’t want a sentence full of “flags“, or tense markers. If we are being “simple”, then, we need one “flag” for each past event:
A: I went to the zoo yesterday. Went is our red, past-tense flag, or carton rouge (!) if you are a soccer (football) fan.
B: Really? Did you have a nice time? Did is our tense marker (and auxiliary verb of course). There is no need to add another marker, so have doesn’t change tense.
A: Yes I did. I had a very nice time. Note that there is one tense marker per verb used. Now examine this other response:
A: It rained but I did eat, drink and have a good time after all. « –ed» in « rained » is the past marker for the beginning of the sentence. Then, we have an « emphatic » did to place the emphasis on a nice list activities (eat, drink, have a good time). The sequence of events is clear, so we remain simple and use only one tense marker for three verbs !
So next time you are getting confused about has, had, have, and end up saying : I DID HAD a nice time, it’s wrong because you have 2 red flags for a simple tense. The correct answer is I had a nice time, or I did not have a nice time.