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).

Notice: Only Gecko based browsers prior to FF4 support the multipart/mixed "server push" method used by this log reader to auto-update. Since you do not appear to use such a browser, this page will simply show the current log, and not automatically update.

#rockbox log for 2005-02-28

00:00:31*nobbynobbs jabs pin in reset hole AGAIN
00:01:26killalotso what will this work on
00:02:28preglowbe prepared that it's very slow, please
00:02:35preglowit will take some time before something shows up on the screen
00:02:44nobbynobbsover a minute?
00:02:55preglowand it should respond to key presses anywa
00:03:01nobbynobbscould you send me a copy of mario
00:03:14preglowhaven't got it currently
00:03:18nobbynobbsor give me a link to a decent rom site that doesnt ask for 9999votes first
00:03:19preglowa google search should get it for you
00:03:40nobbynobbswhat filename extentions does rockboy assosiate with?
00:03:50 Quit methangas (" HydraIRC -> <- IRC with a difference")
00:04:13nobbynobbsi had a copy of mario land years ago
00:04:17nobbynobbsplayed it for hours
00:04:28preglownever dug it that much
00:04:33nobbynobbsnever finished it, but spent more time on it than any game since
00:04:33preglowi played loads of zelda, though
00:04:35preglowand super wario land
00:04:57nobbynobbsi had warioland!
00:05:05 Quit willkill4food (Read error: 110 (Connection timed out))
00:05:14 Part killalot
00:05:47 Quit nobby (Read error: 110 (Connection timed out))
00:05:47nobbynobbswhats the keymapping for rockboy?
00:06:44preglowwell, direction pad is as you expect, the rest i can't remember :PP
00:06:56nobbynobbsfair nuff
00:07:04nobbynobbswhats the exit button?
00:07:08preglowstop, i thinks
00:07:23nobbynobbsooh, playing BGlander
00:07:26preglowcan't remember
00:08:07nobbynobbsi gtg
00:08:11nobbynobbsthanks for all the help
00:09:16 Quit nobbynobbs ("HCl is god! preglow is jesus!")
00:09:43 Quit muesli- (Read error: 110 (Connection timed out))
00:09:46 Join amiconn_ [0] (
00:11:45 Quit Aison ("( :: NoNameScript 3.72 :: )")
00:12:31HClprpplague: because gcc is *not* giving me a correct assembly of it.
00:12:43HClcause that was what i was doing, but gcc is messing up.
00:14:19preglowHCl: have you tried it out?
00:14:43mstOH SWEET
00:14:52HClpreglow: the code it was generating was: flags = 0;
00:14:55mstthe firmware is in ia32 format!
00:15:28 Quit Zagor (Read error: 110 (Connection timed out))
00:15:52 Quit amiconn (Nick collision from services.)
00:15:53 Nick amiconn_ is now known as amiconn (
00:16:26prpplagueHCl: ahhh
00:16:47 Quit ripnetUK ()
00:17:41mstokay this gets more and more interesting.. the bios itself contains -another- filesystem
00:17:57HClwhatcha doing/
00:19:23msthacking this thing:
00:19:57HCllooks odd.
00:19:59HClbut ok
00:20:11mstits ubercool. Smallest mp3 player i've ever seen.
00:20:32prpplaguethat looks cool
00:20:39prpplagueyou got jtag working?
00:22:25prpplaguemst: yea
00:25:58msti dont even have an idea what that is :)
00:26:06msthmmm.. raw i8086 code
00:26:10mstIDA time :P
00:27:20prpplaguemst: how are you getting the firmware off the device?
00:29:59mstprpplague, I didn't. I took a similar firmware off the 'net - I bet I would be able to get the real one off the device the moment I bring the USB cable from work
00:32:59mstthese people do have the gall. I get int10 calls and shit.
00:35:33preglowcan anyone think of a reason why descramble and scramble shouldn't work in windows?
00:37:40preglowwell, it doesn't :///
00:37:48 Join lImbus_ [0] (
00:39:13amiconnpreglow: It should. It does here (didn't test the iriver part though)
00:39:30 Join skav [0] (
00:39:35preglowi've got a tool up that patches a firmware and md5sums it for you, but the iriver_decode makes a smaller file than it should
00:40:05preglowthese functions are in no way meant to be called from anything else than the command line tools, though
00:40:15preglowbut i just can't be bothered to rewrite them
00:40:49preglowbut that shouldn't matter unless something goes wrong
00:40:58preglowand if something goes wrong, the exit() call should exit my entire program
00:41:00preglowwhich doesn't happen
00:42:43 Join Renko [0] (
00:46:13 Quit lImbus (Read error: 60 (Operation timed out))
00:46:13 Nick lImbus_ is now known as lImbus (
00:47:13preglowit's lacking a wooping two kilobytes :/
00:47:55 Quit _aLF ("Leaving")
00:49:31preglowwhat the hell....
00:49:41preglowsuddenly it's not lacking two kilobytes
00:50:53preglowand now suddenly it is..........
00:51:26preglowbloody marvelous
00:51:38preglowi have to flaming _EXIT_ my patcher before the files end up like they should
00:51:58preglownow isn't that something
00:52:18mstfile pointer on the loose?
00:52:55mstprpplague, the device doesnt have a visible JTAG connector - havent opened it yet though
00:54:26 Quit cYmen ("zZz")
00:55:20preglowmst: thanks a lot, i know see that these bloody patcher routines in iriver.c don't actually close their files
00:56:19preglownow, even
00:56:56preglowthey rely heavily on just being able to exit() if something's wrong...
00:58:22mstpreglow, "buffering"? :P
00:59:29amiconnHuh? Now that is strange. I'm chasing multiple problems for quite some time, and at least one of them turns out to be veery trivial. Grmpf. :-///
01:01:32 Join rob- [0] (
01:01:42***Saving seen data "./dancer.seen"
01:01:51preglowamiconn: nothing on the different plugin sizes yet?
01:01:59amiconnNope :(
01:02:16amiconnX11 sim still has the problem of non-working lseek()
01:02:33amiconnThis also happens in the core btw, so not plugin related
01:02:59amiconnHowever, I just found the Win32 sim problem with the codec test plugins.
01:03:04preglowhave you tried debuggin the lseek function?
01:03:23amiconnI have no idea how to do this. I tried, but failed
01:03:33preglowi know how to do it with visual studio
01:03:36preglowbut not with gdb
01:04:18amiconnI don't have visual studio, apart from that it wouldn't help here. The pure win32 sim works perfectly
01:04:50amiconnThe Win32 sim problem with the codec tests is simply that the plugins detect a stray keypress, and exit because of that
01:05:16amiconnWhen I comment out this check, they run just fine.
01:05:17preglowgdb should be able to trace into functions it doesn't have source to as well
01:05:20preglowhmm, or perhaps not
01:05:46amiconnAnd btw, the codec test run at least one order of magnitude faster on the win32 sim
01:06:33preglowthan x11?
01:06:45preglowahh, wouldn't know much about that
01:07:54amiconnmpa2wav runs at about 6000% here in win32 sim, converting a 10 minute mp3 in around 10 seconds
01:08:07preglowsounds reasonable
01:12:22 Quit Renko ("cheerio")
01:14:46 Join sevenapple [0] (
01:15:42 Join Sando [0] (
01:15:59prpplaguemst: yea, they rarely have jtag on an external connector, but if the cpu supports jtag, they will usually have pads or a header
01:18:10amiconnAhahahah! The win32 button driver still has a bug that was fixed waaayyy back for the target driver :-/
01:19:04 Quit lImbus (" HydraIRC rocks! -> <-")
01:19:45amiconnIt tries to use queue_empty() to empty the button queue. However, queue_empty() is just a status function, returning a boolean...
01:22:14 Quit sevenapple ()
01:27:41preglowsomeone up for trying my patching tool?
01:27:48 Join Camilo [0] (
01:27:56HClin a bit...
01:27:57preglowwindows required
01:31:07Suckawhats it do
01:31:35preglowit patches a firmware file with the rockbox bootloader
01:31:54Suckai might give it a go tomorrow perhaps
01:32:00Suckagotta go now though
01:32:05 Quit Sucka ("a bird in the bush is worth two in your house")
01:32:17preglownot for distribution yet, but i wanted to be done with it
01:34:36 Join pabs [0] (
01:35:35pabshi all, i'm about to flash my h120 with rockbox, i've been goign over the docs
01:35:48pabswas wondering if there's anyone around to answer questions if i've got them
01:36:46pabsno questions yet, still getting up to speed
01:36:52preglowyou're a programmer?
01:37:28pabsyeah, why?
01:37:42preglowjust wanted to know you know what you're doing ;)
01:37:51pabsi hope so!
01:38:26pabsi've mucked around with my h120 before, it's got modded graphics and everything, but i haven't flashed with it anything other than modded iriver firmware before
01:38:48preglowwell, with the track record of the rockbox bootloader, you shouldn't see any surprises
01:38:51preglowno dead units thus far
01:39:06pabsk, that's reassuring
01:41:07pabsdo i need to rename rockbox.iriver to ihp_120.hex to flash it initially?
01:41:18preglowthat's not the bootloader
01:41:28preglowrockbox.iriver is rockbox itself, it's what the bootloader loads
01:41:56preglowthe bootloader is bootloader.bin, and needs to be patched into ihp_120.hex
01:41:56 Join Aison [0] (
01:46:37pabsfound it, just double-checking the firmware veresion here
01:46:40asdsdWOW preglow
01:46:49asdsdso thats it?
01:47:01preglowasdsd: what's what?
01:47:09asdsdnow that u made patcher.exe does this mean the new iriver firmware is publicly released?
01:47:14preglowasdsd: no
01:47:18preglowasdsd: not by any means
01:47:33asdsdwell i figured since its so easy to do so now that u got it with a program
01:47:34pabsfuck, i have to go pick up my roommate's nephew
01:47:38preglowasdsd: don't even think of spreading it, i just want to see if it works ;)
01:47:41asdsdi remember reading that before u had to compile it urself
01:47:43pabspreglow: think you'll be around in like 20 minutes?
01:47:47asdsdim not
01:47:50preglowpabs: odds are good, at least
01:47:56preglowasdsd: we don't want it to be easy yet
01:48:00pabspreglow: alrigth
01:48:07asdsdyeah i understand, its for their own good
01:48:12pabspreglow: either way it looks like i've got enough to go on right here, but just in case :-D
01:48:19Camilohi, has anyone run any code on a H3xx yet?
01:48:27asdsdtoo bad i don't have an h120, i wud love to flash it just so i can find some bugs on it
01:48:43pabspreglow: install patched firmware, flash, copy rockbox.iriver and .rockbox over, boot up holding down record and enjoy
01:48:50pabspreglow: correct?
01:49:04pabsi'm going to miss my awesome transformer logo
01:49:07preglowpabs: indeed, though i'd copy the files first, so you can go straight to rockbox, heh
01:49:15pabspreglow: k
01:49:27preglowpressing record will boot iriver firmware as it is, btw
01:49:28pabspreglow: unfortunately i need my iriver right now for drving, so it'll hvae to wait until i get back
01:49:43pabspreglow: right
01:49:50preglowdefault is rockbox
01:49:58pabswell stay tuned, i'll be back in a bit
01:50:34preglowhas anyone actually tried flashing with american firmware?
01:50:39preglowor korean?
01:50:43preglowflashing rockbox with, i mean
01:51:29asdsdhey u preglow i can seriously mess up my h3xx if i flash it with h1xx firmware right?
01:51:34preglowasdsd: indeed
01:51:40asdsdi figured...
01:51:41preglowasdsd: i doubt it would ever start again
01:52:02Camilopreglow, have you run any code on H3xx?
01:52:17asdsdso in the future when the firmware for the h1xx is released is it gonna be in the form of a patch to w/e firmware u want to use
01:52:24asdsdor is it gonna be an actual hex file?
01:52:37preglowCamilo: mno
01:52:44preglowasdsd: patch
01:52:54preglowasdsd: it's illegal to redistribute irivers firmware, afaik
01:53:03Stryke`how can you pad an integer with 0's in a specific field width in c++
01:53:22preglowStryke`: you mean with printf and pals?
01:53:29preglowor iostream?
01:53:30Stryke`cout << setw(2) <<
01:53:37 Join midk [0] (
01:53:51Stryke`i have an integer anywhere from 0 to 99999
01:53:56Stryke`and i need it formatted as xx-xxxx
01:54:28asdsdoh ok
01:54:46Camilohomework Stryke` ?
01:55:35Stryke`i know printf("%05d" but i'm not to use it
01:55:42preglowto be honest i have no idea how to do it with iostream
01:56:05prpplagueStryke`: modulus?
01:56:22prpplagueStryke`: there are about 100 ways of doing that
01:56:22Camilogoogle is your friend
01:56:30preglowyou could use a combination of fill() and width()
01:57:21preglowjust cout.fill('0');
01:57:34CamiloI hate C++
01:57:41Stryke`will it only affect the next output or all
01:57:45preglowi'm not very fond of it either, but it's ok enough
01:57:50preglowStryke`: all
01:58:02preglowit's fast and it's oo
01:58:06Stryke`preglow: then to turn it back cout.fill(' '); ?
01:58:18Camilopreglow, about the bootloader, how did it come into being? What would it take to have a h3xx one?
01:58:42preglowStryke`: you can store the old fill char with 'char prev = cout.fill();'
01:58:56preglowCamilo: research and some new drivers
01:59:01Stryke`im sure it defaults to ' '
01:59:04preglowStryke`: it does
01:59:25Camiloresearch as in reverse engineering the firmware?
01:59:38preglowresearch the hardware directly
01:59:40preglowfind datasheets, etc
01:59:50Camilohas anyone compared the 3xx with 1xx firmwares?
01:59:54preglowperhaps some reverse engineering if things are too impractical with other means
02:00:16preglowCamilo: i don't see the point, you can pretty much tell they're not alike by comparing features
02:00:40Camilobut they are likely to have some similarities at a low level surely?
02:00:50preglowCamilo: yes, but why should that matter?
02:01:01Stryke`only problem is it right pads in fill, not very good for ints
02:01:11preglowStryke`: it does?
02:01:12Camilothe 1xx would give you a hypothetical jump start
02:01:16preglowStryke`: that's braindead
02:01:19preglowCamilo: it will
02:01:20Stryke`i know
02:01:24preglowCamilo: the hardware is pretty similar
02:01:28Stryke`123 showed up as 00-1230
02:01:32preglowCamilo: we don't need to analyze the firmware to see that
02:01:48Camilowhat help do you most need to get the 1xx stuff done?
02:02:10preglowStryke`: that's right out stupid, who the hell needs right padding?
02:02:21Stryke`im trying to understand myself
02:02:30Stryke`to test i left alligned the text, but i still get right padding
02:02:31preglowCamilo: we need faster codecs, and codec framework the most right now
02:02:38Camilopreglow, right to left writing language users maybe?
02:02:48Stryke`Camilo: by default, though?
02:03:09preglowpadding is almost always used with numbers, and padding numbers is mostly always done on the left hand side
02:03:13CamiloI'm not an internationalisation expert but I've come across it
02:05:37Camilopreglow, is there a DSP chip for the codecs?
02:08:04preglowCamilo: the main chip in the h1x0 also has some dsp capabilities
02:11:44Camilocan you compile the stuff to run on a PC?
02:12:04preglowwhat stuff?
02:12:22preglowif you mean rockbox, yes, that's what the simulators are for
02:13:11Camilohow do you measure the performance of the codecs? You say they are too slow.
02:13:49preglowwe measure them by decoding a file on the player and seeing how fast they do it
02:14:34amiconnSpeaking about the codec - could someone please test something for me?
02:14:35Camilowhat fraction of realtime is it?
02:14:57preglowamiconn: sure, if i can
02:14:59amiconnI've prepared a patch that allows proper linking on cygwin, and maybe others
02:15:11preglowi, don't do cygwin :P
02:15:17 Join pill [0] (
02:15:26preglowahh, i don't do cygwin <- what i meant
02:15:41preglowCamilo: on rockbox as it is, very slow, mp3 runs at around 4% of realtime
02:15:54preglowCamilo: linus has mp3 running at nearly 100% realtime on his player
02:16:06preglowCamilo: and i'm working on speeding it up, there's a lot more we can do
02:16:16amiconnI know. I want it to be tested whether it still works correct on the target, and on a plain Linux X11 simulator
02:16:39Camilook I will try to get the linux sim working and see what I can learn
02:16:39preglowamiconn: well, as you've seen, i haven't got much luck on the linus fron either :)
02:16:45amiconnGrab it here:"> This also needs in apps/codecs
02:16:48preglowLINUX FRONT, arghh
02:17:04*preglow switches lights on again
02:17:26amiconnProbably the most important is the actual target
02:17:35amiconnI don't have such...
02:17:58preglowok, i'll try compiling it for h120
02:18:04*amiconn should also start apache...
02:18:20 Join ghode|afk [0] (
02:18:48preglowok, latest cvs with those changes?
02:20:27amiconnPlease check whether it compiles, preferably without warnings, and also whether the codec test plugins run correctly (one or two should be sufficient, one of the should be vorbis2wav)
02:20:28ghode|afkpreglow: still need someone to test your patcher?
02:21:05preglowpatching file apps/codecs/libwavpack/wavpack.h
02:21:05preglowHunk #1 FAILED at 8.
02:21:05preglow1 out of 1 hunk FAILED −− saving rejects to file apps/codecs/libwavpack/wavpack.h.rej
02:21:08preglowpatching file apps/plugins/lib/xxx2wav.c
02:21:09preglowghode|afk: sure
02:21:51amiconnpreglow: You're patching against current cvs?
02:21:58preglowamiconn: indeed, i just did an update
02:22:18amiconnHmm, strange. The diff *is* against current cvs....
02:22:19ghode|afkwill you put cvs version numbers in future patchers?
02:22:42amiconn(created with cvs diff -u)
02:22:48preglowghode|afk: how?
02:23:13ghode|afknm me :p
02:23:16preglowamiconn: well, i haven't touched that specific header anyway
02:23:35amiconnAny other failures?
02:23:52ghode|afkpreglow: "checksum does not match good patched firmware! download another firmware imgae, then try again" with 1.63K
02:23:59preglowamiconn: no, really stupid reject anyway, i've done it by hand
02:24:07preglowghode|afk: good, you need to try the eu one
02:24:14amiconnIt's only the one added #include...
02:24:16preglowghode|afk: that's the only one i've supplied an md5 for now
02:24:27preglowamiconn: i know, i can't imagine why patch didn't manage that
02:24:46ghode|afkeu is quite bad because of volume limitations. btw which eu 1.60 or 1.63?
02:25:05preglowghode|afk: newest you can find
02:25:19preglowghode|afk: and as far as i know, there are no volume limitations in h1x0 firmware yet
02:25:40preglowghode|afk: i'll supply md5s for all firmwares soon anyway
02:26:34preglowamiconn: mpa2wav.rock linking vomits quite copiously
02:26:55preglowamiconn: i'll spam the details to you in query
02:27:11asdsdhey preglow is it also illegal to distribute archos firmware or do u gotta supply the patches for those too
02:27:51preglowasdsd: the archos doesn't have that particular problem as it needs no bootloader
02:27:55ghode|afkpreglow: dumb question, what does the "download" button do?
02:28:18ghode|afkor what is it supposed to do?
02:28:19preglowghode|afk: as i said, nothing yet :P
02:28:32preglowghode|afk: it will download the firmware if that's a feature people want
02:28:40ghode|afkk, i missed that ;p
02:29:21preglowghode|afk: but did it patch the firmware? could you make an md5sum for me if you're capable?
02:30:04ghode|afkdownloading it on 56k atm, and no idea how to do a md5sum
02:33:50elinenbepreglow: linus has mp3 running at 100% on his iriver?
02:34:14preglowelinenbe: he had 95% realtime after using a synth_full opt i made
02:38:21ghode|afkpreglow: file patched ok with 1.63eu md5sum: 627d5195b56ebca3b3b431cccb535c3bfa hand typed ><
02:39:05elinenbepreglow: nice...
02:39:09preglowghode|afk: splendid, that's just right, thanks
02:39:54preglowthen we've got a tool ready for release, at least
02:40:53ghode|afkbtw, which release of rockbox did i just patch?
02:41:03elinenbepreglow: is that running the mp3 (madlib?) codec, and if so, what is the interface?
02:41:14HClthe bootloader on the wiki
02:41:41preglowelinenbe: that's running a lightly customized libmad, yes, interface is mpa2wav plugin
02:42:02elinenbepreglow: that's great!
02:42:08preglowelinenbe: i agree :)
02:42:14preglowbut still not great enough
02:42:18elinenbepreglow: and is it producing sound on the target?
02:42:30preglowelinenbe: not directly, no, but but we'll get around to that
02:42:37preglowwith any luck sound will make it to cvs during this week
02:42:48elinenbestill... i mean rockbox/iriver is in it's infancy
02:43:05preglowprogress has been really quick
02:43:15 Quit elinenbe (" HydraIRC -> <- The dawn of a new IRC era")
02:44:07 Quit ghode|afk ()
02:45:52preglowwee, i've used a goto statement in a c program for my first time!
02:46:07HClgotos bad
02:46:10preglowhaha, yes
02:46:16preglowbut they're nice for error handlinmg
02:46:33HCli'm gonna go sleep
02:46:56HCland update the todo thing about the patcher
02:47:03Camilogotos are fine in firmware
02:56:11 Quit skav ()
02:58:29Camilohmmm the daily rockox doesn't build for me (iriver/simulated/x11)
02:58:53preglowthere are problems with the sims right now
02:59:40Camiloit seems more of a makefile problem than a c problem... any hints?
03:00:31preglowwell, error message?
03:00:34amiconnWhat system?
03:00:46CamiloEntering directory `/home/cxm/rockbox-daily-20050227/uisimulator/common
03:00:56Camilo*** No targets specified and no makefile found. Stop.
03:01:13CamiloIt's like it's done a make -C that directory but there was no makefile there
03:01:23amiconnYou need a build directory, and then use configure
03:01:44***Saving seen data "./dancer.seen" create the customised "master" Makefile there
03:02:08Camiloamiconn, I did mkdir /home/cxm/rockbox-daily-20050227/cxmbuild
03:02:23Camiloand in there did the ../tools/configure
03:02:32Camilothen make all
03:02:43asdsdhey preglow how many hits have u gotten today offa that slashdotted link
03:03:06preglowasdsd: around ten thousand, i'm disappointed :/
03:03:22amiconnCamilo: Hmm. This should work...
03:03:26Camilo(the system is linux 2.6, gcc 3.4.2)
03:03:35HClwell, preglows site wasn't directly linked
03:03:36Camiloshall I try again?
03:03:42HClthe article linked to that one article
03:03:47HClwhich linked to another article
03:03:54HCland neither really linked to preglow
03:04:01HClso the only ones that found preglow site used the wiki
03:04:02preglownah, it was indirectly indirectly linked
03:04:35preglowif you clicked on the picture in the article and clicked another pictures link, you got me
03:05:41Camiloamiconn, do you have a build tree handy? tell me is there a Makefile in the uisimulator/common dir?
03:05:50asdsdwhy r u dissapointed dude, thats a lot
03:06:23preglowasdsd: yes, i know, i'm just joking around
03:06:24amiconnCamilo: Yes, there is. Is there no makefile in the daily tarball?
03:06:39preglowamiconn: look in query for "good" news
03:06:41Camiloyes there is no makefile there
03:06:52CamiloI'll get an older taball and steal one from there
03:07:16amiconnNo... chances are there is none either
03:07:32amiconnIt seems someone forgot to add it to the FILES list
03:08:26Camiloserves me right for being too lazy to get it from cvs
03:11:59Camilook it's better now (got the file from CVS browse )
03:12:15Camilosomeone put that makefile in the manifest pls?
03:12:22amiconnI already did.
03:13:27CamiloCool. I think I'll make this my lunchtime project
03:15:28preglowi'm off
03:15:38 Quit preglow ("dud")
03:17:25 Join ze__ [0] (
03:17:55 Part amiconn
03:20:24 Quit Stryke` ("Friends don't let friends listen to Anti-Flag")
03:21:39 Join bnewhouse [0] (
03:22:21bnewhousehey... so im trying to compile rockbox... and i keep getting an error about the calculator...
03:22:34bnewhouseand im using current cvs.....
03:23:14 Quit midk ("Leaving")
03:24:55 Quit XShocK (" HydraIRC -> <- IRC with a difference")
03:25:46*pabs searches around for m68k toolchain debs
03:29:31 Quit Camilo ("Chatzilla 0.9.67 [Mozilla rv:1.8a6/20050111]")
03:30:55bnewhouseis anyone live?
03:31:25 Quit ze (Read error: 110 (Connection timed out))
03:31:25 Nick ze__ is now known as ze (
03:41:07 Join webguest63 [0] (
03:42:00 Quit webguest63 (Client Quit)
03:45:15 Quit Aison ("( :: NoNameScript 3.72 :: )")
03:48:21asdsdmost of the guys already went to bed
03:48:31asdsdthey've had a long night working on the iriver
03:48:57asdsdif only someone were nice enough to just release the iriver firmware source code
03:55:19bnewhousewell then thered be no fun to it all...
04:03:17hileI guess there would be, why are you expecting it would be such quality that we actually could use it ;)
04:04:39bnewhousehaha im confused...
04:04:43bnewhousewell anyway
04:04:58bnewhousei think my problem is cus i dont have the lastest version of gcc....
04:05:05bnewhouseso, for the record, try that...
04:05:54hileI haven't done anything on the sw, I'm just hanging here to see how the port is going on -> can't help
04:05:57 Join QT_ [0] (as@area51.users.madwifi)
04:20:06 Quit QT (Read error: 113 (No route to host))
04:20:34bnewhouseim trying to get something done
04:20:42bnewhousebut first i have to get a successfull compile
04:29:55pabsmomento f truth
04:29:59pabsi'm about to flash my iriver
04:33:03pabsso uh
04:33:15pabsit works, but i'm kind of missing a play interface
04:33:52bnewhousethat didnt work
04:34:02bnewhousecus i still cant get it all to compile...
04:36:43 Join chuck [0] (
04:42:31bnewhousebut i am trying switching versions for 3.35 to 3.4.3
04:55:20pabsso uh, i have no audio here
04:55:31pabsother than that it works great :)
05:01:45***Saving seen data "./dancer.seen"
05:20:35 Quit prpplague ("Client Exiting")
05:26:37bnewhousethere isnt supposed to be i dont think...
05:26:44bnewhousei know theyve got wav working
05:26:56bnewhousebut im not sure if they've patched it to the CVS
05:28:37 Join webguest11 [0] (
05:29:24 Quit webguest11 (Client Quit)
05:34:02pabsbnewhouse: cool, then i feel better
05:34:06pabsin that case
05:34:12pabsthis is awesome :)
05:52:32 Join kramerica [0] (
06:11:53 Quit kramerica ()
06:34:33 Join ashridah [0] (
06:56:55 Join DMJC [0] (
06:59:34ashridahfuck. HCl just acheived slashdot fame :)
06:59:40ashridah(well. a while ago)
07:00:37DMJCI saw
07:01:25ashridahnevermind that it doesn't even run fast enough to be playable yet.
07:01:47***Saving seen data "./dancer.seen"
07:01:56DMJCit's slashdot
07:02:03DMJCall you need is a theory and you get famous
07:05:17 Quit bnewhouse (Remote closed the connection)
07:18:02 Join Strath [0] (
07:18:46 Quit ashridah ("Leaving")
07:27:27msts/theory/a combination of words/
07:35:19 Join webguest72 [0] (
07:35:33 Quit webguest72 (Client Quit)
07:35:35 Join webguest01 [0] (
07:35:55 Quit webguest01 (Client Quit)
07:36:10 Join LinusN [0] (
07:40:41 Quit StrathAFK (Read error: 110 (Connection timed out))
07:48:54LinusNHCl: u there?
07:50:25 Join ashridah [0] (
07:54:18ashridahwell. i've countered my three bits of semi-fud on slashdot today. have you? :)
07:58:50ashridahi was wondering how long that'd take to hit slashdot.
08:00:13ashridahi particularly like how vague the article slashdot linked to was :)
08:04:19ashridahno mention of how slow it is atm, or that it's specifically only for the archos, etc.
08:07:53LinusNyou mean iriver
08:10:12dwihnoyay! mondaY!
08:10:24dwihnoThis is the day I envy Zagor :)
08:36:07ashridahwhat's zagor getting that's enviable?
08:36:30ashridahLinusN: and yeah. it's like 35 degrees atm. i'm not thinking straight.
08:37:15LinusNzagor is on leave
08:37:36LinusNand it's -10 celcius here :-)
08:38:30ashridahwish it snowed here. then i see shots of people shovelling snow and having a totally iced over car, and i don't.
08:49:45LinusNi love snow
08:49:51dwihnome too
08:49:53ashridahas do i
08:50:04ashridahlove skiing. although it's on the icy side here
08:50:20dwihnoI rather have -20c and no clouds in the sky instead of 0-ish and graymulet
09:01:50***Saving seen data "./dancer.seen"
09:02:02ashridahsadly, australia's southernmost point is still well above the antarctic regions/
09:08:58 Nick kergoth is now known as kergoth`zzz (
09:13:24 Nick Lynx_awy is now known as Lynx_ (HydraIRC@
09:22:12 Join jyp [0] (
09:48:32 Join shx [0] (
09:50:16 Nick Strath is now known as StrathAFK (
09:51:58 Join Schnueff [0] (~mah@
10:00:32 Join amiconn [0] (
10:18:30 Join bobTHC [0] (
10:19:42bobTHChi folks!
10:19:47LinusNhey ho
10:20:17jypsome core devs back ;)
10:21:19jypA question probably for amiconn ...
10:21:57 Quit shx ("CGI:IRC (EOF)")
10:22:31jypI'd like to tag the proto of panicf with ATTRIBUTE_PRINTF(1, 2)
10:23:52jypthe question is should I include sprintf.h in panicf.h, or more the definition of ATTRIBUTE_PRINTF somewhere else?
10:27:52LinusNyou mean if you should #define ATTRIBUTE_PRINTF in sprintf.h?
10:32:52 Join Tang [0] (
10:33:45jypLinusN: yes; where is it best placed ?
10:40:23LinusNstdio.h could be a good place
10:40:51LinusNor _ansi.h
10:41:32LinusNas long as it works for the simulators as well
10:42:10jypok; it doe.s
10:44:35amiconnI have a rather complex change pending that's still not complete. It will probably change more files at once than each of the initial codec checkins...
10:44:57jypwhoa ;)
10:47:11LinusNamiconn: sounds wonderful, what is it?
10:49:07amiconnIt enables compiling the codecs and codec plugins on cygwin.
10:49:27amiconnThe problem is that xxx2wav.c defines malloc() and friends
10:49:59LinusNwhat's your solution?
10:50:01amiconnThe cygwin linker is mislead by this. It seems like it tries to use these for the dll startup...
10:50:15amiconn...leading to numerous crashing plugins
10:51:17amiconnI now have a header for all codecs (apps/codecs/codec.h) that defines a number of macros to get these functions out of the way
10:51:44amiconn#define malloc(x) codec_malloc(x) etc
10:52:04LinusNbtw, maybe it's time to abandon rombox for ondio fm?
10:52:22amiconnThis requires to add a central .h file for those codecs that don't already have one
10:52:34amiconn(Tremor, flac)
10:52:55amiconnThe codecs must not include stdlib.h ....
10:53:41 Quit Tang ("Chatzilla 0.9.66 [Mozilla rv:1.7.5/20041108]")
10:53:42amiconnrombox for Ondio FM didn't fit for a long time now... but the build worked until feb-18
10:55:36amiconnI need a way to test my modifications for a target compile... I just came up with the idea to compile them for archos
10:56:20LinusNyou should get yourself an iriver
10:57:05amiconnI should get some things done before I get myself another toy...
10:57:16amiconn...e.g. the oldplayer lcd test...
10:57:48amiconnBtw, I still have a strange issue with the X11 sim on cygwin.
10:57:54LinusNhas jörg got his pile of junk from ebay?
10:58:23amiconnDon't know... he didn't come here since last week
10:59:06amiconnIn a cygwin built X11 simulator, lseek() doesn't work. However, it works in a cygwin built win32 simulator... well as in an X11 simulator built on Linux
11:00:04amiconnHowever, lseek() works on cygwin X11 when built with the old build system...
11:00:38amiconnI'm running out of ideas what to check
11:01:54***Saving seen data "./dancer.seen"
11:02:31LinusNin what mode was the file opened?
11:05:05 Join preglow [0] (
11:05:25amiconnI made up a special test plugin, to avoid possible side effects. It opens the file with O_RDWR | O_CREAT | O_TRUNC
11:06:54LinusNand lseek fails how?
11:07:04LinusNlseek beyond the end, or?
11:07:10amiconnThis very same plugin works for cygwin/win32, Linux/x11 and old cygwin/x11. It doesn't work for new cygwin/x11
11:07:20amiconnlseek() returns with -1
11:07:28amiconnNo out-of-range seek
11:07:39amiconnerrno seems to be uncheckable in rockbox
11:08:15preglowLinusN: i eventually got that imdct_s opt working
11:08:20LinusNamiconn: email me the plugin
11:08:25LinusNpreglow: nice!
11:08:35preglowLinusN: how safe is it to reference symbols directly in inline asm?">
11:08:54preglowLinusN: is there any danger of them having underscores in front of them on some platforms?
11:09:29amiconnLinusN: The same problem occurs with the codec test plugins. They work almost correctly, but since lseek() doesn't work, they write the correct .wav header at the end...
11:09:42LinusNpreglow: the underscores ate platform specific
11:10:21LinusNpreglow: but the asm is too, so it's generally safe
11:10:29preglowLinusN: hah, true enough
11:10:51amiconnpreglow: I do that too in the grayscale lib... I even rely on a certain libgcc routine...
11:11:21preglowelf doesn't use _ at the start, but coff is pretty widespread as well
11:11:28preglowamiconn: pretty
11:27:15preglowLinusN: but yes, libmad has two c imdct_l variants, one that does decomposing into smaller, different imdcts, and one that's the ordinary mac based monster
11:27:32preglowthe mac instructions is very fast, so i think i'll give the latter one a go
11:28:23preglowthe mac with shift scheme i used in imdct_s worked great, so should here as well
11:31:33 Join UlfJack [0] (~Ulf@
11:33:31 Join Aison [0] (
11:35:40LinusNamiconn: the X11 simulator uses a different open() function than the win32 sim
11:36:30LinusNlooks like WIN32 isn't defined in the cygwin x11 build
11:39:32LinusNperhaps the NOCYGWIN is a problem?
11:40:15LinusNor rather, lack of
11:47:50amiconnNo, all of these are in fact correct.
11:48:15LinusNthe fact remains, WIN32 is not defined, and it uses a different open()
11:48:37amiconnYes... because it isn't a win32 sim, but an X11 sim
11:48:53amiconnThis worked the same way with tthe old build system
11:49:43amiconnThe NOCYGWIN isn't used for the X11 builds, at least after I corrected that
11:50:21preglowarm asm certainly seems to be pretty nice
11:50:32 Join linuxstb [0] (~linuxstb@
11:51:24amiconnLinusN: If I use the other open() syntax for x11, I get a 'wrong number of arguments' error
11:58:46amiconnjyp: Your fat.c changes cause warnings if fat16 support is enabled, i.e. Ondio
12:04:19preglowhow do we feel about our patcher tool not handling directory names with fancy characters in them? :)
12:05:15jypamiconn: I already comitted a fix
12:25:31preglowhow i love windows programming
12:36:44ashridahmake: *** No targets specified and no makefile found. Stop.
12:37:27LinusNbash: oops: command not found
12:37:48ashridahbash: syntax error near unexpected token `)'
12:38:06LinusNamiconn: i have found the sim problem
12:38:09preglowLinusN: how close are we to seeing speedups in cvs, btw?
12:38:55LinusNpreglow: i am a bit reluctant, but i guess i could commit the changes and let people run them on their own risk
12:40:02preglowwhat can go wrong?
12:40:52LinusNi don't know what the overheating does to the cpu in the long run
12:40:59preglowthere's no particular hurry if you feel there's parts you're unsure of, we'll need a codec api before we can do interesting things
12:41:08ashridahdisk corruption, longterm accelerated failure due to excessive heat?
12:41:26preglowLinusN: well, you don't _have_ to run it at full speed?
12:41:34preglowLinusN: will it overheat at 90ish mhz as well?
12:41:37LinusNno i don't
12:41:48LinusNhaven't tested 90MHz yet
12:43:44preglowit sucks that you can't get h1x0 anymore
12:44:46preglowi'd like a new one if i kill this one ;)
12:58:19amiconnLinusN: What is the sim problem?
12:58:42dwihnoHey, I just read about the gnuboy posts on engadget and slashdot
12:58:45LinusNthe x11 cygwin unix layer uses a 64-bit off_t
12:59:01dwihnofeels like the firmware is losing the focus
12:59:07LinusNand the sims include our own types.h instead of the system one
12:59:55amiconnAh, interesting. The sims should use our own includes, except for the parts under uisimulator/
12:59:59 Join cYmen [0] (
13:00:39LinusNin fact, the sims shouldn't use firmware/include at all
13:00:43amiconnThen we need a sim_lseek() the same way as the other sim_* functions that does the translation
13:01:28amiconnIf the sims shouldn't use firmware/iclude, then some stuff must be moved somewhere else
13:01:55***No seen item changed, no save performed.
13:02:04amiconnBagder wants (and I agree that this is good), that the sims use as much rockbox code as possible
13:02:46amiconnE.g. all the string functions can be used in the simulator
13:02:58LinusNyes, but the (initial) whole point of the firmware/include dir was to be target only
13:03:19amiconnYeah.. so the string stuff belongs somewhere else, right?
13:03:26LinusNsince the host has its own implementation of those functions
13:03:52LinusNamiconn: the firmware/include dir has only .h files
13:04:01amiconnYes.. and some of them must be simulated for various reasons
13:04:22LinusNyes, but the implementations are not in the .h files
13:04:53amiconnYes.. but e.g. string.h is in firmware/include
13:05:25amiconnThe simulator builds should use our own string.h as well when they're going to use our own string function implementatipn
13:06:12LinusNyes, and that wasn't the initial idea
13:06:33LinusNthe initial idea was to use the host functions for posix stuff
13:07:04amiconnBut do you agree that it is good to use our own string functions? Imho this has at least 2 advantages
13:07:05LinusNtypes.h is a typical example of why that is a good idea
13:07:12LinusNi agree
13:07:32LinusNbut how does that affect string.h?
13:08:16amiconn(1) We can find bugs in our implementation when using the sims also (2) It implements functions that may be missing on some target systems. strcasestr() is one example...
13:09:42amiconnWell, string.h holds the prototypes of the string functions, and if we want to use our own implementation, the sims also have to use the correct prototypes
13:09:54LinusNi have a dirty fix for the cygwin x11 problem
13:10:06amiconnDirty in what way?
13:10:27LinusNit adds a check for __CYGWIN_USE_BIG_TYPES__ in our types.h
13:10:50amiconnHmm. That sounds a bit ugly...
13:10:58LinusNinstead of (correctly) using the system types.h
13:11:35amiconnImho the rockbox part should also use firmware/include for simulator builds, only the uisimulator/ part must not.
13:12:07amiconnThen lseek() must be implemented as simulated function, with uisimulator/common/io.c using the system's types.h
13:12:25LinusNit does use firmware/include for sim builds today
13:12:42amiconn...and the argument of course *not* using off_t, but our own datatype (iirc long)
13:13:15amiconnI already tried adding a simulated lseek, only that I used off_t for the argument and return type ...
13:13:28LinusNamiconn: can you fix that, i don't have the time
13:13:54LinusNbtw, perror() works just fine in the plugins
13:13:56amiconnOkay, I'll try that this evening. I think that it'll work.
13:14:19LinusNhelped me find this error
13:14:30LinusNstrace is another nice tool
13:14:43amiconnI didn't think about the possibility that cygwin may use 64 bit dataypes...
13:15:57LinusNneither did i
13:17:30LinusNbut perror() and strace told me so :-)
13:22:09 Quit Sando (Read error: 104 (Connection reset by peer))
13:33:44 Join R3nTiL [0] (~zorroz@
13:44:58 Part LinusN
13:48:29 Quit ashridah ("Leaving")
13:59:49preglowhrmf, the funny imdct is what's used by defaykt
13:59:52preglowdefault, even
14:01:49 Join muesli- [0] (
14:02:52 Quit muesli- (Client Quit)
14:02:56 Join muesli- [0] (
14:17:13 Quit bobTHC (Read error: 110 (Connection timed out))
14:23:34 Join Supabaka [0] (
14:23:55preglowSupabaka: wrong channel
14:24:06Supabakayep, sorry
14:24:20 Part Supabaka
14:25:00 Quit jyp (Read error: 104 (Connection reset by peer))
14:25:18 Quit R3nTiL ()
14:25:34 Join bobTHC [0] (
14:26:59 Join jyp [0] (
14:32:21 Quit lostlogic ("Going to the moon")
14:33:53 Join Sando [0] (
14:49:37 Quit edx ()
14:56:02 Quit muesli- (Read error: 54 (Connection reset by peer))
15:01:58***Saving seen data "./dancer.seen"
15:07:14 Join edx [0] (
15:21:20 Join lolo-laptop [0] (~lostlogic@
15:34:55 Join AC [0] (
15:35:48ACwhen will irivers lcd support gray mode?
15:42:26ACi want to start a new graphical project with rockbox
15:44:28 Join Renko [0] (
15:45:35chuckgay mode?
15:47:29ACwhite, black and 2 colors between
15:48:28fuzziesomeone was showing yesterday
15:48:33fuzzieso i assume 'soon', at least
15:48:50ACah fine
15:48:59preglowsoonish, yes, we need to convert everything to use it first :V
15:49:18preglowAC: what kind of project?
15:49:23ACi see
15:49:39ACpreglow: i want to try to get opengl es 1.0 running
15:51:20pabspreglow: hey, thanks for the help last night, i'm up and running with rockbox on my h120
15:51:21ACyeah.. i have done many years opengl programming and i think it would be cool to get it also running on the iriver..
15:51:43*AC makes a break
15:51:43preglowpabs: you're welcome
15:51:59preglowi've done some opengl programming myself
15:52:06preglowbut not very experienced
15:54:30preglowAC: it would be extremely cool as a matter of fact,heh
15:55:54dwihnoAC: A GUI project?
15:56:01dwihnoAC: I want to join you in that venture!
15:58:42preglowAC: what are the major differences between opengl es and ordinary opengl?
15:59:26bobTHCAC : have u seen the feature request whi deals with GUI ?? >>
15:59:53fuzzieopengl es is just a simpler subset, designed for software implementation, with a standard glx/wgl replacement for binding it to the display
16:00:12preglowfuzzie: well, what has been left out?
16:01:38fuzziegood question, i don't know, i just know what's been left in .. which is pretty much 'the minimum you need for simple games' .. a lot of it is optional anyway, meaning you can strip it down to real simplicity
16:03:03fuzzieeg, it doesn't require zbuffer/stencil support, which would kill a lot of low-end unaccelerated cpus
16:03:22 Join markun [0] (
16:05:02markunAC: I'm the grayscale guy.
16:08:04dwihnomarkun: you got grayscale up'n'running?
16:08:39markunWell, a bit. The picture was from my iriver.
16:08:57dwihnomarkun: congrats!
16:09:28 Join shx [0] (
16:09:29markunI turned grayscale on and then made all the changes to get everything to display as before.
16:10:06markunNow I need to make a iriver-gray.c so we can watch jpg files etc.
16:10:57dwihnoreally great!
16:11:04dwihnolooking forward to it
16:11:14markundrawing 2 color bitmaps is very slow now at the moment..
16:11:29markunBut it can be optimized later.
16:22:11markunIf the lcd controller would use bitplanes everything would be a lot simpler.. now it uses 2 consecutive bits to define the color of a pixel..
16:23:39preglowit might have a mode for that
16:23:47preglowbut probably not ;)
16:24:23markunI couldn't find it anywhere.
16:30:16 Join XShocK [0] (
16:37:19 Join stripwax [0] (
16:38:17stripwaxHow's iRiver coming along? Last time I was on #rockbox we were talking about trying to get DMA working from SRAM
16:39:00preglowstripwax: hey, i've been meaning to ask you, how the hell did you manage the figure out the firmware encryption? ;)
16:39:49 Join methangas [0] (
16:40:14stripwaxpreglow: some hard work, some educated guesswork, some late nights, a copy of ISE, and a smidgeon of luck ;-)
16:40:57stripwaxhad no luck on cracking the Rio Chiba firmware yet though :-( Image Searching Engine
16:45:16preglownicely done anyway, i wouldn't even have known where to start
16:49:19stripwaxheh, thanks!
16:49:39stripwaxso what's up, how's audio looking (sounding?) on iriver port?
16:50:05XShocKdone audio output, working on input.
16:50:28XShocKno SPDIF since does not have any equipment. :)
16:50:57stripwaxwhat was the problem with dma from a static buffer? how was that fixed? was it just alignment
16:52:04 Join stevenm [0] (
16:52:32XShocKyes, it works perfectly without SRAM, one config made it sound glitching, but after change works fine.
16:52:54stevenmHow fast is the iRiver compared to a modern PC, and when writing codecs, what codec 'speed' should one aim for?
16:53:22XShocKi didn't experience any fixed buffer problems.
16:53:46XShocKit worked both on fixed and dynamic
16:54:39XShocKit might have been alignment issue tho
16:54:58stripwaxstevenm it's a 200MHz processor. but you can't really compare the chip to a modern 'PC'. but if you did, I guess you'd be aiming for about 20x speed on a PC translating into approx realtime on the iRiver. that's just an arbitrary number though
16:55:23stripwaxXShocK - thanks. so buffer can just be in SDRAM, no need to use SRAM for it?
16:55:53preglowstripwax: more like 140mhz
16:56:01stripwaxneat! any ideas why iRiver had their buffer in SRaM?
16:56:24ACmarkun: can i see the source of the gray sacle stuff?
16:56:29stevenmstripwax, I got my codec running just barely realtime on a Pentium M clocked down to 600Mhz, and then slowed down by 75% on top of that. This is Linux, with just a minimal environment running. Is that still too much processing used?
16:56:30stripwaxpreglow - oh, ok !
16:56:47XShocKno, have no idea, the SRAM buffer was only 256 bytes.
16:56:54markunAC: you can look at it later. I'm rewriting it a bit right now.
16:57:25stripwaxstevenm - depends really , does the codec use a lot of floating point math? can it easily be vectorised (e.g. does it/could it use SSE or MMX instructions on the Pentium)
16:57:44stevenmstripwax, no floating point math at all. a lot of integer math, though
16:57:49stripwaxstevenm but yeah, I think that sounds too much
16:58:17preglowstripwax: and to top it of, it doesn't look like we can run it at 140mhz, it gets too hot
16:58:35stevenmwoah.. how fast does it run ?
16:58:38stripwaxpreglow wowzer, so what speed does iRiver run it at?
16:58:39stevenmnormally that is
16:58:51preglowstripwax: what kind of math does it do?
16:59:03preglowstripwax: rumours say about ninetyish
16:59:14preglowstripwax: what kind of math does it do?
16:59:25stripwaxsomeone reboot preglow please ;-)
16:59:27preglowtwo nicks starting with st is havoc for me
16:59:42preglowi depend on tab completion!
16:59:47stevenmpreglow, this thing does a lot of multiplication and division
16:59:56preglowstevenm: division is a no no
17:00:05stevenmpreglow, hmm ?
17:00:06preglowstevenm: multiplication and addition we can do fast
17:00:29stripwaxpreglow - well, depends. simple division is fast (combining shifts and multiplies)
17:00:56 Nick kergoth`zzz is now known as kergoth (
17:01:04stevenmpreglow, for the volume stuff, I could probably get away with shifting. But interpolating the notes... that takes some division
17:01:21preglowstevenm: what kind of codec is this?
17:01:30stripwaxSeem to remember GCC was pretty smart when compiling for 680x0 code to convert divisions into shifts or shifts+multiplies, anyway. dunno if that applies to coldfire too
17:01:32stevenmpreglow, GUS MIDI
17:01:54stripwaxWoah, that should be pretty low CPU, no?
17:01:58ACdwihno: Opengl es was designed for embedded systems like handys
17:01:58preglowinterpolation is easy
17:01:59***No seen item changed, no save performed.
17:02:00stripwaxWhat kind of interpolation are you doing?
17:02:04preglowdoes not require div
17:02:10stevenmpreglow, well, not really interpolation.. Here
17:02:12stripwax(I mean, what are you interpolating)
17:02:42stevenmpreglow, to calculate which sample should be played at a current tick, the current position has to be multiplied by the sampling rate and then divided by the PC's sampling rate, etc
17:03:03stripwaxIsn't that just an add?
17:03:09preglowstevenm: yes, but that doesn't happen per sample
17:03:23stevenmit's like, 4 operations right there. I'm thinking, would it be quicker to precompute this and store it in a table of floating point values?
17:03:39preglowyou just calculate a delta and then add that for every sample
17:03:56preglowstevenm: you must be doing something wildly inefficient
17:04:00stevenmpreglow, hmm.. that is a good idea
17:04:14stevenmpreglow, only problem I am running into, it's going from very small to very big numbers
17:04:19stripwaxstevenm as I said, it's just an add. samplerate doesn't change
17:04:33preglowunless you've got portamento going on, it should do nicely with just an add
17:05:06stevenmhmm.. I could try that
17:05:08stripwaxwhat's the problem with small numbers and big numbers?
17:05:15preglowthere is no problem with that
17:05:21preglowwe've got more than enough precision
17:05:35stevenmwell, you lose a lot of percision, even when declaring everything as long long
17:05:38preglowstevenm: but yes, worry not, we'll get this working realtime, no problem
17:05:45stripwaxyeah, that's what I would have thought.. stevenm, how are you handling interpolation of samples, or are you not doing that?
17:05:50stevenmbecause say, it is 48000 / 46100
17:05:56preglowbut i haven't got time to look at it right now
17:06:28stevenmpreglow, can some of the simpler functions be written in ASM ?
17:06:37preglowstevenm: yes
17:06:49stripwaxit could all be in ASM ;-)
17:07:08stevenmpreglow, like, the function that adds up all the voices and sends it to the DSP. That could be done in ASM
17:07:09preglowbut i've done stuff exactly like this with plain 32 bit ints
17:07:13preglowstevenm: indeed
17:07:30preglowif you need extra precision for calculating the delta, then that's what the mac instruction is for
17:08:18stevenmguys.. now, what about the sound buffer. On a PC, the thing literally stops execution until there's room in the sound buffer. Is iriver the same way? I'm only using about 10MB of the buffer, tops
17:08:35preglowwe don't know yet :P
17:08:38stevenmSo I have 20 megs sitting pretty much unused
17:08:44preglowthe sound buffer is going to be faaar smaller
17:09:26XShocKi think sound buffer should around 300 kb.
17:09:38stevenmI figure, instead of stopping it to wait for the sound buffer to fill up, I could have it generating more samples and shoving them into the unused RAM. then write that to the sound buffer later
17:09:50stevenmI mean, the cpu usage with midi varies a lot.
17:10:29preglowbut we'll figure that out
17:11:08stevenmpreglow, other than that.. I have the MIDI codec mostly finished. Just need to add some more looping stuff, envelope, as well as code to load/play the drum set
17:11:25stevenmother than that, it plays very nicely
17:11:44stripwaxwhat are you using for a set of patches? how much RAM do the samples take up?
17:13:14stevenmstripwax, using Gravis Ultrasound patches, agerage about 44100 sampling rate. It only loads the ones that it needs. I think 5-10 megs, plus the drum set
17:14:02stripwaxhow does it know which samples to load? does it scan the entire midi file and then load the samples it needs, or does it load the samples while it's playing?
17:14:15stevenmstripwax, on a typical file, I'd say 6 megs
17:14:34stevenmstripwax, it scans the file first, then loads what it needs
17:14:38 Join Zavatta [0] (
17:14:58stripwaxstevenm- neat! so would the math be easier if all of the samples were at the same samplerate?
17:15:21preglowit would be the same
17:15:21stevenmstripwax, probably. if we could convert them all to 48000...
17:15:29preglowno, don't bother about that
17:15:29stevenmit would save maybe one operation
17:15:31preglowit doesn't matter
17:15:40preglowit would save one operation _per note_
17:15:52preglowsavings per sample is more important
17:16:06stevenmpreglow, right now it _is_ per sample.. but I have to implement that delta thing
17:16:25preglowstevenm: yes, but it's not supposed to be like that, the delta method is what you must use if you want it realtime
17:17:03stripwaxthinking about something like cubic interpolation - wouldn't that be easier (per sample) if the samples were at the same rate? or would that be infeasible anyway on hte iRiver?
17:17:08stevenmpreglow, all right.. So can iriver technically do floating point then ?
17:17:30preglowstevenm: no, but floating point or fixed point, it's all the same math, you just need to code it slightly differently
17:18:01preglowstripwax: linear at least should be easy
17:18:05stevenmThe result is an int, but you go thru a double operation to get it. If I have one double operation per note, and only miltiplication per sample, is this acceptable?
17:18:06 Quit bobTHC ("( :: NoNameScript 3.81 :: )")
17:18:09preglowsome kind of interpolation has to be done
17:18:29 Nick Lynx_ is now known as Lynx_awy (HydraIRC@
17:18:31preglowstevenm: even that is too much, addition per sample should be more than enough
17:18:39preglowstevenm: and perhaps a mul to control volume
17:18:52preglowstevenm: and some more for interpolation
17:19:38stevenmpreglow, I see what you are saying, for the delta.. but how do you handle volume, then? Note volume, that is.
17:19:54stevenmpreglow, it has both channel and note volume. How to go about this?
17:20:12stevenmpreglow, multiplication, or somehow do an approximation using shifting ?
17:20:30preglowstevenm: multiply is perfectly feasible on coldfire
17:20:45stevenmpreglow, oh, all right. that's good
17:20:55preglowstevenm: codecs do little but multiply and add
17:21:21stevenmpreglow, I could always have it going at 22Khz instead of 48
17:21:40preglowstevenm: go for 44.1khz first
17:21:41stripwaxhaving it at 48 would be a big win imho
17:21:50stripwaxor 44.1
17:23:21stevenmDo any compiler optimizations help? Like, -O3 or whatever ?
17:23:33stripwaxYes (see my earlier post)
17:23:51stripwaxGCC is pretty good at motorola optimizations (iirc).
17:24:13preglow12 lines of c became 44 lines of asm
17:24:22preglow200 lines of c to go...
17:24:33preglowstripwax: -O2 should help heaps
17:24:35stripwaxpreglow - what are you rewriting atm?
17:24:51preglowstripwax: imdct_l in libmad
17:25:26stripwaxcool. lots and lots of opportunities for MAC code there I hope?
17:25:35preglowvery much so
17:25:48preglowmdct36 is one bloody long MAC invocation
17:26:21stevenmpreglow, what is the MAC instruction ?
17:26:38stripwaxstevenm - like SSE or MMX on a PC..
17:27:19preglownot really
17:27:40preglowstevenm: it multiplies two numbers, and then adds the result to another register
17:27:46preglowstevenm: and does it fast
17:28:14stevenmpreglow, Is ee
17:28:15preglowand to top it of, it can do a parallel load, so i have to write asm by hand to utilize it properly
17:28:40preglowline 1770
17:28:43preglowfrom there on begins the fun
17:29:09markungrayscale is coming along nicely. I added 'lcd_set_bgcolor' and 'lcd_set_fgcolor' which set the colors to use when drawing things.
17:29:35preglowgrep for III_imdct_s, and you'll see what stuff looks like after assembler optimization, not exactly a pretty piece
17:31:59stripwaxwhat I meant was the MAC unit supports more than just one instruction, e.g. MSAC, all of the EMAC stuff
17:32:20preglowahh, yes, but there's not many
17:32:36preglowyou have mac, msac, and movclr, plus some status/mask registers
17:32:50preglowshop, brb
17:34:24stripwaxmm, true
17:35:04stevenmpreglow, running into a problem... the delta value per sample ranges from 0.222 to 1.9ish....
17:35:57stripwaxstevenm - what's the actual problem?
17:36:36stevenmstripwax, I did the math to find the delta value, to add, per sample
17:36:48stevenmand it's in the floating point range
17:37:23stevenmI thought it would be a whole number of samples, but no... it's like, 0.2 in some places, 0.4, 1.03, etc
17:37:57stripwaxwell, yes, it would be, right? if it was a whole number of samples, then all you could ever do is play octave notes, and not the notes in between ...
17:38:00stevenmand if you round it off, then it does not work. Sounds completely horrific, can't even tell what note it is
17:38:17stevenmwell, sort of
17:38:19stripwaxdon't round it.
17:38:29stevenmbut then it's double math, and we can't have that ... ?
17:38:45 Quit AC ("CGI:IRC")
17:39:06stevenmIf I can leave it in double form, I can then have one floating point addition per sample, and one per note
17:39:08stripwaxstore the sample position to a greater precision. e.g. store the sample position multipled by 65536.
17:39:50stevenmbut then you need to divide it to get the actual sample, no?
17:39:54stripwaxso adding "1.03" to the sample position, you really add "1.03*65536". Which you can round to 67502 and be reasonably confident it will sound just as good
17:40:00stripwaxDon't need to divide. just need to shift.
17:42:11stevenmhmm.. that's a good idea. thank you
17:42:24stevenmYea, I just got out of bed. "snow", campus is closed
17:42:31stevenmnot fully thinking straight
17:42:47stripwaxstevenm - heh. i'm hideously hung over right now
17:43:03stevenmhaha. party night?
17:43:15stripwaxbtw if any of your samples aer longer than 64K then you'll need to reduce the precision if you want to get everything to fit into a 32bit int
17:43:45stripwaxnah, music festival, all weekend long. don't think i spent more than an hour without a drink in my hand
17:43:53XShocKstevenm: snowing here too. everything is closed. :)
17:43:59stevenmXShocK, where is here /
17:44:15XShocKGermantown, Maryland, US
17:45:06stevenmXShocK, that's pretty close to us. I'm in College Park, MD
17:45:24XShocKI thought so. :)
17:45:31stripwaxExplains why I'm not seeing any of this snow from my window in London ;-)
17:47:13XShocKstevenm: your ip :)
17:48:11XShocKhere schools were closed since last thursday, same in CP?
17:48:49stevenmpossibly tomorrow, too. but there's hardly any snow at all
17:48:55preglowstevenm: that there's the fixed point part
17:49:02preglowstevenm: you don't need floats to be able to encode 1.35435
17:49:16stevenmprofessors are just too lazy to come probably. gets me outta physics exam
17:49:32stevenmpreglow, yea about to try that
17:49:58stevenmpreglow, I accidentally just rm'd some code I needed, getting it offa my ftp first
18:02:14 Join mecraw [0] (~mecraw@
18:02:36stevenmokay.. getting there.. the multiplying by a large number seems to work
18:03:04preglowhow large can the samples be max?
18:03:42stevenmpreglow, what do you mean?
18:04:41stripwaxe.g. is the biggest sound file 64KB, or is it smaller?
18:04:55stevenmHmm.. I think the largest patch here is 2.3 MEGS
18:05:14stevenmBut I am about to go and check how many waveforms it contains
18:05:30stripwaxstevenm i really meant one individual waveform
18:05:40 Quit UlfJack ("Verlassend")
18:05:52stevenmYea. I see.. the only program that will load a GUS patch and tell me EVERYTHING about it happens to run on windows
18:06:04stevenmjust have to wait for my desktop to boot up
18:06:18preglowstevenm: i meant a single waveform
18:06:27stripwaxer... i thought you were writing a midi codec?! don't you already have that information in your code somewhere?
18:06:41stripwaxotherwise how do you know which waveform to play?
18:06:45stevenmstripwax, I do, I do, don't worry
18:07:16stevenmI just thought this way would be faster than digging through it and seeing how big
18:07:44stripwaxah ;-)
18:08:32stevenmbut all right.. I put some printfs into the loader. lets see here
18:08:48stevenmIt looks like 248kb
18:09:21stevenmbut that is just the largest patch, 2.3mb. there could, theoretically, be 1 meg patch with only one waveform in it...
18:09:28stripwaxok so you can use 14bits
18:09:31 Quit Zavatta ("Leaving")
18:09:56stripwaxstevenm - er, ok, so what is the largest waveform? :-S
18:10:18stevenmI have no way of easily knowing
18:11:18stevenmstripwax, do you think it would work if I multiplied everything by 1024 ?
18:11:55preglowstevenm: that factor depends on how large your waveform can be, that's why i ask
18:13:15stevenmpreglow, I guess that wouldn't be too hard.. take the largest few patches, look at the largest waveform in each, etc
18:13:48stripwaxwe seem to be asking the same questions over and over here... i already asked about the 64kb waveform size a while ago. stevenm - that sounds like a plan. look at all the patches > 248KB
18:14:26stevenmstripwax, on it. I figure, 248kb - 18 bits. an 11 bit shift on top of that should fit nicely
18:15:06stripwaxstevenm hmmm... 248Kb is 18 bits, so the shift should be 14 bits, no? (like I already said)
18:16:22stripwaxYou should go for as much resolution as possible, I can't think of any performance penalty for using 14 bits vs 11 bits
18:16:39stevenmstripwax, yes.. I was just saying 11 because I have 11 bits coded in right now. But yes, the maximum would be the best
18:17:03stevenmThat's 28 patches I have to check. this won't take too too long
18:17:30stripwaxstevenm ok cool. hey, snowing in London :-D
18:20:18 Join nobby [0] (
18:20:32stevenmstripwax, coo, snow! Yeah.. Harpsicord just has to be 550KB
18:20:58 Join Stryke` [0] (
18:21:37stevenmThat means, 20 bits for addressing samples, and 12 bits on top of that for multiplying
18:21:43preglowit's been snowing here for days
18:21:51stevenmpreglow, where is here ?
18:21:55preglownorway :P
18:22:01stevenmpreglow, cool
18:22:19nobbymore like snoreway :P
18:22:27stevenmpreglow, so this thing will do 32-bit ints ?
18:22:30nobbykenya kenya kenyaaaaaaaaaaaaaaa
18:22:33stripwax12 bits sounds good.
18:22:55 Part nobby
18:22:57 Join nobby [0] (
18:24:49stripwaxstevenm - unsigned int should be 32 bits for the coldfire target, I'm pretty sure
18:25:33stripwaxbut I thought there was a portable datatype that you should use ( called I think int_32 ? )
18:25:37stevenmstripwax, I'm missing a bit somewhere.. it's annoying. 12 bit shift cuts off half the notes. 11 bit shift works. must be a signed value *somewhere*
18:27:03stripwaxyeah, sounds like it.
18:27:06 Join Ancient_F [0] (
18:27:34 Nick Ancient_F is now known as XavierGr (
18:27:41stripwaxor just use 11 bits until you track it down
18:27:45stevenmhey guys.. Do you think it is reasonable to use up 81KB for precomputed delta tables? And that is a generous estimate too
18:27:51preglowdelta should be notefrequency/(sample_duration*sampling_rate)
18:28:03preglowstevenm: why would you need that?
18:28:21stevenmpreglow, speed. That way I don't have to do any math per note
18:28:33preglowstevenm: ram is really slow in the h1x0
18:28:39stripwaxyou should only need tables for at most 13 notes. The other octaves are just shifts.
18:28:43preglowper note math is not a problem
18:29:10stevenmstripwax, yes, but the waveforms per patch aren't spread out evenly, and have varying sampling rates
18:29:35stevenmpreglow, all right. That makes 2 divisions, one multiply, and one shift per note
18:29:58stevenmand an add per sample, plus a few shifts
18:30:10stevenmplus the volume junk
18:30:28preglowbut note on doesn't happen _THAT_ often
18:30:52 Quit asdsd (Read error: 60 (Operation timed out))
18:31:25 Quit linuxstb (Read error: 113 (No route to host))
18:31:28stevenmpreglow, okay. and turns out, the per sample division for volume is just a 14 bit shift too
18:31:30stripwaxfor effects like tremolo (if you're implementing that?) you can save cpu per sample by only recomputing volume levels every few samples or so, rather than every sample
18:31:45XavierGrHello all! Can I ask a small question?
18:31:52preglowstevenm: i do not believe you can make the volume a simple shift
18:31:54stripwaxXavierGr - of course!
18:31:55XavierGrI have rockbox running in my iHP. I see that there is a .rockbox folder. I have seen that there are everyday builds. Can I just replace the .rockbox folder with a new build or I will have to flash again?
18:32:00preglowstevenm: but that's not problem, muls are pretty quick
18:32:13preglowXavierGr: just replace
18:32:19preglowXavierGr: you need to replace rockbox.iriver as well
18:32:26preglowXavierGr: don't mention it
18:32:31XavierGroh yeah ok! :)
18:32:41nobbywhen will daily builds start containing rockboy?
18:32:54preglownobby: when it's usable, i'd guess
18:33:03nobbyages away then...
18:33:08preglowno, not really
18:33:18preglowit is usable as it is, just need to find out where to optimize it
18:33:23stripwaxanyone want to buy my P&E wiggler? I bought it but I'm thinking I really don't need it now.. unused.. :-(
18:33:30stevenmokay people.. I'm going to go ear breakfast. Then come back, and hopefully continue on this
18:33:38stevenmer eat. that didnt sound right
18:33:40nobbyand stop it crashing on every rom ive tried (all freeware demos so far)
18:33:48preglowstevenm: i'm tempted, but no dice
18:33:57stripwaxstevenm - is there example code I could play with?
18:33:58preglowstripwax: see above
18:34:21stripwaxpreglow - hehe . ok, thx anyway. i can probably return it to the supplier
18:34:24stevenmstripwax, you want the code to this thing ?
18:34:33XavierGrHello nobby, I was inspired by your move towards HCl to give you a modded firmware.(read it in logs) Now I can run Rockbox too. :)
18:34:39stripwaxyeah, why not
18:35:06stevenmstripwax, hmm... let me clean up some of this delta junk, then I'll upload the patch set and ?the code. Are you on Linux
18:35:41stripwaxstevenm - sure, thanks! linux is not a problem, i'm just going to look over the code, probably not run/compile it
18:36:20nobbyxavier: isnt it useful(!) :P sound quality is awesome ;)
18:36:58XavierGrWell I can play snake2 and create,rename or delete folders on the fly!
18:37:09stevenmstripwax, here, let me get it to a buildable state
18:37:30nobbyand the playlist converter will be useful
18:37:34stevenmstripwax, it's really ugly, esp. the gus loader. need to fix junk like skipping the reserved areas instead of loading them, etc
18:37:57XavierGrnobby:Not to mention that it connects faster in USB mode
18:38:00stripwaxstevenm - sure ok, no rush
18:38:29preglowoh my god, i certainly hope i manage to introduce a bug in thise code
18:38:33preglowi'll never be able to find it
18:39:27nobbyxavier:agreed, its better, but i like music too :P
18:40:22XavierGrWell I use the remote so if I press play on the remote original firmware comes in! :P
18:41:21stevenmstripwax, all right. it builds and runs, and it uses the delta stuff. not everything has been adapted for delta, like looping. but it will build and play right
18:43:17stevenmstripwax, stevenm/irivermidi_new.tbz2">
18:44:21stevenmstripwax, the functions in question are synth.c / synthVoice() and sequencer.c / pressNote()
18:44:22stripwaxstevenm - fab, tx
18:44:36stevenmand with that, breakfast at 12:45 pm. back later
18:46:05nobbymy remote died...
18:48:09XavierGropps sorry
18:50:45stripwaxstevenm - not sure what's going on at the end of synthSample. Is that supposed to be a lowpass filter?
18:51:33stevenmstripwax, I suppose so. it eliminates the high pitched hissing sampling noise, especially with string instruments
18:51:49stevenmstripwax, I suppose that can be done with a circular array, and a shift instead of division
18:52:24stripwaxYeah probably - but better would be to use interpolation during sample generation, rather than post processing with a filter to remove the hiss that shouldn't be there in the first place ;-)
18:54:08stripwaxHmm, rockbox might not have an fscanf function.. (anyone confirm/deny?)
18:54:10stevenmstripwax, yea I guess you are right. But.. I don't know how to do interpolation.. and my main concern was getting the basics working, then slowly working up. It won't even loop properly yet
18:54:14XavierGrbye all
18:54:14 Quit XavierGr ()
18:54:41stevenmstripwax, the fscanf is just a hacked together config loader. that's like, the last thing I'll do, make a normal config parser
18:55:33stevenmstripwax, but... I just clocked this thing to 600Mhz, then throttled it 87%, so effectively a 78Mhz Pentium M I suppose.. and it ran realtime as long as you didn't move the mouse
18:56:04stevenmand this is all with the rest of my programs running alongside it
18:56:30stevenmnow, breakfast for real
18:58:05stripwaxheh :-) cool. well I'm thinking that getSample is a bit inefficient since you're building the address each time, rather than just doing that once and then just incrementing/decrementing it. i'll take a look and see if I can't rearrange that a bit
19:02:03***Saving seen data "./dancer.seen"
19:05:03 Quit Schnueff (Read error: 60 (Operation timed out))
19:06:50stripwaxstevenm - by the way, by 'interpolation' i mean, instead of just getting ONE sample out of the waveform for each sampleoffset, we actually get two, and average the two values in some way. That will remove the 'high pitched sampling noise' at the source, since it's caused by the non-smooth movement of the sample offset e.g. if delta is 1.01 then 99% of the time the sample offset moves by 1 sample, and 1% of the time it moves by 2 s
19:09:23stripwaxcan i download the patches from anywhere? builds fine under cygwin on windows
19:18:28HClhow goes o.o
19:20:05amiconnYeehah! lseek() working in the cygwin x11 simulator. :)
19:20:12HClgrats :)
19:20:14HClwhat was it?
19:20:38amiconnLinus found the cause - cygwin uses a 64 bit off_t datatype..
19:20:54amiconn...while rockbox defines it 32 bit
19:21:59preglowhow are 64 bit values passed? by reference?
19:22:12preglowwell, of course not
19:22:23amiconnOn the stack, methinks
19:22:39preglowyes, but not strange it broke things
19:22:53preglowit got 32 bits when it expected 64
19:23:05amiconnThe fix is simple when you know the problem.
19:23:08preglowlooked like you tried to seek out of bounds all ther time
19:23:18preglowsometimes ;)
19:23:45amiconnI added a tiny sim_lseek() with 32 bit parameters & return value, which simply calls the system's lseek()
19:24:57HCl :)
19:25:14stevenmstripwax, I am back
19:25:44stripwaxhiya! which gus patch files are you using, could you send me them/link them pls?
19:25:44stevenmstripwax, yes, getsample needs to be cleaned up.. Here, let me put the samples up
19:25:59stevenmer patches
19:26:04stripwaxI'm currently downloading a 1MB patch set but it might not be the same as yours.
19:26:07HClamiconn: any luck with rockboy?
19:26:09stripwaxYes please
19:26:46stevenmstripwax, you'll need to make your own config file for that. it doesn't parse the configs properly yet
19:27:09amiconnHCl: Didn't try yet. Next thing is to complete & commit the malloc() fix.
19:27:29stevenmstripwax, are you on broadband ?
19:27:31markunI have mandelbrot on iriver!!
19:27:43markunSorry, am just very happy :)
19:27:48stripwaxmandlebrot, hehe. is it zoomable?
19:27:53HClamiconn: i got a new version of rockboy by now, it has a nice ifdef DYNAREC everywhere
19:27:55stevenmstripwax, oh okay then. I'm gonna host it on my dorm machine
19:27:56stripwaxand is it greyscale?
19:27:59markunI will send a picture
19:28:00HClmarkun: nice
19:28:03stripwaxstevenm - cool, thanks
19:28:05markunYes, grayscale.
19:28:11*HCl wants grayscale for rockboy
19:28:14stripwaxmarkun schweet
19:28:37amiconnmarkun: 4 scales isn't that much - porting the grayscale lib to simulate even more would be great.
19:28:48HClyes, but. i'd like both o.o;
19:28:51stripwaxDoes the greyscale lib do native 2-bit on iRiver or does it always use 1-bit time dithering?
19:28:55HClsince rockboy won't have cpu to do grayscale lib
19:29:14amiconnstripwax: The grayscale lib is not yet ported to iriver.
19:30:04stripwaxamiconn ok, wasn't sure
19:30:06amiconnIf it still isn't by the time I will have an iriver, I'd try to use 2-bit in addition to temporal dithering
19:30:25stripwaxyep - makes sense
19:30:45amiconnShould allow for some 49 graycsales with a similar approach as on the archos
19:30:55markunI ported the grayscale api, but without temporal dithering.
19:31:03 Join stevenm_1 [0] (
19:31:35stripwaxstevenm_1 - let me know where the patches are when they're up
19:31:49amiconnMaybe the 2-bit mode of the lcd uses temporal dithering internally. In this case it may interfere with further temporal dithering
19:32:15stevenm_1stripwax, yes.. I have to make an account on my desktop for ftp access.. one moment
19:32:15preglowdon't think it does
19:32:16stripwaxamiconn - maybe
19:32:30stevenm_1stripwax, you said it was Cygwin? Does that actually support sound? /dev/dsp that is
19:32:49stripwaxstevenm_1 dunno, i'll find out I guess.
19:33:00stevenm_1stripwax, all right..
19:33:24stripwaxApparently it should just work, but there's some things that Cygwin's /dev/dsp doesn't support
19:33:56stripwaxmarkun - nice! so that's native greyscale but no temporal dither? lovely
19:34:00 Join Sucka [0] (
19:35:18amiconnmarkun: Your 2-bit mode implementation uses a similar api as the grayscale lib?
19:35:47markunIt's quite slow, but then I don't know how fast it is on player.
19:36:01markunamiconn: It uses the same api. gray.h.
19:36:12markunBut not everything is implemented.
19:36:18markunNo scrolling.
19:36:23amiconnNice :)
19:36:54amiconnI think this same api would be useful for b&w too (of course some functions are unnecessary then)
19:36:55stevenm_1stripwax, stevenm/patchset.tbz2"> 30 megs :)
19:37:10amiconnI suspect the code will get smaller if we do this...
19:37:13XShocKmarkun: really nice
19:37:26markunI added lcd_set_bgcolor and lcd_set_fgcolor to lcd.[ch] for the iriver, they can be used to give everything in rockbox a nice color.
19:37:29stripwaxstevenm- woah, so in theory running the midi plugin on iRiver could run out of memory???
19:37:39stevenm_1stripwax, and it will want it as, ./irivermidi and ./patchset..
19:37:49markunamiconn: That was also your idea, right?
19:37:58stevenm_1stripwax, in theory, if you used all 128 instruments in your MIDI file, then yes
19:38:12amiconnAdditionally, lcd_set_drawmode should also be implemented
19:38:13stevenm_1stripwax, well actually it'll be less than that
19:38:33stevenm_1stripwax, that patchset contains more than you need. like 4 drum banks I think
19:38:42stripwaxoh ok! :-)
19:38:44markunYes, it should.
19:38:57stripwaxstevenm_1 - that link doesn't work for me
19:39:10stevenm_1stripwax, hmm..
19:39:31amiconnThis would allow to remove all those duplicate functions that are there now, and be more flexible at the same time
19:40:01stevenm_1stripwax, now try
19:40:48markunamiconn: the duplicate functions in grey.h and lcd.h?
19:41:09amiconnNo, I mean the duplicate functions in lcd_recorder.c / lcd_h100.c (cvs)
19:41:22amiconnLike lcd_drawline() / lcd_clearline() etc.
19:41:40stevenm_1stripwax, yea, try that link again. I uploaded it to wrong dir
19:41:49stripwaxstevenm yup works now
19:42:12stripwaxdownloading nicely
19:43:28 Join rovragge [0] (
19:44:01amiconnmarkun: There would be only one function for each graphics primitive, like it is now in the grayscale lib
19:44:12rovraggea friend of is anxious to try out rockbox because 'it will probably not work after flashing and then I lose 300 euro"
19:44:31 Quit stevenm (Read error: 110 (Connection timed out))
19:44:32rovraggeheh not anxious, I meant scared
19:45:15stripwaxrovragge - you gotta take risks to be on the cutting edge
19:45:27rovraggewell help me measure the risk
19:47:00stripwaxI don't know how many people have flashed rockbox and ended up breaking their player. I know of no such cases but some of the older hands might know of some.
19:47:30stripwaxif it doesn't work, he can just reflash the original firmware
19:47:37rovraggehow does he do that?
19:47:59HClby sending it back to linus
19:48:07rovraggefor how much $$?
19:48:07HCland have him with his bdm wiggler reflash it
19:48:20HClwhere does linus live again... norway?
19:48:51HClso, the money for shipping an iriver to sweden, and back from sweden
19:48:53rovraggewell does linus just do such things on request?
19:49:10rovraggethats nice
19:49:14HClwell, thats a question for him, really, but i don't see why not personally, as long as it doesn't happen too often.
19:49:16 Nick stevenm_1 is now known as stevenm (
19:49:31stevenmAh there, finally
19:49:31HCli don't guarantee that he will, i'm just saying he could.
19:49:38mstwhat cpu does this iriver thing run on?
19:49:57mstare there emulators?
19:50:08HClcoldfire emulators? not any that are usable
19:50:26preglowstarting out good again: locked up player
19:50:34stevenmstripwax, aaaaand we have working forward looping. for the most part
19:50:35HClwhat'd you do?
19:50:52stripwaxstevenm - woohoo!
19:51:05mstshit I shouldve bought one of the rockbox supporting devices
19:51:10rovraggebut rockbox can't play mp3
19:51:45preglowHCl: try my optimization..
19:52:03HClfor a moment you made it sound like you bricked your player, heh
19:52:06preglowthis is exactly what i hoped for, i hate debugging asm
19:52:16HCli lock up my player all the time with rockboy
19:52:25preglowno brick, no
19:52:59msti got this strange fascination with microassemblers and gadget devices
19:53:17mstgonna be fun
19:53:36HClwell, you can help with dynarec if you want :P
19:53:46mstwhat's that and does it require hardware?
19:53:59HClits going to be the new cpu core for rockboy
19:53:59preglowit requires you getting intimate with the cpu
19:54:06HClhopefully, it'll make things faster
19:54:08mstI dont -have- the CPU
19:55:04HCli'll just have to bitchslap gcc some more and make it produce usable assembly
19:57:41 Quit nobby (Read error: 110 (Connection timed out))
19:58:23mstno other compilers for coldfire?
19:58:30preglownone that are free
19:58:31mstthe only coldfire I have is an old palm
19:59:57CoCoLUSif a non free compiler is used, is that visible in the final assembly?
20:00:25CoCoLUSdid you buy your windows? :P
20:00:36HClbut i didn't need to.
20:00:46HCli get mine for free through msdn academic alliance
20:02:03mstI don't believe in intellectual property, hence I don't have moral issues with using warezed software.
20:02:50HCli just believe that companys like microsoft are seriously acting like criminals when it comes to competitor companys. hence i'll do everything to work against them.
20:04:13mstHCl, so what do you say, can I do anything with rockbox without a hardware to play?
20:04:30HClsimulators get a long way
20:04:42HClbut yea.
20:04:54stevenmstripwax, did the thing run on cygwin ?
20:05:04HClyou can check the todo list, some of them can just be designed on the sim
20:05:18mstwhich platform does the sim run on?
20:05:24HClwin32, x11
20:05:29mstah, great.
20:05:38mstI'll check with it later on.
20:06:31preglowseems referring to non-existing addresses hangs the player
20:06:33preglowwhat gives
20:07:04preglowthis is really depressing, it looks like my changes don't do shit
20:07:08HCl :/
20:07:09mstthatd be reasonable.. the bus is trying to address a non-existing piece of memory, and nothing happens, the memory doesnt respond
20:07:11jyppreglow: I just discovered that on the Gmini too ;)
20:07:15preglowHCl: it does, i just can't measure it myself
20:07:24preglowHCl: need a higher speed coldfire
20:07:25HCli'm kind of assuming that dynarec will be slower in the end :p
20:07:25mstcoldfire does have an exception mechanism doesn't it?
20:07:32mstpreglow, you can overclock it
20:07:44preglowmst: i'll wait for linus' changes
20:07:45HClmst: we don't have linus' changer
20:07:58mstit doesn't tell me anything
20:08:15HCllinus is working on cpu speed scaling.
20:08:18mstI can overclock my palm in softare
20:08:27HClhe's the only one who's able to run at higher speeds at the moment.
20:08:28preglowmst: you can't just overclock the cpu and be done with it
20:08:44preglowmst: the peripherals need to tag along with the timing changes as well
20:08:50mstis this a hardware issue of software timing issue?
20:09:03mstthen how's Linus related to it?
20:09:04preglowhardware/software :P
20:09:22markunjpeg.c does not decode the pictures right..
20:09:36preglowmst: because he's the only one capable of measuring hardware timing issues at the moment
20:10:39stevenmbrb, gonna test midi plugin with nothing else running
20:10:44 Quit stevenm ("Leaving")
20:10:47mstnever realised Linus had anything to do with hardware
20:11:19HClhe's the only person with a bdm wiggler - actually able to debug anything.
20:11:24preglowmst: what makes you think that? he's the one who wrote the bootloader
20:11:26HClhe wrote the bootloader
20:11:53preglowmst: sure you're not confusing him with someone else?
20:12:02mstpreglow, pretty much ;)
20:12:10mstthen again theres always something new to learn
20:12:13 Join zezayer [0] (
20:13:49 Join frank [0] (
20:15:06 Nick kergoth is now known as kergoth`food (
20:19:47msthmm.. rockbox is written in C?!
20:19:58HClnah, we liked javascript bettre :P
20:20:13 Join stevenm [0] (
20:20:18msti sort of thought it'd be macroassembler
20:20:31HClcode doesn't stay managable when written in assembly
20:20:39stevenmback.. With -O2 it runs realtime on a Pentium-M at 78Mhz
20:20:42HClthats why programming languages have been invented in the first place
20:20:54stevenmand that's as low as this thing goes
20:21:03preglowmst: pure c with asm for very low level or performance critical stuff
20:21:05mstHCl, that's why macroassembler and Best Code Practices (TM) were invented in first place ;)
20:21:11preglowstevenm: i bet i can bring it lower
20:21:19mstpreglow, I'm a fascist. I consider everything critical. Heh.
20:21:38stevenmpreglow, I bet you could.. esp. with that 'lowpass filter' with for loop, etc
20:22:03 Quit mecraw (Read error: 54 (Connection reset by peer))
20:22:04preglowstevenm: i've done stuff like that tons of times, i'll see if i can get my opt to work, and then have a look at your thing
20:22:06mstok, I'll go RTFM now.
20:22:54stevenmpreglow, Another annoying thing about this. Before playback, the thing loads 7 megs of waveform from HD to RAM. With my PC clocked down, that takes an annoyingly long time
20:23:10mststevenm, mmap?
20:23:17preglowjust wait 'till you see how long it will take on the iriver
20:23:20stevenmmst, what is that ?
20:23:54 Join asdsd [0] (
20:23:57mststevenm, memory mapping.
20:24:06stevenmpreglow, I am sure SOME of that time is used up printing output.. radeonfb doens't like me.
20:24:14mstthough on an underclocked machine I'm not sure how efficient that'd be
20:24:37stevenmpreglow, It's very straightforward.. just take X bytes from file and load them [here]. Maybe it would be faster thru ASM?
20:24:37 Join muesli- [0] (
20:24:46preglowstevenm: no, i sincerely doubt that
20:24:59stevenmpreglow, well, how long would it take to load that much?
20:25:44stevenmpreglow, I mean, on archos, filling the MP3 buffer takes surprisingly a short time.. and that's two megs. Is there a reason it would take so much longer here?
20:26:18preglowstevenm: no, not really, i was just guessing
20:26:22preglowstevenm: it has to be done anyway
20:26:33preglowbrb, food
20:26:55stevenmpreglow, ok
20:31:00mstDoes anyone here have any experience with Sigmatel chips?
20:32:43 Quit Nibbler ("blubber")
20:33:39stripwaxback again. I still have my BDM wiggler for sale, noticed a convo above about that
20:35:03mstwhat's a BDM wiggler? ;)
20:35:10*mst googles
20:35:23*Renko giggles
20:35:25mstah I see
20:36:32stripwaxa hardware interface that lets you access the built-in "background debug module" on the coldfire cpu. i bought one intending to do the same kinda thing as Linus but then realised that there's not much I would be able to do usefully that Linus hasn't already got under control.
20:36:59 Join Nibbler [0] (
20:37:47Renkodid anyone do anything about a gdb stub for the serial port yet?
20:38:10HClbut its on the todolist
20:38:32Renkoyeh, there's one for the archos right?
20:38:45HClthough i'm not sure what interface the archos one uses
20:40:09Renkoso should be poss to use that as a base for the iriver?
20:41:45HClit might, i'm not sure exactly
20:41:48HCli think it'll give a nice outline
20:41:52HClto what commands you need to implement
20:42:53 Quit asdsd (Read error: 110 (Connection timed out))
20:42:55 Join mecraw [0] (~mecraw@
20:43:13amiconnstripwax: Well, most probably someone needs a wiggler for working on H3xx support
20:45:39stevenmstripwax, is there going to be a H3XX port ??
20:48:02 Quit zezayer ("ChatZilla 0.9.61 [Mozilla rv:1.7.2/20040804]")
20:48:57jypWhile you're on this subject, I'll need a wiggler-like think for the Gmini ...
20:49:12stevenmjyp, how fast is the gmini ?
20:49:13jypIf anyone has info, I'm eager to hear
20:49:44jypstevenm: It can decode mp3 in realtime ;)
20:49:56jypWhat do you mean exactly ?
20:50:13stevenmjyp, but can it.. potentially play MIDI in real time ? :)
20:50:46jypit looks like easier than mp3, doesn't it ?
20:50:58stevenmjyp, I guess I'm saying, is it about as fast iRiver?
20:51:38jypI guess both archs have the same power.
20:51:46jyp−− roughly
20:52:01stevenmjyp, there's a not of annoying math involved
20:52:16jypThere must be tricks.
20:52:16stevenmjyp, okay then.. then I guess this thing ain't just going to be for iriver\
20:52:27stevenmjyp, there are.. but it is still annoying math
20:52:49amiconnI think midi would even be possible on the old archos, if we ever get hold of that wav 'codec' for the mas...
20:52:55jypOk, I guess there are effects and such
20:53:38jypwhich make the thing hard
20:53:48stevenmamiconn, I don't think so. there is no way it will run on a 12Mhz CPU
20:54:10stevenmamiconn, well, maybe with a lot of help from Linus, maybe...
20:54:51stevenmamiconn, I've got a P-M down to 78Mhz barely handling it.. but thats without hand optimization
20:54:59stevenmand at the highest sample rate
20:56:48amiconnWell, imho it all depends on the precision, sample rate etc. It may be possible on a 12 MHz cpu at a lower quality.
20:57:38stevenmamiconn, maybe. but how do you get a hardware MP3 decoder to play raw samples?
20:57:56amiconn[20:52:22] <amiconn>... if we ever get hold of that wav 'codec' for the mas...
20:58:19stevenmamiconn, what do you mean by 'get hold of' ? One exists?
20:58:31stevenmamiconn, can that chip even do that?
20:58:33amiconnActually there are at least 2
20:59:00stevenmamiconn, then what is stopping us from getting our hands on one of them?
20:59:04amiconnOne very simple, doing 44.1 kHz 16 bit stereo only, without buffering & demand transfer
20:59:52amiconnThis one also does parallel transfer only, so we can't use it
21:00:19*HCl finally gets gcc to spit out some working assembly.
21:00:25HCli swear, gameboy flags are nasty.
21:00:38stevenmHCl, gameboy?
21:00:40amiconnThen there are rumours that another one exists, much more sophisticated and also capable of serial transfer
21:00:54HCli hope that i'll be able to optimize them out some far day in the future
21:01:01HClsome day in the far future*
21:01:04HClstevenm: yes.
21:01:16HClstevenm: working on dynarec for rockboy
21:01:26stevenmHCl, dynarec ?
21:02:06***Saving seen data "./dancer.seen"
21:02:19HCldynamic recompilation
21:03:43stevenmHCl, woah, cool
21:04:07stevenmHCl, I know a little tiny bit about gameboy.. about as far as the C compiler takes you
21:05:12XShocKsomeone unsoldered everything and scanned the iriver player. who has that unsoldered sheet?
21:10:36XShocKi want to know for sure, which port is used for sound input since there are 3 possibilities.
21:15:21markunjpegs are working on iriver
21:15:53markunI will post a picture later.
21:15:59markunDon't have a camera now.
21:18:09amiconnpreglow: Could you please test my next shot at the malloc() problem, by compiling for iriver?
21:20:26stevenmstripwax, I put an MP3 of the MIDI synth on the internet
21:20:36stevenmits on the soundcodecs page
21:25:32preglowamiconn: sure
21:25:45 Nick StrathAFK is now known as Strath (
21:26:37amiconnpreglow:"> codec.h did also change:
21:27:00amiconnAll against current cvs, as usual. You'll need to undo malloc.diff first
21:27:06 Nick kergoth`food is now known as kergoth (
21:28:18mstI identified my player's CPU. It's ATJ2085
21:28:48Renkostevenm, lol, that midi is great! well done!
21:29:39mstnow I am going to haquor that biotch :P
21:30:31stevenmRenko, thanks
21:30:57stevenmRenko, it uses the Timitidy patch set.. EAWPatches I think
21:31:05preglowthis sounds familiar!
21:31:18stevenmpreglow, hm?
21:31:24preglowmidi mp3
21:31:48preglowit took me about 1 second of the first note to be sure
21:31:54amiconnThe x11 sim really has a strange notion of realtime...
21:32:34preglowamiconn: you use diff -u ?
21:32:41amiconncvs diff -u
21:32:58preglowi wonder why the bloody hell it fails on these trivial cases
21:33:15amiconnYeah.. I don't understandthis too
21:35:03mstamiconn, 'for an arbitrary definition of real... your mileage may vary'
21:35:16preglowamiconn: libflac/bitbuffer.c can't find global.h
21:35:27amiconnBtw, could anyone check whether wv2wav also gives crc errors on the target when decoding the example .wv AC posted?
21:35:40 Quit muesli- (Read error: 60 (Operation timed out))
21:35:41amiconnpreglow: Hrmpf.
21:36:21amiconnI forgot to add global.h ... ouch+
21:38:21amiconnpreglow:"> This goes in apps/codecs/libFLAC/include (directly)
21:40:17preglowamiconn: it builds now, shall i test it as well?
21:41:06amiconnThat would be ideal :) It works on both sims (except wv2wav, as mentioned)
21:42:30mstI have a Z80-based player!
21:43:03preglowthat's not much to be happy about...
21:43:27Strathti-86 baby! ;)
21:44:40stevenmmst, what kind of player is it? Archos?
21:45:07stevenmpreglow, is it possible to actually test codecs on simulators before testing them on target ?
21:45:14preglowstevenm: sure
21:45:26mststevenm, no. A nameless OEM branded USB flash/mp3/FM/DVR player, known on the market under the common name of "S1 Mp3 Wilson Co. LTD" and branded under about 300 different nicknames
21:45:55stevenmmst, hahaha
21:46:03preglowamiconn: well, certainly seems to run fine
21:46:10amiconnGood :)
21:46:33mststevenm, dont get me wrong, it's cheapass *and* ubercool. The damn firmware allows to read ebooks on it, and the player is sized a little bigger than a match box
21:46:45stevenmpreglow, How would you test codecs on a sim? More importantly, where to you get the sim? I tried to build a sim target form rockbox source.. fails on the 3rd file
21:48:08amiconnThanks for testing
21:48:22amiconn@all: Attention, huge commit ahead...
21:48:25mstoh sweet.. IDA is picking the BIOS apart. OH SWEET.
21:48:40preglowamiconn: no problem
21:49:22preglowstevenm: i actually don't know, i haven't coded anything that would work on the sim yet, so i haven't tried building it
21:49:41preglowi dabble mostly with coldfire asm, and that won't run on the sim
21:50:18preglowmst: if you just check out uisimulator and select Simulator when you run configure, that should be it, afaik
21:50:58preglowmst: that is, check out 'uisimulator' from cvs, in addition to the usual rockbox files
21:51:22 Quit YouCeyE (Read error: 110 (Connection timed out))
21:55:15mstI'm not even playing with rockbox yet
21:56:28preglowyes, sorry, me talking to the wrong persons again
21:57:10mstThis is going to be very interesting. Verry interesting.
21:57:19amiconnPhew, 43 files changed... hopefully I didn't break something non-obvious
21:58:26stevenmWell.. I've been at this for 5 hours or so now. Thanks to people's help, this thing is optimized a LOT. Now, I better go study some math
21:58:26 Quit jyp (Read error: 104 (Connection reset by peer))
21:58:39stevenmand then, add support for drum sounds
21:58:45stevenmgood bye people
21:58:57 Join jyp [0] (
22:00:18 Quit stevenm ("Leaving")
22:01:40 Join nozomiyume [0] (
22:03:57 Join nobby [0] (
22:06:48 Join muesli- [0] (
22:10:06mstnow this is disturbing
22:10:34mstwhat the HELL does a x86 PC boot record do in a Z80-based firmware
22:11:01mstHCl, I'm hacking my player.
22:11:09HClz80 based ? O.o
22:11:14HClaren't z80's incredibly slow...?
22:11:22preglowmst: it's hiding?
22:11:42mst <- ATJ2085 is my CPU
22:11:53mstapparently it's not TOO slow.. 24bit DSP
22:12:30mstwhere the hell is the entry point on Z80 processors cold boot
22:14:07jypMmmm... Yet another obsure chinese chi
22:14:23mstyeah. a 32 bit Z80. This is wrong on SO many levels.
22:14:49jypI'd like you to succeed in porting Rockbox...
22:15:00jypsince the gmini has a 24 bits dsp too ;)
22:15:18jypwe might build up on each other's work
22:15:30*HCl ponders writing an gcc-output-to-dyna-code tool.
22:15:31mstfirst I need to decrypt the damn firmware.
22:15:44mstjyp, what chip does gmini run on?
22:15:50HClcause i get the feeling i gotta do this more often....
22:16:57jypmst: TCC730, which is a S3CC410 in disguise
22:17:15jypCalmRisc16 core
22:19:47mstRISC. I doubt my and your player have anything in common. heh.
22:19:59amiconnHCl: You said your malloc() implementation had a small bug?
22:22:22jypRISC... doesn't mean much these days
22:22:39 Quit chuck (Read error: 110 (Connection timed out))
22:23:59HClamiconn: well, it was my usage of malloc, not my implementation
22:24:07HClmy implementation is fine, aside from not having free()
22:26:06amiconn'cause I'm trying to make this work in the sim now
22:26:11HClah :)
22:26:18HClmy malloc was only with dynarec anyways...
22:26:34amiconnrockbox front page looks a bit funny with the latest commit....
22:28:07mstAhhh tits!!! I am disassembling the wrong firmware!!
22:29:02msthmmm... this gets even more interesting. I just found the word ``police'' in the dump.
22:29:22amiconnHCl: rockmacros.h now clashes with the simulator #defines in file.h :(
22:30:08HClits only to reroute functions to the plugin api
22:30:19amiconnWell, the file functions that need simulation (open(), opendir(), ....) are redefined for the sim to sim_open() etc
22:30:40HClyou can just add an ifdef simulator in the rockmacros.h ...
22:30:47mstman... don't you just love the chinese firmware.. comes with windows bootdisk, a warezed copy of minilyrics -and- a keygen to it
22:31:09amiconnHCl: The problem is that your redefines are still needed as well.
22:31:43amiconnfile.h defines open() -> sim_open() etc.
22:31:58amiconnThese functions are also exposed on the plugin api that way
22:32:15amiconnrockboy needs open() -> rb->open() on the target
22:32:31amiconnOn the sim, it needs open() -> rb->sim_open() instead...
22:34:10amiconnHmm. It seems I need a longish workaround
22:34:42mst"Patience.... The musical bottom spends a little more than one ½ minute to be taken care"
22:34:47*mst kicks Google Translate
22:34:48 Quit muesli- (Read error: 110 (Connection timed out))
22:35:07amiconn#ifdef SIMULATOR / #undef <all sim_ functions> / #define <all sim_ functions> / #else / #define <target functions> / #endif
22:36:46mstoh now THAT's a discovery. Sigmatel, whom I initially suspected to be the vendor of my CPU, sued Action Semiconductor, who turns out to be the real vendor
22:38:03mstAnd now I know why. Because ATJ2xxx is a ripoff of ST34xx. Which brings me back to square one.
22:39:03 Quit nobby ()
22:39:13HClgood luck :P
22:39:17 Quit preglow (Read error: 104 (Connection reset by peer))
22:39:37HClmight i be able to hire anyone for a cookie to do my rewrite-gcc-to-dyna code work? :P
22:42:47 Quit pill (Read error: 104 (Connection reset by peer))
22:43:12 Join preglow [0] (
22:43:18*preglow kicks his server
22:46:25HCl26 instructions just to calculate the gameboy flags
22:46:40HClthats not pretty :(
22:48:36 Join muesli- [0] (
22:50:43 Quit muesli- (Client Quit)
22:51:13 Join jpburton5150 [0] (
22:51:49CoCoLUShows rockboy progressing? :) im having trouble compiling because there is a bug in gcc that for some reason wont let me compile calculator.c... ive tried updaiting gcc but to no avail... how might i remove calculator.c from the compile?
22:52:52preglowjpburton5150: how do you know it's a gcc bug?
22:53:30jpburton5150it says a little message like "internal compiler overflow" and then tells me to report it to the gcc bug center
22:53:51HClCoCoLUS: okish, i got gcc to spit out the assembly i need, i'm trying to analyse it to see how i'll encode it into the dynarec
22:54:03HCljpburton5150: i had that.. it went away on its own o.o
22:54:06amiconnHrmpf, bug in plugin.h ...
22:54:11Renkojpburton5150, what version of gcc are you using?
22:54:26jpburton5150ive tried 3.3.5 and 3.4.3
22:54:39jpburton5150but neither work...
22:55:32jpburton5150looking at the makefile it seems that it compiles everything in the apps/plugins folder...
22:55:46jpburton5150so i assumed that if i just deleated calculator.c it would work
22:55:52jpburton5150but it gave me errors
22:55:57HClthe problem is, the code gcc outputs uses 4 regs, while i really only have one available to me.
22:55:59Renkoi got it with the latest gcc but went to 3.4.1 cos that's what the autobuild uses and it works
22:56:09jpburton5150hmm alrighty
22:56:18jpburton5150well i'll try updating to that version then in a little bit...
22:56:54Renkoi also tried deleting the code in calc... but it produced unusable code on the iriver
22:57:03CoCoLUSyou have to remove the filename from the SOURCES file
22:57:05CoCoLUSin that dir
22:57:09CoCoLUSthan it will be left out
22:57:48RenkoCoCoLUS, it should compile cleanly tho..
22:58:20jpburton5150alrighty thanks
22:58:35jpburton5150thats what i was looking for...
22:58:51jpburton5150Renko: did you get the same problem?
22:59:29Renkoor simmilar but certainly in calculator.c
22:59:48jpburton5150hmm i see...
22:59:58CoCoLUSi had the same problem with an old version of gcc
23:00:12jpburton5150well thats interesting as calculator.c i thought was for the calculator plugin...
23:01:06CoCoLUSit is?
23:01:23jpburton5150it's in the plugin folder...
23:01:27Renkoyeah it is
23:02:10***Saving seen data "./dancer.seen"
23:02:47markunI made a picture of the jpeg viewer on iriver:
23:04:23jpburton5150woah thats awesome...
23:04:35jpburton5150i didnt know we got grayscale working...
23:05:06markunwell, it's not in cvs yet.
23:05:37jpburton5150i see...
23:05:48jpburton5150does iriver have 4 or 16 shades?
23:05:54markunonly 4
23:08:04stripwaxmarkun - that's truly cool!
23:08:21markunYes, that's what I thought :)
23:09:04markunI also tried a picture of the iriver itself, but that didn't look as good as einstein.
23:12:02stripwaxStevenm - I'm just listening to the output of the midi codec right now, built under cygwin. seems a-ok!
23:13:22CoCoLUS? we have a working sound codec? :D
23:13:36stripwaxVolume changes seem kinda abrubt though - they should have a couple of milliseconds of interpolation applied imho
23:13:59 Join Camilo [0] (
23:14:02stripwaxCoCoLUS - this is a midi plugin, and I was running the code under Windows :-S
23:14:12CoCoLUSmidi sounds like sound to me :P
23:15:18stripwaxYeah, volume level changes are waaaaay too abrubt. Does anyone have a contact for stevenm?
23:18:24jypgood night folks
23:18:28 Quit jyp ("poof!")
23:19:06HClnice work, can't wait to hook 2 bits grayscale into rockboy
23:19:24preglowstripwax: do you mean at note start and end?
23:20:27 Quit jpburton5150 (Read error: 54 (Connection reset by peer))
23:20:29stripwaxyes but particularly note end. iirc 'note off' is often implemented in a midi file as 'volume 0' rather than a real note off event, and it sounds like it's switching volume level to zero immediately rather than over a few milliseconds
23:20:56markunHCl: I'm a bit afraid to commit before I made it faster. Everything is a bit slow right now.
23:21:07stripwaxi could be wrong of course. i guess this would be handled better if the envelope table is read/used
23:21:10HCli'm not in a hurry
23:23:28HCljames bond is kinda corny sometimes...
23:23:42 Join TexJoachim [0] (
23:23:53preglowstripwax: i don't think he has implemented envelopes yet
23:24:05preglowstripwax: so note on/off will be abrupt
23:25:35preglowthe docs don't say squat about how to interpret that data
23:25:40preglowbut i guess timidity parses it
23:26:32 Join hubble [0] (
23:27:40 Quit frank ("Leaving")
23:29:52 Join bnewhouse [0] (
23:30:00 Part stripwax
23:33:57 Quit hubble ()
23:36:31 Quit markun ()
23:39:05amiconnGrr. Proper linking of rockboy for the sim is really tricky.
23:43:05HClmm? :/
23:43:11HClwhats going wrong now?
23:44:46amiconnI don't get rockboy to link on a simulator build (win32)
23:45:35amiconnSame on x11 simulator
23:48:01amiconnAhahah! I need -nostdlib for the intermediate .o
23:50:05preglowi thought -nostdlib was a linker option only
23:50:26amiconnYes it is.
23:50:52 Part TexJoachim ("Bye!")
23:50:54amiconnI link several individual objects into one intermediate .o before building the final plugin
23:51:12amiconnFor this to work, I need -r -nostdlib
23:52:20HClits a good idea to add that anyways
23:52:26HClis it working?
23:52:28preglowsomeone fix libmad makefile ://
23:52:43amiconnHCl: It starts, loads the rom, the crashes the simulator.
23:52:50HCl xI
23:52:56HClkay :3
23:53:11amiconnI suppose it is the same malloc() clash that prevented the codec plugins from working. Adding workaround...
23:55:30 Join webguest44 [0] (
23:56:40 Quit webguest44 (Client Quit)
23:56:52 Join webguest69 [0] (
23:57:23 Quit webguest69 (Client Quit)
23:58:09*HCl grins.
23:58:20HCl DYNA_MOVE_l_r_to_r(3,2,1);
23:58:24HCli actually have a line that goes 3 2 1 :P
23:58:55amiconnHmm. Now it crashes a bit later, at emu_run

Previous day | Next day