theflyingape / vic-sss

Commodore VIC20: Software Sprite Stack library using modern 6502 assembler

Home Page:https://robert.hurst-ri.us/rob/retrocomputing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

vic-sss

Commodore VIC20: Software Sprite Stack library using modern 6502 assembler

I have found that programming for an 8-bit computer is a very challenging, yet personally rewarding, experience:

VIC-SSS provides a programmer-friendly API to manage your game's playfield with software-rendered sprites and other animations for a flicker-free video experience. On-the-fly custom character manipulations with dual video buffers accomplish these goals, avoiding the alternative of dedicating all internal RAM for a smaller, but fully, bit-mapped screen. This API supports both NTSC and PAL VIC 20 computers, and allows for display modes that change VIC's 22x23 screen layout.

The software sprite stack promotes a flicker-free video experience, with the option by the game programmer to govern frame buffer flips with screen raster timing. While the VIC 20 computer and its graphics are primitive to begin with, this API was created to strike a balance between machine and programmer friendliness – which is what the VIC is all about. The result of that friendliness makes the code size around 2 kilobytes and requires nearly all of the internal 4 kilobytes of RAM for graphics display and management. Thus, your game program will require some form of memory expansion – all examples provided will run on 8k expansion.

About

Commodore VIC20: Software Sprite Stack library using modern 6502 assembler

https://robert.hurst-ri.us/rob/retrocomputing

License:Artistic License 2.0


Languages

Language:Assembly 80.9%Language:C++ 17.5%Language:Shell 1.2%Language:Batchfile 0.5%