Changing the SS pin for SD and Ethernet *solved*

I have a Mega1280 and in the current setup I have, it'd make my life a lot easier if I could change the SS pin that the SD library and Ethernet library use:

If possible, I would like to change them to pins 48 and 49. If I can't then I'd prefer them to be at 11 and 12, or, 2 and 3. If this is possible, can someone at the very least point me to the files needed in order to change this?

The SS pin that the Ethernet shield uses can't be changed. At least not so as to free up pin 53. That is the pin that defines the Arduino as master when using SPI, and MUST be set to output. It can not be used for other purposes. The SS pin for the SD shield is passed to the SD.begin() method, so it can be any pin.

Oh the sample code for the SD didn't explain what that 4 meant (or at least it labels it as CS instead of SS, unlike that link I mentioned in my first post).

The article says 53 is hardware SS, which I'm perfectly ok with leaving as-is. But it says digital pin 10 is used for the Ethernet's SS, so am I able to change that?

But it says digital pin 10 is used for the Ethernet's SS, so am I able to change that?

You could look at the bottom of W5100.h. That is where initSS(), setSS(), and resetSS() are defined for the various boards.

Does it matter that I'm using the ENC28J60 and not the W5100? And, does it matter that the #include "w5100.h" line is commented out in Ethernet.h? Also, unless I'm missing something here, the ****SS() definitions in w5100.h don't equal 10, so why does that reference page say to use pin 10?

Thanks for the quick responses so far, I appreciate it.

Does it matter that I'm using the ENC28J60 and not the W5100?

Yes. It means that changing W5100.h won't do anything for you.

Also, unless I'm missing something here, the ****SS() definitions in w5100.h don't equal 10, so why does that reference page say to use pin 10?

Because the functions in W5100.h are using direct port manipulation to set the mode and state of a bit in a register that maps to pin 10.

Hmm I didn't realize until now that this chip wasn't even compatible with the default arduino library, but I did find another external library that should do the job. Sorry about that, I'll mark this as solved.