Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: RE: Optimized bitswap
From: Magnus Holmgren (lear_at_algonet.se)
Date: 2002-08-20


Den 20 Aug 2002 skrev Nielsen Linus (ext):

> OK. What is the error? And when does it happen?

I managed to fixed it, so I've attached my bitswap function. Both code and the flipdata array resides in the internal RAM. I've been using it a little while now, and it seems to be OK - or maybe not: I just heard an audio glitch. So more testing is probably needed. :)

As for using it: add bitswap.S to the makefile and remove bitswap() (but leave a declaration for it), create_fliptable(), fliptable[] and big_fliptable[] from mpeg.c.

Interesting detail: for the flipping to work properly (without audio glitches) I had to make it work from the end of the buffer, just like the C code...
 
> You have to save all registers from r8 and up.

Luckily I only use r0-r7. :)

  Magnus



  • application/octet-stream attachment: bitswap.S



Page was last modified "Jan 10 2012" The Rockbox Crew
aaa