Atari Lynx development - Catkanoid
As I was working on Invaders must die! on the NES, I noticed that the cc65 compiler can also be used to generate Atari Lynx roms, since the Lynx is based on the same processor as the NES (the 6502). Other than trivial Hello World Lynx programs, I've only found one worthy sample of how to build a .lnx rom, and I have used it as a basis for Catkanoid.

I programmed an Arkanoid clone called Catkanoid. In case you're wondering about the name, Atari console-related software names sometimes use references to cats, which was the naming convention used by Atari (such as for the Lynx, Jaguar, and the abandoned Panther). The game's notable feature is the power gauge, which can be used to spawn helper balls which last for a limited amount of time. The fuller the power gauge, the more balls are spawned. It's okay to lose these, as long as you don't lose the primary ball.

The Lynx sure follows Atari's tradition of complex hardware. This is reflected in how complicated building a .lnx rom is. Out of the four (!!) subdirectories inside the main catkanoid project directory, cart and resident are used only as frameworks to build the rom. They are based on a bunch of assembly source code files, and can be ignored for the most part. I've already done the work to adjust the make scripts, so that's covered. The other two, intro and maingame contain the sources for the actual game, with the former creating the intro screen, and the latter handles gameplay.

Note: the emulator takes a few seconds to start up the rom, so don't think anything has gone wrong unless you've waited about 10 seconds.

Downloads


rom - the game rom. Use a Lynx emulator to play
source code - the source code for Catkanoid. I think it's a good starting point if you wish to develop your own Lynx games
development kit - the entire cc65 dev kit and tool chain. It contains all you need to develop for the Lynx. It contains the source code for the game, along with a bunch of other sample projects. All projects are found in the source directory. Their makefiles assume the dev kit is installed in C:\cc65 The kit also contains an emulator.
Note: This package also includes my NES projects. If you have already downloaded it from any Nintendo NES project page, you do not need to download it again; the Lynx projects should already be included.
emulator - the only decent emulator I could find

Screenshots




Here is Catkanoid running on real hardware!