I understand that most turboshaft engines tend to run at (or close to) their most efficient rpm all of the time, and it is the load that is changed e.g. the pitch of the blade pitch on helicopters.
If everything else is kept the same and the load is increased, the rpm would obviously drop. Therefore, I assume that to maintain the constant rpm, the fuel flow must be increased as load is increased.
How exactly does the engine set the correct fuel flow to keep the engine at its most efficient rpm? I guess that on modern engines, this is probably done by a computer system, but is there also a mechanical way to do this, as would have been used in older engines?