I understand you already verified the TDC with the #1 cylinder and is validated to be correctly marked on the flywheel. Usually, on the left of the TDC mark (facing the marking itself on the flywheel) on the flywheel, there will be permanently scribed markings for the 28, 30 and 32 degree timing mark. Some will only have two markings, i.e. 28 and 30 degree marks or maybe just one, which is usually the 28 degree mark. I'm surmising you do have at least one or two of these timing marks on your flywheel. If you do not have any of these marking, then you need to compute it as explained above and do the scribing yourself. The original timing marks placed by the manufacturer were stick on decals that never lasted with the engines and most if not all are already gone.
If it is 90 degree off, it cannot be a switched coil or wire, since the motor is 3 cylinders meaning the firing sequence is 120 degrees apart. UNLESS, WHAT YOU ARE TELLING ME IS THE NET difference in timing meaning it is actually 120 degrees off but subtracting the required 30 degree advance BTDC (28 static) that makes it 90 degree. then in this case it could be a switched coil or trigger wires.
Double check the coil plugs and trigger wires using schematic diagram and then do the timing test again and set the timing to the 28 degree mark. If you do not know how to do this, there is a sticky post on top of the forum with a video to show you how. It is important to set this properly now before continuing on with the troubleshooting if the problem persists thereafter.