The aircon will feel like it's working better with the hood up. This in my experience is down to aerodynamics (no really I'll explain).
Basically with the roof down, air is constantly passed over the cockpit, creating a vaccum which 'sucks' air through from the engine compartment - creating the heat soak and stream of warm air - particularly from under the steering wheel.
With the roof up (and windows up) the hot air seems to be sucked out through the bonnet vents elsewhere, making the aircon seem far more efficient..
That was my assessment after 3 years driving an S1. However, it's not scientifically proven and was just my best guess...
A Morgan (or BMW) dealer (or indeed any garage with a BMW code reader) will be able to get the code that has made the check engine light come on.
Cheers,
Richard