Will start with not game: GFA Artist - jump to fixed address in ROM. That results in work in only 1 TOS version, and only 1 language v. in it. Maybe programmers found that it is good regional protection, but what when user gets TOS 1.02 or higher ?
Performing some AES calls, while it would be better with VDI or Line-A calls. Like reading mouse, displaying some texts ... Many of such SW could work well with AUTO run instead Desktop run, without AES calls - what means faster start, less RAM usage ...
Writing not relocatable code for TOS calling program. - Very common bad practice. The result is working not on higher TOS versions, from hard disk and like. Lot of RAM in machine helps nothing. Also, helps not if program writes: "Insufficient RAM"

Not testing on machines with more RAM. Works with 512KB, 1MB , but fails with more. Especially 4MB is problem. They use code what writes higher and higher, and tests is it really written in RAM. If reading back matches not, they stop, and set it as top of RAM (why not using phystop genie ?) . When reaching 4MB bus error appears, and adios ...
Input read problems, especially joystick. . Now, this is case when I blame more DR, Atari than programmers of Atari SW. Whole solution in TOS is messy. Documentation is incomplete, details are missing. The result is work only in specific - mostly low TOS versions. And as best, even not TOS calling games suffer from input read problem - many Psygnosis games for instance.
So much for today. May be that to be continued
