imagino que concatenando registro es la forma que maneja los long internamente el C, no me he puesto a investigar eso.
De todas formas, se me ocurre que es un manera simple y eficientes usar dos registros, y podrias tener cuenta hasta 16 bit, poco mas de 65000 para el puntaje.
Como haces esto?, inicias ambos contadores (registros) a 0, empiezas a contar en el registro bajo, desde 0 a 255, cuando este llega a 256, lo que haces es incrementar el siguiente registro en uno y inicias la cuenta nuevamente en el registro bajo, hasta que se sobrecargue nuevamente e incrementas el registro alto, asi sucesivamente.