Atari Gamer
  1. Home >
  2. Pages >
  3. Atari Lynx Programming Resources

Programming for the Atari Lynx is simple to learn compared to some of the other retro 16-bit consoles. There are two different routes to take - Assembly or using C for your code. There are a number of supporting tools available to make tasks like image to sprite conversion and MIDI to Lynx sound conversion easier. This page will provide links to resources that are both created by Atari Gamer and those available elsewhere on the Internet to help you get started writing your first games on the Lynx.

This section of Atari Gamer is still work in progress. If you have something to contribute that would be useful here, please contact us.

Don't forget to enter the Atari Lynx 30th Birthday Programming Competition!
Entries close 20th of July 2019!

Learn C and/or 6502 Assembly🕸

Before jumping into Atari Lynx programming it's essential to learn how to code in C and/or 6502 Assembly. It's possible to create your games completely in one or the other, but understanding both has great advantages. You should also get familiar with the CC65 compiler since that is used for all Lynx programming.

Introduction to C C Language Introduction Learn C - Free Interactive C Tutorial Assembly In One Step Easy 6502 - Introduction cc65 Compiler Intro Atari Lynx specific information for cc65 Using GNU Make with cc65

Getting Started with Lynx Programming🕸

Alex Thissen has created an excellent series of tutorials that will get you coding on the Lynx in no time. This should be your #1 starting point once you're familiar with C/Assembly.

Part 1: Getting started Part 2: Development on Windows Part 3: Analyzing Hello World Part 4: Creating a project Part 5: Exploring TGI Part 6: Colors Part 7: Basics of sprites Part 8: Changing appearances Part 9: Advanced sprites Part 10: Collisions Part 11: Pens and more collisions Part 12: Memory management Part 13: UART Part 14: Timers Part 15: Memory and segments Part 16: Cartridges Part 17: Interrupts Part 18: Files

If you use macOS skip Part 2 above and read this article instead - Setting up development tools for Atari Lynx programming on macOS.

ChibiAkumas has created an excellent tutorial series, Learn Multi platform 6502 Assembly Programming... For Monsters! If you want to get the most performance out of a Lynx, this is where you should head on over.

Lesson 1: Getting started with 6502 Lesson 2: Addressing modes on the 6502 Lesson 3: Loops and Conditions Lesson 4: Stacks and Math Lesson 5: Bits and Shifts Lesson 6: Defined data, Aligned data... Lookup Tables, Vector Tables, and Self-modifying code!
Lesson P4: Bitmap Functions on the Atari Lynx 65c02 Assembly programming for the Atari Lynx 6502 Assembly Language Cheat Sheet

Game Development Tricks and Hints🕸

These articles cover some specific topics in game development that could be useful in your own games.

Making a 7-segment number font to use with CC65 for Atari Lynx games

Lynx Documentation🕸

The original Epyx Lynx documentation has been converted to HTML format by Mattias Domin and Bastian Schick in 1996. It's a must read if you want to understand how Atari Lynx works at a deeper level.

1. General Overview2. Hardware Overview3. Software Related Hardware Perniciousness4. CPU/ROM5. Display6. Sprite/Collision7. Audio8. Magnetic Tape9. ROM Cart10. Timers/Interrupts11. UART12. Other Hardware Features13. Expansion Connector14. System Reset/Power Up15. Definitions and Terminology16. Known Variances From Anticipated Optimums17. Approved Exemptions18. Common Errors19. SaveGame-OptionAppendix 1. System Bus InterplayAppendix 2. Interrupts and CPU SleepAppendix 3. Hardware AddressesAppendix 4. Sprite Engine

You may also want to check out the following:

Hardware NotesCartridge Pinout

Development Tools🕸

These tools is what will enable you to compile and link your code. Some will help with image and music conversion. Others are useful time savers.

Atari Lynx Palette Generator LNX to LYX ROM Converter SASS A Music-Oriented Programming Language CC65 6502 Compiler BLL Karri's CC65 Compiler HandyMusic

Development Hardware🕸

This hardware will let you run and test your LNX ROMs. The programmer Pi-Hat will let you create Lynx cartridges similar to official releases.

Lynx Cartridge Programmer Pi-Hat Installing the Atari Lynx cartridge reader/writer board onto your Raspberry Pi Lynx SD Cart + Lynx SD Menu Loader 2 SFX Audio Cart

General Game Programming🕸

All games must follow very similar patterns to work well and instead of inventing your own, head on over to these articles to see how it's done. These will save you loads of time and effort and you'll have a quicker, better looking game.

30 Excellent Pixel Art Tutorials For Pixel Lovers Double Buffer - Game Programming Patterns Game Loop - Game Programming Patterns Writing a Game Engine from Scratch Update Method - Game Programming Patterns Color Theory for Noobs

Useful Code Repositories🕸

These code repositories have sample Atari Lynx code as well as code for supporting tools and utilities.

Atari Gamer Lynx Repository CC65 Repository Karri Kaksonen Lynx Repository Lynx Space Invaders Kate Lilly's Lynx Repositories LynxBoilerplate - Pong

Hope you found this useful... please read on! All information on Atari Gamer is provided free of charge and we encourage you to share it as you wish. There is a small favour we ask in return however - engage in comments below, provide feedback, and if you see mistakes get in contact and let us know.

If you want to go a little further to show your appreciation, please check out how you can support Atari Gamer.
You can find Atari Gamer on...
Be sure to follow for the latest Atari Lynx news, updates, stories and photos!
[ Don't show again ][ Dismiss ]