Lo siento, pero tu SP contiene dos errores.
1) Si usas "codigo" como parámetro de entrada, no puedes usar "@codigo" dentro de la consulta, porque esa no es la misma variable. Si te hubieses molestado en leer mi post ya te habrías dado cuenta.
2) Aún si fuese la misma, esa consulta no es restrictiva, porque si usas el mismo nombre para la columna que para el parámetro, el parser descarta la variable (que tiene menor jerarquía), ye interpreta que te refieres al mismo campo (que tiene mayor jerarqía), con lo que en realidad le estás diciendo que te devuelva todos los registros donde el valor de "codigo" sea igual a sí mismo... o sea, todos los registros.
¿Se entiende?
Para que tu Sp funcione debería estar más o menos así: