I downloaded the 4.8 release, deleted everything SoulSilver related, and put SS back on the card. I started it up and it didn't freeze until I was in Sprout Tower, but unlike the previous freezing errors it froze at the beginning of a battle when my pokeballs were spinning and I could soft reset.