A/D nominal port interaction

Ok thanks everyone. (Mike sorry to make you do house keeping: I was approaching this question as "how does Arduino manage pin assignments" rather than troubleshooting my project). Turns out that I had a leftover pinMode input assignment, after switching from a button on D2 to the pot on A5. So I was confusing D5 by assigning it twice? Dropped the Input assignment for the analog pin and it's fine.

I'm still very curious to better understand what's happening in the board when assigning pinmodes, why an analog read pin doesn't require it, and what's happening in D5 when it's been (accidentally) set as an input but then gets an output command. I'll keep digging on my own but if anyone can suggest a resource to read about that I'd appreciate it.

Here's the (very simple) code:

int led3 = 3;
int led4 = 4;
int led5 = 5;
int led6 = 6;
int led7 = 7;
int led8 = 8;
int led9 = 9;
int led10 = 10;
int led11 =11;
int led12 = 12;
int led13 = 13;

int potIn = 5;

int val = 0;

int setspeed = 0;
void setup()
{
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(led7, OUTPUT);
pinMode(led8, OUTPUT);
pinMode(led9, OUTPUT);
pinMode(led10, OUTPUT);
pinMode(led11, OUTPUT);
pinMode(led12, OUTPUT);
pinMode(led13, OUTPUT);
pinMode(potIn, INPUT); //Removed, fixed problem

Serial.begin(9600);
}

void loop()
{
val = analogRead(potIn);

setspeed = map(val, 0, 1023, 6, 225);
Serial.print(val);
Serial.print("::");
Serial.print(setspeed);
Serial.println();

digitalWrite(led3, HIGH);
delay(setspeed);
digitalWrite(led4, HIGH);
delay(setspeed);
digitalWrite(led5, HIGH);
delay(setspeed);
digitalWrite(led3, LOW);
delay(setspeed);
digitalWrite(led6, HIGH);
delay(setspeed);
digitalWrite(led4, LOW);
delay(setspeed);
digitalWrite(led7, HIGH);
delay(setspeed);
digitalWrite(led5, LOW);

delay(setspeed);
digitalWrite(led8, HIGH);
delay(setspeed);
digitalWrite(led6, LOW);

delay(setspeed);
digitalWrite(led9, HIGH);
delay(setspeed);
digitalWrite(led7, LOW);

delay(setspeed);
digitalWrite(led10, HIGH);
delay(setspeed);
digitalWrite(led8, LOW);

delay(setspeed);
digitalWrite(led11, HIGH);
delay(setspeed);
digitalWrite(led9, LOW);

delay(setspeed);
digitalWrite(led12, HIGH);
delay(setspeed);
digitalWrite(led10, LOW);

delay(setspeed);
digitalWrite(led13, HIGH);
delay(setspeed);
digitalWrite(led11, LOW);

delay(setspeed);
digitalWrite(led12, LOW);
delay(setspeed);
digitalWrite(led13, LOW);
delay(setspeed);
}