I cant buy new nicad batt paks for my porter cable tools and I have 4 of them so had to replace the batts or throw away a costly tool and thats not going to hapen so I zapped my tired packs (sulfated according to a guy I talk to) with a tool made from a cord cut off a bad toaster. You apply house current 110 v across the + and minus terminals. I bared the ends of the plug and wire and added a 20 amp fuse on one lead with bare wire pigtail and put a gator clip on the other wire. Hook the clip to one batt term then all it takes is just a quick touch of the bare wire to the other term. The fuse may pop but the current surge kills off the deposits that bridge the poles of the batts. Some guys will zap with a welder and I have heard some use 2 or 3 car batts hooked in series to zap with.
If you do this be dam careful to not get shoked. Only for nicad so dont do this to hydrides, etc. Theres info on line about this for details.
If zapping doesn't help, replace them just like Irelands child say to. I bougt batts for a dewalt batt pak from on line place called voltman. I put better batts back in than it came with they were about $3 eack plus ship. They came with straps connected to the batts so hooking them together was easy. So for about $30 I got a new better pak that still runs.
The main thing with replaceing nicad batts is attaching them together. Reusing the spotwelded straps can be hard to solder so I used batts with straps already connected to the batts. If you have good batts that dont have straps on them you can use copper wire instead. Tin both the wire and batts before soldering them together. Dont overheat the batts. Using a good hot iron helps by quickly heating the connection so the heat dont soak in. May have to make some room for the wires inside the batt case if its tight.
You can also use a car or bike battery to power cordless tools in a pinch. Depending on the volts they might not run as fast but a drill will work. Course if you have a cord drill that would be better.