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-02-09

00:00:52 Quit dfkt ("-= SysReset 2.53=- Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn.")
00:02:07obarrielThank you saratoga, I had already seen but I wasn't aware that with >1gb it didn't boot.
00:02:44saratogaobarriel: it will boot with >1GB but unless you make sure that the .rockbox folder is in the first 1GB entirely, it won't boot far
00:03:07saratogasince you can't boot if you can't read the OF
00:03:09saratogasorry OS
00:04:14obarrielthank you saratoga, I understand know
00:05:30saratogaalso, I really think we should add a proper malloc to the codec lib for vorbis [and maybe flac], is there a very simple, lightweight one that is recommended?
00:06:20linuxstbsaratoga: Why flac?
00:07:37midijunkiemm, I have a 8gb fuze and I filled the intern storage to aprox. 80%. then installed the bootloader+rbx fw, and it boots without problem
00:07:52Unhelpfulsaratoga: do they do a lot of *freeing* of temp space, and in weird order? one that doesn't know how to compact memory wouldn't be hard...
00:08:37linuxstbsaratoga: BTW, have you seen this page?
00:08:58amiconnUnhelpful: You cannot compact memory without an mmu. You can only try to keep fragmentation low, but you cannot avoid it
00:09:36Unhelpfulwe have some targets with an mmu, but messing with it from codecs or plugins just for their own use would be a big pain :/
00:10:17amiconnmalloc itself is a pain, imo
00:11:02amiconnSometimes I think that it'd help if we would have malloc for codecs and plugins, but it actually won't.
00:11:23 Part [RsK]Topher
00:12:02 Quit domonoky1 (Read error: 104 (Connection reset by peer))
00:14:38 Join clperez [0] (
00:15:03 Quit clperez (Client Quit)
00:15:57 Join akur [0] (
00:16:05 Quit casainho ("ChatZilla 0.9.84 [Firefox 3.0.5/2008121622]")
00:17:18 Part akur
00:18:01saratogalinuxstb: sorry FAAD not FLAC
00:18:11saratogaI am sick and am mixing up my words frequently
00:18:20 Quit taylor__ ("Leaving")
00:19:06saratogaUnhelpful: funny you should mention compaction, I spent probably an hour today thinking about that before remembering that moving physical memory around when you don't have virtual addresses works poorly
00:19:27 Quit freqmod_qu (Read error: 54 (Connection reset by peer))
00:20:02saratogathe problem with fixing flac is that the amount of memory allocated various enormously depending on the codec version and bitrate
00:20:22linuxstbflac? ;)
00:21:15 Join freqmod_qu [0] (i=quassel@2001:700:300:1430:213:d3ff:fee9:5ed0)
00:22:38 Quit obarriel ("CGI:IRC")
00:23:02 Quit nibbler_ ("Ex-Chat")
00:24:29saratogai think if you statically allocated the worst case memory for all buffers it'd probably be several MBs
00:24:35saratogasorry Vorbis
00:24:40 Quit itcheg (" ajax IRC Client")
00:25:07***Saving seen data "./dancer.seen"
00:25:11 Join itcheg [0] (i=62db4767@gateway/web/ajax/
00:29:29linuxstbsaratoga: The point of a "proper" malloc is that there is a working free. Does vorbis need that?
00:29:51saratogalinuxstb: yes it does
00:30:02saratogait tries to free a lot of memory, hundreds of KB worth
00:31:52linuxstbYes, but does it _need_ to?
00:31:54saratogai think typical non-floor0 vorbis files don't actually need a lot of memory, they just malloc and free a lot and we don't handle that well at all
00:31:58 Join obarriel [0] (n=544df54c@gateway/web/cgi-irc/
00:32:41saratogalinuxstb: as I understand it, vorbis memory usage is not well defined at all, and so the encoder can request almost any size it likes for certain buffers during decoding
00:33:11saratogawhile we might reasonably remove some mallocs, I think actually statically allocating everything would be much worse then having a real malloc
00:33:27linuxstbLet's just drop vorbis as being a badly designed codec then ;)
00:33:41saratogasince different vorbis files don't even necessarily need the same buffers, let alone the same sizes for them
00:33:44 Nick JdGordon|zzz is now known as JdGordon (n=jonno@rockbox/developer/JdGordon)
00:34:07saratogaand the number of malloc calls can differ by hundreds between files
00:35:22 Quit flydutch (Read error: 104 (Connection reset by peer))
00:36:44obarrielcool!, now it works
00:37:40saratogaanyway, if theres some tiny malloc library with a remotely efficient free, it'd be a good choice here
00:37:50saratogawe'd save a couple hundred KB worst case in vorbis
00:38:49 Quit rasher (Read error: 110 (Connection timed out))
00:40:08saratogalooks good, plus i know who to bug with questions
00:41:32 Join miaoling [0] (
00:41:41 Quit miaoling (Client Quit)
00:42:27LloreanHas a very descriptive changelog, there.
00:42:43 Quit MethoS- (Remote closed the connection)
00:44:04 Quit bertrik (Remote closed the connection)
00:44:52 Join rocko [0] (
00:47:26 Quit saratoga ("CGI:IRC (EOF)")
00:48:16 Quit Thundercloud (Remote closed the connection)
00:48:56 Join Thundercloud [0] (
00:50:37 Join cool_walking_ [0] (
00:51:58 Join z35 [0] (
00:55:46 Join Dillizar [0] (n=asdas@
00:56:08Dillizaris there a rockox for gogear?
00:57:20scorche|shthere is not, but i believe a port is in progress for some gogear devices
00:58:57Dillizarthanks cuz gogear has a lot of problems with linux i have found some thing called gnomad2 it works but still!
01:00:00Dillizarscorche|sh where can i see the list of the gogear devices! i have hdd6230 do ya know?
01:00:17scorche|shDillizar: in the might be prudent to search a bit..
01:00:45scorche|shinformation on new ports can also be found in the corresponding thread for your device in the new ports forum
01:00:53 Quit jhMikeS (Nick collision from services.)
01:00:59 Join jhMikeS [50] (n=jethead7@rockbox/developer/jhMikeS)
01:01:28 Quit tessarakt ("Client exiting")
01:03:02 Part unstable
01:04:05 Join drugdealerontor [0] (i=drugdeal@gateway/tor/x-0448144e993ac176)
01:08:10 Quit jhMikeS (Read error: 104 (Connection reset by peer))
01:08:27 Join jhMikeS [50] (n=jethead7@rockbox/developer/jhMikeS)
01:10:11Dillizarscorche|sh can rockbox make your player to be not a MTP so the linux can find it as a regular usb
01:10:28Dillizarif you know what i mean
01:11:33fleshTHto be an actual USB storage device rather than MTP (which is the way it should be imo)
01:12:23linuxstbDillizar: It depends on the hardware, but Rockbox has managed that on all targets so far.
01:13:27 Join advcomp2019_ [0] (n=advcomp2@unaffiliated/advcomp2019)
01:13:39 Quit advcomp2019 (Nick collision from services.)
01:13:41 Nick advcomp2019_ is now known as advcomp2019 (n=advcomp2@unaffiliated/advcomp2019)
01:13:41 Quit obarriel ("CGI:IRC (EOF)")
01:24:30 Nick Dillizar is now known as LaGeek (n=asdas@
01:35:07 Quit nuonguy ("This computer has gone to sleep")
01:41:26LaGeekso as i can read! i can mix all the rockboxes and make one for my player?
01:41:38 Quit MTee (Read error: 110 (Connection timed out))
01:46:39 Join LambdaCalculus37 [0] (n=rmenes@rockbox/staff/LambdaCalculus37)
01:47:52 Quit yhuang (Remote closed the connection)
01:55:04*amiconn wonders whether it'd be better to trade some speed for free ram in the screendump function
01:56:50 Quit buk_ (Read error: 110 (Connection timed out))
01:56:59amiconnScreendump isn't exactly a major feature...
01:58:49JdGordonseems reasonable to me
02:00:09 Quit perrikwp (" ajax IRC Client")
02:01:06 Quit Thundercloud (Remote closed the connection)
02:10:28JdGordondoes the WPS let you display more than 1 subimage from any image at the same time?
02:12:04 Quit LaGeek ()
02:16:31JdGordonI would have thought you could.. but the code seems to suggest that you can only do that if each is in a seperate viewport!
02:16:44 Quit BHSPitLappy (Remote closed the connection)
02:25:11***Saving seen data "./dancer.seen"
02:25:20 Join djEMPATH [0] (
02:25:20 Quit Empathy`afk (Read error: 104 (Connection reset by peer))
02:26:39 Quit djEMPATH (Read error: 104 (Connection reset by peer))
02:31:37 Quit QuickStart (Remote closed the connection)
02:32:11 Join rasher [0] (
02:36:48 Join nuonguy [0] (
02:44:50 Quit z35 (Read error: 104 (Connection reset by peer))
02:45:12 Quit midijunkie ("?(???~~)?")
02:46:00 Quit moos ("Rockbox rules the DAP world")
02:47:39 Quit LambdaCalculus37 ("Fwump")
02:49:18 Join saratoga [0] (n=9803c6dd@gateway/web/cgi-irc/
02:50:24 Quit Nico_P (Remote closed the connection)
02:51:34 Join z35 [0] (
03:04:25 Join goffa_ [0] (n=goffa@
03:05:57 Join perrikwp [0] (i=18ac0c41@gateway/web/ajax/
03:06:31 Join buk_ [0] (
03:11:33 Join Rob2222 [0] (
03:11:34 Quit Rob2223 (Read error: 104 (Connection reset by peer))
03:13:19 Join Darksair [0] (n=user@
03:14:48 Quit goffa (Read error: 110 (Connection timed out))
03:19:56Unhelpfulamiconn: a pluginlib malloc would at least be useful for porting some applications to rockbox. i think there's at least *some* value in trying to keep the codebase compatible with upstream in such cases, not so much to minimize initial porting effort, but to minimize the repeated effort when there are changes upstream that we want to merge.
03:33:59 Join safetydan [0] (n=deverton@rockbox/developer/safetydan)
03:34:42 Join BHSPitMonkey [0] (n=stephen@unaffiliated/bhspitmonkey)
03:35:04safetydanthe lua patch I started ages ago needed a malloc implementation
03:35:12safetydancan't remember what I ended up using though
03:36:49safetydansaratoga: ah, here its. dlmalloc
03:39:14Unhelpfuldoesn't one of uclibc or busybox have a selection of mallocs, for varying degrees of complexity?
03:42:59saratogaI've looking into using Bagder's malloc now
03:43:43Unhelpfulsafetydan: no, i've built both by hand, i know *one* does, i just can't recall which.
03:44:10saratogaon a side note, a friend translated the moonshell blog posts about rockbox:
03:45:00 Join Darksair` [0] (n=user@
03:45:18saratogashame about the language barrier, these guys would be great to absorb into Rockbox
03:45:35safetydanUnhelpful: doesn't busybox just use dietlibc? so it's probably uclibc that has the multiple malloc implementations
03:46:22Unhelpfulit seems to me like a libc feature, too, and i'm pretty sure BB bulds against diet- uc- or g- these days.
03:54:59 Quit Darksair (Read error: 110 (Connection timed out))
03:55:34 Quit __lifeless (Read error: 110 (Connection timed out))
04:14:30 Join blkhawk- [0] (
04:14:30 Join lee321987 [0] (
04:16:08lee321987does enabling Sansa c200 USB transfer still require altering the make file?
04:17:25saratogalee321987: you can edit the make file or any of the config files
04:17:42saratogai think theres a wikipage explaining it
04:18:36lee321987saratoga: the reason I ask is because I'm getting bugs, but didn't know if I should file a normal bug report, since I had to change my make file to enable these bugs.
04:19:12saratogayou probably should not report bugs that do not occur with USB disbaled
04:19:34saratogathough its hard to imagine what you could change in the makefile that would cause problems elsewhere
04:19:50saratogawhile still being able to compile
04:20:32lee321987all I changed was to enable USB transfer
04:20:53lee321987but I wouldn't be encountering these bugs if I hadn't
04:20:55saratogawhat problems do you have?
04:22:34Unhelpfuldid you build your compilers with the rockboxdev script?
04:23:16lee321987after disconnecting (the connection was through RB) resume playback just sits at song time "00:00", and selecting a new file to play through the 'Files' menu has the same result. Only if I open a bookmark does playback resume. Also....
04:23:52lee321987....twice I have disconnected and right after that I get a "Data Abort" code, and have to do a hard reset.
04:24:10 Quit Dieterbe (Read error: 60 (Operation timed out))
04:25:13saratogado you get a lot of bus resets while using USB?
04:25:14***Saving seen data "./dancer.seen"
04:25:35lee321987Unhelpful: Me? I'm using Cygwin (installed from local copies that I used Cygwin to download a few months ago)
04:26:01lee321987how would I know if I had a bus reset?
04:26:14saratogai'm actually not sure in cygwin
04:26:27lee321987Windows "Disconnect" sound?
04:29:35lee321987Is there a way to get a message to the dev who commited r19911 (Toni)
04:30:26saratogaassuming its about 19911, I would post in the FS entry about it
04:30:46saratogapresumably thats why he linked it in the commit message
04:31:25 Quit blkhawk (Read error: 110 (Connection timed out))
04:31:28 Nick blkhawk- is now known as blkhawk (
04:31:56lee321987you mean 8663?
04:33:14 Part lee321987
04:33:37 Nick fxb is now known as fxb__ (
04:40:56 Join Barahir_ [0] (
04:47:46 Quit miepchen^schlaf (Read error: 110 (Connection timed out))
04:52:51 Quit itcheg (" ajax IRC Client")
04:57:39 Quit Barahir (Read error: 110 (Connection timed out))
04:58:34 Join HBK- [0] (
05:16:13 Quit HBK (Read error: 110 (Connection timed out))
05:18:34 Quit Horschti ("Verlassend")
05:25:06 Join Dieterbe [0] (
05:34:12 Part safetydan
05:35:40 Quit rocko ("Leaving")
05:45:38 Quit drugdealerontor (Remote closed the connection)
05:48:22 Join drugdealerontor [0] (i=drugdeal@gateway/tor/x-c1c4d5eeea354d4c)
06:11:56 Join Eggbertx [0] (
06:12:38Eggbertxhey does anyone know if theres a flash player plugin for rockbox for arm-elf cpus?
06:13:13 Join bmbl [0] (n=Miranda@unaffiliated/bmbl)
06:13:27scorcheall plugins that essentially work are included with rockbox
06:14:11Eggbertxok then is there an open source file type library for swf that i can make a player out of and port to rockbox?
06:14:32scorchenot easily, i would imagine, but feel free to try..
06:15:37Eggbertxhow hard would it be (with code modification, cross compilation etc) to port windows or ubuntu based programs to rockbox?
06:16:35Eggbertxi know they did something like that with mspaint
06:17:00scorche.........a lot of work
06:17:50Eggbertxdoes rockbox code use file type libraries similar to windows code?
06:17:52scorcheRockbox is not a standard multi-purpose operating is written from scratch to run on portable embedded devices with not near the type of power your computer has and that lack things like an MMU, FPU, etc
06:18:30Eggbertxwell there goes that idea
06:18:46Eggbertxi guess that also explains y the rockboy is glitchy
06:19:02scorchedefine "glitchy"
06:19:21scorchethough no matter how you define it, i imagine it wouldnt explain that..
06:19:32Eggbertxframe skippy
06:19:38Eggbertxactually arm has mmu
06:20:42scorche"frame skippy"?...i dont understand..are you talking about playing a video?
06:20:58scorchenot near all of our devices have an mmu
06:22:08Eggbertxif i set the frameskip to 0 its really slow, and if i set it to 6 it skips the frames (obviously). either way the audio sounds weird
06:22:24Eggbertxlike its skipping parts of the audio
06:22:27scorcheand arm doesnt "have an MMU" may have some similar facilities, but not like your computer....we statically define most things anyway
06:23:03scorcheand how did you format your video?
06:23:58scorcherockboy is just an is expected that its reproduction is not going to be perfect in its current condition
06:25:18***Saving seen data "./dancer.seen"
06:31:18 Quit Eggbertx ("ChatZilla 0.9.84 [Firefox 3.0.6/2009011913]")
06:36:42 Quit fdinel ("Miranda IM! Smaller, Faster, Easier.")
06:44:46saratogatremor has a function that returns a pointer to whatever block was most recently malloced . . .
06:45:09saratogaapparently tomal added it, called it once, and then immediately discarded the value
06:49:05JdGordonits one of those thingies which doesnt seem to do anything... but remove it and everything breaks!
06:51:01saratogatomal went through and added a bunch of temp malloc calls for buffers that he could see were about to be freed after one use
06:51:08saratogabut he only did a fraction of them
06:51:15saratogawhy not just add a real free then . . .
07:00:37JdGordonran out of time maybe?
07:13:29saratogaFS #9885 - Add malloc library to codeclib
07:20:15 Join rossy [0] (
07:20:42rossymy H10 died :(
07:21:26rossyany advice on how to fix it?
07:24:01rossyit won't mount in windows or linux
07:25:25fleshTHis it powering on, or just not showing up?
07:26:02rossyit powers on and displays an error about system files not being found
07:26:18rossywhen its plugged in it refuses to mount
07:27:02rossydmesg says unable to read partition table
07:27:06tmztscorche: none of the targets have mmu?
07:27:18 Quit CaptainKewl (Read error: 110 (Connection timed out))
07:27:48scorchei didnt say none do, but we do not use an MMU on any of them
07:28:13scorche(as far as i recall, anyway)
07:28:23saratogatmzt: most arm9 and above have an MMU, so thats the gigabeats, and some upcoming targets
07:28:35saratogaobviously we have no use for it though
07:28:36advcomp2019rossy, sounds like you need a new hard drive but i am not sure since i do not have one
07:28:48rossyah, ok
07:33:08 Quit saratoga ("CGI:IRC (EOF)")
07:35:17 Quit z35 ("Leaving")
07:35:27rossyanyone know how to dissasemble an H10?
07:36:48 Join n1s [0] (n=nils@rockbox/developer/n1s)
07:43:07 Quit HellDragon (Read error: 60 (Operation timed out))
07:43:13rossyhaha, i found that but thats for the 20GB version, i have a 5/6GB
07:44:54scorchedid you try doing it that way?
07:46:44rossytheyre the same up to a point
07:51:10rossyah, its a segate 6GB ST1 drive
07:51:19rossyCompactFlash Type II
07:56:48 Join MTee [0] (n=mtee@
08:00:31 Quit drugdealerontor (Remote closed the connection)
08:04:07 Join drugdealerontor [0] (i=drugdeal@gateway/tor/x-c336bdb15c27d58a)
08:07:10 Quit faemir ("Lost terminal")
08:10:04 Join GodEater_ [0] (i=c2cbc962@rockbox/staff/GodEater)
08:25:21***Saving seen data "./dancer.seen"
08:29:29 Quit rossy ("Leaving")
08:30:50 Join robin0800 [0] (
08:36:56 Join Zagor [242] (n=bjorn@rockbox/developer/Zagor)
08:45:04 Quit BHSPitMonkey ("Ex-Chat")
08:46:12 Quit cool_walking_ (Remote closed the connection)
08:47:07 Join Bagderr [241] (n=daniel@rockbox/developer/bagder)
08:47:32 Nick Bagderr is now known as B4gder (n=daniel@rockbox/developer/bagder)
08:49:40 Join Rob2223 [0] (
08:53:16 Quit PaulJam (".")
09:05:55 Quit Rob2222 (Read error: 110 (Connection timed out))
09:15:23 Join JdGordon__ [0] (
09:26:38 Nick Acksaw is now known as Acky (
09:26:44 Nick Acky is now known as Acksaw (
09:32:53 Quit GodEater_ (Remote closed the connection)
09:32:53 Quit perrikwp (Remote closed the connection)
09:33:46 Quit drugdealerontor (Remote closed the connection)
09:36:00 Join GodEater_ [0] (i=c2cbc962@rockbox/staff/GodEater)
09:37:52 Join perrikwp [0] (i=18ac0c41@gateway/web/ajax/
09:40:32 Quit JdGordon__ (Read error: 110 (Connection timed out))
09:40:32 Join fragilematter [0] (n=fragilem@
09:47:58 Quit kachna (Read error: 60 (Operation timed out))
09:51:12 Quit robin0800 (Read error: 110 (Connection timed out))
09:52:55 Quit GodEater_ (" ajax IRC Client")
09:53:11 Join GodEater_ [0] (i=c2cbc962@rockbox/staff/GodEater)
09:53:40B4gderit feels like time to get the mips compiler setup on some build servers
09:53:47 Join Thundercloud [0] (
09:54:25B4gderI'll see how it behaves on my host
09:59:23JdGordonhave we got any mips targets ready for the build system?
10:01:39 Join LinusN [0] (n=linus@rockbox/developer/LinusN)
10:03:29 Quit jhMikeS (Nick collision from services.)
10:03:35 Join jhMikeS [50] (n=jethead7@rockbox/developer/jhMikeS)
10:03:50JdGordonthat was quick :) 4min to compile it including the download
10:06:23B4gderI would guess the onda is approaching this status
10:06:48B4gderdidn't you spot the fancy video posted yday?
10:07:56JdGordonno !
10:09:05JdGordonwow, that vid is hard to watch :)
10:10:57JdGordonsomething is not right.... i added to /usr/local/mipsel-elf bit to $PATH and reloaded it but configure is saying it cant find mipsel-elf-gcc and ld?
10:11:48*JdGordon punches self in the face and adds /bin to the line
10:12:30*B4gder gets a looooong range of #errors due to missing keymaps
10:13:12JdGordonthat can be fixed temporarily failry easily
10:13:29JdGordon/me's box is ready to go when you add mips targets to the build table
10:13:58B4gderok, we'll see what maurus thinks of it all first
10:15:27 Nick ch4os_ is now known as ch4os (n=ch4os@gentoo/user/ch4os)
10:17:28scorcheeek...we need to get Maurus a tripod...can we use some of the fund money for that? ;)
10:17:57B4gderyou suspect that was a subtle call for it! ;-)
10:18:05*B4gder adds a ?
10:19:31JdGordoni dont think there was anything subtle there....
10:25:23***Saving seen data "./dancer.seen"
10:27:58 Quit nuonguy ("This computer has gone to sleep")
10:29:16 Quit Thundercloud (Remote closed the connection)
10:32:30 Join _lifeless [0] (n=lifeless@
10:34:23JdGordonany objections to moving all the wps related files into apps/gui/wps ?
10:34:35JdGordonor some other reasonably named folder?
10:46:01 Join kachna [0] (
10:48:38 Join mcuelenaere [0] (n=mcuelena@rockbox/developer/mcuelenaere)
10:49:03mcuelenaereB4gder: I think currently the MIPS ports aren't ready to be included into the build table, they still have a lot of compiler warnings..
10:49:07 Quit _lifeless (Remote closed the connection)
10:49:24 Join _lifeless [0] (n=lifeless@
10:49:24B4gderyeah I noticed, but it can't hurt getting prepared
10:49:26mcuelenaere+ the MIPS compiler is a newer GCC version, which emits warnings on non-target specific code
10:49:35mcuelenaereB4gder: true
11:00:11JdGordondoes it waste "alot" of space putting functions which are only used once into a seperate .c file from the one its being called from? I'd like to split wps_parser.c up to make it more managable/readable but its 90% functions which are only used there
11:01:51B4gderthe compiler can inline such functions when used witin a single file
11:02:05B4gderbut other than so, there's no real diff
11:02:47JdGordondo we need to hint to the compiler its not used more than once? or ts smart enough to figure it out itself?
11:03:21 Quit scorche (Read error: 104 (Connection reset by peer))
11:03:30jhMikeSJdGordon: I have the same issue with thread.c. It should be split up but it benefits greatly from inlining and "short" calls (or whatever they're called). So, the best thing in that case is to include the target functions in a header (but that gets frowned upon).
11:04:19 Join scorche [50] (n=scorche@rockbox/administrator/scorche)
11:04:43JdGordonunless we do a naughty and add #include "file.c" inside the .c?
11:06:09jhMikeSI'm not sure that's so naughty for the thread situation anyway. But most of the concern there is speed.
11:08:15jhMikeSIt would cut it by about 1K lines of target code.
11:12:48 Quit AndyI ()
11:13:07 Quit mcuelenaere ("School time..")
11:13:08 Join slowmoe [0] (
11:14:26*JdGordon brumbles at the wps debug's "helpful" output
11:16:28 Join ender` [0] (
11:17:03jhMikeSB4gder: Are those notices in the new file in r19949 GPL compliant enought (just want to make sure).
11:17:25 Join AndyI [0] (n=pasha_in@
11:17:27Unhelpfulputting functions for inline in headers is not exactly all that uncommon, or hackish, i think...
11:18:09B4gderjhMikeS: looks fine to me!
11:18:21jhMikeSB4gder: thanks for checking
11:18:25B4gderI'm also fine with functions being static inline in headers, for speed
11:18:38B4gder"linux kernel style"
11:19:02jhMikeSWhat about non-inline? It would be an .h just used by thread.c.
11:19:17 Quit linuxstb (Read error: 113 (No route to host))
11:19:34B4gderthen I'd question the need to put them in the .h file in the first place
11:20:22jhMikeSThey're only used by a particular CPU/variant though and it's getting cluttered in there.
11:21:37UnhelpfuljhMikeS: basically, we're talking about duplication of non-inline, static functions to avoid making them "long calls"?
11:22:11jhMikeSsome like the Peterson's corelock_lock can't be inline but they are optimized for PP cpu
11:23:12jhMikeSUnhelpful: Basically that's my conundrum as well. It benefits alot from them not being "long calls" quite a bit.
11:24:24gevaertsLlorean: the "signal quality" issues are PP only. I don't think we should expect them on the D2.
11:24:42Unhelpfulhrm, how widely used are the particular functions in question?
11:25:13 Join BdN3504 [0] (n=55b224c3@gateway/web/cgi-irc/
11:25:28jhMikeSIn the threading case, dozens of times. It would bloat like heck. Sometimes they're even slower to inline.
11:25:28 Join bs66_1 [0] (
11:25:38gevaertsbuk_: how sure are you that this extension cable works properly? Until *very* recently extension cables were explicitely not allowed by the USB spec
11:26:38BdN3504can somebody support me in creating a patch? i have already posted my idea on the forums but didn't get a response yet.
11:27:29BdN3504i'm not asking anyone to code anything for me, i just don't know which parts of the source i'd have to alter
11:29:09BdN3504where can i add an entry to the coontext menu for example... i've searched within the files for that particular entry to no avail
11:29:29Unhelpfulwhat's the "real" cause of the long call thing? gcc generates them for calls that are extern to the current source file, but they're actually only truly needed based on distance in memory?
11:30:50jhMikeSUnhelpful: If a function is in IRAM it can be forced. corelock functions in IRAM slowed PP queue message return times by about 25% iirc.
11:30:50Unhelpfulit looks like there's a short-call attribute, as well as a few #pragmas for manipulating this... maybe that would be helpful?
11:32:33BdN3504where would i have to look: in "main.c" "menu.c" "action.h"?
11:34:10amiconnUnhelpful: Those would be helpful if they would work properly...
11:35:00jhMikeSamiconn: Is there something else it needs to be told about the section size?
11:35:27amiconnNot possible... gcc is crap wrt the short/longcall issue
11:36:04jhMikeSSo telling it the section on prototypes doesn't help?
11:37:03amiconnTry it... I expect it to fail
11:37:34 Join robin0800 [0] (
11:37:47UnhelpfuljhMikeS: if i'm reading this properly, specifying a section actually forces long calls on: "Even if this switch is enabled, not all function calls will be turned into long calls. The heuristic is that static functions, functions which have the `short-call' attribute, functions that are inside the scope of a `#pragma no_long_calls' directive and functions whose definitions have already been compiled within the current compilation unit, w
11:37:47Unhelpfulill not be turned into long calls. The exception to this rule is that weak function definitions, functions with the `long-call' attribute or the `section' attribute, and functions that are within the scope of a `#pragma long_calls' directive, will always be turned into long calls. "
11:38:15 Join fyrestorm [0] (
11:38:29Unhelpfulugh, apologies for split message :/
11:39:39 Join __lifeless [0] (n=lifeless@
11:39:48amiconnUnhelpful: This is how the gcc docs describe it... but there are bugs as well. Also, it's not like it should work in order to be useful
11:40:02BdN3504so nobody is willing to help?
11:40:54UnhelpfulBdN3504: i can't say off the top of my head where to look, sorry.
11:41:05 Quit _lifeless (Read error: 113 (No route to host))
11:41:11BdN3504ok thanks
11:41:49Unhelpfulamiconn: ugh. our total code size is not that large, could we arrange the memory layout such that we can guarantee no long calls are required, and turn off the compile option?
11:41:52 Join einhirn [0] (
11:42:26jhMikeSIf all else fails, I pick a string id that I know it has to use from the .lang file and it narrows things down
11:43:44jhMikeSUnhelpful: What's the attribute name?
11:44:16UnhelpfuljhMikeS: manual says "short-call", but amiconn seems to be suggesting that gcc is not up to making that work :/
11:47:35Unhelpfulbut this page says short_call :/
11:48:27 Part LinusN
11:54:24amiconnUnhelpful: No we can't. IRAM is too far away from SDRAM.
11:54:46 Join HellDragon [0] (
11:56:34jhMikeSWell, ladies and gentlemen, I just had success it appears thanks to my ignorance and typing "short_call"
11:56:47 Nick Barahir_ is now known as Barahir (
11:57:06jhMikeSkernel.s has all the corelock calls as bl in the disassembly
11:57:56jhMikeSI got a "relocation truncation to fit" in set_cpu_frequency because that was in IRAM
11:58:16jhMikeSonce I removed the IRAM attribute it compiled
12:00:25Unhelpfulhrm, and it won't matter for codecs/plugins, since those call *all* core functions via pointer?
12:01:28jhMikeSactually, that could work but it would only work for a particular revision. any change would break it.
12:02:56jhMikeShere is what I did anyway (messy but worked):
12:04:13jhMikeSall I see in the asm output is "blcorelock_lock" and the like
12:08:59 Quit AndyI ()
12:09:46*jhMikeS just checked the page there is it is "short_call" not "short-call". So what did I do differently than what had been tried?
12:12:37 Join AndyI [0] (n=pasha_in@
12:16:45 Join nm_ [0] (
12:19:11jhMikeSThe problem becomes that it won't link it from an IRAM routine, specifying a .text section attribute or not.
12:21:43 Join robin0800_ [0] (
12:21:58 Quit robin0800 (Read error: 104 (Connection reset by peer))
12:24:10nm_Hey people
12:24:36nm_I'm a little stuck compiling RockBox
12:24:54nm_I installed the tools using the supplied script
12:25:07nm_But when I go to build, I get the following error:
12:25:17nm_cc1: error: unrecognized command line option "-Wno-override-init"
12:25:26***Saving seen data "./dancer.seen"
12:26:03 Quit BdN3504 ("CGI:IRC (EOF)")
12:27:20Qballgcc to old?
12:28:07nm_core/gcc 4.3.3-1
12:29:02Qballshould be supported
12:31:04 Join moos [0] (i=Mustapha@rockbox/staff/moos)
12:31:08 Quit nm (Read error: 110 (Connection timed out))
12:31:21nm_Which is why I'm having trouble, it should work.
12:33:23 Quit kachna ("Konversation terminated!")
12:45:37BigBambinm_: Which arch?
12:45:54nm_Compiling for arm on x86
12:45:57 Quit fragilematter ("food")
12:46:16BigBambinm_: I think 4.0.3 is recommended for that
12:46:28BigBambiAnd that is what should install
12:47:12nm_I only used it for the arm package, but I'll try installing an older package from my repos before I go compiling GCC
12:47:22BigBambi(arm-elf-gcc 4.0.3 that is)
12:47:37BigBambinm_: I don't mean system gcc, I mean the cross compiler gcc
12:47:45BigBambithat should be 4.0.3
12:48:26BigBambiand if you ran to build the cross compilers (as they require rockbox specific patches), then you get the correct, patched versions of the cross compilers and binutils
12:48:44nm_Yep, it's 4.0.3
12:49:06nm_I did run
12:49:24BigBambiOK, I was confused by you saying core/gcc 4.3.3-1
12:49:34BigBambisystem gcc is irrelevent for compiling Rockbox
12:49:46nm_arm-elf/bin is in my PATH too
12:49:46BigBambiirrelevant too
12:50:26gevaertsnm_: what does "arm-elf-gcc −−version" say?
12:50:44 Join dfkt [0] (i=dfkt@unaffiliated/dfkt)
12:50:45nm_arm-elf-gcc (GCC) 4.0.3
12:50:59gevaertsok. That's the correct one
12:51:31gevaertsdid you build in a clean directory, or did you reuse a directory used before with other compilers?
12:52:19nm_I ran, then made a build directory in the same level as tools, configured from the build directory
12:52:36BigBambiwhich target?
12:52:40gevaertsthat should be OK
12:52:47nm_Gigabeat S
12:53:04BigBambiNormal build, or bootloader?
12:53:13B4gder-Wno-override-init is only used with gcc 4.2 or later
12:53:14nm_I believe
12:53:34nm_no, normal
12:53:52 Quit perrikwp (" ajax IRC Client")
12:54:02nm_Okay, so how come I'm encountering this problem using the gcc package specified in
12:54:10 Join perrikwp [0] (i=18ac0c41@gateway/web/ajax/
12:54:33B4gdertried cleaning everything and rerun configure?
12:55:03BigBambinm_: Don't know, I'm not :)
12:55:07nm_I just cleaned, and configured for bootloader, as that's all I presently need, and it worked
12:55:07 Join linuxstb [0] (n=linuxstb@rockbox/developer/linuxstb)
12:55:28nm_For some reason the bootloader would compile, but not the normal package
12:55:30B4gderthe bootloader would use the same options, so alas the problem doesn't appear...
12:57:47gevaertsnm_: did you set the PATH before or after running configure?
12:58:05 Quit robin0800_ (Read error: 104 (Connection reset by peer))
12:59:17 Join robin0800 [0] (
13:04:25*jhMikeS needs to figure out how to make that SDMA code blob be discarded after inits (6K that's only needed one time)
13:05:55gevaertsjhMikeS: linux does something like that. Maybe make a new section that overlaps with the plugin or codec buffer?
13:07:22jhMikeSgevaerts: The plugins do it with the IRAM sections by placing them in the BSS area until copied. crt0.S could copy it to the plugin buffer though. I hadn't thought of that.
13:09:20gevaertsjhMikeS: I suspect that the plugin buffer is totally unused before everything is initialised, so it seems like the perfect place. I thought about the audio buffer but then you need to be careful with the bist of code that grab parts of it
13:10:10 Join itcheg [0] (i=62db4767@gateway/web/ajax/
13:10:23nm_Okay, I compiled the bootloader, and patched the nk_orig.bin from the Gigabeat V updater (following the wiki), and I sent it with sendfirm, however, upon automatic reboot, it loads to the windows mobile screen, then stalls
13:11:23jhMikeSThe init is very early, right after the kernel is done so nothing should touch that. It just has to have no gap in the image and can be copied before BSS init. Hmmm. We could do something for IRAM on other targets and reclaim that too if that's not being done.
13:14:16jhMikeSActually, the extra step probably isn't needed in the IRAM case. It doesn't look to be reclaimed based on the .map file.
13:17:46JdGordongoodbye stupid WPS image count limit!
13:18:25jhMikeSAren't the limits there to keep people from getting carried away and by available memory on the device? :)
13:18:41JdGordonthats on the way out also
13:18:47JdGordonlimits suck
13:19:40jhMikeSInfinite RAM? Then we can solve every problem...given enough time of course.
13:19:50UnhelpfuljhMikeS: none of the #pragmas for call type control seem to let you decide on a per-call basis - it's all based on the prototype of the called function. the only exception i see is that calls via function pointer are always long, perhaps some kind of hack could be done with that, if you want to call these functions from iram?
13:20:45JdGordonjhMikeS: hehe.. no, im working on removing all the static buffers in the wps... moving towards a single dynamic allocated buffer which both/all wps' would use, so people with boring taste dont hold back poeple who want over kill
13:20:46jhMikeSUnhelpful: only set_cpu_frequency does atm
13:22:15 Quit rvvs89 (Read error: 104 (Connection reset by peer))
13:23:02jhMikeSUnhelpful: If the prototype itself in the header is altered in a particular source to turn off the attribute, then it's none the wiser.
13:23:31Unhelpfulright, but then you can't have short and long calls to the function from the same C file :/
13:24:49jhMikeSright, it's pretty ugly any way you go
13:27:27 Join fragilematter [0] (n=fragilem@
13:28:49jhMikeSThis works to call it this way: (*corelock_unlock)(&cpufreq_cl);
13:29:24 Join jgarvey [0] (
13:29:25jhMikeSis that what you meant?
13:30:12jhMikeSerrr..wait, I think I got something wrong
13:30:15nm_Hey anyone mind telling me the preferred version of libMTP?
13:31:06jhMikeSheh, I just forgot to to put the ICODE_ATTR back...hehe :p
13:31:09UnhelpfuljhMikeS: well, i think that gcc is optimizing that away, as it doesn't work.
13:32:30amiconnUnhelpful: That's the fundamental design flaw in gcc. The necessity of longcalls isn't determined by the callee alone, but by the caller-callee-pair. There is no mechanism available in gcc to do this properly
13:32:32jhMikeSYeah, just a simple mistake. Thought I had it and got ahead of myself
13:33:07Unhelpfulprobably even a static global pointer will get optimized away...
13:33:10jhMikeSfor it to be done properly, gcc would need to be aware of the memory layout when compiling
13:33:57 Join pyro_maniac [0] (
13:35:00JdGordoncabbiev2 on the e200 uses 15k in images...
13:36:20UnhelpfuljhMikeS: or to specialize calls each way, and choose the right one at link time
13:36:58amiconnjhMikeS: It would work if you could define section groups. Functions within the same group would be short callable, functions in a different group would need long calls
13:38:15jhMikeSamiconn: That is possible?
13:38:47amiconnUnhelpful: The linker cannot change actual code, especially not if the size would change
13:40:11jhMikeSI don't know, but I'm creating strange compilation errors that I've never seen before
13:40:32 Quit robin0800 (Remote closed the connection)
13:42:20 Join robin0800 [0] (
13:42:55Unhelpfulamiconn: the compiler could generate code for both call methods, for the entire function the call appears in, and the linker could decide which version of the function to link... but that doesn't really work, since there would need to be 2^(number of called functions) versions of it
13:43:46jhMikeSThis works thought: ((void(*)(struct corelock *))(void*)corelock_lock)(&cpufreq_cl);
13:44:09Unhelpfulactually, static global pointers to them work, too
13:45:03*jhMikeS tries another battle tactic
13:45:14 Nick fxb__ is now known as fxb (
13:46:03 Quit itcheg (" ajax IRC Client")
13:46:04UnhelpfuljhMikeS: this variation works for me:
13:46:26Unhelpfulerm, with warnings... let me fix those :/
13:48:03 Join kachna [0] (
13:50:56jhMikeSI'm looking for a possible macro-wrapping simple thing like LONG_CALL(fn)(args).
13:52:27jhMikeSThe problem is typeof(fn) doesn't work how you might expect
13:52:46*Unhelpful is working on something like that...
13:54:37jhMikeSgot it: typeof (corelock_lock) (* volatile fn) = &corelock_lock;
13:54:53Unhelpfulas a macro?
13:55:37jhMikeSThat's step two
13:55:56 Join kugel [0] (n=kugel@rockbox/developer/kugel)
13:56:11kugeljhMikeS: ping
13:57:21Unhelpfuli was able to manage a macro that would generate a static pointer to a function usable for long calls - if those have a predefined name, you could just have LONG_CALL use token pasting...
13:57:49 Quit Darksair` (Client Quit)
13:58:58 Join Darksair [0] (n=user@
13:59:07jhMikeS#define LONG_CALL(fn) ({ typeof (fn) (* volatile __fn) = &fn; __fn; })
13:59:34 Join Horscht [0] (n=Horscht@xbmc/user/horscht)
13:59:38jhMikeSkugel: hello
14:01:29jhMikeSUnhelpful: but is does a bizarre saving of the point on the stack :\
14:02:39UnhelpfuljhMikeS: is this what you mean? 134: 08fd900f ldmeqia sp!, {r0, r1, r2, r3, ip, pc}^
14:03:15 Join kachna|lappy [0] (
14:03:20kugeljhMikeS: shouldn't lcd_enable(false) not rather be called in _backlight_off?
14:03:31kugel(re: your recent beast commit)
14:03:48kugelyou kind of mix lcd_enable and lcd_sleep
14:04:19 Quit kachna (Read error: 104 (Connection reset by peer))
14:05:13kugel(and lcd_enable != lcd_sleep)
14:07:35jhMikeSkugel: wait, maybe I made a mistake
14:08:23jhMikeSkugel: no, it shouldn't. remember the disable has to be delayed because of fading time
14:09:15kugeljhMikeS: hm, well,then it should be lcd_sleep only, not
14:09:35kugelwell, it's still mixed up a bit, but if it works ;)
14:09:52kugeljust remember that lcd_sleep is a setting and possibly never done
14:10:07nm_I've got everything compiling fine
14:10:09jhMikeSit can't quite be that either. the meg-fx uses the same mechanism
14:10:22nm_But the freshly compiled bootloader refuses to boot on my Gigabeat S
14:10:37jhMikeSkugel: not on the gigabeats. it's implemented with a fixed timeout there
14:10:54JdGordonanyone got a really really bmp heavy wps?
14:11:18jhMikeSfrankly, I think that setting should be removed and good delay chosen.
14:12:05jhMikeSsome targets have a much longer delay if the lcd has to be brought back from sleep mode than if just shutting off the visible display only
14:12:28jhMikeSI'm reponsible for the setting in the first place. It was one of my first patches submitted ever.
14:13:10kugelhaving at least on/off would be nice though.
14:13:57kugelI can imagine that it's too disturbing for people (and which would pay with the (slightly?) decreased battery life)
14:14:55jhMikeSOn meg-fx, the extra time to reinit the display really isn't too noticeable and the current drain is significant to have the lcd on
14:17:06jhMikeSOn the renesas controllers (without memory framebuffer) it's probably not too much power but briging it back from sleep can take quite awhile
14:17:45 Join Casainho [0] (
14:19:27jhMikeSnm_: refuses to boot? anything more specific?
14:23:47 Quit Seed ("cu, Andre")
14:24:35 Quit kachna|lappy (Read error: 110 (Connection timed out))
14:25:30***Saving seen data "./dancer.seen"
14:28:59jhMikeSUnhelpful: This works without weird code being generated: #define LONG_CALL(fn) ({ typeof (fn) (* __fn); asm volatile ("ldr %0, =" #fn : "=r"(__fn)); __fn; })
14:35:49 Join LambdaCalculus37 [0] (i=44a04303@rockbox/staff/LambdaCalculus37)
14:36:30 Join LinusN [0] (n=linus@rockbox/developer/LinusN)
14:39:31 Quit Casainho ("ChatZilla 0.9.84 [Firefox 3.0.6/2009011913]")
14:44:33 Join CaptainKewl [0] (
14:44:34 Join Seed [0] (
14:45:26 Join itcheg [0] (i=41d59de2@gateway/web/ajax/
14:47:09 Nick JdGordon is now known as JdGordon|zzz (n=jonno@rockbox/developer/JdGordon)
14:51:20 Quit daurnimator ("Cyas later...")
14:58:24UnhelpfulJdGordon: rasher has that one with the giant volume indicator
15:00:58 Quit kugel (Read error: 110 (Connection timed out))
15:06:05 Join midijunkie [0] (
15:12:00pixelmawere the current red sims and some warnings already talked about?
15:13:23 Quit robin0800 (Remote closed the connection)
15:15:10B4gderseems to be Maurus' leftovers...
15:17:13 Quit itcheg (" ajax IRC Client")
15:31:44 Quit __lifeless (Connection reset by peer)
15:32:25B4gdermaybe I should make my blame script mail the dev list!
15:33:16 Quit slowmoe ()
15:33:39 Join slowmoe [0] (
15:34:19 Join __lifeless [0] (n=lifeless@
15:34:24 Quit __lifeless (Read error: 54 (Connection reset by peer))
15:34:25 Quit CaptainKewl ("( :: NoNameScript 4.02 :: )")
15:35:53 Join _lifeless [0] (n=lifeless@
15:37:11GodEater_B4gder: no - just the commiters list
15:37:22B4gderah true
15:40:08 Join jaykay [0] (
15:40:22pixelmathe what? ;)
15:44:39 Join kugel [0] (n=kugel@rockbox/developer/kugel)
15:46:04rasherJdGordon: yeah, my wps fills the bmp buffer
15:46:49*B4gder tests his script... :-)
15:47:04 Quit _lifeless (Remote closed the connection)
15:48:24B4gderuhm I bet mailman discards it...
15:51:28*B4gder tries again
15:51:58*B4gder yays
15:52:09B4gdermy spelling
15:52:47*B4gder points to the commit list
15:52:53*Zagor waits
15:53:42B4gderI sent it to rockbox-cvs
15:54:00Zagorah ok. I got it.
15:54:09 Join Zoxc [0] (
15:55:52gevaertsB4gder: "read"?
15:56:18B4gderyeah, I'll fix that for next mail
15:57:00kugelweird, I don't have the mail
15:57:11 Quit GodEater_ (" ajax IRC Client")
15:57:15kugelah, not committers, but -cvs
15:57:28 Join GodEater_ [0] (i=c2cbc962@rockbox/staff/GodEater)
15:57:36 Join tyfoo [0] (
15:57:50kugelhm, I didn't subscribe to -cvs
15:58:10 Quit GodEater_ (Client Quit)
15:58:25 Join GodEater_ [0] (i=c2cbc962@rockbox/staff/GodEater)
16:01:34B4gderyou guys think the committers list is a better target that the cvs one?
16:02:19ZagorI do
16:02:21n1sI'm only subscribed to the committers list so i think -cvs is fine :P
16:02:57rasherWhy not -dev?
16:03:13gevaertsrasher: only committers can fix it anyway
16:03:31*gevaerts thinks that active committers should be subscribed to -cvs
16:04:07rasherBut non-committers can comment and write patches
16:04:18rasherPlus the discussion will be archived
16:04:37gevaertsI actually would choose -cvs
16:05:07Zagorgevaerts: too few devs read -cvs regularly
16:05:17B4gderanother question, should I include the svn user name or just the full name of the committer?
16:05:28ZagorB4gder: both?
16:05:42Zagoreither one can cause confusion
16:05:58rasher-dev has the larger audience
16:06:00B4gdertrue, ok then I leave both in but just change the =[num] to %d commits
16:06:26kugelI'm for -dev
16:06:47B4gderok, let's try out -dev and see if it gets annoying or feels good
16:06:56kugelor wait
16:07:30gevaertsthis is a job for the RSB!
16:07:32kugelthat'll make reds even more embarrassing
16:08:00B4gder"Maurus Cuelenaere (mcuelenaere), 1 commit" it'll say now
16:08:26kugelthe red build table is already embarrassing enough, shouting out "This committer XY has caused failure" or something doesn't sound appealing
16:08:28ZagorB4gder: always? ;)
16:08:50B4gderkugel: it is a helper you know, more than actual blame
16:08:59B4gderwe all cause reds every once in a while
16:08:59gevaertsThe problem with -dev I see is that it has subscribers who may not understand this properly and start useless threads about it
16:09:29LinusNi don't like them being sent to -dev
16:09:32B4gdergevaerts: that's why I think we can test it and see how it works, if it stirs up too much dust we move it
16:09:50B4gderLinusN: which list do you prefer?
16:09:59ZagorI don't much see the point of -dev other than to cause embarassment, which we don't want.
16:10:06LinusNB4gder: -cvs
16:10:14LinusNZagor: exactly
16:10:22kugelmay point too
16:10:29B4gderok, back to -cvs we are then
16:10:39kugelbut I still wouldn't want -cvs :/
16:10:42Zagor-cvs won't do any more good than the dev page already does. the whole idea is to send a reminder to a place you normally look. cvs is not such a place.
16:11:03B4gderno, but -cvs is accessible to "everyone", while -committers is not
16:11:18gevaerts-cvs, BCC-ed to the actual committer? (this may require more work)
16:11:25 Part LinusN
16:11:28ZagorB4gder: isn't "being noticed" more important than "being accessible"
16:11:47Zagorit's a reminder, mainly directed to the devs who did the commits
16:12:35kugelthen why even doing it in a ml at all?
16:12:50B4gderwell, others can fix it as well
16:13:52rasherPerhaps there should be a 15 grace period before sending the mail? Them check if the see is gone?
16:14:03*gevaerts would actually like logbot to tell us about it as well
16:14:13kugelthat's worse than -dev
16:14:51ZagorI think logbot is better than dev. it reaches people currently active.
16:15:10 Join grdxyxy [0] (n=eric@
16:15:50kugelemail covers those too, plus the not-currently-active ones. Anyway, I'd rather have it in -committers
16:15:50gevaertskugel: we talk about red builds here anyway
16:16:19kugelbut I don't feel strong, I don't cause reds anyway :P
16:17:00 Quit Seed (Nick collision from services.)
16:17:25 Join Seed [0] (
16:17:29 Quit slowmoe ()
16:17:40kugelwell, I wouldn't really want to shout it out to the world that my overly stupid typo made rockbox not working
16:21:43 Join captainkwel [0] (i=2669ecc2@gateway/web/ajax/
16:25:34***Saving seen data "./dancer.seen"
16:30:55 Quit Zagor ("Client exiting")
16:37:13 Join SirFunk__ [0] (
16:40:35 Join toffe82 [0] (
16:43:47 Quit Darksair (Connection timed out)
16:45:43kadobanthe output of building the simulator (e200, on x86_64) is sprinkled with "rockbox/apps/plugins/ error: #error Unknown CPU architecture" in r19954 and it wasn't in r19953. Should i be worried about that? it seems to run fine regardless
16:50:00B4gderno, you can ignore those
16:50:02 Quit SirFunk_ (Connection timed out)
16:50:21 Join SirFunk_ [0] (
16:54:13 Quit grdxyxy ("Leaving.")
17:03:38 Join SirFunk [0] (
17:05:28 Quit SirFunk__ (Read error: 110 (Connection timed out))
17:12:19 Quit fragilematter ("time to eat (again)")
17:12:38 Join nuonguy [0] (
17:12:50rasherB4gder: wouldn't it make sense to do the error if not building a sim?
17:13:20rasherthat is, #elif !defined(SIMULATOR)\n#error etc
17:15:02B4gderyes, that might be wise...
17:15:06 Join MethoS [0] (
17:17:51 Quit SirFunk_ (Read error: 110 (Connection timed out))
17:18:29 Join nplus [0] (n=nplus@243.131.Globcom.Net)
17:20:43 Join saratoga [0] (n=9803c6dd@gateway/web/cgi-irc/
17:22:17saratogano thoughts on my malloc patch?
17:25:07LambdaCalculus37saratoga: What FS#?
17:25:18 Join flydutch [0] (
17:26:45gevaertsthe torches and pitchfork one?
17:27:12saratogaFS #9885
17:29:30 Quit nuonguy ("This computer has gone to sleep")
17:30:59kugelsaratoga: I didn't test, but it the free doesn't seem to handle NULL
17:31:11kugelthe standard free() does nothing on NULL
17:31:38*B4gder would argue that free() on NULL is a mistake in the first place...
17:32:25kugelI think it's convenient, you either check for NULL before or inside free()
17:32:37kugelI'd just stick to what the standard does
17:32:54saratogaI don't think error handling is too important, since we know exactly when it will be called
17:34:33 Join taylor_ [0] (
17:34:38saratogaB4gder: I used your code with all default settings
17:34:50B4gderthat should work fine
17:35:07saratogais anything worth changing given that we know theres going to be a lot of tiny mallocs and a few huge ones
17:35:32taylor_Alright - so I just thought about something regarding the buffer overflow - strcpy() will stop at a nullchar, so I can't used mov r0,r0 - I'll have to use something like mov r8,r8
17:35:39B4gderI don't think so, it has special "treatment" of small allocs to work fine
17:35:49saratogaok good
17:36:53saratogait'll be nice when we get that buffer space back
17:37:01saratogawe can use it to add all the menu transistion effects we've ever wanted
17:37:09B4gderyay! :-)
17:38:06taylor_Another question guys: when we have a buffer like this: buf[3]; 4 bytes would overflow - where would I start inserting the NOP sled?
17:38:11kugeltaylor_: what? use strlcpy
17:38:31taylor_Im talking about the ipod buffer overflow
17:38:55B4gdertaylor_: why not insert nops already from the start all the way until you do the operation you really want to do?
17:39:40taylor_Well thats what I thought I could do - but someone told me I need to know a return address in the next 4 bytes after the overflow
17:40:08B4gderif you want to use that address, then yes
17:40:25saratogahow would I make this not complain on 64 bit sims? DEBUGF("codec_get_buffer(%d)\n",(int)size);
17:40:33saratogaif size is size_t
17:40:44saratogawe don't have a character for size_t in DEBUGF right?
17:42:47taylor_right: but I dont know the address - so I thought I could overflow the buffer, then start inserting the NOP sled - until I think everything has been "overwritten" and then I could insert a JMP$
17:43:19B4gdertaylor_: are you getting it to crash right now usign what you have?
17:43:38taylor_yes it crashes
17:44:09B4gdermaybe you (too) would enjoy this article:
17:45:44taylor_unfortunately - - we dont know a return address :) see I have a link in a txt note like this: a href="about 300 bytes here">Hello World</a> Now I need to insert a NOP sled
17:46:25 Quit fyrestorm (Read error: 104 (Connection reset by peer))
17:47:09taylor_Hmm.. and I wonder if the </a> counts?
17:47:40UnhelpfuljhMikeS: that's rather beastly, but, what works works, i suppose. really, a long call mechanism should be provided by the compiler, and we're just left working around it if not.
17:47:49 Join _lifeless [0] (n=lifeless@
17:48:36Unhelpfultaylor_: does making it r8,r8 still ensure that there are no NULLs in the whole 32-bit opcode? there are certainly plenty of instructions, or sequences of instructions, that you could *use* as no-opns
17:49:43taylor_Well, I would like to find an opcode that "does nothing" is short, and contains no NULL characters, just like x86 u can have 0x90
17:49:46 Part B4gder
17:52:20taylor_I am still questioning whether the nano 3G is big or little endian - Ive seen websites that say "little" and others that say "big"
17:52:58taylor_does anyone know for sure?
17:53:43 Join robin0800 [0] (
17:54:11Unhelpfulwould one of the test instructions work, maybe? they'd set *flags*, but not register contents...
17:54:59saratogataylor_: theres a rom dump for teh ipod 2G firmware with a few unencrypted instructions somewhere
17:55:15saratogathat should give you a clue
17:55:18taylor_dont believe so..... risky - and it would hit a fault and crash
17:55:37taylor_Well I have an opcode - just need to know whether big or little
17:57:29taylor_0x46c0 might work = mov r8,r8
17:57:39Unhelpfulhrm, do the apple targets we *know* about follow one convention on byteorder?
17:58:00saratogathats what i'm saying, you can look at the rom dump and check the endianness
17:58:01taylor_It would be nice if it was pseudo endian
17:58:12taylor_rom dump?
17:58:25taylor_rom dump?
17:58:29Unhelpfultaylor_: that's not 32 bits long?
17:58:45taylor_whats not 32-bits?
17:58:46 Join mcuelenaere [0] (n=mcuelena@rockbox/developer/mcuelenaere)
17:58:46saratogasorry, ipod nano 2G
17:59:11Unhelpful46c0 is mov r8,r8 in thumb mode
17:59:11mcuelenaereBagder: thanks for the fix. I couldn't commit as I was at school
17:59:30taylor_why wouldnt 46c0 work?
17:59:41taylor_it does *nothing*
17:59:46 Join jaykay_ [0] (
17:59:53*mcuelenaere also saw no mail regarding this red build
18:00:31Unhelpfultaylor_: arm CPUs have two different operating modes, as i understand it, which use 16- or 32-bit instructions. i'm pretty sure using thumb-mode instructions when the cpu is not in thumb-mode is no good.
18:00:32 Join kachna|lappy [0] (
18:00:55taylor_Ok, so I need another opcode...
18:00:56Unhelpfulmov r8, r8 in 32-bit mode is e1a08008
18:01:11taylor_Thanks..but theres a NULL char in there :)
18:01:35taylor_this is going to be tough
18:01:47Unhelpfulthere isn't. there are two consecutive nybbles of 0 bits, but they're not in the same byte.
18:01:51kadobanhow is there a null char in that?
18:02:37 Quit robin0800 (Connection reset by peer)
18:03:02taylor_Oh... but isnt it e1 a0 08 0 0 08?
18:03:17taylor_where would that extra "0" go?
18:03:35Unhelpful*what* extra 0? it's e1 a0 80 08
18:03:37Unhelpfulno NULL.
18:04:08taylor_sorry - I was reading it wrong :)
18:04:53 Quit SirFunk (Read error: 110 (Connection timed out))
18:05:23taylor_When I disassemble the 5.5G firmware in Big endian mode - I just get junk - when I disassemble with little endian mode I get valid opcodes
18:05:40 Join SirFunk [0] (
18:06:52taylor_leaves me to believe its little endian
18:08:38taylor_is there anyway I can tell if my NOP sled is "running"
18:09:04taylor_If I have a ton Of NOPs will it "freeze"
18:09:52Unhelpfultaylor_: i don't think so, other than injecting code to do something and see if it does that.
18:10:32taylor_Ok - so I think the url overflows at 300 bytes - I wonder.... can I just wipe out the "</a>" at the end of url?
18:10:36kadobantaylor_: code up an infinite loop after the sled? (is there a way to hard reset?)
18:10:47taylor_Ok - so I think the url overflows at 300 bytes - I wonder.... can I just wipe out the "</a>" at the end of url?
18:10:55mcuelenaeretaylor_: if you're lucky (and if I understand buffer exploits), the NOP's would overwrite a precise amount of instructions which results in skipping a particular function which results in the device continuing its operation
18:11:45taylor_Ok - so I put the NOPs before the "</a>" or do you think by then, the buffer should be overwritten anyways so I dont need the end of link="</a>
18:12:44 Join guest001 [0] (
18:13:26 Join domonoky [0] (n=Domonoky@rockbox/developer/domonoky)
18:14:12taylor_I just set up a pretend buffer overflow in C on my PC - the next function was called when I put in the NOPs - so the operation should continue on the ipod
18:16:13Unhelpfultaylor_: i'm confused, is the overflow when parsing the anchor tag, or when actually following the link? if the latter, obviously you need the whole tag...
18:17:04taylor_trying to load the whole link
18:17:21 Quit jaykay (Read error: 110 (Connection timed out))
18:18:00Unhelpful"load" as in follow? or "load" as in load the file the link is in?
18:18:49taylor_Well Im guessing its the link: its funny though - when the ipod turns on - it will crash - even when I haven't opened the file yet
18:19:40 Join faemir [0] (
18:20:07jhMikeSLooks like things improved:;filename=MAS_battery_bench_S30_700mAh_1.txt
18:23:25moosjhMikeS: merci for this ;)
18:24:44Unhelpfulwhoah, that looks like about an extra hour :D
18:24:54taylor_where would I start inserting the "nop sled"
18:25:17jhMikeSI have no reference on any earlier revisions. I guess I could do it with an older revision. I lost one with using SDMA alone but not the LCD DMA shutoff and it was about 6:45.
18:25:17moosjhMikeS: have you still some pending works that will improves things even better?
18:25:36***Saving seen data "./dancer.seen"
18:25:58Unhelpfulwell, ok, about an extra hour vs my bench runs
18:26:24jhMikeSI want to get voltage scaling working. That could possibly be the best improvement. If that doesn't do it, then there's some parasitic drain.
18:27:13*moos is still waiting his 1000mAh batterie to come
18:27:46toffe82moos: did you fix it ?
18:27:51mooswow scaling, sure we will gain here, maybe even a lot
18:27:58n1sjhMikeS: great work
18:28:05moostoffe82: waiting the HD and the batterie
18:28:47n1staylor_: why not just replace all the text in the anchor with your no opcode?
18:29:36n1sbtw i tried that bug on the 4g nano and it seems to be gone, it doesn't try to parse the tag but just prints everything up to some limit
18:29:45n1sthe jpeg does crash however
18:29:57taylor_jpeg is useless though I think
18:30:25 Quit kugel (Read error: 110 (Connection timed out))
18:30:44taylor_As long as we can run some code on one of the encrypted devices - then we can dump the firmware
18:31:22taylor_nls: did you try a note file with a link of about 300 bytes?
18:32:25taylor_nls: Also - I could try just replacing everything with the no-opcode, but what happens if it overflows at 08 instead of e1 - then it wont work?
18:33:11jhMikeSn1s: thanks, sir
18:34:22taylor_nls: Also - I could try just replacing everything with the no-opcode, but what happens if it overflows at 08 instead of e1 - then it wont work?
18:35:10jhMikeSI suppose I'll recharge and try a build just before those changes or if anyone else is eager to post some times feel free. :)
18:35:25Unhelpfuldata has to be type-aligned on arm, i wonder if instructions do, as well?
18:36:07jhMikeSIt doesn't on the 'beast. Unaligned access is one of those nice v6 features.
18:38:06taylor_So what does "unaligned" mean?
18:38:39taylor_does this help me?
18:39:05jhMikeSyou can access a word or halfword at any byte offset and not have a data abort. it won't help unless the processor is capable of that and it is turned on.
18:39:29 Join kugel_ [0] (
18:39:33 Nick kugel_ is now known as kugel (
18:40:33 Join robin0800 [0] (
18:41:02 Join drugdealerontor [0] (i=drugdeal@gateway/tor/x-7856490ad151bfbb)
18:42:08 Join z35 [0] (
18:44:16 Join maddler [0] (
18:47:26 Quit pyro_maniac ("Leaving.")
18:47:42 Quit SirFunk (Read error: 110 (Connection timed out))
18:48:13mcuelenaeretaylor_: what's the min length of the string which triggers the exploit? 300 bytes? (this probably indicates the length of the buffer)
18:50:09taylor_ill hav 2 check - i ranodmly made a big string
18:50:34 Quit faemir (Remote closed the connection)
18:50:45 Join faemir [0] (
18:51:11 Join bertrik [0] (
18:52:57taylor_ill let you guys know later what happens
18:59:58 Quit robin0800 (" - Chat comfortably. Anywhere.")
19:03:07 Quit sarixe ("Bye")
19:03:22 Join nibbler_ [0] (
19:13:10Bagdertaylor_: how is the 5.5gen ipod firmware's endianness relevant to your case?
19:13:31Bagderthey switched hw after that
19:14:15taylor_little endian - I just talked to someone
19:14:27Bagderso how do you tell?
19:14:34Bagderor how did "someone" know?
19:14:53Bagderand I don't mean 5.5, as we know that is little
19:15:30taylor_I am talking to someone from the linux4nano team right now ;)
19:15:34BagderI'm genuinely curious since I don't know that anyone has figured this out
19:15:53 Quit kugel (Nick collision from services.)
19:15:56 Join kugel_ [0] (
19:16:01saratogaI assume the linux4nano people know since they have the rom dump
19:16:06 Nick kugel_ is now known as kugel (
19:16:30Bagderfor the 2nd gen nano, right?
19:16:41Bagderand yeah, they have a set of instructions there that are little endian
19:16:53saratogai believe its the same CPU as the 3G
19:17:02Bagderah, then that's a good hint
19:18:11 Join miepchen^schlaf [0] (
19:18:26mcuelenaeredoesn't one of those newer iPods (don't know which) use the same SoC as the Meizu? (which is BE)
19:18:40Bagderwhich is why I suspected BE too
19:19:15Bagderso in the end, we just don't know
19:19:37mcuelenaerearen't there *any* disassembled iPods (3G) on the internet?
19:19:49mcuelenaereor are these chips all masked as Apple chips?
19:19:58Bagderthey're all "masked" yes
19:20:14*mcuelenaere hates that
19:21:56amiconnBagder: While the fix for mcuelenaere's red works, it's not optimal
19:22:16amiconnWhy is the .lds even touched for sim builds? There must be a dependency problem
19:22:36BagderI agree, as I don't see how it would be used
19:24:36jaykay_is there a second chance of something like a tracker cleanup week?
19:24:50jaykay_because the first one was a little bit of a failure :)
19:25:32jaykay_and everyone who doesnt close at least one task or commit something that isnt related to tasks gets commitcount = 0 or whatever :D
19:25:42 Join BXCracer [0] (
19:25:48jaykay_*everyone of the devs of course
19:27:23 Quit Llorean (Read error: 104 (Connection reset by peer))
19:27:33 Nick jaykay_ is now known as jaykay (
19:28:11*mcuelenaere also thinks we have too much (uncommitted) patches
19:28:12 Join Llorean [0] (
19:28:27Bagderwe really do
19:28:32 Join tessarakt [0] (
19:35:52 Join akur [0] (
19:36:05 Join gregorovius [0] (
19:36:10 Join domonoky1 [0] (
19:36:14*jaykay appeals for taking up arms against the overfilled tracker
19:36:29 Quit einhirn ("Miranda IM! Smaller, Faster, Easier.")
19:36:49gregoroviusHi. should a corrupt file be able to crash rockbox? or should I report a bug?
19:37:06 Part akur
19:37:30gregoroviusok. I should I try updating to latest rev first, right?
19:37:41 Join rvvs89 [0] (n=ivo@pdpc/supporter/base/rvvs89)
19:39:18gregoroviusok, will do. thanks
19:40:28Bagderthere, that's a better fix and a green table still
19:40:29 Join Zagor [242] (
19:43:21 Quit parafin (Read error: 60 (Operation timed out))
19:44:01 Quit desowin_ (Read error: 60 (Operation timed out))
19:48:18mcuelenaeregregorovius: yes
19:48:30mcuelenaerewoops sorry
19:48:45gregoroviusok −− I upgraded to the latest rev and it's not crashing anymore, guess it was fixed somewhere
19:49:32 Quit guest001 (Read error: 110 (Connection timed out))
19:49:52 Join desowin_ [0] (n=desowin@
19:50:01saratogawhat type of file was it?
19:51:53gregoroviusit wasn't corrupt, or at least a quick md5 shows it's just like the file in my computer
19:52:18gregoroviusbut since it made rockbox crash twice on the same spot of the file, I figured it might be corruption
19:53:55saratogaprobably a buffering issue
19:54:04saratogathere haven't been any changes to mp3 in a very long time
19:54:09 Quit domonoky (Read error: 110 (Connection timed out))
19:55:03 Quit desowin_ (Remote closed the connection)
19:55:18 Join desowin_ [0] (n=desowin@
19:55:32 Join parafin [0] (
19:56:45pixelmagregorovius: you have a c200 or e200?
19:57:17pixelmaand how old was the version where it crashed repeatedly?
19:57:56gregoroviuspixelma: ipod video, rockbox 3.1
20:01:34 Join bluebrother [0] (n=dom@rockbox/developer/bluebrother)
20:01:36 Quit desowin_ (Remote closed the connection)
20:01:39 Join desowin_ [0] (n=desowin@
20:05:48 Join pyro_maniac [0] (
20:09:30*kugel doesn't understand the newly opened lamp.rock tasks (except for the "cannot exit" one)
20:10:42 Join {phoenix} [0] (
20:16:40 Quit moos ("Rockbox rules the DAP world")
20:17:49 Join lasser [0] (
20:20:51 Join yhuang [0] (n=yhuang@unaffiliated/yhuang)
20:21:33 Quit midijunkie (Read error: 104 (Connection reset by peer))
20:23:22 Join midijunkie [0] (
20:23:51 Quit linuxstb (Read error: 113 (No route to host))
20:24:41 Join Anges [0] (
20:25:08n1sjaykay: having a tracker cleanup week too often will not help much either, we need to continuously work on the open tasks if we want to keep the count down and as always the problem is the lack of time and/or interest
20:25:37***Saving seen data "./dancer.seen"
20:28:04kugelBagder: what's the difference between SIMULATOR and SIMVER?
20:28:57 Join Thundercloud [0] (
20:29:18 Quit miepchen^schlaf ()
20:33:37 Join itcheg [0] (i=41d59de2@gateway/web/ajax/
20:34:24 Join fml [0] (n=4fd3cf77@gateway/web/cgi-irc/
20:35:15fmlHello. Could someone please look at FS #9884 (backlight on sim with lcd_depth > 8) and possibly commit before it gets outdated?
20:35:17jaykayn1s: the last one was iirc not really effective... you announced it a week or so befor, soemone said "now it starts" at 1st dec, but nothing more
20:35:17n1sisn't SIMVER left over since we had 3 different types of sims? i.e not longer used
20:36:03n1sjaykay: so why do you think more tracker cleanup weeks will be more effective?
20:36:07kugelfml: I will, in a few minutes
20:36:26 Join akur [0] (
20:36:38 Part akur
20:36:45jaykayn1s: not more of them, but one with e.g. rules (i know its not the best idea)
20:36:52jaykaynot quantity, but quality
20:37:03kadobanit's difficult to impose rules on volunteers
20:37:12n1sjhMikeS: i think it's a worthwhile change if it saves that much code and is probably a bit faster too with no ill effects
20:37:19kugelfml: what does it exactly do? I just know, that the sim simulated backlight some years ago, but it was disabled due to annoyance
20:37:29fmlkugel: ok. If you see what can be done better please tell me. Or do it yourself.
20:37:39n1sjaykay: what kind of rules do you suggest then?
20:37:51jhMikeSn1s: who can argue with saving 50KB?
20:37:53kugelclose everything older than 2 years, for example
20:37:57kadobankugel: some targets seem to still do it (noticed when i was doing screenshots for a plugin) i think mrobe:100 was one, i don't really remember
20:38:10n1sjhMikeS: no one!
20:38:11jaykayn1s: maybe something like "everything which isnt related to tasks is forbidden"
20:38:18kugelkadoban: well, in fact, it simulates. I
20:38:20jaykayas i said its surely not the best idea
20:38:20fmlkugel: I've been told that the backlight is not simulated on the sims for lcd_depth > 8. The patch divides all color components by 4 when the BL is off thus dimming the screen.
20:38:34kugelI'm not sure about all targets, but the most noticeable things were disabled
20:38:58kugelfml: oh that sounds nice
20:39:03n1sbacklight simulation is visible for non colour sims
20:39:22jhMikeSOn PP I might try an experiment. Nothing says dram _must_ start at 0 and so perhaps IRAM and dram can be mapped quite closely.
20:39:22fmlkugel: in the last commit by amiconn it is even stated explicitly.
20:39:28kugeln1s: uhm yes, I was talking about 16bit targets, sorry
20:39:52fmlBTW: after his last commit, it seems that the remote backlight is not simulated correctly for H120.
20:40:07amiconnfml: Dividing by 4 on all colour targets is not what should be done
20:40:17mcuelenaerefml: perhaps using shifts instead of division is more efficient? (unless GCC already optimizes this away)
20:40:31fmlamiconn: only for lcd_depth > 8
20:40:36amiconnThis would be roughly correct for ipod video and nano (and maybe color), but for the others, it should be completely black
20:40:48amiconnfml: Of course...
20:41:22amiconnBut doing this manually is probably slow; I wanted to check whether sdl has some alpha tricks which would make things easier
20:41:33 Join LinusN [0] (n=linus@rockbox/developer/LinusN)
20:41:49fmlamiconn: the goal is not show it as on target (sansa e200 would be just black then) but rather give a visual cue that the BL went off
20:42:05 Quit idshark ("changing servers")
20:42:07amiconnThe goal should be to show it as on target
20:42:26fmlmcuelenaere: since this is sim I didn't bother to optimize speed.
20:42:30amiconnThe clip sim also does this - pitch black with no "backlight" (== no led power)
20:42:56n1ssaratoga: shouldn't FS #9776 be closed?
20:43:03mcuelenaerefml: well, this function gets called on every pixel, so a little bit of optimisation wouldn't hurt I guess? :)
20:43:07gevaertsI think leaving one or two bits should be doable. You *can* see something if you have the right lighting.
20:43:14fmlamiconn: this I thought first as well but then Llorean suggested to just dim it and I liked the idea.
20:43:24kugelamiconn: well, if you want it to be exactly like on target you'll also need to fiddle with backlight fading and brightness levels
20:43:42kugelwhich we're not really in need for, imo
20:44:03fmlamiconn: can you see the now-not simulated remote backlight on h120?
20:45:00amiconnRemote backlight is simulated... I tested this
20:45:01fmlamiconn: also, the background color for h120 simulator has changed when BL is off. Was is intentionally?
20:45:33gevaertsfml: the background looks different on target as well
20:45:36jhMikeSwhat's the best way to select that option or not? fx clip and e200v2 all use arm9tdmicc
20:46:07jhMikeSamong the other as3525 it seems
20:46:21fmlamiconn: when I scroll (e.g.) the main BL goes on but not the remote. OR do I miss something?
20:46:26mcuelenaerejhMikeS: isn't the use of long calls without crashing/.. processor dependent?
20:46:50amiconnfml: Of course not. You're pressing the main buttons, not the remote buttons (which aren't simulated)
20:47:00amiconnIt's like on target, and my commit didn't change that
20:47:14fmlamiconn: ah, ok then
20:47:23jhMikeSmcuelenaere: it's because of truncated relocations between .icode and .text
20:47:34mcuelenaereah ok
20:47:36amiconnThe non-backlight main lcd colour indeed seems to have changed a bit. Probably a dec->hex conversion error of mine. Will re-check
20:48:12 Quit bmbl ("Woah!")
20:48:20*kugel thinks dimming in the sim is OK, since much more effort is needed for real simulating backlight
20:48:50fmlamiconn: we might discuss how the BL should be simulated on color targets but there should be a cue. I worked on the lamp plugin and was very confused when BL didn't go off. I think my patch can be committed and improved later, if necessary.
20:49:01amiconnkugel: The fading doesn't need to be simulated. But dimming is plain wrong for simulating a target with pitch-black lcd
20:49:35kugelso is just turning off
20:49:38kadobanpitch-black is plain wrong too
20:49:55amiconnNo it's not
20:50:00fmlAnd not giving a cue is even more plain wrong
20:50:20kugelwhat you want seems half-baked to me
20:51:20fmlkugel: is this for me?
20:51:26taylor_the file crashes with a link of 268 bytes
20:51:33gevaertsI think we need to divide by 16 or so. That would give near-black, which I think is also what the actual hardware does
20:52:09 Join at0m|c [0] (n=a548c80b@gateway/web/cgi-irc/
20:52:30mcuelenaeretaylor_: could be 256+12 (meaning buffer size=256); just guessing
20:52:31saratogan1s: no that fix was only one of several problems with those files
20:52:42amiconngevaerts: On targets were the lcd becomes unreadable without backlight we disable the controller (if we know how). Hence pitch-black would be correct, with the mentioned 3 exceptions
20:53:06gevaertshm, true
20:53:25taylor_whats 256+12?
20:54:16*gevaerts is now in the "black screen" camp
20:54:28fmlamiconn: so you'd propose to introduce something like a defined which would tell whether the screen goes black or is dimmed?
20:54:35 Quit saratoga ("CGI:IRC (EOF)")
20:54:51fmlgevaerts: I still think we can make the sim alittle bit better than the targer :-)
20:54:57amiconnSimilar to how the lcd properties are now part of the target config for LCD_DEPTH <= 8
20:55:24gevaertsfml: why?
20:55:26mcuelenaerefml: the sim 'simulates' the target, so it should try to match it behaviour as closely as possible
20:56:00kugelamiconn: we have LCD_ENABLE, this should be sufficient I'd think
20:56:09amiconnWell, there are more quirks than just backlight simulatiomn for 16 bit
20:56:24amiconnLCD flip and invert aren't simulated either
20:57:01*amiconn is currently refining screendump and related stuff
20:57:14mcuelenaereisn't LCD invert a B/W only LCD controller flag?
20:57:45bertrikmcuelenaere, there are some color targets that do have an LCD invert option in rockbox
20:58:05fmlamiconn: that seems to be a major task. Since I's step back here. I still think what I've done can be put in as a first step to have some feedback at least. This can/should be improved of course to match the target behaviour. But for the development purpose (see how it bahaves) it's better than what we have now.
20:58:15amiconnMost (all?) greyscale lcds also have it, and iirc even some colour ones do
20:58:20gevaertsamiconn: will the screendump be black if it's taken when the backlight is off? ;)
20:58:21mcuelenaerehmm then I should implement it on the Onda too..
20:58:43amiconngevaerts: No, screendumps are always lit by definition. They're not part of the sim
20:58:49bertrikbut it's a bit silly for color targets
20:59:00amiconnmcuelenaere: That said, I don't think invert makes sense on colour displays
20:59:20mcuelenaerethen why waste the binsize? :)
20:59:34kugelwaste binsize on 32M targets?
20:59:53mcuelenaerejust kidding :)
20:59:53kugelwell, the e200 has it, and I never use it, but I don't see a need to remove it either
21:00:54bertrikif e200 didn't have it yet, I would be against adding it
21:03:11kugelwhy? what's the gain of not adding it?
21:03:54bertrikthe no-nonsense principle
21:04:20kugelbinsize not an issue on the e200, 32M + flash storage
21:05:00*gevaerts thinks that for a feature to go in it needs at least one person who wants it
21:05:32kugelthat sounds more reasonable ;)
21:05:46fmlAs Llorean once said, smaller binsize is also a feature for some people. :-)
21:06:00BigBambikugel: I'm not arguing either way, but just that there is more headroom doesn't seem a good reason for not caring
21:06:19BigBambis/not caring/using without need/
21:08:40taylor_what would be the equivalent of e1a08008 on little endian?
21:09:04taylor_like 0880a1e or something like that?
21:10:00mcuelenaeretaylor_: if you want to be absolutely sure, just use GCC to compile it on an LE ARM target
21:10:05n1s0880a0e1 i think
21:11:13n1syou don't need gcc, just use an assembler
21:11:53taylor_nls: you are correct: its 0880a0e1 ;)
21:12:09 Join darkham [0] (
21:12:15taylor_nls: I am going to start to insert the no-opcodes in the buffer
21:13:35n1sok, and to answer your earlier question, i tried the html file on this page didn't crash my nano4g just printed the everything from the beginning and cut of at some limit
21:13:43n1sthe jpg did crash though
21:14:32darkhamhey people, i wanna know only one thing: In Sandisk Sansa e200 and c200, what's the largest microSDHC supported by rockbox?
21:14:54kugelany you can get
21:15:05darkham32gb too?
21:15:25BigBambiyes, although I don't know if anyone has teted one
21:15:29BigBambiIt should be fine though
21:15:30mcuelenaeren1s: perhaps you should compare OF versions with taylor_?
21:15:43darkhamvery amazing!!!
21:16:04taylor_I wonder: if I put about 15,000 nops in this buffer - i wonder if the ipod will "freeze" for a sec
21:16:19n1smcuelenaere, taylor_: my nano is a 4g with 1.0.3 firmware
21:16:27 Quit midijunkie ("?(???~~)?")
21:16:30kadobantaylor_: you're underestimating the speed of even these slow processors
21:16:48taylor_Yeah - but I mean a TON
21:17:14mcuelenaeretaylor_: then put a couple of megabytes of NOP's ;)
21:17:24 Quit Zambezi (
21:17:24 Quit balou (
21:17:24 Quit itcheg (
21:17:24 Quit toffe82 (
21:17:24 Quit Zoxc (
21:17:24 Quit scorche (
21:17:24 Quit trisiak (
21:17:24 Quit at0m (
21:17:25taylor_Yeah ;)
21:17:25 Quit fleshTH ()
21:17:31 Join fleshTH [0] (i=Javachat@
21:17:52kadobanhave you gotten to the point where it should be executing your nop slide yet? (mucking with the return value or whatever)? or does it not work like that?
21:18:00NJoinitcheg [0] (i=41d59de2@gateway/web/ajax/
21:18:01NJointoffe82 [0] (
21:18:01NJoinZoxc [0] (
21:18:01NJoinscorche [50] (n=scorche@rockbox/administrator/scorche)
21:18:01NJoinZambezi [0] (
21:18:01NJoinat0m [0] (
21:18:01NJoinbalou [0] (
21:18:01NJointrisiak [0] (
21:18:06taylor_my ipod is 3g nano with 1.1.3
21:18:44mcuelenaerehmm perhaps a newer OF version has the exploit while an older doesn't? or it's just 3g-specific
21:19:15taylor_Apple goes in reverse order
21:19:16 Quit fml ("CGI:IRC (EOF)")
21:19:26taylor_So the lower the number the newer
21:20:33 Quit buk_ ("Quitte")
21:21:14LloreanThat's untrue.
21:22:21taylor_Hold on: sometihng interesting here -
21:22:38taylor_If I put in enough NOPs - the ipod is fine
21:22:53 Quit DataGhost (Nick collision from services.)
21:22:54 Join DataGhost_ [0] (
21:22:54taylor_And then I can proceed to view the file....strange
21:23:17mcuelenaerenot weird
21:23:28mcuelenaereI said something like that a bit earlier
21:23:54taylor_No - I know u said the ipod should be fine -
21:23:59mcuelenaerethis buffer isn't on the stack, is it?
21:24:08taylor_But I can view the file now - thats wierd
21:24:37mcuelenaeretaylor_: how many NOP's did you use?
21:24:55 Nick DataGhost_ is now known as DataGhost (
21:25:15taylor_I didn't count :) just copied huge amount with a text editor - but it was about 500kbs worth :)
21:25:22taylor_*hex edit
21:26:31kadobanthere might be a limit to how long it can be before it gets caught as an error. try with the same amount, but not nops this time?
21:26:49mcuelenaerewhat you should try is somehow find some assembly code which resets the device and put it in between/at the end of these NOP's
21:27:05 Join PaulJam [0] (
21:28:03 Quit LambdaCalculus37 (" ajax IRC Client")
21:29:21 Join LambdaCalculus37 [0] (i=44a04303@rockbox/staff/LambdaCalculus37)
21:31:58 Join petur [50] (n=petur@rockbox/developer/petur)
21:32:21taylor_same amount of S's doesnt crash either :(
21:35:04Unhelpfulascii "S" is the ARM opcode for "fix apple bugs"
21:36:43bertrikdon't these ipod have a jtag port hidden somewhere?
21:36:58 Join Aurix_Lexico [0] (
21:39:48n1sbertrik: don't know but if they went through this much trouble to protect their firmware i wouldn't count on it being easily accessible
21:40:26 Quit Seed ("cu, Andre")
21:40:28n1salso the 4g nano case appears to be the kind you don't put back together after opening it :/
21:42:20 Join miepchen^schlaf [0] (
21:42:54 Quit DataGhost (
21:42:54 Quit tessarakt (
21:42:54 Quit z35 (
21:42:54 Quit jaykay (
21:42:54 Quit nplus (
21:42:54 Quit n1s (
21:42:54 Quit Dieterbe (
21:42:54 Quit Ridayah (
21:42:54 Quit agaffney (
21:42:54 Quit undertakingyou (
21:42:54 Quit martian67 (
21:42:54 Quit Unhelpful (
21:42:54 Quit Bagder (
21:42:54 Quit tarbo (
21:42:55 Quit fleshTH ()
21:43:00 Join fleshTH [0] (i=Javachat@
21:43:04 Quit Llorean ("Leaving.")
21:43:19 Join Llorean [0] (
21:43:37NJoinDataGhost [0] (
21:43:37NJointessarakt [0] (
21:43:37NJoinz35 [0] (
21:43:37NJoinjaykay [0] (
21:43:37NJoinnplus [0] (n=nplus@243.131.Globcom.Net)
21:43:37NJoinn1s [0] (n=nils@rockbox/developer/n1s)
21:43:37NJoinDieterbe [0] (
21:43:37NJoinRidayah [0] (
21:43:37NJoinagaffney [0] (n=agaffney@gentoo/developer/agaffney)
21:43:37NJoinundertakingyou [0] (
21:43:37NJoinmartian67 [0] (i=user6962@about/linux/regular/martian67)
21:43:37NJoinBagder [241] (n=daniel@rockbox/developer/bagder)
21:43:37NJoinUnhelpful [0] (n=Militant@rockbox/developer/Unhelpful)
21:44:35 Quit Llorean (Client Quit)
21:44:48 Join Llorean [0] (
21:45:03 Quit gregorovius ()
21:46:49 Quit jaykay ("ChatZilla 0.9.84 [Firefox 3.0.6/2009011913]")
21:47:02 Join jaykay [0] (
21:47:30 Quit Ridayah (Remote closed the connection)
21:47:33 Quit Dieterbe (Remote closed the connection)
21:47:40 Join Ridayah [0] (
21:47:42 Join Dieterbe [0] (
21:47:59 Quit agaffney (Remote closed the connection)
21:48:03 Join agaffney_ [0] (n=agaffney@gentoo/developer/agaffney)
21:48:56mcuelenaeredoes Rockbox have any open file handles and/or is the filesystem in an unsynced state when just started i.e. can I reset the device without any file system damage due to not yet written data?
21:49:37Lloreanmcuelenaere: You may want to define when "just" started is.
21:49:57mcuelenaerejust booted, without any music loaded
21:50:10mcuelenaerefresh configuration (no options changed)
21:50:35 Join tvelocity [0] (
21:51:08mcuelenaere(I just want to know whether I should disable write support in order to not constantly need to scandisk the FS when I reset the device)
21:52:53 Quit jaykay ("ChatZilla 0.9.84 [Firefox 3.0.6/2009011913]")
21:53:21 Join jaykay [0] (
21:53:38 Join akur [0] (
21:53:38 Part jaykay
21:54:11 Join jaykay [0] (
21:54:16 Part akur
21:55:21 Join jaykay_ [0] (
21:57:31 Quit LambdaCalculus37 (" ajax IRC Client")
21:57:58 Join linuxstb [0] (n=linuxstb@rockbox/developer/linuxstb)
21:58:39 Quit Anges (Read error: 111 (Connection refused))
22:02:44amiconnmcuelenaere: Just opening a file doesn't do any harm if you reset the device. You shouldn't reset while a file is being written, but even then the risk is not very high
22:03:35n1smcuelenaere: i think the risk is minimal as long as you dont' do any file managing in rockbox :)
22:03:35jaykay_another stupid question: should i use "headphone jack" or "headphone socket" in the manual?
22:03:55jaykay_and is there a difference between "headphone jack" and headphone mini jack plug?
22:04:49 Quit _lifeless (Remote closed the connection)
22:06:50 Join virtuoso015 [0] (n=virtuoso@
22:06:56 Join rocko [0] (
22:10:40 Quit jaykay_ (
22:10:40 Quit jaykay (
22:10:40 Quit Unhelpful (
22:10:40 Quit Bagder (
22:10:40 Quit n1s (
22:10:40 Quit undertakingyou (
22:10:40 Quit z35 (
22:10:40 Quit martian67 (
22:10:40 Quit nplus (
22:10:40 Quit DataGhost (
22:10:40 Quit tessarakt (
22:10:40 Quit fleshTH ()
22:10:45 Join fleshTH [0] (i=Javachat@
22:10:57virtuoso015bagder: ping
22:11:11NJoinjaykay_ [0] (
22:11:11NJoinjaykay [0] (
22:11:11NJoinDataGhost [0] (
22:11:11NJointessarakt [0] (
22:11:11NJoinz35 [0] (
22:11:11NJoinnplus [0] (n=nplus@243.131.Globcom.Net)
22:11:11NJoinn1s [0] (n=nils@rockbox/developer/n1s)
22:11:11NJoinundertakingyou [0] (
22:11:11NJoinmartian67 [0] (i=user6962@about/linux/regular/martian67)
22:11:11NJoinBagder [241] (n=daniel@rockbox/developer/bagder)
22:11:11NJoinUnhelpful [0] (n=Militant@rockbox/developer/Unhelpful)
22:11:14 Join _lifeless [0] (n=lifeless@
22:11:21 Quit petur (Remote closed the connection)
22:11:30 Quit perrikwp (" ajax IRC Client")
22:11:37 Join perrikwp [0] (i=18ac0c41@gateway/web/ajax/
22:11:59 Part jaykay_
22:12:16virtuoso015bagder: ping
22:12:23 Join jaykay_ [0] (
22:14:51 Quit nplus (Connection timed out)
22:17:44virtuoso015bagder: hi, this is regarding the e2tplus tool about which a user, Legomaniac, had enquired about in this channel on 2nd feb, 2009... Please check the following link - - and verify the code so that you may be able to recommend this tool to others who need it... thank you
22:17:47 Join akur [0] (
22:19:19 Quit ender` (" First things first, but not necessarily in that order.")
22:21:32 Part virtuoso015
22:21:47 Quit XavierGr (Nick collision from services.)
22:21:58 Join XavierGr [0] (n=xavier@rockbox/staff/XavierGr)
22:22:47 Quit jaykay (Connection timed out)
22:23:04taylor_cant any ascii symbols 1-255 be used as nop?
22:24:37 Quit {phoenix} (Read error: 104 (Connection reset by peer))
22:25:02 Quit XavierGr (Nick collision from services.)
22:25:13 Join XavierGr [0] (n=xavier@rockbox/staff/XavierGr)
22:25:39***Saving seen data "./dancer.seen"
22:27:54taylor_cant any ascii symbols 1-255 be used as nop?
22:29:19kadobantaylor_: i thought you already had a nop
22:29:28taylor_I did
22:29:50taylor_but EVERYTHING that I put in makes the ipod NOT crash
22:29:56Bagderwow, I had completely forgot I had something like that around! ;-O
22:30:42kadobantaylor_: maybe it stops parsing when it gets non-url-valid characters...
22:31:03taylor_S is a valid url character
22:31:39 Quit DataGhost (Nick collision from services.)
22:31:39taylor_btw -
22:31:41kadobantaylor_: that was with a huge long string, right? did you try shorter ones? there's nothing saying that they don't check the length at least a little bit before parsing
22:31:44 Part LinusN
22:31:47 Join DataGhost_ [0] (
22:32:21taylor_Hmmm.. yeah but they would check the length after its been loaded into the buffer
22:32:36kadobantaylor_: who says? did you look at their code
22:32:51taylor_Oh yeah - and i dont think the bug occurs in the note file itself
22:33:19taylor_i think it occurs when the ipod tries to make sure its a valid file the link is pointing to
22:33:49 Nick DataGhost_ is now known as DataGhost (
22:34:57 Join Anges [0] (
22:42:17 Join __lifeless [0] (n=lifeless@
22:43:03linuxstbjaykay_: The manual is British English - I would say "headphone socket" (I'm British).
22:43:29 Quit pyro_maniac ("Leaving.")
22:44:08 Join qurvel [0] (
22:44:55 Part qurvel
22:45:19 Quit jaykay_ (Connection timed out)
22:45:33 Join IuDeX [0] (n=4fbdabba@gateway/web/cgi-irc/
22:45:45IuDeXhey, someone is working on clip?
22:50:48rockoFOR G
22:51:15linuxstbIuDeX: People have worked on the Clip. I don't know if someone is working on it at the moment...
22:51:30rockowhat is clip?
22:52:11IuDeXlinuxstb: What about funman? Any news from him?
22:52:26 Quit rocko ("Leaving")
22:53:52IuDeXOn my Clip I can play MP3's (sometimes skips) and WAV'es, but no all ;]
22:55:33 Join Chronon [0] (
22:56:02 Quit IuDeX ("CGI:IRC (EOF)")
22:56:23 Quit BXCracer (Remote closed the connection)
22:57:19ChrononI just received an S60 in the mail today and am trying to install Rockbox. However, I have a problem trying to build sendfirm on Ubuntu 8.10. It seems this may be due to changes in libmtp?
22:57:22 Nick agaffney_ is now known as agaffney (n=agaffney@gentoo/developer/agaffney)
22:57:42gevaertsChronon: how recent is your checkout?
22:57:56fleshTHi built it just fine yesterday
22:59:16Chronongevaerts: pretty recent (approx. r19875). Is there an easy way for me to check the version I have checked out?
22:59:27ChrononI'll update to current and try again
22:59:27gevaertsChronon: svn info
22:59:31linuxstbChronon: Just do "svn update"...
22:59:47linuxstbThat problem was fixed yesterday - see the changelog.
23:00:33gevaertsr19875 is *old* ;)
23:03:38 Join AndyIL [0] (i=AndyI@
23:04:49 Quit _lifeless (Success)
23:05:01 Quit MethoS (Remote closed the connection)
23:05:30 Join MethoS [0] (
23:09:18 Quit lasser ("ChatZilla 0.9.84 [Iceweasel 3.0.5/2008122011]")
23:10:14 Join pixelma_ [50] (n=pixelma@rockbox/staff/pixelma)
23:10:14 Quit pixelma (Nick collision from services.)
23:10:24 Nick pixelma_ is now known as pixelma (n=pixelma@rockbox/staff/pixelma)
23:14:42 Quit AndyI (Read error: 110 (Connection timed out))
23:16:26 Quit itcheg (" ajax IRC Client")
23:19:08 Quit domonoky1 (Read error: 104 (Connection reset by peer))
23:21:52taylor_maybe they do check the size first.... but the smaller string still crashes
23:23:34taylor_Buts it is still pretty interesting: @n1s try a htm note with just 268 bytes in the link okay?
23:24:45taylor_If you do this however - make sure ur ipod is plugged in to pc when u try it - you will have to boot into forced disk mode to delete the file from the drive
23:25:08gevaertstaylor_: please use real words as stated in our guidelines
23:26:09taylor_real words?
23:26:31 Quit amiconn (Read error: 110 (Connection timed out))
23:26:51kadobantaylor_: no "u"
23:27:08 Join amiconn [50] (n=jens@rockbox/developer/amiconn)
23:28:45n1staylor_: yeah, shortening the link got it stuck in a nice reboot cycle so it seems to have the same bug as the older firmwares
23:29:09taylor_okay - so did you get it out of the cycle?
23:29:33n1smenu+select, menu+play to get into diskmode and removed the file
23:30:04taylor_Yep - just making sure you knew so I didn't screw up your ipod hehe :)
23:31:02taylor_This sure is interesting
23:34:21 Join gregorovius [0] (
23:36:04 Quit tessarakt ("Client exiting")
23:38:03 Quit nibbler_ (Remote closed the connection)
23:38:51 Quit Zoxc ()
23:39:35taylor_does anyone know a "while" loop in ARM?
23:40:49kadobantaylor_: if there's a way to hard reset, just do an infinite loop with a relative jump, probably (i don't know arm)
23:41:07n1sif you are going to code in arm asm i think finding a nice reference guide is the best way to go, and looking at existing code, rockbox contains a fair bit or arm asm you could look at
23:41:57 Quit bertrik ("Leaving")
23:42:01taylor_whats the difference between restart and "hard" restart?
23:42:27n1smenu+select is a hard reset afaik
23:43:26Lloreantaylor_: usually "hard" means "cutting power, or otherwise restarting in a way that deadlocked software can't prevent"
23:44:10 Join nurdc0re [0] (n=a46bdc7d@gateway/web/cgi-irc/
23:44:45nurdc0rei have a quick question if no one is afk
23:44:46 Quit bluebrother ("leaving")
23:45:28gevaertswell, *someone* is bound to be away...
23:45:30 Join einhirn [0] (
23:46:25taylor_And I guess an infinate loop would be pretty useless - unless we know the ret address
23:46:38nurdc0rewell, that's true
23:46:47gevaertstaylor_: it would prove that your code is running
23:46:56kadobantaylor_: i thought you were looking for a way to verify that it's running something
23:46:56nurdc0rei should rephrase, is there "someone" that is *not* afk
23:47:06BigBambinurdc0re: jut ask
23:47:43nurdc0rei got a free ipod shuffle some years ago that's seen better days, anyone know a good place to start at a very simple portable player that supports ogg vorbis?
23:47:59BigBambiRockbox doesn't run on the shuffle
23:48:19nurdc0redidn't think so
23:48:26scorche|shi think he is looking for a new device..
23:48:35BigBambioh, sorry
23:48:45n1sthe frontpage lists all our supported targets
23:49:12nurdc0reaha! that page looks useful, thanks :)
23:49:28 Part akur
23:50:00taylor_i am looking for a way to know that my code is running - but I thought you needed a ret address to your code first
23:51:50taylor_Its going to be tough because I dont have an arm compiler...
23:52:26 Quit nurdc0re ("CGI:IRC (EOF)")
23:53:06kadobantaylor_: rockbox uses one...set up a build environment and you're all set if that's all you need guessing i wont be able to run code though... my NOP sled didn't work
23:54:03 Join hd [0] (
23:54:11 Quit hd (Read error: 104 (Connection reset by peer))
23:57:01 Join hd [0] (

Previous day | Next day