Any fault codes? Usually anything emission-related will trigger a fault code, but not necessarily the MIL light (depends on market).
Black smoke can also be caused by lack of air rather than excess fuel, so make sure all the usual suspects are in good order - air filter, hoses etc.
The engine management system should not let it over fuel as any irregularities between throttle demand and air flow will cause it to take action to stop this happening. That's when you get limp home modes, power loss etc. Often its just the engine trying to save / help itself. Some engines - the old TD5 being a classic example, can have major problems with air flow sensing which doesn't show as a fault code. You can only see it by real time monitoring. You might have an air flow sensing fault.
First check is to find a friendly garage who can do a fault code scan for you. As this is emission's related, any standard OBD scanner should be able to pull off the "P" codes. They may even be able to tell you immediately if a specific component is heading for trouble. That engine is rock solid and rarely gives big problems. What I would suggest is that if you carefully take the top cover off, inspect all the small breather and vacuum pipes on top for chaffing, damage or disconnection. Any one of those gone astray could send the wrong fueling message to the ECU and create the symptoms you describe.
If you get a list of fault codes, don't panic! Most of them will be unrelated or cascade faults, so can usually be ignored. Let me know if you need any more info. I have access to a lot of information on the TDV8, but would need to see a fault code list first.