FS#2922 - Rockboy optimizations, fullscreen, auto frameskip

Attached to Project: Rockbox
Opened by Karl Kurbjun (kkurbjun) - Monday, 16 January 2006, 22:35 GMT
Last edited by Daniel Stenberg (bagder) - Friday, 20 January 2006, 13:06 GMT
Task Type Patches
Category Games
Status Closed
Assigned To No-one
Operating System
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No


Here's another patch for rockboy that adds automatic
frameskip (it's pretty rough as I havn't figured out an
accurate timer), fullscreen support on the H300, and a
bit of assembly and some IRAM stuff. I'm not sure if
I'm doing the IRAM stuff correct though as it doesn't
seem to make much of a difference if any. I've also
added a statistics option that will show how many
frames per second the gameboy is seeing (not what the
player is getting) and what the frameskip is at. When
you enable stats sometimes you have to go back into the
menu and then come out to clear erronous values.
This task depends upon

Closed by  Daniel Stenberg (bagder)
Friday, 20 January 2006, 13:06 GMT
Reason for closing:  Accepted
Additional comments about closing:  Logged In: YES

Thanks. Applied and committed!
Comment by Karl Kurbjun (kkurbjun) - Tuesday, 17 January 2006, 04:03 GMT

I attached a new patch. The new one is agains cvs too. It
allows the full screen to be turned off, includes key
remaping (needs to be fixed so that you can't apply two keys
to the same button), but it can't do anything bad (will
alway be able to get to the menu and redo). The key mapping
also needs a bit nicer interface.
Comment by Daniel Stenberg (bagder) - Wednesday, 18 January 2006, 11:54 GMT

Cool! But...

1) it doesn't build for Archos Recorder and several other
platforms due to missing semicolons in rockboy/rockboy.c (I
also think I spotted a compiler warning)

2) it doesn't build for iriver H100 since it uses too much IRAM

It would be great if you could address these issues and then
we can commit this!
Comment by Alexander Spyridakis (xaviergr) - Thursday, 19 January 2006, 00:18 GMT

Is it realtime now, or it needs further optimization?
Comment by Karl Kurbjun (kkurbjun) - Thursday, 19 January 2006, 23:13 GMT

Some games are in realtime (with frameskip), but most are
not. The video update on the H300 could probably be
optimized with some asm, but the cpu core is what will
probably make the most difference at this point. This
latest patch fixes the build errors and adds option saving
and loading to the emulator. I don't think stats will show
up on any model other then the H300 right now, but I don't
have other players to develop with and the feature isn't
really useful to anyone other then developers. I'm not sure
what is causeing the noise at startup. I thought it was the
buffers not being initialized, but that didn't fix it.
Comment by Karl Kurbjun (kkurbjun) - Friday, 20 January 2006, 02:22 GMT

This patch fixes the sound problems it also adds an option
in the sound (as a define) to run from one buffer or 4.
I've found that using 1 buffer and witing for it to be
exhausted gives much more responsive sound, but it's much
more choppy. fixing the timing issues (getting a perfect 60
fps) would probably help this sound problem.
Comment by Daniel Stenberg (bagder) - Friday, 20 January 2006, 13:06 GMT

Thanks. Applied and committed!