[stella] call for kernel templates
Glenn Saunders
mos6507 at yahoo.com
Fri Sep 28 23:20:16 CDT 2007
This is my first "serious" post here in a long while.
For those who may not know, against all odds, the
Chimera project is alive again and moving steadily
towards completion. Delicon is actively working on
this project each day now. The next board revision
looks like it will be the production one (knock on
wood). The current board revision is already working
as a multicart. It just doesn't have an onscreen menu
yet.
We're at the stage now where we're about to get down
and dirty with queues. We have to do this in order to
implement the menuing system, but it's also the start
of the internal reusable drawing libraries that new
games could use. What I have currently is 12-char
kernel which allows for 8-bit wide characters with no
gaps between characters or rows. However, it does get
cut off on the edge which is weird.
What I would like to do is gather together a database
of kernels based on wellknown games, but modified for
queue usage. These would represent the standard
graphic "modes" that the ARM libraries would be able
to support.
In the process of modifying these kernels, all loads
get replaced with absolute addressing. This sometimes
involves some tricky changes to add single cycle gaps.
The way I've been testing these things without a
Chimera is just to point the reads to a static address
with $FFs. Then just go through each load one by one
and change the addresses to 0. That way you can
verify that the kernel is still working without any
weirdness. So you'll usually see either a static
solid vertical strip or an empty strip.
In many of these cases the queues can be pretty much
literally mapped to the screen pixels, but in some
cases the kernels require the data to be interleaved
or reversed in some way (like playfield). So as long
as the ARM knows what mode you're using, it will
handle these transformations for you when it renders.
So we really should know what the requirements are for
each of these modes so the ARM libraries will support
them. Otherwise the only way programmers will be able
to use the queues is for the VCS to write into them
manually between frames (or write an ARM module, but
that feature is still kind of iffy right now).
So which "modes" would you like to see? And would
anyone be willing to volunteer to strip some kernels
out and mod them for queue use?
As I get these up and running I intend to post some
demo videos so you can see how it works.
____________________________________________________________________________________
Building a website is a piece of cake. Yahoo! Small Business gives you all the tools to get online.
http://smallbusiness.yahoo.com/webhosting
More information about the Stella
mailing list