So impressive! I'm still a beginner 6502 VCS coder; I can't image how y'all can manage this! Do you use DPC+, custom ARM code, or what?
DPC+ is close The game uses CDF, which is even more efficient at offloading parts of the game to the ARM.
Thanks! Yup, as DH said, it's CDF which is basically a more feature-rich version of DPC+, which of itself is an extension of the DPC chip developed by David Crane and Activision back in the early 80's for Pitfall! 2.
As with all 2600 games, you are still bound by the TIA chip and the kernels are all written in 6502 assembly. The big advantage of CDF/DPC+ is the extra ROM, extra RAM, fast-fetch (which allows you to dynamically update a TIA register in 5 cycles), and of course the 70Mhz ARM processor. I call this twice per frame, once during VBLANK to set up the current frame (graphics) and once during overscan (this is where I do most of the collision detection, game logic, sound, etc). DPC+ also adds 3-voice digitized music and sample support. CDF adds, among other things, the ability to do a dynamic JMP in 3 cycles (vs. 10 in DPC). The ARM code is also written in C which (at least for me) is easier to program game logic with.