Si le pasas null en la llamada, por ejemplo, entonces puedes cambiar los valores por defecto en el propio procedimiento, algo así:
Código SQL
[-]
procedure xxxxxxx (campos..... etc.)
begin
// cargar valores por defecto los que tengan null
if codigo is null then
codigo = 10; <---- este sería el valor por defecto
if campotal is null then
campotal = 100;
etc.
// hacer lo que sea.
end;