Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

#rockbox log for 2009-06-09

00:00:29 Join funman_ [0] (
00:01:07 Quit froggyman (Read error: 104 (Connection reset by peer))
00:01:30 Quit evilnick (" ajax IRC Client")
00:01:33 Quit faemir ("Leaving")
00:02:10mtsaratoga : Sure. I have that on mind.
00:02:29mtAnd share the same bitstream files with wma ?
00:02:59saratogawell for now you can just change cook_mdct_backwards to mdct_backwards I think
00:03:13saratogait looks like you've already included the codec library's imdct, you just don't call it :)
00:03:39markunmt: and can you measure the speedup?
00:03:57markunsaratoga: it's tremor's imdct, right?
00:04:17saratogamarkun: yes but with assembly optimizations
00:05:57saratogado i have to enable building cook somewhere?
00:06:41mtsaratoga : Alright will do. I'm just gathering some ideas, can't code now actually. :)
00:07:35saratogawhat do I have to do to make cook compile?
00:08:04mtmarkun : Haven't tried it before really, but will surely try.
00:08:19mtsaratoga : the test program you mean ?
00:08:40saratogai thought you had it working in the sim?
00:09:12mtYes but I haven't uploaded any patches for that yet.
00:09:22saratogaah ok
00:10:37mtSomething weird is happening with metadata tags, when that's is fixed I could post a patch.
00:11:44 Nick fxb is now known as fxb__ (
00:11:59linuxstbmt: Or you could post a patch and maybe someone else will spot the bugs.
00:12:34 Quit TheSphinX^ (Remote closed the connection)
00:13:20kugelwe definitely have too much open bug reports :/
00:15:15 Quit funman (Read error: 113 (No route to host))
00:15:40 Join webguest18 [0] (n=562d5469@gateway/web/cgi-irc/
00:15:49mtlinuxstb : I don't know if it's really a bug, or if my computer is suddenly thinking for itself :/ .. I'm trying to find what my conversation with domonoky about it in the logs.
00:17:47kugelbertrik: what happened to ?
00:19:10linuxstbmt: I'm just looking at that now (5th June, 17.41.45 onwards)
00:19:35linuxstbmt: Your pastebin has expired though...
00:19:45*kugel thinks we should close a few with out-of-date and ask for re-opening
00:20:15 Quit Juice^ ("- nbs-irc 2.0 - -")
00:20:34mtlinuxstb : 1 min. I'll check and rewrite the expired ones.
00:21:06 Quit bertrik (Read error: 113 (No route to host))
00:21:12linuxstbmt: It's OK - seems the important one, and that's fine.
00:23:34 Join funman [0] (n=fun@rockbox/developer/funman)
00:23:42 Quit funman_ (Read error: 104 (Connection reset by peer))
00:23:48 Join faemir [0] (
00:23:59linuxstbmt: Does the code compile without warnings?
00:24:44mtfor the parser and the codec, yes. (some warnings in libcook/bitstream though, but I don't think they're relevant ? )
00:28:59mtfor some reason,I can't get anything in this day's log beyond 16:49. (5th of june)
00:30:09linuxstbmt: I always use the raw logs -
00:30:31 Quit mt (Read error: 113 (No route to host))
00:30:56 Quit faemir (Read error: 104 (Connection reset by peer))
00:31:06 Join mt [0] (n=MTee@rockbox/developer/mt)
00:33:19pixelmalooks like another breakage on an URL (the line below in the raw logs has one with some weird characters, don't mention it here again)
00:33:40CIA-38New commit by bluebrother (r21227): Remove never used code −− libmtp is not used on Windows.
00:34:54 Quit webguest18 ("CGI:IRC (EOF)")
00:38:10 Quit gregzx ("ChatZilla 0.9.84 [Firefox 3.0.10/2009042316]")
00:38:19***Saving seen data "./dancer.seen"
00:39:17 Join faemir [0] (
00:39:24 Join PaulJam_ [0] (
00:39:24 Quit PaulJam (Nick collision from services.)
00:39:31 Nick PaulJam_ is now known as PaulJam (
00:39:47 Quit flydutch ("/* empty */")
00:46:31 Quit mt ("ChatZilla 0.9.84 [Firefox 3.0.10/2009042316]")
00:51:00kugelfunman: how can I put some vars into the uncached iram?
00:51:21kugeli.e. I want to test if the blue bars disappear if I put it into non-cached
00:52:28funmanuse UNCACHED_ADDR(address)
00:52:57kugelyea, but that only works for a pointer to that vars
00:53:20kugelI would like to put the lcd framebuffer into uncached, using the config-*.h define
00:53:32 Join bubsy [0] (n=Bubsy@
00:53:53funmanthat's not supported atm : we would need to modify like sandisk/ does
00:54:16stripwaxcould you not rename the lcd framebuffer, and export the uncached pointer?
00:54:17funmanwell you could do the same than in ata
00:54:28kugelI guess the effect is the same though, when I access the framebuffer with that macro?
00:54:29funmani.e. what stripwax just said
00:54:39stripwaxoh! :)
00:55:25 Quit ender` (" Top reason why compilers are like women: Miss a period and they go crazy")
00:55:25funmanwhy I named this file ata-XX while it doesn't have anything to do with ata is still a mystery >>
00:55:49kugelthe framebuffer is declared in lcd-16bit.c
00:56:10linuxstbWhy is it called uncached iram? Is there some cached iram?
00:56:19funmanlinuxstb: yes
00:56:38kugel IRAM_LCDFRAMEBUFFER is a config-*.h define
00:56:53stripwaxAny reason why sim build doesn't generate a .map file? or maybe, where's the switch in the regular build that tells it to generate a .map file? (I couldn't find -Map option in makefile but maybe was looking in wrong place?)
00:57:07kugelthough, I notice cachealign_at_least_attr(16) might give us problems
00:57:16stripwaxlinuxstb - I think iram accessed through the cacheable address range gets cached, and (the same) iram accessed through the alternative address range doesn't
00:57:18 Quit barrywardell ()
00:57:20funmankugel: why ?
00:57:33kugelwe need 32 on our targets?
00:57:47funmanstripwax: i think because the memory map is different between devices and real operating systems
00:58:02*linuxstb thought iram was generally single-cycle, and hence didn't need caching, but admits to not know much about RAM...
00:58:04funmankugel: i don't know why the lcd framebuffer must be aligned
00:58:11kugelalso, IIUC codecs and plugins are shared libs in the sims
00:58:27kugelwhy not?
00:58:37kugelit's big enough to cross cache line boundaries
00:59:00funmanthat's not a problem
00:59:07kugelthough, I don't understand all of the caching business
00:59:38kugelwhat's the reason to cache align?
00:59:40funmanyou must care about the caches when you are using DMA (the memory and the caches must be in sync because the DMA controller don't know about the caches)
00:59:52stripwaxlinuxstb - good point though; maybe it isn't single cycle; or maybe we just don't need to cache iram
01:00:05funmanor also when you execute self-modifying code (loading a plugin into ram is self-modifying code)
01:00:32funmanbecause the data in instruction cache might not be up to date with what you wrote to memory
01:00:42 Quit tessarakt ("Client exiting")
01:00:45 Quit dfkt ("-= SysReset 2.53=- Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn.")
01:01:13funmanlinuxstb: i don't know anything about memory, i think the as3525 datasheet details what kind of memory is used for iram
01:01:50kugelT1 RAM IIUC
01:02:51saratogayeah its actually DRAM
01:05:40CIA-38New commit by funman (r21228): FS #10048 : enable MMU and data cache on Sansa AMS to give a major speed up ...
01:06:06kugelFlynDice & funman: Really good work on that one
01:06:24funmanbig up to FlynDice!
01:08:06notlisteningBigup!!! to the max
01:08:36notlisteningshould i test?
01:09:22notlisteningI am on it
01:09:25 Quit martian67 (Connection timed out)
01:11:43notlisteningbuilding....remind me of C&C
01:13:55 Quit Thundercloud (Remote closed the connection)
01:14:54*kugel would also like if funman commits smaller patches
01:15:03kugeli.e. in more parts
01:15:29notlisteningone fix per patch
01:15:54notlisteninghumm i am bad for that one don't do any thing at a time ;)
01:17:50funmankugel: i could have separated the use of caches and the change of memory map this time, sorry :/
01:17:58 Quit faemir (Read error: 104 (Connection reset by peer))
01:18:51 Quit amiconn (Nick collision from services.)
01:18:53 Join amiconn_ [50] (n=jens@rockbox/developer/amiconn)
01:19:00 Quit pixelma (Nick collision from services.)
01:19:00 Join pixelma_ [50] (n=pixelma@rockbox/staff/pixelma)
01:19:12 Nick amiconn_ is now known as amiconn (n=jens@rockbox/developer/amiconn)
01:19:18 Nick pixelma_ is now known as pixelma (n=pixelma@rockbox/staff/pixelma)
01:19:19 Join faemir [0] (
01:21:51 Quit funman (Read error: 113 (No route to host))
01:24:09 Quit kachna|lappy (Remote closed the connection)
01:24:30 Join kachna|lappy [0] (
01:24:30 Quit JdGordon| (" ajax IRC Client")
01:26:59 Quit robin0800 (Read error: 110 (Connection timed out))
01:27:40 Join kugel_ [0] (
01:28:11 Quit kugel (Nick collision from services.)
01:28:16 Nick kugel_ is now known as kugel (
01:34:28 Quit timc (Remote closed the connection)
01:35:03stripwaxfunman - mm, good point. I'm (rather pointlessly, perhaps) trying to make a working sim build with profiling support
01:37:35notlisteningwell that patch rocks so to say
01:37:52saratogai'm getting 44MHz to decode a 128k vorbis file, which is way more then it should be
01:38:05notlisteningor should i say commit for the Sansa
01:38:14kugelstripwax: that's probably really pointless
01:38:24 Join funman [0] (n=fun@rockbox/developer/funman)
01:38:38notlisteningstuck at 62mhz
01:39:16notlisteningsaratoga, should we still be getting random scroll wheel flashes?
01:40:11notlisteningcool well just get it going with the beat and i will be impressed :D jk
01:40:24stripwaxoriginally it was just so I could test out some changes to profiling code rather than actually use it to profile anything - thought I'd see if it could also be used to profile anything but not really. Maybe sim built with profiling should do the regular gcc -pg thing
01:43:27notlisteningand a bit more info on the FM issue i am having, the OF tunes to local radio stations but does not give me any sound? RB just hangs. It was a non radio version for europe
01:46:11saratogacan I force codecs to be entirely in IRAM on the e200v2 like for the clip? i want to test something
01:46:38kugelyea, #define CODEC_IRAM 0 or so
01:47:12kugelbut you also need to change config.h and CODEC_BUFFER_SIZE accordingly
01:47:25funmandefine AMS_LOWMEM in as3525.h (only step required, thanks to FlynDice)
01:47:46 Quit faemir (Read error: 110 (Connection timed out))
01:47:53funmanor is it you kugel ? (r21000)
01:47:56kugelfunman: that's my work, but ok :)
01:48:10 Quit n1s ("Lmnar")
01:49:00kugelfunman: config.h isn't trimmed on that though (let me change that)
01:50:20saratogai'm pleasantly surprised libfaad links with that defined
01:50:28tmztis fuze broken again? it seems it was something with radio last time I tried
01:50:32tmztI just svn updated
01:50:38tmztand configured
01:50:59funmantmzt: some people needed to update their bootloader
01:51:14tmztit won't even build for me, can't see how that would be the issue
01:51:30saratogadelete your build directory, start over
01:51:51tmztmkdir again?
01:51:56saratogain the future, if you see that the build system can build a target, its best to assume its a problem at your end :)
01:52:06tmztah, ok
01:52:17tmztif it's not red you mean?
01:52:41saratogaha make clean reveals that it cannot link
01:53:01kugelsaratoga: iram will not change with only that define I guess, better double check the
01:53:11saratogakugel: yeah its giving me a lot of errors
01:53:24saratoga"codec_crt0.c:(.text+0x70): undefined reference to `iramstart'"
01:53:29saratogaany ideas what else i missed?
01:53:32kugelshould be better after my commit
01:53:36saratogaah ok
01:54:09stripwaxsaratoga - recent vorbis profiling on ipod5g - floor1_inverse2 seems surprisinig.
01:54:57saratogai need to work on getting mdct_backwards faster
01:55:05CIA-38New commit by kugel (r21229): Use the AMS_LOWMEM define to indicate memory size as the .lds files do in config.h too.
01:55:37stripwaxnon-inlining render_line (and splitting mdct_backward into the individual steps) gives this
01:56:10saratogawow thats a tiny little file
01:56:39kugelI take total_ticks indicate speed?
01:56:45stripwaxyou can speed up the mdct_bitreverse (a bit) by observing that you only need to compute the bitrev12 every other time (so bitrev12(bits) once, then just add 1<<(12-shift) or something like that, I forget the actual detail)
01:56:54stripwaxBut I observed only a tiny improvement
01:57:14stripwaxkugel - not speed, just the running time of the test I ran
01:57:23kugelah ok
01:57:49stripwaxI'm wondering if there's so much overhead in profiling that render_line shows up as so much time. it really does very little, but (as you can see) gets called a huge number of times
01:58:45saratogastripwax: what bitrate file?
01:59:28stripwaxI made a few local changes to render_line (trying to encourage gcc to use registers for all vars and a bit of unrolling and reordering in the hope that gcc spits out ldmia/stmia) but didn't seem to improve anything much
01:59:53stripwaxsaratoga - hm, somewhere between 128 and 192 I think. Either q4 or q5, i forget
02:02:54saratogaok just added that to my imdct notes
02:03:12saratogarender_line looks like it could probably be improved, but it'd help to know what its doing
02:03:14saratogaany ideas?
02:04:06saratogavorbis_apply_window can be made much faster too, but it looks like it uses too little CPU to make much difference
02:04:13kugelmy interrupt patch is much faster than bertriks patch
02:04:20kugel65fps vs 90
02:04:22stripwaxrender_line is tremor only not imdct. it's building the piecewise linear spectral floor i.e. given coordinates x0,x1,y0,y1 [and n] plot the line (to min(x1,n))
02:04:32kugelbut both do 100fps when boosted, and both show blue bars :S
02:04:51stripwaxvorbis_apply_window - uses vect_mult_bw and vect_mult_fw on arm?
02:05:49saratogait does
02:05:53stripwaxrender_line has to "match the spec" which (I think) means it needs to do a crusty divide and not just a generic bresenham. btw this page could be REALLY useful:
02:06:02saratogabut the algorithm its using for windowing is inefficient
02:06:14stripwaxsaratoga - oh! in what way?
02:06:25stripwax(I only recently changed it.. a bit anyway..)
02:06:26saratogait could probably be rewritten to not have that if inside the loop though
02:06:52saratogait doesn't take advantage of the fact that the mdct coefficients have "middle half" symmetry
02:07:03saratogaso it does 2x as many loads and multiplies as needed
02:07:06stripwaxwhich if inside which loop? sorry if I'm being thick
02:07:42saratogain render_line i bet if(err>=adx){ could be done better
02:07:55kugelfunman: your UNCACHED_ADDR macro only works for char*, right?
02:08:12stripwaxsaratoga - oh, thought you were referring to vorbis_apply_window. right.
02:08:28stripwaxsaratoga - that seems to compile nicely to a few conditional instructions without any branch on arm
02:08:44saratogaeventually i'm going to rewrite the IMDCT to exploit that symmetry, and when I do i'll fold in the vorbis windowing functions
02:08:45stripwaxsaratoga - you can preload err with -adx and then just if(err>=0)
02:08:52Unhelpfulstripwax: you can adjust the rounding in bresenham to make it do pretty much whatever you want. if you want the first and last step half as long, it can be done, it's just a bit trickier as you have to mess about with the starting value of the error.
02:08:52saratogabut expect a very small speed up, but perhaps a lot of saved IRAM
02:08:55 Join itcheg [0] (i=62db4c46@gateway/web/ajax/
02:09:21stripwaxsaratoga - is that just the same optimisation as the LOWMEM branch of Tremor uses? (which is also the basis for Tremolo, but not rockbox or trunk tremor)
02:09:40saratogai didn't look at lowmem
02:09:48funmankugel: hum right
02:09:54stripwaxI think that link I gave also did the same optimsation
02:10:00saratogai was thinking compute which value of x gives err<adx and remove the branch entirely
02:10:54kugelfunman: that needs some typeof magic, or complicated casting :(
02:11:09funmanjust looking at it
02:11:15 Quit PaulJam (".")
02:11:20stripwaxsaratoga - (unless you use a div) that might be slower than just doing the conditional instruction
02:11:27tmztsaratoga: well, stuck on bootloader screen now
02:11:29stripwax(even if you use a div)
02:11:50saratogawhat div?
02:12:17kugelfunman: it would probably be better to use a inline function for that
02:12:34stripwaxi.e. adx/ady
02:12:38kugellike gigabeat's virt_addr_to_phys(or whatever that's called)
02:12:47 Join swolchok [0] (
02:13:37funmankugel: i am not sure
02:13:58stripwaxmaybe I'm confused .. how do you propose getting rid of the if(err>=adx) test
02:14:03funmancompiler can store the uncached address in the data segment if the cached address isn't used
02:14:10funmanelse converting only costs one instruction
02:14:39stripwaxwe still need the value of y at each x coord
02:15:10saratogastripwax: maybe I misread it but it looks like all the initial runs take TRUE, then eventually they all switch to FALSE
02:15:18saratogai meant to precompute which index is which, and split that into two loops with no branch
02:15:27kugelfunman: uncached address is a bit slower for the lcd too
02:15:33stripwaxnope, because we subtract adx from err, and then start incrementing err again
02:15:55funmankugel: you lose the advantage of data cache
02:16:04stripwaxthe line has a fixed gradient, but non-integer
02:16:11stripwax^not necessarily integer
02:16:59saratogaady and adx are constants though
02:17:00stripwaxone easy optimisation though: if ady>adx then the test will always be true
02:17:56kugelfunman: ok, my patch is fast enough to still reach 100fps when boosted
02:17:59kugelstill blue bars
02:18:00saratogaso error is incremented by adx-ady each iteration
02:18:12saratogaopps decremented byt hat amount
02:18:18*kugel has no idea how to handle those
02:18:19stripwaxsaratoga - right, they are. we step y by (base) if we don't breach our err margin, and we step y by (base+1) if we do breach our err margin (and in this case reset our err calculation)
02:18:33swolchokhey, I'm a grad student and I would like a customizable MTP device for research. any idea how much work it would be to implement MTP in rockbox? I saw it as a suggested google SoC project...
02:19:09stripwaxsaratoga - say adx = 100 and ady = 1 .. every 100 steps, err resets from 100 to 0
02:19:26stripwaxsaratoga -'s_line_algorithm
02:19:41funmankugel: did you try lowering dbop freq?
02:20:07kugeldoing that now
02:20:14stripwax(not exactly identical but same idea)
02:20:23kugelthat means we're maxed to 50fps IIUC though
02:20:25saratogaok I don't know the algorithm so so if you're sure it won't work then never mind
02:20:33funmanswolchok: you could look at already existing usb code (for mass storage, serial, and HID)
02:20:54swolchokfunman: good idea
02:20:57saratogaalso ask gevaerts about it
02:21:02saratogahe wrote much of the USB code
02:21:14notlisteningswolchok, you need something with network hardware on it for that right?
02:21:27stripwaxsaratoga - I may have misunderstood your idea :) but it sounds like you would generate two line segments with two different gradients - not same result
02:21:30swolchoknotlistening: no, it's USB
02:21:41notlisteningoh :P
02:21:44swolchoker, it's transport-agnostic; can be over USB or IP
02:21:58saratogaoh i guess ady can be negative?
02:22:03kugelfunman: interesting. with half dbop, I even get blue bars at unboosted
02:22:21kugeland yes, both are at 50fps
02:22:33kugel(both boosted and unboosted I mean)
02:22:33saratogawell i guess the best approach would be to come up with a better algorithm for that line
02:22:40saratogai suppose it can't be precomputed and cached?
02:22:55stripwaxsaratoga - sure, ady can be negative, and abs(ady) can be < or > than abs(adx)
02:23:12stripwaxAnyway .. point is I'm surprised that really as much time is spent doing that as profiling suggests it is ..
02:23:20gevaertsswolchok: as far as I know, everything that MTP needs from the underlying stack is there. There's no MTP code at all however, and I don't really know how much work it is. Also, I've never managed to find GPL-compatible device-side MTP code anywhere, so everything needs to be written
02:23:28stripwaxas you say, it's a really small function, and the generated asm doesn't look actually very bad at all
02:24:10swolchokgevaerts: AFAIK, GPL is not an obstacle for never-released research code :)
02:24:30kugelI just noticed I masked pop error instead of fifo full :/
02:25:03gevaertsswolchok: well, (a) I've never seen non-GPL MTP code either, and (b) I'm not writing research code :)
02:25:06kugelno, I was looking at the wrong table now
02:25:37saratogastripwax: well its a loop with a really big number of iterations that does a branch every iteration
02:25:52stripwaxnot on arm..
02:28:04Unhelpfulsaratoga: arm has many instructions which offer conditional versions. i believe that up to three instructions after a test may be flagged as storing results only on <condition>
02:28:25saratogasure but you still have to evaluate the branch, even if the adds are conditional
02:28:53stripwaxsaratoga - the subtract is conditional too :)
02:28:57kugelUnhelpful: it's limited to 3 instructions?
02:29:00funmanUnhelpful: there is no limit
02:29:04stripwaxsure you need the branch to go back to the start of the loop but that's it
02:29:14Unhelpfulfunman: i could swear i recalled there being some limit :)
02:29:21kugelI thought it's unlimited (i.e. upto the instruction which touches the flag in question again=
02:29:23swolchokthe arm arch reference manual says nothing about a limit
02:29:32swolchokpage A3-5
02:29:42kugelok, Unhelpful has been told :P
02:29:44Unhelpfulthat's even better then ;)
02:30:15swolchokalso a branch is not the same thing as a test...
02:30:38stripwaxother than unrolling and using some ldmia/stmia to do the update, I didn't have any good ideas on how to improve on gcc :(
02:30:42swolchokoh, I think I misparsed
02:30:54swolchokis that pastebin the generated assembly in question?
02:32:01 Join cool_walking_ [0] (i=cb3b81c3@gateway/web/ajax/
02:32:34stripwaxyep. actually the arm build will have slightly different assembly right now, I have a minor tweak or two in there, but nothing substantial
02:32:59swolchoki see nothing wrong with the use of predicated execution in there, but what do I know
02:33:00 Join JdGordon| [0] (i=43a02c5a@rockbox/developer/JdGordon)
02:35:18saratogai don't understand what the vorbis inverse quantization code is doing
02:35:30saratogai like WMAs so much better
02:36:30 Join r0b- [0] (n=nnscript@
02:37:10funmankugel: the macro in arm/system-target.h is fine (replacing | by +) but fails in sd code because typeof() returns char[] not char*
02:38:23***Saving seen data "./dancer.seen"
02:38:23stripwaxI reckon if you could take out the division (i.e. do something better than int base=dy/adx) that would be an improvement. base = dy/adx ; ady -= abs(base*adx) is uggggly
02:38:29kugelfunman: really?
02:38:38 Join calman_ [0] (
02:38:50 Quit funman (Read error: 104 (Connection reset by peer))
02:39:13stripwaxsaratoga - which bit of inverse are you looking at?
02:39:22saratogai don't understand the quatization exactly
02:39:31saratogaso its basically sending a waveform sampled at just a few points, and then you compute the projection of what on to it?
02:40:38stripwaxso, as I understand it (and I may not be talking about the same thing you are), vorbis encodes a spectral floor and then a residue (= spectrum less the floor)
02:40:48swolchokstripwax: isn't that equivalent to ady -= (dy - (dy % adx))?
02:41:03kugelfunman: try *(typeof(*a)) maybe
02:41:06stripwaxboth floor and residue are quantized in some way (floor quantized discretely as piecewise linear, residue ... not sure...)
02:41:50 Join funman [0] (n=fun@rockbox/developer/funman)
02:42:12stripwaxswolchok - something like that (is mod faster than div?)
02:42:14saratogakugel: i updated my SVN but I still get errrors with that define
02:42:18saratogadid it work for you?
02:42:27 Quit calman_ (Client Quit)
02:42:27kugelI didn't try actually
02:43:07kugelas I said, you still need to change CODEC_BUFFER_SIZE, that's not dependant on AMS_LOWMEM since it's a config-*.h define (but probably could be)
02:43:37kugelfunman: doesn't indicate that it's not working for pointers
02:43:41 Quit daurn| (Read error: 110 (Connection timed out))
02:43:57kugeltypeof (int*) gives a pointer to int
02:43:58swolchokstripwax: haven't the slightest. with a constant modulus, you can of course do it with shifts
02:44:14 Join daurn| [0] (
02:44:20funmankugel: not typeof(int[])
02:44:57funmanif my laptop doesn't crash i'll commit a better macro
02:45:12swolchokstripwax: does arm even HAVE a div instruction?
02:45:24swolchokIIRC it's implemented by the C library
02:45:33saratogait does not
02:45:40funmanit has divide by powers of 2
02:45:42stripwaxswolchok - not sure; but you should check out the awesome asm gcc produces. some bit twiddling followed by a mult iirc
02:46:49stripwaxoh.. if it's in the C lib then that may well be the cause of much arm slowness...
02:46:53saratogareducing the codec buffer size doesn't seem to help, it still gives this:
02:47:08swolchokfunman: well of course :)
02:47:25swolchok_rt_udiv or _rt_div would be my guess at the function name
02:47:44funmanit's not exactly in the c library but in gcc itself
02:48:06swolchokoh yes of course
02:48:42 Part toffe82
02:49:07tmztanyone can help with ams bootloader?
02:49:15saratogathe values of adx are possibly constrained so there may be some optimization possible
02:49:15stripwaxheh - this looks very much like the same problem ;-)
02:49:20swolchokI would expect mod to be faster than div
02:49:30swolchokbut I haven't a good reason
02:49:39funmantmzt: not if you don't tell your problem
02:50:06tmztfunman: I mean how you use it now that it's moved to rbutil directory
02:50:13stripwaxswolchok - yeah, me too, and also not sure why I think that.
02:50:19tmztfunman: haven't done that since january
02:50:31saratogayou mean install it?
02:50:46saratogaSansaAMS wiki page
02:51:39CIA-38New commit by funman (r21230): Sansa AMS: make the UNCACHED_ADDR macro work for any type of pointer, and only use pointers with it, not arrays
02:53:34stripwaxsaratoga - well.. x0<=0<=x1<=4095 I think . maybe 8192
02:53:49stripwaxmax window size
02:54:08saratogamax window size is 2048 in practice
02:54:22saratogaand n is half that
02:54:23saratogaso 1024
02:54:36saratogabut the values seem randomly distributed between 3 and about 100
02:54:37stripwaxand 0<=y<=255 so -255<=dy<=255
02:54:44saratogaerr 200
02:54:48swolchokmake sure we write the code so it crashes if anything unexpected happens ;)
02:55:19stripwax(hence my suspicion that the arm infocenter link points to something very very handy here...)
02:55:49stripwaxsaratoga - which values are distributed like that? (the x's or the y's?)
02:55:49 Quit sbhsu ("leaving")
02:57:00tmztdoes this look right: ../rbutil/mkamsboot/mkamsboot ~/Desktop/fuzeA.bin bootloader-fuze.sansa fuzea.bin
02:57:19kugelfunman: hmm, apparently there's no push or pop error
02:57:26stripwaxhm, that just means that the floor has been decomposed into shorter segments
02:57:44stripwaxok so we want an algo that has fast 8/8 performance and not-bad 16/8 performance.
02:57:46funmantmzt: it looks like the example, so i think it's right
02:57:53stripwax(or 12/8 performance)
02:58:04tmztI didn't see the example on the wiki page
02:58:05saratogaadx is almost always > dy
02:58:20saratogaadd a check for adx > dy and set it to 0
02:58:22stripwaxlikely - x range is much larger than y range
02:58:25*kugel forgot VIC_INT_ENABLE
02:58:30stripwaxheh!! nice
02:58:51funmankugel: i need to test the patch to actually see what these blue bars are :) - but now i have to sleep a bit .. see you !
02:59:04kugelsee you too
02:59:13saratogabase is also very very small
02:59:25saratogayou could probabyl compute it iteratively very quickly just by subtracting
02:59:26stripwaxhm, would need to flip sign though
02:59:30funmantmzt: : * Usage (example for clip): ./mkamsboot m300a.bin bootloader-clip.sansa output.bin
02:59:41 Quit funman ("leaving")
02:59:51saratogatmzt: maybe you should wait for a release
03:00:05stripwax^ er, no, disregard that
03:00:19notlisteninglol @ saratoga
03:00:35saratogacheck if adx > dy, if true set to zero
03:00:48tmztI just haven't had to update the bootloader since I first installed it
03:00:48stripwax^ actually disregard the disregard. we need base = (abs(dy)<abs(adx))?0:dy/adx
03:00:51saratogaelse subtract adx from dy until it is
03:01:05saratogayou don't even need the divide
03:01:27notlisteningI'm cooked night all
03:01:29saratogathe largest value of base in my test file is +/- 3
03:01:35stripwaxyep. don't need abs(adx), as x1 constrained to be > x0 anyway
03:01:48 Quit notlistening ("Leaving")
03:02:29saratogayou want to write this or should i
03:04:15stripwaxI really gotta go sleep .. but if base is always small it should go on the right hand side of the mul for arm speed
03:05:17stripwaxbasically something like: int base = 0; while(ady>adx){ ady-=adx;base++ }; ady=abs(dy); if(dy<0) base = -base; ?
03:07:07stripwaxcould even unroll three times if base is +/- 3. ady-=adx; if(ady>0){base++;ady-=adx); if(ady>0){ base++; ady-=adx); if(ady>0){base++;ady-=adx}; then a while loop; ..?
03:09:11stripwaxCould degrade badly for low bitrates maybe - 16 iterations worst case?
03:09:27stripwaxdepends how bad gcc div is
03:11:21saratogaworks great
03:11:30saratogadidn't unroll though
03:11:31stripwaxmine's still building. sigh.
03:11:45saratogajust tried sim
03:11:52stripwaxah, cool
03:12:16saratogagive me 40 seconds
03:12:28stripwaxcoldfire has div, right? so we'd maybe still want to use div there?
03:12:57saratogai doubt it
03:13:18saratogastripwax: how hard would it be to give wma the same treatment
03:13:26saratogaprofiling that is
03:14:04stripwaxoh, thought you implied I knew anything about wma :) not hard, but can't do that tonight.
03:14:21stripwaxprofiling coldfire or arm? or both? or don't care? :)
03:15:12saratoga252.9% real time on the e200v1
03:15:31stripwaxsure. setting up a profile build is not hard, I'll get to it tomorrow if I have time. so wma only slightly worse than tremor?
03:15:42saratogaits actually faster
03:15:54saratogai put a lot more time into WMA
03:15:54stripwaxmm, I get 29Mhz vorbis
03:16:09saratogalet me run without
03:16:54stripwax29Mhz 128 (ish), 32Mhz 192 (ish), I think
03:17:23saratogawell the entire function only uses 6 mhz or so
03:17:31saratogaso if we saved 2 thats pretty goodf or such a simple trick
03:18:16stripwaxoh, wait, now I'm super confused. Is your 31.6Mhz number your WMA speed or your tremor-with-this-change speed?
03:19:29stripwaxriiiiight. Ok fine. My last svn timings are on FS #9882
03:20:08stripwax31.25Mhz 192 apparently
03:20:17saratogawithout the change i get 253% anyway
03:20:20saratogai wonder if I did something wrong
03:21:04stripwaxI wonder if the profile was lying
03:21:05saratogaarg didn't revert my change correctly
03:21:29stripwaxok I really gotta go sleep - I'll be around later
03:21:56saratogaok check the logs
03:23:05 Join alupa [0] (n=1824bf02@gateway/web/cgi-irc/
03:24:23 Quit kugel (Read error: 110 (Connection timed out))
03:24:44 Quit stripwax ("")
03:27:56saratogaoh hmm this function doesn't get called that often
03:31:20saratogaha after all that its not really any faster
03:34:21 Quit J-23 (Read error: 54 (Connection reset by peer))
03:34:23 Join J-23_ [0] (
03:38:58saratogastripwax: i think the function is called way too infrequently for the divisions to matter much
03:39:08saratogait looks to me like its probably only called a dozen times or so per block
03:39:23saratogashould have checked that first
03:39:47saratogabut we can still use the fact that base is adx>ady almost all the time to improve the loop
03:40:12saratogabreak it out into the base = 0 case (which is simple and common) and the base !=0 case which is slower but very rare
03:40:50saratogaassuming your profile results are right i bet that'll make a bigger difference
03:42:05 Quit alupa ("CGI:IRC (EOF)")
03:43:33 Join alupa [0] (n=1824bf02@gateway/web/cgi-irc/
03:44:27CIA-38New commit by kugel (r21231): Alright, revert r21229 for now. Stupid me forgetting about the inclusion sequence :(
03:47:47 Quit itcheg (" ajax IRC Client")
03:54:49alupaHi folks. So I started using Rockbox recently and noticed the clock displayed in the "System > Time & Date" menu is a little left of center when in 24h format. No biggy unless you're anal like I am. I found the problem in the code and would like to share a fix but I don't know anything about submitting patches or using the bug tracker. Anybody here willing to commit the change?
03:56:32alupaThe issue is on line 179 of apps/menus/time_menu.c
03:57:31saratogaif you've used SVN to check out you can just use svn diff > file.patch and post that
03:57:54saratogathis would be a better link:
03:57:56Unhelpfulsaratoga: do we have a macro for ARM versions? in particular, there's a MULTIPLY16 macro in the jpeg decoder. on beast this is lovely, it has the 16x16->32 multiply instruction, and it seems that the compiler would prefer that to a shift/add sequence. on ipod it uses shift/add either way, but does an lsl #16, asl#16 first if the multiply is specified as short * short. :/
03:58:33 Part swolchok
04:02:08 Quit alupa ("CGI:IRC (EOF)")
04:02:21 Quit efyx_ (Client Quit)
04:05:48 Join fdinel [0] (
04:07:03 Join martian67 [0] (n=martian6@about/linux/regular/martian67)
04:20:53 Join SeaWeed [0] (
04:38:24***Saving seen data "./dancer.seen"
04:38:39 Quit fyrestorm (Read error: 104 (Connection reset by peer))
04:41:44 Join daurn [0] (n=daurnima@unaffiliated/daurnimator)
04:45:39 Join chandoo [0] (
04:53:01 Join jordan`` [0] (i=gromit@
04:53:19 Join ademille [0] (
04:53:54 Quit jordan` (Read error: 113 (No route to host))
04:57:00 Quit daurn| (Read error: 110 (Connection timed out))
05:02:07 Join kperri [0] (i=18ac0c41@gateway/web/ajax/
05:03:39 Quit kperri (Client Quit)
05:15:15 Join gartral [0] (
05:17:49gartralhello all, Rockpaint will not close if the toolbar is shown (ei, starting state) and I can't find mention of this behavior in FS
05:22:25 Quit gartral ("The Internet is for three things; Communication, Adults*, and SPAM! EOL")
05:37:16SeaWeedhello yall
05:38:05evilnick_homehello SeaWeed
05:38:56SeaWeedi have a old ipod video 30 gig i installed rockbox on about a year ago now i think the Hard Drive is going bad is there a app i can run in ( linux or windows ) to try and fix drive it hangs every so often then it frees up and continue to play
05:39:05SeaWeedhello <evilnick_home>
05:39:28evilnick_homeAre you using EQ?
05:39:39evilnick_homeAnd what bitrate are the files?
05:40:47evilnick_homeIt's often/sometimes the case that people try to get the iPod to do too much, and that leads to it having to pause to decode the new part of the song: therefore it sounds like it's pausing every-so-often
05:41:43evilnick_homeIf it's not that, and it really is the HDD then chkdsk or fsck ought to work
05:42:19SeaWeedsorry had to grab a drink
05:42:40SeaWeedit not just in Rock box it also hangs in ipod os
05:42:55SeaWeedthis is why i beleave it to be a Hard drive issue
05:43:33SeaWeedi have even ( zero'ed ) the Drive via linux with ( dd ) command
05:44:06SeaWeedreinstalled every thing and still doing it so was not shure if there was some thing else i could try
05:48:08SeaWeedWas thinking of just upgradeing the hd to a 80 gig and new cover for it but hell i can get new ipod for that but not shure have not kept up so not shure if newer ipod can install rock box on
05:48:23 Quit fdinel ("Miranda IM! Smaller, Faster, Easier.")
05:50:30 Quit Horscht ("Verlassend")
05:52:55 Join KRB [0] (
05:57:20evilnick_homeThe iPod Video are the most recent iPod that Rockbox works on
05:58:07KRBhi anyone know if the rockbox wakeup timer works while conected to usb on ipod nano?
06:04:51SeaWeed<evilnick_home> t/y for responce i said it was a video but it is a classic i beleave it is rather old now but when hard drive dont stick it plays good
06:05:05SeaWeedwelp guess ill say good nite and t/y for info
06:05:29 Quit SeaWeed (Remote closed the connection)
06:15:48 Join goffa_ [0] (n=goffa@
06:15:49 Quit JdGordon| (" ajax IRC Client")
06:15:56 Join goffa__ [0] (n=goffa@
06:15:56***Alert Mode level 1
06:15:56DBUGEnqueued KICK goffa___
06:15:56DBUGEnqueued KICK goffa
06:15:56***Alert Mode level 2
06:15:56DBUGEnqueued KICK goffa_
06:15:56DBUGEnqueued KICK goffa__
06:15:56***Alert Mode level 3
06:18:27 Part ademille
06:24:08 Join TheDawg [0] (
06:25:57***Alert Mode OFF
06:26:14 Quit goffa___ (Read error: 110 (Connection timed out))
06:26:16 Quit goffa (Read error: 110 (Connection timed out))
06:30:18 Join LinusN [0] (n=linus@rockbox/developer/LinusN)
06:30:25 Quit TheDawg ("DSOrganize IRC")
06:32:29 Join VytenisS [0] (
06:38:25***Saving seen data "./dancer.seen"
06:55:40 Join jfc^3 [0] (
06:59:29 Join fml [0] (n=4fd3c62c@gateway/web/cgi-irc/
07:00:13 Quit chandoo ("Leaving")
07:00:28fmlIn some files I see expressions like "1<<n" (e.g. in lcd-fuze.c) Isn't the macro BIT_N the right way now?
07:02:18 Nick fxb__ is now known as fxb (
07:02:40 Nick fxb is now known as fxb__ (
07:04:22 Quit jfc^3 (Read error: 104 (Connection reset by peer))
07:04:45 Join jfc^3 [0] (
07:12:12 Quit jfc^2 (Read error: 110 (Connection timed out))
07:12:30 Quit Llorean (Read error: 104 (Connection reset by peer))
07:12:51 Join Llorean [0] (
07:15:30 Join stoffel [0] (
07:26:58 Quit fml ("CGI:IRC (EOF)")
07:27:15 Nick J-23_ is now known as J-23 (
07:29:35 Quit perrikwp (" ajax IRC Client")
07:33:03 Join thammuz [0] (n=4c7da48f@gateway/web/cgi-irc/
07:34:33 Join perrikwp [0] (i=18ac0c41@gateway/web/ajax/
07:37:47 Quit thammuz (Client Quit)
07:49:16 Join bertrik [0] (
07:52:17CIA-38New commit by learman (r21232): Fix Gigabeat key for Swedish.
07:54:02 Join evilnick_home1 [0] (
07:56:29 Quit Llorean (Read error: 110 (Connection timed out))
07:59:47 Join cweiske [0] (
08:01:02cweiskeGood morning. I bought an "Archos 2" in the hope it would be the supported Archos Recorder v2, but it wasn't.
08:01:21cweiskeI know that currently there are no plans to port rockbox to it, but how can I help to do that?
08:02:34cweiskeother question: the faq says that there will never be an ogg decoder on archos players. is that valid for the v2, too?
08:07:40 Quit evilnick_home (Read error: 110 (Connection timed out))
08:07:54 Join matsl [0] (
08:10:06 Quit bubsy ("Panic.")
08:12:21 Join bubsy [0] (n=Bubsy@
08:16:42 Join pondlife [50] (n=Steve@rockbox/developer/pondlife)
08:19:45 Join n1s [0] (n=n1s@rockbox/developer/n1s)
08:20:21 Join ender` [0] (
08:20:38 Join Rob2223 [0] (
08:24:01 Quit stoffel (Read error: 113 (No route to host))
08:25:57 Join Zagor [242] (n=bjorn@rockbox/developer/Zagor)
08:29:36 Quit dmb (Read error: 113 (No route to host))
08:33:25 Join dmb [0] (n=dmb@unaffiliated/dmb)
08:37:21 Quit safetydan ("Leaving.")
08:37:24pondlifecweiske: The v2 recorder is MP3 (and WAV, IIRC) only. This is very unlikely to change. I know nothing about the "Archos 2" though
08:38:22 Quit Rob2222 (Read error: 110 (Connection timed out))
08:38:28***Saving seen data "./dancer.seen"
08:38:33pondlifecweiske: You should probably start by opening it up and working out what's inside - take some high-res photos of the board etc while you're in there ;)
08:39:34pondlifeAnd have a look at
08:40:03CtcpIgnored 4 channel CTCP requests in 0 seconds at the last flood
08:40:03*pondlife lols at "may require various degrees of violence."
08:40:16GodEaterits true though
08:40:26GodEateripods are a sod to open
08:40:40pondlifeI know - I really mangled a Nano once
08:40:43GodEaterI've nearly taken lumps out of my fingers getting mine open
08:41:24pondlifeYes, but I only had one Nano and you have several fingers
08:41:31 Quit matsl (Read error: 60 (Operation timed out))
08:42:14pondlifeMore on-topic, when does the freeze end/branch occur?
08:42:37cweiskeso chances are good that I won't be able to use the player after opening?
08:42:53pondlifecweiske: No idea, some players open easily, some do not.
08:43:20 Quit bertrik (Read error: 113 (No route to host))
08:43:25pondlifeBut I am generally clumsy and not suited for hardware work - you will probably be more adept ;)
08:43:40GodEaterpondlife: dates are on the dev list ;)
08:43:59GodEatercweiske: some players are very easy to open
08:44:14GodEaterit's why we put the disclaimer there, "may require *varying* degrees of violence"
08:44:27pondlifeThe H300 is easy to open, no force, just screws to undo.
08:44:29GodEaterthe ipods are bad because there are no screws, you have to pry them open, and there's not much purchase
08:45:21cweiskearchos 2 has no screws
08:45:34GodEaterthat you can see :)
08:45:46GodEaterthey might be hidden under rubber feet or something
08:45:48cweiskebut if it helps, I'll gonna sacrifice the player
08:46:09pondlifecweiske: That's entirely up to you - also read the rest of that wiki page...
08:46:28GodEatercweiske: please bear in mind that currently you're the ONLY person interested in this device
08:46:35pondlifeUnless you have plenty of spare time, or can find more devs, you may not wish to wreck your DAP.
08:46:35cweiskei fail at the electronics, embedded and assembler part :)
08:46:44GodEaterjust taking pictures of it's inards isn't going to magically make people want to do a port for it
08:46:49cweiskei know
08:47:24pondlifeOf course, it may be using the same innards as Sansa do or something...
08:47:28GodEaterin that case I advise not dismantling it
08:47:45pondlifeSound advice there.
08:47:49GodEaterI'd rather go and find other users and get the interested
08:47:56pondlifeI'd rather buy a new DAP
08:48:14cweiskebuy a new one after dismantling? :)
08:48:16GodEateror, more accurately, a "used one that runs Rockbox already" :)
08:48:46GodEatercweiske: is this your device ?
08:48:58cweiskethe black one on the top
08:49:06GodEaterWAAAAAY too new to run Rockbox :D
08:49:28cweiskewhy is that?
08:49:36GodEaterit takes about a year to do a port, and that's WITH good documentation and an expert developer
08:49:54GodEatera lot of ports take longer, because there is no documentation on the parts
08:50:01pondlifeSadly no tech details on ;)
08:50:13GodEaterwhat a surprise. not.
08:50:16cweiskemost tech spec pages suck
08:50:44pondlifeThere would be some poetry in a new Archos device being supported.... but I'm no poet.
08:50:45GodEaterI can't find a teardown of it either
08:50:49Dhraakelliandoes Rockbox receive much of any support from device manufacturers?
08:50:57GodEaterDhraakellian: virtually none at all
08:51:19Dhraakelliansome e200v1s from SanDisk back in the day and nothing else?
08:51:31 Quit perrikwp (" ajax IRC Client")
08:51:39 Join perrikwp [0] (i=18ac0c41@gateway/web/ajax/
08:51:40GodEaterit wasn't even a v1, it was a prototype I think
08:51:44GodEaterand we got no docs with it
08:51:57GodEater <−− bagder wrote about it
08:52:46 Join flydutch [0] (
08:52:55GodEaterseems I remember not quite accurately
08:53:04GodEaterthere was a dev board, but it came later
08:53:19 Join ender [0] (
08:54:35Zagorpixelma: I looked at the usb id of my c200 yesterday, and the ums id is correct. however my battery seems to have broken, so I couldn't change into mtp mode and see the id for that. I'll bring it to devcon.
08:54:59*Dhraakellian does, of course, think that SanDisk should just pretty up Rockbox's main menu and use it as their official firmware
08:55:26 Quit dmb (Remote closed the connection)
08:59:55 Join einhirn [0] (
09:00:54cweiskearchos2 is basically
09:00:54 Join bmbl [0] (n=Miranda@unaffiliated/bmbl)
09:01:09cweiskeeven if my player says "EM184RB" on it
09:02:09 Join dmb [0] (n=dmb@unaffiliated/dmb)
09:02:49GodEaterdoesn't really tell us a lot
09:03:21cweiskeis asking the manufacturer for information going to get results?
09:03:29GodEaterit never hurts :)
09:03:33GodEaterbut don't hold your breath
09:03:54GodEaterwe're still waiting for Apple to even acknowledge we asked them anything, and that's for ports that are over five years old now :D
09:03:56cweiskedid it happen at least one time here?
09:04:23GodEaterwe've had *some* luck with it
09:04:26linuxstbcweiske: You mainly want information not owned by the actual device manufacturer - datasheets for the chips used. So you should find out what chips are used, and look for datasheets for them.
09:04:30GodEaterbut it's a rare event
09:04:45pixelmaZagor: is correct as in what's now on the wiki page or what you put in there before?
09:05:50GodEaterunless Archos suddenly became a semi-conductor manufacturer and are making their own chips now
09:06:03jordan``i remember samsung korea uploading the whole gcc etc toolchain for their calmrisc chip for the gmini project
09:06:48 Quit ender` (Read error: 110 (Connection timed out))
09:07:20Zagorpixelma: well, both :-) since I could only test ums I only got the 7451 id, which is undisputed. it was 7450 that I first wrote was ums on c250, and is now changed to c200 mtp.
09:08:24pixelmabut you had it as c240 UMS ;)
09:08:57pixelmaanyway, thanks for testing :)
09:10:39 Join stoffel [0] (
09:11:42 Quit VytenisS ("Quit")
09:13:40 Quit stoffel (Remote closed the connection)
09:13:42cweiskewhere - except on ebay - does on get used/broken players to tear apart?
09:14:15_Auron_pawn shops?
09:16:39*LinusN tried PictureFlow for the first time yesterday
09:17:03LinusNtook me quite some time to find it - why on earth is it listed under Demos?
09:17:30pixelmabecause until recently you coul only look at your art
09:17:49LinusNaha, perhaps we should move it then
09:18:00amiconnIt's not a game, and it's not an app either, imho
09:18:12pixelma(and it still is this way on some targets ;) )
09:18:21LinusNif it browses your AA and lets you play music, i would certainly call it an app
09:19:52GodEaterme too
09:20:49_Auron_I don't see how its not an app
09:20:51tmztis PF supposed to go further than the progress bar?
09:21:06n1swell, it being a plugins is only supposed to be temporary anyway, right?
09:21:13GodEatertmzt: of course
09:21:27GodEatern1s: really ?
09:21:32GodEaterwhere else would you have it ?
09:21:44 Quit dmb (Read error: 104 (Connection reset by peer))
09:21:45n1sGodEater: in the core from what i understood
09:21:46tmztI have 1500 songs in database, very few with AA
09:21:56GodEaterwow - that's news
09:22:11GodEaterwhen was it decided it was going into core ?
09:22:11n1si may of course have totally misunderstood :)
09:22:13linuxstbn1s: I would expect it to still be a plugin, just not one launched manually by the user.
09:22:22n1slinuxstb: ah
09:22:25tmztit takes a long time in progress bar the exits to plugin list
09:22:38GodEatertmzt, that's crashing then
09:23:00GodEateryou should only see the progressbar the first time you run it
09:23:38GodEaterlinuxstb: so how is it going to be launched then ?
09:23:54tmztthis is on fuze, current svn as of yesterday
09:23:57linuxstbGodEater: There was talk of it being launched from the DB viewer
09:24:04GodEaterfuze is unsupported tmzt
09:24:12tmztah ok
09:24:12GodEaterlinuxstb: nifty :D
09:24:28linuxstbGodEater: kugel posted a patch to do that - it's on Flyspray somewhere.
09:24:42GodEaterwaste of time me looking at it
09:24:45GodEaterI never use the DB
09:24:52tmztjust reporting, didn't realize target was important for this
09:24:53 Join petur [50] (n=petur@rockbox/developer/petur)
09:25:03GodEatertmzt: target is always important :D
09:25:17GodEateresp. if it's an incomplete port
09:25:26linuxstbWith a buggy disk driver (IIUC)
09:25:40tmztit works on e200 then?
09:25:48 Join lucent [0] (i=lucent@unaffiliated/shadows)
09:25:55GodEaterit works on all our supported targets I believe
09:26:04GodEaterwith varying degrees of functionality
09:26:19GodEaterI'm curious to see it on an archos
09:26:43tmztisn't that a little underpowered?
09:27:07GodEaterI've seen people talking about it running on them though
09:27:41tmztanyway, if it's unsupported as of now I just keep trying it and observing the progress
09:28:50lucentCUE-In-FLAC support... how do I give names to each cuepoint?
09:28:57lucentIs that in the manual? I couldn't find it
09:29:16GodEaterah, another feature I don't use
09:30:26pixelmalucent: have you actually searched the manual for cuesheet support?
09:30:35lucentpixelma: I lied
09:30:56GodEaterand people wonder why we're grumpy at our users
09:31:02 Join funman [0] (n=fun@rockbox/developer/funman)
09:31:29linuxstblucent: Rockbox doesn't support "cue-in-FLAC", only external .cue files.
09:31:31lucentfunman: FYI the recent (as of now in SVN) changes work great on 8gb fuze
09:31:35funmanUnhelpful: see ARM_ARCH in export/config.h (4, 5 or 6)
09:32:09lucentlinuxstb: interesting. I was not aware of that, so I should be looking to add metadata to the cue file instead I suppose
09:32:19funmanlucent: cool! did you have to update the bootloader?
09:32:25lucentfunman: yes, affirmative
09:32:34pixelmahmm... the paragraph in the manual is a bit lacking :\
09:32:40lucentit also fixed a glitch I had with my 8gb uSD card and resuming playback
09:32:44 Join dmb [0] (n=dmb@unaffiliated/dmb)
09:33:07lucentnow I am praying for charge-while-playing support for fuze and rockbox ;P
09:33:21lucentthat way I could use it in my car all the time and not need OF
09:35:06pixelmagevaerts: already freed some space on your build server?
09:35:19tmztfunman: you have 8g fuze?
09:36:02 Join Thundercloud [0] (
09:36:47funmanlucent: usb_detect() would need to be correctly implemented (i.e. detect only USB connection and not chargers)
09:36:51funmantmzt: 4GB
09:37:11FrankTMi would like usb connection without charge aswell
09:37:15FrankTMnot quite sure if that is possible
09:37:33lucentusb connection without charge?
09:37:50tmztokay, I have 8g, after upgrading OF and restoring 8gb fat rockbox works with new bootloader
09:37:51GodEaterwhy on earth would you want that ?
09:37:53lucentare you sure about that? I don't understand if that's a language mistake
09:38:03FrankTMi think it's better for the battery
09:38:10FrankTMto not charge it untill it's empty
09:38:21Mikachuthat doesn't matter for lithium batteries
09:38:41GodEaterFrankTM: yeah, sorry, you're wrong there
09:38:42lucentfor LiPo batteries you will damage them by discharging them fully
09:39:01GodEaterit's better to keep them charging
09:39:04FrankTMi stand corrected :)
09:39:36 Join IuDeX [0] (n=52a0f8f7@gateway/web/cgi-irc/
09:39:40funmangevaerts: why is HAVE_USBSTACK required for rebooting to OF when usb is plugged (with !defined(USE_ROCKBOX_USB) ?
09:40:18IuDeXhey, How can i compile Bootloader? Need I any additions? I compiled sucessfully RB.
09:41:04funmanby the way DeviceChart wiki page would need addition of sansa ams
09:41:05GodEaterbootloader for what ?
09:41:32n1sIuDeX: usually the same way as you compile rockbox, just select bootloader in the configure
09:41:51lucentIuDeX: the link funman posted is best to read
09:41:58IuDeXThanks :)
09:42:49lucentfunman: does charging work on Fuze anyways, USB detection aside?
09:43:18FrankTMi do get a "plug" logo when usb is connected
09:43:36funmanlucent: yes
09:44:45lucentfunman: thank you for your work on the Fuze overall, it is very pleasing to use Rockbox and I would only do so because of the recent month's work on supporting Fuze
09:45:01 Quit IuDeX ("CGI:IRC (EOF)")
09:45:15 Join mib_tv97lamw [0] (i=792c1403@gateway/web/ajax/
09:45:28lucentI can wait patiently for someone to crack open the usb detect problem and solve :)
09:46:04FrankTMi wish i could do that :p
09:46:20lucentthough I kind of wish there was a manual way to tell rockbox that I want to only charge when USB is plugged in and not stop the music, is that "Car adapter mode" something different?
09:46:39mib_tv97lamwOk, its me again from yesterday , the guy with the broken Gigabeat X30
09:46:57linuxstbfunman: Why did you remove the link to the released mkamsboot from the SansaAMS page? Do you want to undo the release?
09:47:18mib_tv97lamwMy friend (who had one) said there was an easy fix for my problem, but is gonna make me pay $10 for him to tell me
09:47:28mib_tv97lamwI was hoping you guys could help me out
09:47:38n1slucent: on most players you can press a button while connecting to do that
09:48:02mib_tv97lamwMy gigabeat boots partway (i accidentally deleted some files from the GBSystem folder)
09:48:06funmanlinuxstb: accidentally this release will not refuse untested OFs, so I prefer to not let users use it
09:48:19mib_tv97lamwWhich I then rstored rockbox to it
09:48:29lucentn1s: a button while Rockbox is going? I'm not familiar with this or which button to try
09:48:34linuxstbfunman: Then perhaps it should be deleted from the download servers.
09:48:45 Join IuDeX [0] (
09:48:50mib_tv97lamwThen I turned it off, realised my mistake and tried to restore the gigabeat firmware
09:48:56IuDeXwhoops! I see The compiler you must use (arm-elf-gcc) is not in your path!"
09:49:06funmanlinuxstb: right, i wanted to quickly work on another version but didn't do it
09:49:39mib_tv97lamwunfortunately, after many restores, I opened the thing, followed the rockbox guide, but this didn't solve my problem either.
09:49:43GodEaterlucent: the buttons varies from target to target, and given you're using an incomplete port, there's likely no documentation to tell you which button (if any) it is yet
09:49:55IuDeXANyone can help me?:)
09:50:01mib_tv97lamwIt says "No system found on hdd" (Error code 0010070)
09:50:03funmanlucent: try to press the center button while connecting usb
09:50:11linuxstbfunman: Maybe LinusN can delete it (mkamsboot on the download servers). The problem is that I don't know if the mirrors are correctly deleting files...
09:50:35 Nick daurn is now known as daurnimator (n=daurnima@unaffiliated/daurnimator)
09:50:57lucentfunman: brilliant!
09:51:20lucentand thank you GodEater for the advice. I'm a happy panda lucent knowing this.
09:51:45IuDeXWhere I have to export arm-elf-gcc?
09:51:52funmanlucent: now you could add this information to the fuze manual ;)
09:52:24markunmib_tv97lamw: and you tried with the dummy files + the rockbox bootloader?
09:52:51lucentI'm preparing a long car drive to travel and go camping, when I return from my trip ... hope that there are no new bugs for me to find? :)
09:53:06IuDeXexport PATH=$PATH:/usr/local/arm-elf/bin:/usr/local/m68k-elf/bin:/usr/local/sh-elf/bin
09:53:10IuDeXoops xD
09:53:15mib_tv97lamwI couldn't find the dummy files, but someone said that they were included in the utility?
09:53:33markunmib_tv97lamw: no, they can be downloaded. Wait, I'll show you.
09:53:43mib_tv97lamwah ok thank you
09:54:10GodEatermib_tv97lamw: tell this "friend" of yours to take a hike by the way. $10 indeed.
09:54:19funmanLinusN: Bagder could you delete mkamsboot-1.0 from the download server ? (and also the mirrors?) - a potentially harmful bug went into this release
09:54:32 Quit Thundercloud (Remote closed the connection)
09:55:09mib_tv97lamwHe's apparently not going to help me because I won't give him a discount selling him stuff
09:55:21mib_tv97lamwthe diff is I'm selling stuff, he's being a douche
09:55:30 Join efyx_ [0] (
09:55:32markunmib_tv97lamw: so, you need to extract that zip file, and also download FWMIMG02.DAT and place it in the same GBSYSTEM folder
09:55:40mib_tv97lamwthank you
09:55:42markunFWIMG01.DAT even :)
09:55:49mib_tv97lamwI have the original CD
09:55:53mib_tv97lamwwith the firmware on it
09:56:13markunmaybe you can find the files there as well
09:56:19 Quit IuDeX ("Leaving")
09:56:39markunwith these dummy files you can only run rockbox
09:56:49markunthe original firmware will not longer work
09:56:52mib_tv97lamwthats fine, thanks
09:59:05 Quit bmbl (Connection timed out)
09:59:22markunmib_tv97lamw: if everything fails, you can wait for LambdaCalculus or toffe to come online, I think they both have Gigabeat X
10:00:30 Join IuDeX [0] (
10:00:57IuDeXHAve someone OF With Bootloader? ;/ I cant compile.
10:01:05 Quit funman ("leaving")
10:01:14mib_tv97lamwmarkun: I had a FWIMG01.DAT.orig, but not FWIMG01.DAT
10:01:21mib_tv97lamwMaybe that was my problem?
10:01:28linuxstbIuDeX: You said you successfully compiled Rockbox? What's the problem with the bootloader?
10:01:50IuDeXlinuxstb: RB compiled successfully, but BOotloader says ERROR 1
10:02:02IuDeX/home/marek/rockbox/firmware/drivers/fat.c:2480: warning: pointer targets in passing argument 1 of strlen differ in signedness
10:02:14mib_tv97lamwI swear, after this, I'm going to make a guide for opening the X30 and submit it to the Rockbox site so other people have an easier time
10:02:14IuDeXlots of errorS ;O
10:02:24markunmib_tv97lamw: the .orig file can be copied back to FWIMG01.DAT
10:02:50markunand good idea to contribute to the wiki :)
10:03:59IuDeXlinuxstb: Do you know what is it?
10:06:33cweiskeI got an answer from archos support - i told them my comlete music collection does not work on it. they told me they don't support it, and can't tell wether future firmwares will support it. but they told their development unit.
10:08:09mib_tv97lamwOh, I had another thing, my bootloader usb never works :D
10:08:25mib_tv97lamwdunno why, and it works sometimes in rockbox, but not always
10:08:40mib_tv97lamwit worked 100% from the gigabeat firmware though
10:08:53mib_tv97lamwthe pre firmware thing when it was broken*
10:08:59mib_tv97lamwthank you
10:09:06 Part mib_tv97lamw
10:11:47cweiskethe archos2 is listed by lsusb as " 071b:0184 Domain Technologies, Inc.". that company seems to sell usb development hardware. does that mean the manufacturer forgot to change the usb ids?
10:13:08 Quit IuDeX ("Leaving")
10:30:31 Join dfkt [0] (i=dfkt@unaffiliated/dfkt)
10:35:49 Quit kachna|lappy (Read error: 113 (No route to host))
10:38:30***Saving seen data "./dancer.seen"
10:38:51n1scweiske: or they decided no to
10:44:40 Quit cool_walking_ (" ajax IRC Client")
10:55:24 Join haohmaru [0] (
11:00:58 Join merbzt3 [0] (n=benlar@
11:00:59 Quit anigav (Read error: 60 (Operation timed out))
11:03:06 Join pyro_maniac1 [0] (
11:03:09 Join anigav [0] (
11:08:25 Quit haohmaru (Read error: 60 (Operation timed out))
11:34:59 Join kugel [0] (n=kugel@rockbox/developer/kugel)
11:52:27 Join timc [0] (n=aoeu@
11:57:16 Join kachna|lappy [0] (n=kachna@
12:03:47 Quit martian67 (
12:03:47 Quit pyro_maniac1 (
12:03:47 Quit goffa__ (
12:08:09NJoinpyro_maniac1 [0] (
12:08:09NJoingoffa__ [0] (n=goffa@
12:08:09NJoinmartian67 [0] (n=martian6@about/linux/regular/martian67)
12:08:19 Join goffa [0] (n=goffa@
12:08:59 Quit goffa__ (Remote closed the connection)
12:15:30*kugel believes to have a fix for
12:18:29FrankTMhehe. binary task id
12:21:07n1sand a palindrome too
12:21:14FrankTMtrue that :p
12:21:35Tornekugel: ooh, that would be nice
12:21:56Tornei seem to find it stops buffering a lot, i've not worked out precisely what conditions cause it but that's certainly one of them :)
12:23:21kugelthe biggest problem is that if the bug occurs, boosting also doesn't stop
12:23:52kugelmaybe storage doesn't spindown too
12:24:10FrankTMso down with battery life?
12:24:48kugelTorne: I'd be happy if you (unsuccessfully) try to reproduce it with that fix:
12:24:53kugelFrankTM: exactly
12:25:17Torneah, yes, i had also noticed that it doesn't stop boosting
12:25:42*kugel wonders if that fixes another possibly related task too
12:25:55Tornekugel: i'll do a build with that later on
12:26:01FrankTMwouldnt you be able to tell which track is next (even with skipping), and buffer after all
12:26:06CIA-38New commit by rmenes (r21233): I misspelled Vytenis Sabelka's name earlier.
12:26:55Tornei have also had cause to suspect that certain cases of inserting stuff into the playlist causes the same thing.. i haven't tried very hard to reproduce it under specific circumstances, mind
12:27:12Tornebut at least there is a similar issue: it's very easy to get the next: display on WPS to be wrong by inserting tracks
12:27:24Tornenot sure if buffering also has gone wrong at that point or not
12:27:47Tornei'll have a fiddle later without and with your patch and see what i can establish
12:28:22pixelmathe next track info will "correct" itself on next update (track change)
12:28:34Tornepixelma: yes, I know
12:28:38pixelmanot nice, but I don't think buffering goes wrong
12:28:44Tornebut what i'm wondering is has it buffered the right thing in the meantime
12:28:55Torneor does it get to the end of the track and go "crap i need to read a different track"
12:29:02kugeltrack info will update on rebuffering too
12:29:17kugelwhich is supposed to happen on inserting a track which is to be played next
12:29:31Tornein which case i'm *reasonably* sure there are conditions under which that doesn't happen ;)
12:29:36pixelmawell in my tries it plays the right track as listed in the "view playlist"
12:29:44Torneyes, it always *plays* the right track
12:30:23kugelyou mean insert next, don't you?
12:30:32Torneor other cases
12:30:37Tornei do insert shuffled on entire albums a lot ;)
12:30:46Tornewhich pretty much totally screws any buffered data ;)
12:30:55kugelworks here
12:31:05Tornewhat do you mean by works though
12:31:31Torneit always plays the tracks in the order they are in the playlist just fine, but quite often (possibly always?) it doesn't update the Next: display
12:31:36kugelsomething is is borked after inserting an album
12:31:39Torneand presumably given the above, also isn't re-buffering
12:31:52Torneso that although it plays the right thing it doesn't get around to rebufferign until the current track ends
12:32:05Tornei could be wrong here, i've not sat down and tested this in controlled conditions
12:32:18Torneit's just something i've noticed while using it normally
12:32:36pixelmause a WPS which shows "disk" activitaty and you can see if it pretends to rebuffer
12:32:56kugelI think it rebuffers only if the already buffered tracks are invalid
12:33:02pixelma(or have a target with a real LED showing this)
12:33:10Tornewhat makes them invalid? (i don't know how buffering works) :)
12:33:50kugelTorne: I think I reproduced here. play an album. Insert next a track and the next track info is fine, then insert an album and the next track info is behind the inserted album
12:34:11kugelfor some reason, it shouldn't even move, since the album is inserted behind the track that was inserted befoer
12:34:23Tornehm, not sure if that's the same thing
12:34:28Torneanyway i'll give it a test tonight if i have time
12:34:39Torneand will see if the behaviour changes for better/worse with your patch ;)
12:34:58kugelmy patch only tries to fix fs#10101
12:35:17Torneyah. i have that problem too, though
12:35:20Torneso i'll see ;)
12:35:49 Part cweiske ("Verlassend")
12:38:31***Saving seen data "./dancer.seen"
12:46:04 Join robin0800 [0] (
12:48:19 Join gregzx [0] (
12:55:26 Join TheSphinX^ [0] (
12:57:48 Join barrywardell [0] (
13:02:41 Join perfectdrug [0] (
13:02:49kugelpondlife: ping
13:03:38kugeldid you suffer from FS #10101 or could you reproduce it, or did you just stated your opinion? I believe to have a fix (I uploaded a patch)
13:04:03pondlifeI don't think I've seen it myself, but can't remember for sure ;)
13:04:05kugelalso, I need to try the timestrech patch on the fuze now that it is finally fast enough
13:04:30 Join kugel_ [0] (
13:06:15 Quit kugel (Nick collision from services.)
13:06:19 Nick kugel_ is now known as kugel (
13:08:22 Quit kachna|lappy (Read error: 110 (Connection timed out))
13:14:44 Join fyrestorm [0] (
13:15:00 Quit Zarggg (Read error: 110 (Connection timed out))
13:16:13 Quit fyrestorm (Client Quit)
13:16:43 Join fyrestorm [0] (
13:17:41 Join wark [0] (
13:21:29pondlifekugel: Thanks, let me know how you get on with #8894
13:22:13 Quit timc (Read error: 110 (Connection timed out))
13:22:34kugelpondlife: my script fails if you don't write fs before :(
13:22:46pondlifeFS #8894
13:22:51pondlifeIs that better? ;)
13:23:28CIA-38New commit by learman (r21234): Correct the includes; the old way broke parallel builds.
13:23:57pondlifekugel: Do you have a Clip?
13:24:04kugelpondlife: much better :D
13:24:46pondlifeCool - maybe you could see if there's a keymap possible for timestretch?
13:24:49 Join timc [0] (n=aoeu@
13:25:10pondlife(See ACTION_PS_SLOWER and ACTION_PS_FASTER in keymap-clip.c..)
13:25:48kugelwill do
13:26:21kugelpondlife: I wouldn't worry about the clip's keymap though
13:26:32kugelit needs refinement all over the place anyway
13:27:10pondlifeOK, it's just the only SWCODEC target that timestretch can't be fully used on, purely as there's no spare keys (I think).
13:27:37pondlifeWould be nice to fix it as we go, but I won't worry unduly.
13:28:03kugelI think the clip has as many buttons as the c200
13:28:42pondlifeDoes it have up/down/left/right?
13:29:02kugelyes, and it has also dedicated volume buttons on the side
13:29:20pondlifeHmm, weird existing pitchscreen keymap then?
13:29:41kugelThat's what I said :P
13:33:10pondlifeHmm, no mode button on c200 either
13:33:47kugelthe clip's keymap is originally heavily based on the c200's, and wasn't optimized much since then
13:34:27pondlifeIs there a picture of the c200 showing the keys on the wiki?
13:34:33pondlifeNothing on
13:34:44 Nick J-23 is now known as J-23_ (
13:34:46 Nick J-23_ is now known as Moarc (
13:35:07 Nick Moarc is now known as J-23 (
13:35:22*pixelma recommends the fine manual
13:35:42*pondlife will look
13:36:48kugelpondlife: was the manual issue solved?
13:37:00pixelmathere was none
13:37:18pondlifeI just needed to make clean, I think.
13:37:18kugelwell, it only worked after make clean or so, didn't it?
13:37:38kugeldid you build it in the build folder or in a seperate manual folder?
13:38:25pixelmathat shouldn't matter any more since you have to use "make manual" now
13:38:26pondlifeA seperate folder
13:39:00pondlifeWhy does configure still offer (M) for Manual?
13:39:22pixelmaand I build in seperate folders too and didn't have the problem
13:39:55kugelpondlife: works so far on the fuze, no dataabort at changing speed
13:40:03pondlifec200 pitchscreen - which button should be exit and which button should change mode?
13:40:15pondlifekugel: Can you actually get into the timestretch mode??
13:40:37 Quit gevaerts (Nick collision from services.)
13:40:46 Join gevaerts [0] (n=fg@rockbox/developer/gevaerts)
13:41:20pixelmapondlife: is the Select button already used for something else?
13:41:20 Part perfectdrug
13:41:31pondlifeYes, Select is reset
13:42:01 Join funman [0] (n=fun@rockbox/developer/funman)
13:42:02pondlifekugel: Which button switches modes in your build? I've confused myself
13:42:23 Join kugel_ [0] (
13:42:57 Nick J-23 is now known as DeSnajpa_VIII (
13:43:01 Quit DeSnajpa_VIII (Nick collision from services.)
13:43:07 Join J-23 [0] (
13:43:17kugel_the fuze can do it almost without boosting. Running pf while music is playing fast is fun too :P
13:43:20 Quit kugel (Nick collision from services.)
13:43:24 Nick J-23 is now known as DeSnajpa_VIII (
13:43:29 Nick kugel_ is now known as kugel (
13:43:34 Quit DeSnajpa_VIII (Nick collision from services.)
13:43:45 Join J-23 [0] (
13:43:53 Quit linuxstb (Read error: 113 (No route to host))
13:44:07kugelI found that some specific speed factors are quite accaptable for music too
13:44:09pondlifekugel: I think you missed my question... which button sets pitchscreen mode on c200
13:44:20pixelmaRec could be a possibility for switching modes - or make a short Select switching the modes and a long Select resetting things?
13:44:34 Quit r0b- (Read error: 104 (Connection reset by peer))
13:44:36kugelthe keymap file can tell you. I would have to look it up myself (I'm not owning a c200)
13:44:43pondlifeAh, ok
13:44:51 Join r0b- [0] (
13:44:59kugelrec sounds reasonable though
13:45:20pondlifeAnd HOME on Clip, right?
13:45:41kugelsounds good, that's what the fuze is doing
13:45:52pondlifeGreat, minor update coming up.
13:46:17pixelmais that in the manual part of the patch too?
13:47:14kugelwe should shrink the pc buffer for the fuze
13:47:40kugeleven at 250% timestrech with crossfeed and replaygain, it hardly empties
13:48:18pondlifepixelma: No, I'm really not sure about the manual and keymap stuff.
13:48:39funmankugel: do you mean pcm ?
13:48:47 Join spiral [0] (
13:48:50pondlifeI'd rather have the keymaps tried on target first...
13:49:17kugel150K seems to be perfectly sufficient
13:49:19funmanhave you looked at .ape files (the levels impossible to decode real time)
13:49:28kugelon all targets
13:50:03kugelI think only the beast can decode the 2nd level at realtime, all others hardly the first
13:52:25kugelfunman: the key is how fast the pcm buffer can be refilled while boosted at heavy load, and it's *very* fast on the AMSes
13:53:55funmani just wanted to put pressure on the heavy load : ape codec seems heavy enough to prooftest how fast the pcm buffer is refilled
13:54:40 Nick parafin is now known as parafin|sleep (
13:54:49 Nick parafin|sleep is now known as parafin (
13:56:19 Join kugel_ [0] (
13:56:41 Quit kugel (Nick collision from services.)
13:56:47 Nick kugel_ is now known as kugel (
13:57:38kugelfunman: there are codecs which some targets just can't decode with a *resonable* pcmbuffer, ape is one of them for almost all targets
13:58:02 Nick spiral is now known as perfectdrug (
14:07:09 Quit perfectdrug (Remote closed the connection)
14:08:45 Join LambdaCalculus37 [0] (i=44a0430d@rockbox/staff/LambdaCalculus37)
14:19:25 Join perfectdrug [0] (
14:20:04 Quit perfectdrug (Remote closed the connection)
14:20:26 Join perfectdrug [0] (
14:28:08 Join __lifeless [0] (n=lifeless@
14:31:23kugelfunman: the buttonlight is weird :/
14:36:50 Nick fxb__ is now known as fxb (
14:38:33***Saving seen data "./dancer.seen"
14:39:23 Join linuxstb [0] (n=linuxstb@rockbox/developer/linuxstb)
14:42:22 Quit _lifeless (Read error: 110 (Connection timed out))
14:43:40 Quit KRB ()
14:45:39funmankugel: perhaps GPIOD_DIR &= ~(1<<7); will prevent SD I/O from lighting it ?
14:50:08kugelI've tried various things
14:50:36kugelwe're probably missing some bits in the SD_MCI register
14:51:35kugelthe OF toggles SD_MCI_POWER bit 7 (rod) in the buttonlight function, but maybe it does more with SD_MCI_POWER in its storage driver for buttonlight to work properly
14:53:12kugelfunman: what did you find in the dbop disassembly, btw?
14:53:29funmani still didn't look
14:54:35 Join Rondom [0] (
15:01:40 Quit Zagor ("Don't panic")
15:19:46 Join kushalone [0] (n=kushal@
15:23:46 Join Framstag [0] (
15:24:52FramstagI have just read about this channel on the FAQ, so I thought to join :-)
15:25:20FrankTMhi :P
15:26:01Framstagand I have question not covered by the FAQ (or at least: I have not found ot):
15:26:29FrankTMfeel free to ask
15:26:43Framstagis it possible to redefine keys (with a new/other function)?
15:27:07Framstaggreat! :-)
15:27:22FrankTMbut. you will need to dive into the sources :p
15:27:25kugeldownload the source, edit it, and compile your own build. That's the only way
15:27:31Framstagurkss :-)
15:27:49Framstagok, better than nothing :-)
15:28:59FrankTMalso. if the default controls seem awefully odd, feel free to submit a bug/patch
15:29:11FramstagI need a "no need for looking at the display" mp3/radio switch
15:30:04Framstagbecause grabbing and looking on the player while bicycling is not that good idea
15:30:46Framstagmy old iRiver CD-player has a one-key function for switching
15:31:17n1sFramstag: that will take a little coding too then
15:32:05Framstagon all newer mp3/radio player I know of , one has to hassle with softkeys or scrollable menus
15:33:35Framstagthis is not positive to traffic security :-}
15:35:27Framstagin any case, I have to wait for support of the Sansa Clip
15:39:06 Quit timc ("Leaving")
15:46:52funmanmy fuze keeps reporting "data timeout" in SD driver
15:48:25 Join AndyI [0] (i=AndyI@
15:48:42Tornehm. is tehre some way to make my plugin wait for lcd updates to finish?
15:49:14funmanor rather rb->lcd_update()
15:49:19Tornei must be doing it wrong
15:49:31Torneatm i'm being lazy and calling lcd_update after each time i touch the screen
15:49:42Tornethe plugin then does a splash and exits
15:49:47Torneand i don't see the last few updates
15:50:00Tornethe right answer is to wait for a button press before exiting but i haven't gotten that far yet :)
15:50:02 Quit Framstag ("Leaving")
15:50:15linuxstbTorne: Which target? Some may not finish the update before returning (IIUC)
15:51:09linuxstbThen yes, I think that's one such target.
15:51:13Torneah ok
15:51:19Tornei shall put up with it then
15:51:32Tornewhen it's done it won't exit immediately
15:51:50Tornei can run a "Hello world!" z-machnie program, anyway :)
15:51:59 Part LinusN
15:52:06Tornethe screen output code is horrible and doesn't know how to scroll yet. that would be next. :)
15:53:54 Join mcuelenaere [0] (
15:58:51Tornethis would be much easier if ZSCII actually matched unicode
15:59:04Tornealas it was designed in 1979
16:11:09kugelTorne: would be nice if you could take a look at FS #10101 now if you have time
16:11:26Tornekugel: at work, i'm afraid
16:11:38kugeli thought you were coding right now
16:11:55Tornewell yes
16:12:00Tornethat's because i'm a slacker
16:12:04Tornebut i have a meeting in a few
16:13:49 Join Zarggg [0] (
16:15:06 Quit perfectdrug ()
16:17:12 Join toffe82 [0] (n=chatzill@
16:19:05funmanthe internal SD card of my Clipv2 (I think the CSD is identical for my Fuzev1) says that we can expect a data timeout after 3 nanoseconds. That is 0.186 clock cycles.
16:19:46funmanI'm gonna use the maximal 100ms delay for reads, not the lower of 100ms and computed-from-CSD 3ns
16:24:44funmanmy bad, it's the lower of 100ms and 100*3ns
16:28:07funmanfat driver already uses gcc's division routines so I think I can use division as well in ams sd code
16:30:31 Join _lifeless [0] (n=lifeless@
16:31:12 Join faemir [0] (
16:31:53 Quit __lifeless (Read error: 60 (Operation timed out))
16:34:30 Join kugel_ [0] (
16:37:10 Quit kugel (Nick collision from services.)
16:37:17 Nick kugel_ is now known as kugel (
16:38:10 Quit faemir ("Lost terminal")
16:38:36***Saving seen data "./dancer.seen"
16:45:05 Join chandoo [0] (
16:45:57 Join perfectdrug [0] (n=marko@
16:48:43funmanstruct tCardInfo is declared in hotswap.h and struct tSDCardInfo in arm/ata-sd-target.h : I wonder why this duplication exists
16:49:22funmanI would say that some information isn't used by the drivers for arm (only PP and as3525 ?) so they wanted to reduce the struct size
16:50:29funmansome members only exist in arm/ata-sd-target.h : current_bank, and some components of total size
16:51:58funmani'm gonna remove tSDCardInfo since all the extra members are unused
16:53:09funmanand also the conversion from tSDCardInfo to tCardInfo
16:53:45 Join kugel_ [0] (
16:53:55 Quit kugel (Nick collision from services.)
16:54:03 Nick kugel_ is now known as kugel (
16:54:03funmanthis will add some calculations only made in card_get_info_target() into PP's sd_init_device() however
16:55:13pixelmaisn't that something that would affect other targets too (at least the other Sansas)?
16:55:38 Quit _Auron_ ("Infinity repeatedly denies rumours of plotting with zero to bring down the Universe.")
16:55:44funmane200 c200 and philips sa9200
16:55:56funmani will respect the freeze though
17:09:40LambdaCalculus37A new language going in doesn't go against the freeze, does it?
17:12:52funmanthat's a new feature no ?
17:15:09funmanLambdaCalculus37: are you thinking about another scripting language, after lua just get implemented?
17:15:36pixelmaI thought he meant a translation
17:16:33funmanoh sorry for being a geek :/ sure a new language will only make things better so i don't think it's against the freeze
17:20:20 Join jgarvey [0] (n=jgarvey@
17:23:31LambdaCalculus37pixelma: Yes, in regards to me committing the Lithuaniun translation.
17:28:12saratogamight as well it can't break anything that worked before
17:40:31 Join BryanJacobs [0] (
17:40:53 Join __lifeless [0] (n=lifeless@
17:43:51 Join bmbl [0] (n=Miranda@unaffiliated/bmbl)
17:48:01 Join BlackCow89 [0] (n=57a95004@gateway/web/cgi-irc/
17:48:44BlackCow89hello @ all :)
17:48:56BlackCow89i have a problem...
17:49:20 Quit r0b- (Read error: 110 (Connection timed out)) ipod isn't charging when plugged into my laptop. I found this patch: but it just introduces a new function, so it needs to be defined in the language file (I think)
17:50:38BlackCow89could someone help me to do that? I don't know which files i have to modify
17:51:03 Quit linuxstb (Read error: 113 (No route to host))
17:53:28 Quit TheSphinX^ (Read error: 54 (Connection reset by peer))
17:54:24 Quit _lifeless (Read error: 110 (Connection timed out))
17:55:28 Join evilnick [0] (i=0c140464@gateway/web/ajax/
17:56:07BlackCow89i know how to apply a patch, thats not the problem
17:56:21BlackCow89the problem is, that the patch isn't "complete"
17:56:45 Join TheSphinX^ [0] (
17:57:26evilnickWhich patch is this?
17:57:33BlackCow89i need to modify some files (and i don't know which ones and in which way), in order to geht the 'settings' entry
17:58:16BlackCow89I'll be back in a sec. :)
18:08:36evilnickBlackCow89: I *think* that you'd need to add that to the EXTRA_DEFINES line in your makefile, but I'm not a coder so am only guessing - maybe someone who knows for sure will confirm
18:09:45evilnickIt wouldn't hurt to try
18:09:56BlackCow89I'll try
18:10:16BlackCow89but what do I need to add?
18:11:05BlackCow89is the makefile responsible for the options?
18:11:24evilnickIt looks like you'd need to add: "HAVE_USB_CHARGING_ENABLE" (from my reading of the patch and dreamlayers comment on 18th Feb)
18:11:40evilnickBlackCow89: That's well beyond my knowledge I'm afraid :(
18:11:52BlackCow89ok I'll try :D Thx so far :)
18:12:18evilnickI do know that one used to have to do that for testing the PP USB stack, so I'm kinda assuming that it *might* work the same way.
18:12:37evilnickIf not then you'd be best off waiting for a more authorative answer ;)
18:12:49BlackCow89I'm compiling with cygwin and it takes ages :D:D
18:13:03BlackCow89but it can't harm to try :)
18:13:24 Part pondlife
18:18:32Tornelcd_clear_display keeps the backdrop? not what i expected :)
18:18:42*Torne guesses "draw a white rectangle over the screen" time?
18:21:03 Part pyro_maniac1 ("Leaving.")
18:22:10funmanwhat does "tsac" means in MMC ? in the SD specification it's tAac but has the same meaning (data access timeout in nanoseconds)
18:24:08 Join xnyhps [0] (n=xnyhps@2001:470:1f14:da:219:e3ff:fed7:c57c)
18:28:27mcuelenaereTorne: lcd_set_backdrop(NULL);
18:29:01Tornedo i have to restore it then?
18:29:04 Quit BryanJacobs (Read error: 110 (Connection timed out))
18:29:06Tornethis is in a plugin
18:29:36mcuelenaereyes, I think so
18:29:50mcuelenaereI'm not sure whether lcd_get_backdrop() is available for plugins..
18:29:53Tornethe white rectangle approach might be easier then :)
18:30:02kugelLambdaCalculus37: I think there's no problem with new languages
18:30:05Torneespecially sicne it's supposed to be an arbitrary region erase.
18:30:35Tornehm. except it doesn't seem to ahve worked :(
18:30:39mcuelenaereor, (I think), you could try setting up a viewport filling the whole screen with a white background
18:30:44Tornei expect my math is bad
18:31:34kugelIMO the old backdrop should be set no matter of what the plugin in did
18:32:28kugelso, if the plugin wants unicolor background, a call to lcd_set_backdrop(NULL) and lcd_set_background(LCD_WHITE) would be sufficient, the plugin loader handles reverting this
18:32:58kugelbtw, the lcd_* functions aren't remote screen friendly at all
18:33:43 Quit petur ("work->sports")
18:33:45Tornelcd_drawrect != lcd_fillrect :)
18:34:05Tornethat would be why it doesn't work :)
18:34:23kugelyea, the one draws a rectangle, the other fills a rectangle
18:34:44 Join PaulJam [0] (
18:34:49kugelyou need to set the foreground if you want to override the backdrop though, and then you can't draw anything above that anymore
18:35:05kugelyou basically *need* the remove the backdrop
18:35:12Torneok, i don't get that
18:35:17Tornei may be misunderstanding the drawing model here
18:35:53kugelyou can have background color OR a backdrop
18:35:54mcuelenaerekugel: does lcd_set_background(LCD_WHITE) work?
18:36:04mcuelenaereah never mind, read that as lcd_set_backdrop :)
18:36:06kugelmcuelenaere: it should
18:36:41kugelyou can't have both. but you can draw something above that using foreground
18:37:06kugeland of course you cannot draw something above the foreground. there's just 2 drawing levels
18:37:38Torneyah, i'm only trying to draw black text on a white background
18:37:46kugelTorne: just do lcd_set_backdrop(NULL). The plugin loader already handles reseting the core backdrop
18:38:37***Saving seen data "./dancer.seen"
18:38:42kugelalso, a nice way to learn is always to look what other plugins do
18:38:47Torneyah, i've been looking
18:38:54Tornebut it's not entirely obvious to me :)
18:39:08Tornethe last time i did any graphics code was about 1989
18:39:44Tornewhat does DRMODE_SOLID do?
18:39:51Torneas opposed to FG or BG
18:40:32kugelthe drawmode only applies to the foreground AFAIK
18:40:44Torneyah, but i mean in general
18:40:48kugelsolid means you'll simply drawing above the backdrop/background
18:41:00kugelother draw modes allow mixing the foreground with the background
18:41:02Torneso what's the difference between that and DRMODE_FG then?
18:41:55kugelI can't tell what every drawmode does, those aren't really my business :)
18:42:07Tornei'm looking ni the code as well
18:42:10kugelamiconn or Unhelpful may know it
18:42:52Torneohh, i see
18:42:56 Join domonoky [0] (n=Domonoky@rockbox/developer/domonoky)
18:43:00Tornethe viewport has a background and foreground pattern
18:43:24 Join Lear [0] (i=chatzill@rockbox/developer/lear), i don't see
18:45:10BlackCow89evilnick: didn't work... doesn't change anything
18:45:53evilnickBlackCow89: I'm all out of ideas then.
18:46:04 Join kugel_ [0] (
18:46:29BlackCow89doesn't matter
18:46:43BlackCow89somone is going to fix it anyway at some point
18:47:51evilnickBlackCow89: Hmmm, apparently you could add that define to make.conf - but unless it's really important, maybe it's safer to leave it!
18:48:54BlackCow89I'll leave it :D
18:49:09BlackCow89doesn't matter to me that much
18:49:39kugel_Slasheri: ping
18:49:45BlackCow89thx again!
18:50:20evilnickno problem!
18:55:10 Quit kugel (Nick collision from services.)
18:55:17 Nick kugel_ is now known as kugel (
18:55:25Tornethat's.. interesting
18:55:29 Join JdGordon| [0] (i=836b0070@rockbox/developer/JdGordon)
18:55:44Tornelcd_fillrect doesn't do anything if you use DRMODE_BG without DRMODE_INVERSEVID
18:56:26 Quit BlackCow89 ("CGI:IRC")
18:56:35Torne(with a 16-bit lcd, anyway. it seems to be different on others)
18:56:38Torneis that.. right?
18:57:39Tornelooks like a bug, comparing it to other drawing functions
18:59:19 Quit LambdaCalculus37 (" ajax IRC Client")
19:01:47Torneah, no, i just totally misunderstand how this is supposed to work ;)
19:02:14 Join bertrik [0] (
19:07:59pixelmaTorne: did you see the GraphicsAPI page in the wiki?
19:08:07Torneno. :)
19:08:12Tornethat would probably help
19:08:13Tornethanks :)
19:09:55Torneyes, that helps a lot.
19:12:03 Quit Lear (Read error: 104 (Connection reset by peer))
19:14:26funmanis there any difference between long and int on arm ?
19:15:34funmanso i have int x = 1500000; int y = 0; (not builtin constants though), and int z = (x * 62000000)/1000000000; gives me 1 while it should give 93000
19:15:59funmanthe code doesn't use gcc divide function though
19:16:11funmanhm ..
19:16:11Torneyou're overflowing
19:16:17funmanof course
19:16:21Tornex * 62000000 is more than 2^32
19:16:35Torneyou need to rearrange the expression :)
19:16:52funmanx / 1000000000 will underflow no ?
19:17:02Torneyou can't do either first
19:17:08Torneyou need to rearrange it more creatively than that ;)
19:17:35funmanbut (62000000/1000000000) will underflow as well, or will gcc understand what i want ?
19:17:48Tornegcc will do that at compile time
19:18:34funmanwell but i would arrange inside each parenthesis without looking at what's outside (so, give 0)
19:19:39funmansince 62000000 is a define i don't want to do *62/1000
19:19:47CIA-38New commit by mcuelenaere (r21235): Properly implement backlighting on Onda VX7x7 (using PWM).
19:20:44 Quit einhirn ("Miranda IM! Smaller, Faster, Easier.")
19:20:47Tornethe problem is it's all integer math
19:20:51funmananother solution is using int64_t
19:20:57Torne62000000/1000000000 == 0
19:21:07Torneso if you write that you won't get the answer you were intending :)
19:21:18Torneyou need to do the math and work out a reduced range expression for it
19:21:33funmannot for x * X / 1000000000
19:21:35 Quit kushalone (Read error: 60 (Operation timed out))
19:22:07Tornefunman: it's got to do *something* first, is the point
19:22:21Torneall trivial combinations of those operands are going to immediately overflow or underflow in the first operation
19:22:27 Quit perfectdrug ()
19:22:39Tornefor some expressions it's possible to restructure them such that they do not go out of bounds
19:22:46funmanunless i use 2 registers to use an integer > 2^32
19:22:57Torneyah, but it's nicer not to do 64-bit math if you can help it
19:23:09Tornei need to leave for now i'm afraid or i'd see if i can work it out for you
19:23:13Torneback in a while ;)
19:23:16funmanthanks :)
19:23:25mcuelenaereanyone experienced with the TEA5767 around? I need to find out whether my I²C implementation actually works :)
19:25:23funmanTorne: i'm just going to reduce to *62/1000 .. easiest way
19:26:12 Join Horscht [0] (n=Horscht@xbmc/user/horscht)
19:26:33 Join LambdaCalculus37 [0] (i=44a0430d@rockbox/staff/LambdaCalculus37)
19:30:55 Nick at0m is now known as at0m|c (
19:32:46domonokymcuelenaere: what do you need to know about tea5767 ? To test if it works, you could try to readout a register. see tea5767_dbg_info()
19:33:23mcuelenaeredomonoky: I can read the register (it shows up in the debug menu), but it looks like it never changes
19:33:45mcuelenaerewhich makes me wonder whether this isn't just some garbage
19:34:09 Quit kugel (Read error: 110 (Connection timed out))
19:34:11mcuelenaereit reads A8 23 00 80 A0
19:36:51 Join kugel [0] (n=kugel@rockbox/developer/kugel)
19:38:27domonokyhm, on my it changes contents when i have radio on. if radio isnt on, it stays at some value.. (everytime different)
19:38:48 Join kugel_ [0] (
19:38:52 Join Llorean [0] (
19:40:39domonokyso its no good indicator. but it hints to a working i2c and radio for you :-)
19:41:01 Quit flydutch ("/* empty */")
19:41:08mcuelenaerehmm the schematic seems to indicate it is always powered on, but this sounds like it isn't..
19:42:08funmanhum I tried to give meaningful values to MCI_DATA_TIMER but it only makes things worse
19:42:25funmanI'll see if the OF uses the card data to compute timeouts
19:42:26domonokywhat is missing for you so you can hear if fm works ?
19:47:12*amiconn points kugel to
19:48:31amiconnAll swcodec targets can play -c1000, all but PP can play -c2000 and -c3000 (but coldfire struggles at -c3000). The beast handles -c4000 without problems, and *almost* handles -c5000 when clocking it at 528MHz
19:49:36 Join rw [0] (
19:49:36amiconnPP could handle -c2000 by going dual core for APE - that's one of my ideas to work on for the hacking weekend (aka devcon)
19:50:36 Join solexx [0] (
19:51:05*funman would like to see sansa ams benchmarks
19:51:24*LambdaCalculus37 too
19:51:28mcuelenaeredomonoky: I *think* I can hear FM, as I can hear the same audio garbage when turning line in on and pressing the touch screen :/ But I can't tune to any channel :)
19:51:35amiconnfunman: You could do some...
19:51:52LambdaCalculus37amiconn: How well does -c5000 APE perform on the beast when clocked at 528MHz?
19:51:55 Join _lifeless [0] (n=lifeless@
19:52:22amiconnIt's 105% realtime in test_codec. It mostly plays, but skips occasionally in wps
19:52:44LambdaCalculus37amiconn: How about when also scaling a huge JPEG album art? ;)
19:53:03*amiconn still didn't try jpeg album art on any target
19:53:45amiconnAlso, for me it won't scale album art in parallel, as I don't use WPS'es with aa
19:53:52funmanamiconn: is there any ape encoder for linux?
19:54:03amiconnI have no idea
19:54:18funmancould you provide me with samples for each level?
19:54:35LambdaCalculus37funman: There's this:
19:55:04funmanjava :(
19:55:19LambdaCalculus37Sorry, dude. :(
19:55:45 Quit kugel (Read error: 110 (Connection timed out))
19:57:03 Join kugel__ [0] (
19:58:11funmanthere is some source at
19:59:42 Part kugel__ ("return(0);")
20:02:40 Quit PaulJam (Nick collision from services.)
20:02:41 Join PaulJam_ [0] (
20:02:45 Nick PaulJam_ is now known as PaulJam (
20:02:58 Quit wark (Read error: 110 (Connection timed out))
20:04:00 Quit chandoo ("Leaving")
20:05:45 Quit kugel_ (Read error: 110 (Connection timed out))
20:06:57 Quit solexx_ (Read error: 110 (Connection timed out))
20:07:23 Quit __lifeless (Read error: 113 (No route to host))
20:08:36bertrikfunman, do you still see problems on the fuze?
20:09:34bertrikif so, do you think there is a relation to my change to using A7 in the fuze display driver?
20:09:51 Quit funman (Read error: 60 (Operation timed out))
20:10:38 Quit rw (Read error: 110 (Connection timed out))
20:10:55 Join funman [0] (n=fun@rockbox/developer/funman)
20:11:21 Join rw [0] (
20:11:50 Quit rw (Client Quit)
20:15:40funmantested on Clip with a 4seconds file : c1000 668% realtime, c2000 446%, c3k 275%, c4k 97%, c5k 9%
20:15:56 Quit barrywardell (Remote closed the connection)
20:16:17funmanpretty much like gigabeatf, but i don't know if further optimisations have been made since r19250
20:19:37 Join froggyman [0] (
20:23:10FlynDiceFS #10308 offers a workaround for e200v2 radio if anyone is interested, but I'm not here...
20:24:40 Join kachna [0] (
20:24:53funmanFlynDice: i'm not sure if it's really wanted ..
20:25:14funmani find clock-target.h already big and tweakable enough
20:26:39 Quit bubsy ("Mrrrrreow!")
20:29:48 Join kugel [0] (n=kugel@rockbox/developer/kugel)
20:35:16kugelfunman: nice messurements
20:36:04kugelbut the clip has a little pcm buff compared to the highmems, hence I'm asking if we can make them the same (i.e. shrink the high mem's one)
20:36:14funmankugel: yep ^^ i'd like to see if gigabeatf decoding speed changed to compare with the 300MHz CPU
20:36:49funmankugel: i don't know
20:38:28funmani didn't look if pcmbuf approached 0 when decoding -c3000
20:38:40***Saving seen data "./dancer.seen"
20:38:48funmando you expect a gain in battery life due to more audio buffer?
20:39:09kugelthe pcm buff is mostly wasted right now as it seems to me
20:39:24kugelespecially since the watermark is quite high (see pcmbuf.c)
20:40:11 Quit ender (" Do not believe any statistic you didn't falsify yourself.")
20:40:21 Join kugel_ [0] (
20:40:33 Quit kugel (Nick collision from services.)
20:40:37 Nick kugel_ is now known as kugel (
20:41:11funmankugel: i don't see any problem with it, but then i don't know if some codecs require excessively more processing for certain frames
20:41:43kugelhave you seen MrSomeonesTodoList?
20:42:13kugel1 point is to optimize pcmbuf for the targets, as most targets aren't sizing it really good
20:43:37funmansansa clip OF seems to ignore NSAC from the SD CSD (it's set to 0 anyway), but i don't know how fuze/e200v2 handle µSD's NSAC
20:44:00 Quit kugel (Nick collision from services.)
20:44:06 Join kugel [0] (
20:48:07kugelFlynDice: will you be doing tests at 248/62 and 31/31?
20:50:17funmanwell i'm not sure how it is handled actually ..
20:51:38kugelfunman: I was trying to get push or pop errors for the blue bars
20:51:52kugelthere were no errors, the isr wasn't executed
20:51:55funmanseems that it starts setting a timeout at 1/16 second, but then it's modified in several places, including the isr
20:52:05funmankugel: i didn't try your patch yet :/
20:52:54*bertrik is confused by the fuze OF
20:53:41bertrikin the display initialisation code it really does set pin A7 (also used by fm radio) and it does stuff with A3 (used for USB detect)
20:54:02funmanbertrik: send a patch to SanDisk :)
20:54:22bertrikyeah, sometimes I wonder if some things are bugs too!
20:54:23 Join Thundercloud [0] (
20:57:52funmanwell OF completely ignore data access times and used its own timeout
20:57:57 Join ender` [0] (
21:01:02 Join raquatrac [0] (
21:04:58 Quit ze (Remote closed the connection)
21:05:38 Join pyro_maniac [0] (
21:05:39kugelbertrik: your patch gives me blue lines too :(
21:06:38bertrikhm, pity
21:07:13bertrikI think funman determined that DBOP ran at 31 MHz in the OF, so we may be overclocking it now
21:07:16kugelmcuelenaere: why did you choose BACKLIGHT_FADING_SW_HW_REG?
21:07:22kugelwe are not
21:07:30mcuelenaerekugel: I'm not sure what else to pick?
21:07:31bertrikunfortunately we cannot easily scale it
21:07:32kugelI get blue lines with 31MHz too
21:07:37kugelsure we can
21:08:22raquatracHi, submitting a translation on the page"> produces a diff file. Where can I find guidelines to do something useful with it?
21:08:31kugelmcuelenaere: well, isn't your fading entirely done in onda_vx747/backlight-onda_vx7X7.c without incorparating the backlight thread?
21:09:04funmanFS #10309 - Sansa AMS : correctly sets timeout for data access => my Fuze works better with this, now let's see if other people are seeing problems with disk access
21:09:32kugelmcuelenaere: BACKLIGHT_FADING_TARGET is approiate for that
21:09:51mcuelenaerekugel: what do you mean 'without incorporating the backlight thread'?
21:10:03mcuelenaereI thought the backlight thread calls the target-specific functions and that's it?
21:10:11bertrikkugel, we can scale down by a factor of two AFAIK, and more accurate for even lower frequencites
21:10:15kugelmcuelenaere: not exactly
21:10:16mcuelenaerewhat do you mean with*
21:10:39kugelfading isn't target specific in the backlight thread
21:11:10kugelbertrik: yes, and 62/2 is 31
21:11:31kugelunsurprisingly it gives 50fps max, but still with blue bars
21:11:50kugelI don't quite understand what you mean with overclocking. the dbop is specified for upto 65MHz
21:11:52 Quit KBH ("ZNC")
21:11:54funmanbertrik: OF runs dbop at 32MHz (pclk is 64MHz)
21:12:06mcuelenaerekugel: you mean fading is target-independant in the backlight thread? that's what I expected it to be
21:12:06 Join HBK [0] (
21:12:21funmankugel: i think bertrik meant overflow with respect to the values of DBOP_TIMPOL_* registers
21:12:42bertrikI mean that if the OF runs it at 32 MHz and we run it at 62 MHz, it could be too fast for the display
21:13:01kugelmcuelenaere: you're doing your own fading in after _backlight_off()
21:14:03mcuelenaerekugel: you mean I'm supposed to do my own fading or .. ? (because I'm currently not)
21:14:03kugelthat's what the beast is doing too, for that type we have BACKLIGHT_FADING_TARGET
21:14:18kugelno you aren't, but it looks like it does
21:14:45mcuelenaereset_backlight_off() just does what it function is named after: turning the backlight off :)
21:14:46 Quit PaulJam (Nick collision from services.)
21:14:47 Join PaulJam_ [0] (
21:14:52 Nick PaulJam_ is now known as PaulJam (
21:15:05mcuelenaereall this driver does is, turning the backlight on/off and setting it to a specific brightness level
21:15:13kugelah ok then
21:15:23kugelthere's so much PWM in it
21:15:31mcuelenaereI know :/
21:15:41*mcuelenaere had a lot of trouble with that
21:15:52kugelSW fading is done through setting the brightness in small intervalls though, not exactly what I call PWM fading :)
21:16:03mcuelenaereI initially tried using BACKLIGHT_FADING_PWM, but amiconn told me that was for software PWM
21:16:26mcuelenaere(or software emulated PWM)
21:16:44mcuelenaerethis is implemented as 'hardware PWM' i.e. a timer running as a PWM
21:17:22*kugel is confused
21:17:49kugelbut there's still no fading in your driver?
21:18:36CIA-38New commit by mcuelenaere (r21236): Correct some comments (no functional changes)
21:18:58mcuelenaerekugel: nope, I'm counting on the backlight thread for that
21:19:06kugelok then
21:19:06mcuelenaere(or backlight driver)
21:19:15kugelI just was confused then :)
21:19:28bertrikkugel, the blue bars occur only when using the FIFO?
21:19:31kugeldoes it work nicely?
21:19:42bertrikcould we be overfilling it maybe
21:19:48kugelbertrik: I don't understand?
21:19:56mcuelenaerekugel: was that directed to me?
21:19:56kugelI don't think it's overfilling
21:20:05kugelI also tried stopping at almost full
21:20:17kugelmcuelenaere: "does it work nicely?" this yes
21:20:29bertrikyeah, overfilling would cause left/right shifts I think and we're not seeing that
21:20:43mcuelenaerekugel: sort of, it's a bit jerky but it's much better than the OF
21:21:22mcuelenaereI think I saw Rockbox's iPod Video's backlight fading once and remembered it much more smoothly then this
21:21:47kugelwell, I certainly didn't have targets with 200 brightness levels in my mind when doing the SW fading :)
21:21:53*mcuelenaere thinks it should be done in much smaller increments
21:22:16mcuelenaereyeah, clearly :) When I tried using 300 brightness levels, the fading was very slow :)
21:23:19kugelare the 200 levels so noticeably different? They might reduced. You can also try reducing the fade step delay (backlight-sw-fading.h)
21:23:24amiconnOn ipod video rockbox uses software pwm fading, which has 100 levels
21:23:40mcuelenaereThe beauty of using hardware PWM is that I can virtually construct every level of brightness possible
21:23:45kugelit *much* smaller steps too
21:24:08kugelI'm not entirely sure why you can't use PWM fading then
21:24:12amiconnSoftware pwm employs the user timer, and switches backlight via gpio in the isr
21:24:33mcuelenaereamiconn: does the backlight setting offer 100 brightness choices to the user?
21:24:49amiconnNo, since software pwm runs during fade *only*
21:25:06mcuelenaerekugel: because that's intended for software PWM? I haven't looked into adapting it to my situation though
21:25:10amiconnThe 100 steps are between whatever brightness level the user has set, and zero
21:25:17mcuelenaereah ok
21:25:41amiconnRunning software pwm permanently would be quite a waste
21:25:46 Quit rvvs89 (Remote closed the connection)
21:25:50mcuelenaereamiconn: then how does the brightness get set? (if software pwm only runs during fading)
21:25:51 Join rvvs89 [0] (
21:25:53bertrikfunman, could it be that the CSD of the AMS Sansa's can't really be trusted at all?
21:26:06amiconn(especially on coldfire since it requires to stay boosted while doing the pwm fade)
21:26:20bertrikI remember seeing incorrect sizes in the CSDs
21:26:36amiconnmcuelenaere: The ipod video and nano are the only targets having both software pwm fading and hardware brightness control
21:26:45mcuelenaereahh ok
21:26:55amiconnThe hardware brightness circuit (probably also using pwm) has 32 levels
21:26:57funmanbertrik: it wouldn't bother me, but it also seems to ignore NSAC & TAAC from µSD CSD
21:27:18 Join BryanJacobs [0] (
21:27:28kugelmcuelenaere: you basically need to provide a "_backlight_[on|off)_isr()"
21:27:36bertrikfunman, does the OF use anything from the csd?
21:27:42amiconnThe two PWMs don't interfere because the software pwm runs at a way lower frequency (200Hz) than the hardware pwm (probably running at >20kHz)
21:27:46mcuelenaerekugel: yes, but none of my code gets run as an ISR
21:28:14funmanbertrik: not much, at least the number of blocks
21:28:16kugelyour code isn't the actual ISR
21:28:25mcuelenaereamiconn: is the backlight still visible at 20kHz?
21:28:39kugelon the ipod the *_isr just sets a GPIO
21:28:42funmanthere is a function which extracts all fields from the CSD, and then only 2 fields are used
21:29:22Mikachuif you shake the ipod quickly while it's fading (only recommended for nano ;), you can usually move it a whole screen's width in the time the software pwm switches on and off once
21:29:46kugelmcuelenaere: the actual ISR is backlight_isr() in backlight.c, that calls the target specific brightness setting function
21:30:10mcuelenaereamiconn: I read that the backlight isn't visible anymore to the human eye at >1kHz
21:30:15amiconnYou can do that with a video as well, as long as it's not buffering (or cf modded)
21:30:37Mikachusure, i just don't want to recommend it :)
21:30:48*amiconn wonders where mcuelenaere read that
21:31:08Mikachueyes have super low refresh rate
21:31:14Mikachuor rather, they're super motion blurred
21:31:31mcuelenaereamiconn: (search for 'The pulse repetition frequency..'
21:33:18amiconn"The pulse repetition frequency should be greater than 100Hz so the flickering is
21:33:18amiconnnot perceptible to the eye but not greater than about 1kHz.
21:33:41amiconnIt can very well be higher without any problems...
21:33:51funmanbertrik: I modified the bootloader for fs#10285 - can the very frequent button reading draw more current from the battery ?
21:33:59kugelfunman: good that you mixed changes again, I can't figure out what you did in that patch
21:34:03Mikachumaybe airplanes will start crashing into your house above that freq :)
21:34:06amiconnIt's just that *really* high frequencies would increase losses due to switching
21:34:22 Join ze [0] (i=ze@
21:34:26mcuelenaerekugel: hmm isn't that for software PWM? (I don't need to switch the backlight on/off manually, the hardware timer does that)
21:34:31funmankugel: i experimented with something needing these changes, but then went for a simpler solution
21:35:15kugelmcuelenaere: yes (I was trying to tell you how you could use the software PWM, since that seems more appropriate for your target)
21:35:45mcuelenaerekugel: it looks a bit unnecessary (and waste) to use software PWM when you have a hardware PWM available..
21:35:50bertrikfunman, I don't know, maybe. The button read function takes only a small amount of cycles (and no more burned cycles)
21:35:53 Join tessarakt [0] (
21:36:05mcuelenaereit looks ... to me*
21:36:10kugelmcuelenaere: what you do isn't hardware PWM either
21:36:28mcuelenaerekugel: how do you mean?
21:36:50kugelI mean, the software still emulates the fading. Hardware fading would be to have it done all by the hardware
21:37:02amiconnIt *is* hardware pwm
21:37:34funmanbertrik: i mean it could use more current by reading from GPIO more often, not by more cycles
21:37:37mcuelenaerekugel: the software still emulates the fading, yes. But the hardware does the actual turning on/off of the backlight, so it is hardware PWM
21:37:44amiconnThe software just controls the brightness setting (== pwm duty cycle)
21:38:15kugelI know...I was a bit unclear
21:38:51bertrikfunman, I think it won't draw more current, but I can't really prove it
21:39:26bertrikthe buttons are probably read out very often anyway
21:40:01funmankugel: i updated the patch (8 lines changed in 1 file this time)
21:40:22funmanbertrik: you can prove it with 2 battery benches :)
21:40:27kugelmcuelenaere: you can try changing FADE_DELAY to make it more smooth, so that the backlight thread would run each tick
21:41:03mcuelenaerekugel: that's one possibility, but offering the user 300 backlight brightness options seems a bit overkill to me :)
21:41:21kugelthat too
21:41:40kugelalternatively you can run your own tick task in your backlight driver, choosing the fading steps dynamically
21:42:10kugellike, always 50 no matter of the actual backlight brightness
21:42:12*amiconn still prefers the sw pwm way of fading, where the user selects fade-in and fade-out times
21:42:36*mcuelenaere prefers fade-in & fade-out times too
21:42:51*kugel finds them overkill and prevers sane defaults
21:42:57kugelbut we had this discussion already
21:43:09amiconnThe sw pwm is called twice per 5ms cycle. At each cycle it checks whether the duty cycle needs changing.
21:43:15mcuelenaerewow, having 300 brightness levels really smoothens fading :)
21:43:42kugelyou only have 200?
21:44:15amiconnThe shortest possible fade using all 100 levels is therefore 500ms, but shorther fades are possible by skipping levels.
21:44:16kugelfrom 100-300 (reading config-ondavx747.h
21:44:31amiconnCalculation is done by a bresenham-like algorithm
21:45:20mcuelenaerekugel: 300-1 so 299 actually
21:45:45mcuelenaerekugel: did you svn up? ;)
21:46:03funmanbertrik: i'll receive a c200v2 within ~2 weeks, i hope i can make lcd work
21:46:13kugelI didn'T see that change before
21:46:19bertrikfunman, what would be a good test? just letting it idle in the menu with auto-poweroff disabled?
21:46:24bertrikfunman, oh nice!
21:47:02funmanbertrik: i think it doesn't matter as long as you do the same thing in both runs
21:47:06bertrikfunman, I have hope we can reuse much of the current c200v1 driver
21:47:50funmanbertrik: oh by the way button_read_device() is called every tick
21:48:15*mcuelenaere will probably either tweak the existing driver a bit or implement the do-your-own fading
21:48:18funmanso your patch could actually draw less power (3 times less GPIO readings)
21:48:32kugelmcuelenaere: but you could also setup a timer interrupt changing the brightness more quickly than each tick
21:48:38funmanbertrik: but then, you could actually handle row switching in button_read_device() ..
21:48:39kugelso many possibilities :)
21:48:52mcuelenaerekugel: that's CPU waste again..
21:49:04bertrikfunman, hm yes, we wouldn't need the kernel tick_task
21:49:35mcuelenaerekugel: I would just prefer setting the hardware PWM with different settings then doing sw emulated PWM fading
21:49:36funmankugel: do you still need fuze parts ?
21:49:37kugeldoes reading GPIO really cost power?
21:49:54kugelfunman: I need a LCD :)
21:49:58saratogaprobably not
21:49:58kugeland a mainboard ...
21:50:08kugelno, I think the other fuze isn't recoverable
21:50:34funmankugel: contact ej0rge on the forums, he bought several broken fuzes
21:50:41funmanah ok
21:50:54kugelmcuelenaere: you can't do that with SW fading. But you can still have your own tick task for that
21:51:23kugelIIRC there's already 1 or 2 target that use a tick task for backlight
21:51:24mcuelenaerekugel: do what?
21:51:40bertrikfunman, indeed button_read_device is called from the button_tick task, I'll see if I can simplify the patch
21:53:00 Quit togetic (Read error: 104 (Connection reset by peer))
21:53:36kugelbertrik: how do you think it was read if not in a tick task?
21:54:49kugelmcuelenaere: setup a tick task, do the software fading there, but choose fading steps yourself (isn't that what your wanted?)
21:55:03bertrikI didn't think about that
21:55:54mcuelenaerekugel: hmm yes, but I would use a timer if possible
21:56:08*mcuelenaere is going to stick to how it's now atm
21:57:17kugelfunman: noticed my buttonlight patch?
21:57:46bertrikthe bootloader calls button_read_device directly to determine if text should be shown during boot, but with my patch it can take three ticks before it returns the actual button status
21:57:58funmankugel: nope >_<
21:58:15kugelI'm just posting it in the forum
21:59:26 Quit LambdaCalculus37 (" ajax IRC Client")
22:00:28*kugel thinks we don't even need all buttons in the bootloader
22:00:50kugel1 or 2 are sufficient, so reading only 1 row would be accaptable imo
22:01:28kugelJdGordon|: Have you seen my fix for FS #10101
22:05:09 Join Ubuntuxer [0] (
22:05:29JdGordon|kugel: no?
22:05:57kugelit's on the tracker
22:06:37JdGordon|remind me this arvo...
22:06:56*JdGordon| didnt see the email update for that task, except the one without an attachment
22:10:58funmankugel: i think removing lines instead of commenting is better to read in fs#10306
22:11:17 Quit Lss (Read error: 110 (Connection timed out))
22:12:49 Part raquatrac
22:16:45 Join _Auron_ [0] (n=DarkAuro@
22:17:54funmankugel: seems to work fine here, thanks :)
22:18:33kugelfunman: oh, I uploaded the wrong patch it seems
22:19:04kugelI mean, no difference except the commenting out
22:21:18kugelpatch updated
22:27:21 Join stripwax [0] (
22:34:35 Quit kugel (Remote closed the connection)
22:35:01 Join chandoo [0] (
22:36:28 Join mirak [0] (
22:38:44***Saving seen data "./dancer.seen"
22:39:30 Join kugel [0] (i=kugel@rockbox/developer/kugel)
22:40:51 Quit mirak (Client Quit)
22:42:33evilnickgevaerts: I mentioned a while ago that the HID aspect of RockboxUSB
22:43:14evilnick's USB stack caused my windows PC to "see" the SD card and the main memory as two separate devices (in the Safely Remove Hardware system tray icon)...
22:43:31gevaertsah, yes
22:43:34evilnickWell that can be safely ignored as it's working as normal on my work PC
22:43:41evilnickNothing to see here
22:43:42gevaertsgood :)
22:44:59 Quit bertrik (Remote closed the connection)
22:46:28 Part BryanJacobs ("Leaving.")
22:47:01 Join bertrik [0] (
22:49:54 Quit pyro_maniac ("Leaving.")
22:50:35*bertrik fails to see the relation between DBOP frequency and fm radio working or not on ams sansas
22:52:59bertriksome ams sansas at least. It seems I can't break fm radio on my clip.
22:55:51 Quit chandoo ("Leaving")
22:57:33 Join |mr [0] (
23:00:52stripwaxsaratoga - shame :) (re irc last night). i'll see if it does anything to profiling anyway. I have a question on libwma makefile −− what is preprocess and c2obj ?
23:01:50 Quit kugel ("exit(0);")
23:02:03 Join kugel [0] (i=kugel@rockbox/developer/kugel)
23:02:11 Quit kugel (Read error: 104 (Connection reset by peer))
23:02:15 Join kugel [0] (i=kugel@rockbox/developer/kugel)
23:02:19funmanstripwax: look in tools/functions.make
23:02:48*pixelma wonders about the Clip's red in the last build round
23:03:30funmanperhaps mcuelenaere didn't test his onda modifications on the clip, or the build server has some problem
23:03:46Mikachuthe commit was just a comment change
23:03:56funmanmust be the 2nd option then ^^
23:04:07Mikachuundefined reference to setjmp in vorbis.o, seems like an odd thing to happen
23:04:54Bagderyes, especially when the change was in an onda-related file only
23:06:45 Quit kugel (Client Quit)
23:06:53 Join kugel [0] (i=kugel@rockbox/developer/kugel)
23:07:29Bagderi can't find any obvious clues on the server either
23:13:09 Quit anigav (Read error: 60 (Operation timed out))
23:13:28stripwaxfunman - hm, do you know why libwma uses that, but libtremor also has the other stuff explicitly to compile $(ROOTDIR)/apps/codecs/libtremor/%.c ?
23:14:22funmanstripwax: no idea, have a look at svn blame output (if revision logs mention something)
23:15:28stripwaxfunman - actually I'm trying to work out how libwma gets built at all (I find the libwma.make file confusing due to its emptiness)
23:16:12stripwaxI guess some of the other codecs are similar. hm, I'm sure I'll figure i tout
23:17:35 Join kugel_ [0] (
23:17:39 Quit kugel_ (Read error: 104 (Connection reset by peer))
23:17:49 Join kugel__ [0] (
23:18:25 Quit kugel__ (Client Quit)
23:18:31 Join kugel__ [0] (
23:19:16funmanstripwax: there is also apps/codecs/codecs.make
23:20:17stripwaxyeah, I guess the default rule in there applies if nothing in the codec-specific makefile. makes sense!
23:21:25 Quit Ubuntuxer ("Leaving.")
23:21:43stripwaxalthough libtremor.make is still pretty confusing - is the second definition of $(CODECDIR)/libtremor/%.o ignored in preference to the first?
23:22:03 Quit kugel__ (Client Quit)
23:22:10 Join kugel__ [0] (
23:26:04 Part kugel__ ("return(0);")
23:33:28 Quit TheSphinX^ ("XChat@Linux")
23:33:39JdGordon|so.... did anyone come to a descision about disabling the debug menu in the release builds?
23:34:52LloreanI'm still in favour of disabling it.
23:35:13*amiconn isn't
23:35:19*gevaerts is undecided
23:35:19Lloreanamiconn: Why not?
23:35:20funmanpeople wanting to give information could easily update to a daily build, so i'm in favour as well
23:35:29Lloreanfunman: People should never use daily builds.
23:35:30 Quit kugel (Read error: 110 (Connection timed out))
23:35:34Mikachuyou could have a hidden option in the cfg?
23:35:37LloreanUnless there's something wrong with the current build.
23:35:47gevaertsIt has some information that should actually be in the main system menu
23:35:49*bertrik has no opinion on this
23:35:52funmanLlorean: that's one reason for wanting to enter the debug menu (something wrong)
23:35:56Lloreangevaerts: That should be resolved.
23:35:57amiconnLlorean: Screendump and archos flashing (needs tom dump)
23:36:07amiconntypo++ :(
23:36:08JdGordon|amiconn: this might swing you.... removing the menu should give a nice delta for release builds...
23:36:24Lloreanfunman: Yes, but if it's still wrong with the current build, the current build will have a debug menu
23:36:42Lloreanamiconn: If things are needed for normal use, they shouldn't be in the debug menu
23:36:45 Join kugel [0] (i=kugel@rockbox/developer/kugel)
23:37:25MikachuLlorean: i think when funman said daily build he meant current build, as opposed to a release version build (or maybe i missed something)
23:37:30n1sMaybe we should move some of the info in the debug menu to the system info or something
23:37:40LloreanMikachu: Well, they're very different things.
23:38:03Mikachuisn't the daily build just the last 'current' build of the day?
23:38:20LloreanYes, exactly. So when we ask people to try on the latest build, we want them on the *current* not the daily
23:38:39LloreanWhich means there needs to be clear separation between the two. That's also why daily builds aren't linked in the left menu bar.
23:38:46funmanLlorean: ah sorry i meant current build
23:38:51JdGordon|we really should stop doing dailies then...
23:38:52gevaertsMikachu: no. They get built separately
23:39:11amiconnROM dump should imho be part of firmware_flash, with ROM contents detection (offering backup only if it finds the original archos content)
23:39:12LloreanJdGordon|: They're useful as archived builds for people to roll back to, or for us to use to quickly track down what day a bad change happened on without having to roll builds.
23:39:12 Quit kugel (Read error: 104 (Connection reset by peer))
23:39:41n1sJdGordon: yeah, we could just as easily archive the first build for each day or something
23:39:47oboare dailies still the only builds available with .map files?
23:39:51 Join safetydan [0] (n=deverton@rockbox/developer/safetydan)
23:39:55gevaertsmaybe we should discuss this at devcon. See what needs to be put in a proper place so you don't need the debug menu for anything but debugging
23:40:21*Llorean thinks the debug menu should stay available in every build except the Release builds, and that as soon as feasible it should be removed from future release builds.
23:40:24Bagderobo: yes, we don't collect them for the commit builds
23:40:35JdGordon|n1s: yeah, and have the links more hidden from users
23:41:22n1sJdGordon: well, just call them archived builds like i think we do now, not terribly confusing
23:41:27*JdGordon| wonders if someone can get Zagor to have a look at the makfile changes in 10278?
23:46:10CIA-38New commit by bluebrother (r21237): Make labels in generated TTS / Encoder setting dialogs translatable. ...
23:48:18JdGordon|why are all the HID options in the top level debug menu?
23:48:23JdGordon|... or there at all?
23:49:36CIA-38New commit by bluebrother (r21238): Set svn:eol-style on several files missing it and dos2unix them.
23:50:09LloreanJdGordon|: They aren't really "options"
23:50:35JdGordon|sure, but no need to add more clutter there... they could have gone in a seperate "HID debug" menu
23:50:42LloreanYeah, this is true.
23:51:37JdGordon|and screenshot should be moved out... the rest is mostly useless for users other than a nice curiosity thing
23:51:40gevaertsactually, they can probably just go
23:51:50 Quit |mr (Read error: 110 (Connection timed out))
23:51:53Lloreangevaerts: I take it they were there during an earlier stage of testing?
23:58:05 Quit bmbl ("Woah!")
23:58:21 Join matsl [0] (

Previous day | Next day