Hi, regarding paid scanning programs, you can find cracked copies online: Digimoto, PCMScan Data Pro, ScanXL, Diagnose 41, ScanTool22, OBD2Ceasy, etc. They work well with Windows XP and have issues with Windows Vista.
As you can see, there are several, but it's not that simple. They require an electronic interface to connect to the car. The cheapest and easiest to find are the ELM327 versions 1.3 or 1.5, or their Chinese clones, which come with basic software.
The schematics for the ELM interface module of various models are available online, but the main chip isn't commercially available; it's only sold by one manufacturer. It's a PAL (programmable logic array) integrated circuit with copy-protected software.
The interface costs around $39 in China. Shipping is about $35 more, and it takes 5 days via DHL to arrive at your door. This device reads fault codes and engine parameters (though not all) and resets the check engine light with its original software.
It can do more with other software.
To see an inexpensive interface and scanner, check out
www.ipmart.com.
Look for CARS in the top horizontal bar and then DIAGNOSTIC TOOLS.
They are distributors in Malaysia and China for everything and sell individual units if you're interested.
Good luck!