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 2008-11-06

00:02:47 Join planetbeing [0] (
00:03:14JdGordonis the lang order in not english .langs important?
00:03:21amiconnIt doesn't always fail. All Player builds in the build table except 2 were built on his box
00:03:48 Join dany_21a [0] (
00:04:23BagderI'll disable sh builds there for now
00:04:30planetbeingCould anyone refer me to someone who has familiarity with Rockbox's NAND flash driver? (ata_flash.c). I was wondering about its compatibility with Samsung's FTL systems like Whimory, etc.
00:04:59*mcuelenaere likes to know that too
00:06:05 Quit bmbl ("Woah!")
00:06:21planetbeingI'm reverse engineering some of iPhone's firmware, with an eye on porting Linux to it. I'm now able to read and write raw NAND data, but I'm wondering if there's any prior work on the Whimory FTL.
00:06:55gevaertsI'd be surprised if you could use ata_flash.c for help with that
00:07:19amiconnata_flash.c is used by the (stalled) iFP port only.
00:07:33planetbeingI see.
00:07:36mcuelenaereplanetbeing: AFAIK there are only 2 (?) FTL in Rockbox now
00:07:41gevaertsIt's written for ifp7xx, which as far as I know uses a pnx101 chip, and it doesn't do writing yet so I assume the mapping isn't complete yet
00:07:52amiconnI think the only one who really knows how it works would be tomal. I've not seen him around for a long time :\
00:07:52mcuelenaereata_flash.c and the TCC one
00:08:05planetbeingAh. I've only started looking at it. Googling for "Whimory" led me to Rockbox (which is why I am here).
00:08:31n1samiconn: making the midi plugin a codec would not enable any more optimizations but would make for a nicer user experience all over
00:09:29rasherJdGordon: it's not important, no
00:09:44*amiconn is confused by the r19022 APE performance figures on coldfire and the beast
00:10:01rasherJdGordon: some translators like to keep English order to help them compare, but the code doesn't care
00:10:11n1sLambdaCalculus37: I would be happy to take your c200 to try making midi work better on it but it would have to be with the standard disclaimer of not guaranteeing any worthwhile results
00:10:13funmanlcd_init() calls scroll_init() calls create_thread(), what is needed for threads to run ?
00:10:52n1slcd scrolling runs in a separate thread
00:10:55planetbeingSome of the exact strings that are here ( are in the iPhone firmware, which is why I was curious.
00:11:07JdGordonrasher: ok
00:11:15funmann1s: i didn't care about threads in the sansav2 bootloader (no thread_init or whatever)
00:11:52funmani suppose some initialisation is needed
00:11:52mcuelenaereplanetbeing: that's probably due too they use the same Samsung SDK
00:12:01n1sfunman: i misread your question :/
00:12:03mcuelenaeredue too the fact that*
00:12:16 Quit tvelocity ("Αποχώρησε")
00:12:40*funman hands n1s a funman-decoder
00:12:57funmanother bootloaders call kernel_init()
00:13:24funmanI suppose I'll have to do some work to use this function
00:13:35planetbeingI'm not sure whether to start reverse engineering anything above the LLD level.
00:13:49planetbeingBecause reversing all of Samsung's SDK would not really be that fun.
00:13:54planetbeingAnd perhaps legally problematic.
00:14:55Bagderreverse engineering really isn't that problematic in most areas
00:15:34funmanI used this diff to understand where the problem came from, do you think something cleaner could be useful in the UIE() ? (i believe undefined instruction exception)
00:16:00planetbeingRight, except I think they're trying to sell the exact thing that I would publish equivalent source code to, so.
00:16:38 Quit BigBambi (Read error: 148 (No route to host))
00:16:55 Quit robin0800 (Connection timed out)
00:17:21planetbeingThough it would really be nice, or else any sort of dual-booting between iPhone OS and Linux would be out. Is there any interest in the Rockbox community that this be done? Is there anyone willing to work on this together?
00:17:24Bagderplanetbeing: still you're entitled to do so
00:17:46Bagderplanetbeing: rockbox is an OS of its own
00:17:47 Quit dany_21a_ (Read error: 110 (Connection timed out))
00:17:58Bagderwe don't run linux on devices, we run rockbox on tem
00:18:04planetbeingI understand that.
00:18:13funmanin fact i was hoping to not need threads in the bootloader
00:18:23planetbeingBut if you wanted to read/write to Samsung FTLs, this would still be useful as a piece.
00:18:26Bagderbut there might be someone interested in running rockbox on an iphone or ipod touch
00:18:30 Quit bughunter2 ("bye")
00:18:56 Join rikai_ [0] (i=blah@unaffiliated/rikai)
00:18:59 Quit rikai (Read error: 104 (Connection reset by peer))
00:19:14soaplinuxstb, re: "Is there a reason you keep that [] mirror active?" - Can I plea historical momentum?
00:20:04 Quit ender` (" All power corrupts, but we need electricity.")
00:20:08 Quit Bensawsome ("The awsome is gone :(")
00:20:15funmaniiuc one hardware timer is used by kernel.c 's tick_start() (defined in specific ports) and another one by timer.c ?
00:20:29amiconnfunman: UIE is short for "unexpected interrupt or exception"
00:20:42soapHonestly, ever since I gave the space to redbreva, I haven't really though twice about it. I do agree the consequences of its existence are probably undesirable, but I never discussed the removal of it with anyone, so I didn't [remove it].
00:20:51funmanamiconn: ok that make more sense ^^
00:23:07 Join swimmer [0] (
00:23:11soapshould I HTTP _or_ frame redirect it to the WPS gallery?
00:23:26 Join BigBambi [0] (n=Alex@rockbox/staff/BigBambi)
00:24:00 Quit meven (Remote closed the connection)
00:25:14 Quit DerDome ("Leaving.")
00:25:28 Join robin0800 [0] (
00:32:37 Quit n1s ()
00:36:26 Part dany_21a
00:46:44 Quit mcuelenaere ()
00:52:35 Join brrybnds [0] (
00:54:29 Join blkhawk- [0] (
00:57:07saratogasoap: I would redirect, but you could also look into making it so that google doesn't index the website too
00:59:56 Quit Thundercloud_ (Remote closed the connection)
01:02:29 Quit blkhawk (Read error: 110 (Connection timed out))
01:04:27 Quit Nico_P (Remote closed the connection)
01:07:29 Quit HBK ()
01:11:08 Quit robin0800 (Remote closed the connection)
01:15:44soapso (web ignorant) - do I want HTTP or frame style redirect?
01:23:19soapYou know what - I'm busy as a bee tonight - I'll put a nice explanation and redirect on as many of the deep-linked pages as I see in my server logs, and make it all pretty - but not tonight. Tomorrow, Friday at the latest.
01:23:27 Join HBK [0] (
01:24:17soapIf someone thinks I should pull the content before that point in time - that is easy and I will take such advice (if it comes) under serious consideration. Just highlight me and I'll catch ya. Otherwise, night.
01:24:40 Quit MethoS- (Read error: 104 (Connection reset by peer))
01:25:56 Quit krazykit ("Connection reset by beer")
01:30:22rashersoap: I think a http redirect would be most clean, when considering search engines etc
01:31:39 Quit perrikwp (" ajax IRC Client")
01:33:08 Join perrikwp [0] (i=d1a8d351@gateway/web/ajax/
01:40:23***Saving seen data "./dancer.seen"
01:41:35 Quit DataGhost (Read error: 60 (Operation timed out))
01:53:28 Join JdGordon|uni [0] (i=768aa368@gateway/web/ajax/
01:56:32 Join DataGhost [0] (i=dataghos@unaffiliated/dataghost)
02:00:14 Quit gevaerts (Nick collision from services.)
02:00:26 Join gevaerts [0] (n=fg@rockbox/developer/gevaerts)
02:06:23 Join blkhawk [0] (
02:18:13 Join toffe82 [0] (n=chatzill@
02:20:25 Quit culture (Read error: 110 (Connection timed out))
02:22:13 Quit blkhawk- (Read error: 110 (Connection timed out))
02:37:47 Join Darksair [0] (n=user@
02:38:29 Quit jhulst (Read error: 110 (Connection timed out))
02:41:44 Part toffe82
02:41:47 Quit faemir (Remote closed the connection)
02:49:04 Part pixelma
02:49:29 Join pixelma2 [0] (n=marianne@rockbox/staff/pixelma)
02:53:07 Join mc2739 [0] (
02:58:21 Quit HBK ()
02:58:57 Join JdGordon_ [0] (n=jonno@rockbox/developer/JdGordon)
02:59:30 Quit JdGordon_ (Client Quit)
02:59:59 Join JdGordon_ [0] (n=jonno@rockbox/developer/JdGordon)
03:00:06 Quit JdGordon|uni (" ajax IRC Client")
03:01:18 Join maffe [0] (
03:01:49 Nick Darksair is now known as Darksair{away} (n=user@
03:06:21 Quit maffe ("IRC ist obsolet!")
03:07:25 Quit kugel ("ChatZilla 0.9.83 [Firefox 3.0.3/2008092417]")
03:11:24JdGordon_:( my beast froze during playbck twice today already
03:11:42JdGordon_always in the last 2 sec of the song
03:13:17JdGordon_oh poo! now it thinks the batt is flat
03:13:24 Join HBK [0] (
03:15:53 Join m0f0x [0] (
03:17:22 Join BHSPitMonkey [0] (n=stephen@unaffiliated/bhspitmonkey)
03:17:30 Join webguest01 [0] (n=89d89377@gateway/web/cgi-irc/
03:18:08 Quit webguest01 (Client Quit)
03:20:18 Nick Darksair{away} is now known as Darksair (n=user@
03:31:10DerPapstNight all :)
03:31:13 Quit DerPapst ("iPodLinux rocks!")
03:31:57 Quit funman ("leaving")
03:38:11 Join Bensawsome [0] (n=Bensawso@unaffiliated/bensawsome)
03:40:26***Saving seen data "./dancer.seen"
03:41:23 Nick fxb is now known as fxb__ (
03:44:17 Quit brrybnds (Remote closed the connection)
03:50:04 Join brrybnds [0] (
03:53:59 Quit JdGordon_ (Read error: 104 (Connection reset by peer))
03:57:04 Quit saratoga ("CGI:IRC (EOF)")
04:07:34 Quit mc2739 ()
04:26:05 Join ajonat [0] (n=ajonat@
04:42:43 Part XavierGr
04:46:55 Join miepchen^schlaf_ [0] (
04:47:33 Quit Bensawsome ("The awsome is gone :(")
04:47:58 Join Bensawsome [0] (n=Bensawso@unaffiliated/bensawsome)
04:49:15 Quit Bensawsome (Client Quit)
04:49:30 Join Bensawsome [0] (n=Bensawso@unaffiliated/bensawsome)
04:54:06 Quit Bensawsome (Client Quit)
04:54:11 Join knnylftn [0] (
04:55:58 Join blkhawk- [0] (
05:01:27 Quit miepchen^schlaf (Read error: 110 (Connection timed out))
05:06:44 Quit brrybnds (Read error: 110 (Connection timed out))
05:09:44 Quit reacocard (".")
05:11:26 Quit blkhawk (Read error: 113 (No route to host))
05:12:15 Nick blkhawk- is now known as blkhawk (
05:13:15 Quit m0f0x ()
05:26:45 Join jhulst [0] (n=jhulst@unaffiliated/jhulst)
05:33:28 Join reacocard [0] (n=reacocar@WL-112.CINE.HMC.Edu)
05:40:31***Saving seen data "./dancer.seen"
05:42:46 Quit ajonat (
05:42:46 Quit GodEater (
05:42:46 Quit markun (
05:42:46 Quit Slack (
05:42:46 Quit soap (
05:42:46 Quit Bagder (
05:44:40NJoinmarkun [50] (n=markun@rockbox/developer/markun)
05:49:36 Quit Horscht ("")
05:50:34 Join n17ikh [0] (
05:51:43 Quit midkay ("Leaving")
05:57:54NJoinsoap [50] (n=soap@rockbox/staff/soap)
05:58:00NJoinSlack [0] (
05:58:47NJoinBagder [241] (n=daniel@rockbox/developer/bagder)
05:59:50 Join test3769273469 [0] (
06:00:09 Join Zarggg_ [0] (
06:00:12 Quit n17ikh (Nick collision from services.)
06:00:14 Quit n17ikh|Lappy (Nick collision from services.)
06:00:17 Quit Zarggg (Read error: 60 (Operation timed out))
06:00:36 Quit test3769273469 (Client Quit)
06:01:15 Join n17ikh|Lappy [0] (
06:01:46 Quit linuxstb (Read error: 110 (Connection timed out))
06:02:50 Join kushal_12_27_200 [0] (n=kushal@
06:04:55NJoinajonat [0] (n=ajonat@
06:06:47 Join massiveH [0] (
06:12:30 Quit massiveH (Read error: 104 (Connection reset by peer))
06:18:47 Join midkay [0] (n=midkay@rockbox/developer/midkay)
06:20:47 Join massiveH [0] (
06:28:45 Nick Darksair is now known as Darksair{away} (n=user@
06:36:51 Quit knnylftn ()
06:50:00 Join massive_H [0] (
06:59:25 Quit massiveH (Read error: 113 (No route to host))
07:00:14 Join midkay_ [0] (
07:01:58 Quit ch4os (Read error: 104 (Connection reset by peer))
07:06:00 Join ch4os [0] (n=ch4os@gentoo/user/ch4os)
07:14:09 Nick Darksair{away} is now known as Darksair (n=user@
07:17:48 Quit midkay (Read error: 110 (Connection timed out))
07:20:44 Join LinusN [0] (n=linus@gateway/web/cgi-irc/
07:28:23 Join midkay [0] (n=midkay@rockbox/developer/midkay)
07:35:46 Join AndyIL [0] (i=AndyI@
07:37:39 Join Bagderr [241] (n=daniel@rockbox/developer/bagder)
07:38:04 Nick Bagderr is now known as B4gder (n=daniel@rockbox/developer/bagder)
07:38:34 Join midkay__ [0] (
07:40:35***Saving seen data "./dancer.seen"
07:43:20 Nick massive_H is now known as massiveH (
07:44:20 Quit midkay (Read error: 60 (Operation timed out))
07:45:47 Quit ajonat ()
07:46:28 Quit AndyI (Read error: 110 (Connection timed out))
07:46:40 Quit midkay_ (Read error: 110 (Connection timed out))
07:55:50 Quit miepchen^schlaf_ ()
08:03:08 Join mrkiko [0] (n=IRCExplo@
08:03:52 Join Owner [0] (
08:04:23OwnerI have a question about Rockbox and I figured you guys could help me out
08:04:56B4gderask away
08:05:14OwnerI have a Sandisk and I can navigate and play songs from my MicroSD and from my internal memory
08:05:32Owneryet once I figured out how to combine the 2 so I could play songs from both in a playlist...
08:05:34Ownerhow do I do that
08:06:36B4gderI believe the microsd appears as a "fake" dir in the root dir, as shown by the dir browser
08:06:42massiveHare you creating the playlist on the sansa, or on your PC?
08:06:58OwnerI did it through my PC with window media player
08:07:33massiveHcreate it on the player and it will work fine, I don't know how it saves the SD location on the playlist
08:07:52massiveHbut it appears rockbox's handling of the SD location and your media player's is differnet
08:08:20Ownerwell I combined the playlists once so I could listen to all of my music on shuffle mode once
08:08:28Ownerso I know it's possible
08:08:45Ownerbut as of now I can either chose to shuffle through all my internal memory of 300 songs
08:08:59Owneror go shuffle through my SD of like 1000
08:09:13massiveHyou can select the playlist and hit "insert" and it will combine them
08:09:18massiveHthen you could save that list out...
08:09:45massiveH(press and hold select for playlist options)
08:10:03 Quit kushal_12_27_200 ("Leaving")
08:12:15Ownerok reset because I'm not really using a playlist...let me show you the steps I go through
08:12:36 Part mrkiko
08:12:56Ownerturn on -> database -> all tracks -> play
08:13:03Ownerthat gives me the shuffle for my internal memory
08:13:09Ownerand then for my micro sd
08:13:25*massiveH does not use database mode, and does not know how playlist handling differs from file tree mode
08:13:33Ownerturn on -> files -> micro sd -chose song
08:13:43Ownerthen I shuffle through all my songs on micro sd
08:13:55Ownerany way to shuffle through both at once?
08:14:40Tuplanollaif the songs are in the database they will be in the whole shuffle list
08:15:09Ownerbut the only songs in the database are the ones in the internal memory
08:15:14Tuplanollaput the card in, then initialize the database
08:15:18Ownerhow do I put my micro sd songs in the database
08:15:29Ownerhow do I initalize the database?
08:16:10Tuplanollasettings - general settings - database - initialize now
08:16:32 Join bertrik [0] (
08:16:40Ownerk trying that
08:18:20OwnerYOU ARE AMAZING
08:19:06amiconnYou don't need the database if you just want to shuffle all songs on the device
08:19:20OwnerOk thanks a lot guys
08:22:48 Quit BigBambi (Read error: 148 (No route to host))
08:23:42 Quit Owner ("ChatZilla 0.9.83 [Firefox 3.0.3/2008092417]")
08:36:34 Join Rob2222 [0] (
08:40:01 Quit Rob2223 (Read error: 60 (Operation timed out))
08:43:14 Quit bertrik ("Leaving")
08:47:29 Join goffa_ [0] (n=goffa@
08:49:28 Join AndyI [0] (i=AndyI@
08:52:59 Join ender` [0] (
08:55:47 Quit jhulst (Remote closed the connection)
08:57:09 Quit perrikwp (" ajax IRC Client")
08:57:21 Join perrikwp [0] (i=d1a8d351@gateway/web/ajax/
08:58:08 Quit massiveH ("Leaving")
08:59:24 Join petur [50] (n=petur@rockbox/developer/petur)
09:00:59 Quit goffa (Read error: 110 (Connection timed out))
09:01:37 Join J-23 [0] (
09:06:28 Quit Darksair (Read error: 104 (Connection reset by peer))
09:06:31 Quit AndyIL (Read error: 110 (Connection timed out))
09:09:13 Join Darksair [0] (n=user@
09:12:33 Join fyrestorm [0] (
09:15:42 Quit pixelma2 ("-")
09:15:58 Join pixelma [50] (i=pixelma@rockbox/staff/pixelma)
09:18:10 Quit fyre^OS (Read error: 60 (Operation timed out))
09:26:05 Join fyre^OS [0] (
09:33:07 Quit rikai_ (Read error: 131 (Connection reset by peer))
09:34:53 Quit fyrestorm (Read error: 145 (Connection timed out))
09:35:22 Quit kachna|lappy (Read error: 113 (No route to host))
09:35:33 Join Thundercloud [0] (
09:37:38 Join Zagor [0] (n=bjorn@rockbox/developer/Zagor)
09:40:38***Saving seen data "./dancer.seen"
09:45:34 Join linuxstb [0] (n=linuxstb@rockbox/developer/linuxstb)
10:01:46JdGordonis anyone else having playback issues on the beast?
10:05:21 Join DerDome [0] (
10:05:35 Quit DerDome (Client Quit)
10:07:35 Join lasser [0] (
10:12:49 Quit linuxstb (Read error: 110 (Connection timed out))
10:15:33 Join dany_21a [0] (
10:27:08 Quit Thundercloud (Remote closed the connection)
10:29:49 Join kachna [0] (
10:31:58 Join robin0800 [0] (
10:36:13 Part dany_21a
10:37:17 Join dany_21a [0] (
10:41:49 Join einhirn [0] (n=Miranda@
10:42:08 Nick Darksair is now known as Darksair{away} (n=user@
10:48:52 Quit JdGordon ("Konversation terminated!")
10:50:44 Join JdGordon [0] (
10:57:57 Part dany_21a
11:02:42 Quit denes_ (Read error: 110 (Connection timed out))
11:02:52 Join denes_ [0] (
11:03:59 Join faemir [0] (
11:04:06 Quit faemir (Read error: 104 (Connection reset by peer))
11:13:06 Join n1s [0] (n=nils@rockbox/developer/n1s)
11:16:59n1sJdGordon: I have not noticed any probelms
11:18:45 Quit einhirn ("Miranda IM! Smaller, Faster, Easier.")
11:19:07*n1s grumbles a bit about accidentally booting into the OF and not having a paperclip or similar handy :(
11:21:38 Quit BHSPitMonkey (Remote closed the connection)
11:24:54*Unhelpful seconds n1s
11:25:47Unhelpfulif you bump the power button while beast is locked, it turns on, and (assuming you've installed rockbox dual-boot), boots the OF, which lets you know it's locked, then suspends itself
11:28:59n1sand then you're stuck :/
11:31:41Unhelpfulright. i know i've seen hold-windows-key-for-OF as a proposed fix, is there a reason it *has to be* hold key?
11:32:19UnhelpfulJdGordon: i don't use it myself, but i vaguely recall somebody saying that using voice caused some playback issues
11:34:35 Quit nuonguy ("This computer has gone to sleep")
11:40:39***Saving seen data "./dancer.seen"
11:43:24n1sUnhelpful: he hold switch is a straight gpio pin so it's easy to check the buttons are harder, we would basically need to start the rockbox bootloader unconditionally and check for buttons and branch back to the OF
11:44:19JdGordonUnhelpful: im prety sure ive gt voice disabled on it
11:44:30 Join kugel [0] (n=chatzill@unaffiliated/kugel)
11:44:31JdGordonvery annoying when it decides to lock up
11:44:33Unhelpfulguh. i figured there had to be a reason. we really need the whole of the RB bootloader to be able to read the buttons?
11:45:18kugelI don't think so
11:45:36UnhelpfulJdGordon: lock up how? mine hasn't had trouble with audio since the first week or two after PCM support landed in svn, when sometime garbled static would come out... especially if you did anything awful like try to use a plugin.
11:46:22JdGordonits now frozen 3 times in 2 days with 2s left of a track
11:46:51JdGordonthen the batt goes dead, so it might be related to the batt instead of rockbox
11:47:01JdGordonduno why im getting such shit runtime from it now though
11:47:26JdGordon1-2 hours only
11:48:15Unhelpfulthat is also generally worse than my experience :/
11:48:47JdGordoni did a batt bench a while ag and got 6h or something, so something has gone totally fubar
11:50:52 Join skipper [0] (n=skipper@
11:52:28 Quit robin0800 (Read error: 104 (Connection reset by peer))
11:53:47 Nick Darksair{away} is now known as Darksair (n=user@
11:58:50 Join GodEater [0] (i=c2cbc962@gateway/web/ajax/
11:59:14n1sUnhelpful: currently we patch in a little assembler in the OF start basically checking a bit in a gpio regiser to see if we should boot the OF, checking for the keypad buttons is a bit more complex, but sure we don't _need_ the full bootloader but i think that would be the easiest way to do it
11:59:54n1sJdGordon: maybe the low battery is not enough to spin up the disk to rebuffer or something?
12:00:19JdGordonyeah, maybe
12:00:56 Quit cg_ (Read error: 110 (Connection timed out))
12:07:14n1sI'm not sure if buffering handles a failed spinup, saving settings on shutdown does...
12:09:36 Quit swimmer (Client Quit)
12:10:11ZagorB4gder: so should make zip build or not? is the partial build zip something that is occuring, or is it more of a "what if" scenario?
12:12:27 Join swimmer [0] (
12:25:52 Join balou_ [0] (
12:26:25 Quit balou (Read error: 104 (Connection reset by peer))
12:29:53 Join fyrestorm [0] (
12:34:04 Quit kugel (Remote closed the connection)
12:40:22 Quit JdGordon (Read error: 104 (Connection reset by peer))
12:42:37 Join JdGordon [0] (
12:44:59 Join robin0800 [0] (
12:47:30 Quit fyre^OS (Read error: 110 (Connection timed out))
12:49:39 Join Nico_P [50] (n=nicolas@rockbox/developer/NicoP)
12:52:48LinusNZagor: so it does a complete dependency check when i type "make zip"?
12:53:16Zagoryes, that's what I added yesterday
12:53:36LinusNi always build first and then "make zip"
12:53:52LinusNsounds like a pain on cygwin
12:54:57 Join kushal_12_27_200 [0] (n=kushal@
12:55:57robin0800just tried to save as a patch off the patch traker abd it saved as html is this a firefox problem or has patch tracker changed?
12:56:01Zagorthe error messages you get from "make zip" without a preceding "make" are very confusing.
12:56:17LinusNZagor: i can imagine that
12:56:39 Join XavierGr [0] (n=xavier@rockbox/staff/XavierGr)
12:57:13Zagorrobin0800: I get text/plain in fireforx
13:00:43robin0800yes my fault firfox must have had somthing different than plain text set in firefox its ok now
13:22:05 Join Bensawsome [0] (n=Bensawso@unaffiliated/bensawsome)
13:25:31B4gderZagor: it's not a big issue, but I don't like that kind of combined targets in make when you could easily just "make all zip" if you wanted to do both
13:26:32 Quit robin0800 (Read error: 104 (Connection reset by peer))
13:27:51 Join DerPapst [0] (
13:29:29 Quit kachna (Read error: 110 (Connection timed out))
13:31:00 Join LambdaCalculus37 [0] (
13:31:21ZagorB4gder: I can sympathise with that
13:31:32 Join kugel [0] (n=chatzill@unaffiliated/kugel)
13:34:14 Quit amiconn (Nick collision from services.)
13:34:20 Join amiconn [50] (n=jens@rockbox/developer/amiconn)
13:37:08LinusNhmmm, i did "make zip" twice, and it linked the codecs both times. i thought that was fixed?
13:38:08LinusNthis was a sim build
13:38:36LinusNand why does it remove apps/codecs/codec_crt0.o?
13:40:44***Saving seen data "./dancer.seen"
13:40:49Zagorthat's a make oddity I haven't quite nailed yet. make removes "intermediate files" on its' own initiative.
13:41:57Zagorand the answer why it was linked twice, is precisely because make removed codec_crt0.o...
13:42:35LinusNi see
13:45:25 Nick fxb__ is now known as fxb (
13:48:01 Nick JdGordon is now known as JdGordon|zzz (n=jonno@rockbox/developer/JdGordon)
13:53:59 Quit LambdaCalculus37 ("Ka-chunka")
13:59:31 Join culture [0] (
14:02:46 Join bughunter2 [0] (n=Jelle@
14:10:20 Join PaulJam [0] (
14:11:55 Join LambdaCalculus37 [0] (i=44a04303@gateway/web/ajax/
14:18:27Zagorwe have both MEMSIZE and MEMORYSIZE defined...
14:19:11Zagorsorry, MEM and MEMORYSIZE. is there supposed to be a difference?
14:19:17 Join BigBambi [0] (i=86ceaf34@gateway/web/ajax/
14:19:27Zagorfrom config.h: #if ((defined(MEMORYSIZE) && (MEMORYSIZE > 8)) || MEM > 8)
14:19:29 Join tyfoo [0] (
14:21:42 Quit skipper ("Leaving")
14:32:01 Join robin0800 [0] (
14:32:22 Join stooo [0] (
14:32:32 Part stooo
14:35:55 Quit robin0800 (Connection reset by peer)
14:37:08J-23B4gder: CVS?
14:37:19B4gderno rockbox-cvs
14:37:35J-23why didn't you rename it to rockbox-svn when switching to SVN? :D
14:38:34gevaertsWhy do all that work?
14:41:26 Part B4gder
14:51:02 Join skipper [0] (n=skipper@
14:51:55 Join goffa [0] (n=goffa@
14:52:25 Quit lasser ("ChatZilla 0.9.83 [Iceweasel 3.0.3/2008092816]")
14:58:05 Quit kushal_12_27_200 ("Leaving")
15:00:24 Quit Xerion (Read error: 54 (Connection reset by peer))
15:02:38 Join Strife89 [0] (i=a810eba9@gateway/web/ajax/
15:03:25 Join funman [0] (
15:04:02 Join jfc^3 [0] (
15:04:20 Quit goffa_ (Read error: 110 (Connection timed out))
15:05:47n1sStrife89: well, IMHO the solution is not to drop more instruments
15:06:10*n1s wonders if the as3514 in a sansa v1 can output in 22kHz
15:06:24Strife89n1s: I was just throwing that out there.
15:08:03Strife89What about patchsets? Could lower quality patches lighten the CPU load significantly?
15:08:15n1syou can play with it yourself if you want by dropping MAX_VOICES in midiutil.h
15:08:45 Join Nibbler [0] (
15:08:55*Strife89 might try dropping one or two.
15:09:43n1sFinding other patchsets is far from easy from what i understand, there's basically the one we use and the one commonly used in timidity
15:10:16*Strife89 seems to remember a patchset that's 10 MB in total size.
15:10:18n1sbut if you find any low quality but acceptable ones feel free to tell me
15:10:54Strife89I think I used it for a Timidity implementation for my Palm.
15:13:50 Join stoo1 [0] (
15:13:59 Part stoo1
15:14:17Strife89n1s: I think that's the one.
15:16:09 Quit Strife89 (" Off to class.....")
15:17:20n1sthen there's the problem that the patchset cfg parser is terrible and seems to basically have been built around the patchset we use...
15:19:27 Join robin0800 [0] (
15:20:06 Quit jfc (Read error: 110 (Connection timed out))
15:20:47 Quit reacocard (Read error: 110 (Connection timed out))
15:21:44 Join Schmogel [0] (
15:23:23 Join reacocard [0] (n=reacocar@WL-112.CINE.HMC.Edu)
15:28:40 Join bughunter21 [0] (n=Jelle@
15:29:02 Quit bughunter2 (Nick collision from services.)
15:29:08 Nick bughunter21 is now known as bughunter2 (n=Jelle@
15:40:45***Saving seen data "./dancer.seen"
15:48:05 Join Strife89 [0] (i=a810ebb0@gateway/web/ajax/
15:51:52 Quit Rob2222 (Read error: 104 (Connection reset by peer))
15:52:17 Join Rob2222 [0] (
15:53:29n1shmm, turning the midi plugin into a codec would require 44.1kHz playback (or resampling to 44.1) which will make it slower on any target that can do 22kHz
15:53:35 Join dany_21a [0] (
15:56:42LambdaCalculus37n1s: Sounds like PP and Coldfire targets will end up with even slower MIDI playback.
15:57:43n1sLambdaCalculus37: most pp plaers are stuck with 44kHz anyway so it will not make much difference to them but the ones that have 22kHz will be slower if this is done...
15:57:56*Strife89 prefers speed.
15:58:09n1sunless someone fixes the playback system to handle different sample rates
15:59:02n1sStrife89: yes in this case more speed means better functionality but also playing stuff in a plugin is a hack IMHO
16:01:39LambdaCalculus37Which is why a plugin patch like FS #8806 needs to be rewritten.
16:02:31*Strife89 badly hopes it gets rewritten......
16:02:43LambdaCalculus37Strife89: Ask Mr. Someone to do it. ;)
16:02:58 Quit jhMikeS (Nick collision from services.)
16:03:04 Join jhMikeS [50] (n=jethead7@rockbox/developer/jhMikeS)
16:03:07n1sso the dilemma in this case is a plugin that is next to useless (imho) because it is a plugin or a codec that is next to useless because it will be even slower...
16:03:24 Quit DataGhost (Nick collision from services.)
16:03:32 Join DataGhost [0] (i=dataghos@unaffiliated/dataghost)
16:04:07 Quit blkhawk (Read error: 104 (Connection reset by peer))
16:04:17n1s...but otoh, if our resampler is very fast it might be faster to play at 22kHz and upsample than playing the midi at 44.1 kHz, it will however sound worse
16:04:27 Join blkhawk [0] (
16:06:01 Quit kugel (Remote closed the connection)
16:06:49 Join {phoenix} [0] (
16:06:56 Join bughunter21 [0] (n=Jelle@
16:09:30LambdaCalculus37n1s: I think fixing the playback system to handle different sample rates is a task for Mr. Somone as well.
16:10:22n1syes, his list getting long...
16:12:22LambdaCalculus37n1s: I modified the midiplay plugin information to reflect the requirement of cleaning up the playback system.
16:12:49funmaninit_thread must be called before lcd_init() because of the creation of scrolling thread
16:12:59n1sLambdaCalculus37: i wouldn't call it a requirement as it is pretty useless on most targets right now anyway
16:13:09funmanand for init_threads' THREAD_PANICF to have an effect, lcd should be active before it is called
16:13:20funmando i miss something ?
16:14:03LambdaCalculus37n1s: Rewrote it a little to be less specific.
16:15:14n1sbut it would be a nice feature anyway and would alleviate the need for a better resampler in some cases
16:15:20funmancurrent clip bootloader doesn't show anything on the screen if i comment the call to storage_init();
16:15:41 Join miepchen^schlaf [0] (
16:16:07funmanhm .. my bad ..
16:19:59amiconnn1s: PP target aren't stuck with 44kHz at all
16:20:29n1samiconn: i mean the ones that have no support for 22kHz (in rockbox)
16:20:52n1swhich IIUC is all of them except h10 and a few ipods
16:21:46n1sthat's why i said "most pp plaers"
16:25:56LambdaCalculus37n1s: Based on older PP SoC's, perchance? (PP5002, PP5020, etc...)
16:26:38n1sLambdaCalculus37: again IIUC it is basically a question of if the hw can do it and if it is implemented in the dac driver
16:26:57*LambdaCalculus37 notices that he can't view HW info on the Gigabeat F debug menu... strange!
16:27:40n1samiconn: do you not think turning the midi player into a codec would be a Good Thing?
16:27:56 Join kronflux [0] (
16:30:13 Join IudeX [0] (n=52a0f8f7@gateway/web/cgi-irc/
16:30:28 Quit skipper (Remote closed the connection)
16:32:52 Quit Nibbler (Read error: 113 (No route to host))
16:34:44 Quit bughunter2 (Read error: 110 (Connection timed out))
16:37:41 Quit Strife89 (" Final review before a Spanish test. No me gusta examens.......")
16:38:48 Join Rob2223 [0] (
16:39:06 Join mofux [0] (
16:39:23 Quit Rob2222 (Read error: 104 (Connection reset by peer))
16:39:25funmanhm .. now i don't get display anymore as well .. and i tested a clean tree before committing ... O:
16:41:21IudeXSo u bricked your clip or not
16:41:33funmanno, i still have the dual boot of course
16:41:51funmanbut something wrong happens in kernel_init()
16:43:20funman * Initialize threading API. This assumes interrupts are not yet enabled. On
16:43:58 Quit PaulJam (".")
16:51:15 Join cg [0] (
16:53:14 Quit IudeX ("CGI:IRC")
16:57:06 Part LinusN
16:58:07 Nick bughunter21 is now known as bughunter2 (n=Jelle@
17:04:31 Quit Zagor ("Client exiting")
17:12:00 Quit funman ("leaving")
17:19:42amiconnn1s: As long as the midiplayer performs as poor as it currently does, I think it's not worth the effort
17:20:18amiconnIntegrating it into buffering will be rather hard
17:23:50amiconnn1s: Making the other PP targets support other sample frequencies will be way easier than that (it's in fact not hard at all, it just needs to be done)
17:30:08 Quit dany_21a (Read error: 110 (Connection timed out))
17:33:00 Join mf0102 [0] (
17:35:34LambdaCalculus37amiconn: Even if midiplayer is performing poorly at the moment, there's always room for improvement. But yes, in going over the code for it, it will be a challenge to integrating it into buffering.
17:36:18n1samiconn: as long as we have it as a plugin, that is probably the easiest way to gain performance on those targets
17:38:18n1salso, any ideas on how to tackle the performance issues?
17:40:49***Saving seen data "./dancer.seen"
17:42:45n1sIn order to integrate this into buffering we will need some way for the codec to alloc memory in the buffer to keep the patches in
17:43:41LloreanWouldn't codec-izing it also be helpful in the sense of helping to define the constraints people attempting to improve performance would have to be working in?
17:44:41n1swell, no one has been trying to improve the performance since i gave it ago last time which was about a year ago...
17:45:54n1ss/ago/a go/
17:52:10 Join bughunter21 [0] (n=Jelle@
17:56:14amiconnMost iPods cannot support 22kHz though. Either 8kHz, or 32kHz and the higher standard frequencies
17:56:45amiconniPod Video can support any sample frequency (when implemented..)
17:57:29LambdaCalculus37amiconn: By "most", I figure you mean 1st-3rd gen, 4th, and mini?
17:57:58*LambdaCalculus37 would figure the nano would be in the same boat as the video, since the hardware is very similar
17:58:00 Join jgarvey [0] (
17:59:23 Quit mf0102 ("Ex-Chat")
17:59:25LloreanLambdaCalculus37: They do have a different DAC though. I'd assume it'd be an aspect of that, though I'm not sure.
18:01:21 Join moos [0] (
18:04:51 Quit bughunter2 (Nick collision from services.)
18:04:58 Nick bughunter21 is now known as bughunter2 (n=Jelle@
18:12:12 Quit petur ("work->home")
18:12:38 Quit perrikwp (" ajax IRC Client")
18:13:41 Join kachna [0] (
18:18:39 Join PaulJam [0] (
18:21:47 Quit BigBambi (" ajax IRC Client")
18:24:20 Join maffe [0] (
18:24:42 Join bertrik [0] (
18:24:44 Quit maffe (Client Quit)
18:27:15 Join perrikwp [0] (i=98212a43@gateway/web/ajax/
18:29:54 Quit jfc^3 (Read error: 104 (Connection reset by peer))
18:30:22 Join jfc^3 [0] (
18:30:43 Join Strife89 [0] (n=michael@
18:30:44 Quit Nico_P (Read error: 104 (Connection reset by peer))
18:36:28 Join bmbl [0] (n=Miranda@unaffiliated/bmbl)
18:38:06 Join domonoky [0] (n=Domonoky@rockbox/developer/domonoky)
18:40:27 Join faemir [0] (
18:42:28 Join aarcane [0] (
18:45:59 Quit moos ("Rockbox rules the DAP world")
18:50:23 Join skipper [0] (
18:51:29 Join massiveH [0] (
18:51:44 Join Strife1989 [0] (n=michael@
18:52:02 Join jhulst [0] (n=jhulst@unaffiliated/jhulst)
18:52:04 Quit Strife89 (Nick collision from services.)
18:52:18 Nick Strife1989 is now known as Strife89 (n=michael@
18:52:43LambdaCalculus37I think there's something wrong with; I just reinstalled my build environment on my Mac when the MIPS target was added to SVN, and I've just noticed that sh-elf-ld is missing from /usr/local/sh-elf/bin. Now I can't build any builds for the Archos targets.
18:54:18LambdaCalculus37Any ideas why this is so?
18:54:57 Join Siku [0] (
19:01:01 Quit Darksair ("Use the Force, Luke!")
19:03:05 Quit Kopfgeldjaeger (SendQ exceeded)
19:03:25 Join Kopfgeldjaeger [0] (
19:03:41 Join BigBambi [0] (n=Alex@rockbox/staff/BigBambi)
19:05:09 Join meven [0] (
19:05:21 Quit meven (Remote closed the connection)
19:06:17n1sLambdaCalculus37: i ran it a few days ago to build a complete toolchain for sh, arm and m68k and it worked just fine
19:06:30n1son ubuntu though
19:06:52n1sis it just ld that is missing or all of binutils?
19:07:38 Join nuonguy [0] (
19:19:42 Quit mofux (Read error: 110 (Connection timed out))
19:19:59 Join mofux [0] (
19:20:31amiconnLlorean, n1s: The DAC is what determines these capabilities. The Nano has a different DAC than the Video. I didn't check what sample rates are possible on the Nano
19:21:42n1samiconn: I thought that the clock sources had to be right too, isn't that of any concern?
19:22:15amiconnThe audio codec is i2s clock master in the ipods
19:23:29 Quit Bensawsome ("The awsome is gone :(")
19:23:39 Quit jhulst (Read error: 110 (Connection timed out))
19:24:17amiconnI already looked into the sample rate setup for ipod video, but I have no device to test it on,
19:25:12n1samiconn: the midi player does 4 multiplies for each active voice for each sample pair so that is ~2.8 million multiplies per second in 44.1 kHz and i guess that's what's killing the armv4's
19:25:23 Join petur [0] (
19:25:36amiconnWhat kind of multiplies?
19:26:23n1sthey are all int * int so i guess that's a signed 32 bit
19:26:58 Join Bensawsome [0] (n=Bensawso@unaffiliated/bensawsome)
19:27:13LambdaCalculus37n1s: Just sh-elf-ld
19:27:17n1salthough one could be done as unsigned char * int would that help?
19:27:52n1sLambdaCalculus37: weird, also gcc's libs shouldn't have linked ok if that was missing when you built it
19:28:33n1syes the loop in synthVoice
19:28:45LambdaCalculus37n1s: That's what I was wondering, too. And it's a little annoying trying to build for the JBRv1 and having it error out when it begins compiling the plugins.
19:28:58n1span is between 0 and 127 so it could be a shorter type
19:32:31n1samiconn: another way to help that loop a little is create separate loops and select the right one on function entry for some of the conditionals but i think that is kind of messy
19:33:43*amiconn wonders what this s1 << 9, s2 >> 7 shifting magic is meant for
19:34:28amiconnAh, combining the samples
19:38:41 Join Thundercloud [0] (
19:40:53***Saving seen data "./dancer.seen"
19:45:16 Join jhulst [0] (n=jhulst@unaffiliated/jhulst)
19:45:47*amiconn figured out how to safely re-add the 1.5-cycles (average) optimisation to the armv4 divison, and found another unnecessary instruction while doing this
19:48:48 Join Horscht [0] (n=Horscht@xbmc/user/horscht)
19:49:25 Quit n17ikh|Lappy (Read error: 110 (Connection timed out))
19:55:17 Join Zagor [242] (
19:55:48planetbeingDoes anyone here know the progress of the Meizu port?
19:56:46 Join kugel [0] (n=chatzill@unaffiliated/kugel)
19:58:41gevaertsplanetbeing: the forum thread is up to date
20:01:02planetbeingThey have the same FTL driver as I need, so I'm hoping to either snipe some code from them or work together with them on the FTL stuff.
20:01:37gevaertsAh, ok. As far as I know there is no FTL code yet
20:02:50 Quit perrikwp (" ajax IRC Client")
20:04:11planetbeingThere's this thread:
20:04:43planetbeingApparently, just a day ago they were trying to fish some specs out of some sketchy person.
20:04:59gevaertsMaybe that will get something, but I'm not too hopeful
20:05:18Bagdersome of those meizume guys have some pretty interesting knowledge
20:05:33planetbeingWhat do you mean? ==P
20:05:48planetbeingYeah, well, they're in China and that's leak central.
20:06:17Bagderquite clearly some of them are insiders or have inside connections
20:06:34kugelbertrik: I got a microsd now
20:06:36planetbeingThat makes me kind of nervous from a legal perspective though.
20:07:18planetbeingBecause ideally the resulting source code has to be clean.
20:07:45Bagderright, but there's always going to be gray areas when you get info from people with nicknames on the net
20:08:14Bagderwe too make an effort to do things the legal way
20:15:18 Join FOAD_ [0] (
20:17:24 Join perrikwp [0] (i=d1a8d351@gateway/web/ajax/
20:19:56denes_planetbeing: why are you interested in the samsung ftl? I am slowly but surely reverse enginereeing it.
20:22:30planetbeingI just PM'ed you. =P
20:22:39planetbeingOn that meizume forum.
20:22:48planetbeingI'm working on the same stuff for the iPhone.
20:22:58planetbeingWe have pretty much those same Whimory strings.
20:23:07denes_gevaerts: yes, I don't think samsung will divulge the specifics of the alorithm. but let us not underestimate the chinese support :)
20:23:29planetbeingI'm making a raw dump of iPhone NAND as we speak, actually.
20:23:57planetbeingI only reversed the LLD, as they call it, in Samsung nonmenclature, but that's sufficient to give me raw reads.
20:24:26denes_planetbeing: raw reads work on the meizu also
20:24:51planetbeingI was thinking we could work together on reversing it.
20:24:57denes_planetbeing: I am slowly reverse engineereing the VFL_Init, FTL_Init functions - these are done, just a few mallocs
20:24:59planetbeingSince it's so big.
20:25:16denes_planetbeing: then I have reverse engineered the vfl_open hopefully
20:25:32planetbeingAny idea how they're storing the BBT yet?
20:25:34denes_planetbeing: now it's the ftl_open's turn - that's more difficult
20:25:42denes_planetbeing: what is "bbt"?
20:25:47planetbeingBad Block Table.
20:25:52planetbeingI've got a VFL_ReadBBT function.
20:26:06denes_planetbeing: cool, I don't have such a thing :|
20:26:25planetbeingLet me find where it's called.
20:26:27denes_planetbeing: it's not entirely sure, that the iphone and this meizu uses the exact same algorithm
20:26:42planetbeingThat's true.
20:26:42denes_planetbeing: just my rough guess, from thesame name (whimory)
20:27:12planetbeingiPhone has fewer strings in general than a strings dump that I've seen.
20:27:53denes_planetbeing: so to rev.eng. FTL_open i will have to first reverse engineer vfl_read, and the raw nand reader (I only looked at some tricks init, not the whole stuff, i.e. what parameter does execlty what, etc.)
20:27:56planetbeingI've tried reading whatever public docs Samsung has on this stuff; they're likely to use close to the same thing for everything.
20:28:27planetbeingI thought you already had the raw NAND reader?
20:28:34denes_planetbeing: after FTL_open (and vfl:read) only ftl_read is left, and it should be done - read only that is of course
20:28:48planetbeingHah, yeah.
20:28:50denes_planetbeing: i have the raw nand reader, but only a small part is from reverse engineereing
20:29:08planetbeingAll of mine is from reverse engineering, heh.
20:29:30planetbeingMine works by init'ing the "FIL", which boils down to a table of function pointers.
20:29:41planetbeingThen later functions, like VFL_Read, calls functions from that function table.
20:29:48denes_planetbeing: some things are not clear, like the meizu seems to claim there are 4 banks, when there is only two chips in the package - so that's why I need the specifics from the their raw nand reader
20:30:02denes_planetbeing: yes, exactly
20:30:30denes_planetbeing: so have you found the nand init part, when it calculates the number of blocks, banks, user sectors, etc. ?
20:30:50planetbeingI've reversed that.
20:30:56planetbeingIt just looks them up from a table.
20:30:59planetbeingIt reads a NAND ID.
20:31:04planetbeingAnd looks up the geometry.
20:31:05 Join funman [0] (
20:31:22planetbeingThe number of banks is different.
20:31:35planetbeingThere are apparently a total of 8 banks the hardware can access.
20:31:36denes_planetbeing: aren't the number of banks double of the real number?
20:31:44planetbeingAnd it probes each.
20:31:49denes_planetbeing: i see
20:31:52planetbeingAnd tries to read an ID from each bank.
20:31:58denes_planetbeing: yes, same thing in the meizu
20:32:10planetbeingAnd it just counts up the good matches.
20:32:13planetbeingAnd yeah.
20:32:19denes_planetbeing: but then it multiplies the bank number by two if it is less then or equal to 2 ...
20:32:20planetbeingiPhone has, if I remember correctly...
20:32:24 Quit FOAD (Read error: 110 (Connection timed out))
20:32:25 Nick FOAD_ is now known as FOAD (
20:32:35planetbeingTwo chips on the iPod touch and one on the iPhone.
20:32:44planetbeingMine doesn't have code like that.
20:32:55denes_planetbeing: seem so so. what is the chip model number?
20:33:39planetbeingLook starting from line 40
20:34:01planetbeingThe 4, 2, 4, 2 things appear to be clock settings.
20:34:31planetbeingplanetbeing/iphonelinux/tree/master/trunk/openiboot/includes/nand.h"> is the header
20:37:45planetbeingNot sure if the isBadBlock thing is correctly labeled.
20:38:14planetbeingMaybe it's better labeled isPageErased or something.
20:39:07denes_planetbeing: now your nand descriptor table is a bit different than the meizu
20:39:33denes_planetbeing: the first four is the same
20:39:55planetbeingThe LLD is probably going to be where most of the differences are.
20:39:59denes_planetbeing: but then the other settings on the meizu are boolean
20:40:14 Join Acknix [0] (
20:40:19planetbeingThe core stuff ought to be pretty much the same.
20:40:53denes_planetbeing: anyhow, on the meizu the first four bytes of the last page on the 0. block should contain the WRM_SIGNATURE
20:41:08denes_planetbeing: 06 05 0f 4d
20:41:20planetbeingon bank 0?
20:41:28denes_planetbeing: yes
20:41:34planetbeinglet me check
20:41:40 Quit Slack ("Ex-Chat")
20:41:41 Quit scorche|sh (Read error: 104 (Connection reset by peer))
20:41:56 Quit Thundercloud (Remote closed the connection)
20:41:58 Join Slack [0] (
20:42:00 Quit blithe (Read error: 104 (Connection reset by peer))
20:42:54planetbeing09000000 44 45 56 49 43 45 49 4e 46 4f 42 42 54 00 00 00 |DEVICEINFOBBT...|
20:43:04denes_planetbeing: now it can happen that there are some block reserved for something else
20:43:33denes_planetbeing: there isn't on the meizu, but there is code to skip those blocksa
20:43:36planetbeingI've seen this DEVICEINFOBBT string inside iBoot (the thing I'm reversing).
20:44:00denes_planetbeing: so look at the next block, the next, etc. until you find the one ... i don't have a better idea
20:44:25 Join blithe [0] (
20:44:41 Join scorche|sh [0] (
20:45:03 Join Thundercloud [0] (
20:45:40denes_planetbeing: have you seen this:
20:46:12planetbeingI saw that.
20:46:18planetbeingHe obviously has some code for it. =P
20:46:20denes_planetbeing: BLK_Init is how whimory is initialized. it's the same on the meizu. wmr_signature I have found to be 06 05 0f 4d
20:46:46planetbeingI've the same thing up to line 81
20:46:53denes_planetbeing: and the signature is on the last page of the first block (after the reserved blocks) imho
20:47:21denes_planetbeing: have you reverse engineered the buffer management?
20:48:03planetbeingdenes_: Not really. I recognized it as the buffer management code and left it alone.
20:48:21planetbeinglet me trace back from where it displays "[WMR:ERR] no signature or no production format"
20:48:22denes_planetbeing: anyhow, maybe it's not the last page. so you could search for all pages which contain that signature in the first 4 bytes
20:48:27planetbeingAnd see where mine is.
20:48:31planetbeingand if it's the same sig.
20:48:36denes_planetbeing: okay
20:51:58 Join tyfoo2 [0] (
20:52:09 Join stsquad [0] (
20:52:37planetbeingCode calls stuff I haven't reversed yet, but it references the DEVICEINFOBBT string.
20:53:13stsquadWhat filesystem does the iPod use if not FAT32? My Linux box seems to have failed to identify it in disk mode
20:53:18 Quit goffa (Read error: 60 (Operation timed out))
20:54:27kugelstsquad: if you're running rockbox, it's fat
20:55:01kugelstsquad: fat is called vfat in most cases under linux, and you may have to mount it manually
20:55:07stsquadI've just got this iPod and haven't installed RockBox on it yet. But disk-mode doesn't come up
20:55:27denes_planetbeing: here is all the info I have gathered. it's a bit messy, and perhaps not entirely correct.
20:55:56 Join dany_21a [0] (
20:56:03kugelstsquad: if it's an ipod formatted on a apple computer it has a different filesystem.
20:56:24planetbeingdenes_: awesome!
20:56:36stsquadkugel: I have no idea, it looks factory fresh so I assume it may be apple fs formated
20:56:39denes_planetbeing: then it could be a bit different from the meizu ftl. but I would try to find the page with WRM_SIGNATURE , or something similar to WMR_SIGNATURE (I mean the last digits could be different perhaps)
20:57:16 Join goffa [0] (n=goffa@
20:57:47kugelyou can format it to fat32 using itunes under windows or following the instruction on
20:58:01kugelwhich gen ipod is it?
20:59:01stsquadkugel: 5th Gen Video iPod
20:59:14stsquadHmmm, I have neither windows or Mac handy
20:59:25 Quit dany_21a (Remote closed the connection)
20:59:31kugelthere's instructions to do it with linux
20:59:47 Join dany_21a [0] (
20:59:55denes_planetbeing: FTL_Init and VFL_Init just malloc some stuff (I didn't write it there, only the sizes of the structures)
21:00:44*stsquad digs around to find what device node Linux has randomly assigned
21:04:52planetbeingso the magic is just VFL_Read mostly, I suppose.
21:05:15denes_planetbeing: no, FTL_read I am afraid
21:05:21denes_planetbeing: FTL_read calls VFL_read
21:05:29denes_planetbeing: even FTL_Open calls VFL_read
21:05:37planetbeingthat's what i meant
21:05:44denes_planetbeing: okay :)
21:06:04planetbeingI'm staring at the thing in IDA right now. =P
21:06:06planetbeingIt's not pretty. =P
21:06:16 Quit tyfoo (Connection timed out)
21:06:29denes_planetbeing: if you found the WMR_SIGNATURE (if it's the same) that would be a breakthrough imho
21:06:40denes_planetbeing: but maybe it's different
21:06:54denes_planetbeing: you need to rev.eng. BLK_Init
21:07:08planetbeingI'd need to finish that.
21:07:20planetbeingAll right, I'll work on that right now.
21:07:38denes_planetbeing: anyhow, I am of course interested in your findings
21:07:52*amiconn found another optimisation for armv4 division
21:08:03planetbeingDo you hang out here often?
21:08:24denes_planetbeing: yes, but you can send email too (i send my address in private)
21:08:32amiconnThe div-by-power-of-2 uses an iterative 'clz', but there can only be a single bit set, so I can adapt the ffs-arm code
21:14:12 Join Xerion [0] (
21:14:43planetbeingcount zeros or something.
21:15:01planetbeingcount leading zeros
21:16:23 Join Nico_P [50] (n=nicolas@rockbox/developer/NicoP)
21:17:13funmanah it's an armv5 instruction
21:17:30amiconnYes, so armv4 has to emulate it somehow
21:18:07denes_everybody is using ida for disassembly. i am using objdump :) maybe ida is more powerful...
21:18:27amiconnThe current solution in udiv32_armv4.S (copied from libgcc code; lines 65..83) needs 13 instructions (13 cycles)
21:19:07 Quit Thundercloud (Remote closed the connection)
21:19:22amiconnUsing the ffs() code instead only needs 5 instructions (7 cycles) and a lookup table
21:19:55planetbeingdenes_: I used to use objdump too (well, otool actually). Once you're used to IDA, it makes you a lot more efficient.
21:20:09amiconnThis is possible here because it's known that only a single bit is set. so clz(val) = 31 - ffs(val)
21:20:11planetbeingdenes_: All my BUF_GETs are called with 0x10000000 as the only arg. =P
21:21:16 Join Strife1989 [0] (n=michael@
21:21:26 Quit Strife89 (Nick collision from services.)
21:21:31 Nick Strife1989 is now known as Strife89 (n=michael@
21:22:23 Join lasser [0] (
21:23:17denes_planetbeing: that probably just means BUF_MAIN_AND_SPARE, like in the powerdevice BLK_Init code
21:23:50planetbeingdenes_: Would make perfect sense.
21:27:59 Quit jhulst (Read error: 110 (Connection timed out))
21:33:50 Quit stsquad (Remote closed the connection)
21:35:10 Quit nplus (Remote closed the connection)
21:38:20 Quit Xerion (" ")
21:38:57 Quit massiveH ("Leaving")
21:40:57***Saving seen data "./dancer.seen"
21:46:47 Part Llorean
21:47:07 Join Llorean [0] (
21:49:04 Quit {phoenix} (Remote closed the connection)
21:50:38 Join saratoga [0] (n=9803c264@gateway/web/cgi-irc/
21:51:57bertrikkugel, nice
21:52:29bertrikkugel, maybe I can whip up something this weekend to read the mystery i2c bus on the fuze
21:53:03bertrikI couldn't really find much references to the i2c code, maybe it's used for the buttons, or maybe for the radio
21:53:39saratogan1s: regarding midi optimization on armv4, you get one cycle of pipeline stall for each 8 bits in the multiplier
21:54:01saratogaif you can prescale some of your values, you can often save CPU time
21:54:54amiconnThis only applies to arm < v6 afaik
21:55:30saratogamost of the ARMv5 chips have single cycle muls too, though maybe not all
21:55:56amiconn(which most of our arm targets are though, and the one that is v6 doesn't suffer from performance problems)
21:57:10amiconnMultiply instructions on arm1136 are single cycle, but only with proper pipelining (latency is several cycles)
21:57:35amiconnProper pipelining seems to be rather important on armv6
21:57:56*amiconn already knows that kind of pipeline interlocks from the SH1
21:59:03 Quit LambdaCalculus37 (" ajax IRC Client")
21:59:48bertrikkugel, looking at the fuze disassembly on abi it looks like there are a lot of traces going to the front part of the player (with the buttons, leds, etc.). If it were done over i2c, I would expect a lot less traces.
22:00:05amiconnEven ldmia and stmia with multiple registers are single cycle, if the registers aren't (re)used too early. The loads and stores then effectively happen in the background
22:00:24 Quit Strife89 ("Well, I've got to get ready for another round of Chicago tonight. Wish the crew well if you want. ;)")
22:00:39saratogaamiconn: thats pretty neat
22:00:49saratogai need to read about the newer ARM cores
22:01:06amiconnYup. The internal data paths are 64 bit, so it can load/store 2 regs per cycle to/from the cache
22:01:46 Join Thundercloud [0] (
22:02:13*amiconn tried to exploit these features in the APE filters as far as possible
22:02:33 Join massiveH [0] (
22:06:26 Join n17ikh|Lappy [0] (
22:06:43planetbeingdenes_: Mine scans each page of the first block, looking at the first four bytes in each page, looking for this magic: 0x43303033
22:07:00planetbeingdenes_: If the magic is not present in any page of the first block, it gives that WMR signature error.
22:07:14funmanbertrik: kugel, fdinel told me he found the code for the buttons in the fuze but it's rather complex. appears to use interrupts, just like the e200v1
22:09:06bertrikok thanks, IIRC I noticed some GPIOs set up for interrupt too
22:09:53bertrikso that increases the chance for the GPIO i2c bus to be there to control the fm chip
22:10:24bertrikor it could be more stray driver code ...
22:11:40bertrikgetting the radio to work could be a quick hack to get "first sound" on a sansa v2 :)
22:12:08denes_planetbeing: interesting. than it's different from the meizu...
22:13:26saratogaamiconn: looking at the arm9tdmi datasheet, the load time is a single cycle per word, both for single and multiple loads
22:13:39saratogais there any advantage to doing ldm aside from reduced code size?
22:14:47amiconnNo. The reduced code size can help indirectly though (better cache usage)
22:15:36planetbeingdenes_: It also seems to use a different ECC format for those pages.
22:16:40amiconnAnd of course another advantage is to not have different code than for arm7tdmi (where ldm is n+2 cycles while ldr needs 3 cycles, hence loading n words individually would need 3*n cycles), and arm11 (where ldm is one single cycle vs. n cycles for individual loads)
22:17:11denes_planetbeing: I haven't looked at the ECC myself
22:17:28denes_planetbeing: I see you have coded that too. nice work btw.
22:21:23 Join ajonat [0] (n=ajonat@
22:23:07planetbeingdenes_: thanks, but the underlying hw is probably different for the meizu.
22:23:27planetbeingthe flash controller that is
22:27:09 Quit perrikwp (" ajax IRC Client")
22:32:13saratogaamiconn: isn't it 2*n for loads on ARM7tdmi? I think the third cycle where it writes back the value to a register can be overlapped with the next's instruction fetch
22:33:38amiconnNo, it is 3*n for loads (and 2*n for stores)
22:34:06amiconnARM7tdmi doesn't overlap anything
22:35:27 Join mofux_ [0] (
22:36:33denes_planetbeing: I think the flashcontroller must be similar. meizu is s5l8700 iphone is probably s5l8900
22:37:13amiconnThe manual says that memory cycles can be merged
22:37:37denes_planetbeing: so I think you should check out the datasheet of s5l8700 -
22:39:57saratoga"The third cycle can normally be merged with the next memory prefetch to form one memory N cycle
22:40:01saratogaah yeah
22:41:59*gevaerts 's F20 is running test_codec again on the APE files
22:42:37 Quit mofux (Read error: 145 (Connection timed out))
22:42:48 Quit Bensawsome ("The awsome is gone :(")
22:46:00 Join evilnick [0] (i=0c140464@gateway/web/ajax/
22:47:26 Join Bensawsome [0] (n=Bensawso@unaffiliated/bensawsome)
22:49:12 Quit evilnick (Client Quit)
22:49:43planetbeingdenes_: I'll take a look.
22:50:15 Quit esthar ("KVIrc 3.4.0 Virgo")
22:52:30 Part dany_21a
22:53:36saratogaamiconn: I've trying to read through some .S files, but am not too familar with how c works
22:53:47saratogaare function arguements in specific registers or on the stack?
22:54:04amiconnDepends on the architecture and on the number of arguments
22:54:53amiconnBoth ARM and SH1 use regparms for functions with <= 4 arguments (ARM uses r0..r3 and SH1 uses r4..r7)
22:55:32amiconnColdfire always uses the stack, as does SH1 for functions with > 4 arguments (or variadic functions)
22:55:58saratogaah so "str r0, [r13, #12] " is putting the first function argument onto the stack?
22:56:31amiconnI'm not sure whether ARM uses only the stack for > 4 arguments, or whether it passes the first 4 in registers as well
22:56:56funmanFrom what I read in the SansaV2 OF, the first 4 arguments are always in r0-r3
22:57:08amiconn#12 should be the 4th argument
22:57:32amiconnfunman: Does the caller put them on the stack as well, or only into the registers?
22:57:56 Join esthar [0] (
22:57:57funmanno duplication, the stack is only used for the 5th - nth arguments (if any)
22:58:10amiconnAh, then that is different from SH1
22:59:21amiconnSH1 puts everything on the stack if there are > 4 arguments. That means it's very helpful to try and keep the argument count <= 4 (smaller code)
22:59:28 Quit J-23 ("Flying cow pressed ^D on my keyboard.")
23:00:08gevaertsamiconn: new gigabeat f numbers at
23:00:11funmanisn't that operating system specific ?
23:00:17amiconnSo offset 12 would be the 8th argument (assuming arguments of <= 32 bit length)
23:01:03funmanamiconn: if the stack pointer is decremented, that could be the 5th, and 3 others following, no ?
23:01:22kugelbertrik: cool
23:01:53kugelfunman: sounds good. btw: I have an microSD now
23:02:03amiconnfunman: It's ABI specific.
23:02:56amiconnThe ABI is often fixed for an architecture
23:03:26funmankugel: cool, should I understand that you volunteer to write the SD code until we get access to the SD card on the Clip/m200 ? :)
23:04:02gevaertsgigabeat S is still 3 to 5 % faster per MHz than gigabeat F for -c1000
23:04:12kugelbertrik: I'd love to have the first "gentlemen we have sound" telling "we heard radio" ;)
23:04:43saratogathe VFP on the GBS is FP only, and thus not useful for APE right?
23:04:53amiconngevaerts: I would hope so...
23:05:24gevaertsamiconn: you're getting close :)
23:05:25amiconnsaratoga: Correct. The filters do use the armv6 simd instructions where possible though
23:05:57BigBambigevaerts: I do like "1748.38MHz needed for realtime"
23:05:58kugelfunman: I don't think so :( But I heard the external sd could be an easier job?
23:06:38amiconnBigBambi: PP5002 would even need 2151MHz for -c5000 realtime...
23:06:46BigBambiamiconn: Nice :)
23:07:05funmankugel: the current code in svn works for the power-up procedure on the external SD (i.e. the SD slot). just comment the 2 calls with NAND_AS3525 as parameter to try on the Fuze.
23:07:33BigBambiI'mn still relatively amazed that ape runs as well as it does. That's some good work there
23:07:35kugelon the weekend
23:07:45kugelI'm busy right now and will be tomorrow
23:07:53funmanexcept the missing bit we need to have the power-up work on the internal SD (i.e. the one connected to the iNAND chip), all the code should be 100% the same
23:08:34 Quit jgarvey ("Leaving")
23:09:13planetbeingdenes_: actually, i think that's quite a good match! thanks for the data sheet, heh.
23:09:24*gevaerts wonders if assigning the 32K of unallocated IRAM on PP5022 to codecs may get -c200 over 100% on sansa
23:09:37 Quit domonoky (Read error: 104 (Connection reset by peer))
23:09:44saratogaamiconn: are you familar with the coldfire mp3 optimizations?
23:11:08amiconngevaerts: No, and btw the IRAM isn't unallocated
23:11:34amiconnIt's already used, but all it can do is speed up -c5000 from 3.6% to 4.1% ;)
23:12:39gevaertsIt isn't? I thought the 5022 had 128K while all 502x builds only use 96K?
23:12:41amiconnA dual core split should bring -c1000 to ~195% realtime and -c2000 to ~150% realtime though
23:13:20Bagderglad to see you spend all this time on APE, I'm sure both users will appreciate it! ;-P
23:13:36amiconn(doing entropy decoding on CPU and filter, predictor and decorrelation on the COP)
23:14:41funmanBagder: :) don't you think they would better spend free time on the sansav2?
23:15:08gevaertsfunman: this also benefits sansav2 ;)
23:15:36 Join J-23 [0] (
23:16:12 Quit J-23 (Client Quit)
23:25:35 Quit DerPapst (Read error: 113 (No route to host))
23:31:19 Join krazykit [0] (
23:31:20funmanbertrik: did you notice OF sets SLAD1 (not listed in the datasheet for audio master) register to the same value than SLAD0
23:32:34 Quit Siku (Read error: 145 (Connection timed out))
23:41:00***Saving seen data "./dancer.seen"
23:43:51 Join perrikwp [0] (i=d1a8d351@gateway/web/ajax/
23:49:53 Quit funman ("leaving")
23:52:16 Join MethoS- [0] (
23:53:13 Quit MethoS- (Remote closed the connection)
23:55:07bertrikfunman, I think SLAD0 and SLAD1 are not that important because that for the master/slave i2c bus, which is probably not even used
23:55:35 Quit mofux_ (Remote closed the connection)
23:57:17 Join MethoS- [0] (
23:58:09 Quit MethoS- (Remote closed the connection)
23:58:39 Quit ender` (" If I had only finished this sentence,")
23:58:40 Join MethoS- [0] (

Previous day | Next day