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 2010-10-10

00:07:06*kugel makes a complete run
00:09:02 Join wop [0] (
00:09:43wophi,can i access my files from usb using rockbox?because i cant a way to do it
00:11:22gevaertswop: What do you mean exactly? Access files from where?
00:12:04wopon the computer
00:12:19gevaertsWith which player?
00:12:25wopipod video
00:12:48gevaertsthat should work fine
00:13:11wopi dont see it on the computer and i cant even get into apple mode
00:13:48wopdo i have to enable usb or someting so i can explore the files?
00:14:03gevaertsWhat operating system are you using?
00:14:42wopwindows xp
00:15:07gevaertsIs anything shown on the ipod screen when you plug it in?
00:15:22wopyeah it turns on in rockbox mode
00:15:31wopits charging
00:15:46wopbut i cant see the device
00:16:34kugelgevaerts: c5000 seems to be about 40% realtime
00:16:47gevaertskugel: ah, good. The beast still wins :)
00:16:49kugelthis is without asm optimizations
00:17:01gevaertswop: so you're plugging it in while it's switched off?
00:17:05kugelthe beast is probably faster than my phone
00:17:46wopyes gevaerts
00:17:54kugelgevaerts: are there complete results for the beast?
00:20:14gevaertswop: ok. What happens if you turn the ipod on first, wait until rockbox has started, and then plug it in?
00:21:26wopsame thing
00:22:39gevaertswop: what happens if you turn the ipod off, switch hold *on*, and then plug in?
00:23:33*kugel isn't sure about 40% rt
00:23:39wopi looked in universal serial bus controller and i have this when i plug it in !generic usb hub
00:23:47kugelit sounded like, but in the actual benchmark it seems slower
00:23:54kugelwe'll know in a few minutes :)
00:24:43wopwhen i put on hold it just restarts over and over
00:25:04wopapple logo
00:25:27kugelthe ipod video doesn't have usb in 3.6, does it?
00:26:15wophowcould i messed it up i used the auto installer from the website
00:26:19gevaertskugel: hm, yes, but I don't think that explains this on its own
00:26:35kugelha, 40.17%!
00:26:43kugelwhat an accurate guess
00:27:09gevaertsIt should detect USB and then reboot to the Apple in-rom disk mode, which apparently doesn't happen here
00:27:36gevaertsAnd booting with hold enabled should just boot the Apple firmware
00:27:55wopyes thats why im here im confused
00:28:03wopi used auto installer
00:28:09wopand its all messed up
00:28:17kugelwhat bootloader does that install?
00:28:46 Quit bertrik (Ping timeout: 240 seconds)
00:29:05woprockbox utility v1.2.8
00:29:09 Join stoffel [0] (
00:29:11gevaertskugel: doesn't really matter. Unlike about all other targets, the ipod bootloader doesn't care about whether or not the main build can do USB
00:29:11kugelIIRC the latest released PP bootloaders think USB is enabled, but I'm not sure if that's true for all PP bootloaders
00:29:34kugeloh, and the ipods don't use the PP bootloaders right? ignore me :)
00:34:25gevaertswop: I don't really have a clue about what's wrong here
00:34:37gevaertsMaybe someone else will know
00:35:32wopwhen i plug it it say found new hardware but it doenst work something is messsed up
00:36:20 Quit Topy44 (Read error: No route to host)
00:36:33gevaertswop: Can you try putting it into Emergency Disk Mode, as described in ?
00:39:36 Join Topy44 [0] (
00:40:17 Join Nausicaa [0] (
00:44:48 Quit _s1gma (Quit: Leaving)
00:47:16wopit just restarts
00:48:48 Quit ender` (Quit: The Web is a procrastination apparatus: It can absorb as much time as is required to ensure that you won't get any real work done.)
00:49:17gevaertsHave you tried several times? That part is fully handled in hardware and by the Apple code, rockbox isn't involved at all there
00:49:32gevaertsSo if that doesn't work, there's likely something wrong with your ipod
00:51:32kugelall codecs except mp3 seem to crash with asm enabled
00:52:50kugelI suspect it's a similar problem that the tremor guys have with our mdct
00:53:37kugel(the asm uses register in the asm even though it's used for a different purpose)
00:54:57kugelhm no it works now after make veryclean
00:55:29TheSevenS_a_i_n_t: ping
01:03:55***Saving seen data "./dancer.seen"
01:04:37kugelwma, vorbis, aac, a52, cook do not work
01:06:02rasherkugel: asm enabled on android?
01:08:36 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon)
01:10:06 Join Evilnick_ [0] (
01:11:17kugelrasher: not if half of the codecs crash with it
01:12:46 Quit BHSPitMonkey (Quit: Ex-Chat)
01:12:57rasherkugel: more exciting things to work on!
01:13:28gevaertsJdGordon: does my (partial) fix of FS #11589 make sense?
01:13:44 Quit evilnick (Ping timeout: 276 seconds)
01:15:13JdGordonpossibly, but I think there is more to it than that
01:17:49kugelflac, mpc almost twice as fast (flac 5500% realtime!), lame a little slower(!), applelossless a bit faster
01:18:31gevaertsJdGordon: I know my h120 freezes after disconnecting early USB without that, and it works fine with it
01:19:00kugelape c3000 about 1.8x faster
01:21:10kugelwavpack ~20% faster
01:23:02kugelI'm curious as to why mp3 is slower
01:24:46pamaurydid someone try to reproduce FS #11642 ?
01:26:27kugelJdGordon: i have put apks up
01:41:01pamaurycan someone who has a clip+ try to reproduce FS #11642 ? It doesn't crash for me, it's too vague
01:46:56gevaertspamaury: that could well be caused by a file with bad metadata
01:48:02JdGordonbad metadata shouldnt be able to break anyhing :/
01:48:31 Quit hebz0rl (Quit: Leaving)
01:48:36gevaertsShouldn't, no
01:49:17pamaurybad metadata CAN crash rockbox, I experienced it not so long ago
01:49:43gevaertsAnd it's true that crashes while building the database are less common than they used to be, but I wouldn't expect them to be totally gone
01:49:45pamauryyes it could but I'll better ask :)
01:50:36pamaurytrue, the code is so complicated, I wish the bug is not database related :D
01:51:44*JdGordon has too many files on his clip+ now and cant build the db at all
01:52:55 Quit kugel (Remote host closed the connection)
01:53:36pamauryJdGordon: can you test a usb patch on your clip+ ?
01:54:18pamauryDid you ever enable rockbox usb on it ?
01:54:32JdGordoni dont tihnk so
01:54:47pamaurydo you know how to do it ?
01:55:09 Quit panni_ (Quit: ( :: NoNameScript 3.81 :: ))
01:56:01 Join kugel [0] (
01:56:03 Quit kugel (Changing host)
01:56:03 Join kugel [0] (~kugel@rockbox/developer/kugel)
01:56:09 Join panni_ [0] (
01:56:18 Quit stoffel (Ping timeout: 272 seconds)
01:57:12pamauryok so have a look at this patch: In a first time you just apply the first hunk (about USB_HANDLED_BY_OF and USE_ROCKBOX_USB ). This enables USB. Then try to plug/unplug it several times (say 10 or 20) and count the number of times it fails (typically it doesn't mount). Then apply the whole patch and repeat the produce. Ideally, it should go from 1 or 2 failure before to 0 after
01:58:32JdGordonfun :p
01:58:35JdGordonok, hang on
02:00:18*JdGordon needs a faster compile box!
02:00:33pamauryjust recompile the core, it's super fasteer
02:00:55JdGordon4 cores :) a full zip takes about a minute :D
02:02:02JdGordonok, so just boot rockbox and connect usb and see how many reconnects it takes to work?
02:02:32 Quit Rob2223 (Quit: Rob2223)
02:03:15JdGordonhehe it connected first go
02:03:48gevaertsJdGordon: from what I understand it works most of the time
02:04:02JdGordon2/3 so far
02:04:29pamauryyeah it works most of time but sometimes, it just doesn't do anything, the kernel keep resetting the device and then give up.
02:04:48pamauryJdGordon: do you copy a full zip just for a firmware update ?
02:05:05JdGordonfull zip that time because i hadnt updated in ages
02:05:54JdGordonit only failed to connect once without the full patch... do i bother with the pacth?
02:05:59 Join Rob2222 [0] (
02:06:55pamaurythe goal of the patch is zero failures
02:08:15 Quit mikroflops (Ping timeout: 255 seconds)
02:10:13JdGordondmesg shows one reset but it has connected every time
02:10:43pamaurythat's to be expected, but that's a good point if it connected every time :)
02:10:44JdGordonanother reset+connect
02:11:10pamaurythe patch does a hard reset after too many failures :) (Or try to do so)
02:11:32pamaury(a hacky solution to a nasty problem I would say)
02:13:18pamauryif you see funman, can you ask him to test the patch ? It seems we have disjoint schedules even though we live in the same timezone :P
02:14:37 Part wop
02:18:11 Quit pamaury (Remote host closed the connection)
02:18:57 Quit kugel (Ping timeout: 245 seconds)
02:19:29 Join kugel [0] (
02:19:31 Quit kugel (Changing host)
02:19:31 Join kugel [0] (~kugel@rockbox/developer/kugel)
02:21:17 Quit basti (Quit: A-well-a bird, bird, bird, the bird is the word!)
02:23:00 Join mikroflops [0] (
02:25:50 Quit ps-auxw (Ping timeout: 240 seconds)
02:34:25 Quit GeekShadow (Quit: The cake is a lie !)
02:34:28 Quit DerPapst (Quit: Leaving.)
02:37:32 Join ps-auxw [0] (
02:42:36 Join hcs [0] (~agashlin@rockbox/contributor/hcs)
03:03:58***Saving seen data "./dancer.seen"
03:06:34 Join Chronon [0] (
03:10:22S_a_i_n_tTheSeven: Errr...sorry about leaving you hanging there. Had a lazy morning.
03:10:32*S_a_i_n_t calls "pong" from the rooftops.
03:11:22TheSevenS_a_i_n_t: can you try FS #11663
03:12:17S_a_i_n_tSure, I'll let you know once I've had a fiddle with it.
03:12:27S_a_i_n_tClickwheel/button stuff I imagine?
03:12:47S_a_i_n_tCoolies, yep. I can do that.
03:13:17 Join daurnimator_ [0] (76d1fb10@freenode/staff/daurnimator)
03:13:37daurnimator_anyone know of anything that lets you play additional audio formats on an ipod touch?
03:13:58S_a_i_n_tNot that would be in any way relevant here...
03:14:23TheSevenRaaA for the iPod touch, once someone ports it :)
03:16:49 Join [AndrewR] [0] (
03:17:33daurnimator_btw, where can I grab a copy of raaa?
03:17:50TheSevenraaa = rockbox as an application
03:18:01TheSevenwhich has so far only been ported to android
03:18:17[AndrewR]I'd like to draw some stuff using drawline, drawrect, etc. to a secondary buffer, then blit a subset of it to screen. anyone know the best way to do that?
03:18:30[AndrewR]this is for a plugin
03:18:58[AndrewR]can I use a viewport?
03:22:17 Quit kugel (Ping timeout: 245 seconds)
03:26:48 Join fdinel [0] (
03:44:21 Join drizztbsd_ [0] (~quassel@unaffiliated/drizztbsd)
03:45:22 Quit drizztbsd (Ping timeout: 250 seconds)
03:57:20 Nick YPSY is now known as Ypsy (
04:00:16 Join edboyer93 [0] (
04:03:22TheSevenS_a_i_n_t: I'll go to sleep now... If you find any issues with my patch, please leave me a note on flyspray
04:08:23 Join Jasons [0] (
04:09:07 Quit Jasons (Client Quit)
04:09:33 Quit pixelma (Disconnected by services)
04:09:34 Join pixelma_ [0] (quassel@rockbox/staff/pixelma)
04:09:49 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma)
04:09:54 Quit amiconn (Disconnected by services)
04:09:54 Join amiconn_ [0] (quassel@rockbox/developer/amiconn)
04:10:14 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn)
04:11:44 Join captainkewllllll [0] (
04:12:04 Quit captainkewllllll (Client Quit)
04:12:05 Quit TheSeven (Ping timeout: 240 seconds)
04:12:16 Join Judas_PhD [0] (
04:18:12 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
04:23:37 Join panni__ [0] (
04:26:43 Quit panni_ (Ping timeout: 276 seconds)
04:32:53*JdGordon curses at people who put the %xl() lines at the top of the skin with a x,y offset and then %xd inside a viewport
04:35:27 Quit Rob2222 (Quit: Rob2222)
04:35:46 Join Rob2222 [0] (
04:45:36 Quit [AndrewR] (Quit: [BX] Save water -- drink beer!)
04:52:02 Join xavieran [0] (
04:52:53 Join Barahir_ [0] (
04:53:25 Join dys` [0] (
04:53:31 Quit dys (Ping timeout: 276 seconds)
04:54:01 Nick dys` is now known as dys (
04:56:15 Quit Barahir (Ping timeout: 265 seconds)
04:56:48S_a_i_n_tJdGordon: Pastie an example?
04:57:00S_a_i_n_tI think I know what you're on about, and I dislike that too.
04:57:29S_a_i_n_tas far as I'm concerned...%xl should almost always have a 0,0 offset
04:57:50S_a_i_n_tleft the viewport it should be in dictate the positioning.
04:59:28JdGordon320x480 cabbie
04:59:37JdGordonunless im reading it wrong wasn't me, so...I don;t care ;)
05:00:35S_a_i_n_tI need to re-dl the source, my dev environment got wiped out...really should get back to that.
05:00:55JdGordonit has an annoying alignment problem, the next track line overlaps the progresbar, which ends up cutting off lettes like jgp
05:01:54S_a_i_n_tbut yeah, unless I'm completely misunderstanding things, %xl(blah) should pretty much always be at 0,0 in the %xl declaration, and the viewport should dictate the placement.
05:02:05S_a_i_n_tanything else seems sloppy, and fucking hard to work out.
05:04:02***Saving seen data "./dancer.seen"
05:04:12S_a_i_n_t....weird, we're agreeing on skin related stuff.
05:04:31*S_a_i_n_t looks for the black clouds, and listens for the sound of ice crystals forming in hell.
05:12:03JdGordonactually what I was going to say was "/me contemplates forcing xl lines into the viewport its xd()'d in"!
05:31:50 Quit anewuser ()
05:33:54 Quit ps-auxw (Ping timeout: 252 seconds)
05:42:53 Quit fdinel (Read error: Connection reset by peer)
05:44:49S_a_i_n_tNah, that sucks...I like having all %xl's up the very top of the skin personally.
05:45:13 Join ps-auxw [0] (
05:45:51S_a_i_n_tUnfortunately, there's just no way to force people to skin sanely.
05:46:20JdGordonsays the one who insists Xd(Af) is good :)
05:49:00JdGordon top left corner is the MENU button, top right is context menu, the bottom playlist area I want to use for navigation buttons
05:49:41JdGordonI'm not sure what to tihnk about the title and list fonts being wierdly backwards sized
05:49:55JdGordoni.e the title font should be bigger.. but thats the bar size in the wps
05:58:14 Quit spike_ (Quit: leaving)
06:01:14JdGordonputting the AA at 0,0 sized 32,32 in the sbs looks shite :p
06:10:29 Join Jeshikah [0] (
06:11:19 Quit edboyer93 ()
06:11:38JdGordonthere is no touchscreen button to jump to the wps?!
06:12:25Jeshikahhi there. is there anyone on that's familiar w/ the fuze?
06:13:12krazykitjust ask your question. if someone can answer it, they will
06:14:17Jeshikahi installed rockbox today on my fuze v1 using the full install option in the rockbox utility
06:14:38Jeshikahthen i disconnected and firmware updated. so far so good.
06:15:15Jeshikahthen when i try to reconnect it w/ comp now, it just keeps resarting, but comp won't recognize it
06:15:36Jeshikahit wount accept a wall charger either, doing the same thing
06:16:15krazykitcan you boot into the OF and connect that way?
06:16:45Jeshikahnot sure how to do that
06:17:36CIA-7New commit by jdgordon (r28223): Add "resumeplayback" touchscreen button action which returns you to the previous music screen (WPS or FM) from most of the lists (browsers and menus)
06:18:12*S_a_i_n_t points Jeshikah to the manual
06:18:48S_a_i_n_tHmmm....fuze v1 and 2 are the same manual?
06:19:28CIA-7r28223 build result: All green
06:19:39JdGordonthey should be
06:19:50Jeshikah...all firmwares are .sansa files aren't they?
06:19:57S_a_i_n_tI thought there was some fundamental differences.
06:20:04S_a_i_n_tAre there not two seperate builds?
06:20:20JdGordonno user differences
06:20:25JdGordonso no need for more than one manual
06:20:45S_a_i_n_tI assume then, there's no way to (yet) have one build that runs for both models.
06:20:58S_a_i_n_tor, it probably would make binsize way too big.
06:20:59JdGordonany ideas how to add two buttons to the top of the sbs I linked above to make the menu buttons obvious without breaking the look?
06:21:25JdGordonbinsize isnt an issue really when the target has >8MB ram
06:21:40*S_a_i_n_t has a nosey...
06:21:53S_a_i_n_tAh, so...noones figured it out yet?
06:21:55Jeshikahcuz i think i have only the rockbox firmware on the player :|
06:22:01S_a_i_n_t(re: fuse)
06:22:11JdGordonI doubt anyone has looked into it
06:22:22S_a_i_n_tSeems like a sensible thing to do, IMO
06:22:28JdGordonit isnt like the ipod 5g build... actual drivers are different
06:22:59S_a_i_n_tYeah, I understand that...but, it would be nice to have one build for both...if possible
06:23:12krazykitJeshikah, no, you have both. nearly all of the devices dual-boot by default
06:23:35S_a_i_n_tJeshikah: the manual I linked explains boot procedure for both RB and the OF
06:23:58S_a_i_n_tthe manual should be the first port of call for "Hmmm, wtf?" questions
06:24:00Jeshikahso which folder would it be in? i can only find the rockbox.sansa, but no other .sansa
06:24:21*JdGordon is slightly annoyed the app builds only allocate 8MB ram.. the playlist viewer sucks if only the next tracks info is loaded
06:24:50krazykityou just have to hold the correct button during boot, as the manual says
06:25:16S_a_i_n_tthere's no need to be confusing yourself looking for folders.
06:26:05JdGordonhold left to boot OF
06:27:20S_a_i_n_tJdGordon: Re: your .sbs question...short answer is "No"
06:27:26S_a_i_n_tthe look will change completely
06:27:34S_a_i_n_tAnd yes, the backward fonts look like ass.
06:27:54JdGordondo we have the font which was origionally used to make the wps banner?
06:28:05Jeshikahthanx. i was looking under "advanced topics" in the manual and it clearly mentions "playing .sansa files" and said nothing about left button, strangely, lol
06:28:26S_a_i_n_tJdGordon: The closest is one of the Helveticas
06:28:52S_a_i_n_tBut it will always look different, as the original banner was aliased
06:28:59JdGordonI'm using 18-Adobe-Helvetica-Bold.fnt for the title and 12-Adobe-Helvetica-Bold.fnt for the list
06:29:19S_a_i_n_tMake the banner larger, and swap them around.
06:29:22S_a_i_n_tsolved ;)
06:29:37Jeshikahyay, now it works like a charm, lol. tyvm everyone ^^
06:30:05JdGordonoh no I'm not :) 18-bold for the title, 12-bold for the playlist viewer title.. 27-adobe-helvetica for the lists
06:30:10S_a_i_n_tJeshikah: No offence, but, as I said..reading the manual is something everyone that even looks at rockbox should do
06:30:24S_a_i_n_tit's not really something you can just blunder your way through
06:30:56Jeshikahlol, none taken, and i was looking at the manual, just appearantly the wrong section
06:31:35S_a_i_n_tJdGordon: Seriously?
06:31:51S_a_i_n_tlist bigger than the header seems...yuck, to me..personally.
06:31:59Jeshikah i was looking at section 12.5 on there. which seems to be the wrong section to look at, lol
06:32:08S_a_i_n_talso: Add an actual header!
06:32:15S_a_i_n_tthe path looks like ASSS!
06:32:28JdGordonIt does feel odd, but thats what I chose because it fit the banner image :) and because of the colour differens I dont tihnk it looks terrible
06:33:01S_a_i_n_tI *could* make you a larger banner background...
06:33:14JdGordonI wanted it to stay the ame as the wps
06:33:26S_a_i_n_tand, make an actual "Playlist" header!!!!
06:33:42JdGordonfor down the bottom?
06:33:49S_a_i_n_tup the top.
06:34:00JdGordonthe screenshot was from the file browser
06:34:01S_a_i_n_t"/blah/blah/playlist.blah/" looks like ass to me.
06:34:15S_a_i_n_terrr... "/media/data/music"
06:34:40*S_a_i_n_t has never been a fan of the full path in the title though personally.
06:35:34JdGordonwith that setting off the bar is empty which is a bit lame...
06:35:51S_a_i_n_tI wasn't sure what I was looking at initially, so "Playlist" doesn't really make any sense there.
06:36:04S_a_i_n_tdoes %cs not have a "database" thing?
06:36:13S_a_i_n_tI'm not sure what I do in that case.
06:36:14JdGordonI'm checking
06:36:41JdGordon"Screens from 1-5, in that order: Menus, WPS, Recording screen, FM Radio screen, Current Playlist screen"
06:36:44S_a_i_n_tIf not, it if I don;t use it that's probably why ;)
06:37:14JdGordonthats been on my todo list for a while also :p
06:37:21JdGordonmore fine grained %cs control
06:37:34S_a_i_n_tI guess it could be 1-6 with database added to the end without breakig anything.
06:37:52S_a_i_n_t*breaking, even.
06:37:53JdGordonit doesnt even have "browser"
06:38:31JdGordonwhat happened with your bigger iconset?
06:38:39S_a_i_n_tyeah, as I don;t use the "full path" setting, I have wanted more %cs's for a while...but it's never really been something that worked too well.
06:38:54S_a_i_n_tas for the Iconset, I fell off the internets ;)
06:39:11JdGordontisk tisk :)
06:39:13S_a_i_n_tIts still floating around, I need to finish the viewer icons though.
06:39:42S_a_i_n_tafter that, done. the 12x12 iconset looks plain odd on that screenshot.
06:39:54JdGordonyes it dos
06:40:16JdGordonI want to actually commit this sbs.. even if only to get other people interested in making it better
06:40:36S_a_i_n_tIt definitely looks good.
06:40:42 Quit Nausicaa (Ping timeout: 240 seconds)
06:40:53S_a_i_n_tAs good as a cabbie can look ;)
06:41:01JdGordonwell yeah :)
06:41:35JdGordonruddy hell the line selector looks like shit!
06:42:47JdGordonalso I'm pretty sure I need to come up with a way to allow button popups above the list
06:43:18S_a_i_n_t*cough* magic colour for transparency in the line selector *cough*!
06:43:39S_a_i_n_tthat way, it's possible to just have the font change colour for selection, which looks awesome.
06:43:52S_a_i_n_tnow, it only works with solid colour backgrounds.
06:45:08S_a_i_n_ts/which looks awesome/which looks awesome IMO/
06:48:06*JdGordon decides to start kicking people who add IMO...
06:48:12JdGordonno shit its your opinion!
06:54:26 Join Chronon_ [0] (
06:54:57 Quit Chronon (Ping timeout: 265 seconds)
06:55:23*S_a_i_n_t likes the lack of detail in FS #11662
06:56:00S_a_i_n_tshort answer: "your theme is busted somehow, try the themeeditor, if it parses, RB is busted...if not, you fucked it up"
06:56:47JdGordonnot entirely
06:57:18JdGordonstill a theme should never be able to crash rockbox :/
06:57:19S_a_i_n_tHmmm, the word of the themeeditor is no longer gospel?
06:57:37JdGordonit is slightly out of sync with svn..
06:57:46*JdGordon fails at it and c++
06:58:00S_a_i_n_tAha...right, geee....I'm gone for 3 weeks and everything falls to shit! ;)
06:58:36S_a_i_n_tWe need to drag beiber out of school then.
06:59:13JdGordonwell yeah :)
06:59:15S_a_i_n_tHe doesn;t need any of that anyway, two weeks messing with perl is all the qualifications any budding nerd needs to get a foot in the door.
06:59:42JdGordonyou mean I wasted 5 years at uni for nothing? :'(
06:59:55S_a_i_n_tDepends what you were doing ;)
07:00:19S_a_i_n_t(and it was more than a little bit sarcastic)
07:03:43 Quit panni__ (Quit: ( :: NoNameScript 3.81 :: ))
07:04:05***Saving seen data "./dancer.seen"
07:05:26 Quit Galois (Ping timeout: 240 seconds)
07:08:04 Quit S_a_i_n_t (Ping timeout: 264 seconds)
07:23:40CIA-7New commit by jdgordon (r28224): Touchscreen %T() tag.. don't allow - for width/height params (shouldn't affect anyway because the current code would crash if you tried it)
07:23:58 Join Horscht [0] (~Horscht@xbmc/user/horscht)
07:25:27CIA-7r28224 build result: All green
07:26:50 Quit Horschti (Ping timeout: 272 seconds)
07:30:43CIA-7New commit by jdgordon (r28225): cabbie 320x480 WIP sbs: ...
07:32:21CIA-7r28225 build result: All green
07:39:34 Join Llorean [0] (~DarkkOne@
07:39:39 Quit Llorean (Changing host)
07:39:39 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean)
07:44:06 Join Highlander [0] (
07:58:37 Quit Judas_PhD (Quit: This is a quitting message)
07:59:52 Join Judas_PhD [0] (
08:00:55 Quit Judas_PhD (Client Quit)
08:21:00 Join simpleMan [0] (~combroasi@
08:21:15 Quit Jeshikah (Quit: CGI:IRC 0.5.9 (2006/06/06))
08:23:35 Quit Llorean (Quit: Leaving.)
08:28:12JdGordon\o/ /me thinks he fixed the %t() issues
08:31:37 Quit jfc (Ping timeout: 265 seconds)
08:37:19 Quit antil33t ()
08:39:07 Join Evilnick__ [0] (
08:39:33 Quit daurnimator_ (Ping timeout: 265 seconds)
08:40:14JdGordonanyone got a reasonably complex skin with animatios?
08:42:22 Quit Evilnick_ (Ping timeout: 260 seconds)
08:43:33 Join S_a_i_n_t [0] (S_a_i_n_t@
08:44:51 Join jfc [0] (
08:47:57CIA-7New commit by jdgordon (r28226): fix FS #11662 and FS #11629 - skin %t() issues. %t should now work properly inside and outside of conditionals. ...
08:49:43CIA-7r28226 build result: All green
08:50:24 Quit asderix ()
08:55:54JdGordonsmart people: does look correct? and will that actually reduce stack usage?
08:57:16hcswhy not use a do {} while (0); with a continue ?
08:57:22hcsoh, nvm
08:57:34hcswould need to be while 1 with a break at the end... no nicer, I guess
08:57:56JdGordonor I could just copy those few lines before the start of the loop
08:58:02JdGordonnot sure which is actually nicer though
08:58:31 Join factor [0] (~factor@
08:59:15JdGordonlooks like gcc inlined that function with that change
08:59:20JdGordonso presumably it be good?
09:01:40hcsyou're asking me? I thought you wanted smart people
09:02:11JdGordonin the absense of anyone else... :D
09:02:48hcsI must be too tired because I'm not seeing the equivalence exactly
09:03:10JdGordonactually.... I wonder if this makes the stack usage worse, seen as now all that code has inlined into another recursive function, and that change is barely going to be used (nested conditionals only)
09:03:57hcsif it isn't used why would the stack be grown?
09:04:06***Saving seen data "./dancer.seen"
09:04:25JdGordonit is used, in a function which is called recursivly
09:04:56hcsand it always buys the max frame it needs?
09:05:44 Quit simpleMan (Ping timeout: 276 seconds)
09:12:32 Join Galois [0] (
09:13:16hcssorry to be useless here, good night
09:13:30 Part hcs
09:18:43 Quit jfc (Ping timeout: 265 seconds)
09:21:56 Join Judas_PhD [0] (
09:24:22JdGordonpixelma: ping
09:31:07 Join n1s [0] (
09:31:07 Quit n1s (Changing host)
09:31:07 Join n1s [0] (~n1s@rockbox/developer/n1s)
09:32:43 Join jfc [0] (
09:39:12 Join Rob2223 [0] (
09:42:40 Quit Rob2222 (Ping timeout: 265 seconds)
09:48:15 Quit JdGordon (Ping timeout: 252 seconds)
09:48:53 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon)
09:53:28n1sI think the "Reported in" field in the tracker is pointless since everyone just picks Release 3.6 even if it's a current build, maybe we should just drop that field and ask them to type in the rev number since we have to ask for that anyway?
09:57:34JdGordonis there any way to check if calling a function would overflow the stack?
09:58:09 Quit Topy44 (Ping timeout: 252 seconds)
09:58:19*JdGordon has got the rendering engine down to one recursing function, and no idea how to turn it into a loop
09:58:50 Join Topy44 [0] (
09:59:30 Join utanapischti [0] (
10:00:29 Join stoffel [0] (
10:03:52 Quit sasquatch (Ping timeout: 264 seconds)
10:08:21 Quit JdGordon (Quit: Leaving.)
10:09:25CIA-7New commit by nls (r28227): Fix FS #11513, pictureflow keymap in the manual was wrong.
10:11:08CIA-7r28227 build result: All green
10:12:20n1sah, pictureflow keymap *for fuze* was wrong
10:14:38 Join hebz0rl [0] (
10:14:44 Join JdGordon [0] (3a6d839a@gateway/web/freenode/ip.
10:15:47 Join bertrik [0] (~bertrik@rockbox/developer/bertrik)
10:19:58 Join T44 [0] (
10:20:44 Quit Topy44 (Read error: Connection reset by peer)
10:23:13 Quit T44 (Read error: No route to host)
10:23:17 Join Topy44 [0] (
10:25:46pixelmaJdGordon: pong
10:26:07 Join JdGordon1 [0] (
10:27:16 Join T44 [0] (
10:30:16 Quit Topy44 (Ping timeout: 264 seconds)
10:35:09 Join bmbl [0] (~Miranda@unaffiliated/bmbl)
10:35:18 Quit T44 (Ping timeout: 240 seconds)
10:46:15pixelma%xl inside the viewport %xd is in would take away functionality (which is very handy) - if it's outside you can use the same bitmap (strip) in different viewports. I do so with a bitmap strip which reduces single bitmaps quite a lot
10:46:46pixelmagevaerts: will try the partial early USB fix later
10:50:08 Quit JdGordon1 (Ping timeout: 272 seconds)
10:54:20 Quit balintx_ (Read error: Operation timed out)
10:54:46 Join Topy44 [0] (
10:58:17 Quit JdGordon (Ping timeout: 265 seconds)
10:58:41 Join balintx [0] (
11:01:04pixelmaerr... n1s: IIRC there is no "current build" option in flyspray's "Reported in" field, at least I remember having trouble finding something suitable
11:02:16 Join JdGordon [0] (6fdce2e2@gateway/web/freenode/ip.
11:02:18n1spixelma: that's correct, maybe we should add that but people still choose "release" even if they use a current build so itäs more confusing than usefull imo
11:02:54n1si've seen references to "stable r28***" and "3.6 r 28***" or similar
11:04:08***Saving seen data "./dancer.seen"
11:04:12JdGordonpixelma: grr, reply didnt go through... i've got a patch to hopefully make the probaly stack problems at least better
11:04:22JdGordonbut cant get to it right now.. so ill nag you to test a bit later
11:05:41 Join ender` [0] (
11:06:57pixelmaok, I'll try once you have that up. It's really a stack problem - with the doubled stack on my Ondio I have 24% stack usage after booting, 50% after going to the WPS, so half the stack makes that 48% (which I saw) and the other is just above 100% and ends in a hang
11:10:22 Quit balintx (Read error: Operation timed out)
11:10:43 Join balintx [0] (
11:11:38*pixelma also needs to try the %t fix
11:11:58pixelmanot having those inside the conditionals there was only one weirdness: the first "run" was default 2s and then it goes on as I set in the WPS (5 or 6 seconds
11:17:15 Join kugel [0] (
11:17:17 Quit kugel (Changing host)
11:17:17 Join kugel [0] (~kugel@rockbox/developer/kugel)
11:21:06 Join dfkt [0] (dfkt@unaffiliated/dfkt)
11:21:09 Quit kugel (Read error: Connection reset by peer)
11:25:46bertrikDoes anyone know why the track *title* of a .mod file is used as "artist" in the metadata?
11:25:59bertrikThis seems to have been done on purpose, but I can't figure out why
11:26:19 Quit JdGordon (Ping timeout: 265 seconds)
11:27:44 Join kugel [0] (
11:27:46 Quit kugel (Changing host)
11:27:46 Join kugel [0] (~kugel@rockbox/developer/kugel)
11:27:53 Join robin0800 [0] (
11:29:34pixelmaIIRC .mod doesn't really have metadata, it's more or less an attached text file where there was a bit of convention what things on line # meant (I saw a lot of files not being correct there). I seem to remember some discussion about it though but no details
11:29:44kugelS_a_i_n_t: did you stop working on the icons?
11:30:03pixelmamaybe not a "file" in that sense
11:30:25bertrikpixelma, yes, there was some discussion about this, but nobody knew the answer back then, IIRC
11:31:20bertrikpixelma, AFAIK, there is one track title, plus some loose convention that other "metadata" is put in the instrument names
11:34:15bertrikWhat happens now is that the artist field of rockbox metadata is filled with the title of the MOD. The title field of the rockbox metadata is not filled by the metadata parser, so it somehow (how?) gets automagically filled with the file name in the WPS
11:35:15pixelmathe how is probably due to the theme writer
11:35:54bertrikIf I fix it such that the rockbox metadata title field is filled with the MOD title, the "artist" field in the WPS shows "(root)"
11:35:55pixelmaif he coded the theme to fall back to the filename if artist information is not available
11:36:25pixelmais this with cabbiev2?
11:36:42bertrikah, ok, so this is part of the theme, not some fallback in rockbox firmware :)
11:36:45bertrikpixelma, yes
11:39:51pixelmacabbiev2 (looking at the Clip's version) is coded to show filename if title tag is not present, and the directory name 2 level above if artist information is not present (and if the directory 2 levels above is the root directory, it'll show (root))
11:40:34pixelmaso, your artist field isn't populated then
11:41:24bertrikthanks, that explains a lot
11:44:41 Quit Judas_PhD (Quit: This is a quitting message)
11:48:40 Join GeekShadow [0] (~Antoine@reactos/tester/GeekShadow)
12:14:42 Quit n1s (Quit: Lämnar)
12:22:09 Join pamaury [0] (
12:22:09 Quit pamaury (Changing host)
12:22:09 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
12:22:20 Quit robin0800 (Remote host closed the connection)
12:23:54 Quit kugel (Ping timeout: 245 seconds)
12:24:53CIA-7New commit by bertrik (r28228): Fix FS# 11414 : .mod files - metadata in incorrect fields
12:26:36CIA-7r28228 build result: All green
12:29:33 Join kugel [0] (~kugel@rockbox/developer/kugel)
12:41:38*TheSeven again asks ipod owners to please test
12:44:18 Nick drizztbsd_ is now known as drizztbsd (~quassel@unaffiliated/drizztbsd)
12:48:33 Join Judas_PhD [0] (
12:49:44 Join avacore [0] (
12:50:20linuxstbTheSeven: bootloader releases are generally made independently of main Rockbox releases.
12:52:32 Join MethoS- [0] (~clemens@
12:53:07S_a_i_n_tkugel: Nope, but...being offline for several weeks hasn't helped maters any.
12:53:26S_a_i_n_tAll I need to do are the viewer icons, shouldn't take long.
12:53:33TheSevenlinuxstb: this one also affects the main build
12:59:10 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon)
13:00:17 Quit Judas_PhD (Quit: This is a quitting message)
13:01:19JdGordonanyone else getting screen corruption also
13:02:54 Join Evilnick_ [0] (
13:04:11***Saving seen data "./dancer.seen"
13:05:09 Quit Evilnick__ (Ping timeout: 245 seconds)
13:06:54 Join DerPapst [0] (
13:07:09 Quit Topy44 (Read error: No route to host)
13:07:48 Join Topy44 [0] (
13:11:22 Quit JdGordon (Quit: Leaving.)
13:11:31pixelmaJdGordon: patch doesn't apply here - I get quite a few failed hunks with r28227
13:11:35 Join JdGord [0] (
13:11:46pixelmaJdGord: : patch doesn't apply here - I get quite a few failed hunks with r28227
13:12:25kugelJdGord: did you try the apks yet?
13:12:39JdGordSvn up?
13:13:06JdGordNot yet. Was waiting till I can dl over wifi.. might just do it noe though
13:13:43JdGordCan you try the 320x480 cabbie sbs on your phone?
13:13:47pixelmait's almost the last revision, the only commit was bertrik's metadata thing
13:14:04JdGordOk hand in
13:14:41 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon)
13:15:52JdGordonwhat hunk failures?
13:15:58JdGordonuse -p1
13:16:05kugelI can, but I didn't like the playlist viewer on the screen shot
13:16:06gevaerts-p1 doesn't help
13:16:25 Quit JdGord (Client Quit)
13:16:43gevaertsit's weird. It *looks* ok...
13:16:44pixelmaJdGordon: skin_render.c, hunk #3 and on
13:17:26pixelmahmm... "patch unexpectedly ends in middle of line
13:17:49gevaertsI think pastebin is mangling it
13:18:58 Join teru [0] (
13:19:13JdGordonkugel: well it needs an area for the buttons popup, so the playlist viewer might stop people wondering why the whole screen isnt used
13:19:16JdGordonalso.. I like it :D
13:19:31JdGordonwe cant popup anything over the list
13:19:33kugelit could show the buttons all the time
13:19:43JdGordonit could
13:19:56JdGordonjust like the aa image could be the menu button
13:20:01gevaertsJdGordon: yes, that one applies
13:20:27JdGordonthat change has some really pathitically crappy stack protection, if it panics at least the cause will be 100% certain
13:20:32 Nick Ypsy is now known as YPSY (
13:20:52JdGordonhaving the fonts in the apk le suck!
13:22:35JdGordonkinetic scrolling works nice :)
13:27:27 Join Zarggg_ [0] (
13:28:33pixelmaJdGordon: compiles, just want to let you know that I get a warning: /apps/gui/skin_engine/skin_render.c:440: warning: implicit declaration of function ‘panicf’ . Going to try now
13:28:48JdGordonyep, fine, perfectly ignorable
13:29:51teruJdGordon: thank you to fix FS #11662. my theme works fine now.
13:30:17JdGordonno worries :) you do know that conditionals dont require the false branch right?
13:30:37JdGordone.g %?bc<foo> works just as well as %?bc<foo|>
13:30:47 Quit Zarggg (Ping timeout: 252 seconds)
13:31:01JdGordonthe empty false was actually what the problem was (so actually a good thing you were doing that :p )
13:32:03JdGordonpixelma: assuming it works, can you add a bunch of nested conditionals untill it break please?
13:33:11teruyes, i know that.
13:33:52*kugel thought kinetic scrolling would be practically impossible to do with rockbox a month ago but it was a lot easier in the end
13:34:20JdGordondoes it work if the list isnt using the whole display?
13:34:24JdGordonand.. how did oyu do it?
13:34:57pixelmaJdGordon: *PANIC* skin engine: rendering stack overflow
13:35:09JdGordonwoo \o/
13:35:11pixelmawith my usual WPS
13:35:31JdGordonthe one with screen corruption?
13:35:36pixelmano additional nested conditionals, the one that once worked
13:35:49pixelmano, the one with the hang
13:35:59JdGordonok, now we know why then
13:36:20JdGordonthat panic is when the main stack is > 90% before doing a recursive call
13:36:24kugelJdGordon: should work, maybe it'll be a bit tricky if you swipe outside the list area, but in theory it should work fine
13:36:27JdGordoni.e stackusage+++
13:37:08pixelmaJdGordon: well the stack usage with the double stack build is 50% after going to the WPS, so half the stack - 100% is not unexpected
13:38:04JdGordonok, well now I'm slightly out of my depth....
13:41:53kugelJdGordon: is the patch, it has a few comments about how I did it
13:43:57JdGordonanyone want to untangle this mess? I've got it down to one recursion call which should be able to be changed to a loop... but I suck at that... any volanteers?
13:44:54JdGordon or ideas how to minimise its stack usage?
13:51:40 Join sanb [0] (
13:52:24gevaertsLooks like abour 28 bytes of stack usage
13:52:30gevaertsNot *too* horrible
13:52:30sanbhi all
13:52:48sanbsorry for my english
13:53:14 Join krabador [0] (
13:53:14sanbcan i install rockbox to iriver s100?
13:53:50gevaertsOnly the players that are explicitely mentioned on the rockbox home page will work
13:54:01JdGordongevaerts: (stupid question) why did I keep thinking it copies the whole funciton onto the stack?
13:54:14JdGordonwhy is 28 bytes killing it then? is it that full already?
13:54:21 Quit sanb (Client Quit)
13:54:37gevaertsJdGordon: sorry, I'm not a psychologist :)
13:55:13JdGordonpixelma: pastebin your wps please? and can you check your stack usage with a wps which is just "%we"
13:56:15gevaertsThere's some overhead like return addresses too of course, but it's still not anywhere near those things that add a sector buffer or similar
13:56:20pixelmasure, and sure. Only the WPS or a complete zip?
13:57:18JdGordononly the wps and sbs if it has one
13:57:42*JdGordon is going to make these gotos work anyway! :)
13:58:02JdGordonntill I give up :p
14:00:18pixelmastack usage with an %we WPS is 48% just like without going to the WPS
14:01:24S_a_i_n_twow...that seems, ...wrong.
14:01:33JdGordonok, comment out line 660 in skin_render.c and run it again and check usage
14:01:51JdGordonwith your normal wps
14:02:32gevaertsJdGordon: 660 with or without your test patch?
14:02:35pixelmano SBS, .wps is here:
14:02:53JdGordonumm... the line "needs_update = skin_render_line(line, &info);"
14:03:06 Join n1s [0] (~n1s@rockbox/developer/n1s)
14:03:43JdGordonyou have 5 nested conditionals... that really shouldnt add 50% to the stack usage
14:03:51JdGordonhow big is the ondio stack anyway?
14:04:42JdGordonand dont both with that change.. stupid idea
14:04:42JdGordonwhere is the main stack defined?
14:04:47pixelmaI changed I line that usually is 0x2000 to 0x4000 and been told that it doubled stack size
14:05:04pixelmago figure ;)
14:05:48pixelmamy test.wps with only the nested conditional line worked last I tried
14:06:31JdGordonok, well an 8k stack isnt magically going to use 4k in ~30byte increments
14:06:39pixelmaok, I'm a bit confused as to what I should change and test now, can you explain again=
14:08:04gevaertsJdGordon: I'm not sure if thread_stack_usage() at that point really tells you what you want to know. It returns the maximum stack usage, not the current usage
14:09:01gevaertsunless I seriously misunderstand things
14:10:26JdGordonpixelma: try "%?mh<one>" and check useage (with hold on) , then "%?mh<%?mh<one>>"
14:10:37JdGordonor some other conditional which you can force to true
14:11:37pixelmagevaerts, JdGordon: early USB is not crashing on my Ondio with the partial fix, statusbar is still missing as mentioned
14:12:28pixelmahmm, got a double stack build flashed now though, have to bring the normal one back
14:12:41pixelmaat least RoLo#ing one
14:12:42JdGordonthat will be ok
14:13:17JdGordonif it goes 50% -> 51% its atleast tells us something
14:16:43JdGordonthere is a single 1k buffer which ends up on the stack, but isnt called recursively so it should be fine, no other functions have more than a hadful of pointers
14:16:47pixelmawith one %?mh<test>, no change in stack usage, stays at 24% just like after boot (maybe rounding hides a small difference)
14:16:51JdGordons/pointers/pointer sized vars
14:22:12kugelstripwax is consistently top posting...
14:22:58pixelmayeah, annoyed me too already and I always wanted to tell him when he comes here but he doesn't
14:23:22*JdGordon plays a tiny little fiddle
14:23:43JdGordonpixelma: how does it go with nested conditionals?
14:24:52pixelmasecond level "%?mh<%?mh<test>> : stack usage 24% > 29%
14:25:22JdGordon5%? thats rather high... whats that in bytes :p
14:25:51JdGordon820 bytes?!
14:27:27 Join fml2 [0] (
14:28:06pixelmaone level more: > 36%
14:28:15n1sJdGordon: maybe gcc is going crazy with inlining or something?
14:28:32fml2JdGordon: maybe you don't notice some recursive calls?
14:28:52pixelmalooks like it's increasing exponentially or something?
14:28:56fml2Like a call in the middle of an expression
14:28:57JdGordonbut only the local variables get put on the stack right? I cant see any function with more than maybe 100 bytes of vars
14:29:00n1swhich function ins the prime suspect?
14:29:26gevaertsJdGordon: maybe run the sim in a debugger so you can see backtraces?
14:29:41JdGordonapps/gui/skin__engine/skin_render.c skin_render_line() although these numbers are with a patch
14:29:50n1sJdGordon: yes, local vars are on stack but the compiler can use more stack
14:30:22pixelmaJdGordon: it's only the increased stack, I reverted your patch - shall I apply again?
14:30:30JdGordondo_tags_in_hidden_conditional() has lots of recursion but should be tiny stack usage
14:30:34gevaertsn1s: but hundreds of bytes?
14:31:05JdGordonpixelma: yeah, reaaply that patch, but comment out the panic line and the if before it
14:31:43n1sgevaerts: lear has made some commits to mark functions as "noinline" because gcc would inline them causing stkovs, seems to only have happened for coldfire/gcc3.4 though
14:31:48fml2He-he, I once saw a banner "Iteration to human, recursion to god"
14:32:41gevaertsn1s: the inlining as such won't cause stkovs. It's a tiny bit more complicated I think
14:33:48n1sgevaerts: true, but if the compiler inlines agressively and at the same time isn't clever enough to only alloc the stack vars as they are needed thisngs might explode
14:34:36JdGordoneven still, I dont see any arrays which could get even close to 800 bytes
14:34:54 Quit fml2 (Quit: CGI:IRC)
14:35:13JdGordonstatic char tempbuf[128]; probably wont end up on the stack right?
14:35:29n1sit shouldn't
14:35:58n1s"static" things cannot live on the stack
14:36:14JdGordonjust making sure :) yeah, I'm baffled :p
14:37:20kugelare there tools that can analyze stack usage from the asm code produced?
14:39:38*JdGordon grumbles
14:41:36 Join _s1gma [0] (~d.d.derp@
14:43:01 Quit JdGordon (Quit: Leaving.)
14:44:05pixelmaJdGordon: no change in stack usage with your patch - at 36% now with the doubled stack at 36% with the 3 level nested conditional
14:44:52 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon)
14:45:15pixelmaJdGordon: no change with your patch
14:45:52JdGordonnumbers are the same?
14:47:04pixelmayes - with the 3 level nested conditional and the double stack build it's at 36% which is the same as without your patch
14:47:04gevaertshm, maybe someone should check these numbers on non-sh
14:47:11*gevaerts gets his Clip
14:48:44pixelmamy M5 goes from 52% to 90% stack usage with a similar WPS that crashes the Ondio - it has some more viewport things though
14:49:22pixelmabut the nested conditional line should be the same
14:51:39 Join Acorn [0] (bcdf785d@gateway/web/freenode/ip.
14:52:30AcornIs it possible to stop the Clip+ OF from generating files and folders every time it gets a chance to boot?
14:52:32amiconnkugel: What CPU does your phone have that it only reaches 40% realtime with ape -c5000?
14:53:06amiconnOr is that plain C?
14:54:12kugel600MHz armv6, and yes
14:54:24kugellet me make another run with asm enabled
14:55:01bertrikAcorn, no, not that I know of
14:55:14n1sJdGordon: skin_render_playlistviewer uses a 1k stackbuffer, is static and called in one place so will likely get inlined into do_non_text_tags which is also called from one place and static so likely inlined into skin_render_line, add to that less than clever stack allocation and each recursive call to skin_render_line eats more than a k of stack
14:55:25amiconnHmm, v7 would be better, as it could then make use of neon
14:55:31 Join domonoky [0] (~Domonoky@rockbox/developer/domonoky)
14:55:47Acornbertrik: I have a vague recollection of seeing a solution somewhere.. possibly a hacked firmware.. can't find it anymore though
14:55:54amiconnMy n900 gets ~210% realtime (600MHz ARMv7), tested with the standalone tool only though
14:55:57kugelbut we build for armv5 currently
14:57:02amiconnv6 code should be almost twice as fast as the v5 version
14:57:36amiconnBut I guess it would need dynamic selection on android... if there are androids with a v5 cpu
14:57:50gevaertsn1s: oh, good catche
14:58:03kugelI don't know if there are any real armv5 androids
14:58:10kugelI doubt it but the ndk defaults to armv5
14:58:27gevaertsA few noinlines in that file may be useful then
14:59:29kugeleven the very first android phone has armv5 IIRC
15:00:57amiconnah ok
15:01:02kugel51.5% with asm
15:01:02amiconnThe G1?
15:02:35gevaertspixelma: could you try ?
15:02:46gevaertsIf n1s is correct, that should really fix things
15:03:28JdGordonoh bloody hell :p
15:03:29gevaertsI'm probably a bit overgenerous with the noinlines though. They're probably not all needed
15:03:36JdGordonthey arnt :)
15:03:56gevaertsJdGordon: it's a test patch :)
15:04:03amiconnHow does noinline affect stack usage?
15:04:15***Saving seen data "./dancer.seen"
15:04:40JdGordon1k local var
15:04:58gevaertsamiconn: if a stack-heavy leaf function gets inlined in its caller which is recursive, you're in trouble
15:05:22amiconnDoesn't it allocate the stack in the respective block only?
15:05:27amiconn(it == gcc)
15:05:50*JdGordon thought that untill recently also
15:05:50JdGordongcc == stupid :D
15:06:01pixelmagevaerts: on top or revert the other patch first?
15:06:16gevaertsIt should, but I've seen gcc allocate stacks for all blocks at the start of the function
15:06:19amiconnHmm, that's ondeed silly
15:06:25gevaertspixelma: this one is to svn
15:06:27amiconnOtoh, gcc being silly really isn't new :\
15:06:50 Join kazaik [0] (
15:06:51kugelimo that's a sensible optimization
15:06:55pixelmagevaerts: ok, will take a moment
15:07:24n1sskin_render_line allocates 1156 bytes of stack inits first instr on Coldfire at least, i can't read sh asm so i don't know how it behaves there
15:07:38gevaertsIt's sensible if one assumes huge stacks
15:08:13kugel99% of the stacks are huge, and even dynamically growing :)
15:08:46gevaertskugel: maybe on PCs, but I'm not sure if that's still true on sh :)
15:09:14kugelthese optimization mechanisms are generally independant of the backend architecture
15:10:49gevaertsJdGordon, pixelma: should I commit my partial early USB fix? I suspect the lack of status bar is really a separate issue which will need an independent fix
15:11:03n1sgcc 4.4 got a -fconserve-stack switch but that won't help here as sh and cf are still on older gcc
15:11:52amiconnMaybe it's time for migrating gcc for them?
15:12:14kugelawesome idea
15:12:20amiconn(needs testing, of course)
15:12:40amiconnThat still leaves mips, which uses 4.1.x iirc
15:12:44n1samiconn: yes i think so, coldfire testing with 4.4 went quite well when i did it last time, i'll try to pick that up after the release
15:14:14n1s4.4.5 was released recently too, but maybe we should just stick to one version
15:15:08kugelwe could change arm to gcc 4.4.5 too
15:15:17 Join Kitr88 [0] (
15:15:17JdGordongevaerts: go for it :) also, add the noinline to skin_render_playlistviewer which shuold be the only one that actually needs it
15:15:30kugelif everyone needs to re-run because of arch A we can change arch B too for free :)
15:15:50 Quit user890104 ()
15:16:15kugelis there a pragma or something to avoid inlining for the whole file? I think it makes sense because there's a lot of recursion there
15:16:48JdGordonwell, with the patch I gave before there isnt much
15:17:07pixelmayeah, success - with the usual stack build and the 3 level nested test.wps the stack usage difference was small enough to go unseen (48%), with my WPS it now goes to 54% :)
15:17:17JdGordonis there any real benefit with that patch now that it fixes the problem?
15:17:20pixelmano hang or crash
15:17:30JdGordonall glory to n1s
15:17:40JdGordonand hypnotoad
15:17:42CIA-7New commit by gevaerts (r28229): Add a "early_usb" argument to gui_usb_screen_run(), and don't do skin unloading/reloading in gui_usb_screen_run() in the early usb case. Fixes the ...
15:18:14pixelmagevaerts: yeah, justed wanted to say that no crash is worth it
15:19:11 Quit stoffel (Ping timeout: 250 seconds)
15:19:18gevaertsJdGordon: if you have a player with hardware USB, early USB is actually reasonably easy to test. Just put a sleep() in main.c just after shiw_logo()
15:19:24CIA-7r28229 build result: All green
15:19:31JdGordonI dont
15:19:32 Quit Kitar|st (Ping timeout: 260 seconds)
15:19:42JdGordonmy h300 is broken
15:19:51 Quit Kitr88 (Ping timeout: 264 seconds)
15:20:32gevaertsI committed too much...
15:20:48JdGordonhehe snuck that in :p
15:21:51CIA-7New commit by gevaerts (r28230): Revert accidental commit of skin_render.c
15:22:15gevaertsIf we only want one inline, we should do it properly :)
15:23:32CIA-7r28230 build result: All green
15:24:32bertrikhm, after doing a fresh ubuntu 10.10 install and running, ld and gcc point now to /usr/local/mipsel-elf/bin
15:25:01 Join Kitar|st [0] (
15:25:03gevaertsbertrik: your path shouldn't contain /usr/local/mipsel-elf/bin anymore these days
15:25:14JdGordonOK, so is worth doing? I'm not sure if the code ends up being cleaner or not
15:25:27JdGordonalso, I would like some testing to make sure sublines still work orrectly with it
15:26:56CIA-7New commit by gevaerts (r28231): Make skin_render_playlistviewer() noinline. This function uses lots of stack (around 1 kilobyte), and is called from a recursive function. gcc's stack ...
15:27:26kugelamiconn: yea, a lot faster with armv6 build and asm
15:28:29CIA-7r28231 build result: All green
15:29:35gevaertspixelma: re-testing r28231 at some point may be useful, since it now only has one noinline, so it's not exactly the same as the patch you tested
15:29:46gevaertsIt should be fine, but...
15:30:08kugelamiconn: 115% rt now
15:30:46pixelmagevaerts: will do
15:31:58 Join earcar [0] (
15:33:05 Quit GodEater (Read error: Operation timed out)
15:34:30JdGordonplease test the above paste...
15:37:48pixelmawhat do I have to keep an eye on?
15:40:01 Join domonoky1 [0] (
15:40:37*JdGordon -> zzz
15:41:09 Quit domonoky (Ping timeout: 252 seconds)
15:45:18 Quit JdGordon (Ping timeout: 264 seconds)
15:47:04 Join kugel_ [0] (
15:47:24 Quit kugel (Disconnected by services)
15:47:28 Nick kugel_ is now known as kugel (
15:47:34 Quit kugel (Changing host)
15:47:34 Join kugel [0] (~kugel@rockbox/developer/kugel)
15:48:20pixelmagevaerts, JdGordon (logs): SVN sees no stack usage in percent difference between WPS or not with my "heavy" WPS... it stays at 48%
15:48:49 Quit Acorn (Quit: Page closed)
15:48:59gevaertsperfect :)
15:49:47 Join GodEater [0] (~bibble@rockbox/staff/GodEater)
15:49:50pixelmaindeed and with the early USB crash also fixed that is quite a relief :)
15:51:12 Join kugel_ [0] (
15:51:34 Quit kugel (Disconnected by services)
15:51:38 Nick kugel_ is now known as kugel (
15:51:42 Quit kugel (Changing host)
15:51:42 Join kugel [0] (~kugel@rockbox/developer/kugel)
15:52:06kugelis there a way to compile without frame pointer? we pass -fomit-frame-pointer but gcc still seems to use it
15:53:52n1skugel: -fomit-frame-pointer should work and has in my experience worked
15:54:21n1sare you looking at disassembly?
15:54:22*pixelma wonders if the "Ipod freezes after a track skip" reports in the forums will now also go away - remembering that I got STKOVs on the M5 sometimes recently
15:54:28kugeln1s: yes
15:55:12n1skugel: objdump has %fp as an alias for the real register i think so even if a framepointer isn't used the register is used
15:55:27n1sat least it does so on coldfire
15:55:30kugelshould I dump the asm instead?
15:56:52kugelwe're building for shared libraries which also implies fpic (apparently), I don't actually know which options are on and which aren't
15:59:31 Join kugel_ [0] (
16:01:07 Join kugel__ [0] (
16:01:27 Quit kugel (Disconnected by services)
16:01:33 Nick kugel__ is now known as kugel (
16:01:37 Quit kugel (Changing host)
16:01:37 Join kugel [0] (~kugel@rockbox/developer/kugel)
16:01:59kugeln1s: going by the asm it uses fp (but I may be wrong)
16:02:14kugel@ args = 0, pretend = 0, frame = 64 @ frame_needed = 0, uses_anonymous_args = 0
16:02:17kugelbelow it stacks fp
16:03:55 Quit kugel_ (Ping timeout: 245 seconds)
16:06:22kugelsome functions have frame_needed = 1
16:07:58CIA-7New commit by bertrik (r28232): Fix for FS #10097 - Sometimes keys do work after exiting plugins. ...
16:08:19*bertrik missed a "not"...
16:08:43kugelbertrik: doesn't that possible introduce other bugs?
16:09:13bertrikkugel, possibly, but I didn't notice any
16:09:40CIA-7r28232 build result: All green
16:11:20kugelbertrik: can't you just close it? one can always reopen or open a new task
16:12:14bertrikhm, yeah, might as well just close it.
16:12:20*kugel thinks keeping tasks open makes little sense if a fix is commit, it just keeps the ticket count high because people tend to forget about it
16:13:30gevaertsIt's also confusing if a similar bug appears later
16:13:52kugelI think this bug already has a number of duplicates
16:14:06gevaertsOn a similar not, I seriously dislike multi-issue tasks
16:14:20bertrikthis particular one was especially about problems when exiting *plugins*
16:14:45kugelI bet the others are fixed as well
16:14:46bertrikok closed
16:18:50*gevaerts wonders about that mpegplayer on greyscale ipod bug
16:19:05bertrikwhat mpegplayer on greyscale ipod bug?
16:19:20kugelbertrik: it exists! :)
16:19:35 Quit fxb__ (Remote host closed the connection)
16:19:37gevaertsFS #11653
16:22:01 Quit Topy44 (Ping timeout: 272 seconds)
16:22:33 Join helmut [0] (
16:24:14CIA-7New commit by teru (r28233): use different function to resize bitmap for greylib. ...
16:24:16kugelnot sure how r27902 could cause it
16:24:19helmuthi. thanks for all the effort put into rockbox (and the manuals!). just one question: how to reboot the original firmware (back into rockbox)?
16:24:34helmutuhm. I should have said that I use an ipod video 30G.
16:25:27 Quit Highlander (Quit: Quitte)
16:25:30gevaertshelmut: I know of three ways: hard reset (menu-select IIRC), wait a few weeks, or write to the firmware partition. That last one is not recommended :)
16:25:51helmutdang this is actually a faq entry. I only looked at the wrong place.
16:25:58helmutsorry. the documentation is simply better than me.
16:26:07CIA-7r28233 build result: All green
16:27:56 Quit Evilnick_ (Quit: TTFN)
16:30:15 Join kugel_ [0] (
16:30:37 Quit kugel (Disconnected by services)
16:30:41 Nick kugel_ is now known as kugel (
16:31:25 Join anewuser [0] (anewuser@unaffiliated/anewuser)
16:31:38 Join kugel_ [0] (
16:31:58 Quit kugel (Disconnected by services)
16:32:04 Nick kugel_ is now known as kugel (
16:32:08 Quit kugel (Changing host)
16:32:08 Join kugel [0] (~kugel@rockbox/developer/kugel)
16:33:17helmutyeah. it can play my ogg vorbis files now! :-)
16:34:09CIA-7New commit by teru (r28234): correct comment in configfile.h, FS #11292 by Chris Savery.
16:35:42CIA-7r28234 build result: All green
16:39:47kugelI want to enable a subset of plugins for android, any idea how to do it best?
16:40:27kugelwithout making SOURCES/SUBDIRS a complete mess I mean
16:40:42 Join Keith93 [0] (
16:42:28 Quit Keith93 (Client Quit)
16:43:43CIA-7New commit by kugel (r28235): Fix a few div0 cases forgotten in r27684 to enable enabling asm optimizations for android builds.
16:45:22CIA-7r28235 build result: All green
16:50:15 Quit krabador (Quit: Sto andando via)
16:50:32 Quit AndyI (Ping timeout: 272 seconds)
16:52:17 Quit DerPapst (Read error: Connection reset by peer)
16:52:44 Join kugel_ [0] (
16:53:01 Join stoffel [0] (
16:53:10 Quit kugel (Disconnected by services)
16:53:14 Nick kugel_ is now known as kugel (
16:53:18 Quit kugel (Changing host)
16:53:18 Join kugel [0] (~kugel@rockbox/developer/kugel)
16:53:51 Join DerPapst [0] (
16:55:53 Join Topy44 [0] (
16:57:17 Join kugel_ [0] (
16:57:39 Quit kugel (Disconnected by services)
16:57:43 Nick kugel_ is now known as kugel (
16:57:47 Quit kugel (Changing host)
16:57:47 Join kugel [0] (~kugel@rockbox/developer/kugel)
16:59:02 Quit teru (Quit: Quit)
17:02:15 Quit kugel (Ping timeout: 245 seconds)
17:04:18***Saving seen data "./dancer.seen"
17:07:18 Join kugel [0] (~kugel@rockbox/developer/kugel)
17:11:52helmutis it correct that mpegplayer does not support playing mp4 files?
17:19:50 Join panni_ [0] (
17:21:58helmutthanks. well ogg is better than nothing.
17:24:01 Join kugel_ [0] (
17:24:23 Quit kugel (Disconnected by services)
17:24:27 Nick kugel_ is now known as kugel (
17:24:31 Quit kugel (Changing host)
17:24:31 Join kugel [0] (~kugel@rockbox/developer/kugel)
17:25:18 Join fxb__ [0] (
17:27:53 Join kugel_ [0] (
17:28:15 Quit kugel (Disconnected by services)
17:28:17 Join kevku [0] (~kevku@2001:7d0:0:f000::135d)
17:28:19 Nick kugel_ is now known as kugel (
17:28:23 Quit kugel (Changing host)
17:28:23 Join kugel [0] (~kugel@rockbox/developer/kugel)
17:29:00kugelUnhelpful: ping
17:29:14 Join Staphylo [0] (
17:30:03kugelpictureflow is nice as well
17:33:55 Join kugel_ [0] (
17:34:17 Quit kugel (Disconnected by services)
17:34:21 Nick kugel_ is now known as kugel (
17:34:25 Quit kugel (Changing host)
17:34:25 Join kugel [0] (~kugel@rockbox/developer/kugel)
17:40:19 Join robin0800 [0] (
17:42:22 Quit fxb__ (Remote host closed the connection)
17:43:55 Join s1gma_ [0] (~d.d.derp@
17:44:38 Quit factor (Quit: Leaving)
17:47:15 Quit _s1gma (Ping timeout: 245 seconds)
18:00:29 Join stripwax [0] (
18:01:59 Join Judas_PhD [0] (
18:02:30 Quit anewuser ()
18:04:14 Join kugel_ [0] (
18:05:49 Quit robin0800 (Remote host closed the connection)
18:05:57 Join kugel__ [0] (
18:06:00 Quit kugel (Ping timeout: 245 seconds)
18:06:07 Nick kugel__ is now known as kugel (
18:06:21 Quit kugel (Changing host)
18:06:21 Join kugel [0] (~kugel@rockbox/developer/kugel)
18:09:06 Quit kugel_ (Ping timeout: 252 seconds)
18:10:21 Join krabador [0] (
18:10:35 Quit kazaik (Ping timeout: 245 seconds)
18:11:19 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean)
18:25:24 Join fxb__ [0] (
18:32:33 Quit markun (Read error: Connection reset by peer)
18:33:27 Join edboyer93 [0] (
18:35:28 Quit fxb__ (Remote host closed the connection)
18:39:29 Quit Zambezi (Changing host)
18:39:29 Join Zambezi [0] (Zulu@unaffiliated/zambezi)
18:40:01kugeldoes anyone object kinetic scrolling, should I put it on fs before committing?
18:43:55n1sdoes it affect non touch targets?
18:44:06 Join markun [0] (
18:44:12 Quit markun (Changing host)
18:44:12 Join markun [0] (~markun@rockbox/developer/markun)
18:50:29pamaurykugel: on which devices is it enable by default ? Does it change something in other modes ?
18:51:25 Quit kugel (Ping timeout: 245 seconds)
18:51:27 Join kugel_ [0] (
18:51:38 Nick kugel_ is now known as kugel (
18:51:52 Quit kugel (Changing host)
18:51:52 Join kugel [0] (~kugel@rockbox/developer/kugel)
18:52:26kugelnobody else is working on touchscreen so I'm not sure if there's a point in putting it on fs before
18:52:39kugelpamaury: it's enabled when the absolute point mode is used
18:54:03pamauryOn which targets did you test it ? Did someone else tested it ?
18:54:03 Quit kugel (Read error: Connection reset by peer)
18:54:31pamauryhe didn't want to answer :)
18:56:45pixelmahe has ISP problems today
18:57:32pamauryyeah I know, I will wait for him appearing again
18:58:56LloreanI wonder if it might make sense to include is as an option for touch-scroll targets like iPods and H10 (and maybe Gigabeat F?)
19:00:00 Join kugel_ [0] (
19:00:17 Nick kugel_ is now known as kugel (
19:00:22 Quit kugel (Changing host)
19:00:22 Join kugel [0] (~kugel@rockbox/developer/kugel)
19:00:58pamaurykugel: Was kinetic tested by you or others and on which targets ?
19:01:01kugelpamaury: I'm testing on my phone and the sdl app
19:01:20kugelJdGordon likes it, [sko] tested it as well
19:01:40kugelLlorean: quite possibly. but IIRC the touchpad on the h10 doesn't work?
19:01:49Lloreankugel: What do you mean "doesn't work"?
19:02:07kugelIIRC only the top edges work, not the area between (for wiping)
19:02:20kugeltop & bottom edges
19:02:34LloreanI think the whole pad works, it's just the way current scrolling is implemented
19:02:44LloreanRather than wiping repeatedly, you just need to touch the edges and hold.
19:02:49kugelI may be wrong
19:03:50LloreanWell, I don't know for certain either. But I don't remember it being "unable to be used" just "unused"
19:03:55*Llorean has to go now.
19:03:58 Quit Llorean (Quit: Leaving.)
19:04:12*pamaury just sent a mail to the ml and calls for clip+/fuzev2 testers !
19:04:20***Saving seen data "./dancer.seen"
19:07:43 Quit Topy44 (Ping timeout: 265 seconds)
19:17:39n1sdoes the nano2g shutdown gracefully on low battery?
19:25:22 Join fxb__ [0] (
19:33:35 Quit s1gma_ (Quit: Leaving)
19:38:05n1sif it does, i think FS #10876 can be closed
19:40:15GodEaterI think the touch pad on the H10 is "not working" in the same way as the cross on the gigabeat F is "not working". I.e. we know exactly how to use all its sensors, we just don't bother because previously our scrolling method has not required them.
19:55:15 Join leavittx_ [0] (~lev@
19:58:24 Join stripwax__ [0] (
19:59:45 Quit stripwax (Ping timeout: 245 seconds)
20:02:33gevaertskugel: apparently mpegplayer broke on ipod mini 2G (and probably ipod 4G, possibly others) around r27900
20:03:19gevaertsThis is the "small api for loading code" series of commits
20:05:07kugelgevaerts: as I already said, I have no idea how that could happen (considering it only hits a few targets)
20:05:27 Join [sko] [0] (~sko]
20:05:37kugelmaybe a dual core thing but I copy&pasted from plugin loading so I didn't actually change anything
20:05:37gevaertsOK, so you don't have hints on how to fix it
20:06:15kugelyou could look if a cpucache_commit/_discard call got lost somewhere
20:07:00gevaertsah, I get an undefined instruction now...
20:07:40 Quit stripwax__ (Ping timeout: 245 seconds)
20:08:11rasherkugel: where do you hide your apks?
20:08:51kugelI don't hide them
20:08:54kugelthey're on the wiki
20:11:12*rasher considers anything that's not "announced regularly on IRC so I can grep for them" as hidden
20:11:15 Quit stoffel (Remote host closed the connection)
20:12:46kugelI mentioned it more than often
20:12:59kugelthey're linked AndroidPort
20:13:33 Quit Dreamxtreme (Ping timeout: 240 seconds)
20:14:29rasherYeah, found them :)
20:15:18rasherkugel: scrolling is nice now!
20:16:37 Join Dreamxtreme [0] (~Dreamxtre@
20:16:44rasherMaybe the list code could introduce padding? I'd like that, to give me a larger target for selecting
20:17:03kugelthat's not a bad idea
20:18:45rasherProbably shouldn't be set by default. People would probably think it looks weird, or wastes space. Maybe
20:18:54rasherWell it does waste space, obviously
20:20:47kugelbut that's what they all do so it's expected
20:21:40linuxstbkugel: What svn revision are those apks linked from the wiki? Or are they updated frequently/automatically?
20:22:04kugelI build them ~22h ago
20:22:27rasherBut I really like the kinetic scrolling
20:23:41linuxstbkugel: What I really meant to say was that the wiki page doesn't mention what svn revision they are, or how frequently they are updated, or even if they are compiles from plain svn or have uncommitted patches.
20:23:56kugelis that a problem?
20:24:23rasherWell it'd be nice to have some idea what you're getting, I'd say
20:24:26linuxstbI just suggesting that information would be useful. There's also the GPL issue.
20:25:23kugelso I could add "They're updated infrequently from arbitary svn revisions and may or may not have WIP patches applied"
20:25:53kugelthe source is usually available in one of the branches on my git repo
20:26:30linuxstbThat's not that helpful if someone wants the source to a build they download from you. They don't even know it's you providing them...
20:26:47 Quit [sko] (Read error: Connection reset by peer)
20:29:20kugelthat's boring. I take them off if you don't feel comfortable with how I handle it right now
20:30:10kugelthey're not there because they are a custom build or for my pleasure. they're there because I'm frequently asked for preview apks since the build system doesn't provide them
20:32:17gevaertskugel: do you have some idea about which targets have broken IRAM-using plugins?
20:32:44kugeluhm, no
20:33:06kugelI tried the changes on my e200 and it worked fine
20:34:29gevaertsApparently mini1g, mini2g and ipod4g are definitely broken
20:35:03gevaertsLooks like greylib+dualcore at first sight
20:40:18kugelmy e200 and clip work fine
20:40:48gevaerts-DFORCE_SINGLE_CORE doesn't help
20:44:37gevaertshm, maybe FORCE_SINGLE_CORE itself just doesn't work...
20:50:02rasherkugel: Eh, really? You're just as bound by the gpl as any random joe posting custom builds somewhere. At least add a bit more text explaining what they are..
20:51:40 Join [sko] [0] (~sko]
20:52:52kugela little text is fine
20:55:41 Quit dfkt (Quit: -= SysReset 2.53=- Sic gorgiamus allos subjectatos nunc.)
21:02:05 Join stripwax [0] (
21:02:21kugelstripwax: hey :)
21:04:21***Saving seen data "./dancer.seen"
21:08:58 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean)
21:09:22 Quit GeekShadow (Quit: The cake is a lie !)
21:11:24 Quit bmbl (Quit: Bye!)
21:19:55 Quit Horscht (Quit: Verlassend)
21:19:55 Quit Llorean (Quit: Leaving.)
21:30:34 Join _s1gma [0] (~d.d.derp@
21:32:30 Join bertrik_ [0] (~bertrik@rockbox/developer/bertrik)
21:32:30 Quit bertrik (Read error: Connection reset by peer)
21:36:53 Join saratoga [0] (9803c6dd@gateway/web/freenode/ip.
21:40:29 Quit Chronon_ (Ping timeout: 265 seconds)
21:40:29 Quit _s1gma (Quit: Leaving)
21:42:38saratogakugel: mp3 is probably slower with ASM because it spends most of its time in the hand written filterbanks, all of which are carefully scheduled for arm7
21:42:38saratogai bet newer ARM flavors are tremendously more efficient then armv4
21:42:38kugelsaratoga: did you see my mail on the ml?
21:42:38saratogaregarding the mdct?
21:42:38DBUGEnqueued KICK saratoga
21:42:38saratogaabove i meant scheduled for arm7tdmi, not armv7 :)
21:43:58saratogaunfortunately while i have a pretty good idea how the MDCT works, i don't understand anything about fpic or arm registers
21:44:14saratogaother then "arm has too few registers"
21:44:36kugelwell, the problem seems to be that the asm uses register that are used for by the host systme
21:45:01saratogayeah stripwax said those loops probably needed to be rewritten in pure asm i think?
21:45:42saratogafor android those asm operations (beyond the fft8/fft16 blocks) probably don't help much anyway
21:45:52saratogabut it would be really nice to fix them so we could get that patch into tremor
21:46:14saratogathe mdctlib is very arm7/arm9 optimized
21:46:31kugelwell, the flac and ape are accelerated vastly by the asm optimizations
21:47:05 Quit froggyman (Read error: Connection reset by peer)
21:47:08saratogaape has optimizations for arm11 and higher though which makes a huge difference
21:47:27n1si think most our arm asm is scheduled for arm7 so i't far from optimal on newer cores
21:47:40saratogai have no idea what flac does, it was optimized by preglow (i think) right around when i started on this project
21:48:06saratogaeventually we'll probbaly want to go through and redo both the mp3 filterbank and mdctlib in neon
21:48:11n1syeah, almost all the time in flac is spent in asm code afair
21:48:20saratogathe fft loops in the mdctlib could be made much, much faster in neon
21:48:34n1sneon is cool
21:48:57kugelarmv5/v6 have no neon
21:48:59saratogasince they're all "load a half dozen values, do a half dozen independent adds, store a half dozen values
21:49:21kugeland IIUC neon isn't a strict requirement for v7+ too (not sure with this one)
21:49:28saratogayeah but from now on DAPs are probably going to stay arm9e, and phones are always going to be Neon
21:49:34saratogaits not
21:49:42saratogabut so far no one has ever made a phone chipset with out it
21:50:02saratogathe only cortex line i've seen with neon is the Tegra 2 from nvidia, and its not used in phones
21:50:14saratoga"without neon" i mean
21:50:28 Join froggyman [0] (~seth@unaffiliated/froggyman)
21:50:34saratogai guess someday there could be tablets running rockbox without it though
21:50:53saratoganot sure its worth caring about battery life on a tablet
21:51:04saratogaIIRC most of those use 1-2 WATTS on the screen alone
21:51:18saratogasaving 2-3 mW on audio decode is unlikely to make a difference
21:51:19n1swe could even switch between versions for different arm ISA's runtime where it makes sense, like on android
21:52:07saratogain the long run we should probably go towards a system like ffmpeg where we have a few generic DSP functions implemented in the codeclib, and then at runtime we select which version we want to use
21:52:32gevaertskugel: makes mpegplayer work again on my mini
21:52:37n1sfrom a quick look that flac code has some stalls on arm11 at least, i don't remember whre arm9 stalls
21:52:39saratogae.g. mdct_window_neon
21:52:58saratogaarm9 is a 5 stage pipe so it doesn't stall much
21:53:18saratogabranches and multiplies on arm9e are 1 cycle stalls IIRC
21:53:21n1salso the test flac track decodes in about 3 seconds on the beast so optimizing thst for arm11 doesn't feel very important :)
21:53:36kugelgevaerts: strange
21:53:52kugelmaybe the memory barrier doesn't work?
21:53:58saratoganeon could massively accelerate mp3 decodeing too
21:54:13saratogaprobably like a factor of 2-3 faster then armv6
21:54:18n1ssaratoga: does it stall when using the result of a ldr in the following instr?
21:54:32saratogai don't think so, assuming its a cache hit
21:54:35saratogabut i'm not certain
21:54:37kugelgevaerts: or does it have sections that's not included in the bss?
21:54:53 Quit domonoky1 (Read error: Connection reset by peer)
21:54:55kugelsharedbss maybe?
21:55:03gevaertskugel: I'm now looking at addresses to see if that memset uses the correct values
21:55:24kugelthe memset values are a bit different to before IIRC
21:55:31saratogahmm let me look into that i can't remember the arm9e pipe that well
21:55:41kugelwell, I thought they're equivalent but maybe they're not
21:56:17kugeln1s: IIRC yes
21:56:44kugelIIRC a load takes 1c on it unless the next instr uses the result
21:56:45gevaertsThe code used to assume that everything outside the area loaded from the plugin file was bss or unused
21:57:03gevaertsNow it tries to clear just the bss bit
21:57:20saratoga"On an ARM926 you should always try leave one cycle, preferably two cycles after a load before you use the register. Leaving more than this can always help if you have enough registers to let you do it of course."
21:57:30saratoganot sure about arm9E though
21:57:39kugelyea but I looked at if there's anything after plugin_end_addr and IIRC there wasn't
21:58:35kugelsaratoga: arm926 is arm9e
21:58:45kugeloh wait
21:58:53saratogano iirc its arm9tdmi
21:58:58saratogabut yes arm names are stupid
21:59:30kugelarm9e is armv5 right? I recall it's about the same as arm9 in that regard
22:02:57n1syeah, according to the System Developer's Guide, the result of ldr is unavailable for 1 cycle on arm9E and arm9tdmi and 2 cycles on arm11
22:03:49saratogan1s: where did you find this, i just skimmed the whol emanual and can't find stall info for anything but the cache and tcm?
22:04:27n1sappendix D in arm system developer's guide
22:05:09n1sthe actual ldr instruction can take one or 2 c on the arm11 too
22:05:20saratogan1s: got a link?
22:05:28saratogaso stupid this isn't in the arm9e manual
22:06:30n1si did find a free download on some site but i can't remember which
22:07:31kugelsaratoga: ape is also a lot slower in a armv5 built (40% -> 52%)
22:07:40kugelthat was for c5000
22:07:56n1ssaratoga: this one maybe
22:08:31 Quit [sko] (Read error: Connection reset by peer)
22:11:25kugelgevaerts: plugin_end_addr is indeed the last thing in but there's some NOCACHE magic above
22:12:05gevaertskugel: there are two things I'm unsure about. The NOCACHE magic, and iram_copy being re-used for bss later on
22:12:19kugelanyway, it the nc* stuff should be between plugin_bss_start and plugin_end_addr if I read that correctly
22:12:45gevaertsit is, with a different alias
22:13:03kugelthe iram stuff is in the binary where the bss is later, only linked to a different address
22:13:19gevaertsyes, it *should* be fine, it's copied to IRAM first
22:13:54kugelif you don't do this you have a wasted gap between data section and bss after the code loaded
22:15:45kugelI'm not seeing what's wrong
22:16:25gevaertsCodecs don't seem to have issues either
22:21:54kugelgevaerts: does the map file show anything after plugin_end_addr?
22:23:21gevaertskugel: yes and no. .ncbss is after that, but at addresses that alias to addresses before plugin_end_addr
22:24:15gevaertsThe problem isn't that that memset() doesn't clear enough. Otherwise removing it wouldn't help
22:24:23kugelgevaerts: I think the alias counts. it looks like the PP hardware has uncached ram at a fixed offset after the cached ram
22:24:37gevaertsit does, yes
22:25:58kugelso, clearing the entire plugin buffer before loading helps even though it doesn't clear the parts of the bss where iramcopy stuff was
22:26:38 Quit fxb__ (Remote host closed the connection)
22:27:22kugelmaybe it needs another cache discard after the memset?
22:28:35gevaertscpucache_invalidate() or cpucache_flush()?
22:28:47kugelcpucache_discard() :)
22:28:52 Quit earcar (Quit: earcar)
22:29:07kugelhm that alias is not in the plugin api?
22:29:50kugelI'd try cpucache_invalidate() before the memset
22:30:15kugel(because it commits the cache, possibly making bss dirty again)
22:30:29gevaertsThat's there already, with the asm barrier in between
22:30:44kugelI suspect the problem is that the cop doesn't see that the cpu zeroes the bss
22:31:19kugelthat one isn't always executed but I suspect mpegplayer uses iram?
22:31:30gevaertsI doubt it actually. I tried a single-core build, and it also crashed
22:31:41kugelah right
22:31:52kugelI'd give it a try anyway
22:31:52gevaertsmpegplayer uses iram, yes
22:32:29gevaertswhat exactly? Another invalidate?
22:33:42kugelmaybe also one before the iram copying, perhaps the cop's cache trashes iram after it's been copied
22:34:21kugelhm, otoh the load_code code explicitely clears the cache of the other core so it shouldn't be much of a problem
22:34:26TheSevenS_a_i_n_t: did you find time to test my patch?
22:34:32kugeli.e. no idea what's wrong
22:37:25n1sTheSeven: do you think FS #10876 can be closed?
22:38:19gevaertskugel: seems to fix it
22:38:51TheSevenn1s: hopefully yes
22:39:03kugelthat'd only make sense if a single core build worked though
22:39:22gevaertsThere's always the possibility that I did something wrong there
22:39:31TheSeventhis apparently was a combination of it shutting down at a too low voltage triggering usual wsod problem
22:40:05n1si mean a lot of these issues have been fixed and it's an old report so maybe we should just close it or we could just stick in the ususal "Does this still happen to you?" and wait a couple of weeks first
22:40:09kugelgevaerts: directly before doesn't work?
22:40:09TheSeventhe charge curve and shutoff levels have been calibrated and according to several people the wsods generally have gone away
22:40:47kugelinvalidate() might also commit the cache, potentially discarding the memset partially before
22:40:49TheSevenalso, this report is about 10 months old
22:40:53gevaertskugel: actually, the memset tries to clear nocache RAM by writing to cached addresses...
22:40:59TheSevenwhatever it was, it has been fixed for sure
22:41:06gevaertsMy guess is that that's what was going wrong
22:41:44kugelthat sounds like a good guess
22:41:51n1sTheSeven: ok, will you close or should i?
22:41:54gevaertsAnd I really don't think rb->cpucache_invalidate();
22:42:13gevaertsAnd I really don't think rb->cpucache_invalidate(); asm volatile ("" ::: "memory"); rb->cpucache_invalidate(); makes much sense
22:42:23TheSevenn1s: i just killed it
22:42:44kugelyea, I thought about moving the other invalidate out of the if()
22:42:58n1sTheSeven: great
22:43:01gevaertsno point anymore now :)
22:43:10gevaertskugel: I think I'll commit this and ask the FS #11653 people to verify. Are there other FS tasks about this?
22:43:36kugelI didn't even know about fs#11653 :)
22:43:58gevaertsIt's not very old :)
22:44:12CtcpIgnored 1 channel CTCP requests in 0 seconds at the last flood
22:44:12*TheSeven threatens to just commit FS #11663 if nobody wants to test it
22:44:39kugelthat's the problem, I had subscribed to the new tasks rss feed until some weeks ago ;
22:45:13TheSeventhe clickwheel driver isn't used in the ipod bootloader, is it?
22:45:36TheSevenif you think this hunk might break something, please speak up:
22:45:36TheSeven+#ifndef BOOTLOADER
22:45:37TheSeven backlight_hold_changed(hold_button);
22:45:37DBUGEnqueued KICK TheSeven
22:45:41gevaertskugel: should we do the same in codec_crt0?
22:45:47CtcpIgnored 1 channel CTCP requests in 0 seconds at the last flood
22:45:47*pixelma is testing a lot but doesn't have a 2nd gen Nano
22:46:14TheSevenpixelma: I also want to make sure that it doesn't break the other generations as it's common ipod code
22:46:31TheSeveni have tested the nano2g myself, but i can't test the other ones
22:46:34kugelgevaerts: I think so, this once-at-load cache clears don't hurt IMO
22:46:34pixelmaI don't have an Ipod at all, the closest would be my c200 :)
22:46:48TheSevenhowever, that hunk is the only one that isn't inside a nano2g-specific ifdef
22:47:06TheSevenand the fact that it even compiled before tells me that it can't affect anything in theory
22:47:56TorneTheSeven: the PP ipod bootloader doesn't use the real wheel driver, no
22:49:28CIA-7New commit by gevaerts (r28236): Invalidate the CPU cache after clearing bss, to make sure that bss variables that are used via non-cached aliases don't read garbage. ...
22:50:09 Quit n1s (Quit: Lämnar)
22:51:07CIA-7r28236 build result: 14 errors, 0 warnings (gevaerts committed)
22:52:50CIA-7New commit by theseven (r28237): Commit FS #11663 by me - Patch: iPod Nano 2G Bootloader: Boot OF if MENU button is held
22:53:49CIA-7New commit by gevaerts (r28238): Guard the cpucache_invalidate() with proper #ifdefs
22:54:26CIA-7r28237 build result: 14 errors, 0 warnings (theseven committed)
22:54:54kugelI'd just removed ifdefs from the APIs, the cache functions have stubs in the core
22:55:01 Quit froggyman (Quit: Bye)
22:55:12gevaertskugel: you know these things, I don't :)
22:56:11CIA-7r28238 build result: All green
22:58:24 Join froggyman [0] (~seth@unaffiliated/froggyman)
23:01:27pixelmalooks like a nice bug fixing day. Thanks all involved
23:02:51 Quit froggyman (Client Quit)
23:03:33*pamaury makes a new call for testers and redirect them to FS #11664 (amsv2 usb !)
23:04:24***Saving seen data "./dancer.seen"
23:05:19 Join froggyman [0] (~seth@unaffiliated/froggyman)
23:05:58 Quit krabador (Quit: Sto andando via)
23:10:50hondzapamaury: do I have to replace the bootloader to test it?
23:11:28pamauryjust the firmware, should be dead simple
23:11:49hondzaok, will try
23:12:53 Join drizztbsd_ [0] (~quassel@unaffiliated/drizztbsd)
23:13:13 Quit drizztbsd (Ping timeout: 260 seconds)
23:19:40 Quit bertrik_ (Quit: :tiuQ)
23:25:01 Join krabaodr [0] (
23:26:04 Nick krabaodr is now known as krabador (
23:27:14 Quit panni_ (Read error: Connection reset by peer)
23:27:37 Join wodz [0] (
23:27:38 Join panni_ [0] (
23:28:10wodzgevaerts: does your commit fix greylib on dualcore PP or something else?
23:29:17 Join Luca_S [0] (
23:30:12Luca_Spamaury: I will be able to test your usb patch tomorrow (9 hours from now), or right now if you can provide me a build somewhere
23:30:20Luca_S(forgot to say: on fuzev2)
23:30:39 Quit drizztbsd_ (Remote host closed the connection)
23:30:51 Join BHSPitMonkey [0] (~stephen@unaffiliated/bhspitmonkey)
23:32:07pamauryLuca_S: I prefer that build it by yourself if it's not a problem, 9 hours will not change much anyway :)
23:32:25 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon)
23:32:27 Join drizztbsd [0] (~quassel@unaffiliated/drizztbsd)
23:33:50Luca_Sdon't know if you're interested, however when using plugging usb with cpu frequency switching it always fails with PANIC Wrong Architecture (0)
23:35:16pamaurywith frequency switching ? It is a patch from flyspray ? It probbaly means a wrong clock frequency and thus the usb controller doesn't start
23:36:01Luca_Syes, it's on FS. let me find the FS number
23:36:47Luca_SFS #11297
23:36:51pamauryI never tested it, I think funman is more likely to know why, I don't really understand the way the usb clock is setup, it's reverse-engineered anyway
23:37:30 Quit drizztbsd (Remote host closed the connection)
23:38:48Luca_Susb is clearly more important, especially since frequency switching doesn't seem to have dramatic effects
23:39:29 Join drizztbsd [0] (~quassel@unaffiliated/drizztbsd)
23:41:10pamaurya possible explaination is that with the current setting, the usb clock is linked to the clock of which the frequency changes, thus changing the usb core frequency
23:41:53pamaurythe strange this is that I'm pretty sure the usb code boosts on init, so the frequency should be stable over a usb connection
23:41:57 Quit drizztbsd (Remote host closed the connection)
23:49:17 Join drizztbsd [0] (~quassel@unaffiliated/drizztbsd)
23:49:40 Join kugel2 [0] (
23:49:41 Quit kugel (Disconnected by services)
23:49:42 Quit kugel2 (Client Quit)
23:49:48 Quit drizztbsd (Remote host closed the connection)
23:49:57 Join kugel [0] (~kugel@rockbox/developer/kugel)
23:50:48hondzapamaury: hm, tried it. mixed results on my clip+. with the first patch it fails sometimes as expected. with the second, doesn't fail as much but two times it "froze", as in it's stuck in main menu (which is weird) or the "usb cable screen". the menu cannot be navigated and kernel says "device not accepting address 19, error -32". Cannot reproduce it now :/
23:51:35pamaurystrange, it never happened to me
23:51:48 Join drizztbsd [0] (~quassel@unaffiliated/drizztbsd)
23:52:09pixelmawodz: is it possible that your MAS cleanup patch breaks hwcodec sims?
23:53:00 Quit kevku (Quit: KVIrc 4.0.2 Insomnia
23:55:38 Join robin0800 [0] (
23:56:17 Quit krabador (Ping timeout: 276 seconds)
23:58:13pamauryhondza: can you report your experiment in FS ?

Previous day | Next day