FS#4829 - Pacbox improvements on H300

Attached to Project: Rockbox
Opened by Fredrik Öhrn (ohrn) - Tuesday, 14 March 2006, 00:56 GMT
Task Type Patches
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


blitt.diff contains an assembler implementation of blit_display, adds about 1 FPS.
iram.diff moves the palette array to iram, adds another FPS.
joystick.diff enables the joystick on the H300 remote.
This task depends upon

Closed by  Dave Chapman (linuxstb)
Saturday, 18 March 2006, 09:14 GMT
Reason for closing:  Accepted
Additional comments about closing:  All patches now in CVS.
Comment by Dave Chapman (linuxstb) - Wednesday, 15 March 2006, 01:31 GMT
Thanks for these. I've committed blit.diff and iram.diff (modifying the IRAM patch to only apply it for Coldfire targets - it actually slows down the iPod).

I'm not sure about joystick.diff though - is there a reason you are checking (status == PACMAN_LEFT) instead of (status & PACMAN_LEFT) ? Also, it seems a little "#ifdef" heavy IMO - you could possibly just use a single #ifdef to surround all the checks for remote buttons.
Comment by Fredrik Öhrn (ohrn) - Wednesday, 15 March 2006, 12:50 GMT
I added the the #ifdefs in case there are other suitable remotes that might not have as many buttons.
Changed to a single test for PACMAN_RC_ENABLE instead.

I changed the button tests to == becasue I thought it looked prettier. :)
The == test must stay for the RC buttons though, becasue they all have a common bit BUTTON_REMOTE.

Also I forgot to include a test for PACMAN_RC_MENU, fixed now.
Comment by Fredrik Öhrn (ohrn) - Wednesday, 15 March 2006, 22:03 GMT
Moving the Z80 registers and a lookup table to IRAM gives a major improvement, pacbox now runs at ~18.5 FPS.
Comment by Fredrik Öhrn (ohrn) - Thursday, 16 March 2006, 21:08 GMT
Improves speed on all ColdFire targets.