Programming for the Amiga and the Atari ST, involved distinct approaches due to differences in hardware architecture, operating systems, and development tools. Both machines had their own strengths and weaknesses, and while programming for either system was possible, many developers expressed a preference for the Commodore Amiga. One of the key factors that attracted programmers to the Amiga was its advanced graphics and sound capabilities. The custom chips in the Amiga, including Agnus, Denise, and Paula, allowed for smooth scrolling, hardware sprites, and real-time graphical effects. The presence of a blitter and a copper coprocessor provided efficient ways to manipulate graphics and automate visual effects, thus relieving the CPU from extensive processing tasks.
The Atari ST, while offering respectable graphics and sound capabilities, was often considered to be less advanced in comparison. The Amiga’s hardware features enabled programmers to create visually appealing and dynamic games and applications with fewer performance constraints. The Amiga’s hardware architecture, particularly the custom chips, provided unique features that appealed to programmers. The ability to perform hardware scrolling and create intricate visual effects with minimal CPU intervention opened up possibilities for more sophisticated game mechanics and interactive experiences. The Atari ST, lacking certain hardware features like a blitter and offering simpler graphics capabilities, required programmers to rely more heavily on the CPU for graphics manipulation. This could result in trade-offs between graphical quality and overall performance, potentially limiting the creative scope of applications. The Amiga platform offered a developer-friendly environment with a rich set of tools and libraries. AmigaOS provided multitasking capabilities, allowing multiple applications to run simultaneously. The presence of an integrated graphical user interface (GUI) and object-oriented programming support (BOOPSI) made it easier for programmers to create applications with modern interfaces. In contrast, the Atari ST’s operating system, while functional, was less advanced than AmigaOS.
The absence of multitasking until later ST models and the lack of a sophisticated GUI limited the ease with which developers could create complex and visually appealing applications. Many iconic and innovative software titles were developed for the Amiga platform, ranging from groundbreaking games to professional applications. These titles showcased the Amiga’s capabilities and inspired developers to create their own imaginative projects. The diversity of software genres, from graphic design to music production to gaming, made the Amiga an enticing platform for programmers with varied interests. The Atari ST had its share of notable software titles, but the prevalence of groundbreaking and creative applications was arguably more prominent on the Amiga. From a game logic point of view, you could pretty much run the same assembly code on both the Amiga and the Atari ST, most developers would have a core set of graphics routines for each machine, that had a common interface so you could just swap out one library for another and assemble code for each machine with little work. Many companies used this strategy to limit production costs but this also affected the quality, in the end many Atari ports to the Amiga platform could have been much better.