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-11-15

00:00:08 Join kugel [0] (n=kugel@rockbox/developer/kugel)
00:02:18gevaertsQuintasan: it should be GPLv2 or later
00:02:26*hillshum notices that rbutil's main.cpp header does not specify a version of GPL, nor is the COPYING file referenced present
00:03:59Quintasanhmm lack of COPYING file will be propably a problem
00:04:05Quintasanwho should I poke to add it?
00:04:40gevaertsrockbox as a whole has the full license text. Do we distribute rbutil sources separately?
00:05:34Quintasangevaerts: looks like ->
00:05:41saratogaif I want to have the codeclib able to do transforms of different sizes, how should I handle allocating buffer space for different transform sizes used for different codecs
00:06:14saratogaI'm thinking of having the init function return a struct, and then have the individual codecs add pointers to whatever buffers they want to use (IRAM, DRAM)
00:06:28saratogabut maybe theres a more elegant way?
00:06:29Quintasangevaerts: nvm, it was inside the source tree, I hope that's acceptable
00:07:07saratogathe problem is that some codecs like WMA will need a lot of transform sizes (5) while others like ATRAC only use 1 size, so a lot of IRAM would be wasted if I allocated all 5 buffers in the lib
00:08:07gevaertsQuintasan: in general bluebrother and domonoky are the people to talk to about rbutil
00:08:10saratogaQuintasan: does packaging for ubuntu make sense? we tend to update rbutil from time to time, so if your copy isn't updated with it, yours won't be able to work with newer rockbox targets
00:08:53hillshumDepends on how often it's updated
00:09:02Quintasansaratoga: no problem if I make a watch file
00:09:17Quintasanit's not a problem even if I don't make it :P
00:09:39Quintasanurgh, now I have to find email of authors :/
00:09:56gevaertsAs far as I know rbutil is still considered to be in a state where it can be changed without backward compatibility (things like URLs on the website). Can you handle that?
00:10:42*hillshum thinks there should be an official Ubuntu PPA
00:10:57gevaertsQuintasan: ubuntu requires people to have an email address in order to allow their software in?
00:11:36Quintasangevaerts: I need to give proper credit in copyright file, it mentions including emails, I dunno if it's required
00:12:40QuintasanI can just put their names but I bet archive admins will complain
00:14:01gevaertsisn't just a general contact address enough?
00:15:13Quintasanshould suffice
00:16:06gevaertsAnyway, I think you should talk to domonoky or bluebrother first. I'm really not convinced that packaging, and therefore having old versions around, is such a good idea at this stage
00:17:07Quintasangevaerts: what do you mean by old versions? I'm packaging current version and adding watch file to speed up updating Ubuntu package to new source
00:18:00gevaertsQuintasan: and they keep getting updated if people use e.g. LTS installs?
00:19:09Quintasangevaerts: nope, I guess we can make a PPA if you need to upgrades to be supplied asap
00:19:32QuintasanI found that request laying in Launchpad and I though I could try doing it
00:19:38QuintasanPersonal Package Archive
00:19:42Tornewe're just saying that sometimes we will change stuff that makes old rbutil builds entirely stop working
00:19:48TorneURLs on the rockbox servers, etc
00:19:58Tornebecause we generally assume that people use an rbutil they just downloaded .
00:20:07Tornenot a bianry package someone may have made some time ago
00:20:27Quintasanuhm ok, so PPA would be better, but now that you mention it I don't really think I should package it
00:21:14Tornethe rbutil builds we do are statically linked so generally they Just Work if people download them
00:29:57 Quit dfkt ("-= SysReset 2.53=- Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn.")
00:36:29*domonoky1 mentions that the newest rbutil has a feature to nag the user, if a new version is online :-)
00:37:34domonoky1also with the current static one-binary rbutil, a ubuntu package is not really needed.
00:37:39 Quit kugel (Read error: 110 (Connection timed out))
00:38:28 Quit mcuelenaere ()
00:39:38 Join AEnima1577 [0] (
00:41:59 Quit Crunchie (Read error: 110 (Connection timed out))
00:43:52 Quit Ypsy ("Oh noes! My ZNC obviously just shut down :(")
00:50:53 Quit Quintasan ("Konversation terminated!")
00:52:44TheSevenwhat's the easiest way to debug thread lockups?
00:52:45 Join YPSY [0] (
00:53:00TheSevenis there any ready-make solution for dumping which thread is running?
00:56:20 Join Omlet [0] (
00:57:52 Quit domonoky1 (Read error: 131 (Connection reset by peer))
00:59:04gevaertssaratoga: I'm pretty sure that most tools will work from vmware
00:59:35saratogai don't think I ever got MSC mode even working on vmware, but maybe that was just my machine
01:02:21 Join bertrik_ [0] (
01:02:57 Quit bertrik_ (Client Quit)
01:03:00 Nick YPSY is now known as Ypsy (
01:03:31UnhelpfulTheSeven: you could probably do that under gdb if you can reproduce on sim. on target is more complicated, there's usb-serial logging on some targets but i don't know how well it will work if a thread isn't yielding
01:04:04TheSevenUnhelpful: it's happening somewhere around the usb driver :-/
01:04:15TheSevenso on-screen is the only way i can think of
01:04:57TheSeventhe only way i can think of right now is using a watchdog (either hardware or just emulated via the timer int)
01:05:01Unhelpfulyou could draw text to the screen, that's the only thing i can think of, but it would need to be done from the thread, and if you know which thread...
01:05:28TheSevenwriting to the screen from a timer int could actually work
01:05:34saratogai keep getting "error: expected specifier-qualifier-list" mean in gcc?
01:05:47saratogaerr what does getting "error: expected specifier-qualifier-list" mean in gcc
01:06:09TheSevensaratoga: on what source code?
01:06:36saratogaline 15
01:07:20TheSevenFFTContext vs. FFTComplex?
01:09:13saratogai'm getting cross eyed merging these headers
01:09:53TheSeventhey fooled me, too, until i had a closer look
01:11:22 Quit flydutch ("/* empty */")
01:12:09 Quit amiconn (Nick collision from services.)
01:12:11 Join amiconn_ [0] (i=quassel@rockbox/developer/amiconn)
01:12:30 Nick amiconn_ is now known as amiconn (i=quassel@rockbox/developer/amiconn)
01:13:49 Quit Omlet ("( :: NoNameScript 4.22 :: )")
01:14:38 Join pixelma_ [0] (i=quassel@rockbox/staff/pixelma)
01:14:38 Quit pixelma (Nick collision from services.)
01:14:57 Nick pixelma_ is now known as pixelma (i=quassel@rockbox/staff/pixelma)
01:15:05***Saving seen data "./dancer.seen"
01:15:56saratogai just decoded a WMA file with the new MDCT, though its garbled
01:17:55 Quit toffe82_ ("ChatZilla 0.9.85 [Firefox 3.5.5/20091102152451]")
01:22:14TheSevenyou mean it isn't crashing?
01:22:18TheSevenis it fast at least?
01:26:21markunsaratoga: is the new MDCT already faster?
01:26:56saratogait won't be faster just yet
01:27:08saratogathe old one is pretty well optimized and the new one isn't even working correctly yet
01:27:12saratogabut eventually i think it will be
01:27:35saratogai just want to get a working patch so mt and i can chip away at optimizing it in rockbox
01:27:52 Quit bertrik ("De groeten")
01:28:12saratogabut eventually i think it will be a couple MHz faster on ARM and probably a lot faster on Coldfire
01:28:47saratogai'm hoping to do 300% realtime WMA decoding on PP with this
01:31:23 Join Omlet [0] (
01:35:11 Quit ender` (" I went to a general store. They wouldn't let me buy anything specifically.")
01:38:53 Quit DerPapst ("Leaving.")
01:45:46 Quit Omlet ("( :: NoNameScript 4.22 :: )")
01:58:08 Quit beta2k (Read error: 110 (Connection timed out))
01:59:16 Join saratoga_ [0] (i=9803c6dd@gateway/web/freenode/x-dxnzxjxvhibdzgpt)
02:00:38 Quit saratoga (Ping timeout: 180 seconds)
02:04:48 Quit Xerion (Connection timed out)
02:07:23 Quit panni_ (Read error: 131 (Connection reset by peer))
02:11:27 Quit n1s ("Lmnar")
02:12:51 Nick Ypsy is now known as YPSY (
02:12:53Unhelpfulsaratoga_: what's new about it?
02:13:18saratoga_Unhelpful: its the mdct we originally discussed this spring, one based on an FFT
02:13:44 Join panni_ [0] (
02:13:48saratoga_it turns out we already had an FFT based on based on a fast split radix algorithm in liba52
02:14:17saratoga_and the ffmpeg people implemented the same algorithm for their new FFT
02:22:42Unhelpfuli remember the discussion... i don't really *understand* fft in any great depth, though.
02:28:12 Quit hillshum (Read error: 110 (Connection timed out))
02:28:40preglowsplit radix is pretty much the way to go
02:28:52 Join hillshum [0] (
02:29:14preglowwhy would it be very much faster than what we have on coldfire, tho?
02:35:36 Join CaptainKewl [0] (
02:37:44 Quit CaptainKewl (Client Quit)
02:43:50saratoga_preglow: long time no see
02:44:03preglowquite :>
02:44:05preglowi do lurk though
02:44:19saratoga_mostly because it would probably be easier to run on the emac
02:44:29preglowyeah, that is a good argument
02:44:36saratoga_this ffmpeg fft is quite amazing
02:44:45saratoga_they wrote it recursively out of preprocessor defines
02:45:04saratoga_so we'd only have to asm the building blocks
02:45:51preglowit'll probably be pretty skippy on the memory access tho, so no movem :/
02:46:08saratoga_does that matter if we're in IRAM?
02:46:15saratoga_i don't know much about how coldfire works
02:46:30preglownot as much as it would in ordinary ram no
02:46:47preglowbut i don't really know the low level details on how split radix algos work
02:46:52saratoga_what does movem do exactly?
02:47:04preglowjust fetch consecutive values form memory in one go
02:47:08Unhelpfulsaratoga_: load a run of values from memory, i believe
02:47:12saratoga_ah so its arms ldm
02:47:28saratoga_i doubt thats a huge issue, theres still plenty of work done at each level
02:47:42saratoga_split radix does a 2 and 4x decomposition at the same time
02:47:55saratoga_so the Nth fft is composed of an N/2 and 2 N/4 FFTs
02:47:59preglowisn't split radix pretty much about decomposing a block into tons of small 2 and 4 size butterflies?
02:48:41Unhelpfulsaratoga_: i don't suppose they have an jpeg idct that's at all emac-friendly?
02:48:58saratoga_i have no idea
02:48:59preglowi don't think you'd gain too much from using emac on jpeg idcts
02:49:13preglowyou don't need too much precision
02:49:19saratoga_but given the small size of the jpeg transform, you're probably better off looking up the known best algorithm
02:49:53saratoga_thats what libmad does for its 36 point transform
02:50:12saratoga_then unroll it and ASM it
02:50:18preglowfor fixed size transforms, you're just better off bruteforcing the algo
02:50:26saratoga_preglow: did you work on libmad?
02:50:40preglowalgebraic simplifications and just code it
02:50:44preglowyeah, i did
02:50:55Unhelpfulpreglow: you don't need high precision, but you benefit from being able to roll multiplies together with adds. i did *pretty* well working from the ijg idct algorithms, but i suspect there may be better mac-optimized idct algos...
02:51:05saratoga_do you know how libmad was chosen when SWCODEC was created?
02:51:24preglowit was chosen due to working pretty well out of the box
02:51:35preglowi did port another one made specially for 68ks
02:51:42saratoga_what was it called?
02:51:48preglowbut with no great luck, and tons of work needed to tailor it to emac
02:51:51pregloweh, i don't remember
02:51:54preglowbut gimme a sec
02:51:59saratoga_i wonder about libmad's performance
02:52:20saratoga_it seems quite poor compared to other decoder's numbers, and thats after half of it was rewritten in ASM
02:52:40saratoga_i suspect that some of its algorithmic choices are simply poor
02:53:10preglowthat's how far i took it
02:53:26preglowit might be structured badly
02:53:34preglowbut i don't think the algorithms are poor, specifically
02:53:46saratoga_i've verified that the mdct is known optimal
02:53:52 Quit GeekShadow (Read error: 104 (Connection reset by peer))
02:53:59saratoga_the ffmpeg and helix decoders are interesting
02:54:02saratoga_helix in particualr
02:54:09preglowi'd love to use the helix stuff
02:54:15preglowwhat i've seen of it looks very good
02:54:19saratoga_we can't use it but they have extremely interesting comments, and they benchmarked on arm7tdmi
02:54:29preglowtheir aac decoders also look great
02:54:39preglownice memory use, good performance benchmarks
02:54:42saratoga_yes some of the ideas i've had for ours are already used in it
02:54:42Unhelpfularmv6 has some very nice simd instructions i can use if i can come up with an *efficient* way to reorder coefficients. easiest would probably be just to use a separate de-zigzag table for each ordering :/
02:55:10preglowUnhelpful: for what target?
02:55:21preglowi can't even remember what the d2 has, i think it's armv5
02:55:37saratoga_the next time i'm trapped in an airport i want to go line by line and compute their multiply counts and compare to libmad
02:55:48saratoga_I think v6 is just the beast right now
02:55:57saratoga_and the upcoming nano4g port
02:56:09preglowso 4g has v6, does it
02:56:12preglowthat's cute
02:56:30Unhelpfulpreglow: beast is the only armv6 target, i think. with 0-1-2-3 ordering the 4-point idct is faster to just do two columns in parallel than to try to use special ops to speed up the algorithm
02:56:32preglowthe newer arms have some pretty specialized simd shit
02:57:01saratoga_IIRC the 4G is basically just the iphone in a different package
02:57:09preglowi can live with that
02:57:10saratoga_so it has absurdly overspeced hardware
02:57:20Unhelpfulif i can get 0213 ordering for it then i can use more of the special ops
02:57:35saratoga_yes its quite appealing, particularly given that the 16Gb option is pretty inexpensive
02:58:00preglowany way to actually flash it yet, tho? running rockbox from app hacks doesn't sit very well with me
02:58:12saratoga_ask TheSeven
02:59:24saratoga_he had some absurd runtime numbers for the 2G
02:59:39saratoga_if they work out for the 4G it'll be a popular target
03:00:15 Join Tomis2 [0] (n=Tomis@
03:00:25 Quit Tomis (Read error: 104 (Connection reset by peer))
03:00:32 Nick Tomis2 is now known as Tomis (n=Tomis@
03:01:06preglowyou had a look at porting the ffmpeg mp3 codec, btw?
03:01:08TheSevensaratoga_: ipod touch 2g to be correct
03:01:19TheSevenand they changed some things, e.g. reduced dram size to 32MB and removed the nor flash
03:01:24saratoga_preglow: thats the other codec I've been looking at
03:01:41saratoga_mp3 is next on my todo list once i have this imdct working well
03:01:41TheSevenand i'm not sure if they removed the arm7 core, it doesn't respond as expected at least
03:01:41preglowbrb, teeth brushie
03:02:37TheSevenand the lcd is driven through spi instead of clcd
03:02:58TheSevenbut i would guess they still have an hw h.264 decoder
03:04:35saratoga_given the CPU speed would they actually need it?
03:05:10TheSeveni have no idea what they are clocking this thing at
03:05:28TheSeventhey may actually using the bad chips for the nano and the good ones for the touch if they were clever
03:05:55TheSevenjust blitting a memory buffer to the lcd is at ~20fps with caches disabled
03:06:14TheSevenremember that this tiny thing has a 240x320 lcd
03:06:19preglowprobably hardware h264
03:06:34preglowit can be done insanely more power efficient that way
03:06:58saratoga_how does hardware H.264 work?
03:07:13preglownever actually read the specs on such a chip
03:07:16saratoga_is it just a DSP core or do they actually have multipliers and such run in sequence
03:07:36preglowcustom dsp core i guess
03:07:37preglowwith a rom
03:07:57preglowwith the decoder chip being interfaced directly to the lcd
03:08:02saratoga_would that be much more power efficient then an arm core with NEON?
03:08:22preglowalmost certainly
03:08:44preglowh264 coding isn't pure dsp data crunching
03:09:15preglowbut like i said, i've never read the specs for a hardware solution
03:09:52saratoga_i suppose having instructions for things like packed fixed point saturating multiplies and such would be a lot faster then arm
03:10:11saratoga_have you looked at the ffmpeg mp3 decoder?
03:10:16preglowand the entropy coding part isn't cheap these days either
03:10:24preglowi've looked at it, but remember nothing of details
03:10:48saratoga_i suppose the first step would be to just start picking pieces and swapping them into libmad and see if it gets faster
03:11:30saratoga_well first i guess i should figure out all the stupid crap mp3 does
03:11:50preglowwell, like i said, i don't believe the algorithmic choices in libmad are straight out bad
03:12:03preglowbut yeah, you would probably see pretty easily if something is radically different and worth trying to swap out
03:13:09saratoga_its funny how mp3 ended up being so much slower then everything else
03:13:15preglowone of the most cpu sucking parts is subband decoding, but i think libmad does that in an accepted fashion
03:13:16saratoga_at least on ARM
03:13:32saratoga_yeah synth_full is 50% of the total runtime
03:13:34preglowdoesn't really surprise me
03:13:45saratoga_its what i put on the coprocessor for PP
03:13:47preglowmp3 has so much shit in it for what it does
03:13:51preglowi mean, both subband coding and mdct? wtf?
03:14:01saratoga_atrac3 does that too
03:14:20saratoga_but it took buschel and mt like a week to get it working reasonably well
03:14:39preglowyeah, but i believe atrac uses coarses subbands
03:14:49preglowmp3 uses exactly the same filter bank as layer2
03:14:52saratoga_yeah just 3
03:15:03saratoga_or maybe 4
03:15:06***Saving seen data "./dancer.seen"
03:15:08preglow4 i believe
03:15:11saratoga_i mighht be mixing up atrac1 and 3
03:15:16preglowsits better with algorithms
03:15:35preglowhmm, nah, forget that
03:15:53preglowas long as the bandwidths are the same for all bands, the downsampling is easy
03:16:24saratoga_1 is 3 bands, 3 is 4 bands
03:16:39saratoga_3+ uses 16 bands
03:16:56saratoga_leave it to sony to rediscover stupid mpeg crap 15 years later
03:17:40preglowemphasis stupid
03:17:50preglowno pooint in keeping all that silly subband coding shit that i can see
03:18:22saratoga_my theory is that they were interested in keeping the memory usage as absolutely low as possible
03:18:24preglowit just makes things more complicated and makes exact reconstruction impossible
03:18:35preglowmy theory is they wanted to use as many patents as possible :P
03:18:46saratoga_and somehow this evolved into a design philosophy that persisted long after memory became cheap
03:19:01saratoga_this is mpeg or sony?
03:19:43saratoga_that would explain the seperate tonal and spectral component coding
03:27:30preglowanywho, i gotta sleep
03:35:58 Quit AEnima1577 ("Leaving.")
03:37:13saratoga_see you
03:42:38 Quit midgey ()
03:43:00Unhelpfulis low memory use still helpful for dedicated hardware implementations?
03:52:43saratoga_Unhelpful: depends what you mean by low memory
03:56:28 Join Topy [0] (
04:00:33 Join AEnima1577 [0] (
04:00:50 Quit AEnima1577 (Client Quit)
04:05:22 Join midgey [0] (
04:05:33 Join panni__ [0] (
04:07:57 Quit Rondom (Nick collision from services.)
04:08:07 Join Rondom [0] (
04:12:24 Join CaptainKwel [0] (
04:14:49 Quit T44 (Read error: 110 (Connection timed out))
04:14:51 Quit panni_ (Read error: 104 (Connection reset by peer))
04:16:24 Join derekja [0] (
04:16:30 Part derekja
04:20:06 Quit TheSeven (Nick collision from services.)
04:20:26 Join The_Seven [0] (n=theseven@rockbox/developer/TheSeven)
04:20:38 Nick The_Seven is now known as TheSeven (n=theseven@rockbox/developer/TheSeven)
04:22:31 Join AEnima1577 [0] (
04:22:38 Join dmb [0] (n=Dmb@unaffiliated/dmb)
04:23:19 Join panni_ [0] (
04:30:58 Quit panni__ (Read error: 110 (Connection timed out))
04:35:59 Quit AEnima1577 ("Leaving.")
04:41:53 Quit HellDragon (Read error: 104 (Connection reset by peer))
04:42:00 Join HellDragon [0] (
04:56:20saratoga_wow I think i am losing my mind over this fft bug
05:15:07***Saving seen data "./dancer.seen"
05:33:44 Join AndyI [0] (n=pasha_in@
05:45:28 Quit AndyIL (Read error: 110 (Connection timed out))
05:46:48 Quit ps-auxw (Read error: 110 (Connection timed out))
05:57:42CIA-5New commit by blue_dude (r23628): pcmbuf: consolidate some similar code
05:58:58 Quit BlakeJohnson861 ("Leaving.")
06:06:39 Join BlakeJohnson86 [0] (
06:06:40 Quit JdGordon ("Leaving.")
06:11:46saratoga_blue_dude: ping
06:12:50 Join JdGordon [0] (
06:17:39 Join Blue_Dude [0] (n=chatzill@rockbox/developer/Blue-Dude)
06:17:46Blue_DudeHi. I've only got a few minutes, though...
06:18:49 Quit hillshum (Read error: 110 (Connection timed out))
06:18:55Blue_DudeI saw your comment about running DSP on its own core, but DSP is already running on the codec thread, which is the problem to begin with. I'm not sure how to make DSP multithreaded with bad sync problems.
06:19:02 Join hillshum [0] (n=hillshum@
06:19:39Blue_Dudesaratoga_: oh yeah, pong...
06:27:35Blue_DudeI don't see any technical reason why DSP can't run its own thread on the other COP core. But the timing issues are confusing. If the pcmbuf begins to starve, which thread to boost? The DSP? And when it starves, it boosts the codec? What other threads would be competing for time on the COP and would they be badly affected by a CPU boost? etc.
06:28:52Blue_DudeWould it make more sense to move the codec thread in its entirety (w/ DSP) to the other core and flog it for all its worth if it begins to bog?
06:29:14Blue_DudeJust thinking aloud. Time for bed though...
06:29:17 Quit Blue_Dude ("ChatZilla 0.9.85 [Firefox 3.5.5/20091102152451]")
06:34:10 Join AaronM [0] (
06:34:26saratoga_Blue_Dude: (for the logs) theres very little using the other core besides the MP3 decoder, which would use about 20MHz worth of its time
06:34:43saratoga_if pcm begins to starve it always boosts both cores since they're synchronous
06:35:09saratoga_I don't think it matters if the DSP starves because it can't get enough main CPU time, or enough COP time, either way it'll boost until it recovers
06:35:23 Join shai [0] (
06:35:35saratoga_mostly i think the problem would be seperating the DSP functions between the main and COP threads
06:37:29 Quit goffa (Read error: 60 (Operation timed out))
06:37:34 Quit CaptainKwel ("( :: NoNameScript 4.22 :: )")
06:41:30 Join goffa [0] (n=goffa@
06:41:33saratoga_Blue_Dude: the other interesting possibility I've thought about was to allow the entire pcmbuffer past the codec to run on the COP, basically make pcmbuf_insert pass data to the COP
06:41:59saratoga_this would allow for some interesting codec optimizations such as running mdct on COP without having to pass data back to the main CPU
06:42:13saratoga_but i have no idea how difficult that would be to do
06:42:36saratoga_i suppose just moving EQ to the COP would be easier since EQ is relatively self contained
06:50:30JdGordonwould that work with codecs themselves running on the COP also?
06:50:55 Quit rphillips (Remote closed the connection)
06:53:45 Join rphillips [0] (
06:54:35 Join CaptainKewl [0] (
06:58:59 Quit CaptainKewl (Client Quit)
06:59:02 Quit Tomis ()
07:08:25 Quit fyrestorm (Read error: 104 (Connection reset by peer))
07:08:45 Join fyrestorm [0] (
07:09:06 Join CaptainKewl [0] (
07:14:37saratoga_JdGordon: you mean the whole codec?
07:15:11***Saving seen data "./dancer.seen"
07:25:26 Quit CaptainKewl ("( :: NoNameScript 4.22 :: )")
07:25:54CIA-5New commit by kkurbjun (r23629): Doom: test to see if it still needs Os on arm - that was set when the plugin buffer was smaller on all of the targets.
07:38:36 Join Horscht [0] (n=Horscht2@xbmc/user/horscht)
07:39:59saratoga_does performance actually matter for doom?
07:41:17 Quit panni_ ("( :: NoNameScript 3.81 :: )")
07:42:35kkurbjunsaratoga_: on the mr500 it's only getting 8 fps currently so I am just making it easier
07:42:48kkurbjunbesides, if the space is there why not use it
07:43:12saratoga_on the fuze doom crashes when it runs out of malloc space, but i guess Os isn't going to make much difference
07:43:32kkurbjunno, I don't think that Os would have any size on the dynamic memory
07:43:51kkurbjunany size impact that is
07:46:08 Quit Horschti (Read error: 60 (Operation timed out))
07:57:11 Join Horschti [0] (n=Horscht2@xbmc/user/horscht)
08:02:40 Join Rob2223 [0] (
08:04:24 Quit JdGordon (Read error: 104 (Connection reset by peer))
08:04:31 Quit Horscht (Read error: 60 (Operation timed out))
08:05:21 Quit jfc (Read error: 145 (Connection timed out))
08:05:31 Join jfc [0] (
08:20:46 Quit Rob2222 (Read error: 110 (Connection timed out))
08:23:07 Quit saratoga_ ("Page closed")
08:25:49 Join robin0800 [0] (
08:26:30 Join JdGordon [0] (n=jonno@rockbox/developer/JdGordon)
08:31:20 Nick nawks is now known as nawkzZzz (
08:35:31 Join stoffel [0] (
08:43:18 Quit shai ("Leaving")
08:52:44 Quit phanboy4 ("Leaving")
09:05:40 Quit BHSPitLappy (Read error: 104 (Connection reset by peer))
09:09:38 Join shai [0] (
09:09:45 Quit midgey ()
09:12:04 Join BHSPitLappy [0] (n=BHSPitLa@unaffiliated/bhspitmonkey)
09:15:15***Saving seen data "./dancer.seen"
09:15:25 Quit elcan (Remote closed the connection)
09:15:28 Join elcan [0] (
09:21:44 Nick Horschti is now known as Horscht (n=Horscht2@xbmc/user/horscht)
09:25:55 Join flydutch [0] (
09:29:30 Quit elcan (Read error: 54 (Connection reset by peer))
09:29:35 Join elcan [0] (
09:40:13 Join bmbl [0] (n=Miranda@unaffiliated/bmbl)
09:50:13 Quit Horscht ("Verlassend")
09:54:51 Join DerPapst [0] (
09:58:04 Join Grahack [0] (
10:05:28 Join Horscht [0] (n=Horscht2@xbmc/user/horscht)
10:08:50 Join bertrik [0] (
10:15:10 Join n1s [0] (n=n1s@rockbox/developer/n1s)
10:20:43 Join ender` [0] (
10:38:01 Join Mysterytrain [0] (n=George@
10:38:16 Part Mysterytrain
10:46:44 Quit maffe ("Miranda IM! Smaller, Faster, Easier.")
10:54:52 Quit stoffel (Read error: 60 (Operation timed out))
10:55:00 Join stoffel [0] (
11:00:38 Quit fyrestorm (Read error: 104 (Connection reset by peer))
11:00:50 Join stoffel_ [0] (
11:01:52 Join fyrestorm [0] (
11:14:15 Quit stoffel (Read error: 110 (Connection timed out))
11:15:19***Saving seen data "./dancer.seen"
11:16:19 Quit BHSPitLappy ("Ex-Chat")
11:16:35 Join pamaury [0] (
11:17:50 Quit stoffel_ (Read error: 60 (Operation timed out))
11:22:11 Join Horschti [0] (n=Horscht2@xbmc/user/horscht)
11:23:46pamauryhello, is there any git "expert" around ?
11:25:00 Join stoffel [0] (n=quassel@
11:32:52 Join Omlet [0] (
11:36:08 Quit bertrik (Read error: 60 (Operation timed out))
11:36:41 Join bertrik [0] (
11:42:46 Quit Horscht (Read error: 110 (Connection timed out))
11:46:30 Join teru [0] (n=teru@
11:56:42 Join stoffel_ [0] (
11:56:45 Quit bertrik (Success)
12:00:15 Join bertrik [0] (
12:01:43 Join Jaykay [0] (
12:03:04 Quit stoffel (Read error: 145 (Connection timed out))
12:04:56 Join stoffel [0] (
12:13:25 Nick Zambezi is now known as Multiman (i=Zulu@
12:13:36 Nick Multiman is now known as Zambezi (i=Zulu@
12:18:43 Join stoffel__ [0] (
12:18:53 Quit stoffel__ (Remote closed the connection)
12:19:34 Quit stoffel ("No Ping reply in 90 seconds.")
12:20:00CIA-5New commit by teru (r23630): sudoku: fix improper checking if loaded puzzle is valid. blocks also need to be checked.
12:20:59 Quit stoffel_ (Read error: 110 (Connection timed out))
12:47:44 Join domonoky [0] (n=Domonoky@rockbox/developer/domonoky)
13:06:30 Quit antil33t (Read error: 104 (Connection reset by peer))
13:06:36 Join antil33t [0] (
13:12:55 Join ps-auxw [0] (
13:15:22***Saving seen data "./dancer.seen"
13:19:43 Join kugel [0] (n=kugel@rockbox/developer/kugel)
13:22:15 Join Bagder_ [0] (
13:24:25 Join dfkt [0] (i=dfkt@unaffiliated/dfkt)
14:03:00 Join Zorda [0] (
14:06:34 Quit Zorda_ (Read error: 110 (Connection timed out))
14:11:08 Join einhirn [0] (
14:12:06 Quit chrism (Read error: 104 (Connection reset by peer))
14:23:14 Join Xerion [0] (i=xerion@
14:32:22 Join Lss [0] (
14:34:13 Quit n1s (Read error: 110 (Connection timed out))
14:38:04 Quit FOAD ("I'll be back")
14:41:29 Join FOAD [0] (
14:51:23 Join funman [0] (n=fun@rockbox/developer/funman)
14:51:26 Join n1s [0] (n=n1s@rockbox/developer/n1s)
14:57:29 Quit Grahack ("Leaving.")
15:00:16 Join blablabla [0] (
15:01:47blablablaNobody here?
15:02:02Bagder_just you and 136 bots
15:02:27 Quit Zambezi (Read error: 110 (Connection timed out))
15:03:59CIA-5New commit by teru (r23631): jpeg/png: unify code to display image to draw_image(_rect).
15:14:37 Quit DerPapst ("Leaving.")
15:15:23 Quit blablabla (Remote closed the connection)
15:15:24***Saving seen data "./dancer.seen"
15:15:40 Join blablabla [0] (
15:17:12 Quit blablabla (Remote closed the connection)
15:17:20 Join blablabla [0] (
15:17:44 Quit n1s (Read error: 110 (Connection timed out))
15:21:23 Quit blablabla (Client Quit)
15:21:25 Join blablabla [0] (
15:24:08 Quit funman ("free(random());")
15:24:31 Join funman [0] (n=fun@rockbox/developer/funman)
15:27:52 Join efyx_ [0] (
15:36:15 Quit FlynDice (Remote closed the connection)
15:38:49 Quit Bagder_ (Read error: 60 (Operation timed out))
15:39:00blablablaWhat are you doing?
15:39:50 Join nex_1 [0] (
15:40:02blablablaWhat are you doing??
15:40:06blablablaWhat are you doing?
15:40:10funmanblablabla: read the topic
15:40:14Mode"#rockbox +o funman " by ChanServ (ChanServ@services.)
15:40:47nex_1hi, how can i try rockbox on my desktop? a long time ago i was able to run rockbox virtual out of the desktop. too long ago.. how can i do this again?
15:41:08funmannex_1: you can run the rockbox simulator
15:41:26nex_1rockbox simulator, ok. where can i download itß
15:41:45 Quit blablabla (Remote closed the connection)
15:42:00 Join blablabla [0] (
15:42:32nex_1oh reallaly?
15:42:52pixelmaor prebuilt simulators from rasher's page (maybe not completely up-to-date)
15:43:41nex_1okay thank you. i try to build it manually
15:44:14 Quit Jaykay (Read error: 110 (Connection timed out))
15:44:58 Quit antil33t ()
15:50:46kugelUnhelpful: I fail to compile gcc from svbn :(
15:52:02kugelI mean, it in fact compiled, but multilib seems to be messed up (unknown option -mcpu=arm7tdmi)
15:52:44nex_1how many uarts does an ipod nano 1g have?
15:53:34kugelhm, it seems gnu-as seems to complain, not gcc
15:53:48 Quit blablabla (Read error: 54 (Connection reset by peer))
15:54:01 Join blablabla [0] (
15:55:35Mode"#rockbox -o funman " by funman (n=fun@rockbox/developer/funman)
15:56:15 Quit blablabla (Read error: 104 (Connection reset by peer))
15:56:26 Join blablabla [0] (
15:57:10 Quit blablabla (Read error: 104 (Connection reset by peer))
15:57:22 Join blablabla [0] (
15:58:07 Quit blablabla (Read error: 104 (Connection reset by peer))
15:58:19 Join blablabla [0] (
15:58:42kugelinteresting, having gnu-as and gcc in different bin/ dirs breaks things
15:59:24 Join n1s [0] (n=n1s@rockbox/developer/n1s)
15:59:34nex_1hm.. would be able to put an ipod nano in an ipod mini box?
15:59:56nex_1i have no measured data, but it looks like it would be able, or?
16:00:07 Quit blablabla (Read error: 104 (Connection reset by peer))
16:00:57 Join blablabla [0] (
16:01:28nex_1ok, i think the display makes no problems, but the clickwheel is to little, and i dont think the ipod mini clickwheel is compatible
16:03:36 Quit blablabla (Read error: 54 (Connection reset by peer))
16:03:47 Quit liar (Read error: 60 (Operation timed out))
16:04:43 Join Zambezi [0] (i=Zulu@
16:05:00funmannex_1: if it's not related to rockbox it's better to discuss it in #rockbox-community
16:05:16 Join Horscht [0] (n=Horscht2@xbmc/user/horscht)
16:06:42 Join Llorean [0] (
16:09:30 Join antil33t [0] (
16:09:42 Quit Zorda (Read error: 110 (Connection timed out))
16:09:49 Quit einhirn (Read error: 104 (Connection reset by peer))
16:10:51kugelaaargh, stupid fuze
16:11:10kugelfunman: compiling with eabi breaks the ams sd driver
16:12:01 Quit Horschti (Read error: 60 (Operation timed out))
16:15:15 Quit gevaerts (Nick collision from services.)
16:15:26 Join gevaerts [0] (n=fg@rockbox/developer/gevaerts)
16:16:57 Join stoffel [0] (
16:26:00 Join liar [0] (n=liar@
16:26:39 Quit n1s (Read error: 110 (Connection timed out))
16:29:46funmanit breaks a lot of things it seems
16:31:48kugelgetting MCI_DATA_CRC_FAIL it seems
16:32:13funmani don't see asm() in the file
16:32:28funmanare you compiling with -O somethign?
16:34:33kugelwhatever rockbox is compiled with
16:34:54kugel-O it seems
16:35:13funmantry with -O0 perhaps to see if optimization removes/reorder something needed
16:35:53kugel-O0 doesn't even compile
16:36:09funmanhow come?
16:36:23 Join blablabla [0] (
16:36:24 Quit blablabla (Read error: 104 (Connection reset by peer))
16:36:36 Join blablabla [0] (
16:37:09kugelfirmware/target/arm/system-arm.h:253: error: impossible constraint in ‘asm’
16:37:11 Quit blablabla (Read error: 104 (Connection reset by peer))
16:37:20 Join n1s [0] (n=n1s@rockbox/developer/n1s)
16:39:03kugelI'm not too familiar with inline asm syntax, do you see something fishy?
16:39:29funmani don't know better than you :/
16:40:28 Join blablabla [0] (
16:40:33funmanperhaps there's something in info gcc C\ Extensions Constraints
16:43:10 Quit Lss (Read error: 54 (Connection reset by peer))
16:43:33 Join Lss [0] (
16:43:53 Join MethoS- [0] (n=clemens@
16:45:09 Quit nex_1 ("cu")
16:46:12 Quit flydutch ("/* empty */")
16:48:57kugelfunman: "i" must be "r" it seems
16:49:26 Quit robin0800 (Read error: 60 (Operation timed out))
16:50:01kugeldebug_menu.c doesn't compile to
16:50:05 Nick fxb__ is now known as fxb (
16:50:09kugelstrange things happen there
16:52:27kugelfunman: -O0 indeed works!
16:52:38 Join robin0800 [0] (n=quassel@
16:52:55kugelthat means I need to dig into the disassembly to see what's being optimized away :S
16:53:19funmanor try -O{s,1,2,3} :P
16:53:36kugel-O2 doesn't work as well
16:53:55kugel-O0 is a *huge* binsize hit, btw
16:54:58 Quit blablabla (Read error: 104 (Connection reset by peer))
16:57:22kugelas a side note: the clip playback crash happens on -O0 too
16:57:44 Nick nawkzZzz is now known as nawkz (
17:01:46kugelfunman: are you interested in looking at the disassemblies as well?
17:02:07 Join stoffel_ [0] (n=quassel@
17:02:12 Join blablabla [0] (
17:02:39kugelI'm curious why this is exposed with eabi
17:03:04funmansorry no
17:03:12 Quit blablabla (Read error: 104 (Connection reset by peer))
17:03:33kugelthere's no mci_delay() in -O1 :/
17:04:00funmanhum it has no side effects
17:04:06 Join Zorda [0] (
17:04:09funmanwhat if you mark i as volatile ?
17:04:19 Join darkham [0] (
17:04:38 Join MaadMan [0] (
17:07:13n1skugel: did you look at my patch in fs#10616?
17:07:23kugelfunman: that fixes problems indeed
17:07:47kugeln1s: yes
17:08:24kugelthe plugin.c hunk shouldn't be needed. clear_display() also does stop_scroll()
17:09:04kugelfor the radio.c hunk, as I said, I would be happier if scroll_stop() could be used. although I vaguely remember to have radio.c fixed already
17:09:17kugelmaybe only for exiting
17:09:53n1skugel: yeah this happens when calling the context menu in the radio screen, exit is fine, i
17:09:59n1s'll try that out
17:10:26kugeln1s: scroll_stop() is called at the end, maybe you can do it in the same way
17:10:40pixelman1s: did you also look at the USB screen?
17:11:21kugelfunman: maybe I should commit my semi-but-better-than-nothing udelay() to get around those busy waits
17:12:11 Join ipod2g [0] (
17:12:21funmanhow is it different from busy loops?
17:12:41n1spixelma: no, will loom once i've this down
17:12:41n1slook, even
17:13:15 Quit stoffel (Read error: 110 (Connection timed out))
17:13:40n1skugel: in plugin.c clear_display() is called before starting the plugin, my change was to prevent scrolling lines that appeard after exiting the plugin, so should clear_display() be called after exiting plugins too?
17:13:59kugelfunman: should the delay halved when I insert asm volatile ("nop\n") into the while loop?
17:14:32 Quit robin0800 (Read error: 131 (Connection reset by peer))
17:14:47CIA-5New commit by teru (r23632): jpeg/png: change file list handling a bit. ...
17:14:59kugelit does int i = 0xfff; while(i−−) now
17:15:06ipod2ghey #rockbox, i've just updated to the daily build of the nano2g which is r23630-091115 and i get frequent channel-swapping. my last build i used was r23367-091027 and i havent got a single issue about the channel-swapping. what gives?
17:15:28***Saving seen data "./dancer.seen"
17:16:05funmanwhat's channel swapping ?
17:16:19 Join kugel_ [0] (
17:16:34 Quit kugel (Nick collision from services.)
17:16:37kugel_doesn't an additional nop mean the effective delay is (approx) doubled?
17:16:39 Nick kugel_ is now known as kugel (
17:17:04funmannot really, you need to read the assemblty
17:17:12ipod2gfunman: left channel goes to the right and vice versa
17:18:43kugelmci_delay() is very strange on -O0
17:20:17n1sipod2g: a bug that has been intruduced since your last build then probably
17:21:36ipod2gyeah i've been encountering those on recent builds but not as frequently as this one thou
17:21:37pixelmaI thought that channel-swapping existed for the 2ng gen Nano already
17:22:41pixelma(i.e. hasn't been fixed yet and I'm just wondering why you said that it didn't happen with an older build), but I don't have a Nano
17:23:34ipod2gnot as frequently as the older builds
17:23:34n1spixelma: iirc it was fixed at one point and appears to have reappeared
17:24:17n1sthat is a bug that has affected for several targets, btw
17:24:51pixelmaI know the first gen Nanos had the same problem ages ago
17:25:34 Join robin0800 [0] (
17:27:12n1skugel: is it better to do lcd_clear_display() after exiting plugins than explicit lcd_stop_scroll() ?
17:28:08kugelnot really, but it wouldn't hurt
17:28:29n1sok, i'll do that instead then
17:28:41kugelI just thought it was done already (but it is only via send_event(GUI_EVENT_REFRESH, NULL) which only does something when sbs or custom ui vp are active)
17:29:42ipod2gso it is really a bug in almost all targets?
17:31:23kugel+300k due to -O0 on the fuze :P
17:31:42 Join Tomis [0] (n=Tomis@
17:32:44 Join Jaykay [0] (
17:33:00Bob_Ckugel: sounds like a step in the wrong direction :)
17:33:43kugelBob_C: -O0 at least produces something working :S
17:34:47Bob_Cwhat's a quick way to look at the asm output?
17:34:50 Quit Llorean ("Leaving.")
17:35:13funmangcc -S
17:35:51 Quit teru ("Quit")
17:36:04n1sipod2g: no, it is a bug that has affected several targets, the fix is usually specific to that target or codec driver though
17:36:20kugelthe fuze works now
17:36:27kugelI should probably commit the fixes
17:36:35kugel(no matter of eabi I mean)
17:37:00n1skugel: scroll_stop works fine for the radio screen
17:38:01*n1s has no idea about the wps -> usb problem though, iiuc wps should stop scrolling before usb already
17:38:24 Quit pamaury (Read error: 113 (No route to host))
17:39:22n1sugh, wps.c is handling events in two places
17:39:30n1sand one of them seems weird
17:39:31pixelmain the USB screen you also get scrolling lines when you enter it from the menu or file browser and there were some scrolling lines
17:40:38n1shmm, seems like we should set some standard for this, should a screen stop scrollign on exit or on entry?
17:41:03kugelwell, I told tomers to use scroll_stop() if possible, but that doesn't work to cleanup list scrolling from within the usb screen
17:41:21kugeln1s: on exit rather
17:41:43n1skugel: i agree with that, so the lists should stop scrolling on exit
17:42:13 Join Grahack [0] (
17:42:17 Quit ipod2g ("CGI:IRC (EOF)")
17:42:50pixelmakugel: meant to ask you when the WPS is actually parsed - on load (that would mean during boot if you don't chose another theme/WPS) or when entering?
17:43:21n1sI may look at that later, not now though
17:43:38kugelpixelma: the former
17:44:21pixelmaduring work on a WPS in a simulator it looked like the latter (because only when starting playback I got error messages when parsing failed)
17:45:27CIA-5New commit by nls (r23633): Fix scrolling lines that keep scrolling after exiting plugins and scrolling lines from the fm screen that keep scrolling in the radio context menu, ...
17:47:52pixelmakugel: and should I report the album art on screens with different pixel format issue - I think someone else could explain the reasons better though...
17:49:43 Join dfkt_ [0] (n=dfkt@unaffiliated/dfkt)
17:50:09 Join stoffel [0] (
17:51:33 Join robin0800_ [0] (
17:52:31 Quit dfkt (Nick collision from services.)
17:52:31kugelpixelma: you can report it, but I don't think we ever officially supported that. I just hoped it would work, maybe it should be deactivated again
17:52:34 Nick dfkt_ is now known as dfkt (n=dfkt@unaffiliated/dfkt)
17:53:33 Quit stoffel_ (Read error: 145 (Connection timed out))
17:55:17 Quit robin0800 (Read error: 60 (Operation timed out))
18:00:45 Join bluebrother [0] (
18:02:42 Quit bluebroth3r (Read error: 60 (Operation timed out))
18:04:08 Quit funman ("free(random());")
18:07:58 Join panni_ [0] (
18:13:19kkurbjunhmm, jpeg zooming does not seem to work anymore
18:13:23 Join liar_ [0] (n=liar@
18:13:24 Join mabeco49 [0] (n=mabeco49@
18:13:51 Quit darkham (Read error: 110 (Connection timed out))
18:17:13kkurbjunkugel: I'm getting a segfault on the H300 simulator just starting with a fresh cfg and then going into the statusbar menu and selecting custom for the statusbar
18:17:24kkurbjunfresh being an empty cfg
18:18:36kugelI think that's because loaded_ok isn't being checked anymore
18:20:57kkurbjunit may have to do with the multiscreen stuff, it doesn't happen on the gigabeat f
18:22:21kkurbjunthat's another thing I wanted to ask about: right now it doesn't look like there is an option for the custom statusbar on remote screens, but the built-in statusbar is being factored out, what is the plan for remotes
18:23:20kkurbjunactaully, I guess there is a menu item, but how does it work is it an rsbs?
18:23:28CIA-5New commit by kugel (r23634): Fix a few possible problems discovered in -O0 / eabi experiments. ...
18:24:27 Quit feisar- (Remote closed the connection)
18:24:39kugelkkurbjun: yea, .rsbs
18:25:04kugelUnhelpful: sansa ams work now with eabi :>
18:25:08kkurbjunhmm, I'll have to try that - I can set the ui viewport to font 0 or 1 right?
18:25:24kugelyou don't need an sbs for that though :)
18:25:33kugelthe ui viewport also has the font param
18:25:55kkurbjunwell, I want the remote to use font 0 and the main screen to use the user selected font
18:26:03kkurbjunoh yeah
18:27:01 Join feisar- [0] (
18:27:45kkurbjunas a heads up it looks like the H300 sim is failing in skin_display on line 505 when I set the statusbar to custom
18:27:58kkurbjunI'm not sure what should be going on in there though
18:29:10kkurbjunare you going to commit that display fix for the graphical glitches when going into the wps?
18:29:13mabeco49hi, everybory. i'm a student and am making a job for the class of operating system, in which we must choose a os and give a little information about it.
18:29:37kkurbjunI found another problem when setting the ui viewport - it seems to cause all kinds of glitches when leaving plugins
18:29:45 Quit liar (Connection timed out)
18:29:59 Quit nawkz (Remote closed the connection)
18:30:26kkurbjunwell, the first menu you go into is not using the ui viewport and then when you go into another it starts using the ui viewport, but it leaves a bunch of artifacts
18:30:46mabeco49i need to kwow what are the scheduler, memory manager, i/o manager and files manager. already downloaded the source but couldn't find qhat i needed. could anyone help me?
18:31:03 Join fdinel [0] (
18:31:54kugelwth, what is that binsize hit ?
18:32:19kugelkkurbjun: blame JdGordon for that
18:32:24kugelI told him he introduced bugs
18:32:45domonokymabeco49: you will find the sheduler in firmware/kernel.c, there is probably no memory manager in rockbox (no mmu on most targets)..
18:33:24mabeco49domonoky, thanks.
18:34:25mabeco49domonoky: about the ui, do i find information on the sources either?
18:34:47 Join pamaury [0] (
18:35:06domonokymabeco49: sure, everything is in the source :-) But if you have specific questions about it, feel free to ask here ..
18:36:27kkurbjunkugel, the remote custom statusbar is doing something strange
18:36:46kkurbjunI load an rsbs that just has this line: "%Vi|0|0|79|16|0|-|-|"
18:36:49*kugel wonders when all those bugs came in, it all worked fine on the initial commit
18:37:05gevaertsmabeco49: might be helpful. Parts of it are probably outdated though
18:37:19kugelkkurbjun: isn't it a mono remote? mono doesn't have the color parameters
18:37:26kkurbjunand it starts showing the menu for a bit, but when I get to the top-level menu the remote stops showing the menu
18:37:29mabeco49domonoky: oh, thanks man. i'll go check now!
18:37:41kkurbjunyeah, mono, I'll remove those
18:37:45pixelmakugel: did you really test all those things before? Nothing is bug free...
18:38:02kugelI did test rsbs
18:38:06kkurbjunkugel: I removed that and the behavior is the same
18:38:32kkurbjunit shows the menu with scrolling lines and all till I hit the top level and then it goes blank
18:38:59 Quit Jaykay (Read error: 60 (Operation timed out))
18:39:20kkurbjunif I go back into a sub-level menu it still does not show anything
18:39:21 Quit pamaury (Read error: 113 (No route to host))
18:39:37mabeco49gevaerts: thanks, man!
18:39:43 Join pamaury_ [0] (
18:41:13kkurbjunThis is the line I am testing with now: "%Vi|0|0|-|-|0|"
18:41:28 Nick liar_ is now known as liar (n=liar@
18:41:50 Quit feisar- (Remote closed the connection)
18:42:25mc2739kugel: is there a reason you used static volatile int lcd_busy instead of static volatile bool lcd_busy ?
18:43:52kkurbjunkugel: so I was testing that with the MR500 sim, if I take that same rsbs into the H300 sim and loads it it segfaults
18:44:03 Quit robin0800_ (Remote closed the connection)
18:44:15CIA-5New commit by kugel (r23635): Fix crash when selecting statusbar: custom in the menus without having a valid sbs loaded.
18:44:35kugelmc2739: not really, I seem to have forgotten to change it back
18:44:46pamaury_gevaerts: ping
18:44:47kugelit really doesn't matter though, the resulting code is the same
18:45:15gevaertspamaury_: gnip
18:45:37pixelmamc2739: thanks for looking over my manual patch (the pictureflow one). About the playback comment for low mem targets - it is possible to start playback from within the plugin but you change into the WPS then and leave the plugin automatically because both doesn't work). Is it possible to express this somehow?
18:45:47*pamaury_ doesn't understand why xchat switched to pamaury_ !
18:45:59pamaury_gevaerts: have you ever heard of Microsoft Os Descriptors ?
18:48:50 Quit bzed (
18:48:50 Quit fdinel (
18:48:50 Quit Lss (
18:48:50 Quit Zambezi (
18:48:50 Quit bertrik (
18:48:50 Quit fyrestorm (
18:48:50 Quit shai (
18:48:50 Quit goffa (
18:48:50 Quit AaronM (
18:48:50 Quit BlakeJohnson86 (
18:48:50 Quit linuxguy3 (
18:48:50 Quit Bob_C (
18:48:50 Quit yosafbridge (
18:48:50 Quit togetic (
18:48:50 Quit freqmod_qu (
18:48:50 Quit tmzt (
18:48:50 Quit shodanX (
18:48:50 Quit ej0rge (
18:48:50 Quit kkurbjun (
18:48:50 Quit blithe (
18:48:50 Quit Tristan (
18:48:50 Quit jordan`` (
18:48:50 Quit MethoS- (
18:48:50 Quit AndyI (
18:48:50 Quit ThomasAH (
18:48:50 Quit rjg (
18:48:50 Quit fxb (
18:48:50 Quit fish_ (
18:48:50 Quit markun (
18:48:50 Quit Overand (
18:48:50 Quit hatseflats (
18:48:50 Quit knittl (
18:48:50 Quit Grahack (
18:48:50 Quit FOAD (
18:48:50 Quit Rob2223 (
18:48:50 Quit HellDragon (
18:48:50 Quit pixelma (
18:48:50 Quit alexbobp (
18:48:50 Quit tha (
18:48:50 Quit panni_ (
18:48:50 Quit antil33t (
18:48:50 Quit Omlet (
18:48:50 Quit thegeek (
18:48:50 Quit mc2739 (
18:48:50 Quit GodEater (
18:48:50 Quit krazykit (
18:48:50 Quit droidcore (
18:48:50 Quit Tuplanolla (
18:48:50 Quit HBK (
18:48:50 Quit advcomp2019 (
18:48:50 Quit ender` (
18:48:50 Quit Sajber^ (
18:48:50 Quit rvvs89 (
18:48:50 Quit dfkt (
18:48:50 Quit Tomis (
18:48:50 Quit n1s (
18:48:50 Quit dmb (
18:48:50 Quit gtkspert_ (
18:48:53 Quit grndslm (
18:48:53 Quit crwl (
18:48:53 Quit B4gder (
18:48:53 Quit kadoban_ (
18:48:53 Quit evilnick (
18:48:53 Quit Unhelpful (
18:48:53 Quit jvd (
18:48:53 Quit lyngaas (
18:48:53 Quit Kopfgeldjaeger (
18:48:53 Quit n17ikh (
18:48:53 Quit pamaury_ (
18:48:53 Quit liar (
18:48:53 Quit bmbl (
18:48:53 Quit elcan (
18:48:53 Quit JdGordon (
18:48:53 Quit jfc (
18:48:53 Quit TheSeven (
18:48:53 Quit amiconn (
18:48:53 Quit Kohlrabi (
18:48:53 Quit scorche (
18:48:53 Quit sinthetek (
18:48:53 Quit ps-auxw (
18:48:53 Quit Zorda (
18:48:53 Quit domonoky (
18:48:53 Quit YPSY (
18:48:53 Quit Zarggg_ (
18:48:53 Quit seani (
18:48:53 Quit Res1 (
18:48:53 Quit Dhraakellian (
18:48:53 Quit SUSaiyan (
18:48:53 Quit tchan (
18:48:53 Quit scorche|sh (
18:48:53 Quit MaadMan (
18:48:53 Quit gevaerts (
18:48:53 Quit Horscht (
18:48:53 Quit rphillips (
18:48:53 Quit AlexP (
18:48:53 Quit at0m (
18:48:53 Quit niekie (
18:48:53 Quit kugel (
18:48:53 Quit efyx_ (
18:48:53 Quit Rondom (
18:48:53 Quit Topy (
18:48:53 Quit linuxstb (
18:48:53 Quit killan (
18:48:53 Quit Galois (
18:48:53 Quit J-23 (
18:48:53 Quit jasio (
18:48:53 Quit rasher (
18:48:53 Quit aevin (
18:48:53 Quit CIA-5 (
18:48:53 Quit Hadaka (
18:48:53 Quit mabeco49 (
18:48:53 Quit bluebrother (
18:48:53 Quit stoffel (
18:48:53 Quit Xerion (
18:48:53 Quit hillshum (
18:48:54 Quit topik (
18:48:54 Quit crashd (
18:48:54 Quit dionoea (
18:48:54 Quit chaos (
18:48:54 Quit jon-kha (
18:48:54 Quit Torne (
18:48:54 Quit Slasheri (
18:48:54 Quit preglow (
18:48:54 Quit maraz (
18:48:54 Quit zu (
18:48:54 Quit ChanServ (
18:59:38NJoinCIA-5 [0] (n=CIA@
18:59:38NJoinHadaka [0] (
18:59:54NJoinrasher [50] (n=rasher@rockbox/developer/rasher)
18:59:54NJoinaevin [0] (
19:02:18 Quit CIA-5 (Killed by (Nick collision))
19:02:18 Join AlexP [0] (
19:02:18 Join Horscht [0] (n=Horscht2@
19:02:18NJoinmabeco49 [0] (n=mabeco49@
19:02:18 Join bluebrother [0] (n=dom@rockbox/developer/bluebrother)
19:02:18NJoinstoffel [0] (
19:02:18NJoinXerion [0] (i=xerion@
19:02:18NJoinhillshum [0] (n=hillshum@
19:02:18NJointopik [0] (i=awesome@
19:02:18NJoincrashd [0] (i=foobar@
19:02:18 Join dionoea [0] (n=dionoea@videolan/developer/dionoea)
19:02:18NJoinchaos [0] (n=chaos@gentoo/user/ch4os)
19:02:18NJoinjon-kha [0] (
19:02:18 Join Torne [0] (i=torne@rockbox/developer/Torne)
19:02:18NJoinpreglow [0] (i=thomj@
19:02:18NJoinzu [0] (n=zu@
19:02:18NJoinmaraz [0] (
19:02:18NJoinSlasheri [0] (i=miipekk@rockbox/developer/Slasheri)
19:02:40NJoinChanServ [0] (ChanServ@services.)
19:02:40NJoinrjg [0] (
19:02:40NJoinknittl [0] (n=knittl@unaffiliated/knittl)
19:02:40NJoinfxb [0] (
19:02:40NJoinfish_ [0] (
19:02:40NJoinOverand [0] (
19:02:40NJoinmarkun [50] (n=markun@rockbox/developer/markun)
19:02:40NJoinkkurbjun [0] (
19:02:40NJoinblithe [0] (
19:02:40NJoinjordan`` [0] (n=jordan@
19:02:40NJoinTristan [0] (
19:02:40NJoinej0rge [0] (
19:02:40NJoinSajber^ [0] (
19:02:40NJoinkrazykit [0] (n=kkit@
19:02:40NJoinevilnick [0] (
19:02:40NJoinTuplanolla [0] (n=jani@unaffiliated/tuplanolla)
19:02:40NJoindroidcore [0] (
19:02:40 Join Unhelpful [0] (n=quassel@rockbox/developer/Unhelpful)
19:02:40NJoinHBK [0] (
19:02:40NJoinscorche [50] (n=scorche@rockbox/administrator/scorche)
19:02:40 Join jvd [0] (n=syscrash@poipu/developer/syscrash)
19:02:40NJoinlyngaas [0] (
19:02:40NJoinKopfgeldjaeger [0] (
19:02:40 Join rvvs89 [0] (n=ivo@pdpc/supporter/base/rvvs89)
19:02:40NJoinn17ikh [0] (
19:02:40NJoinsinthetek [0] (
19:02:40NJoinadvcomp2019 [0] (n=advcomp2@unaffiliated/advcomp2019)
19:02:40 Join tchan [0] (n=tchan@lunar-linux/developer/tchan)
19:02:40NJoinSUSaiyan [0] (
19:02:40NJoinscorche|sh [50] (n=scorche@rockbox/administrator/scorche)
19:02:40NJoinbzed [0] (
19:02:40NJoinKohlrabi [0] (
19:02:40NJoinThomasAH [0] (
19:02:40NJointha [0] (
19:02:40NJoinshodanX [0] (
19:02:40NJoinkadoban_ [0] (
19:02:40NJoinDhraakellian [0] (
19:02:40NJoinRes1 [0] (
19:02:40 Join GodEater [0] (n=bibble@rockbox/staff/GodEater)
19:02:40 Join B4gder [241] (n=daniel@rockbox/developer/bagder)
19:02:40NJointmzt [0] (
19:02:40NJoinfreqmod_qu [0] (
19:02:40NJoinalexbobp [0] (n=alex@
19:02:40NJoinseani [0] (n=seani@
19:02:40NJoincrwl [0] (
19:02:40NJoinhatseflats [0] (n=hatsefla@
19:02:40NJoingrndslm [0] (
19:02:40NJointogetic [0] (n=togetic@unaffiliated/ibuffy)
19:02:40Mode"#rockbox +o ChanServ " by
19:02:40NJoinmc2739 [0] (n=mc2739@rockbox/developer/mc2739)
19:02:40NJoingtkspert_ [0] (
19:02:40NJoinZarggg_ [0] (
19:02:40NJoinyosafbridge [0] (
19:02:40NJoinBob_C [0] (
19:02:40NJoinlinuxguy3 [0] (
19:02:40NJointhegeek [0] (
19:02:40NJoinYPSY [0] (
19:02:40NJoinamiconn [0] (i=quassel@rockbox/developer/amiconn)
19:02:40NJoinpixelma [0] (i=quassel@rockbox/staff/pixelma)
19:02:40NJoinTheSeven [0] (n=theseven@rockbox/developer/TheSeven)
19:02:40NJoindmb [0] (n=Dmb@unaffiliated/dmb)
19:02:40 Join HellDragon [0] (i=jd@Wikipedia/HellDragon)
19:02:40NJoinAndyI [0] (n=pasha_in@
19:02:40NJoinBlakeJohnson86 [0] (
19:02:40NJoinAaronM [0] (
19:02:40NJoingoffa [0] (n=goffa@
19:02:40NJoinRob2223 [0] (
19:02:40NJoinJdGordon [0] (n=jonno@rockbox/developer/JdGordon)
19:02:40NJoinshai [0] (
19:02:40NJoinelcan [0] (
19:02:40NJoinbmbl [0] (n=Miranda@unaffiliated/bmbl)
19:02:40NJoinender` [0] (
19:02:40NJoinfyrestorm [0] (
19:02:40NJoinOmlet [0] (
19:02:40NJoinbertrik [0] (
19:02:40NJoindomonoky [0] (n=Domonoky@rockbox/developer/domonoky)
19:02:40NJoinps-auxw [0] (
19:02:40NJoinFOAD [0] (
19:02:40NJoinZambezi [0] (i=Zulu@
19:02:40NJoinantil33t [0] (
19:02:40NJoinn1s [0] (n=n1s@rockbox/developer/n1s)
19:02:40NJoinLss [0] (
19:02:40NJoinMethoS- [0] (n=clemens@
19:02:40NJoinZorda [0] (
19:02:40NJoinTomis [0] (n=Tomis@
19:02:40NJoinGrahack [0] (
19:02:40NJoindfkt [0] (n=dfkt@unaffiliated/dfkt)
19:02:40NJoinpanni_ [0] (
19:02:40NJoinliar [0] (n=liar@
19:02:40NJoinfdinel [0] (
19:02:40 Join pamaury [0] (
19:02:40 Join Maad_Man [0] (
19:02:40 Join Guest78705 [0] (n=fg@rockbox/developer/gevaerts)
19:02:40 Join kugel [0] (n=kugel@rockbox/developer/kugel)
19:02:40NJoinrphillips [0] (
19:02:40 Join phanboy4 [0] (
19:02:41 Quit Hadaka (Connection reset by peer)
19:02:49 Nick Guest78705 is now known as gevaerts (n=fg@rockbox/developer/gevaerts)
19:02:49 Join CIA-80 [0] (n=CIA@
19:02:51gevaertsand no, I don't really like fallbacks to drivers, but if that's the best way to do it, I don't see many other options
19:03:11 Nick AlexP is now known as Guest54595 (
19:03:15 Join Hadaka [0] (
19:03:15NJoinat0m [0] (
19:03:15NJoinefyx_ [0] (
19:03:15NJoinRondom [0] (
19:03:15NJoinTopy [0] (
19:03:15NJoinlinuxstb [0] (n=linuxstb@rockbox/developer/linuxstb)
19:03:15NJoinkillan [0] (
19:03:15NJoinGalois [0] (
19:03:15NJoinJ-23 [0] (
19:03:15NJoinjasio [0] (
19:03:18pamauryThere is a request call GET_MS_DESCRIPTOR, request_type=0xC0
19:03:23*pamaury checking usb doc...
19:05:20CIA-80New commit by kugel (r23636): Consolidate some #ifdef code.
19:05:25pixelmaand seeing a mixture of lists and WPS like this is just bah (getting worse with parts of pictureflow underneath)
19:05:25pamauryIt's a vendor-specific, device request
19:05:46pamauryWhich means the request is forwared to the driver if I'm correct.
19:06:27gevaertsif it's device, usb_core normally handles it
19:06:34kugelpixelma: is that a wps with peakmeter?
19:06:48pamauryDoesn't usb_core forwards to driver if the request is vendor-specific ?
19:07:08kugeldrawing the wps is superfast on my fuze
19:07:26gevaertsit forwards if the request is for an interface or an endpoint
19:07:44pamauryYes you're right, I just checked
19:07:59pamauryThis behaviour can be changed
19:08:01pamauryno ?
19:08:13kugelpixelma: does this patch make it any better ?
19:08:14gevaertsanything can be changed
19:08:24pamauryIs there any reason not to do it for device request ?
19:08:33gevaertswhich driver should get it?
19:08:58pixelmamc2739: ok, I was wrong. I thought you could actually select the track it should play but that doesn't seem to work (or maybe it is broken in the mean time), you can only go to the WPS. And then you are right with the playlist position
19:09:08gevaertsDevice requests are normally things like SET_ADDRESS or GET_DESCRIPTOR, i.e. not function dependent at all
19:09:14*gevaerts has to go for a bit
19:09:17pamauryah.... that's a clever remark
19:09:28pixelmakugel: I'll try
19:09:28kugelpixelma: that was never supposed to work, only in random_folder_advance
19:10:02*pamaury hates Microsoft descriptors just two hours after discovering them
19:10:30 Quit Guest54595 (Client Quit)
19:10:50NJoinAlexP [0] (n=alex@rockbox/staff/AlexP)
19:11:23pamaurygevaerts: wait, in their stupidity, they had a clever idea: it's a device request but the wValue contains the interface number !
19:12:24pixelmamc2739: ok, I think that can all be addressed in a later patch
19:15:30***Saving seen data "./dancer.seen"
19:17:35NJoinjfc [0] (
19:19:24kkurbjunkugel: the theme is here:
19:26:35kkurbjunkugel, strange - I am not able to reproduce the remote screen display disappearing now after re-loading the theme
19:27:12kkurbjunIf it comes up again I'll save my cfg file
19:27:43kkurbjunIt is really cool that you can use a different ui font between the main and remote screen
19:29:26mc2739pixelma: if you commit FS #10712, I noticed a typo after uploading my latest patch - on line 9, "-play" should be just "play"
19:30:17 Quit Rob2223 ()
19:31:09kugelkkurbjun: yea, but only if you don't need chars that are not in iso8859-1
19:33:36 Join GeekShadow [0] (n=Antoine@reactos/tester/GeekShadow)
19:37:23 Join Rob2222 [0] (
19:46:31pixelmakugel: worse with that patch (although I would still have to try without the patch and the same revision), Rockbox freezes in this half loaded state and if I interrupt that, I get the error message: I09: CPUAdrEr at 09010F14 - enabled "Catch mem accesses" in the debug menu gives me a slightly different error message: I0C: UserBrk at 09019016
19:46:34gevaertspamaury: ok, so we can look for 0xc0 in core, and then dispatch to the right driver?
19:47:14pamauryYes but there is a problem
19:48:06pamaury(first, 0xC0 is only the request type, the request code can be set to any value which is report in the string descriptor, ugly !)
19:48:38pamauryFirst of all, the GET_MS_DESCRIPTOR can an interface value but it's not mandatory
19:48:43pamaury*can take
19:50:50pamauryBut there is something good: the get extended compat ids (one of the two sub request to implement) returns a list of ids which can be associated to interfaces. So if I'm correct, we could implement some logic in usb_core which would then dispatch to drivers and gather aggregate everything.
19:51:14kugelpixelma: sounds very strange
19:51:41kugelwhat revisison are you testing on?
19:51:42pamauryThen there is a get extended properties which is normaly purely interface related and can be routed to a driver
19:51:45CtcpVersion from freenode-connect!freenode@freenode/bot/connect
19:52:17pamauryBUT I checked libmtp code and this is not really implemented properly. On the other hand, the code is robust enough to work with only the first part
19:52:24pixelmakugel: 23636
19:52:51pixelmabacklight mod build (but that shouldn't have an influence)
19:53:06gevaertsHow likely is it that we'll ever want other drivers that need this GET_MS_DESCRIPTOR? If it's not likely at all, just add a field to struct usb_class_driver, leave it NULL for all drivers except MTP, and just dispatch the control handling to the first driver that implements it
19:53:25*kugel doesn't see how this patch causes such problems
19:54:54kugelwhat the heck, I can't close tasks anymore?
19:54:54pamauryYes I agree. Furthermore, Microsoft OS Descriptors define only a few kinds of descriptors: MTP, PTP, RNDIS,XUSB20 and BLUTUTH
19:55:05pamaurySo forwarding is probably simpler
19:56:08 Quit stoffel (Read error: 145 (Connection timed out))
19:56:24pixelmakugel: seems to happen without that patch and the same revision too :\ so something had been broken between r 23598 and 23636
19:56:27pamauryAnd this would avoid many problems if those descriptors are not implemented on the OS side (most will probably expect only one interface)
19:58:14*gevaerts doesn't understand all details yet
19:58:20pamaurygevaerts: perhaps you could have a look at it (, read this spec and check that I'm not saying incorrect things.
19:59:04pamauryI don't have a full understanding of it yet but those descriptors really seem overkill to me
20:02:15pamauryAnd there really are necessary because Windows XP need them to correctly detect a MTP device. Windows Vista and Windows Seven (theorically) can only detect them based on the USB PTP class but I don't want to test that. I don't know how MacOS works but the only time I tested it, my device was reported as a PTP device so those descriptors are also probably needed
20:03:09 Join Tomis2 [0] (n=Tomis@
20:03:48*pamaury has to go otherwise he will die of starvation
20:03:57gevaertsI'll try to have a more detailed look later, but if they are needed to make things work, there's not much else to do
20:04:01*gevaerts has to go too
20:07:52 Join stoffel [0] (
20:11:10 Quit stoffel (Read error: 131 (Connection reset by peer))
20:11:56Dhraakellianjust out of curiosity, does Rockbox support Ogg FLAC in addition to the standard FLAC in its own container?
20:12:28pixelmakugel: your peakmeter commit broke it
20:13:41TorneDhraakellian: yes
20:13:57pixelma r23624 works, 23625 doesn't (the UserBrk address was in wps.c and so I suspected that)
20:14:06pixelmaTorne: really?
20:14:59gevaertsTorne, Dhraakellian: not as far as I understand
20:15:04Tornedoesn't it?
20:15:07Torneogg.c looks like it
20:15:15*gevaerts might be wrong
20:15:23kugelondio, I assume?
20:15:29AlexPI didn't think it did
20:15:41Tornemaybe not then :)
20:15:52Tornesurely we should though
20:15:58AlexPWould be a nice surprise for us all if it did :)
20:16:06 Quit Tomis (Read error: 104 (Connection reset by peer))
20:16:06 Nick Tomis2 is now known as Tomis (n=Tomis@
20:16:18n1sTorne: no, we don't support ogg flac
20:16:41*kugel is surprised how such a relatively undangerous change can cause such problems
20:16:44Tornesorry then, Dhraakellian
20:17:12DhraakellianTorne: no skin off my back. I'm just asking so I know how to answer a reply to a blog comment I made somewhere
20:17:36n1swe've even had bug reports about "ogg files" that don't work that were in fact ogg flac
20:17:59n1sand btw, Ogg FLAC is stupid :)
20:17:59Tornesurely it wouldn't be that difficult
20:18:02kugelpixelma: can I have your config.cfg? it seems to work on the sim
20:18:05Dhraakelliann1s: so I've heard
20:18:15pamauryIt's a strange thing to have flac embedded in ogg
20:18:45pixelmakugel: I somehow doubt that the sim will be telling much
20:19:02 Join mtc [0] (n=mtc@fsf/member/mtc)
20:19:14kugelrockbox.elf + mapfile maybe?
20:21:46Dhraakelliandoes Rockbox do speex in Qgg, or does it have its own container too?
20:22:01kugelUnhelpful: gcc 4.4.3 compiles flawlessly, maybe it's worth digging svn log to find what fixed the compilation problems on 4.4.2?
20:22:18kugelor we wait ~2 month for .3 being released
20:23:17 Join domonoky1 [0] (
20:26:29 Quit mabeco49 ("Saindo")
20:27:46 Quit domonoky (Read error: 60 (Operation timed out))
20:28:37kugelpixelma: ?
20:29:19 Join Omlet05 [0] (i=omlet05@
20:32:18n1sDhraakellian: yeah we do ogg speex afaik
20:34:23pixelmakugel: yes?
20:34:29kugelpixelma: can you give me the rockbox.elf and .map?
20:34:57pixelmayes, how can I send those files to you?
20:36:13 Join dfkt_ [0] (i=dfkt@unaffiliated/dfkt)
20:36:37kugelemail would work
20:39:51pixelmakugel: same address as in the ml?
20:42:10kugelpixelma: showing the wps is fast on the ondio sim too. was that screenshot made on the target?
20:42:12mtcso rockbox supports speex encoding... does it support speex-in-ogg or flac-in-ogg formats?
20:42:36pixelmakugel: yes, and sure it's a sim not an emulator and your computer's CPU is way different from the SH one, and disk access works different too etc. etc ...
20:42:49kugelI know that
20:45:52 Quit Omlet (Success)
20:46:17*kugel remembers that displaying the wps used to take way longer some month ago
20:48:21pixelmamy impression is different
20:48:35kugellet's see if I can read sh assembly :p
20:49:42pixelmait became slower at some point during some UI work and stayed that way (it feels worse but I don't have numbers)
20:50:27Unhelpfulkugel: it might be worth checking. or maybe worth waiting. if we switch i expect we'll be stuck with that version for a few years, so we'd best be sure ;)
20:51:21kugelgetting & compiling gcc from svn is a considerable pain, btw
20:51:41kugelpixelma: same addresses as you mentioned above?
20:52:09Unhelpfulkugel: there are no snapshot tarballs?
20:52:35kugelI didn't look
20:52:47kugelmaybe from trunk, but I wanted the 4.4 branch
20:53:07n1strunk has snapshots made every friday iirc
20:53:40Unhelpfulalso we might want to wait for a 2.20 binutils release, or try going back to 2.19 - as near as i can tell they update the snapshot tarball without (always) changing the filename.
20:53:49kugel2.20 is released
20:53:58kugel4 weeks ago
20:54:38kugel2.19 (.1 even IIRC) didn't work at all
20:54:44n1sseems active branshes have snapshots too, see for example
20:55:04Unhelpfulit didn't? i remember 2.19 snapshot working except for the section offset issue
20:55:29kugelit didn't compile without changes, and half of the codecs didn't work IIRC
20:55:33pixelmakugel: no, I forgot. There's a slight difference: the CPUAdrEr is at 09010F08 and the UserBrk at 0901901A (with "catch mem accesses" > "Zero area (all)" enabled)
20:55:49kugelanyway, we don't need to worry since 2.20 is out since a while
20:56:57kugelpixelma: the first one seems to be in browse_cuesheet. are you using a cuesheet?
20:57:40kugelwps.c is far later
20:58:20kugeln1s: meh, I didn't know that
20:58:30 Quit dfkt (Read error: 110 (Connection timed out))
20:59:41kugelUnhelpful: any idea how that changes in r23634 cause the binsize hit on all arm targets?
20:59:54JdGordonn1s: you pinged yesterday?
21:00:00kugeldid the syntax correction make optimizing impossible somehow?
21:01:42 Join funman [0] (n=fun@rockbox/developer/funman)
21:01:42 Join dfkt [0] (i=dfkt@unaffiliated/dfkt)
21:01:42kugelpixelma: the latter address isn't 4 byte aligned. that might cause a problem, but I really can't see how my change could cause that
21:01:42 Join mikroflops [0] (
21:01:56pixelmakugel: no, cuesheet support is even turned off - and the early USB crash (that was fixed then) was interestingly in cuesheet something too
21:02:43JdGordonthere is a cuesheet check whihc sort of happens even if cueshet is disabled
21:02:57JdGordonthe actual problem there is probaly a null pointer reference
21:03:41n1sJdGordon: it was about my patch for fs#10616 but kugel answered the question, more similar bugs remain though
21:03:43kugelI assume 09010F08 is the instruction that tries to access 0901901A, then things go wild
21:04:08 Join FlynDice [0] (n=FlynDice@
21:04:34pixelmaI think that's what the "Catch mem accesses" does - catching null pointers. Unfortunately I don't remember the details :/
21:05:01JdGordonearly usb is still borken?
21:06:07pixelmano, going to the WPS
21:06:32pixelmais broken now since r23625
21:06:37 Quit GeekShadow ("The cake is a lie !")
21:06:41 Join CaptainKewl [0] (
21:06:55pixelmaon the Ondio at least
21:07:05kugelthe crash is in cue_find_current_track which indeed derefences a pointer without checking for NULL
21:07:33 Join Thundercloud [0] (
21:08:13JdGordonit shouldnt be getting there
21:08:27JdGordoncuesheet_subtrack_changed is NULL-ref protected
21:08:32 Quit phanboy4 (Read error: 104 (Connection reset by peer))
21:08:43kugelah, there we have browse_cuesheet
21:08:53 Join phanboy4 [0] (
21:09:10JdGordonwhich isnt called by the wps
21:09:19 Quit dfkt_ (Nick collision from services.)
21:11:10 Quit FlynDice (Remote closed the connection)
21:13:48kugelpixelma: can I have your config.cfg too?
21:15:13kugeli don't think it's NULL pointer derefence
21:15:27kugelthe fault address seems to be 0901901A
21:15:33***Saving seen data "./dancer.seen"
21:15:35 Join FlynDice [0] (n=FlynDice@
21:17:10kugelwhich is code in play_hop()
21:17:51kugelmaybe it's a race condition between playback and main thread
21:18:09kugelsince my yesterdays change, the audio thread doesn't run between entering and displaying the wps
21:20:38kugel(which may take a while on a slow sh target)
21:23:17JdGordonTIMEOUT_NOBLOCK is causing the audio thread to not start?
21:24:00kugelpixelma: I assume this works around
21:24:59kugelTIMEOUT_NOBLOCK causes action.c to call button_get(false) instead of button_get_w_tmo()
21:25:08pixelmakugel: sure, just tried if it happens with any WPS and it does. What's "funny" is that it's not completely frozen - I can still adjust volume, and it only crashes when I press "Right" (skip), "Left" does nothing and going back to the menu works and then entering the WPS again works correctly then...
21:26:08pixelmaseems to freeze (ID3 data isn't loaded and playback doesn't start) on entering that WPS a first time
21:26:53pixelmaI'll try that patch though
21:29:45pixelmaand the "classic" WPS is a bit broken because it uses pure %pb and the progressbar doesn't show...
21:30:03kugeldidn't JdGordon fix that?
21:30:05 Join obo [0] (
21:30:17 Part obo ("Bye")
21:30:19 Join tomers [0] (
21:31:32kugelpixelma: can you try starting playback without going to the wps immediately (e.g. by use insert in the context menu of a music file)? if you then enter the wps it should show fine
21:32:30kugelI changed to TIMEOUT_NOBLOCK because the peeakmeter code does that also, so I didn't worry about it
21:33:04JdGordondoes anyone want to comment on the in svn? I really want to commit the old bar removal today
21:33:04pixelmayes, that works
21:33:25JdGordonpixelma: yeah, I thought I fixed %pb?
21:33:54kugelJdGordon: btw, I easily spot the problems r23606 caused
21:34:15kugelpixelma: what works? the patch or starting playback without wps ?
21:34:25pixelmawhich revision (am at 23625 since testing )?
21:34:36JdGordongood.. so fix it properly by passing the viewport arround
21:34:41pixelmakugel: starting playback without WPS
21:34:53pixelmatesting your patch now
21:34:56JdGordontomers: hi, did you se my comment for the rtl tag patch?
21:35:00kugelthat proves my assumption
21:35:21kugelthe real problem is why that causes badness, but I don't feel like investigating that
21:35:36JdGordonthats a really silly thing to say
21:35:43JdGordonand leads to shit code
21:36:52pixelmathat patch helps
21:37:27pixelmaI still find changing to the WPS takes too long and looks bah ;)
21:38:00pixelmaI almost thought the patch didn't fix the freeze...
21:39:09JdGordonits probably because the first full redraw is all the way at the end of the main loop... so it takes a noticable amount of time to get there
21:40:12pixelmakugel: can I test your first patch on top of this one now (which was the more important of course)
21:40:13JdGordonon the first loop it even does a partial redraw followed bu a full redraw
21:40:30kugelpixelma: yep, I was about to ask you that anyway :)
21:40:59kugelJdGordon: there's only the (huge) switch in between.
21:41:30kugelthat shouldn't be entered actually, and even if, the individual cases are relatively small
21:41:43kugelbut the skin engine is quite a bummer for sh it seems
21:42:27JdGordonsh doesnt like linked lists or something?
21:43:27pixelmaentering the WPS seemed slow for some time already, it's just now that you see everything non ID3 info drawn over the list that it looks very weird
21:43:46 Quit funman ("free(random());")
21:45:52CIA-80New commit by kugel (r23637): Partly revert r23625 (the TIMEOUT_NOBLOCK change), and add a comment explaining why (or trying to, at least).
21:45:53*JdGordon has the crazy idea that the displayer should go through the skin backwards for rtl skins :D
21:46:29Unhelpfulkugel: that's not just a syntax change, i and r constraints are fundamentally different. replacing an i constraint with an r constraint means an extra instruction to load the value into a register. and since it's code that's inlined...
21:47:22kugelUnhelpful: -O0 exposed errors in that 3 functions
21:47:49Unhelpfulerrors of what sort? did you look at the asm?
21:48:21kugelit's inline assembly, why should I look at the generated code?
21:48:59kugelconstraint exceeded or so, I don't remember
21:49:03 Quit tomers (Connection reset by peer)
21:49:34 Join tomers [0] (
21:50:16Unhelpfuldo you know where the call was that tripped it?
21:50:55Unhelpfulone thing you could do is test for the constancy of mask, and branch to two different asm versions
21:51:32kugelwhat is the difference between i and r?
21:51:54pixelmakugel: the first patch doesn't seem to do much (maybe a tiny tiny bit) but hard to measure (both take between 6 and 7 seconds from pressing "resume" to actual playback. Everything non-ID3 of my WPS shows up quite quickly but drawn over the list, lines which should display ID3 info are filled with the fallback things from the WPS. Actual playback start (I hear something) and info from the tags displaying seems to happen at the same time.
21:52:16kugel6 - 7 seconds ???
21:52:19tomersHi there. I've just posted update to "FS #10783 - WPS translation". It was reviewed by others and been fixed accordingly. Do you think I should wait until tomorrow, or can I post it tonight?
21:52:42Unhelpfuli is an immediate value. it must be compile-time constant, because it's encoded into the instruction, and it must not (on arm) have set bits that cover a span of more than 8 bits. immediates on arm must be a rotated byte.
21:54:01pixelmahas something changed with regards to loading ID3 info and maybe the first buffering (and playback starting during that). kugel: yes :( (measured with the stopwatch plugin on my c200, manually though) and now you can imagine how stupid looking at that mixed up screen looks
21:54:52 Quit AlexP ("Please insert girder")
21:54:55Unhelpfulgiven that -O0 broke it, i would bet that -O0 made the mask value non-constant
21:55:03kugelthat patch should at least make the list go away rather quickly
21:55:04 Join AlexP [0] (n=alex@rockbox/staff/AlexP)
21:55:38pixelmait doesn't
21:55:43kugelUnhelpful: O0 also broke something which is a constant in debug_menu.c
21:56:57kugel6-7s is so slow, I suspect that the storage transfers delay it
21:57:13pixelmakugel: ok, it does but you still see that mashup for very long
21:57:35kugelUnhelpful: line 1621 and following
21:57:54 Quit phanboy4 (Read error: 54 (Connection reset by peer))
21:58:15 Join phanboy4 [0] (
21:58:25*domonoky1 still doesnt understand why we want to compile rockbox with eabi, if it causes such problems..
21:58:49Torneeabi has linkage features that don't work in oabi
21:58:53kugelpixelma: you could insert a splash after "send_event(GUI_EVENT_REFRESH, gwps_enter_wps);" in wps.c to see how long the initial update really takes
21:58:55Tornebecause it's actually sensibly designed :)
21:59:33kugeldomonoky1: -60k binsize on non-mmu targets, mostly :)
22:00:27domonoky1kugel: oki, thats a argument i can understand :-)
22:00:59Unhelpfulkugel: doesn't -O0 also disable inlining? if that function is *ever* left standalone instead of inlined it *will* fail to compile, as obviously mask can't be constant as a true parameter.
22:01:27Unhelpfultry making it always_inline instead of changing the constraint, maybe
22:01:37kugelit did in mci_delay() case
22:02:24*domonoky1 suspects that there are many more places which use delays like this, and fears hidden bugs everywhere.
22:03:33*kugel thinks that expecting compile time constants as parameters for a function (even if it's inline) is questionable
22:03:55 Join stoffel [0] (
22:05:21Unhelpfulkugel: then make it a macro. or use a test for constancy and branch between versions with i and r constraints, but that could fail too if the dead branch isn't eliminated.
22:05:31pixelmakugel: didn't you change something about tag info loading in preparation of custom statusbar that could have an influence on the loading times there?
22:06:31TheSevengevaerts: ping
22:07:09 Join stripwax [0] (
22:07:26 Quit stripwax (Client Quit)
22:07:40Unhelpfulbut for what it does, expecting a constant parameter is perfectly reasonable. if you were writing this in asm at each callsite you'd be using an immediate. :P
22:09:17kugelbtw, what's the point of that temp register?
22:09:22kugelwhy not just use r12?
22:10:11 Join stripwax [0] (
22:10:32kugel"error: impossible constraint in ‘asm’" is the error, btw
22:11:20kugel __attribute__((always_inline)); doesn't seem to help
22:12:33gevaertsTheSeven: gnip
22:12:55kugelrockbox doesn't know __gnu_inline__ ?
22:13:08TheSevengevaerts: as you may have heard, liar has some usb trouble on his nano2g
22:13:44gevaertsvaguely, yes
22:13:48 Join niekie [0] (
22:13:53TheSevenhe just found out that commenting the send and receive call in the standard USB_REQ_GET_STATUS handler seems to fix it
22:14:06TheSevenany idea what could be going on there?
22:14:18 Part mtc
22:14:45kugelTheSeven: did you see his nand fix?
22:15:01liarkugel: that may be not the correct solution
22:15:05TheSevenkugel: I think this turned out to be a semi-fix again?
22:15:25kugelwaiting for the fifo? that seems proper to me
22:15:27TheSevengevaerts: if the send or receive (or both) are not commented, the whole device seems to lock up in a weird state where not even the timer int is running any more, but it doesn't seem to be inside an int handler either
22:15:48TheSevenany idea what could be special about that get status request (which doesn't seem to hurt if we just ignore it)
22:16:18liarkugel: but its locking up sometimes too(but only after unclean shutdowns)
22:16:30TheSevenaha? interesting fact.
22:17:28gevaertswhich USB_REQ_GET_STATUS is it? device, interface, or endpoint?
22:17:56liargevaerts: the one in request_handler_interface_standard
22:18:13gevaertsok, so interface
22:18:45*gevaerts wonders why a host would even call that
22:19:19 Join Strife89 [0] (
22:19:31gevaertsfor interface, *all* bits in the response are reserved and zero, so this is a zero-information request
22:20:48*TheSeven isn't even sure that it is called at all
22:21:00TheSevensomething running away would explain that behavior far better
22:21:25 Quit AaronM ("Emo Time In My Corner... //_-")
22:22:02TheSeveneither someone's accidentally jumping there, or someone's trashing some variables
22:22:32TheSevenbut how could such a kind of bug only appear on certain devices? (all devices liar has touched :-P )
22:22:52gevaertsliar: what OS are you running?
22:23:13liarubuntu 9.10, but it also happens on 9.04 and windows xp
22:23:39liarTheSeven: it doesnt work on __grants ipod too and i have never touched it :-P
22:24:49*TheSeven thinks of doing some post-mortem debug on a core dump of that
22:25:16TheSevennow that we know where it's running along, we may be able to fire up an ibugger stub from that place
22:25:36gevaertsthe fact that commenting out the usb transfers has no ill effects seems to confirm that there's no real GET_STATUS request. I'd expect a bus reset if the host actually did send one
22:26:14TheSevenit would probably reset the bus and continue to do other things, recognizing that that request doesn't work
22:26:20TheSevenwe probably wouldn't notice that
22:26:27Unhelpfulkugel: then it's being inlined in a case where the value is non-constant, or is not constructable as an immediate. you need to look at the callsite and see.
22:26:33gevaertsyou'd notice the bus reset in dmesg
22:26:39 Quit Grahack ("Leaving.")
22:26:49gevaertsGET_STATUS is not something optional
22:27:16TheSevengevaerts: you know how these drivers are written
22:27:25TheSeven"don't trust anyone or we may fail somewhere"
22:27:37TheSeventhere's shitloads of broken usb devices on the market
22:27:37kugelUnhelpful: it seems to be not inlined, the error appears as soon as the header included
22:28:18kugelthe question is why always_inline doesn't work
22:28:32TheSevenbut if we are indeed dealing with a runaway here, why does this manage to recover somewhat gracefully if we comment that?
22:28:54Unhelpfulit will break if not inlined. make sure it's always inlined, replace it with a macro, or try using if(__builtin_constant_p(mask)) and branching the asm with the i or r constraint
22:29:20TheSevenliar: did you try inserting a panicf on line 707? is this reached?
22:29:30Unhelpfulor don't build with -O0. the error you're getting is not an error if optimization is enabled.
22:29:51liarTheSeven: i had a splashf in there(it is called)
22:29:58*kugel thinks code that depends on O levels is bad code
22:30:11 Join Creposucre [0] (
22:30:19TheSevengevaerts: GET_STATUS is request 0?
22:30:29kugelUnhelpful: how to make sure if always_inline doesn't work?
22:30:34Unhelpfulkugel: then use a macro to guarantee the code is inlined. code that depends on inlining and specialization is *not* inherently bad code.
22:30:52gevaertsTheSeven: apparently, yes
22:30:53Unhelpfulwell, if it's trying to generate a non-inline version, clearly it's not working?
22:30:58CreposucreJdGordon: ping
22:31:07TheSevenliar: try an "if (req->bRequest==USB_REQ_GET_STATUS) panicf("whatever");" at line 689
22:31:26kugelmaybe it's inlining but also generating the definition
22:31:28CreposucreJdGordon: just to let you know that I've updated FS 10494
22:31:32gevaertsTheSeven: the linux kernel (at least 2.6.30) only ever calls USB_REQ_GET_STATUS for USB_RECIP_DEVICE, so *never* interface
22:31:42TheSevenor maybe even better "if (req == 0) panicf("ouch");"
22:32:01Unhelpfulit shouldn't on account of static
22:32:47TheSevena null pointer getting passed in there may well explain that
22:33:57 Join tomers_ [0] (
22:34:51pixelmamc2739: thanks for the head-up about the typo (and sorry for not paing much attention then but the crash was more important to me first), will have a look and then commit now
22:35:15gevaertsTheSeven: so the driver calling usb_signal_transfer_completion() with wrong data?
22:36:23TheSevengevaerts: i suspect the chip just claims to have received something but for some reason the request data is all-zero or something
22:36:43TheSeveneither a spurious int, or maybe a cache coherency problem once again?
22:37:17liarTheSeven: *PANIC* whatever
22:37:17liarbut the second one doesnt panic
22:37:33TheSevenhm, so we're indeed receiving crap from the chip :-/
22:37:41*gevaerts sees something fishy in the code
22:37:52TheSevenwhich code?
22:38:16*pixelma hides
22:38:27gevaertsTheSeven: usb_core.c, usb_core_transfer_complete()
22:39:03mc2739pixelma: no problem, crashes are always a higher priority than documentation
22:39:15gevaertsTheSeven: it picks a completion_event struct depending on endpoint number. I suspect it should also take direction into account, to avoid overlapping completions
22:39:41CIA-80New commit by tomers (r23638): FS #10783 - WPS translation ...
22:39:43gevaertsThis could also be responsible for some weird logf output I've been seeing from usb_storage on PP
22:39:51*gevaerts grabs a device
22:39:57 Quit dfkt ("-= SysReset 2.53=- Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn.")
22:41:11gevaertsTheSeven: if you get two completion events for EP0 for IN and OUT close to each other (faster than the threads can switch), you could get strange things here
22:44:53 Quit tomers_ ("ChatZilla 0.9.85 [Firefox 3.5.5/20091109125225]")
22:46:04gevaertsliar: could you try ?
22:46:24*gevaerts tries it on his e200
22:48:06 Quit Maad_Man ("Leaving")
22:48:09 Join Maad_Man [0] (
22:48:11pamauryI have a question about git: on github, pcc1 once created an experimental branch (mtp-experimental) but now I would like to delete this branch. How can I delete the branch both locally and on the remote (github) ? (I don't think I should leave this branch forever)
22:48:12 Quit tomers (Read error: 113 (No route to host))
22:51:17 Quit stoffel (Remote closed the connection)
22:53:23kugelUnhelpful: is there some define for the O levels?
22:53:50liargevaerts: that locks up too
22:54:18*kugel fails to get it work as #define
22:56:35gevaertsthat does mean it's probably the driver then
22:57:21gevaertsI still think it's a bug though, so I'll commit anyway
22:57:33 Quit Creposucre ("CGI:IRC")
22:58:28CIA-80New commit by gevaerts (r23639): Don't use the same completion_event for both directions. This could cause problems on USB controllers that have IN and OUT endpoints with the same ...
22:59:15*kugel hands gevaerts an enum to make code readable :)
22:59:37*gevaerts waits for kugel's patch :)
22:59:57pixelmagevaerts: could these fixes help with the MacOS 10.4 problems too?
23:00:24gevaertspixelma: no
23:00:51kugelgevaerts: you just want to maintain our usb code busfactor :)
23:01:04gevaertskugel: where do you want an enum?
23:01:17 Join petur [0] (
23:02:08kugelIN and OUT when accessing the array instead of "bogus" 0 and 1 (the boolean seems even worse, even if it's correct)
23:02:23gevaertskugel: I do have IN and OUT. Their value is 0x80 and 0x00
23:02:48kugelthen something else
23:02:58gevaertsthose are the values that get passed in
23:03:13kugelDIRECTION_IN and _OUT for example
23:03:35gevaertsused where exactly?
23:04:33kugelyour commit uses 0, 1 and a boolean for the direction, doesn't it?
23:04:44*pamaury wonders someone has an answer to his Git question
23:05:14kugelgit brach -d <branch>
23:05:22kugelthen git push
23:05:46gevaertsit uses 0 and 1 as array indices (no boolean! There is no such thing in C!), that are derived from a direction int, which is 0x00 or ox80
23:05:48kugel(the git push command may be more complicated)
23:06:20kugel"dir!=0" is a boolean expression to me
23:06:31gevaertsyes, but not to the compiler :)
23:06:34gevaertsit returns an int
23:06:56kugelwho cares about the compiler, I'm arguing for readable code
23:07:14gevaertsok, please propose a patch
23:07:54kugel&ep_data[EP_CONTROL].completion_event[DIRECTION_OUT] seems better readable to me
23:08:10gevaertsand where does DIRECTION_OUT come from?
23:08:21gevaertsin one case it's easy, but the other?
23:08:27kugelthat has to be defined of course
23:08:38gevaertsthat's not what I mean
23:08:56kugelenum { DIRECTION_IN, DIRECTION_OUT, (maybe also NUM_DIRECTIONS ];
23:08:58gevaertsdon't tell me enums and macros have to be defined. I'm not an idiot
23:09:10kugelI don't understand your question then
23:09:34gevaertsHow do you handle the completion_event[dir!=0] bit?
23:09:38*kugel knows that gevaerts isn't an idiot
23:09:56*gevaerts wonders why kugel thought he didn't know how to declare an enum then
23:10:07kugeldir == DIRECTION_IN ? DIRECTION_IN : DIRECTION_OUT for example
23:10:39TheSevengevaerts: &ep_data[EP_CONTROL].completion_event[dir>>7] :-P
23:11:13kugelor just dir ? ...
23:11:45gevaertskugel: why? I prefer to access actually existing array indices
23:11:50TheSevenif anything: &ep_data[EP_CONTROL].completion_event[dir == IN ? DIRECTION_IN : DIRECTION_OUT]
23:12:05TheSevenbut this doesn't really look better to me
23:12:48kugelgevaerts: how do you mean that?
23:13:20kugelTheSeven: that looks much better IMO
23:13:20gevaertskugel: accessing an array with two elements at index 0x80 is not going to work well. "dir" can be 0x00 or 0x80
23:13:34 Quit Strife89 ("Leaving")
23:13:54kugelat index 0x80?
23:14:16kugelwhere does "[dir == IN ? DIRECTION_IN : DIRECTION_OUT]" give index 0x80?
23:14:33TheSevenkugel: I think he is referring to [23:09]<kugel>or just dir ? ...
23:14:39gevaertsit doesn't. You said "or just dir"
23:15:03kugelI meant "dir ? DIRECTION_IN : DIRECTION_OUT"
23:15:12gevaertsAlso, I don't think having USB_DIR_IN being 0x80 and another DIRECTION_IN being 1 is going to make things clear
23:15:16kugel(the "..." was lazyness)
23:15:37***Saving seen data "./dancer.seen"
23:16:14*kugel disagrees, but whatever
23:17:47CIA-80New commit by gevaerts (r23640): use the EP_DIR() macro to go from USB_DIR_* to a 0 or 1 value
23:18:25kugelyea :>
23:18:35*TheSeven just wanted to come up with another idea
23:18:59TheSevenwhat about a struct that consists of 2 of these things, named in and out? ;-)
23:19:06*gevaerts had forgotten that tomers had added some of those helpers
23:19:26pixelmahmm, there already was a pure voice string for "of"
23:19:40*kugel wonders why he added those ;)
23:19:45gevaertsTheSeven: that would require lots of code elsewhere
23:20:10TheSevengevaerts: you should be able to use that like an array
23:20:21gevaertskugel: quick quiz: which direction is USB_DIR_IN? :)
23:20:25kugeloh, DIR_IN and DIR_OUT already exist too :)
23:20:52*TheSeven likes usb direction naming :-P
23:20:53 Quit mikroflops (""Maailmanpyoramuualta"")
23:21:01gevaertsTheSeven: sure? Without relying on gcc doing the right thing with something the spec says is undefined?
23:21:09UnhelpfulEP_DIR_ARRAY_INDEX_VALUE() would be clearer! ;)
23:21:10gevaertskugel: direction, not value
23:21:25kugelin ?
23:21:38gevaertsdevice to host or host to device?
23:21:45*TheSeven can't see the problem
23:22:07kugelhost to device
23:22:08TheSevenjust use a struct that consists of 2 of these things, one named in and one named out
23:22:26gevaertskugel: wrong :) IN is device to host :)
23:22:33TheSevenand then pass &ep_data[EP_CONTROL] or &ep_data[EP_CONTROL].completion_event.out
23:22:49kugelarg, I was thinking about OUT when doing the last guess
23:22:54 Quit n1s ("Lmnar")
23:23:07kugelto make you believe me that I unfortunately need to admit that I looked it up :P
23:23:11TheSevenkugel: everyone would have said that :-P
23:23:27Unhelpfulkugel: perhaps you were thinking that "in" == "device-to-host" made too much sense to belong in the USB spec?
23:23:29JdGordonaaaaaaaarrrrrrrrrr... wtf do i do about the rec bar?
23:24:02kugelit's like I said :p
23:24:10TheSevengevaerts: yes, you would of course need an if there, but it looks nice and clean to me, and the compiler will probably eliminate it anyways
23:24:23kugelI looked at /* The USB core is a device, and OUT is RX from that P.O.V */ and had OUT in my mind since then
23:24:24gevaertsTheSeven: that may work well for this particular case, but most places that do something like this get a number, so you get lots of extra lines
23:25:00gevaertsTheSeven: if the current way is found to be unclear, I prefer Unhelpful's suggestion, even if he seems to have proposed it as a joke :)
23:28:57gevaertshm, maybe DIR_IN and DIR_OUT, and USB_DIR_IN and USB_DIR_OUT should indeed be enums, so we could use that as a type instead of int, so it would be a lot clearer which one is needed for functions. Not sure if that wouldn't cause other issues though
23:29:24CIA-80New commit by kugel (r23641): Change "r" back to "i" (i is for immediate, so no syntax error) and reclaim a bit binsize. Live with that those function don't build with -O0 since ...
23:29:31 Quit bmbl ("Bye!")
23:30:26kugelgevaerts: we better wait for the eabi change with that one :)
23:31:30gevaertskugel: probably :) the thing is that they really need to be interchangeable with int. I don't want three lines of extra code every time I get 0x80 from the hardware and need USB_DIR_IN
23:32:11kugelthat will work with eabi, unless you access them via a int pointer
23:33:09JdGordonkugel: shouldnt this just work in WPSLIST...? "SBS.112x64:
23:33:22gevaertsmaybe it's better to leave that one as plain int, and only use an enum for the other variety (the 0/1 one)
23:33:28kugelJdGordon: I think so, yes
23:33:44JdGordon:( no dice
23:33:52gevaertsthat one is never passed to hardware, shouldn't be used in bitwise logic, and so on
23:34:01kugelmaybe without the extension, I'm not sure
23:34:23kugelyou can uncomment some debug messages in
23:34:57JdGordonthe rockbox_default theme doesnt seem to get made?
23:35:28kugelthat's not really a file
23:35:56kugelit only contains a target independant comment, the filename is hardcoded in wps.c to use the builtin
23:36:55JdGordonyeah I know.. I'd still expect the file to be created thoguh
23:36:58JdGordonor moved
23:37:25kugelmaybe it's created in
23:37:40JdGordonis the sbs stuff linked up properly? I added the line to boxes which does get created, and its added the the generated cfg, but the sbs is copied across
23:37:55JdGordonneither is the bmps
23:38:48 Quit pamaury ("exit(*(int *)0 / 0);")
23:38:52CIA-80New commit by pixelma (r23642): Manual: Pictureflow chapter - foremost fixing the M3 manual but clean up the button table completely to make it more readable and be more accurate ...
23:39:21kugelmy first sbs patch has this line "+SB.176x220x16:"
23:40:32JdGordonit needs the depth?
23:41:02kugelyes, but x16 targets will also get x1 stuff
23:42:00pixelmamc2739: sorry, now I forgot to fix the typo
23:43:56pixelmaand I see another unnecessary thing
23:44:24JdGordonah, if its named correctly it does get created... the bmp's arnt copied though
23:44:49mc2739pixelma: that's OK, I can get it
23:45:15Unhelpfulgevaerts: they're only incompatible when pointed to, or if you're converting between signed and unsigned types
23:45:39pixelmamc2739: line 53 doesn't need the {} after the last of the two mentioned buttons
23:46:05liargevaerts: another usb bug i found out is: rockbox locks up if i the usb cable is connected while booting or if i connect it before the disk activity led on the top right shuts off the first time
23:46:10Unhelpfulcasting small enums to signed will almost never mean what you expect it to, unless the enum contains a negative value
23:46:59kugeldid you try that?
23:47:04 Join mikroflops [0] (
23:47:15 Quit petur (Remote closed the connection)
23:48:15CIA-80New commit by mc2739 (r23643): Fix typo and remove umnecessary {}
23:48:21 Join FOAD_ [0] (
23:49:31kugelUnhelpful: why does that not work?
23:50:33gevaertsliar: that doesn't happen on other targets, so I suspect a driver bug, in which case TheSeven is the one to poke :)
23:51:51JdGordonkugel: did that cabbie sbs use any bmp's whicht he .wps didnt?
23:52:03kugelI don't think so
23:52:24kugelbut I think I had some other sbs to test with later, I'm not so sure though
23:53:01JdGordonI think it doesnt parse the sbs for files.. or copy them properly
23:53:08JdGordonbut my eyes are bleeding from the perl :(
23:54:13 Quit Maad_Man ("Leaving")
23:54:28Unhelpfulkugel: an enum with only small positive values is equivalent to unsigned char. since you are casting it to a *larger* type in casting to signed, the full range of the small type can and will be preserved. so, (signed)(tiny_enum =0xff) != -1
23:54:54 Join ender [0] (
23:56:04kugelI assume the compiler handles that properly like it does for all other types?
23:56:10Unhelpfuldoom and mpegplayer both have enum values where -1 is not part of the enum but is used as a flag value in code. for an equality test, you can compare enum_var to (enum_type)-1, for greater-than this also fails
23:56:47Unhelpfulin that it warns that the comparison is always going to be true or false depending on its sense, yes, gcc handles it "properly"
23:57:16kugelbut (signed)(tiny_enum =0xff) != -1 is what I expect if the enum doesn't have negative values
23:57:17gevaertskugel: the problem is that the "compatible type" for an enum can be char, signed int, or unsigned int. The compiler can decide for each enum independently
23:57:40kugelyea, it depends on the enum
23:58:06gevaertsFrom my understanding that means that on a target where char is signed, the compiler can decide things differently than for a target where char is unsigned
23:58:07Unhelpfulto fix these, either define the -1 flag value in the enum, making it a signed type, or cast the -1 instead of the enum variable.
23:58:09kugelUnhelpful: ah you investigated those lot of warnings already? I was to lazy :)
23:58:28JdGordonyep.. is broken

Previous day | Next day