Take off and test the ignition switch with some multimeters, then as in another thread, test the starter motor and make sure the contacts are good and the wires not frayed or damaged onto the starter motor, many of these wires are 25ish yrs old and when though they look ok will have oxidation right up the sheathing, reducing their ability to conduct causing problems, if you get a dodgy wire replace it back to where you can find decent copper to make a good contact and solder all connections on to give good contact, simple crimp fittings deteriotate too quickly as they give increased contact area for oxides to form on and a poor connection so soldering is best practice.
also soldering will tell you if the wire is too heavily oxidised as the solder will not stick to a dirty wire even after heavy fluxing.
I had a supposed duff ignition switch so I replaced it but found the fault to be at the starter.
Hope helpsLLLoyd hope I havent missed your point