ok, I've carried out a new upgrade test. This time I uninstalled a ton of old modules and many providers leaving ones that a standard 7.4.2 instance has.
Then cleared out bin/providers and replaced dlls from the fresh instance. I did the same with about 50 odd system dlls in the bin itself.
I cleared out a reference to solpart from the web config and made that section match the fresh instance.
Then I ran the upgrade. The same thing happened, no login box.
So then I manually copied all dll's from the 8.0.3 package into the upgraded site and overwrote the ones there.
Same thing... still no login. The exception is:
The base class includes the field 'ctlProfile', but its type (DesktopModules.Admin.Security.DNNProfile) is not compatible with the type of control (ASP.desktopmodules_admin_security_profile_ascx).
So then I completely wiped the bin out and replaced it with only the 8.0.3 bin. That means all module dll's are now gone, leaving only the core dll's. The issue is the same.
Is it perhaps something silly like the upgrade using module friendly names to find and modify previous functionality such as the login control? On my system, the login module has a custom friendly name. I've seen other module developers reference friendly names in the past and wouldn't be surprised if that were being done here?