Issue compiling code for Neopixels coverted from WS2801 code

A few years ago I found some code online and messed around with it and got it to work using a string of WS2801 pixels (data and clock wires).

All happy and no problems until I decided to mess around with it again and got some newer pixels (neopixels).

So I attempt to convert the original code from the internet (can't find my old save of the code) to run the Neopixels and have come across a small problem when I attempt to compile it.

I've Googgled the hell out of it and i'm thinking it has something to do with INO and PDE file types and how it compiles???

Original code and my code is saved as an attachment.

I've tried to compile the original code as well as my changed code and on both I get error message

Arduino: 1.6.8 (Windows 7), Board: "Arduino/Genuino Uno"

C:\Users\Dad\Desktop\Newcode\Newcode.ino: In function 'void basic_color(int)':

Newcode:143: error: 'run_colors' was not declared in this scope

     run_colors(0, red, 0, green, 0, blue, steps, direction, delay_time);

                                                                       ^

exit status 1
'run_colors' was not declared in this scope

If i comment out these two lines everything works apart from that piece of code.

void basic_color(int direction) {
  unsigned char red   = 0;
  unsigned char green = 0;
  unsigned char blue  = 0;

  get_random_color(&red, &green, &blue);

  int steps      = 10;
  int delay_time = 5;
//////   run_colors(0, red, 0, green, 0, blue, steps, direction, delay_time);

  delay(10000);

  // Fade out more slowly
  steps      = 100;
  delay_time = 40;
//////    run_colors(red, 0, green, 0, blue, 0, steps, direction, delay_time);
}

Hope I have made my problem clear and any help would be very helpful.

Cheers
Nathan

Originalcode.pde (23.6 KB)

Newcode.ino (22.7 KB)