Arduino boot from sd card not working

Hi guys.So I'm working on a project that needs one arduino to program another arduino thtugh an sd card.I'm using baldwisdom's bootdrive:BootDrive for Arduino | Bald Wisdom
I'm using this micro sd card reader/writer:MicroSD card breakout board+ : ID 254 : $7.50 : Adafruit Industries, Unique & fun DIY electronics and kits
I have one arduino uno rev 3 that's trying(but failing) to program a standalone uno bootloaded atmega328.I have a separate power supply for the standalone atmega328p.Should this matter?The schematics on baldwisdoms's page is kinda confusing.The schematics say one thing and the setup in words(under the schematic) says something else.The standalone arduino is receiving program instructions from the uno(I checked by connecting an LED to pin 13 and it flashed rapidly while the atmega was getting programmed.But after this,the old program runs.And the new program isn't even being executed by the standalone atmega328.Also in the code there is a a pin define called rx and tx.I thought that these were pins 0 and 1.Here is the code I got from his site.Plese note that the forum isn't letting me post the code becuase it exceeds 9000 characters.I just put the pin defines and initialization:

#include <SPI.h>
#include <SoftwareSerial.h>
#include "stk500.h"
#include <SD.h>
/* Read hex file from sd/micro-sd card and program
 *  another arduino via ttl serial.
 * borrows heavily from avrdude source code (GPL license)
 *   Copyright (C) 2002-2004 Brian S. Dean <bsd@bsdhome.com>
 x*   Copyright (C) 2008 Joerg Wunsch
 *  Created 12/26/2011 Kevin Osborn
 */
 

#define BOOT_BAUD 115200
#define DEBUG_BAUD 19200
// different pins will be needed for I2SD, as 2/3 are leds
#define txPin 4
#define rxPin 5
#define rstPin 6

//indicator LEDs on I2SD
#define LED1 2
#define LED2 3
SoftwareSerial sSerial= SoftwareSerial(rxPin,txPin);
// set up variables using the SD utility library functions:
SdFile root;
File myFile;
avrmem mybuf;
unsigned char mempage[128];

//chipselect for the wyolum i2sd is 10
const int chipSelect = 10;  
// STANDALONE_DEBUG sends error messages out the main 
// serial port. Not useful after you are actually trying to slave
// another arduino
//#define STANDALONE_DEBUG
#ifdef STANDALONE_DEBUG
#define DEBUGPLN Serial.println
#define DEBUGP Serial.print
#else
#define DEBUGPLN sSerial.println
#define DEBUGP sSerial.print
#endif

Try this method instead:

You can also click Additional options below the Reply box and Attach your code when it is really big.