Re: 2004 shift issues
The P0870 code means that the hydraulic pressure test of the OD clutch failed. As soon as you start driving and above a certain rpm, the TCM (transmission control module) will shortly pressurize each clutch pack and check if the related pressure switch closes. If it doesnīt pass this test a few times, a fault code will be set. Since it lost reverse and it want to move in N, there seems to be something wrong in the valve body.
First thing to do is checking the fluid level and the fluid quality. A burnt smell to the fluid or a black colour is not a good sign.
Then you could check the rigging of the shiftcable. Just remove the shift cable from the transmission input lever and check if the transmission is in the same position as the shift lever. Take care that by moving the input lever, you will take the transmission out of Park and the jeep could start rolling. So apply the handbrake firmly and put some chocks on the wheels.
When you move the input lever, you should feel several detend positions. If you donīt feel that, then there is mechanically something broken inside the transmission.If you do feel the detends, then there is still a change that the connection with the manual valve is broken.
Only by lowering the transmission pan and the valve body, you would be able to see if there is something wrong with the manual valve. If the manual valve is still working, then there is a good change that the solenoid pack is faulty.