I might as well post this in here now although I encourage someone to rewrite it because I suck at writing.
For those that want to use RNG abuse for your SID on 3rd gen emulator first you need to grab an Lua script from here:
http://projectpokemon.org/forums/sho...922&viewfull=1
You'll need VBA RR to use the script though. When you run the script the seed will be displayed in a box. If you remove the last 4 digits of the seed the remaining ones make the number generated (ie. 01DBBC30 becomes 01DB, which is 475 in decimal). From there you just need to have the SID generated in a consistent amount of time (save state at the screen after you enter your name and set A to autofire). Load the save state and let it run for a little while doing nothing so you get a list of seeds generated, then load the state and enter the game as quickly as possible (using autofire). Find out how many frames it took to generate the SID from your save state by figuring out your exact SID (either the SID in pokemon summary code or by RSE decode) and looking through the the seeds that were generated by the script (copy and paste into a spreadsheet to make it easier and you can use some functions to display only the part of the seed you're looking at, which is everything but the last 4 digits). You'll need to convert the SID you got to hex to compare it to the seeds first though. From there it's just looking through the seeds for a SID you could use (searching in hex) and you advance the frames of the save state to hit that frame, taking into account the amount of frames it takes to generate the SID.
I know this isn't organized so if someone wants to reorganize it feel free to do so as I'm absolutely terrible at writing in general. The script was made by... I forget but Kaphotics edited it for RNG abuse (and there's a link to it in the thread with the script), and the RNG info was from here:
http://www.smogon.com/ingame/rng/pid_iv_creation#what_is_a_pid.