PICKUP HAS NO PICKUP WHEN IN DRIVE

1986 Chevrolet S-10 • 160,000 miles

I have a 1986 Chevy S-10 Pickup truck with a 2 wheel drive V-6 Fuel injected 2.8 liter engine. It has an automatic transmission. Truck has 160,000 miles. Engine and
transmission are origional.
The truck has no pick up when in drive and performs at
about half of what you would expect power-wise on the road.
Top speed is about 55, and even then, only on a long straightaway. Start to go up hill at all, or to suddenly
accelerate from a full stop, and the engine coughs and rapid deceleration occurs.
This problem persists, and will not go away.
A professional mechanic shop is currently stumped, after having it for 10 days.
I am about to get it back because I want to get it
running. They have done no work on it.
When in Park, the engine will run very well, and when the gas pedal is held to the floor, it sounds and runs exactly like it should.
The transmission does not show any signs of trouble whatsover, and shifts in and out of all gears normally, and engages normally.
Only in Drive like I described, does the problem show itself. There is no sound from the engine indicating a bad cylander. All 6 spark plugs have been changed and correctly gapped, as well as new spark plug wires.
Distributor cap and rotor have been pulled, and inspected, are like new. While I had them off, I replaced the ignition module underneath the rotor. There are no cut or damaged wires visible under the hood, and all vacuum lines are attached and going where they should. Timing has been tested, is working fine, and is set at 15 degrees past normal settings. Lastly, old gas is not possible, it was nearly empty and then refueled with 15 gallons of non-ethanol just 4 weeks ago.
Any ideas? Thanks for reading!

I am giving you a diagnostic walk through for your situation that will go through the most likely issues causing your problem. When you get to the part about pulling trouble codes. you can go to Auto Zone or Advance Auto and they will pull them for free.
Just follow this link;