Thanks all.
Right now, I don't have the skills to re-write it.
However, (just in case anyone comes across this thread in the future)
on closer inspection, my legacy app appears to have CI code from several versions: 1.7.0, 1.7.2, 2.2.0 and 2.2.6 at least!
Therefore, I have installed a fresh CI 2.2.6 and compared my app tree to this version. Then I have ported across missing files and updated configuration to give a relatively consistent version.
At this time it is mostly working and, at least, a better position to start.