All the commercial aftermarket ECUs are closed code. You install their tuning software and you can configure and tune the ECU they way they have configure it to be used. There are menu options and you can usually get pretty close to what you want.
There are a couple open source ECU projects out there but if you want to change anything you need to be good at C code. Rus EFI is such a project and they have been working on DI, at least they were last I checked in.
The ECU I use is kind of hybrid. The actual C code that rus the ECU is close but that code tell the ECU to look for a "model" which the user writes so the ecu will do whatever you want as far as controlling the engine but what its doing internally at the c-code level I can only guess. The M1 series motecs are similar but they call the model a "package". If you buy the ECU for $4k, then buy the development package for $2500, and buy the data logging option for $400(crippled version) or $1500 full (version) then you can do every thing my $1800 enginelab can do plus a little more depending. They do offer a DI version, enginelab shows one on there webstie but you can't buy it because the company they were developing it for backed out so the project is sitting. As I type I'm kind of remembering that the rusefi guys were using a separate DI driver board so that probably could be mated to another ECU....I'd have to look into that.
But using the factory ECU in engine swaps is very common these days. The problem you will have is there is going to be close to 0 info out there on exotic stuff so you'll need to be the expert or find someone who to help you. I know the basics so for me just getting anything CAN work is a thrill
![Sad :(](./images/smilies/icon_e_sad.gif)
Stuff like the throttle pedal is probably CAN so you'll want to use that sending unit on your pedal. The high pressure fuel pump is probably CAN and the low pressure might be. The push to start will probably be looking for a switch on the brake pedal, but it could be getting that signal over CAN from the ABS controller and will likely also be looking park or neutral CAN signal from the trans controller. Those are the bit you'll need to figure out with a CAN logger on the running car. Since you have a running car it just take time, without a running car its pretty much impossible.