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 2004-11-17

00:01:39 Quit Quel|away (Read error: 54 (Connection reset by peer))
00:05:13***Saving seen data "./dancer.seen"
00:11:08 Join midk [0] (
00:17:46 Join krusbjorn [0] (
00:23:01 Join ^ShAtZMaN^ [0] (
00:24:00^ShAtZMaN^anyone here?
00:24:46^ShAtZMaN^check you out later... good night... sleepy time =]
00:24:49 Quit ^ShAtZMaN^ (Client Quit)
00:29:59 Quit edx ()
00:38:29 Part krusbjorn
00:49:10 Quit matsl (Remote closed the connection)
00:54:39 Join Yono [0] (
01:12:26 Join LinusN [0] (
01:12:55amiconnhi LinusN
01:13:55amiconnI found the cause for the slow (Ondio: awfully slow) fprintf and other functions using single character writes
01:14:19amiconnIt is a bug in file.c, introduced by Zagor 20 months ago (!)
01:14:59amiconnBefore I commit a fix, I would like to /briefly) discuss the best way to fix it.
01:15:37LinusNhit me
01:15:38amiconnPlease have a look at file.c, line 462, and the diff between ver 1.42 and 1.43
01:16:53LinusNthat change was reverted, wasn't it?
01:17:47LinusNin 1.44
01:18:34amiconnNo, it wasn't, please let me explain (as I understand it)
01:18:42LinusNthe change between 1.42 and 1.43 was reverted in 1.44
01:18:59LinusNand he solved it in flush_cache instead
01:19:04amiconnObviously, the original intention was that the written headbytes have to be flushed from the cache *if* the write does not end there, i.e. there is data left for whole sector and/or trailer write
01:20:09amiconnHence it was if(count && file->dirty) , so the flush was only executed if headbytes were written and count was not zero afterwards (correct behaviour)
01:21:28LinusNsorry, i was looking in the wrong place
01:21:34amiconnIn 1.43 this was changed (and it's still in 1.58 !) to if(nread && file->dirty) - which *always* flushes if there were any headbytes written, even if the write ends here!
01:22:13amiconnThis obviously hits single byte writes, because every sector is read and written 512 times (!)
01:22:31Bagdernice catch
01:22:58amiconnI already tested the "old" behaviour - save time for config files on Ondio down from ~20 sec to << 1 sec
01:24:26amiconnSo now the question is *how* to fix this properly. I could simply change it back to if(count && file->dirty) , however, if I read correct we can get rid of the whole construct (lines 462...466)
01:25:13amiconnBecause, if this is changed to if(count && file->dirty) , the condition should never be true (!)
01:25:58 Part Yono
01:26:00 Quit AciD (Read error: 54 (Connection reset by peer))
01:26:34LinusNbecause count == 0?
01:26:41LinusNi don't see it
01:27:11amiconnThere are 2 possibilities: (1) The read does not end here, indicated by count > 0. In that case the head sector obviously has to be written up to the end, which causes line 442 ff do the flush
01:28:17amiconn(2) The write *does* end here, indicated by count == 0. In that case it is not necessary (and not even desired) to flush here
01:30:22LinusNi see
01:31:54amiconnWe could do a simple test: Change it to if (count && file->dirty) panic(...) This panic should never be triggered
01:32:29Bagdermy car's display said -5 C on the way home just now
01:32:37Bagderthe winter is coming
01:32:44*Bagder goes to sleep
01:32:53amiconnnite Bagder
01:33:05Bagderask LinusN about mpeg.c bugs! ;-)
01:33:11*Bagder ducks and runs
01:33:16LinusN /kick Bagder
01:33:33amiconnErm, actually.... ;-)
01:36:25 Join gromit [0] (
01:39:04amiconnLinusN: I did a quick test - config save on Ondio does not trigger the panicf() I added :)
01:40:01gromiti have a little question...
01:40:12gromithave you encountered rsa signed firmware updates
01:40:27gromitgasp :x
01:40:46gromitgmini updates are signed with a rsa 768
01:41:39gromitstrong implementation
01:43:09webmind768bit rsa ?
01:43:23gromitmd5 digest of the fw code
01:43:27webmindisn't that a bit stupid ?
01:43:42gromitthen this md5 + other stuff ciphered with rsa
01:43:45gromitwhy ?
01:44:13webmindwhy so small ?
01:44:18gromitwe tried to factor it with methods for weak keys
01:44:20gromitbut no result
01:44:24gromitnot so small
01:44:29gromitthe one used by ssh
01:45:38gromitthe fact is we cannot pack our own fw
01:45:55gromitsince we have no way obtaining the private key
01:46:17gromitand methods for dynamically overwriting the key seem very difficult
01:46:37gromitsince all the memory used is static buffers
01:46:53gromitalmost nothing on the stack
01:48:04LinusNbut the key must be the same for all firmwares and versions, right?
01:48:24amiconnLinusN: I just did a recording test with my v1 - it also did not panic. What do you think about commiting this simplification? Maybe I should run my pseudo-random file system stress test before?
01:48:57LinusNamiconn: run the vbrfix plugin
01:49:07gromiti think so
01:49:42amiconnLinusN: Runs without probs
01:49:47 Join jyp [0] (
01:50:00gromit[01:43] <LinusN> but the key must be the same for all firmwares and versions, right?
01:50:09gromitcan you confirm ?
01:50:27jypIts should
01:50:48LinusNso we need to find the key once and for all
01:51:00jypUnless they do non-compatible upgrades
01:51:04LinusNbut the flash is scrambled
01:53:01amiconnThe flash content alone may not be very helpful, since it contains the public key for decryption. We need to find the private key for encryption
01:53:55jypI have the public key, BTW
01:54:06gromitwe have the deciphered fw
01:54:17gromiteverything but the private key
01:54:36jypBasically we can crack either md5 or RSA 768
01:54:48jypBoth are nasty ;(
01:55:03LinusNah, yes of course
01:58:49jypI was wondering if Archos would be willing to give it away... Maybe you rockbox guys know their stance wrt. that ?
01:58:59jypPrivate key
01:59:14LinusNwe have no contact with them
01:59:45jypSo they are probably neutral;
02:00:04LinusNthey must have signed the firmwares for a reason
02:00:24LinusNand i can't see any other reason than stopping 3rd party firmwares
02:00:27jypYup; they planned to sell plugins for the gmini
02:01:09jypyet they seem to have given up on the idea
02:01:34LinusNi'm really sorry, i just have to get some sleep
02:01:48jypSure... Me too btw ;)
02:01:49LinusNhave to get up to work in 3 hours
02:02:00LinusNcu around guys
02:02:04amiconnLinusN: I'll let the fs test run, if it's okay, I'll probably commit
02:02:06midknite Linus
02:02:07LinusNand amiconn: commit it
02:02:14gromitgn LinusN
02:02:22 Part LinusN
02:05:16***Saving seen data "./dancer.seen"
02:05:52amiconngromit, jyp: As you know the firmware, the md5 (which is then rsa encrypted) is known to you. Are there no known-plaintext attacks to rsa, especially since you know the public key too?
02:06:50gromitapparently no
02:06:50jypour md5 is not plaintext
02:07:19jypfor RSA, the 768 bits size puts cracking beyond our reach.
02:07:47amiconnWhy not? You already have the encrypted, and you can calculate the unencrypted one (across the firmware iiuc)
02:08:06jypIt is RSA signature
02:08:32jypso it requires their private key to sign the firmware
02:08:59jypbut everyone can decrypt the signature given the public key
02:09:45amiconnI know. What I mean is: you have the public key, the plaintext (calculate the md5 across the firmware) and the ciphertext (rsa encrypted md5)
02:09:58jyptrue enough
02:10:36jypyet RSA holds up to that
02:10:47amiconnHmm, too bad :(
02:13:41amiconnPerhaps it's possible to fool the loader somehow, there must be some bugs that can be exploited (given the bug count in the jukebox loader)
02:13:55gromithmm ?
02:14:15gromitwhat was this bug ?
02:16:10amiconnI mean, the archos loader in the jukeboxes/ ondio boot rom has some bugs. I don't know all of them, but I just encountered one when investigating the lcd init on the player.
02:16:28amiconnIt is likely that the gmini loader also has some bugs. Perhaps there is one that can be exploited somehow...
02:17:10gromitquite difficult though i see no other solution
02:17:35amiconnIirc some (all?) xbox hacks use the same technique...
02:17:47gromitfont exploit
02:17:56gromitand buffer overflow in a game
02:18:31gromitwhen loading saved games
02:18:52gromitbut finding such flaws is far from easy
02:19:39amiconnOf course... but maybe easier than finding a 768 bit private key
02:20:16gromitnoone in our team is experienced in such techniques
02:22:24amiconnI'm not experienced in that either... but I can imagine how to do such things. Of course, one has to know the particular CPU & assembler code very well
02:23:02gromitwe have the theory.. not the practice
02:23:19jypOverwriting the public key data is a way
02:23:48jypwe could investigate what's around it
02:24:38jypand hope there's variable length data in there ;)
02:29:53jypGoodnight everyone...
02:29:57 Quit jyp ()
02:30:32gromitgoing to bed too
02:30:46 Join amiconn_ [0] (
02:31:14gromitcya tomorrow
02:31:27 Quit amiconn (Nick collision from services.)
02:31:28 Nick amiconn_ is now known as amiconn (
02:31:28gromitwe'll try to continue the stuff
03:14:23 Join scott666_ [0] (
03:35:39 Part amiconn
04:05:20***Saving seen data "./dancer.seen"
05:36:40 Join khrocker [0] (
05:54:48 Quit scott666_ (Read error: 110 (Connection timed out))
06:05:24***Saving seen data "./dancer.seen"
06:09:31 Join scott666_ [0] (
06:35:45 Join gromit` [0] (
06:52:11 Join adi|home [0] (
06:52:59 Quit gromit (Read error: 110 (Connection timed out))
06:53:25 Quit scott666_ ("i'll be back...eventually...")
07:04:52 Join gromit`` [0] (
07:09:31 Quit gromit` (Read error: 110 (Connection timed out))
07:13:57 Quit Stryke` ("Friends don't let friends listen to Anti-Flag")
07:38:06 Quit mecraw_ ("Trillian (")
07:45:30 Join webguest97 [0] (
07:46:14 Join oxygen77 [0] (
07:53:20 Join LinusN [0] (
08:05:27***Saving seen data "./dancer.seen"
08:08:06 Join AciD [0] (
08:16:42 Quit adi|home (Read error: 110 (Connection timed out))
08:18:26 Join amiconn [0] (
08:18:33 Join gromit` [0] (
08:19:48LinusNmorning amiconn
08:20:02amiconnGood morning Linus et al
08:20:10midkmorning linus
08:20:17midkdidn't i just say nite a few minutes ago? :)
08:20:51amiconnLinusN: Funny answer in the forum ;)
08:21:50midkwhere where?
08:22:41amiconnLinusN: "..Do you have a recorder or a player/studio?" The topic is about a JB 6000...
08:23:50LinusNmany rec6 users refer to their player as Jukebox 6000
08:23:59midk:) haha
08:24:25LinusNso you don't really know until you've asked
08:24:43 Join Bagder_ [0] (
08:25:21 Quit gromit`` (Read error: 110 (Connection timed out))
08:26:38LinusNBagder_: i tried our new approach, with lousy results so far... :-)
08:27:06Bagder_had enough coffee yet for that? ;-)
08:27:29Bagder_I think it should work!
08:28:37Bagder_but then, do we know the load index is actually the source of the repeat problem we saw?
08:29:14LinusNBagder_: i did it last night, so there is a slight possibility that i did something wrong :-)
08:33:26Bagder_"The problem is that we have some very large JPEGs (around 1GB) and the time taken to check them in is very long (more than an hour)"
08:33:54LinusN1GB JPEG
08:34:02Bagder_a svn user
08:34:27LinusNsomething for jpeg.rock to chew on
08:34:57midkholy hell
08:35:11midka 1gb jpeg viewed with the .rock?
08:35:44 Quit AciD (Read error: 104 (Connection reset by peer))
08:35:51midkthat's crazy
08:53:49 Join AciD [0] (
09:03:06amiconnLinusN: Did you notice that the wiki diff viewing sometimes doesn't work?
09:04:49LinusNah, just tried in IriverHardwareComponents
09:04:53LinusNno diff
09:05:17 Join einhirn_ [0] (
09:05:43amiconnLinusN: yup.
09:05:51 Quit einhirn ("Miranda IM! Smaller, Faster, Easier.")
09:06:06amiconnHowever, it does work for some topics...
09:10:11LinusNit happens to topics that have been renamed/moved
09:10:50amiconnAh. Sounds like a twiki bug...
09:16:20khrocker"I haven't used the voice feature myself" (LinusN: You should try to speak to people sometimes. It can be quite funny.)
09:17:08 Nick khrocker is now known as kurzhaarrocker (
09:17:36LinusNi'm not that social, you know
09:18:04*kurzhaarrocker won't believe that
09:18:06LinusNand speaking is a luxury for those who have physical friends :-)
09:20:02 Join gromit`` [0] (
09:22:29 Join Zagor [242] (
09:22:39 Quit gromit` (Read error: 110 (Connection timed out))
09:25:29Bagder_the snow is coming...
09:26:02*kurzhaarrocker turns on his electric foot heater
09:26:32Bagder_time to put on the "winter wheels" on the car
09:29:48Bagder_but now, sleeping time for tiny girl
09:29:50 Quit Bagder_ ("Leaving")
09:30:22*kurzhaarrocker didn't know that Bagder is a tiny girl
09:49:11 Join gromit` [0] (
09:59:14 Join quelsaruk [0] (~kvirc@
09:59:21quelsarukgood morning
10:02:53Bagdercoffee time
10:05:23quelsarukthe only thing we have in common
10:05:29***Saving seen data "./dancer.seen"
10:05:43quelsarukcoffee time == spanish breakfast time ;) (more or less)
10:08:24kurzhaarrockerDoes anybody know a tiny freeware tool for editing html image maps?
10:08:47Bagdertiny no, but gimp has a plugin for it
10:10:15kurzhaarrockerGimp, cool. Should that plugin be included with the standard install? Never stumbled across it.
10:10:33BagderI think it is, been a long time since I used it
10:10:49*kurzhaarrocker searches
10:11:07Bagderyes, its there
10:12:36 Quit gromit`` (Read error: 110 (Connection timed out))
10:20:42 Quit AciD (Read error: 104 (Connection reset by peer))
10:21:16 Join AciD [0] (
10:36:42amiconnLinusN: I just discovered a rather annoying while driving to work. It seems that it is caused by your track repeat fix :(
10:36:50amiconn*annoying bug
10:37:09LinusNamiconn: i know, that's what i and bagder worked on last night
10:37:10Bagderwe were gonna fix that yday
10:37:15LinusNand i am still working on it
10:37:25Bagderand while fixing that we were "just gonna fix this too"
10:37:46Bagder... and ended up in a reeaaaal mess
10:38:07*LinusN is testing the new fix as we speak
10:38:26Bagderamiconn: we hope to have fixed the NULL writes too
10:41:22amiconnI don't know if you already know that special effect: I started to play tracks in a dir (not shuffled, and sufficiently long to never have a complete track in mem, with 2 MB)
10:42:04amiconnIf start playing track i of n, it starts correctly, and the wps also shows i/n
10:42:55 Join Bagder_ [0] (
10:42:58amiconnBut: when the track ends, it does not continue with track i+1, but plays track 2*i instead. However, the wps shows (i+1)/n ...
10:43:30amiconnConsequently, if i is >n/2 at the start, playback stops at the end of the track
10:50:37LinusNyes i know
10:50:48 Quit AciD (Read error: 104 (Connection reset by peer))
10:51:29Bagder_"the fix" will correct that
10:51:41Bagder_and about 13 other flaws
10:52:30 Join AciD [0] (
10:57:18LinusNamiconn: the wiki diff problem should be fixed now
10:57:43 Join [IDC]Dragon [0] (
11:08:37[IDC]Dragon'morning folks!
11:10:22[IDC]Dragondo you remember the spindown in USB mode topic?
11:11:27[IDC]Dragonworks with my Fujitsu disk, but doesn't work on somebody else's Toshiba
11:12:35[IDC]Dragonnow I'm about to get a 100 GB drive, Toshiba is a bit cheaper and less power consuming
11:13:17[IDC]Dragonbut I don't want to sacrifice the idle spindown in USB mode
11:13:58LinusNi think the solution is to change the powersave mode before entering usb mode
11:14:22[IDC]Dragonso I'm wondering the current Toshiba models still lack this, or if it's a special Fujitsu feature
11:15:04LinusNtoday, set_features() sets the lowest powersave mode *without* spindown
11:15:20[IDC]DragonLinusN: sounds good, changing it before USB mode
11:15:26LinusNwe should change that before entering USB mode to lowest *with* spindown
11:15:50LinusNthen the drive will automatically spin down after a while, often 30s
11:16:04[IDC]Dragonso my Fujitsu is special in ignoring this, or how does it happen now?
11:16:12LinusNthe current hack is lousy
11:19:03LinusNusb.c:usb_slave_mode(), calls ata_standby(15) before entering usb mode
11:21:29[IDC]Dragonok, so could get any disk, and if it doesn't spindown it's a nice motivation to fix this in software ;-)
11:21:45 Nick quelsaruk is now known as Quel|away (~kvirc@
11:22:14LinusN[IDC]Dragon: exactly :-)
11:23:14[IDC]Dragoncurrently, is USB spindown the rule or the exception?
11:25:13LinusNi don't know
11:32:40 Quit einhirn_ (Read error: 104 (Connection reset by peer))
11:32:46 Join einhirn [0] (
11:33:52 Quit Bagder_ ("Leaving")
11:35:10amiconnHi [IDC]Dragon
11:35:41[IDC]Dragonhi Jens
11:36:03amiconnYesterday afternoon you wanted to ask/ tell me something?
11:36:23[IDC]Dragonbtw, marvellous catch on the fs bug :-)
11:37:03[IDC]Dragonyesterday I was looking at the silence addition
11:37:59[IDC]DragonI coudn't come up with a simple solution, as stupid as it seems
11:38:58[IDC]Dragonsome catches:
11:39:09[IDC]Dragon1) the pause clip needs to be preloaded, in the Ondio case
11:39:45[IDC]Dragon2) the queue is also used for the talkbox clips, the queue itself can't distinguish
11:40:19[IDC]Dragon(and for those, the voice file may not be currently loaded)
11:42:56[IDC]DragonI don't like several new global variables and a bunch of special-case if's
11:48:55amiconnHmm. As it is now, we can't use 12 kHz samples because then half words are swallowed. With 16 kHz the voice file space is already rather tight
11:49:45amiconnYou are right about the talkbox problem, but imho it is not necessary to do the silence scheduling for these.
11:50:43amiconnSo the queue *has* to distinguish between voice file and talkbox clips, either via address range, or by adding a new member to the queue struct
11:58:15amiconn[IDC]Dragon: I can send you voice files using 12 kHz if you want to hear the effect yourself
12:05:34***Saving seen data "./dancer.seen"
12:18:50 Join cray3 [0] (fwuser@
12:20:54 Quit AciD (Read error: 104 (Connection reset by peer))
12:21:12 Join AciD`` [0] (
12:23:03 Quit webguest97 ("CGI:IRC (EOF)")
12:25:05gromit`_lafouine> les valeurs hardcod´┐Żs et dans le fichier de conf
12:42:35LinusNregarding the (upcoming) WPS context menu, what exactly is the context?
12:42:47LinusNis it "the wps" or "the currently playing song"
12:48:11 Join webguest42 [0] (
12:50:53 Quit AciD`` (Read error: 104 (Connection reset by peer))
12:51:50 Join AciD [0] (
12:56:02webguest42hows the iRiver port going? :)
12:56:22LinusNso so
12:56:37LinusNfixed a bug in the lcd driver yesterday
12:56:53LinusNbut still no go with the ATA controller
13:10:09 Quit cray3 ("Leaving")
13:10:57dwihnoATA is a hard nut to crack?
13:13:56LinusNhan, have to figure out how to set up the internal IDE controller
13:15:53dwihnosounds hard :)
13:18:10webguest42i saw the commit to the lcd driver ... nice to know progress is being made. Thank you LinusN for all your hard work on this
13:20:06dwihnoyes. I really appreciate it
13:20:36LinusNyou're welcome
13:20:57 Nick webguest42 is now known as ripnetuk (
13:27:06dwihnoSo the day Rockbox boots on the iriver, I have to shell out for a unit, so PLEASE, don't commit your magic changes yet linus... I'm a poor man :)
13:29:59LinusNhehe, i'd better hurry anyway, cause soon there will be no more irivers to buy
13:30:26LinusNthe H1xx model has been discontinued
13:31:45[IDC]Dragonfrom where is that info?
13:32:27LinusNwell, many retailers claim it
13:32:41amiconn[IDC]Dragon: Got my comments?
13:32:42LinusNno official confirmation though
13:33:49[IDC]Dragonamiconn: ah, yes
13:34:31[IDC]Dragonif you have a 12 kHz file available, I'd like it
13:35:57 Quit ripnetuk ("CGI:IRC")
13:36:14[IDC]DragonLinusN: starting on disontinued hardware becomes a pattern
13:36:28dwihnoLinusN: how about the newer hardware... is it a completely different beast to handle?
13:36:32[IDC]Dragonthe Ondio is also not manufactured any more
13:36:47LinusNdwihno: the 300?
13:37:23dwihnoLinusN: yeah
13:37:38LinusNit seems pretty similar
13:38:02LinusNso it may not be that much work to port to the 300 once we get it running on the 100
13:38:13dwihnoFist we take Manhattan.
13:38:17dwihnoThen we take berlin.
13:38:21dwihnoWe, being you ;)
13:38:38LinusN"20 years of boredom..."
13:44:54 Quit silencer1 (Read error: 104 (Connection reset by peer))
13:49:08 Join silencer_ [0] (
13:58:26 Quit ze (Read error: 110 (Connection timed out))
14:05:37***Saving seen data "./dancer.seen"
14:06:22amiconn[IDC]Dragon: and
14:08:00[IDC]Dragonamiconn: thanks, I'll download it later, when home
14:08:32 Quit Quel|away (Read error: 60 (Operation timed out))
14:15:37 Part kurzhaarrocker
14:27:15 Part Zagor
14:31:26 Join unholiest [0] (~kvirc@
14:32:31 Nick unholiest is now known as quelsaruk (~kvirc@
14:37:10 Join elinenbe [0] (~elinenbe_@
14:38:41 Join Zagor [242] (
14:40:54quelsarukhi Zagor
14:41:22Zagori accidentally rebooted my computer :)
14:41:31quelsarukwith the leg?
14:41:49[IDC]Dragonwith the boot ;-)
14:42:49[IDC]DragonI've seen PCs with the CD eject button next to power/reset
14:44:22 Quit quelsaruk (Read error: 54 (Connection reset by peer))
14:45:03Zagoractually it was software-triggered. i went for coffee, and when I came back my screen had locked and turned itself off (like it does after 5 mins or so). so I pressed the key sequence to unlock it and type my password. only it wasn't locked, so my password triggered the shutdow shortkey... :)
14:50:50*Bagder detects a LinusN mpeg commit!
14:52:51[IDC]Dragonlots of commits
14:53:10[IDC]DragonLinusN has a safe lead again
14:54:13[IDC]Dragoncan we enable the memory "watchdog" by default now?
14:54:35Bagdersomeone should try it at least
15:01:35elinenbeLinusN: how is the iriver side of the project coming?
15:01:43LinusNso so
15:01:56LinusNhave problems getting the ATA controller to work
15:01:58*Bagder got to feel some iriver debugging ydat
15:02:18LinusNsome sweet BDM love
15:06:05LinusNi have a nice working wps context menu on my recorder
15:06:34LinusNso far only one static menu entry, "view id3 info"
15:07:00LinusNbut you can add entries with the "wps-rocks.txt" file
15:07:11 Part oxygen77 ("Tcho")
15:07:16Bagderk3wl! ;-)
15:07:18LinusNmy wps-rocks.txt file:
15:07:30LinusNfavorites.rock:Add to favorites
15:07:37LinusNsplitedit.rock:Split editor
15:08:02LinusNin fact, wps-rocks.txt is not to be edited, it is the default supplied by rockbox
15:08:30LinusNinstead, you create "wps-rocks-user.txt", which has precedence
15:08:49LinusNworks nicely
15:09:17LinusNbut having plugins in both .rockbox/rocks and .rockbox/viewers is a nuisance
15:09:26amiconnLinusN: I'd still prefer the default to be compiled in (like the default wps)
15:11:54amiconnStability/ simplicity (you don't need to handle the case that the default file isn't found), no additional disk access, less disk clutter...
15:13:11LinusNif no file is found, no menu entries will be added
15:13:29LinusNyou still need to look for the file, so there will still be disk access
15:13:53LinusNi don't care much about cluttering the .rockbox dir
15:14:35Zagoramiconn: i was also concerned with having two files, but the logic is persuasive. also I'd like to keep the core firmware oblivious as to which plugins are available.
15:15:20BagderI think that's the main issue pro the file: the firmware doesn't know about that rocks there are
15:15:21LinusNand the code is cleaner, since the config is done in the same way, both for default and the user config
15:16:02elinenbeLinusN: I think the wps context menu should be in the cvs :)
15:16:07amiconnIf we want to localize/ voice the wpos context menu, the firmware has to know about the plugin names anyway
15:16:12LinusNelinenbe: :-)
15:16:32Bagderamiconn: not really
15:16:35LinusNamiconn: not necessarily
15:16:46LinusNwe supply a default english file
15:17:10LinusNthe user creates the user file, in his favorite language
15:17:27LinusNit's at least a good start
15:18:02LinusNwe could even add a way to create the menu from the plugin browser
15:18:13LinusN"add to wps menu"
15:18:16amiconnYes.. but (1) that means the user has to actually do that, just to get a localized menu. (2) it does not solve the voice problem (thinking of our blind users)
15:18:36LinusNamiconn: how do you suggest we do it then?
15:19:21Bagderlocalisation of plugins is a white spot on our map
15:19:32Zagorwe don't have a solution for neither localized plugins nor voiced plugins. this does not change that.
15:19:35Bagderadding stuff to the single firmware lang file is not the solution
15:23:36amiconnBagder: I'm not talking about localization of the plugins, but about the localization of the context menu itself. If the default is compiled in, you can consider this core stuff.
15:24:23BagderI don't want the firmware to have that knowledged built-in
15:26:42LinusNok, so we would need one LANG entry per plugin, containing the plugin menu entry
15:26:52LinusNit's not all that bad
15:27:09Zagoryes it is. it breaks the independence design.
15:27:25LinusNsince "open with" and "browse plugins" could be voiced
15:28:04BagderI agree with Z
15:28:09dwihnoI want quick menu sound on F3!!! :) :) :)
15:28:17LinusNyes, we created the viewer concept solely to be independent
15:28:19amiconnIf that knowledge is unwanted in the core firmware, we have to come up with a solution for localizing and voicing the plugins
15:28:32Bagderyes we should
15:28:52Bagderwe have 39 plugins for the recorder right now
15:29:05LinusNevery plugin has a LANG file
15:29:06amiconnThis way, the language/ voice file *for the plugin* could contain the entries for this plugin to be used in the context menu
15:29:22LinusNa script concatenates all lang files into one
15:29:55amiconnBagder: Probably not all plugins need locale and/ or voice support
15:30:01LinusNamiconn: now *that* means lots of disk accesses
15:30:17Bagderamiconn: true
15:31:10LinusNok, so a script could create a single lang file from all the plugin lang files
15:31:34LinusNand we could also create a voice file from that
15:32:01Zagorthen we break independent plugins
15:32:05 Join Lefungus [0] (
15:32:06LinusNbut how can the user add a single third-party plugin without recompiling everything?
15:32:21ZagorLefungus: hi
15:33:20amiconnLinusN: While this concept may actually work for localization, I see huge problems to make this work for voicing
15:36:15*[IDC]Dragon discovers a voice discussion
15:36:37 Quit AciD (Read error: 60 (Operation timed out))
15:36:52[IDC]Dragona voice file per plugin woulds be desireable
15:37:32LinusNnot for the context menu
15:37:46LinusNthen it has to load one voice file for each menu entry
15:38:02[IDC]Dragonyes, this is the nasty overlap
15:38:03amiconn[IDC]Dragon: With this solution, the question is how to cope with the memory constraints
15:39:01[IDC]Dragoncurrently, I load the voice file to the mp3 buffer start, any leftover part is available for talkbox clips
15:39:15Zagormemory can be handled by only reading the specific sample (i.e. the first) from the file. speed is a bigger problem.
15:39:20 Part Lefungus ("Leaving")
15:39:45 Join Seedless [0] (
15:40:02[IDC]Dragonspeed is not critical if I can load/open only the first part
15:40:33[IDC]Dragonbut the disk will be active a lot if you browse such entries, from file to file
15:40:37Zagorspeed will be a problem when we want to load 30+ different samples at once
15:40:51LinusNopening one file per menu entry will still take considerable time
15:40:56[IDC]Dragonwhy at once?
15:41:01Zagor"open with..."
15:41:09LinusNwps context menu
15:41:19 Join AciD [0] (
15:41:25amiconnAh yes, I just thought about the same: The plugin voice files should consist of 2 parts, the first being the clip for the plugin (context) menu entry, to be loaded on its own (but from as many voice files as there are plugins) for the context menu display
15:41:32[IDC]Dragonyes, but perhaps you can live with the access on demand
15:41:34LinusNsure, we can load the clips when the cursor reaches them
15:42:00LinusNand then perhaps cache them
15:42:01[IDC]Dragonlike the .talk thumbnails
15:42:18*LinusN should try that some day
15:42:45amiconnThe second part would then be the clips for use within the plugin. The same solution might in fact also work for localization (one .lng file per plugin)
15:42:49LinusNdo i download some voice package from the MS home page?
15:43:18Zagoronly people won't be happy about seeing the localized text only after moving the cursor to it... :)
15:43:27LinusNamiconn: not one .lng per plugin, one .lng per plugin *and language*
15:43:43 Quit AciD (Read error: 104 (Connection reset by peer))
15:43:47Zagorso we're still back to 30+ file reads for showing the menu
15:43:56[IDC]DragonZagor: good point
15:44:17[IDC]Dragonis our file performance that bad?
15:44:28LinusNopening a file is pretty costly
15:44:54Zagoreverything is relative. I'm guessing it will take at least more than a second.
15:45:00amiconnLinusN: Yes of course. Only one per plugin will need to be read of course
15:45:03[IDC]Dragonworse than writing a sector 512 times? ;-)
15:45:18amiconn[IDC]Dragon: Blame Zagor ;-)
15:45:47Zagorobviously I've missed something?
15:46:23LinusN"save current playlist" is a lot faster :-)
15:46:26amiconnZagor: See my last commit, fixing a bug that was introduced by you 20 months ago
15:46:47LinusN...or is it...?
15:47:32 Quit Seedless ("CGI:IRC (EOF)")
15:47:47LinusNwow, it is A LOT faster!
15:48:30amiconnI don't think that reading ~30 files will take that long. The biggest delay is the disk spinup, which hits only once (and even not at all on Ondio :) )
15:49:00*[IDC]Dragon hasn't noticed .cfg saving taking considerable time, on HD models
15:49:18LinusNi think a disk spinup everytime you bring up a context menu will be annoying
15:49:36Zagoramiconn: aha, nice catch. I wonder what I was thinking... :-)
15:50:20[IDC]Dragonamiconn's flash must be worn out now
15:51:14amiconnZagor: Saving the config (~3000 bytes) took >20 seconds before (yes!)
15:51:47[IDC]Dragonthat's 1200 baud
15:52:01amiconn[IDC]Dragon: It was clearly noticeable even on my v1 recorder. Without the fix, config saving took 1..2 seconds. Now it's unnoticable
15:52:09Zagori wonder how long it would have lived if you hadn't ported to ondio...
15:52:45*[IDC]Dragon hasn't saved configs very often
15:53:28ZagorI do it from time to time, but never noticed any slowness on hd players
15:53:29LinusNsaving a 6000 file playlist is a pain with the older builds
15:53:42Zagori believe you
15:53:56LinusNnow it's at least bearable
15:54:14LinusNstill qute slow, but that's probably the playlist access time
15:54:34LinusNplenty of seeking in the playlist file
15:55:19LinusNthe playlist consists of file offsets
15:55:30LinusNwe seek to the offset to get the file name
15:55:55Zagorright, that
15:56:56LinusNi have a suggestion regarding flashing
15:57:34[IDC]Dragonto ease it for newbies?
15:57:37LinusNhow about changing the firmware_flash.rock plugin so it warns the user if the flash is already "formatted"?
15:58:14[IDC]Dragonyes, I saw your mentioning
15:58:15LinusNand perhaps even do it the "right way" if the user says OK
15:58:43LinusNit seems like many users just run firmware_flash.rock when they want to upgrade the flash
15:58:57LinusNand i don't blame them
15:59:35[IDC]Dragoncan you think of a notification which clearly explains it and fits the screen?
16:00:03[IDC]Dragondo it the "right way"?
16:00:05LinusN"Rockbox is already in flash. Want to update?"
16:00:21amiconnLinusN: Imho it's a bad idea to put (rom|rock)box.ucl into the .rockbox dir. This way it's only visible if you switch to "view all". I always put it in the root with my own builds
16:00:25LinusNthen it loads .rockbox/rockbox.ucl and flashes it
16:00:56LinusNi think it's a very good idea to hide it from accidental playing
16:01:02 Join AciD [0] (
16:01:07amiconnNice idea... however, this requires an additional api function, to start one plugin from another
16:01:13[IDC]Dragonthat would require to merge the 2 plugins, or one starting the other
16:01:33LinusNput the code in the plugin library
16:01:58 Join markun [0] (
16:02:13LinusNwe can have one single plugin
16:02:22 Quit markun (Client Quit)
16:02:49amiconnLinusN: Iiuc it is not possible to start one plugin from another directly, this has to be done via the core. The plugin obviously can't overwrite itself, and still run...
16:02:50[IDC]Dragonnot that easy, a plugin can't call another like a subroutine, we have to return first
16:02:58LinusNif no argument is passed, it works like firmware_flash.rock works today, if a filename is passed, it flashes that one instead
16:03:15[IDC]Dragonyou mean, merging them?
16:03:48LinusNamiconn: it isn't the plugin itself that should be in the library, only the code that does the work
16:04:33[IDC]Dragonthey are similar anyway, I created rockbox_flash by branching from firmware_flash
16:04:50LinusNi think it would help a lot of the confusion
16:05:05amiconnThat code can't be located in the plugin library, because these functions get linked to the plugin. It has to be done in the core
16:05:39***Saving seen data "./dancer.seen"
16:05:45LinusNamiconn: what is it that's so special about the flash routines that prevents us from having them in the library?
16:05:54[IDC]Dragonif the flash plugins are merged, we don't talk about plugin concatenation any more, do we?
16:06:08LinusNof course not
16:06:27amiconnLinusN: Ah, you mean the flash routines. I mean the code that allows starting one plugin from another...
16:06:43*[IDC]Dragon was mislead, too
16:07:16[IDC]DragonI feel uncomfortable about sharing the flash code
16:07:21LinusNso, to do the initial flash, play the rock
16:07:35[IDC]Dragonthat dangerous stuff should be buried deep
16:07:42LinusNto update, play it again, or play the .ucl file
16:08:02LinusNif the plugins are merged, there is no need to have the code in the lib
16:10:41LinusNgotta go, cu guys
16:10:45 Part LinusN
16:13:02 Join markun [0] (
16:13:55markunI think I found a small bug in /apps/plugins/sort.c
16:14:16markunWho should I report it to?
16:16:13amiconnmarkun: Most suitable place is usually the bug tracker at sourceforge
16:16:36 Join pfavr [0] (
16:17:15markunIt's a very small bug introduced in the last commit. sort_buffer(); is now called two times.
16:17:40amiconn[IDC]Dragon: For starting another plugin from the running one, imho the easiest solution is some kind of "register" function. First register the plugin that should be started afterwards, then return. The core will start the second plugin now
16:17:53[IDC]Dragonmarkun: to the bug tracker
16:20:14Zagormarkun: fixed it
16:21:07markunzagor: ok
16:22:08Zagorthanks for reporting
16:24:27 Quit AciD (Read error: 104 (Connection reset by peer))
16:25:22markunno problem
16:25:23 Quit markun ("Leaving")
16:30:18 Join methangas [0] (
16:31:01 Join AciD [0] (
16:44:31 Part Zagor
17:06:45 Quit AciD (Read error: 104 (Connection reset by peer))
17:13:04 Join mjflinkman [0] (
17:13:58mjflinkmanhi folks
17:15:29mjflinkmanthough I think it may be a usual question, does somebody know if there will be a rockbox vesion for av120 ??
17:15:54dwihnoDon't think so
17:15:58dwihnohave you checked avos?
17:16:05Bagderit is a common question, yes
17:16:12Bagderbut no rockbox
17:16:25dwihnoav120 is avos, right?
17:16:40Bagderor linav
17:16:44Bagderwhatever the differences are
17:17:46mjflinkmanwell, I didn't know
17:18:02Bagderthere's too
17:19:37*Bagder leaves
17:19:49mjflinkmanthx U so much guys !!!!
17:21:57 Join mecraw_ [0] (~lmarlow@
17:24:46 Join AciD [0] (
17:34:50 Quit mjflinkman ("CGI:IRC (EOF)")
17:40:05 Join lImbus [0] (
17:40:18lImbusHi all
17:40:38lImbus[IDC]Dragon: I finally got my Ondio, it was waiting at the customs
17:41:18lImbusI just have one problem, and didn't find anything yet.
17:41:50lImbusIt says "No partition table. Insert USB cable and fix it." But WinXP seems not able to fix it.
17:43:10[IDC]DragonlImbus: Rockbox sais this?
17:44:16lImbusmhmm. yes, I assume it's rockbox, because if I insert the usb. a very familier usb-screen shows up
17:44:44[IDC]Dragonis it a used Ondio, or who installed Rockbox?
17:46:01amiconnlImbus: What rockbox version? Internal flash or MMC card?
17:47:12 Join lImbus_ [0] (
17:47:20lImbus_sorry, I hat that channel
17:47:28lImbus_err, http-tunnel, of course
17:47:33*lImbus_ is tired
17:48:01amiconn[17:45:48] <amiconn> lImbus: What rockbox version? Internal flash or MMC card?
17:48:31 Quit lImbus_ (Remote closed the connection)
17:48:50[IDC]Dragondifficult conversation...
17:49:00 Join lImbus_ [0] (
17:49:08lImbus_now, when I connect to the pc, it doesn't show up the drive anymore
17:49:15lImbus_amiconn: it's internal
17:49:34[IDC]Dragonbut the Archos firmware did work?
17:50:05[IDC]Dragonobviously, since you somehow installed Rockbox on it
17:50:27lImbus_yes. it did. but I did not feel comfortable... :-)
17:50:41lImbus_it's a used ondio, there was nothing on it. I connected it to the computer, unpacked the daily build zip file.
17:51:16[IDC]Dragonyou can connect the USB before powering up
17:51:39[IDC]Dragonthat should bring you into the USB mode of the Archos firmware
17:52:28lImbus_ok, that works
17:52:33amiconn[IDC]Dragon: Maybe this is actually a model with a different mask, possibly requiring those different clock gate polarities...
17:52:53[IDC]Dragongood idea, perhaps
17:52:54lImbus_is see the /other/ usb-screen.
17:53:10lImbus_which tool now should be able to write such a correct partition table ?
17:53:32[IDC]DragonlImbus: we'd need to prepare you a special rockbox version
17:53:34lImbus_xp sais: removeable drive, fat partition, 122mb, active
17:53:51lImbus_yay, I'm a special case !!!
17:54:07[IDC]Dragonyou may have an Ondio for which Rockbox doesn't work yet
17:54:23amiconnlImbus: Most likely the partitioning is correct, but rockbox may need some adjustments for your unit
17:54:24[IDC]Dragonwell, the flash I/O part
17:54:41[IDC]Dragonwe need to know the mask value
17:55:03amiconnThis actually gets interesting...
17:55:11[IDC]Dragonwhich rockbox doesn't tell us the way it is now
17:55:42[IDC]Dragonin the early days, when we had no disk I/O, the main menu was hard coded into the startup
17:55:59amiconnlImbus: What kind of Ondio is it?
17:55:59[IDC]Dragonso you can walk into the debug menu
17:56:15[IDC]Dragondo you feel like opening it up?
17:56:26lImbus_its a fm 128 recorder
17:56:58lImbus_yes, I'm quite handy with a screwdriver, I changed and already resoldered my recorder v1
17:57:41[IDC]Dragonif you wantto peek inside, compare with the photos on the wiki page
17:57:45lImbus_if you tell me a date, I can get a cvs-version of that hardcoded menu, and deliver what you need
17:58:03lImbus_I'll do scans as soon as I see differences
17:58:11[IDC]Dragongood idea
17:58:53lImbus_so, did I understand correctly that simply reformatting in xp with FAT should be ok ?
17:59:13lImbus_I'll try that once more so I am sure it's another thing
17:59:32[IDC]Dragondon't reformat it now
18:00:03[IDC]Dragonif we can't mount, that would be interesting, too
18:00:55lImbus_so has anybody such a debug-version with hardcoded menu laying around somewhere, or the date when they were still existing ?
18:01:26[IDC]Dragonbefore sept. 29 might do the trick
18:02:13[IDC]Dragonand after Sept. 16th
18:02:50amiconn[IDC]Dragon: Please don't simply use an old cvs version, use the menu hack with current cvs
18:03:26lImbus_oh, the menu hack is there ?
18:03:41[IDC]Dragonwhy no old version? should be ok to just peek the mask
18:03:56lImbus_you can tell me which define I have to set to get it, i'll compile the current cvs with that
18:04:14[IDC]Dragonit's no define, but a piece of code
18:04:50lImbus_you can send it by mail, if it's the simpler solution.
18:05:02[IDC]Dragonlook here:
18:05:43***Saving seen data "./dancer.seen"
18:06:04[IDC]Dragonbacically, call main_muenu() before disk_init()
18:06:30[IDC]Dragonbasically, call main_menu() before disk_init()
18:06:37[IDC]Dragonbetter now
18:06:45amiconnThat looked funny :)
18:07:41lImbus_the build environment is on the other machine, just sitting at
18:07:51amiconnlImbus: Do you have an MMC card? (May prove very useful for some experiments to get flash access working)
18:08:07lImbus_not yet, I want to buy one in the future
18:09:13lImbus_how near that future is depends on if I am able to get asleep with 128 MB of music. if it#s not enough, I'll buy a bigger card next week
18:10:25[IDC]Dragononce again about the inside: check for that 74AC08 gate, front side, close to the MMC "dent"
18:10:26*amiconn is building a test build with the hack in
18:11:04amiconn[IDC]Dragon: I expect a different chip there (NAND or NOR)
18:11:07*[IDC]Dragon thought lImbus was up to it, sorry
18:11:33[IDC]Dragonamiconn: yes, me too
18:11:39lImbus_i am compiling
18:11:52lImbus_i've go no such small screwdrivers here at work
18:12:02amiconnlImbus_: Ah ok. I thought you have no dev environment at hand where you are at
18:12:15amiconn..where you are atm
18:12:25lImbus_I got 2 machines, but no tools (screwdrievrs and so on)
18:12:32lImbus_Im at my workplace next to aachen
18:12:54lImbus_see my hostname :-)
18:14:18lImbus_thats the only machine in the real internet i've got access from inside of the company network
18:14:31lImbus_companys homepage is
18:15:26*lImbus_ is copying files to ondio
18:16:01*[IDC]Dragon can't stand the tension
18:16:09lImbus_Mask: 0x0308
18:16:27lImbus_need something else ?
18:16:28[IDC]Dragonthat's new
18:16:41[IDC]Dragonrom version?
18:16:53*lImbus_ feels pround. I will finally take part of development :-)
18:17:01lImbus_1.04 is rom version
18:17:36[IDC]Dragondo you have backlight, perhaps?
18:18:22lImbus_mhmm. it did not show up in archos-firmware :-/
18:18:30lImbus_would be cool, of course, but does not look like
18:18:43[IDC]Dragonwell, sorry, just asking
18:18:44 Quit AciD (Read error: 104 (Connection reset by peer))
18:18:46lImbus_I will scan this evening or tomorrow morning if too late tonight
18:19:12lImbus_[IDC]Dragon: don't worry.
18:19:53[IDC]Dragonamiconn: it's the bit you've been suspecting
18:20:08lImbus_the radio debug menu says: detected: yes, result: 00140885
18:20:09 Join AciD [0] (
18:20:22[IDC]DragonlImbus: yes, now it's time for the screwdriver part
18:20:45amiconnlImbus: You can try if the radio plays (or does that require disk access? J÷rg?)
18:20:56[IDC]DragonlImbus: samsung tuner, as the mask tells
18:21:11[IDC]Dragonthe radia screen wantd to load the presets
18:21:27[IDC] wants...
18:21:42lImbus_fm-radio menu tries to create the /recordings-directory here
18:21:49[IDC]Dragondon't know if you can go across that
18:22:10amiconnHow come I suspected that there are Ondios in the wild with mask bit 2 == 0 :-(
18:22:12lImbus_no, it's stuck from that point he tells me.
18:22:52[IDC]Dragonamiconn: you did suspect, right?
18:23:11amiconnlImbus: That logic chip would in fact be very interesting...
18:23:32lImbus_I'm already looking if I can quit work earlier :-)
18:23:44lImbus_but THAT does not look like... :-/
18:24:02[IDC]Dragonbetter look for a screwdriver ;-)
18:24:27[IDC]Dragonbut we're in no hurry
18:24:39lImbus_I am :-)
18:24:52[IDC]DragonI know that feeling
18:24:55amiconn[IDC]Dragon: Yes I did. Now I have to find out which parts need extensions. Might be hard without the unit actually in front of me :(
18:25:17lImbus_screwdriver: mhmm. that's an option indeed. it's a challenge, as we are a pure software development company to find such a small one.
18:25:22 Quit einhirn (Read error: 104 (Connection reset by peer))
18:25:27amiconn[IDC]Dragon: Btw, did the CPU board arrive yet?
18:25:45lImbus_amiconn: if my one stays useless otherwise, I have to problem at all to send you my unit...
18:25:53[IDC]DragonI checked this morning before I left, no mail then
18:26:10amiconnMaybe it's there when you return...
18:26:49[IDC]Dragonprobably Mr. Mailman wasn't around by that time, we rarely have no mail
18:27:19*[IDC]Dragon should go home, too
18:27:29*amiconn too
18:28:19[IDC]Dragonyou do have saved a ROM dump, right?
18:28:42amiconnYup. It's the latest rom (5.08)
18:28:50 Quit AciD (Read error: 104 (Connection reset by peer))
18:29:13*lImbus_ has found a screwdriver that fits
18:29:16[IDC]Dragonand version, you need to keep that part
18:29:47 Join AciD [0] (
18:29:51amiconnThe version info is part of the ROM image, right?
18:30:36[IDC]Dragonyes, next to the mask value, which the player doesn't have
18:30:51amiconnSo 'd say I'm safe
18:31:00amiconn(away now)
18:31:30[IDC]Dragonmaybe I can pre-flash it
18:31:44[IDC]Dragonso please send me that image
18:32:06[IDC]Dragon(depends on from where I take the flash)
18:35:07lImbus_[IDC]Dragon: The thing I should look for is the Motorola-Chip on your photo from the wiki ?
18:36:04lImbus_(I can't find the string you mentioned "74AC08" on the picture, that is)
18:36:20[IDC]Dragonit just says AC 08
18:36:29lImbus_it's definitely something else.
18:36:36[IDC]Dragonwhat is it?
18:36:54lImbus_it says ac32 in the second line, first line will take awhile to decode...
18:37:04[IDC]Dragonand what PCB version?
18:37:13[IDC]DragonAC32 is sufficient
18:37:20lImbus_mhmm. v2b.17
18:37:59[IDC]Dragonthis is a quad OR gate instead of our quad AND
18:39:12[IDC]Dragondo the traces on the PCB look similar?
18:39:55lImbus_no, small changes
18:41:04[IDC]Dragonhmm, your scan will be interesting
18:41:36[IDC]Dragontraces around the AC32, or in general?
18:42:57lImbus_general looks similar, but the ones around this gate chip
18:44:05[IDC]Dragonknowing that an OR is used instead of AND, amiconn may cook something for you
18:44:40lImbus_there is even a wire via
18:44:46[IDC]DragonI'm leaving here, maybe see you later
18:44:59lImbus_ok, thanks so far.
18:45:09 Quit [IDC]Dragon ("CGI:IRC")
18:46:11lImbus_the radio-pcb is version 2.2
18:46:40lImbus_looks less sophisticated :-)
18:56:01 Join Stryke` [0] (~Chairman8@resnet-241-86.resnet.UMBC.EDU)
19:16:09 Quit pfavr ("ChatZilla 0.9.61 [Mozilla rv:1.7.3/20041007]")
19:16:40 Join Bager [0] (~d5f0ca38@
19:16:56 Join [IDC]Dragon [0] (
19:17:39[IDC]Dragonamiconn: your board is here now
19:22:43amiconnlImbus: Are you there?
19:23:33amiconn[IDC]Dragon: I already thought it over (while driving home) and actually expected either an OR or a NOR (from the SCK1 idle level required while on USB)
19:25:05[IDC]Dragondon't crash into treeswhile thinking about logic gates
19:26:10amiconnHehe, of course. Really bad weather today in Berlin, raining all day long
19:26:28amiconn(board location) Nice to know that it arrived :)
19:34:10[IDC]Dragonheh, my little programming station works
19:35:19[IDC]Dragon(I was expecting this question mark)
19:36:06[IDC]Dragonemail me what you'd like to have in your flash
19:36:49[IDC]DragonI have a wrecked recorder board with a flashable chip, which I can uart_boot
19:37:25amiconnI think the first thing to be in the flash should be the original image (to check if it still works)
19:37:25[IDC]DragonI once made a plug-on adapter for uart_boot without soldering
19:38:02[IDC]Dragonplease send my your dump
19:39:08amiconnI just checked, it's actually rom 5.06
19:40:04[IDC]DragonI have such a dump, but would prefer your genue dump
19:40:36[IDC]Dragonor do you prefer an empty 512 KB chip?
19:41:10amiconnI think 512 KB is overkill for the player - plenty of room with 256 KB even for rombox :)
19:41:56[IDC]DragonI can offer 256 KB programmed or 512 kB blank
19:42:11[IDC]Dragonif programmed, I need your file
19:42:50[IDC]Dragonmy recorder has 512 KB, but I never used the second half
19:44:19amiconnMail sent.
19:44:56amiconn512 KB could be useful for FM recorder and Ondio FM, enabling rombox
19:45:22[IDC]Dragonyes, but I'm not gonna mod it
19:45:54amiconnDidn't you think about adding backlight?
19:46:19 Join LinusN [0] (
19:47:10[IDC]Dragongot the file, it is indeed different from the 5.06 I had
19:47:45amiconnReally? That's strange...
19:48:13LinusNwhat a funny bug ... sorted the buffer twice :-)
19:48:46[IDC]Dragonask LinusN about the backlight ;-)
19:49:28LinusN[IDC]Dragon: oooops, i forgot!
19:49:49[IDC]Dragoni didn't want to be pushy in any way
19:51:10amiconn[IDC]Dragon: Did you check what is different in the 2 rom files?
19:51:55[IDC]Dragonboth the version and the content
19:52:37amiconnVersion byte is offset 0xFE iirc. My ROM contains 0x01FA there, equal to 506
19:53:32amiconnLinusN: I'm just trying out your mpeg.c fix. Good news: no more NULL pointer accesses :)
19:54:03[IDC]Dragonthe one I had contained 0x01F7, perhaps I mis-labeled it
19:54:24amiconnThat's 5.03
19:54:39[IDC]Dragonok, your future chip is flashed and verified
19:54:46amiconnNice :-)
19:55:22lImbus_amiconn: I am still there.
19:55:58[IDC]Dragonamiconn: will swap and mail it tomorrow then
19:56:28amiconnlImbus: Could you please check something? With the menu-hacked version, go to info->debug->view IO ports and tell me the value of AN0
19:58:21amiconnlImbus: If you are up to doing even a bit more, please move the menu hack up a few lines (just before the "rc = ata_init()" line), compile again, start that version, and then tell me the value of PADR as well
19:58:56*[IDC]Dragon is away now
19:59:00lImbus_AN0: 3FF
19:59:03amiconn(peeking what the archos fw does with the select line)
19:59:41*lImbus_ is recompiling
20:00:03amiconnlImbus: Please *cold start* with that version
20:00:32*amiconn is digging up the old disassemblies
20:01:00lImbus_cold start is switch of and on. or do I need to drop the batterie s?
20:01:18amiconnNo, switch off then on is sufficient
20:02:16lImbus_PADR: E7D7
20:02:21lImbus_no, wait
20:02:26lImbus_PADR: E7DF
20:02:38lImbus_it really lacks a backlight :-)
20:04:09amiconnOkay, so I got the second meaning of mask bit 2 right :) see PA12 is low for internal on your box
20:04:47lImbus_ok, so he's looking for an external mcc.
20:04:48amiconnPBDR value? (sorry didn't think of it earlier)
20:05:03lImbus_PBDR: BCFF
20:05:31amiconnNo, the right column ("value if unset") says low for internal, high for external
20:05:45***Saving seen data "./dancer.seen"
20:07:55lImbus_I don't get it, but don't insist :-)
20:08:55 Join quelsaruk [0] (~kvirc@
20:09:03quelsarukgood evening
20:09:18amiconnPA12 is low on your box after boot, which is correct for accessing the internal flash on your box (mask bit 2 == 0, unset)
20:09:30amiconn(that was directed at lImbus)
20:09:35amiconnquelsaruk: good evening
20:10:13lImbus_amiconn: ok, so my problem has nothing to do with the fact the mmc is internal or external.
20:11:06amiconnNo, your box has a different hardware mask (indicating different hardware, in that case the AC32 vs. AC08 chip), needing different logic levels to do the same operations
20:11:43lImbus_which kind of logics is this about ? general, or more like communication between components/chips ?
20:12:40amiconnIt's about logic levels necessary to let the gate logic (which clock signal goes where when) work correctly. The different chip requires different levels
20:13:06amiconnDo you want to do a crude test?
20:13:49lImbus_why not ? (as long as it doesn't has to do with a hammer ...)
20:14:07lImbus_so the logics is kind of time managment on the pcb ?
20:14:24lImbus_who is allowed to talk to who when ?
20:15:16amiconnOpen firmware/drivers/ata_mmc.c, and swap lines 145 and 147 (so the if and else contents get swapped). These have "nice" CHECKME comments behind them.
20:16:03amiconnIf you compile this, rockbox should be able to access the mmc flash chip. Beware: this does not yet enable USB access
20:19:00lImbus_trying to leave the dbg-hacked menu with "left" says "Save Failed, no partitions"
20:19:20lImbus_correct: "Save Failed, no partition?"
20:19:44amiconnHmm, that's probably because it tries that before the ata and disk inits. Do you get the root dir afterwards?
20:20:06lImbus_should I try without hacked menu ?
20:20:38amiconnYou could do that, but I doubt that it will work :-/
20:21:11lImbus_isn't there some initialisation done AFTER the place I inserted the menu-hack ?
20:21:23lImbus_looks like (rc = ata_init())
20:21:42amiconnYes... but that is done anyway after you leave the hacked menu (and it complained)
20:21:59 Join einhirn [0] (
20:22:31lImbus_mhmm. while(1) main_menu();
20:22:40lImbus_I'm not really getting to ata_init()
20:22:45amiconnAh, right
20:22:53 Quit einhirn (Read error: 104 (Connection reset by peer))
20:23:39lImbus_uh. ld complains about the region FLASH beeing full ?!?
20:24:15amiconnYes, ignore that. It tries to build rombox, which fails for Ondio FM (too little space)
20:24:46lImbus_but... it didn't do before ? I'll continue
20:25:28amiconnSometimes it does, sometimes not. I also don't understand why that is...
20:25:38lImbus_YOU DA MEEEN !
20:25:48lImbus_it works
20:26:09amiconnSo I have to incorporate a runtime decision, and it should work for everyone :)
20:26:29amiconnI expect that USB access will not yet work
20:26:54amiconn(again, different logic level necessary)
20:26:59lImbus_just trying :-)
20:27:33lImbus_you're right. it's not yet working o usb
20:29:08 Join einhirn [0] (
20:29:50 Join unibrain [0] (
20:29:51 Quit einhirn (Read error: 104 (Connection reset by peer))
20:30:45amiconnlImbus: Now that I know what's going on, fixing USB shouldn't be that hard. If you can find an MMC (any capacity will do) you could insert it and tell me the AN0 value while inserted (just to make sure)
20:32:32 Quit gromit` (Read error: 110 (Connection timed out))
20:33:00lImbus_will see.
20:33:07lImbus_maybe a coworker has one
20:34:35lImbus_no, noone has.
20:34:58lImbus_a mate of mine has one, I'll meet friday, so I can give you confirmation then
20:35:56lImbus_amiconn: is flashing at this point a good idea? just for informatio
20:36:45lImbus_oh, no, of course. else I could not get back to my archos-usb-working-version. BTW: what is the f1-key here :-)
20:37:08amiconnThe loader uses LEFT for F1, UP for F2 and RIGHT for F3
20:37:21lImbus_looks handy
20:37:29amiconnAnd you could get back into archos: just use LEFT+ ON
20:38:05lImbus_ah, yes
20:38:08amiconn(I still wouldn't do it at this point though)
20:38:36lImbus_yes, I dare too
20:38:57amiconnAll Ondios should be flashable, as there are flash updates available from Archos
20:41:07lImbus_will they be as fast as the jukebox recorders ?
20:41:22lImbus_my ondio takes several seconds (rather pathetic)
20:42:03amiconnBooting is even faster than with the recorders (no disk spinup) :)
20:42:41amiconnMy Ondio SP is of course flashed. Boots within 2 seconds or so :)
20:42:53 Quit AciD (Read error: 54 (Connection reset by peer))
20:43:23 Join AciD [0] (
20:45:22amiconn[IDC]Dragon: Do your Ondio flash images also contain archos only now?
20:46:00[IDC]Dragonamiconn: yes
20:46:08*[IDC]Dragon is still away
21:15:10amiconnlImbus: Please fetch the latest cvs and try if USB access works :)
21:16:21 Join Timmah [0] (tim@
21:16:52amiconnlImbus: In order to avoid a conflict with ata_mmc.c, delete your modified version beforehand
21:18:15 Quit mecraw_ (Read error: 54 (Connection reset by peer))
21:18:22 Join mecraw_ [0] (~lmarlow@
21:18:40lImbus_amiconn: ongoing
21:22:06*lImbus_ is trying to access the haxx-cvs from the companies network. seems to fail..."> usb.c goes into "firmware", ata_mmc.c goes into "firmware/drivers" and hwcompat.h goes into "firmware/export"
21:26:34lImbus_thanks. I was about to copy and paste it from the cvs-view-cgi-script...
21:32:25lImbus_amiconn: confirmation: usb is working
21:32:55amiconnNice :) Does it still work if you repeatedly connect and disconnect it
21:33:43lImbus_[IDC]Dragon: the radio is working as well
21:34:00lImbus_lol. the radio has no usb-support :-)
21:34:02Timmahfor which firmware?
21:34:54lImbus_amiconn: I think inserting usb froze my device. the radio still plays, but no keypressed anymore.
21:35:13lImbus_Timmah: we are trying out a new serie of ondio with modified hardware
21:35:24Timmahgood luck :)
21:35:48amiconnlImbus: Hmm. Iirc the radio screen should react to usb (as long as you are not recording from the radio)
21:36:23amiconnYou can always switch off a hung Ondio by holding the Off button for >10 seconds
21:37:00lImbus_atm, there is no battery cover :-) Im not yet sure, but a second usb-insertion seems not to work.
21:37:39lImbus_now in plain vanilla menu, the usb-screen was shown, but winxp did'nt like it. testing a second time, maybe it was xp this time
21:37:55amiconnlImbus: It's actually an older series of Ondio (compare the main PCB version numbers)
21:38:57amiconn(usb detection in WinXP) This may sometimes take a while for Ondio, I don't know why
21:39:46lImbus_i'll send you (on the list) pictures and scans I'll do. you will see the radio pcb just LOOKS old :-)
21:41:17amiconnThat's another indication - your Ondio has the older Samsung radio chip (already know from the jukebox FM recorders). The wiki shows a model with the newer Philips chip
21:41:24lImbus_re-insertion just takes a while
21:41:35lImbus_but works
21:42:09lImbus_geez, I'm not yet familiar with the keypad :-)
21:42:15amiconnAnd I guess the access from within rockbox still works after leaving usb mode?
21:42:46lImbus_access to the memory ?
21:42:57lImbus_i did not test that explicitly
21:42:57 Join scott666_ [0] (
21:43:02amiconnYes, showing the root dir
21:44:31 Quit lImbus (Ping timeout: 14400 seconds)
21:44:40lImbus_yes, it works
21:48:07lImbus_amiconn: I don't know anymore how to get to the menu when I am in the browser ?!? I managed that minute ago, but now ?!?
21:48:29amiconnJust hold the menu (mode) button a bit longer.
21:48:44lImbus_argl. I tried doubleclick
21:48:48*lImbus_ feels dumb
21:55:01 Quit AciD (Read error: 104 (Connection reset by peer))
21:57:08lImbus_usb inserting in radio works. it even doesn't stop the radio. quitting usb mode then stops the radio :-)
21:57:43amiconnFunny. I doubt that this is intended...
21:58:36LinusNamiconn: i deliberately left the radio on in usb mode, for fun
21:58:48LinusNbut i forgot to change it back
21:59:00LinusNback when i wrote the first radio code ages ago
21:59:11lImbus_i assume somebody thought "why stopping the radio, it works", then forgot that leaving usb make sthat kind of warm boot
21:59:12amiconnCode from the stone age ;)
21:59:23lImbus_ah, well :D
22:00:08lImbus_thank you guys. I went considerably fast. I am very happy ^^
22:05:48***Saving seen data "./dancer.seen"
22:06:28*[IDC]Dragon is back
22:06:39[IDC]DragonI missed the show here
22:07:10[IDC]Dragona tiny remark about you ata_mmc.c fix:
22:07:22[IDC]Dragonif ((card_no != 0) ^ (read_hw_mask() & MMC_CLOCK_POLARITY))
22:07:44[IDC]Dragonthe ^ works bitwise, not logical
22:08:19amiconnyes... but the expressions in parentheses should give logical values (?)
22:08:51[IDC]Dragonthe right expression is not 0 or 1, but 0 or MMC_CLOCK_POLARITY
22:10:05amiconnArgh, yes. That means external MMC doesn't work for newer units (ours) :(
22:10:27[IDC]Dragonshould read:
22:10:57amiconnStrange: it seems to work ???
22:11:21[IDC]Dragonif ((card_no != 0) ^ ((read_hw_mask() & MMC_CLOCK_POLARITY) != 0))
22:11:47*amiconn goes to check the disassembly thereof
22:12:01[IDC]Dragonfor both MMC and internal?
22:12:08 Join AciD [0] (
22:12:52amiconn[IDC]Dragon: yes
22:13:16[IDC]Dragonmaybe gcc likes you
22:13:53amiconnStill, youre right about the correct version (me silly). Unfortunately there is no ^^ operator
22:14:33[IDC]Dragonyes, what a pity
22:19:45amiconnAh, me really silly :( The old version did indeed not work.
22:20:52amiconnNow it's much better
22:23:57 Part Timmah
22:25:09amiconn[IDC]Dragon: We still don't use the bridge activity signal...
22:25:53[IDC]Dragonah, yes, I forgot about it
22:26:35amiconnMe too. I re-discovered it while looking at the archos disassembly.
22:26:39 Join ripnetUK [0] (
22:27:39amiconnThere are different thresholds depending on mask bit 2 as well (that is what I couldn't clearly identify before, thought the MMC detection works differently)
22:28:24 Join edx [0] (
22:28:54amiconnYes... what analog value means activity and what means no activity
22:30:09[IDC]Dragonthe digital siganl from the bridge? strange
22:30:21[IDC]Dragonor polarity?
22:30:46amiconnIn fact it's both polarity and threshold.
22:33:48amiconnlImbus_: Could you tell me the value of AN5 from the debug menu?
22:34:45[IDC]DragonI can't contribute to wiki any more, since a couple of days
22:35:26amiconn? I though Linus had fixed that :(
22:35:28[IDC]Dragon always gives me an error when previewing the new page
22:35:54amiconnBtw: it works for me, just did some small changes a short time ago
22:36:15amiconnMaybe it depends on the topic
22:36:18[IDC]Dragonmaybe certain pages are "bad"?
22:36:35LinusN[IDC]Dragon: which oage is it?
22:36:47 Quit AciD (Read error: 104 (Connection reset by peer))
22:37:23[IDC]DragonLinusN: I'm trying to update BlindFaq
22:37:41LinusNwhat's the error message?
22:37:57[IDC]Dragonserver not found
22:38:11[IDC]Dragonsomething like that, depends on the browser
22:38:36LinusNit's locked by you
22:39:24[IDC]Dragonhmm, I hit cancel
22:39:30[IDC]Dragonstill locked?
22:42:36LinusNhmmm, i can edit it
22:42:56[IDC]DragonI can email you the new content ;-)
22:43:08LinusNtry again
22:44:35[IDC]DragonIE gives me the standard error page
22:44:58LinusNwhich is?
22:45:27 Quit methangas (" HydraIRC -> <- Get hot chicks here!")
22:45:37[IDC]Dragonroughly translated "This page is currently unavailable" and a whole text page article of ridiculous general advise
22:45:59LinusNgo to the advanced settings and disable those silly messages
22:46:09LinusNso you can read the real error message
22:46:55[IDC]Dragonhmm, I didn't know such settings
22:47:41amiconnInternetoptionen -> Erweitert -> "Kurze HTTP-Fehlermeldungen anzeigen"
22:48:08amiconnAnyway, I don't use IE by default
22:48:15[IDC]DragonI know
22:48:19*amiconn tries to edit with both IE and Mozilla
22:48:51amiconn[IDC]Dragon: It's locked by you
22:49:06[IDC]DragonI got the same error page, with inverted setting
22:49:24[IDC]Dragonshould be unlocked now
22:50:19amiconnMozilla works perfectly, IE gives that error page
22:50:44[IDC]DragonOT: seen this one:
22:51:42 Join AciD [0] (
22:51:44amiconnHehe, I already knew that one :)
22:55:31[IDC]DragonI tried firefox from work, but also no good
22:55:58[IDC]DragonOpera here also gives me a server error
22:56:36amiconnI tried AWeb on Amiga, works too. I have a number of different browsers I could try.
22:56:48amiconnLinusN: Do you have an idea what might be going on?
22:57:35LinusNis there a proxy involved?
22:57:59[IDC]Dragonnot here
22:58:04[IDC]Dragonat work, yes
22:58:13amiconnNo proxy here as well
22:58:36amiconnI tried IE4.0 (yup!), that also does not work, but gives a different error message
22:58:48 Join matsl [0] (
22:58:49LinusNso basically it works with other browsers than IE?
22:59:12[IDC]Dragonnot for me
22:59:34[IDC]DragonI can install firefox, need to dl it
22:59:55quelsaruki can try with firefox if you need
23:00:20LinusN[IDC]Dragon: i see lots of errors in the web server log
23:00:41amiconnLinusN: Browsers confirmed working: Mozilla 1.7de (Win), AWeb 3.4 (Amiga). Browsers having problems: IE 6.0 (Win), IE 4.0 (Win), Opera 6 (Win)
23:01:05amiconnI will try all other browsers available here
23:06:53*[IDC]Dragon has installed firefox 1.0 now
23:07:08[IDC]Dragonamiconn has locked the page
23:07:32amiconnI'll unlock, just completed my tests. The results are bad :(
23:08:42 Quit ripnetUK (Read error: 104 (Connection reset by peer))
23:08:56amiconnLinusN: I additionally tested IE 5.0, 5.5; Opera 7, Espial Escape 5.01, HotJava 3.0, Netscape 4.78, IBrowse 2.3 (Amiga). None of these work.
23:09:15[IDC]Dragonnice collection
23:09:22[IDC]Dragonis that a hobby?
23:09:28amiconnThe only browsers working here are Mozilla 1.7 and AWeb 3.4
23:09:56amiconn[IDC]Dragon: No, this is for testing my own web pages. I don't like to be like many other web "developers"
23:10:01[IDC]Dragonfirefox shows me a white page as a preview
23:10:29 Join ze [0] (
23:10:30amiconnThat is also considered "not working" by me (got it with Espial Escape)
23:11:02quelsarukamazing... normally people test ie, mozilla, opera and nothing more...
23:11:30[IDC]Dragonoh, white was IE, now testing firefox
23:12:05[IDC]Dragonit just does nothing, after pretending some traffic
23:13:10amiconnLinusN: I was wrong, it's still Mozilla 1.6 here (which is working)
23:17:42amiconnMozilla 1.7 does work as well
23:18:20[IDC]DragonI have no browser installed which works fo me
23:20:08amiconnHehe, funny: Stone-aged Netscape 3 works
23:20:39amiconn(apart from displaying not a single image)
23:25:50[IDC]Dragonamiconn: I did the voice pause appendixer now
23:26:15[IDC]Dragonseems to work fine
23:26:35amiconnDid you check out the ugly effects without it?
23:26:52[IDC]Dragonnot to the full extent
23:27:11[IDC]DragonI just used an older voice file, without the pause
23:27:22[IDC]Dragongiving clicks at the end
23:27:56amiconnYes... that's with 16 kHz. If you try the 12 kHz files without appending pause, it gets even more ugly
23:27:58 Join [av]bani [0] (
23:28:05 Quit mecraw_ (Read error: 104 (Connection reset by peer))
23:28:44 Join mecraw_ [0] (~lmarlow@
23:31:42[IDC]Dragonamiconn: committed now, you can try yourself
23:32:19amiconnLinusN: Konqueror 3.0.3 works for wiki edit too. Do you already have an idea what may cause this weird browser dependent errors?
23:34:41LinusNi have googled a little
23:34:57LinusNit seems to be a bug in apache 2.0
23:35:19[IDC]Dragonamiconn: I've sent you the new BlindFAQ, while you're at it
23:35:31LinusNand it seems to be something with the Content-Length header somehow
23:47:28amiconn[IDC]Dragon: I updated BlindFAQ, please look whether it is correct.
23:51:40[IDC]Dragonthanks. why should it not be correct?
23:51:49 Part [av]bani
23:52:02amiconnErm, since you couldn't test your changes?
23:52:17amiconn(Thinking of tables etc)
23:52:25amiconn[IDC]Dragon: Voice menus are *way* better now, thank!
23:52:51[IDC]Dragonthe low bitrate voice file exibits another nasty thing again: missing beginnings
23:53:24[IDC]Dragonwhen aborting a clip. I had quite a struggle with that in the past
23:53:38amiconnYes... but only if you jump from entry to entry too fast (when the trailing pause clip is not yet completely played)
23:54:00[IDC]Dragonthat's the idea of aborting...
23:54:39amiconnYes... for some reason, it still doesn't work correctly. Perhaps the frame header search is too slow?
23:55:23[IDC]DragonI don't think so. Especially with low bitrate the consumptions is very slow
23:56:16amiconnHmm. The only other reason I can think of is that we don't hit the right spot, in spite of trying to
23:57:03[IDC]DragonI made extensive logging
23:57:43[IDC]Dragonto verify what's transported and that the frame boundaries are obeyed
23:57:52amiconnAre you able to log the data going to the mas (I mean what is coming out of the SPI)?
23:58:14[IDC]Dragonno, I logged the DMA setup

Previous day | Next day