New on the blog: my last post specifically on Amiga hardware for awhile, I suspect. This works multiplexed sprites into the little shooting gallery game I've been developing as an example, and gives us a reasonable look into the division of labor between hardware and software on the system.

https://bumbershootsoft.wordpress.com/2024/12/21/amiga-500-finishing-the-shooting-gallery-project/

#retrocomputing #amiga #amiga500

Amiga 500: Finishing the Shooting Gallery Project

This week we’ll finish the little Amiga 500 shooting gallery game we’ve been writing. The last step, as it was in its Atari parallels, is to expand the animation and simulation systems …

Bumbershoot Software
Since I'm now at the end, this is also where I end up having to grapple properly with a couple of @TomF 's offhand comments months ago about how the the OCS's sprite system is only redeemable because of the Copper. With one exception from two weeks ago, I never touched the Copper in sprite logic, and even there it was so that I could manage one of my sprites act more like the simpler Atari 2600 logic than like the Atari 800 logic.

I don't think that's what he meant. So instead I sat down and sketched out how far you could get by making every aspect of the system as dynamic as possible, and got a vision of a system that basically erases its existence from the end user's perspective.

If you push everything absolutely as hard as you can, you can end up in a world that looks like a slightly more powerful bob-based system than the full system you actually have.

Which feels like a letdown, but I also think it's inevitable.

@mcmartin So to clarify - I do not consider the built-in "autoincrement" sprite DMA reuse to be very useful. Because they have to be contiguous lists, as soon as sprites start moving, you end up copying a lot of data around very frame - either rearranging sprites in a single DMA channel, more moving sprite data from one DMA channel to another.

It gets even worse if you want 15-colour and/or wider sprites.

At that point, might as well just blit them :-)

@TomF I recall my question at the time was "Copper? Surely the Blitter is what gets you out of this mess?" so that checks out.
@mcmartin Well yes, but the Copper commanding the Blitter :-)
@TomF I have complicated feelings about the fact that to do this on the OCS you have to flip off a safety that they specifically call THE DANGER BIT to let Copper command the blitter.
@mcmartin Pffft. People go on about the Amiga OS being so great. First thing I did was cripple the OS to get it out of my hair. ALL YOUR BYTES AND CYCLES ARE MINE.

@TomF I was never impressed by Apple's "Windows 95 is Apple 84" campaign, and the more I learned about Classic Mac OS over the years the more contemptuous I got of it.

Workbench 1.3, though, absolutely *can* claim to be Win95 class with a straight face.

The A1200 is competing with "install Linux on a simulated Atari ST" here, and yeah, I'll take WB3 over that.

@mcmartin The concept of a games machine having an OS was always funny to me. Especially one without virtual memory. It was just goofy.