The guy who previously unlocked iOS 4.0 Beta 4 (formerly iPhone OS 4), PwnageTool bundles for iPhone 3GS on iOS 4 and Blacksn0w RC2 patch for iPhone 3.1.3 is now back with a new patch, which makes Blacksn0w unlock compatible with iOS 4.0, provided that you have preserved your baseband to 05.11.07 using PwnageTool.
Description of the file blacksn0w4GM.tgz, as mentioned by msft.guy is as follows:
Patched for 3GS GM; manual load; run /bin/blacksnow.sh after booting. Blacksn0w unlock (C) geohot http://blackra1n.com
iPhone 3GS, on iOS 4.0, Unlocked !
Warning Note: I haven’t tested it yet. But according to my sources, this is working on a 3GS with 05.11.07 baseband. Also the Blacksn0w binaries which are used to unlock are buggy at best. You will need to reapply the patch every time you reboot your phone. Proceed only if you are an advanced user, and know your iPhone inside out. Otherwise, wait for the official unlock and jailbreak tools which will be out in about two weeks time. We are not responsible if you end up bricking or locking your phone.
Step 1: Use the instructions posted here to first jailbreak your iPhone 3GS using PwnageTool bundles on the latest GM release of iOS 4.0. Using this method, you will be able to preserve your older 05.11.07 baseband.
Step 2: Download the latest patched version of Blacksn0w for iOS 4.0 GM from here.
Step 3: Now simply follow the instructions as seen in the video below (note: video was originally meant for Beta 4, but applies to this GM release too.) to unlock iPhone 3GS, on iOS 4.0.
Full detailed instructions will follow soon. Stay tuned for that !