Todo depende, lo que vi yo es que el código que genera CC65 no era muy eficiente; pero eso no quiere decir que no puedas usarlo.
Dependiendo del tipo de juego, si programas en C "simple", atendiendo a las extensiones de CC65 (por ejemplo, puedes definir una variable local con "register" para que use la página cero), y las partes que necesiten velocidad están en ensamblador... creo que sí se podría, quizás a costa de usar un poco más de espacio.
Me suena que los mojones no han usado C en C64 (porque creo que sus juegos los ha portado alguien), pero es cierto que sus producciones para NES están en C usando el CC65. No sé cómo compara la NES en ese aspecto o si la librería que usan les da el empujón que el juego necesita.
Cuando uso C en una plataforma de 8-bits es para la parte de la lógica sobretodo, las rutinas gráficas van en ensablador normalmente. Pero eso es en ZX Spectrum y Amstrad CPC, que no tienen el soporte hardware del C64.