Re: Vulcan-74 - A 6502 Retro MegaProject
Posted: Thu Aug 13, 2015 12:00 pm
It really depends on how you read the "official" definitions of both as shown here...
https://en.wikipedia.org/wiki/Blitter
Because the logic in what I call the Sprite Processor is not available as standard memory to the CPU and because it can only be used to lay down graphics to the inactive back buffer by issuing commands, it could be called a sprite engine. It does not work line by line because it has full X and Y processing. The logic cannot be used to move one line of memory to another, it can only draw bitmaps (with one ignored color value) to the back buffer.

All Graphics are drawn by the logic, directly to the Back Buffer. The CPU is not halted.
I originally designed collision detection, but this was severely limiting, since "Sprites" would then have to either be defined by fixed size, or the logic would have to do a read of the back buffer before writing each pixel. On a 200x200 sized sprite, this would be a lot of memory reading and comparing!
So in reality, I think my logic is closer to a "Sprite Engine" then a "Blitter", just because it does only one thing... moves defined bitmaps to the back buffer with one transparent pixel without holding back the CPU.
But rather then jumping in on the growing debate on Hackaday, I decided to keep the name "Sprite Generator" regardless.
After all, I was never one to follow rules and recommendations and trends. If I did, I would have never started building this thing!
Maybe I should rename it to "Spritter Engine"!
Brad
https://en.wikipedia.org/wiki/Blitter
Because the logic in what I call the Sprite Processor is not available as standard memory to the CPU and because it can only be used to lay down graphics to the inactive back buffer by issuing commands, it could be called a sprite engine. It does not work line by line because it has full X and Y processing. The logic cannot be used to move one line of memory to another, it can only draw bitmaps (with one ignored color value) to the back buffer.

All Graphics are drawn by the logic, directly to the Back Buffer. The CPU is not halted.
I originally designed collision detection, but this was severely limiting, since "Sprites" would then have to either be defined by fixed size, or the logic would have to do a read of the back buffer before writing each pixel. On a 200x200 sized sprite, this would be a lot of memory reading and comparing!
So in reality, I think my logic is closer to a "Sprite Engine" then a "Blitter", just because it does only one thing... moves defined bitmaps to the back buffer with one transparent pixel without holding back the CPU.
But rather then jumping in on the growing debate on Hackaday, I decided to keep the name "Sprite Generator" regardless.
After all, I was never one to follow rules and recommendations and trends. If I did, I would have never started building this thing!
Maybe I should rename it to "Spritter Engine"!
Brad
BigEd wrote:
To clarify a question raised on Hackaday - could you confirm that there are no sprite engines here, but there is a blitter, so the sprites you demonstrate would by some people be called Blitter Objects.
(In the case of a sprite engine, there'd be limits on sprite numbers, and there might be sprite collision detection in hardware.)
(In the case of a sprite engine, there'd be limits on sprite numbers, and there might be sprite collision detection in hardware.)










