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 2005-05-18

00:03:19 Join ashridah [0] (
00:10:29 Quit cYmen ("zZz")
00:18:13 Quit ashridah ("Leaving")
00:28:45Bagderipodlinux stole our doom april fool's joke!
00:28:59Bagdercompare with
00:29:15Bagdercorrection, stole it
00:34:08 Quit Aison ("( :: NoNameScript 3.72 :: )")
00:35:05***Saving seen data "./dancer.seen"
00:39:10preglowi wonder how possible doom is for h3x0...
00:41:39amiconnThe iriver should be powerful enough to run doom
00:41:50preglowyes, i believe so
00:41:57amiconnI remember playing it on a 386/40 with only 4 megs of ram
00:41:58preglowold crummy 486 could play doom
00:42:15preglowand that was at 320x200
00:42:40preglowbut i guess it'll be a nightmare to navigate, heh
00:42:45amiconn...and it runs (pefectly playable) on the Amiga, with 68040 or better cpu
00:43:22amiconnAn even bigger nightmare for a first person shooter would be the slooow display...
00:43:26crashdis there any ARM gurus about tonight ?
00:43:37preglowcrashd: just ask
00:43:51preglowi know a teeny bit arm :V
00:43:57crashdheh, i know a teeny bit too :\
00:44:07crashdim working on reverse engineering the flash code for the h10
00:44:24preglowsounds like "fun"
00:44:30crashd(i know it's not totally relevant, sorry)
00:44:38crashdhehe, fun isn't even the word to begin to describe it preglow ;)
00:44:49crashdanyway, i think ive located most of the decryption stuff (for the firmware file)
00:44:56crashdi just wanted a second pair of eyes on it
00:46:38preglowso, where is it?
00:51:34*preglow looks at the doom source code
00:54:10 Join TCK- [0] (
00:55:13 Join StrathAFK [0] (
00:57:29 Quit matsl (Remote closed the connection)
01:05:49crashdsorry, i went for a smoke break :]
01:06:27crashdis the arm-elf-objdump dead listing of it
01:09:09preglowof what? encrypted flash file?
01:10:17crashdits the dead listing of the unencrypted flash file for the h10
01:10:31 Join _aLEX [0] (
01:10:31 Quit _aLF (Read error: 131 (Connection reset by peer))
01:10:31preglowhow'd you get the unencrypted flash file?
01:10:32crashdthere's another encrypted file, which is the firmware os file, which lives in device:\system\h10.mi4
01:10:43crashdit comes unencrypted with various firmware updates
01:10:48preglowdidn't know that
01:10:52crashdthey rarely update the flash though, as there's no need
01:10:55crashdbut they have once or twice
01:11:06preglowso, where do you think you've found the decrypt code?
01:12:43crashdgets jumped to more than once
01:12:52crashdand there's so many eor's + add's
01:13:03crashdleads me to believe (with a tip off from an ipodlinux developer)
01:13:08crashdthat's it rc4 decryption code
01:13:08 Quit Strath (Read error: 110 (Connection timed out))
01:13:31preglowwell, at least it looks like proper code
01:13:36crashdyah, i mean
01:13:43crashdthere's a fair amount of string data etc.. in that dump
01:13:56crashdas it didnt distinguish between them and just tried to semantify every byte it found
01:14:03crashdif you open the rom in ida you can easier see what's code and what's data
01:14:32preglowyeah, sure
01:14:45preglowstrange of them to encrypt their data, then just give away the unencrypted decrypt routine
01:15:04crashdyeah, i mean it's less secure than the ipod's firmware was
01:15:22crashdapple seems to have done it the other way round with an encrypted flash file and a decrypted firmware
01:16:04crashdi dunno, it was only by chance that i managed to grab the flash file, it was sitting on my iriver after an update and i hadnt yet ran the 'firmware update' from the unit itself
01:16:27preglowbut this most definitely looks like encryption stuff, yeah
01:16:44preglowbut then again, i'm no expert
01:16:47crashdnor i
01:17:49preglowbut just write it what it does in a more readable form and see if you find some algo that matches :V
01:17:58preglowthen try to extract keys some place
01:18:03crashdyeah, i mean that's the plan
01:18:04preglowthe function takes two parameters, i see
01:18:11crashdalthough it's 00:20 here, so im a bit beat :]
01:18:18preglow1:20 here, heh
01:19:08crashdi assume one of the params is a memory location for the data and the other is a key ;)
01:20:27preglowno, it takes a bunch of parameters
01:20:34preglowi forgot arm usually passes those in registers
01:21:55preglowlooks like r0 contains the address of some input array, and r1 the output array
01:22:00preglowr9 is loop index
01:24:39crashdsorry, im pretty slow with arm
01:25:03preglowi've never used it before, so i might very well be spouting bullshit here
01:25:11preglowbut i picked some arm up when porting a libmad routine to coldfire
01:25:13crashdwell, from what i can figure i'd agree
01:25:15 Quit NibbIer ("blubber")
01:25:24crashdit seems to jump into the branch after setting up the registers
01:25:41 Quit _aLEX ("Leaving")
01:25:41crashdand then loops round till it hits the right circumstances
01:28:20preglowi don't get all the shifting
01:34:02preglowbut yeah
01:34:08preglow2feec is the entry point, no?
01:35:20preglowand literal pool starts at 3004c
01:35:41preglowhey, this _is_ fun :P
01:35:53crashd2feec you reckon
01:35:58preglowwell, yeah
01:36:02preglowthat's a typical arm entry point
01:36:06preglowit's saves all the registers to stack
01:36:09preglowso it can clobber them
01:36:15crashdid agree with that
01:36:30preglowand the instructions before that is gibberish
01:36:38preglowi literal pool, i guess
01:36:42preglowi = a
01:38:06crashdin ida i can see that 3004c is the start of the literals, including
01:38:26preglowthat is a literal pool, i'm certain
01:38:37crashd'system\\h10.mi4', which is the encrypted firmware
01:38:39crashdamongst other things
01:38:56crashdi dont doubt you ;) you are more on the ball than i am
01:39:24crashdim just gonna go for a smoke, bbias
01:39:50preglowi want a smoke too :/
01:39:59*preglow gets coffee
01:43:03preglowbut yeah, r3 is pointer to filename, obviously, it's set to system\\h10.mi4 if the pointer is null
01:46:39preglow.mi4 seems to be appended to the filename
01:51:27preglowif r2 is less then 8, 0x30034 is called, i think
01:59:37crashdour house is full of chronic smokers, so it's been really ahrd to quit, heh
02:00:17preglowi just keep my consumption down to a couple a day, so i never feel the need :P
02:00:56preglowseems like this routine of ours returns a 128 bit number
02:01:18crashd128 bit you say
02:01:35crashdid be guessing that thats a key then
02:01:38 Nick StrathAFK is now known as Strath (
02:01:44crashdeither that, or half a key
02:01:51crashdas the ipod uses a 256bit key
02:03:38preglowbut it also most certainly gets data from an array, and saves an equal amount to another array
02:05:10preglowi wonder what the hell it uses the filename for
02:05:20preglowit's involved in the tons of calculations
02:06:36preglowwhat data is at 3004c?
02:06:57preglowis that the file name?
02:07:49crashdit's the start of a block which includes the filename, amongst other stuff
02:07:57crashdwell, it's just before the block
02:08:38preglowso it's just numbers?
02:09:20preglowthe first 16 bytes seem to be a default of some kind
02:09:32preglowthe 4 bytes after those aren't anything special either?
02:09:53preglowthat is, 30060
02:10:15preglowwhat's there?
02:12:53preglownow i get it
02:13:27preglowthe 128 bits are the decryption state
02:13:47preglowfor the first call, the routine is called with r3 = 0, so the default state is loaded
02:14:02preglowbut every time after that, the routine is called with the 128 bits it returned last time
02:14:11preglowit probably needs to return now and then to load more data from disk
02:15:22preglowthe key is the data at 3004c, i'll wager
02:15:58preglowthe 128 bits probably also acts as a checksum
02:16:12preglowthis is probably a block cipher, just like they used for h1x0
02:16:52crashdnot a stream cipher then
02:17:32preglowwell, kind of
02:17:35preglowbut it works in blocks
02:17:45 Nick tvelocity is now known as tvelocity[away] (
02:17:51preglowand has checksums interleaved here an there
02:18:29preglowbut i can't find a place calling this routine of ours
02:19:58crashdmaybe somewhere else the address is constructed into a register or two, then popped onto the pc?
02:20:43preglowi can't even find another place that looks like it has code
02:21:28crashdfrom 0x0 - 0xcc 'ish looks fairly sane
02:21:58preglowno, not really, no
02:22:13HClits too late :x
02:22:24crashdHCl: you can say that again :\
02:23:43preglowsomething's happening around 94, though
02:24:00HClthat again :\
02:24:04crashdHCl: heh
02:24:21HCl :p
02:24:28crashdpreglow: but why would the entry point be there O.o
02:24:55preglowHCl: nigthie
02:25:06preglowcrashd: no idea, but it's pretty irrelevant
02:25:15preglowcrashd: you should try coding this decryption routine
02:25:32preglowyou'll still have to guess the block size and file structure, though
02:25:53preglowbut i'm fairly certain it's supposed to be used like i described
02:25:55crashdand how much of the encrypted file it's reading, i took a look at it just a few minutes ago and it's got a header in it
02:26:05crashdand im unsure how big the 'header' if before it's the actual encrypted stuff
02:26:24preglowhmm, yeah
02:27:18preglowbut no, the rest of the file looks like extreme gibberish
02:27:25preglowsane arm code is pretty easy to spot
02:27:39preglowsince insane arm code has conditionals in more or less all instructions
02:28:34crashdyeah, it does look like a lot of gibberish, after staring at the 'sane' parts for a while
02:29:34crashdim guessing at least some of this is going to be image data and the like
02:29:37crashdalong with the literals
02:30:07crashdas the h10 still retains the ability to display the 'iriver' logo even without a firwmare file
02:31:06preglowbut yeah
02:31:10preglowall this isn't image data, heh
02:31:25crashdnot all of it, obv, hehe
02:31:34crashdim just postulating :\
02:32:15preglowbut how does firmware stuff work with h10?
02:32:20preglowi get the impression it's not all flash based
02:32:39crashdthere's 2 parts, the initial "bootloader", which is this file
02:32:49crashdand then, there's h10.mi4, which is the rest of the opereating system
02:33:09crashdit's the h10.mi4 that iriver update, usually, as they have no reason to update bl_h10.rom, unless tehy change their encryption or whatever, i guess
02:33:44preglowso the file we're looking at now is what gets flashed?
02:33:53crashdand loads the rest of the os
02:34:49preglowi was talking bs, btw
02:34:56preglowthe code around 0 might be good
02:35:00preglownow, if i could only concentrate...
02:35:07crashdall the branches?
02:35:09***Saving seen data "./dancer.seen"
02:35:37crashdive got a pretty bad wandering mind at the moment
02:35:42crashdcould do with a nice pot of coffee
02:36:28preglowall the branches, yeah
02:36:41preglowmight easily be what a interrupt vector table looks like for arm, for all i know
02:39:09preglowno, the code is decent
02:39:12preglowi just have no idea what's going on
02:39:37crashdyou're further than i am, for sure
02:42:58preglowmore decent code around ee44
02:43:06preglowthe code at 0 actually ends up there
02:47:10preglowhmm, they might be using thumb code here and there
02:47:14preglowthat's a bit of a show stopper
02:48:15crashdthat's true
02:49:03preglowthere are plenty of bx instructions around
02:49:46preglowso it actually seems like that's the case, i'm afraid
02:50:03crashdhehe, this creates a problem :|
02:50:05crashdi need another smoke
02:50:06 Quit amiconn (Read error: 110 (Connection timed out))
02:50:21crashdif you're not about in 5, thanks for taking a look :] if i make any headroom or whatever ill be around
02:50:37 Join amiconn [0] (
02:52:27preglowi suppose it makes sense for them to use thumb code if they've only got limited flash space for a bootloader
02:52:53preglowbut yeah, you'll need to do some more advanced disassembling, then
02:53:02preglowbah, it's getting light outside
02:53:30preglowi always feel clever when i go to bed when it's starting to get lighter out
03:00:28crashdi know what you mean :]
03:00:37crashdim gonna get to bed before the sun can mock me with its rays
03:00:53preglowtoo late for that
03:01:19preglowbut i'm going to bed nevertheless
03:01:24crashdnn dude
03:01:26crashdthanks for your help :]
03:01:33preglowno problem, it was fun, heh
03:01:44 Quit preglow ("gnite")
03:39:23 Join lostlogic [0] (
03:53:08 Join asdsd____ [0] (
03:53:12 Part asdsd____
04:02:59 Quit tvelocity[away] ("Leaving")
04:06:11 Join QT_ [0] (as@area51.users.madwifi)
04:19:04 Quit QT (Read error: 110 (Connection timed out))
04:25:09 Quit Seed (Nick collision from services.)
04:25:17 Join Seed [0] (
04:35:12***Saving seen data "./dancer.seen"
04:35:21 Join tvelocity [0] (
05:10:30 Quit tvelocity ("Leaving")
05:38:36 Quit Aditya ("Download Gaim:")
05:44:30 Quit Seed (Nick collision from services.)
05:44:38 Join Seed [0] (
06:35:13***Saving seen data "./dancer.seen"
06:43:33 Quit DMJC ("Leaving")
07:08:07 Quit courtc (Read error: 110 (Connection timed out))
07:25:05 Join LinusN [0] (
07:27:52 Join webguest24 [0] (
07:32:09 Join wacky_ [0] (
07:32:32wacky_the fwpatcher.exe crashes with wine over here...
07:32:53LinusNhiw nice :-)
07:32:55wacky_also, which bootloader is included within fwpatcher ?
07:33:06LinusNthe same one as in the wiki
07:33:16wacky_the 11/02 ?
07:33:34 Join I-R-Addict [0] (
07:33:38wacky_so it's nothing good for the 1.65 firmware ?
07:33:44LinusNyes it is
07:33:53wacky_? how come ?
07:33:59LinusNthe 1.65 bug wasn't in the boot loader, but in the patcher
07:34:02I-R-Addicthello fellow iRiver-ians
07:34:05wacky_well it's going to mess up the ogg playback ?
07:34:09wacky_oohhhhh, goody :)
07:34:29LinusNI-R-Addict: hello, iriver ninja
07:34:33wacky_so I can just cvs up the rockbox dirs and use the same process as usual..
07:34:35wacky_ok good thanks
07:35:14*I-R-Addict is just going to sit in and listen to some technical talk
07:35:19I-R-Addicthope you don't mind :)
07:35:24*Rick blabbers technospeak for I-R-Addict
07:35:34I-R-Addictahh excellent. lol
07:35:48RickLinusN: what's shakin'?
07:36:06LinusNmy hands, since i haven't had my morning coffee :-)
07:36:32*LinusN runs to fill his cup
07:39:33LinusNother than that, not much shakin' goin' on
07:39:50LinusNbeen busy with Real Life and Paid Work
07:40:51Rickwhat do you do (for work)?
07:43:40LinusNi'm an embedded systems engineer (surprise)
07:44:57LinusNthis is what i'm working on right now:
07:45:42 Quit I-R-Addict ("CGI:IRC (EOF)")
07:50:06 Join I-R-Addict [0] (
08:12:25 Quit webguest24 ("CGI:IRC")
08:18:05 Join StrathAFK [0] (
08:20:39 Quit Stryke` ("Friends don't let friends listen to Anti-Flag")
08:26:16RickLinusN: nifty. Don't get anyone killed now. ;)
08:26:44 Join courtc [0] (
08:31:15LinusNRick: i can imagine myself, in the ambulance after an accident
08:35:16***Saving seen data "./dancer.seen"
08:35:55 Quit einhirn ("Miranda IM! Smaller, Faster, Easier.")
08:37:19 Quit Strath (Read error: 110 (Connection timed out))
08:38:59Rickhaha :)
08:42:54 Join Aison [0] (
09:01:53 Nick Lynx_awy is now known as Lynx_ (HydraIRC@
09:02:24Lynx_LinusN: do you put easter eggs in? Like if a certain button sequence is pressed tetris comes up on the screen? ;)
09:02:51 Join einhirn [0] (
09:03:20LinusNLynx_: hehe, i wouldn't dare to
09:03:34LinusNstill, it would be really nice to be able to play games on it
09:03:59LinusN800x600 color TFT
09:04:23LinusNtouch screen
09:06:32Lynx_i dunno, medical instruments with soo much done in software scare me ;)
09:07:02LinusNme too :-)
09:07:55LinusNhowever, the testing is rigorous, to say the least
09:09:05Lynx_yes, one would assume so. i guess a company could not recover from a device that kills a few patients.
09:15:58dwihnois there a simple way to keep track of changed .h files (dependencies?) in a GNU Makefile?
09:16:17Bagdergcc -MM
09:16:26Bagderbut no
09:16:50Bagderyou can check the rockbox makefiles for one way of doing it
09:35:05dwihnoI can't understand that DEPFILE magic
09:37:02Bagderwhat parts?
09:37:22Bagderthe makfile does include on DEPFILE, so if there is none it will be rebuilt by the depfile rule
09:37:54BagderDEPFILE als depends on SOURCES, so if any source is modified a new depfile is generated
09:38:23dwihnoNice hack
09:39:15Bagderand the depfile generation uses gcc -MM to make the dependencies for each file
09:41:10dwihnoI guess a batchfile might do the trick on this XP box
09:42:13Bagderif that's ok, and you use a gcc you can just do "gcc -MM *.c" more or less
09:42:18Bagderand then include that file in the makefile
09:44:05dwihnoHow do you accomplish regular file output redirection in makefiles?
09:45:16 Join cYmen [0] (
09:45:18HCl*rubs his eyes*
09:45:22Bagderplain > works fine
09:48:47dwihnoIt works! :)
09:49:23dwihnoI don't know the number of times I've been banging my head becuase of snafu caused by a changed h file
09:50:39dwihnothanks a lot! :)
09:51:09*Bagder bows
10:16:05 Join Harpy [0] (
10:19:27 Join webguest01 [0] (
10:26:15 Quit webguest01 ("CGI:IRC")
10:31:15 Join ashridah [0] (
10:32:38 Quit Lynx_ (" bbl")
10:33:32LinusNthe misticriver linux thread gets more and more amusing
10:34:50 Join Lynx_ [0] (HydraIRC@
10:34:50dwihnoHow come?
10:35:04BagderI love it
10:35:10Bagderdwihno: read it ;-)
10:35:18***Saving seen data "./dancer.seen"
10:35:45ashridahanyone got a link to it
10:36:40LinusNread and weep
10:39:35 Join rasher [0] (
10:40:33LinusNthe last post pretty much sums it up: "So is a team formed yet for porting Linux?"
10:40:40LinusNas if that matters
10:40:53dwihnoA good read indeed
10:40:54Bagder"I can be a project leader" ;-)
10:41:04Bagder"I can cheer when other people do hard work"
10:41:07rasher"Me too!!"
10:41:35rasherThose who can, do. Those who can't, post on forums.
10:41:49LinusN"If they do yhat are you going to call yourselfs.
10:41:49LinusNRockbox have a name so why cant you?"
10:42:17Bagderyes, its the lack of a name that prevents real progres
10:42:55LinusNoh, and they have found the hardware specs: "h300 hardware specs:"
10:43:07Bagderthe cooler name, the more work they'll get
10:43:47Bagderso many forumusers, so little clues
10:44:20rasherI don't see any reason to add a "your md5 sum doesn't match any known firmware. Continue?" dialog to fwpatcher
10:44:44rasherpeople can just use whatever moding tool after patching, can't thye?
10:44:49rasheror am I missing something
10:45:04 Quit bangser (Read error: 145 (Connection timed out))
10:45:52LinusNrasher: no, it isn't necessary
10:45:58LinusNto add it
10:46:41LinusNin fact, we should probably stay safe
10:46:58rasherI'd say so too
10:47:26LinusNfrom our perspective, it is more important to prevent bricking than accomodate silly graphic mods
10:47:42rasherthey should be happy as well, it adds an extra bit of security for them
10:47:48rasher"well at least this part went well"
11:01:05ashridahsomeone will probably still manage to brick it.
11:01:57LinusNoh yes, but then it wouldn't be our fault
11:03:34ashridahtrue :)
11:07:13 Join Bagder_ [0] (
11:12:07RickMistic Shabadoo
11:12:07DBUGEnqueued KICK Rick
11:12:07RickJoin Date: Feb 2005
11:12:07RickLocation: Ireland
11:12:08***Alert Mode level 1
11:12:08RickPosts: 1,010
11:12:12RickUnless there's Linux-emulator thingy which runs a program within windows?
11:12:14RickYou can get WINE to make windows apps to run on windows.
11:13:39Bagder_time for a slashdot post "wine running on the iriver h3x0"
11:22:09***Alert Mode OFF
11:24:38 Quit Bagder (Read error: 110 (Connection timed out))
11:25:02 Nick Bagder_ is now known as Bagder (
11:28:53 Quit dwihno (Remote closed the connection)
11:36:04 Join dwihno [0] (~dw@
11:40:29crashdcan anyone explain to me just _why_ forum users are so retarded?
11:41:37Bagderit is just one of those mysteries of the universe
11:41:49ashridahbecause it's too easy to use forums
11:45:47CtcpIgnored 1 channel CTCP requests in 0 seconds at the last flood
11:45:47*rasher considers a forum with a command-line interface
11:47:56ashridahyeah. maybe we should write one. call it internet relay forum or something
11:48:21rashershouldn't be too hard actually, might be an amusing project
11:49:08Bagderthen I could write a web based front end! :-P
11:49:44rasherThen we'd have to kill you.
11:50:47Bagderfair enough
11:53:48rasheractually I meant a web-based thing, with just a text-input field at the bottom, and an iframe or something where all info appeared
11:54:13rasherand NO CLICKY LINKS
11:59:30 Join Lost-ash [0] (
12:03:48LinusNno avatars?
12:04:25Lynx_no animated gifs?
12:04:34LinusNavatars and ranking are the two most important features in a forum :-)
12:04:54LinusNi'm a "Mistic Surveyor"
12:05:09LinusNposting like hell to get to the next level :-)
12:05:19Lynx_where does that name mistic river come from anyway?
12:05:56Lynx_LinusN: hehe, the system rewards quantity not quality, eh?
12:07:24LinusNi think it may be a pun on the Mystic River film, with the "i" symbolizing the iriver
12:08:35Lynx_weird choice if that's it, the film ist not exacly a comedy
12:12:27 Quit ashridah (Nick collision from services.)
12:12:28 Nick Lost-ash is now known as ashridah (
12:19:51 Join Moos [0] (
12:24:51 Join preglow [0] (
12:27:05HClcompiler building is such a fun course :3
12:27:15preglowi don't know...
12:27:27HCldon't know compiler building or don't know whether its fun?
12:28:45 Quit Guest5715154 (Read error: 145 (Connection timed out))
12:30:38 Join thegeek [0] (
12:32:02preglowdon't know if its fun
12:32:12preglowcan't say i've really made many compilers either, though
12:32:42ashridahwish my course offered it. theyditched it ages back.
12:34:09ashridahof course, i'd be hard pressed justifying it to myself.
12:35:20***Saving seen data "./dancer.seen"
12:36:25 Join bangser [0] (
13:08:13 Quit rasher ("CGI:IRC (EOF)")
13:09:30 Join webguest21 [0] (
13:11:42 Join webguest69 [0] (
13:15:46 Quit webguest69 (Client Quit)
13:21:53 Quit thegeek (Read error: 131 (Connection reset by peer))
13:54:24 Quit webguest21 ("CGI:IRC (EOF)")
14:07:59 Join dapureplaya [0] (
14:08:29dapureplayauh. Word everyone! hehe.
14:08:36LinusNyo yo yo
14:13:51dapureplayaHey Linus! Been tracking progress on iRiver porting heaps. Big ups on it. it reasonable to ask you how the progress on audio playback on the iRiver porting? ;p
14:14:51LinusNno progress lately, been swamped with work and real life
14:15:18dapureplayaah fair enough. We all do
14:20:02 Part dapureplaya
14:25:53 Join tvelocity [0] (
14:29:41*HCl slaps abit
14:29:47HClthey suck :/
14:34:39 Quit lostlogic ("Going to the moon")
14:35:22***Saving seen data "./dancer.seen"
14:38:31 Join Aditya [0] (~Aditya@
14:55:26 Join Musicmad [0] (~Musicmad@
14:58:00Bagder <= the german mail virus thing
14:59:59HClthe link it spammed
15:00:02HClalso said it was a virus
15:00:30Bagderthe link? it sends many links
15:00:41HClm, i guess my mailfilter filtered most out then
15:05:17 Nick StrathAFK is now known as Strath (
15:10:23 Nick QT_ is now known as QT (as@area51.users.madwifi)
15:14:10 Part LinusN
15:29:46Lynx_Bagder: seem like i was right, the virus does also get the mail adresses from browser caches. there's your likely explanation :)
15:34:55Musicmadq.: is gapless playback simply a matter of stripping 0 at the end and start of files? The iriver firmware (original) tries to do this I think, but it doesn't work really.
15:35:36Bagderso how do you know that it tries to do that?
15:36:13Musicmadit has a "gapless playback" feature that was described as doing just that?
15:36:33Bagderit does?
15:36:51Bagderwhere's that described?
15:37:04MusicmadI'll try to find it - hold on.
15:37:58Bagderbut yes, the general idea is like that
15:39:12*Musicmad is navigating iriver flash site from hell.
15:42:03MusicmadDelete Gaps Between Songs (MENU > CONTROL > GAP DELETE)
15:42:03MusicmadWhen an extended period of silence is detected at the end of a song, this function will automatically jump to the beginning of the next song. Selecting the setting to ON will activate this function.
15:42:28Musicmadit doesn't say anything about deleting preceeding zeors though. hm..
15:46:35CoCoLUSwell whatever is does, it obviously doesn't work.
15:46:43amiconnI wouldn't call this gapless playback, but gap removal.
15:46:57CoCoLUSthats why its called gap delete ;)
15:47:13amiconnIt tries to remove (possibly) intentional gaps, while gapless playback only tries not to add gaps
15:47:49amiconnAnd afaik even gap delete doesn't really work in the iriver fw
15:50:27Musicmadok - I just cut a continous wav file in two. There was still a noticable "gap" between them when played on the iriver.
15:51:04Musicmadthe rockbox fw might behave differently but might be that some buffering is needed too.
15:52:00Musicmadso the start of the next file is readily available when it's needed.
15:52:04Bagderand I wouldn't say "might", we won't be happy unless we fix it
15:52:12 Join ripnetuk [0] (
15:52:17Bagderwell of course it will be
15:52:35Bagderloading of encoded data will be done well ahead
15:53:23Musicmadok - I'm not qualified to say anything about implementation really. Just saying that the iriver fw doesn't work gapless even on "gapless" files.
15:53:46Bagderwe're perfectly aware of that! ;-)
15:53:55Musicmadhehe :D
15:54:18Bagderbut we plan on making it work
15:54:35Musicmadit's excellent plan :)
15:54:42Musicmad"an excellent plan" even
15:56:24Bagderthe code that fills the PCM buffer will have to make sure that it adds no silence
15:56:35Bagderand the start/end of a song
15:56:44Musicmadare data send in packets to the DAC?
15:57:22Bagderyes/no, it is sent with DMA that gets a pointer and size
15:58:41preglowdon't worry, we'll support proper gapless
15:58:56HCli'd want an option to add gaps though :P
15:58:59preglowwe don't delete zeros, we'll just use the proper song length if it's available
15:59:14preglowfor mp3s without that, you'll probably just have to live with a tiny, tiny gap
15:59:47Bagdermp3s are likely to have a partial last frame unless −−nogap'ed, right?
16:00:08CoCoLUShow does foobar manage gapless playback?
16:00:09preglowand the last part of the frame will almost certainly not be zero
16:00:12preglowCoCoLUS: like i say
16:00:18CoCoLUSi never noticed any gap between mp3s with foobar
16:00:28preglowCoCoLUS: foobar doesn't manage mp3s without correct song length info either
16:00:34preglowCoCoLUS: you will here a tiny, tiny gap
16:00:50preglowbut most mp3s have correct song length info these days
16:00:56CoCoLUSi don't. maybe my hearing is bad ;)
16:01:04HCli want to store that in the database anyways
16:01:11Bagderthen again pc players can deal with bad timing info pretty good
16:01:14HClfor searches on songlength and more
16:01:28MusicmadI guess the cpu doesn't have the juice to do crossfading right?
16:01:47CoCoLUSisn't crossfading just volume down/up ?
16:01:50Bagderwe'll have to wait and see
16:02:03preglowit should be able to, in theory
16:02:06BagderCoCoLUS: one goes down while the other goes up, yes
16:02:20preglowand depending on the codec, i guess, i don't think we'll be able to crossfade a vorbis and an aac file, for example
16:02:38Musicmadpreglow: hehe that is probably not a problem.
16:03:02Bagdermulti-codec is gonna be hairy already without that ;-)
16:03:52CoCoLUSgapless playback is way more important anyway
16:04:08preglowwhy, agreed
16:04:26MusicmadI'm not gonna listen to "the wall" without it...
16:04:30preglowi've realized i'll never be able to do beatmatching on a h120 anyway, so i don't care about crossfading anymore :PP
16:04:59CoCoLUSwhat about that personal vocoder project? ;)
16:05:16preglowCoCoLUS: when the infrastructure is in place
16:05:22preglowHCl: what about it?
16:05:22BagderHCl: "stretching" the new song to have beats in synch with the already playing one
16:05:46preglowit's really necessary for a good fade
16:06:04preglowbut it's of course very nearly impossible to do automatically
16:06:22preglowit's not exactly easy to do by hand either
16:06:42Bagderthere are pc-based players that are fairly good at it, I've heard
16:07:01preglowreally? you wouldn't happen to have any names?
16:07:08Musicmadtractor maybe?
16:07:14CoCoLUSbpm studio?
16:07:17Musicmadfrom native instruments.
16:07:19preglowtraktor is manual
16:07:50preglowwell, i sure didn't see a 'beat match automatically please' button when i used it yesterday
16:08:06Musicmadhehe sorry. I thought it had something build in.
16:08:13preglowyou have to adjust bpm and cue stuff yourself
16:08:28preglowwhich is very hard without a control surface, heh
16:08:47*preglow wants final scratch
16:12:37Musicmaddon't know it but this one seems to do auto beatmatching:
16:13:54preglowi'd still like to see it work, it's pretty complex to get right
16:14:16MusicmadI bet
16:14:39preglowhell, just detecting the right bmp can be pretty complex
16:14:45HClyea, i was just about to say.
16:14:53HClgetting the bpm is far from trivial
16:14:59HCleven professional programs i have for it get it wrong
16:15:02HCland i have to sync it myself
16:15:05pregloweven traktor's guesses are far off sometimes, and that's pretty pro
16:15:07MusicmadI guess you can just hit the flanger and try to look cool instead :)
16:17:50preglowi'll be more than happy with just gapless playback
16:19:01Musicmadis there any build that supports the radio on the iriver?
16:19:03preglowso i can actually listen to mixes without cringing with irritation every time there's a new track
16:19:10HClnot yet
16:19:14HClaustriancoder is working on it
16:19:36 Nick tvelocity is now known as tvelocity[away] (
16:20:15Musicmadit would be great if presets could be stored on the HD. I hate how everything is reset when you flash the iriver.
16:20:31preglowthey very probably will be
16:20:38preglowall settings are saved to disk as it is
16:22:11ashridahof course, the rockbox team bump the version number of the config every few weeks, invaliding the config :)
16:22:36Bagderthe fm presets aren't in that one, are they?
16:23:01amiconnSometimes this is necessary, but you can always write the settings to a config file before installing such an update, and reload afterwards
16:23:20ashridahamiconn: yeah, assumign you know it's going to happen. which you might not if you're tracking cvs HEAD
16:23:24amiconnBagder: No, they're in a file under /.rockbox
16:23:39Bagderright, I thought so! ;-)
16:24:05amiconnashridah: Last time that happened it was caused by me, and I did mention it in the commit message
16:24:33Bagderit is meant to hurt on the bleeding edge ;*)
16:24:43ashridahamiconn: yeah, i know. still caught me out tho, since i'm kinda just a slavish 'compile. install. reboot it, it works. yay!... where did my settings go? %$!@#$%' sort of person :)
16:25:03BagderI have a few fine sets saved
16:25:08Bagderthat I reload when that happens
16:25:28ashridahmm. if i started using rockbox fulltime, i'd probably do the same.
16:26:03 Quit ashridah ("Leaving")
16:26:28amiconnImho we should switch to also using plaintext cfg files for the main settings one day
16:26:39HClxml :)
16:26:44*preglow kicks xml
16:26:52HClwhats wrong with it ? :p
16:26:53Bagderamiconn: yes, as has been discussed for years ;-)
16:27:08amiconn..except the settings part that's stored in the rtc ram
16:27:23Bagderthose that are saved very frequently
16:27:59amiconnWhat about the frequently changed settings on devices without rtc?
16:28:07amiconn...e.g. iriver :P
16:28:15Bagderin that sector thing
16:28:31preglowcrashd: gotten any further?
16:28:32amiconnThe config sector solution isn't that nice
16:28:41amiconnIt has several problems
16:28:43Bagderamiconn: you have a better idea?
16:29:25HClwhy don't we use a config file anyways?
16:29:51Bagderbecause of the frequent saves
16:30:04HClwhy does it save so frequently then? o.o
16:30:22amiconnHCl: Resume position, runtime....
16:30:54amiconnBagder: What about keeping the binary data idea, but using a file for it?
16:31:07HClyea, thats what i said o.o
16:31:22BagderI don't see the point of binary even we're going for an actual file
16:31:27Bagderwhen we're
16:31:28amiconnThe archos Ondio firmware seems to do that; it saves settings in a file called /ONDIOST.BIN
16:31:51Bagderas I see it, the drawback with files is that it is a file involving FAT etc
16:31:59Bagdernot that it is text
16:32:20amiconnBagder: A binary file could be one sector long. The sector position could be cached on open
16:32:35Bagderstill, I would find that a very minor gain
16:32:36amiconn...and then used the same way as the special sector is now
16:33:05amiconnHmm, it would need a measure against deleting that file, or at least detect this
16:34:43HCldoesn't iriver have a tiny rom for config settings?
16:35:25***Saving seen data "./dancer.seen"
16:35:29amiconnThe config sector has at least 3 disadvantages: (1) It is impossible with superfloppy disk layout.
16:36:12amiconn(2) Even with a partitioned disk layout, it might be overwritten by other software which expects this area to be free. There actually was one such report on a mac with a few sectors per track layout
16:36:33amiconn(3) There's no easy way to delete the config sector from the PC
16:36:54HCl(4) its a nasty hack
16:37:09amiconnThe tiny rom might be an option on iriver
16:37:24Bagderit has advantages too
16:37:28amiconnHowever, we need to keep an eye on flash wear
16:38:14amiconn[IDC]Dragon had the idea to use the last flash sector on rtc-less units. Same problem here, plus not all archoses are flashable
16:39:21 Quit xen` ()
16:39:23preglowthe eeprom should sustain HEAVY use
16:40:04amiconnIs this eeprom used by the iriver fw?
16:40:10preglowi believe so
16:40:17HClotherwise, why on earth would they put it in :P
16:40:28preglowfor those of us who don't care about the iriver fw, this should be usable by rockbox
16:40:43HCland even then
16:40:49HClyou could have an "iriver rom restore" thing
16:41:04preglowjust a eeprom burner plugin will do
16:41:14preglowand will enable you to use it for all kinds of sick things
16:41:41amiconnMy bigger concern is that the iriver fw will probably overwrite the rockbox settings
16:42:00amiconn...which is not exactly what I'd want
16:42:10preglowwell, that's what you get for starting the iriver fw
16:42:56preglowit'd be a nice option, though
16:43:05HClwe could have a bootloader check for that.
16:43:10HCleven have the bootloader switch.
16:43:15HClthe eeprom contents
16:43:36preglowi don't think we should rely on the bootloader for functionality like that
16:43:47HClit depends on what you want, then.
16:43:55preglowaltogether i think we should concentrate on modifying it as little as possible, heh
16:43:56HClyou'd at least have to add protection against launching the wrong one
16:43:58HClwith the wrong eeprom
16:44:12preglowi plan to have that done by erasing the iriver fw :P
16:44:20preglowi assume there'll be a rombox for iriver once
16:45:38preglowonce = one day
16:49:01crashdpreglow: i think i can disassemble the thumb stuff using an updated ida ;)
16:49:09crashd bbl
16:49:57preglowrockbox on h10 will almost certainly mean i'll be getting one
16:50:36HCli thought it was closed platform?
16:51:01Bagderyes, it is harder than the h1x0 and h3x0
16:51:32Bagderprobably requires more disassembling and trial and error, but less data sheet reading ;-)
16:51:52HCli prefer data sheet reading
16:51:54preglowi spent a couple of hours yesterday helping crashd deciphering a disassembly of what i think is the flash decryption routine
16:52:14preglowand now i want to learn arm assembly
16:52:36preglowwhat the hell makes me actually WANT to learn another assembly language, i don't know
16:52:41preglowmust be the part of me that's self-destructive
16:56:26 Quit ripnetuk ("Leaving")
17:05:37 Quit Moos ()
17:22:02 Join TCK [0] (
17:30:35 Quit TCK- (Read error: 60 (Operation timed out))
17:38:57 Quit Musicmad (Read error: 148 (No route to host))
17:51:20 Quit einhirn ("Miranda IM! Smaller, Faster, Easier.")
17:54:13 Quit pabs (Read error: 104 (Connection reset by peer))
17:55:38 Join merbanan [0] (
18:02:24 Join Moos [0] (
18:03:27 Join TCK- [0] (
18:07:44 Join gromit` [0] (~gromit`
18:13:21 Join einhirn [0] (
18:20:28 Quit TCK (Read error: 110 (Connection timed out))
18:26:59 Join dys [0] (
18:35:28***Saving seen data "./dancer.seen"
18:51:38 Join Stryke` [0] (~Chairman8@resnet-241-86.resnet.UMBC.EDU)
18:52:41dysi have a couple of mc1488/9 serial line drivers here, and am not sure, if i can connect them to the coldfire's uart
18:52:56dysthe datasheet seems to be a bit ambigious to me
18:53:10dysit says the maximum rating for input high voltage is 5.5
18:53:20preglowthe coldfire ones are 3.3, i guess
18:53:59dysack, it also says "maximum rating for i/o operating voltage is 3.6"
18:58:26dysbut it sure is confusing that they specify the "maximum input high voltage" with 5.5 volts, if 3.6 V would be the upper bound...
18:58:58dysi'm just afraid to figure it out by trial-and-error
18:59:12preglowwell, i have no idea
18:59:34preglowthe only level convertors i've used have been fixed voltage
19:02:44amiconnMaximum rating means exactly that - it's the maximum that does just not destroy the chip
19:03:19amiconnIt's always different (higher) than the operating conditions
19:03:32dysso i definately got to drop ttl down to 3.3 volts?
19:04:02dysthe mc1489 serial receiver has ttl output
19:04:21dysaka high = 5 volts
19:04:26amiconnHmm, would need to check the datasheet then
19:04:57amiconnI thought you want to build a serial level converter, converting rs232 (+/- 12 V) to 3.3 V logic levels
19:05:07dysyeah, the datasheet is what is confusing me, because it says the max input voltage is 5.5 volts, and the maximum i/o voltage is 3.6 volts
19:08:11amiconnSeems these chips are designed for 5V operation. You can try to operate them from 3.3V, but maybe they won't work then
19:10:05preglowthey probably will work, but with smaller margins
19:12:43dysuups, i was writing about the values in coldfire's datasheet
19:12:50dysis there some misunderstanding going on?
19:16:20dysi guess i'll operate the 1488/-9's at 5V and drop the ttl output of the 1489 with 3 diodes, so i'm on the save side
19:20:05 Join Sucka [0] (
19:23:02 Join pabs [0] (
19:24:22 Join stripwax [0] (
19:26:06 Join hubbel [0] (
19:45:54wacky_hey guys, where are we at in the development of the structure to make the Rockbox actually play music ?
19:49:47stripwaxwacky_ - I take it from the question that you don't own an Archos mp3 player..?
19:51:24wacky_stripwax - heheh :) sorry.. I mean for the iRiver ?
19:51:58preglowdon't know, we have people working on iot
19:52:59preglowbut all of us working on it are busy doing other stuff most of the time
20:01:43 Quit pabs (Read error: 104 (Connection reset by peer))
20:08:35 Quit hubbel ()
20:13:31 Join pabs [0] (
20:17:40 Quit I-R-Addict ("CGI:IRC (EOF)")
20:18:23 Join I-R-Addict [0] (
20:19:27 Join amiconn_ [0] (
20:19:58 Join TCK [0] (
20:20:07 Quit stripwax (Read error: 110 (Connection timed out))
20:21:50 Nick Lynx_ is now known as Lynx_awy (HydraIRC@
20:23:02 Quit TCK- (Read error: 104 (Connection reset by peer))
20:23:06 Quit amiconn (Nick collision from services.)
20:23:06 Nick amiconn_ is now known as amiconn (
20:23:40 Nick tvelocity[away] is now known as tvelocity (
20:27:50 Quit tvelocity ("Leaving")
20:35:31***Saving seen data "./dancer.seen"
20:57:40crashdpreglow: not yet, ive been at work/working for most of the day
20:59:30crashdida 1.8 allegedly handle thumb properly
21:00:08 Quit TCK (Read error: 104 (Connection reset by peer))
21:01:44 Quit silencer (Read error: 131 (Connection reset by peer))
21:04:48 Join silencer [0] (
21:13:24 Join asdsd____ [0] (
21:13:28 Part asdsd____
21:18:28I-R-Addicthmm.. is the uClinux kernel port for the coldfire MCF5249 compatable with the iRiver ?
21:18:42BagderI doubt that
21:19:02Bagderis it really for the 5249?
21:19:34I-R-Addictthey have a port for a bunch of motorolla setups
21:19:42I-R-Addictincluding the 5249
21:20:07BagderLinus had to patch binutils to make it do proper code for the 5249
21:20:25Bagderwhich would be odd if they had it working
21:20:35Bagderbut I don't know the details enough
21:21:40I-R-Addictno USB device support yet though :/
21:22:11Bagderwe have usb code for the h1x0 chip
21:22:24Bagderits the same as in several of the archos models
21:24:23Bagdera gdb stub for it would be cool
21:25:12Rickwhy bother getting uclinux running on iriver if we have rockbox?
21:25:40BagderI doubt we'll see it happen
21:25:48crashdipods use the same hardware, and ipodlinux is already running quite well
21:25:49Rick"omg iz teh kewl"
21:26:02Bagdercrashd: same as h10, yes
21:26:11Bagdernot the coldfire based ones
21:26:12crashd: ] thats what ive been talking about
21:26:15crashdno, not cf
21:26:36Rickwe're talking about h1x0 thouhg
21:26:46crashdsorry, its bene a long one
21:27:11Bagderbut I don't see the point of linux on ipod either... :-)
21:27:19Ricki agree with Bagder
21:27:25crashdsame reason you guys are making rockbox
21:27:45crashdwell, similar, id wager
21:28:59I-R-Addictpersonally, i'd like to do.. simply because i can
21:29:12I-R-Addictpreferrably, i'd like to run the iriver firmware, uclinux, and rockbox
21:29:18I-R-Addicttriple booted iriver
21:29:40I-R-Addictthere's no reason why, but no reason why not either
21:30:42Bagderexcept that more projects means less people in each
21:31:05Bagderbut everyone does what they want to
21:32:01I-R-Addictmm.. yes and no, so far rockbox seems to be very similiar to what a clinux distro would be like, other than the fact it doesn't use linux
21:32:22I-R-Addicti'm betting work done on them, could be mostly applied to both
21:32:45Bagderinfo could be used, software would be completely different
21:32:50Bagderlike drivers
21:33:04Bagderand even apps
21:37:22I-R-Addictcan i use 'dd' to make backup images of the iriver partition scheme before i start playing with it (just in case..) ?
21:37:39Bagderyes you can
21:43:55preglowi just don' see the point in using linux
21:43:59preglowit's overkill
21:44:31 Join zeekoe [0] (
21:46:26I-R-Addictno real point to it...
21:47:01I-R-Addictother than telling all my friends my iRiver is running linux
21:47:07I-R-Addictwhich for some would be reason enough, lol
21:47:07 Join _aLF [0] (
21:47:33preglowsure, it would be cool
21:49:10preglowbut pretty useless nonetheless
21:49:23pregloweverything still pretty much needs to be written from scratch
21:50:56*amiconn is experimenting with a 0308 Ondio...
21:53:04 Join webguest89 [0] (
21:53:43 Quit webguest89 (Client Quit)
21:59:43I-R-Addicthmm.. so here's a question for anyone who uses usb storage devices in windows
22:00:05I-R-Addictusually when i plugged my iriver in windows, it showed up as J
22:00:26 Quit zeekoe (Read error: 104 (Connection reset by peer))
22:00:27I-R-Addictyesturday my g/f brought over her player and we had them both plugged in
22:00:31I-R-Addictshe got J, i got K
22:00:35I-R-Addictnow.. it'
22:00:38I-R-Addicts the next day
22:00:52I-R-Addictseveral reboots, back and forth between windows and linux since then
22:01:04I-R-Addictand i'm still getting K, for my iRiver, it's skipping J
22:01:11preglowstuff like that happens
22:01:18preglowi don't get it either
22:01:27I-R-Addictlol, figured as much
22:02:48 Join thegeek [0] (
22:19:53 Join asdsd____ [0] (
22:19:59 Part asdsd____
22:35:32***Saving seen data "./dancer.seen"
22:50:41HClanything happening here?
22:50:43preglowwhat up
22:50:50HClgot back from a meeting, tired.
22:50:54HClwatching uo
22:51:10HClultima online, its an mmorpg
22:52:27amiconnBagder: are you around?
22:53:10amiconnThere seem to be some dependency problems
22:53:50amiconnIt turned out that the Problems with multivolume + hotswap reported by Trevor aren't hardware problems or rockbox bugs
22:54:47amiconnIf some config variables are changed (HAVE_MULTIVOLUME and HAVE_HOTSWAP) and you just call 'make' afterwards, not everything gets rebuilt as necessary
22:55:22amiconn'make clean; make' produced a build which is running fine....
22:56:05Bagdernot much to go on though
22:56:52Bagderyou say there's a problem somewhere
22:57:03Bagderand your description indicates that
22:57:09Bagderbut it isn't easy to tell where/why
22:57:12amiconnMaybe I should compare the compile output to find what doesn't get rebuolt
22:57:34Bagderthat would help a lot
23:00:32BagderI'm off for tonight though, see ya tomorrow
23:12:39 Join matsl [0] (
23:43:55amiconnI suggest starting to code the rockboy asm cpu core... ;-)
23:44:06HCltoo tired :p
23:44:16HClmy priority list is database first
23:44:33HCltechnically, the editor has two different editing modes that i should enable
23:44:42HClbut on the other side, i feel the current editing mode is fine
23:44:52amiconnYes, but you also say database is held because non-working playback
23:46:33HClthough the simulators work.
23:46:40HClalso, class is gonna take some time
23:46:47HClcompiler building is more important than rockbox
23:47:01amiconnSif you can't work on your pri #1, you could work on pri #2 instead
23:47:06amiconn*So if
23:47:22HClmy pri #2 would probably be the script, or rockbeans
23:47:26amiconnBuild a compiler for rockbox ;-)
23:47:30HClrockboy is the lowest..
23:47:38HCli already have. the searchengine is technically an interpreter.
23:47:58HClit uses theory from compiler class :)
23:48:13*amiconn imagines searchengine with dynarec ;)
23:48:23HClpossible. not very useful
23:48:31HClit will literally provide 0 gain :)
23:50:33*HCl should be reading up on the jvm...
23:50:48HClif we make our compiler create jvm bytecode, we get 1 point extra on our grade
23:52:14*amiconn doesn't like java
23:53:24HClwhy not?
23:53:29HClits a great language, really.
23:53:37HClalmost all bugs are removed compile time
23:54:04HClofcourse if you don't know oo java is pretty useless :p
23:56:36amiconnI don't like it for 2 reasons. (1) It's much too oo for my taste. (2) All java apps I've seen run dead slow

Previous day | Next day