Rockbox

  • Status Unconfirmed
  • Percent Complete
    0%
  • Task Type Patches
  • Category Plugins
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version Daily build (which?)
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by mud - 2009-02-25

FS#9953 - Add Playback Control to more plugins

I’ve noticed that many plugins don’t have the Playback Control menu even though they could. I’m going to have a go at fixing that.

I’ve categorised the plugins which could use the menu like so:

Already have a standard-ish menu (not bitmap), it just needs to be added:
bubbles
chessbox
chopper
minesweeper
reversi
superdom
wormlet
xobox
clock
fireworks
vu_meter

These are the easiest case, it’s just a matter of adding the menu item.

Don’t have a menu that makes sense to add Playback Control to (either they don’t have a menu at all, or they only have a start-menu that can’t be usefully returned to):
flipit
invadrox
maze
robotfindskitten
rockblox
rockblox1d
rocklife
sliding_puzzle
snake
snake2
spacerocks
star
stopwatch
mandelbrot
oscilloscope

These are a mixed bunch. Some could actually use a menu, and some could just have a key assigned to bring up the Playback Control menu. More involved than the first bunch in general.

Already have a menu, but it’s really custom in some way. They either need to be switched to more standard menus, or something special needs to be done:
brickmania
chessclock
pegbox
rockpaint

These will probably be the most work.

Let me know if I forgot any plugins, or if you think it doesn’t make sense to add the menu to a plugin that I’ve listed above.

Attached is a patch for the first bunch. The others will be coming eventually.

I’d appreciate it if you leave this FS entry open until I get to the second and third bunch, even if the first bunch happens to get commited to svn.

mud commented on 2009-02-26 07:42

Added playback control to brickmania. Depends on  FS#9956  (change brickmania to use a standard menu).

I’d appreciate if you don’t open a task for each plugin.

The topic of this task is pretty generic, so if you choose good filenames for the patches, everything can be here.

I just committed the first patch. Thank you very much.
I’ll leave this open as you wanted.

mud commented on 2009-02-26 17:32

linuxstb pointed out that chessbox is an overlay on archos targets. It shouldn’t have the menu in that case, so here’s a patch to remove it on archos targets.

mud commented on 2009-02-26 17:42

Sorry, attached wrong patch. Here it is again.

mud commented on 2009-02-26 22:10

Here’s pegbox.

pegbox-menu.patch converts pegbox to use a standard menu. In addition to this patch, delete apps/plugins/bitmaps/native/pegbox_menu* .

pegbox-playback.patch goes _on top of_ pegbox-menu.patch and adds the playback_control menu.

kugel: Thanks for commiting that first bunch. I’ll try to keep the patches all in here like you requested.

mud commented on 2009-02-27 00:21

chessclock was way easier than I thought it would be.

mud commented on 2009-02-27 01:39

rockpaint turned out easy as well.

mud commented on 2009-02-27 23:48

I finished group 2 and I believe I’m done now. Attached are two patches, playback_control_or_quit.patch adds a function of that name to lib/playback_control.h, and is used in group2.patch. group2.patch adds the Playback Control menu in some fashion to the following plugins:
flipit, maze, oscilliscope, robotfindskitten, rockblox, rockblox1d, rocklife, sliding_puzzle, snake, snake2, spacerocks, star, stopwatch

Most of them now have a short menu upon “exiting” which lets the user choose Playback Control, Resume, or Quit. The plugins that had a pause mode, I changed the pause mode into a menu which allows them to select Playback Control, Resume or Quit. It’s less consistent this way, but highjacking pause mode like that is superior to preventing immediate exit from plugins.

In summary, to get all of my changes that aren’t in svn (as of r20133), the following patches should be applied roughly in order:
 FS#9956  Delete apps/plugins/bitmaps/native/brickmania_menu*
brickmania.patch
pegbox-menu.patch
Delete apps/plugins/bitmaps/native/pegbox_menu*
pegbox-playback.patch
chessclock-playback.patch
rockpaint-playback.patch
playback_control_or_quit.patch
group2.patch

If you want all of the changes, all_changes.patch includes everything listed there. (you still need to delete the bitmaps manually, the patch can’t do that)

If all of these patches get resolved in one way or another (accepted or rejected), this FS entry can now be closed.

Hi, I have tested all_changes.patch and it works great for me. I have some ideas to improve game menus in rockbox.
- same game menu for all games including playback control
- only display resume, if you can select it
- add help to all game menus, particularly to complex games like goban
I have written a patch for brickmania, which display only resume, if you can select it. It’s my first patch, so please be tolerant. I’m not really satisfied with the style of my code, but I hope you can tell me, how to improve it.

Brickmania Game Menu Patch

I have rework brickmania:
-add a small menu to choose difficulty
- correct buttons on Sansa

I hope it works fine for you.

I have added a highscore list, which display the five best games.
I have to change highscore.c, but it hasn’t got any effect on other plugins, which use this file. The function highscore_update() just returns the position of the input in the list.

add highscore list to rockblox
improve game menu in snake

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing