P0300 Random Misfire

What happens with a P0300 random misfire code is that the computer isn't seeing the cam sensor accelerating the way it expects in time with a cylinder firing but it can't pinpoint a specific cylinder.

What causes this crap? Mechanical, fuel, or ignition issues can all cause the computer to detect a random misfire.

Easiest to test is ignition, are your spark plugs sparking reliably. Using an inductive tester, like a testing light, you can crank the engine over while testing each spark plug wire, if you get a steady flashing on each one, indicating consistent firing, then you are good to go on the ignition front. If not, it's time to test your spark plug wires(less than 8,000ohm per foot), spark plugs, look at the distributor cap, distributor rotor, distributor drive gear, crank position sensor, ICM, and so on.

Second is fuel, spray some starting fluid into the intake and try to start the engine, if it fires right up, then you have a fuel starvation issue. Testing for fuel pressure, inspecting/replacing the fuel filter, checking for leaking injectors, etc.

Mechanical issues are the hardest to test for and usually end up being last. Here a compression test and if warranted a cylinder leakdown test can tell a lot about the condition of the mechanical side of the engine.