External timebase for Nick's counter

Short version: How can I use an external timebase from interrupt 0 instead of the built it timer2?

Long version:
I'd like to use an external timebase for Nicks Mega2560 counter, instead of timer2. (Frequency Counter sketch for Atmega2560) , so instead of using the timer's 1 tick pers seond I'm providing the tick on INT 0

So far I think I know three things :

  1. The StartCounting routine need to be modified so it's not using a parameter.

  2. Interrupt 0 should be atached to the startcounting routine
    ie attachInterrupt(0,StartCounting),RISING) in setup()

  3. I need to do away with ISR (TIMER2_COMPA_vect) but I'm not sure if the Counter5 releavant code should be part of StartCounting or a separate procedure altogether called from StartCounting.

What am I missing thought process wise?
Any suggestions on how to go about it ?

Use a 555 timer, or something similar, to create a square wave pulse train of whatever frequency you want,
Do your

attachInterrupt(0, CountUp, RISING) in the setup() routine,

establish a global variable called
volatile unsigned long clockTick = 0

then write the Countup procedure

void Countup()
{
clockTick++;

}

This will happily tick away while the rest of your code is running, and you can access clockTick at anytime.