iPhone 3GS old bootrom (Must be already jailbroken. If you are jailbroken using Spirit or JailbreakMe, install Spirit2Pwn from http://repo.woowiz.net.
Like PwnageTool for Mac, you can use Sn0wbreeze 2.0 on Windows to build custom firmware files without upgrading the baseband.
Except for iPod touch 4G, Sn0wbreeze supports all previous generation of iPod touches, including iPod touch 3G and iPod touch 2G (MC Model). If your iPod touch meets the criteria listed above, then you can jailbreak it on iOS 4.1 using Sn0wbreeze 2.0. Simply follow the instructions posted here (ignoring the “Activation” bits in Step 6 as that is for iPhone only) to jailbreak your iPod touch 3G and iPod touch 2G (MC and Non-MC Model) on iOS 4.1.
UPDATE 1: Sn0wbreeze 2.0.1 has been released which fixes iTunes Error 37 when restoring to custom iOS 4.1 firmware. The download link for Sn0wbreeze posted below has been updated for version 2.0.1.
Feel free to ask me any question here should you run into any problem during the jailbreak process.
Download iTunes 10 for Windows Download iOS 4.1 for iPod touch 2G/3G Download iOS 3.1.3 for iPod touch 1G Download .NET Framework 3.5 (required to run Sn0wbreeze) Download Sn0wbreeze 2.0.1 (Windows Only) [Updated]
You can follow me on twitter or join our facebook fanpage to keep yourself updated on all the latest iPhone jailbreaking and unlocking releases.