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

00:00:11preglowi feel obliged to get rid of this awful two level indent while i'm at it :)
00:03:35 Quit crashd ("leaving")
00:07:02linuxstbAnyone know if VBR AC3 files are common?
00:08:13*amiconn needs to test 64 alignment and mode combinations in preparation for memcpy() optimisation :/
00:10:17preglowahh, ouch
00:10:40preglowget_metadata shouldn't return false if i can't find an ape tag in an mpc file, now should it
00:10:43preglowit's not fatal
00:17:24 Quit matsl (Remote closed the connection)
00:25:13 Join RotAtoR [0] (n=e@12-208-71-148.client.insightBB.com)
00:31:07preglowhow i hate these DEBUG macros, why can't they take their function pointer as an argument?
00:31:12preglowjust assuming 'rb' is silly
00:36:30amiconnOkay, burst reads yield more speedup than burst writes.
00:38:43amiconn...and with both source & destination aligned, it is possible to *copy* 10MB per second, at 45 MHz
00:39:28Moosw00t
00:41:20preglowamiconn: have you measured the current rate?
00:41:31amiconnNot yet.
00:42:29amiconn...but it's certainly slower by at least a factor of 2.5
00:42:35amiconn(aligned)
00:42:44preglownot bad at all
01:00
01:00:48preglowok, first attempt at a52 with dsp didn't turn out that wel..
01:06:18preglowi am a fool
01:09:07preglowworks fine and dandy
01:14:48 Join amiconn_ [0] (n=jens@p54BD4BF3.dip.t-dialin.net)
01:20:26Moosamiconn: with your changes we will gain in baterrie consumption a bit, no?
01:24:47Moosyour memcpy() optimisation I mean
01:25:19 Join IRCMonkey [0] (n=chatzill@82-46-56-25.cable.ubr01.chap.blueyonder.co.uk)
01:25:19 Quit IRCMonkey (Client Quit)
01:26:21 Join ashridah [0] (i=ashridah@220-253-121-216.VIC.netspace.net.au)
01:27:56***Saving seen data "./dancer.seen"
01:28:55preglowi doubt you'll notice much
01:33:14 Quit amiconn (Read error: 110 (Connection timed out))
01:33:15 Nick amiconn_ is now known as amiconn (n=jens@p54BD4BF3.dip.t-dialin.net)
01:40:05 Quit actionshrimp ("a bird in the bush is worth two in your house")
01:41:04 Join _Nilisco [0] (n=Nilisco@wrath.shellfx.net)
01:43:37Moosgood night at all
01:43:50 Quit Moos ("Glory to Rockbox")
01:47:53 Join JoeBorn [0] (n=jborn@dsl017-022-247.chi1.dsl.speakeasy.net)
01:49:30 Quit Nilisco (Read error: 110 (Connection timed out))
01:49:40 Nick _Nilisco is now known as Nilisco (n=Nilisco@wrath.shellfx.net)
01:54:07 Quit _gromit (Read error: 104 (Connection reset by peer))
01:55:30preglownow this is a good sign
01:55:35preglowrockbox just hangs at startup
02:00
02:09:52 Quit ashridah ("Leaving")
02:14:58 Join gromit` [0] (n=gromit`@ras75-5-82-234-244-69.fbx.proxad.net)
02:16:01 Quit dpassen1 (Read error: 110 (Connection timed out))
02:18:51 Quit preglow ("leaving")
02:34:25 Quit ]RowaN[ ()
02:37:08 Quit RotAtoR ()
02:47:23 Join agra [0] (n=agra@pool-151-203-74-160.bos.east.verizon.net)
02:47:55agraI always liked the rockbox, can I put a linux footprint on one and boot from it?
02:53:06 Quit JoeBorn ("open.neurostechnology.com")
02:57:29agraSo what's true then?
03:00
03:09:47 Join Paul_The_Nerd [0] (n=paulthen@cpe-66-68-93-2.austin.res.rr.com)
03:16:34agraPaul_The_Nerd: hey, what's true about the rockbox type thing?
03:16:55agracan I install a footprint on it and boot my puter off of it?
03:18:11Paul_The_NerdRockbox is just an alternate firmware for various MP3 players, primarily Archos models, and the iRiver H120/140.
03:18:37Paul_The_NerdIf yourcomputer can boot from USB, I would think you could do so with most of them, but Rockbox shouldn't affect this capability either way.
03:19:04agraoOh, ok.
03:19:21agraThere's a mp3 player called the Rockbox, any good?
03:19:42Paul_The_NerdI have no clue, honestly. It's completely unrelated to this project as far as I know.
03:21:06agraheh, know anything 'bout DirectFB or Qingy?
03:21:20agraI'm having loads of trouble configuring them.
03:21:27agraanyway neat project.
03:22:22Paul_The_NerdSorry, not really familiar with either of them.
03:24:36 Join InnerPhalanx [0] (n=InnerPha@c-24-3-53-229.hsd1.pa.comcast.net)
03:24:36agraheh, alright paul.
03:24:44InnerPhalanxhello
03:24:47agraI'm goin' to leave you alone. Thanks.
03:24:49agrahi InnerPhalanx
03:24:51Paul_The_NerdHello InnerPhalanx.
03:24:52agrabye all
03:24:56Paul_The_NerdSee you agra.
03:24:58InnerPhalanxcya
03:26:05InnerPhalanxSo, what's new with rockbox 2.5 as opposed to any of the other earlier builds?
03:26:23InnerPhalanxwait
03:26:32InnerPhalanxnvm, i'll just look for a changelog =p sorry
03:26:50 Part agra
03:27:36Paul_The_Nerdhttp://www.rockbox.org/download/rockbox-2.5-notes.txt
03:27:39Paul_The_NerdRelease notes for 2.5
03:27:46InnerPhalanxah thank you very much
03:27:58***Saving seen data "./dancer.seen"
03:29:09Paul_The_NerdNo problem.
03:30:05InnerPhalanxwow, the search engine thing sounds pretty sexy
03:31:08Paul_The_NerdIt is.
03:31:16Paul_The_NerdI haven't used it much though.
03:31:35InnerPhalanxyeah, i organize my music very specfically
03:31:50Paul_The_NerdI've only got an iRiver H120, and it only supports MP3 and OGG formats so far.
03:31:57InnerPhalanxah
03:32:12Paul_The_NerdSo, it's fine on Archos, but a decent portion of my music is in wavpack.
03:32:31InnerPhalanxi'm getting an archos this weekend
03:32:41InnerPhalanxnot new, but it's already had rockbox on it
03:32:59Paul_The_NerdAh
03:33:14InnerPhalanxit's my brother's, he upgraded to a rio karma though
03:33:19Paul_The_NerdAh
03:33:26Paul_The_NerdThose seem to be popular.
03:33:31InnerPhalanxit's really nice
03:33:45InnerPhalanxactually, i was looking into it and i showed it to him and he got it...
03:34:23Paul_The_NerdAaah
03:34:52Paul_The_NerdWell, I understand the Archos players are fairly nice, especially with rockbox.
03:35:08InnerPhalanxyeah, and i
03:35:12InnerPhalanxcrap, sorry
03:35:45InnerPhalanxand i hope that there actually isn't anything up with the harddrive, because I'm eager to put it to use
03:36:07InnerPhalanxmy brother got the karma because he thought that the harddrive was going bad, but looking back he decided that maybe it wasn't
03:36:40Paul_The_NerdAh
03:37:10Paul_The_NerdGood luck with it then.
03:37:27InnerPhalanxoh, thanks
03:38:33InnerPhalanxsorry if I'm annoying you, i've just got a lack of people to talk to right now
03:38:59Paul_The_NerdHeh, it's no problem
03:39:07Paul_The_NerdI'm just passing time right now anyway.
03:39:45Paul_The_NerdI've an obligation later tonight, but it's at an uncertain time, so I'm sitting and waiting for a phonecall sometime after 9pm (which means I've at least 20 minutes before I can even reasonable expect it)
03:40:03InnerPhalanxah
03:41:36InnerPhalanxyeah I know the feeling, I was gonna go cosmic bowling with some friends last night, but no one had bothered to tell me what all was going on, and so I called my friend and he didn't call back until 8:20 or so, and it started at 9
03:41:56InnerPhalanxso i had a buncha time to kill
03:42:31Paul_The_NerdHeh
03:42:42Paul_The_NerdI'm actually helping a friend with a project.
03:42:53InnerPhalanxah
03:42:54Paul_The_NerdIt was fun though, I got to learn the basics of both PHP and CSS.
03:42:59InnerPhalanxthat's cool
03:43:14InnerPhalanxi really need to read that book on php that i have..
03:44:13Paul_The_NerdI just started reading tutorials online, or snippets people had posted and such.
03:44:29InnerPhalanxah
03:44:31InnerPhalanxyeah, i don'
03:44:33InnerPhalanxcrap
03:44:35InnerPhalanxstupid enter key..
03:44:50Paul_The_NerdI also got to experience the joy of getting Apache 2 and PHP 5.0 to cooperate on WindowsXP. Heh. That was joyful. They don't put files
03:45:00Paul_The_NerdThey don't put files where they tell you they put 'em.
03:45:17InnerPhalanxthat's wierd
03:46:38Paul_The_NerdActually, I think it did tell me where it was put, it was just buried somewhere.
03:46:48InnerPhalanxoh
03:47:03InnerPhalanxyeah, that'd completely frustrate me
03:47:10Paul_The_NerdLike, they had a list of steps to set everything up, then notes somewhere completely differently that said "Yes, those are the steps, but in reality you need to do this, this, and this or the two programs will sit beside each other and completely ignore one another"
03:47:52InnerPhalanx=p and I thought that linux was really annoying to get things to cooperate
03:48:15Paul_The_NerdNaah, the instructions for setting them up on linux were clear and concise.
03:48:47InnerPhalanxthat's probably because those are all open source program
03:48:47InnerPhalanxs
03:50:00InnerPhalanxnot necessarily because they're all open source programs and that just makes things work, but more because closed-source probably messes things up by not being as flexible
03:50:58Paul_The_NerdI think it's just more of a "the people writing the documentation primarily have experience running the software on linux"
03:51:10InnerPhalanxthat too, that'd definitely help
03:51:10InnerPhalanx=p
03:53:13Paul_The_NerdIndeed
03:53:43InnerPhalanxsorry, I don'
03:54:01InnerPhalanxfreaking...enter..key...i...want...to..kill..it...
03:54:30InnerPhalanxanyway, I don't do much programming or in-depth computer-related stuff, and if so it's mainly on windows
03:54:59InnerPhalanxI used to have linux, but it really frustrated me, enough so that I just paid the dumb 100 bucks for XP
03:55:48InnerPhalanxI'm sure that if I knew a little more, I could use linux much more efficiently, but if something wasn't an RPM, I was lost. =p
03:56:14Coldtoastwhen you first started using PCs, did you know how to do wverything?
03:56:34InnerPhalanxnot really, but that was in around 2nd grade
03:56:41InnerPhalanxer, 1st actually
03:56:52Coldtoastpretend you're back insecond grade and start using Linux then :)
03:57:06Paul_The_NerdHehehe
03:57:17Paul_The_NerdOr just hope ReactOS picks up momentum
03:57:28Coldtoastyou SHOULD start using Linux tho, seriously
03:57:30Paul_The_NerdThey've got it running Unreal Tournament in software mode, which's pretty impressive.
03:57:37Coldtoastget ready for when Windoas is gone
03:57:49InnerPhalanxTrue, Windows won't be around forever
03:58:04Coldtoastcos M$ are rapidly killing their userbase and we'll all be using Linux in the next few years
03:58:20InnerPhalanxEh, I don't think so
03:58:32Coldtoastyou wait and see :)
03:58:46Coldtoasthave you been following the whole Vista debacle?
03:58:58InnerPhalanxeven though a lot of older people find computers frustrating, do you have any godly idea how bad they'd be with linux?
03:59:10InnerPhalanxSorta, but only when I hear something on Slashdot or something
04:00
04:00:22Coldtoastdo you think a lot of old ppl are doing a lot of stuff with Windows that involves more than just firing up a browser, doing the odd thing with their photos, maye watching the odd vid or listenign to the odd bit of music?
04:00:27Paul_The_NerdVista's taking Game Design philosophy and applying it to OSes.
04:00:36Paul_The_Nerd"Oh, they're computers aren't good enough? Let 'em upgrade."
04:00:42Coldtoasta LOT of older ppl have no idea even how to uninstall something on Windows
04:00:50InnerPhalanxI know
04:00:53InnerPhalanxand that's what I mean
04:01:01Coldtoastthey are? then explain what the f*ck they're doign with OpenGL
04:01:06Paul_The_NerdMy grandparents could get by on a computer equipped on a Knoppix CD and a 256mb thumb drive, if I set it up for them initially.
04:01:19InnerPhalanxbe right back
04:01:20Coldtoastput it this way, actually
04:01:33Coldtoastdo you think older ppl would get by on OSX?
04:01:53Coldtoastof course they would cos it's so INCREDIBLY friendly and easy to use
04:02:01Coldtoastand it's also based on BSD
04:02:12Coldtoastas is Ubuntu
04:02:25Paul_The_NerdYeah, but the "based on BSD" portion hardly relates to the interface.
04:02:36Coldtoastdoesn't matter tho
04:02:55Paul_The_NerdAlso, isn't Ubuntu a Linux derivative?
04:03:09Coldtoastit's BSD
04:03:40Paul_The_NerdTheir webpage says linux though...
04:03:47ColdtoastLinux distributions get more and more friendly as time goes on
04:04:08InnerPhalanxYes, macs are very nice.
04:04:17InnerPhalanxand they are based on BSD
04:04:24InnerPhalanxthat's true.
04:04:32ColdtoastI'm ALMOST ready to start getting my Dad to switch to Linux
04:04:58ColdtoastI'm getting sick and tired of helping him with Windows over the phone
04:05:13Coldtoastit seems like he spends more time trying to fix Windows than using it
04:05:48 Join QT_ [0] (i=as@madwifi/users/area51)
04:05:55 Quit Paul_The_Nerd ("Chatzilla 0.9.68a [Firefox 1.0.7/20050915]")
04:05:59ColdtoastI'd push him towards something like Linspire if it didn't SUCK so much
04:06:49InnerPhalanxI like Windows for Winamp5, Trillian, and gaming
04:07:01InnerPhalanxas well as a few other things
04:07:30InnerPhalanxlike, I don't know of any good Palm-sync programs for Linux
04:07:38Coldtoastwell, wnamp and Trillian are covered on Linux with something like XMMS and GAIM
04:07:53InnerPhalanxWinamp5 is different from XMMS
04:07:57InnerPhalanxtrust me.
04:08:07InnerPhalanxAgain, I already had Linux on here.
04:08:08Coldtoasthmm. I know there are dists that ship with PALM stuff but no idea if it's any good
04:08:17ColdtoastI know it's different
04:08:24Coldtoastbut XMMS is pretty darn good
04:08:35Coldtoastthere was Linamp too but I think that's dead
04:08:38InnerPhalanxWhy have pretty darn good when you can have the best?
04:08:49Coldtoastwho said it was the best tho?
04:08:56InnerPhalanxIn my opinion, it is
04:09:01Coldtoastok
04:09:15InnerPhalanxI like the way it organizes my music, I like the separate media list, etc. etc.
04:09:20ColdtoastLinux is starting to become somethign serious for game devs to look at tho
04:09:30InnerPhalanxTrue,
04:09:35InnerPhalanxfor instance, UT2k3
04:09:49InnerPhalanxbut UT2k3 didn't work on Linux when I had it.
04:09:50ColdtoastQuake 4 is also released for Linux, after all
04:12:42InnerPhalanxtrue, but I don't even have a computer good enough for that
04:12:55InnerPhalanxI also like to use my keyboard and mouse and have full functionality
04:13:26InnerPhalanxLogitech Elite KB and MX510 mouse
04:13:58InnerPhalanxanother thing that when I finally got it to work, it still didn't quite work the way I wanted it to in linux
04:14:11InnerPhalanxafter I worked for a while on getting it to work.
04:15:00InnerPhalanxAnd if KDE didn't have a one second delay with every sound, that'd be a nice thing, too
04:15:31Coldtoastwhat soundcard do you have?
04:15:38Coldtoastand what dist were you using?
04:15:40InnerPhalanxSoundBlaster PCI of some sort
04:15:44InnerPhalanxRedHat9
04:16:16Coldtoastyou should try something like Fedora Core 4, Mandriva and Suse
04:16:24InnerPhalanxI had Suse on my laptop
04:16:28InnerPhalanxsucked. ass.
04:16:33Coldtoastheh
04:16:34InnerPhalanxthat's the only way to put it.
04:16:49InnerPhalanxIt didn't even freaking come with a C compiler, or if it did, it couldn't find it.
04:17:02Coldtoastoh well. sounds like you deliberately don't like anything non-Windows :)
04:17:07 Quit QT (Connection timed out)
04:17:14Coldtoastaah see, you really didn't even try
04:17:16Coldtoasthehe
04:17:42 Join Paul_The_Nerd [0] (n=paulthen@cpe-66-68-93-2.austin.res.rr.com)
04:17:48InnerPhalanxand GIMP is definitely not nearly as good as Photoshop
04:17:50Paul_The_NerdOkay, I have returned
04:18:06InnerPhalanxNot that I'd buy photoshop... winkwink
04:18:20Coldtoastif you'd spent a bit of time looking at whatever packet manager Suse comes with (can't remember which it uses) you'd have found all of that
04:18:56Coldtoastthere's GimpShop. heh
04:19:27Paul_The_NerdAnyone familiar with the Win32 simulator present?
04:21:35InnerPhalanxseemingly no, and I'm off to bed
04:21:49*InnerPhalanx attacks bed with +10 Boxers of DOOM!
04:21:58InnerPhalanxcya
04:22:29 Part InnerPhalanx
04:25:11 Join InnerPhalanx [0] (n=InnerPha@c-24-3-53-229.hsd1.pa.comcast.net)
04:25:19InnerPhalanxmeh, nevermind
04:27:05 Part InnerPhalanx
04:28:19 Join ryan_j [0] (n=ryanj@c-24-10-241-46.hsd1.ut.comcast.net)
04:55:00 Quit Coldtoast ("Peace and Protection 4.22")
05:00
05:18:13 Quit Paul_The_Nerd ("Chatzilla 0.9.68a [Firefox 1.0.7/20050915]")
05:27:59***Saving seen data "./dancer.seen"
06:00
06:55:31 Join amiconn_ [0] (n=jens@p54BD6429.dip.t-dialin.net)
07:00
07:12:56 Quit amiconn (Read error: 110 (Connection timed out))
07:12:57 Nick amiconn_ is now known as amiconn (n=jens@p54BD6429.dip.t-dialin.net)
07:24:43Bgermorning :)
07:24:55 Join webguest72 [0] (n=18d79b85@labb.contactor.se)
07:26:33 Quit webguest72 (Client Quit)
07:28:00***Saving seen data "./dancer.seen"
07:45:39 Join _FireFly_ [0] (n=icechat5@p54A44A1D.dip.t-dialin.net)
07:46:04 Quit _FireFly_ (Client Quit)
08:00
08:13:53 Join ender` [0] (i=ychat@84.52.165.220)
08:15:40 Quit ender` (Client Quit)
08:16:06 Join ender` [0] (i=ychat@84.52.165.220)
08:34:01 Join _FireFly_ [0] (n=icechat5@pd95b7c08.dip0.t-ipconnect.de)
08:54:13 Join ashridah [0] (i=ashridah@220-253-123-183.VIC.netspace.net.au)
08:59:39 Join B4gder [0] (n=daniel@static-213-115-255-230.sme.bredbandsbolaget.se)
09:00
09:01:23 Quit Zagor ("Leaving")
09:10:07Bgermorning, B4gder ;)
09:10:13B4gdermorning!
09:10:18_FireFly_moin
09:23:01 Join linuxstb_ [0] (n=linuxstb@i-83-67-212-170.freedom2surf.net)
09:26:17 Quit ashridah ("Leaving")
09:28:04***Saving seen data "./dancer.seen"
09:34:28 Join Zagor [0] (n=bjst@pdpc/supporter/sustaining/Zagor)
09:38:23 Quit linuxstb (Read error: 110 (Connection timed out))
09:42:20 Quit Zagor (Remote closed the connection)
09:48:39 Quit tvelocity (Read error: 110 (Connection timed out))
09:49:29 Join Zagor [0] (n=bjst@pdpc/supporter/sustaining/Zagor)
09:59:09 Join LinusN [0] (n=linus@labb.contactor.se)
10:00
10:05:02 Quit Zagor ("Leaving")
10:05:37 Join Zagor [0] (n=bjst@194-237-150-170.customer.telia.com)
10:13:17 Quit linuxstb_ ("Leaving")
10:28:49 Quit Zagor ("Leaving")
10:29:28 Join Zagor [0] (n=bjst@194-237-150-170.customer.telia.com)
10:29:51LinusNZagor: time to decide, stay or leave :-)
10:30:16Bger:)
10:32:28Zagori'm futzing around with my xchat settings
10:44:13 Quit webguest80 ("CGI:IRC")
11:00
11:00:53amiconnhi
11:02:00 Quit Zagor ("Leaving")
11:02:59 Join Zagor [0] (n=bjst@194-237-150-170.customer.telia.com)
11:03:10Zagortesting testing
11:03:15Zagorahh, much better
11:03:30 Join tvelocity [0] (n=tony@ipa104.1.tellas.gr)
11:06:18amiconnLinusN: Are you really sure the waitstates for the lcd controller are correct?
11:08:15BgerZagor this remembers me Duke Nukem 3d ... :)
11:21:53 Join Musicmad [0] (n=Musicmad@cpe.atm2-0-1031198.0x50a4ad0e.bynxx13.customer.tele.dk)
11:28:07***Saving seen data "./dancer.seen"
11:29:11Musicmadthe dir cache is working nicely eh? Excellent feature
11:45:10 Quit Seed (Nick collision from services.)
11:45:18 Join Seed [0] (i=ben@l192-117-115-168.broadband.actcom.net.il)
11:47:30LinusNamiconn: pretty sure
11:48:16LinusNamiconn: you remember that we tuned them along with the latest lcd transfer loop optimizations?
11:48:20MusicmadLinusN: I think a new booloader solved the no sound issue.
11:48:27LinusNseems so, yes
11:48:31LinusNthat's good
11:48:33Musicmadbootloader :)
11:48:35Musicmadyes.
11:52:17 Quit Seed (Nick collision from services.)
11:52:25 Join Seed [0] (i=ben@l192-117-115-168.broadband.actcom.net.il)
11:53:42amiconnLinusN: I know, however, the datasheet says 80 ns access time at 3.3V
11:54:12amiconnThat would mean the wait states should be identical to flash ROM (I calculated them assuming a 70ns ROM)
11:54:37amiconnWe don't read back from the controller, so maybe this is a non-issue
11:55:22 Join ashridah [0] (i=ashridah@220-253-123-144.VIC.netspace.net.au)
12:00
12:11:03B4gderhttp://kjell.haxx.se/sudoku/
12:11:10B4gderss-capable
12:12:15B4gder17 Extreme is... hard
12:19:58 Join muesli- [0] (i=muesli_t@hmln-d9b8ef51.pool.mediaWays.net)
12:20:14muesli-hi
12:22:54B4gderg'day
12:23:15muesli-hey mate
12:24:08 Join linuxstb [0] (n=d57b9aa9@labb.contactor.se)
12:24:51linuxstbB4gder: Nice Sudoku link. We do need to make the plugin generate its own games though.
12:25:01B4gderyes
12:25:15muesli-_FireFly_ present?
12:25:38 Join webguest16 [0] (n=53afb0c2@labb.contactor.se)
12:27:25 Quit Maxime (Read error: 104 (Connection reset by peer))
12:29:03B4gderbut at least this site has a never-ending feed
12:31:41linuxstbCan anyone point me to documentation about the ATA identify_info[] structure?
12:33:12Zagorlinuxstb: http://www.t13.org/#Project_drafts
12:33:44 Join Maxime [0] (n=flemmard@fbx.flemmard.net)
12:34:51linuxstbZagor: Thanks. I think I've found it in the ata-atapi-v5-1.pdf file on the Rockbox Wiki.
12:35:34Zagoroh, ok. i thought you wanted an "authority" link.
12:37:46linuxstbI was just looking for _any_ link. But that's a very useful page of documents.
12:41:21linuxstbMy ipod ATA driver is now initialising correctly - i.e. returning 0 from ata_init() - I now just want to double-check its working properly by displaying some of the identify fields.
12:41:38Bgerlinuxstb how's the ipod port going
12:41:57muesli-rockbox on ipod *geeeeek*
12:42:15linuxstbI haven't spent too much time on it, but I'm hopefully making progress with an ATA driver.
12:42:32muesli-meant *shriek* ;)
12:42:46amiconnlinuxstb: news on the flac driver front?
12:42:53amiconns/driver/codec/
12:43:17linuxstbIf you're talking about the ffmpeg library, then no - I haven't done any more work on it. But it's still near the top of my todo list.
12:45:26BgerLinusN so we know the LCD controller now (at least we know what it's compatible with)
12:45:58Bgeron the iriver h3x0 i mean. am i right ?
12:49:55_FireFly_muesli- what do you want from me, i'm currently busy working
12:54:54LinusNBger: no we don't, unfortunately, but it's a good guess
12:57:47 Quit muesli- (Read error: 113 (No route to host))
12:58:56 Quit webguest16 ("CGI:IRC")
12:59:34 Quit Musicmad (Read error: 104 (Connection reset by peer))
13:00
13:23:51 Join preglow [0] (n=thomjoha@hekta.edt.aft.hist.no)
13:27:16 Join postglow [0] (n=3e088e42@labb.contactor.se)
13:28:11***Saving seen data "./dancer.seen"
13:29:26 Quit _FireFly_ (Read error: 110 (Connection timed out))
13:29:49Bgerthe evil twin brother
13:30:21preglowgrab him! quick!
13:32:07Bger 62. 8.142. 66 :P
13:33:19 Quit postglow ("CGI:IRC")
13:37:21ashridahwait. your nick is meant to be pre-glow, not preg-low? :)
13:37:29preglowyes
13:37:49ashridahrighto then
13:37:58preglowi don't care too much
13:39:58preglowtime for food
13:43:35Bgernice lunch
13:50:22 Join thegeek [0] (n=thegeek@s057b.studby.ntnu.no)
13:51:37 Join Febs [0] (n=Febs@207-172-122-81.c3-0.rdl-ubr4.trpr-rdl.pa.cable.rcn.com)
14:00
14:05:50 Quit thegeek_ (Read error: 110 (Connection timed out))
14:06:43 Join _FireFly_ [0] (n=icechat5@pd95b7c08.dip0.t-ipconnect.de)
14:07:12 Quit Febs (" HydraIRC -> http://www.hydrairc.com <-")
14:08:17 Quit Seed (Read error: 110 (Connection timed out))
14:08:19 Join Seed [0] (i=ben@l192-117-115-168.broadband.actcom.net.il)
14:09:22 Quit _FireFly_ (Client Quit)
14:30:38 Quit Seed (Read error: 110 (Connection timed out))
14:30:51 Join Seed [0] (i=ben@l192-117-115-168.broadband.actcom.net.il)
15:00
15:01:21 Join t0mas [0] (n=Tomas@unaffiliated/t0mas)
15:18:43Bgerhm... www.magnatune.com
15:20:06TiMiDsounds good
15:20:34Bgeryep
15:20:52TiMiDno drm, cheap ...
15:21:17TiMiDI wonder if it's like this website in russia which sold misics for 0.01$
15:21:27TiMiDbut which was illegal
15:22:45TiMiDalso this website
15:22:49TiMiDhttp://www.radioblogclub.com
15:23:19TiMiDit's not a very high quality streamingbut htey have a lot of musics available
15:28:14***Saving seen data "./dancer.seen"
15:47:12 Quit ashridah ("Leaving")
15:49:45 Join Moos [0] (i=DrMoos@m90.net81-66-158.noos.fr)
15:54:23 Quit linuxstb ("CGI:IRC (EOF)")
16:00
16:11:45B4gderI wonder if we should consider separating a dev list from a users list
16:11:55B4gdermailing lists I mean
16:13:27TiMiDit would be a good idea indeed
16:14:20 Join Mxm`Pas`Bien [0] (n=flemmard@fbx.flemmard.net)
16:16:37TiMiDpas bien ?
16:20:11Moosmaybe one "depressif" :)
16:20:27 Join _FireFly_ [0] (n=FireFly@p54A460BA.dip.t-dialin.net)
16:20:37TiMiDmwarf
16:20:46_FireFly_??
16:20:48TiMiDc pas bien de deprimer :(
16:20:56TiMiDhi _FireFly_ :)
16:20:59_FireFly_hi
16:21:13Mooshi guys
16:22:22markunHi Moos
16:22:41MoosHello markun
16:23:27 Quit Maxime (Read error: 110 (Connection timed out))
16:30:47preglowB4gder: sounds clever
17:00
17:02:59 Join CGI921 [0] (n=51d6add2@labb.contactor.se)
17:03:44 Quit CGI921 (Client Quit)
17:09:57 Join paugh [0] (n=kickback@2001:5c0:8fff:ffff:8000:0:3e03:6822)
17:16:37 Join solexx___ [0] (n=jrschulz@d098044.adsl.hansenet.de)
17:17:11 Quit tvelocity (Read error: 110 (Connection timed out))
17:25:04 Quit XavierGr (Read error: 113 (No route to host))
17:27:29 Quit solexx_ (Read error: 110 (Connection timed out))
17:27:32 Quit Zagor ("Client exiting")
17:28:15***Saving seen data "./dancer.seen"
17:36:15 Quit ghode|afk (Read error: 104 (Connection reset by peer))
17:48:00 Quit B4gder ("time to say moo")
18:00
18:17:30 Join dpassen1 [0] (n=dpassen1@resnet-233-61.resnet.umbc.edu)
18:18:20 Join atubbs [0] (n=atubbs@ool-435634a8.dyn.optonline.net)
18:25:59 Join DangerousDan [0] (n=Miranda@newtpulsifer.campus.luth.se)
18:37:50 Join ghode|afk [0] (n=garudin@host-83-146-62-103.bulldogdsl.com)
19:00
19:02:20 Join JoeBorn [0] (n=jborn@dsl017-022-247.chi1.dsl.speakeasy.net)
19:15:30 Join DrMoos [0] (i=DrMoos@m90.net81-66-158.noos.fr)
19:15:30 Quit Moos (Read error: 104 (Connection reset by peer))
19:16:14 Quit atubbs ("leaving")
19:17:40 Join Lear [0] (n=chatzill@h73n11c1o285.bredband.skanova.com)
19:28:18***Saving seen data "./dancer.seen"
19:36:13 Join Moos [0] (i=DrMoos@m90.net81-66-158.noos.fr)
19:36:36 Quit DrMoos (Read error: 110 (Connection timed out))
19:45:58 Join linuxstb [0] (n=5343d4aa@labb.contactor.se)
19:46:42 Join tvelocity [0] (n=tony@ipa148.5.tellas.gr)
19:54:53 Join Paul_The_Nerd [0] (n=paulthen@cpe-66-68-93-2.austin.res.rr.com)
19:55:16_FireFly_hi paul
19:56:04 Join Myth`n`Legend [0] (i=Whatever@bzq-218-38-174.cablep.bezeqint.net)
19:56:14LearInteresting... I can reproduce "large max files limit" problems in the simulator...
19:56:24Paul_The_NerdHello _FireFly_
19:58:07_FireFly_i have a patch which exclude comment-lines while loading wps-files so that only the pure wps-format definition gets into the format-buffer :)
19:58:38_FireFly_the patch can be find on the tracker
19:59:12 Part Myth`n`Legend
20:00
20:00:42Paul_The_Nerd:)
20:00:46amiconnLear: What happens in the sim, and what are the exact preconditions?
20:01:01Lear5300: no problems
20:01:10Lear5400: Vorbis reports codec failure
20:01:26_FireFly_10000 as limit for the dirbrowser
20:01:30amiconnIs it sufficient to just set a high limit, or do you actually need to have many files in a dir to trigger it?
20:01:50Lear5450: Vorbis codec crashes, unsure where, but it has allocated a few kilobytes, far from all at least.
20:02:13amiconnIirc the problems where also reported from archos users
20:02:14_FireFly_maybe that we ran out of memory ??
20:02:23Learhigh limit is enough; I have about 20 entries in the folder...
20:02:32LearNo, not out of memory; have debug prints for that... :)
20:02:32amiconnHmm....
20:03:30_FireFly_or that some memory areas might be obverlapping each other
20:04:53LearYes, some sort of corruption is a thought...
20:06:00 Quit Moos (Read error: 110 (Connection timed out))
20:06:13_FireFly_is the limit adjusted on demand, when the setting is changed ??
20:06:25LearOnly after restart.
20:08:22_FireFly_could be one of the stacks get corrupted ??
20:09:11 Join webguest18 [0] (n=d503542d@labb.contactor.se)
20:10:18LearPossibly; Vorbis do use a bit of stack during setup...
20:11:12linuxstbI have a couple of simple Rockbox ATA questions - can anyone help?
20:11:13_FireFly_how can this checked
20:11:25_FireFly_Lear ??
20:12:19LearHm.. No obvious solution.. gdb doesn't to DLL tracing on windows that well..
20:12:51_FireFly_maybe it works better under linux
20:12:59_FireFly_with gdb
20:13:56LearLikely...
20:15:49_FireFly_i will test
20:18:42_FireFly_if i can
20:21:31LearWhat? playlist.c also allocates AVERAGE_FILENAME_LENGTH * max_files_in_dir bytes for a filename buffer? I thought it only needed an index array...
20:22:44LearAnd an array declared as unsigned long* shouldn't be allocated with size * sizeof(int)... :)
20:23:07_FireFly_oh :)
20:23:40_FireFly_so tc.dircache and codec_stack doesn't overlap
20:23:51_FireFly_maybe you have found the problem
20:24:25LearNot really... Why?
20:25:40LearAh, so that extra buffer was for in-RAM playlists... Makes sense...
20:27:57amiconnLear: I tested on archos recorder, even with a limit of 10000. Didn't notice any unusual behaviour, exceot that the voice UI doesn't work because the voice file doesn't fit in the remaining RAM
20:28:11LearBut having max_files_in_dir set to 10000 on a 2MB device makes no sense at all. :)
20:28:33amiconnYeah, it eats almost 1MB of the free RAM...
20:29:43LearHm.. The crash I get is a random memory read, it looks like...
20:29:44amiconnBtw, you're right about the unsigned long* array and sizeof(int), but that's no problem on both SH1 and coldfire
20:30:39Paul_The_NerdAmiconn: He said the crash happened when it loaded the Vorbis codec though, right?
20:30:40LearHence the smiley, logically wrong only...
20:30:42Paul_The_NerdDoes it happen with other codecs?
20:31:20amiconnHmm, I wonder why playlist.c allocates that buffer...
20:32:49_FireFly_does this makes problems if the memory-address of an array end is the same as the memory-start-address of another array
20:33:15Paul_The_NerdWouldn't that qualify as an overlap?
20:33:49LearNot with MP3 at least...
20:33:56_FireFly_because the address of playlist->buffer[0] is the same as playlist->indices[10000]
20:34:00 Quit Shani}{Coder (Read error: 104 (Connection reset by peer))
20:34:30LearThat's normal (index for indices goes from 0 to 9999)
20:34:35amiconn_FireFly_: Yes of course, because when you set the limit to 10000, playlist->indices[10000] is an invalid index
20:34:45_FireFly_ups
20:35:03_FireFly_my failure
20:35:58 Join _coder` [0] (i=shani@Ariel.Atlantica.US)
20:39:45amiconnThere is a bug in tree.c ... though probably unrelated to the current problem
20:40:01_FireFly_where ??
20:40:17amiconntree_init() says "We copy the settings value in case it is changed by the user...." (line 1474)
20:40:44amiconn...but line 305 uses global_settings.max_files_in_dir directly instead of max_files (!)
20:42:20LearYes, I saw that too...
20:43:25amiconnThis should be fixed imho
20:49:12 Quit webguest18 ("CGI:IRC (EOF)")
20:56:36LearSimilar problems on target; only difference is that I need slightly larger values for the real problems (codec failure and worse)...
20:56:44Leartarget being an h140...
20:57:09Paul_The_NerdIs it just the Vorbis codec?
20:57:13LearE.g., 5400 files only caused a small initial skip on about 8 seconds on a few test files...
20:57:20 Quit solexx___ ("leaving")
20:57:27LearOnly tested mp3 and vorbis, and only vorbis showed the problem.
20:58:34LearOh well, can't really spend much more time on this today. At least we have a reproducible test case. :)
20:58:34amiconnI've set the limit to 6000 now on my H140, playing an .ogg now
20:58:39amiconnNo problem...
20:59:21LearI didn't even get to the wps, and that was with 5700. And you did remember to reboot, I assume? ;)
20:59:28amiconnyup
20:59:40amiconnI'll try higher values...
21:00
21:00:05LearThe ones I tested with did use the resampler as well; not that it should matter really...
21:00:28amiconnI don't have such .oggs
21:00:55amiconn...but I could try .mp3s which use the resampler, and .ac3
21:01:50Lear"my" mp3:s used the resampler.
21:03:40amiconnI'm at 10000 now. Vorbis still works...
21:04:59LearWeird; I'm not using a nightly, but it isn't that special...
21:05:18amiconnI'll update to current cvs
21:06:00_FireFly_i have latest cvs running with my remote-patch
21:06:25_FireFly_and i have just test it with max_files at 6000 and playing an ogg-file
21:06:35_FireFly_the player freezed
21:06:50_FireFly_and the hdd-led is on
21:08:29 Quit linuxstb ("CGI:IRC")
21:09:30amiconnStill works...
21:10:22 Join Cassandra [0] (n=Cassandr@elmyra.coraline.org)
21:12:02amiconna52.codec doesn't seek...
21:16:26_FireFly_my player freeze if i set max_files to 3700 an up if i play an ogg-file
21:16:43amiconnHmm strange.
21:17:02amiconnI can't make it freeze no matter what format, even at max_files = 10000
21:17:52amiconnTried .ogg, .mp2 (various), .ac3, .flac, .wv
21:18:06amiconn.mp3 I mean
21:18:42amiconnLear; _FireFly_: What birates are these .ogg files?
21:20:45CassandraHmm - no wonder I've not been getting mail. I appear to have dropped off the list.
21:21:14CassandraSorry for not having the manual done yet, btw. I'm afraid my life seems to be very hectic at the moment, and is unlikely to stop being until at least December.
21:21:16amiconnLear: The variable usage problem (global_settings.max_files_in_dir <-> max_files) is also present in filetree.c and dbtree.c ...
21:22:25_FireFly_amiconn: nominal bitrates(through ogginfo) 128kb/s and 160kb/s
21:22:29 Join solexx [0] (n=jrschulz@d098044.adsl.hansenet.de)
21:22:50_FireFly_one file has 128kb/s and the other tested file 160kb/s
21:23:19amiconn_FireFly_: Hmm, I only know the average bitrate of mine (from rockbox) - around 200kbit/s
21:25:19_FireFly_the id3-viewer in rockbox say 113 kbps for the nominal 128kb/s file..
21:26:06_FireFly_and for the other 171kbps both VBR
21:26:26amiconnHmm... so I have no idea what's going on here
21:28:20***Saving seen data "./dancer.seen"
21:29:03 Join linuxstb [0] (n=linuxstb@i-83-67-212-170.freedom2surf.net)
21:30:55_FireFly_amiconn: in filetree max_files_in_dir must be used because there is no var max_files and the same is for dbtree.c
21:31:51amiconnBoth filetree.c and dbtree.c have to use max_files from tree.c iiuc, everything else is buggy
21:32:16amiconnShould be exported via tree.h
21:33:34 Join XavierGr [0] (n=XavierGr@ppp48-adsl-111.ath.forthnet.gr)
21:36:13 Quit dpassen1 (Read error: 110 (Connection timed out))
21:37:43linuxstbamiconn: Rockbox's ATA code definitely has endian problems - it needs fixing to work on little-endian targets.
21:37:59_FireFly_amiconn: i have changed it in my code and it doesn't change the problem
21:38:11linuxstbAm I right in saying that for targets with SWAP_WORDS defined, the ATA hardware is speaking in little-endian words?
21:38:26amiconnNo.
21:38:53linuxstbThe other way around then? :)
21:39:52amiconnATA _always_ speaks little endian itself, _except_ the identify data
21:40:19linuxstbSo what is the "byte-swapping hardware" you've mentioned that the iriver has?
21:40:26amiconnSWAP_WORDS is for big endian targets which have a hardware byteswap in the ata circuitry, so they don't need to swap
21:41:13amiconnIt's a very simple thing - the ata data bus low & high words are swapped in hardware for data transfers
21:41:44amiconnThink of it as ATA D0..D7 are connected to the CPU D8..D15 and vice versa
21:42:19linuxstbI understand the idea behind byte-swapping. But SWAP_WORDS is defined for Archos, and not defined for iriver.
21:43:43amiconnOoops...
21:44:28amiconnThen it's the other way round, but still we need a #define that is independent of the endian #defines
21:44:37amiconn(because of the iriver hardware swap)
21:46:00linuxstbSo am I wrong to say that the "byte-swap wiring" means that the iriver speaks "big-endian ATA" ?
21:46:19Learamiconn: the oggs were between 130 and 190 kbps.
21:46:40amiconnIiuc you need SWAP_WORDS to be undefined for ipod, *but* lines 365, 680 and 1273 in ata.c are wrong
21:47:15amiconnThey need to use generic swap16(...) instead of letoh16(...) / htole16(...)
21:48:51amiconnThe point is that while you don't need to swap ordinary data on ipod, you need to swap identify data
21:49:40amiconn...but line 1273 doesn't do that in its current form
21:50:27linuxstbThe code around line 349 also needs fixing I think.
21:51:15linuxstbBut I thought the identify data is treated as an array of 16-bit words. So they should just be stored in host-endian format.
21:52:07 Quit Cassandra (" HydraIRC -> http://www.hydrairc.com <- State of the art IRC")
21:52:24amiconnNo, the code around line 349 and line 660 doesn't need fixing
21:53:03 Join _DangerousDan [0] (n=Miranda@newtpulsifer.campus.luth.se)
21:53:03amiconnSWAP_WORDS needs to be defined for a big endian platform without hardware swap
21:53:45amiconn(archos), and undefined for big endian platforms with hardware swap (iriver) and for little endian platforms
21:54:02amiconnI doubt that there are little endian platforms with hardware swap ;)
21:54:35linuxstbWouldn't it make more sense to base it on the endianness of the target and the existence of a hardware swap?
21:56:24amiconnI don't know whether such a check would make sense
21:57:23amiconnA number of macros needs to be defined anyway (all the addresses, the access method etc) based on the exact target. Defining SWAP_WORDS there doesn't hurt imho
21:58:00amiconnI wonder why all the control ports are defined as unsigned short* for iriver...
21:58:43linuxstbWhat should they be?
21:59:27linuxstbAre you saying that because they are chars on the Archos?
21:59:50 Join [-AIR-] [0] (n=air@i.am.the.bassist.in.alpharoad.co.uk)
22:00
22:00:17[-AIR-]hey anyone here? just wondering what formats the iriver now plays other than mp3 and ogg. like lossless? etc ?
22:00:47linuxstb[-AIR-]: http://www.rockbox.org/twiki/bin/view/Main/SoundCodecs#Current_status
22:01:13amiconnlinuxstb: Yes, and afaik they actually are bytes, not words
22:02:17[-AIR-]tnx :)
22:02:50Paul_The_Nerd[-AIR-]: wavpack in lossy and lossless, FLAC, and ALAC, as well as WAV, mp3, and ogg vorbis.
22:03:26linuxstbamiconn: I think it's to do with the byte-swapping.
22:03:57Paul_The_NerdAlso AC3 (A/52)
22:04:34Paul_The_NerdMPC and MP4 are in progress, I understand, but not really up to a usable point yet.
22:08:31 Quit DangerousDan (Read error: 110 (Connection timed out))
22:08:52markunSpeex will also work some day I guess
22:12:04[-AIR-]cheers ppl. im off.
22:12:08 Quit [-AIR-] ("—I-n-v-i-s-i-o-n— 2.0 Build 3515")
22:12:45Paul_The_NerdSpeex support would be lovely
22:15:50preglowamiconn: why is your 64 bit mul faster than the gcc one? just plain bad code on their part?
22:16:45amiconnYes they use les optimised code
22:17:01preglowhmm
22:17:10preglowmusepack being so slow really irritates me
22:18:32amiconnMusepack uses 64 bit arithmetics?
22:19:31preglowyes
22:19:32preglowextensively
22:19:41preglowi haven't been able to optimise it using the emac unit
22:19:52preglowthey use different scale factors all over the place
22:19:56preglowand that's the only large problem left
22:21:03preglowall sane codecs keep their important bits in the top 32 bits of the result
22:21:18preglowmusepack doesn't, their important bits are just as easily placed in the middle bits of a 64 bit register
22:22:02 Join muesli- [0] (i=muesli_t@Bc0b6.b.pppool.de)
22:22:36muesli-re
22:24:29amiconnpreglow: So you think using the optimised 64 bit multiplication could help? That would be a nice usage for my routine...
22:26:55LearQuestion is, would it help enough... :)
22:27:42LearHe, on windows, it seems all non-static codec functions (i.e., in the file declaring codec_start) are exported...
22:36:43 Quit _DangerousDan ("Miranda IM! Smaller, Faster, Easier. http://miranda-im.org")
22:39:13 Quit Bagder ("Off to search for that connect-resetting peer guy!")
22:40:41 Join mat [0] (n=522e3819@labb.contactor.se)
22:43:20 Quit mat (Client Quit)
22:46:21linuxstbamiconn: Are you sure that line 1273 of ata.c should be changed to swap16() ? IIUC, this part of the code should only swap for the iriver, and not for anything else - either big or little endian targets.
22:47:06linuxstbSo maybe this should be changed to use swap16() for the iriver, and nothing for everything else. Instead of the existing logic.
22:51:41linuxstbOn a related topic, does anyone know if the H300 (and other coldfire-based potential targets) have this byte-swapping?
22:56:29 Quit ender` (Read error: 110 (Connection timed out))
22:56:33 Nick yosemite_ is now known as yosemite (i=sam@threepwood.dasbistro.com)
22:58:24amiconnlinuxstb: Now I'm confused :(
23:00
23:00:35linuxstbThe identify data is defined as 16-bit words - this is why it's different to the sector reads/writes, which IIUC are reading/writing two bytes at a time.
23:01:10linuxstbSo all targets apart from iriver give 16-bits in host-endian order. On the iriver, it is swapped.
23:01:22linuxstb(for the identify data)
23:02:09linuxstbMy suggested new logic for the identify read function is:
23:02:50linuxstb#if CONFIG_CPU == MCF5249
23:03:01linuxstb identify_info[i] = swap16(ATA_DATA);
23:03:07linuxstb#else
23:03:12linuxstb identify_info[i] = ATA_DATA;
23:03:14linuxstb#endif
23:04:10amiconnWhat about the following:
23:04:12linuxstbWhich should generate the same code for existing targets, and also work on the ipod.
23:05:14amiconn- give SWAP_WORDS a new meaning - "this is a big endian target with hardware swap", and only define it for iriver
23:05:44amiconnThen ordinary reads and writes would use:
23:06:04amiconn#if defined ROCKBOX_LITTLE_ENDIAN || SWAP_WORD
23:06:33amiconn. /* read/write DATA */
23:06:39amiconn#else
23:06:42amiconn. /*
23:06:51amiconnread write swap16(DATA) */
23:06:54amiconn#endif
23:07:03amiconnAnd for identify:
23:07:15amiconn#ifdef SWAP_WORDS
23:07:35amiconn...go on like your suggestion
23:08:39linuxstbI'm not sure if that's any clearer than the existing SWAP_WORDS definition - I now understand "SWAP_WORDS" to mean that ata.c needs to swap words when reading/writing data.
23:08:54preglowamiconn: yes, i think it would most definitely help, but how do we use it?
23:09:00amiconnHmm...
23:09:12preglowamiconn: you'd have to replace the routine gcc currently uses for 64 bit muls
23:09:27amiconnlinuxstb: Then you can replace CONFIG_CPU == MCF5249 in your suggestion with
23:09:40linuxstbSo SWAP_WORDS is defined for the Archos (big-endian with no hardware swap), and not defined for the iriver (big-endian with hardware swap) or the ipod (little-endian with no hardware swap).
23:10:40linuxstbSo I'm happy with the current definition - but not happy with my suggested use of CPU type as the basis for the swapping.
23:10:54amiconn#if defined(ROCKBOX_BIG_ENDIAN) && !defined(SWAP_WORDS)
23:11:18amiconnidentify_info[i] = swap16(ATA_DATA);
23:11:18linuxstbYes - that's better.
23:11:20amiconn#else
23:11:25amiconnidentify_info[i] = ATA_DATA;
23:11:26amiconn#endif
23:12:24amiconnpreglow: You could also replace all multiplication operators which multiply 64 bit values with a call to mul64()
23:12:42amiconnThat's what I did in mandelbrot.c (via a macro, so I can select)
23:12:56preglowamiconn: yes, but i don't want to go to those lengths for something that should only be a temporary solution
23:12:56amiconnI dunno how many of these calls there are...
23:13:12amiconnHmm.
23:13:36preglowmake the gcc people use it as their 64 bit support routine :)
23:13:54amiconnYou could try to compile this routine as muldi3() and put it into a library file, then link with that before the gcc libs
23:15:39preglowamiconn: i'm severly drunk, btw, all the 64 bit muls are called via macros...
23:15:48preglowamiconn: so i could just try dropping it in
23:15:53preglowgod, i hate it when i don't think
23:15:53Learpreglow: was just about to mention that... :)
23:16:03amiconnmuldi3.o is part of libgcc.a
23:16:29preglowamiconn: i think i'll give it a go and see what happens
23:17:00preglowbtw, i see the arguments in your routine are long longs
23:17:05amiconnyup
23:17:08preglowcan anything be gained from letting them just be long?
23:17:14amiconnNo
23:17:20preglowdidn't think so...
23:17:30amiconnThen you'll need separate functions for signed and unsigned
23:17:52amiconnMy routine does 64x64->64 bit, which works for both signed and unsigned
23:17:54preglowman, your function is _really_ small compared to the one gcc uses, if i remember correctly
23:18:21amiconn32x32->64 might be faster, but needs separate implementations for signed and unsigned
23:19:10amiconnA scaled example, 8x8 -> 8 bit vs. 8x8->16 bit:
23:19:19amiconn0x01 0x01
23:19:45amiconn0x01 * 0x01 = 0x01, all positive values work for both cases
23:20:37amiconnBut: (-1) * (-1) = 1 ==> 0xFF * 0xFF = 0xFE01 (16bit) ==> 0x01 (8bit)
23:20:51preglowthese are all signed numbers
23:20:58 Join Moos [0] (i=DrMoos@m90.net81-66-158.noos.fr)
23:21:00preglowwould it be hard to make it 32x32 -> 64 signed?
23:21:15preglowguess i'll just try this one first
23:21:26amiconnYou see, the unsigned multiplication works the same as signed _if_ the result isn't wider than the factors
23:22:26 Join ashridah [0] (i=ashridah@220-253-120-38.VIC.netspace.net.au)
23:22:50 Quit muesli- (Read error: 110 (Connection timed out))
23:25:15amiconnpreglow: (1) Where can I find that macro? (2) 32*32->64 signed should be easy...
23:27:26preglowthe macros you need in musepack, if that's what you mean, are in math.h
23:27:40preglowMPC_MULTIPLY_NOTRUNCATE
23:27:48preglowand MPC_MULTIPLY_NOTRUNCATE_EX
23:28:22***Saving seen data "./dancer.seen"
23:28:24amiconnOkay
23:28:24preglowi've got a test going soon
23:28:40amiconnWith the 64*64 ->64 routine?
23:28:49preglowyep
23:29:01amiconnsigned 32*32->64 needs separate handling of the sign
23:29:22amiconn(but may save some multiplies instead)
23:29:39preglowwhich is all good
23:30:01amiconnSign handling needs branches (3 in total)
23:30:55preglowwell
23:31:00preglowwhat can i say
23:31:03preglowit works like a charm
23:31:08preglowand now musepack is realtime for some files
23:31:15amiconnwee
23:31:53pregloweven standard profile files are _JUST_ realtime
23:32:15preglowso, do you think a 32x32 signed routine will give better performance?
23:33:26amiconnI doubt it
23:33:53amiconnThe only muls that will go away would be the 2 mulu.l
23:33:59preglowi think i agree, the routine looks pretty tight as it is
23:34:12amiconn...but the sign handling would need to be added
23:34:16 Join Vladoman [0] (n=Vladoman@p54A7D1DB.dip.t-dialin.net)
23:35:16preglowbut so, 1. should i commit this? 2. should i just copy and paste the existing mul64 and ignore the fact that it's shared code?
23:36:03amiconnWe should somehow point the gcc team to that routine (together with the SH1 one, which is way faster than what gcc provides)
23:36:12preglowyes, i agree completely
23:36:40amiconngcc's SH1 muldi3() routine isn't asm optimised (unlike SH2 and higher)
23:36:52preglowi don't think it's any worse than dropping it in the dev list and hoping someone latches onto it
23:37:41amiconnIf I can trust my measurements, my SH1 routine is 2.5 times as fast as gcc
23:37:46amiconn's
23:39:30preglowbut yeah, should i commit this as a temporary fix to making libmusepack realtime?
23:40:11amiconnTemporary in what way?
23:40:16preglowwell
23:40:27preglowuntil either i or someone else can arse themselves to fix their maths for them
23:40:49preglowi expect some prescaling can make the emac unit usable for libmusepack as well
23:40:55preglowbut i think it needs a bit of work
23:41:29amiconnHmm, depends on how long you think it will take until someone arses himself ;)
23:42:02Paul_The_NerdInstead of calling it a fix, you could just call it a performance improvement.
23:42:11amiconnToo bad the shift in the standard multiply is 14, not 16
23:42:19preglowamiconn: yes, indeed
23:42:38amiconnThe gcc routine for shifting a long long by 16 bits needs 10 instructions. Mine needs 4 :-P
23:42:39preglowamiconn: well, thus far, the only one interested in fixing or supporting musepack has been me
23:43:20preglowdon't ask me why
23:45:20 Quit Lear ("Chatzilla 0.9.68.5.1 [Firefox 1.4.1/undefined]")
23:51:29 Quit Vlad0man (Read error: 110 (Connection timed out))
23:52:22preglowamiconn: yeah, but i expect that's a generic shift by n routine? ;)
23:53:00amiconnlol
23:56:17preglowbut yeah, i don't think i'll be doing any permanent emac solutions for musepack very soon
23:56:27preglowi'd very much like it if the libmusepack people did it for me :>
23:57:08preglowbut it looks like development is pretty quiet over at their camp
23:57:44preglowI consider libmpcdec-1.2 as a final release. Like, remaining bugs/inconsistencies due to the C port has been removed, library name is now set in stone, and interfaces are good. So I can safely say we won't break compatibility again. And I don't even expect the internals to change either, apart maybe for some people to add asm optimisations to specific architectures.
23:57:49preglowthat explains it.....

Previous day | Next day