I had this problem on my '92 XJ600 several years back. There is a short tube in the bottom of the tank where the fuel is drawn from when the switch is in the 'on' position. When the fuel level falls below the top of this tube the bike begins to die and one switches to the 'res' position, which draws from the lowest level of the tank. If the tube falls out of its hole in the bottom of the tank both the 'on' and 'res' positions are the same and when the bike dies you are out of ALL available fuel. Try shining a flashlight in the empty tank to see if you can spot the tube. Remove the empty tank and shake it a bit to see if you can heat the loose tube rattling around. I removed the flange on the bottom of the tank and bonded the tube back in place with fuel resistant adhesive (polysulfide epoxy, found at a boat parts store) and it had been good for several years. Good luck!
-Zimmy