Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

#rockbox log for 2005-02-27

00:01:06asdsdi understand its after the string ESTFBINR, 0x220 right? but i can't seem to do the trick
00:02:01HCldoes anybody know how i can get objdump to do a raw disassembly of a file
00:03:17preglowHCl: raw, like disregard object file format?
00:03:39HCljust direct opcodes in a file
00:03:46HClcause thats what my dynarec is making..
00:04:46HClany idea? :/
00:05:55 Join muesli- [0] (
00:06:11preglowhmmm, no
00:06:19muesli-g'day mates
00:08:22preglowgood night :V
00:09:19asdsdc'ya guy
00:09:50asdsdhubble u have a link for an ida project for the h3xx?
00:10:25 Join midk [0] (
00:10:58preglowhe doesn't work on h3x0
00:11:29preglowhe's using h1x0 firmware 1.40, afaik
00:14:56*HCl sighs.
00:15:08*HCl *just* needs a way to disassemble some stuff -.-;
00:15:35preglowHCl: send it to me, i'll try pushing it through ida
00:16:43HCldoes ida have a coldfire mode?
00:16:56HClby defaul
00:18:03preglowshould so
00:18:07XShocKyes, ida has coldfire support initially, full version, not dempo
00:22:12 Quit preglow ("woop")
00:23:26asdsdyeah it does
00:23:41 Join muesli_ [0] (muesli_tv@
00:23:42asdsdim using ida pro 4.7
00:23:56HCli need ida pro :/
00:24:02asdsdpm me
00:24:11 Join preglow [0] (
00:24:21HClits okay.. i think *stares at preglow*
00:24:26 Quit muesli- (Read error: 60 (Operation timed out))
00:24:27muesli_re mates
00:24:34asdsdu sure?
00:24:41HClnot yet o.o
00:25:08asdsdur gonna need it l8er?
00:25:36HClmmm, let me try this link...
00:26:37preglowi've got a bunch of clrs
00:26:54HClyea, that should be correct
00:26:57HClclrs into memory..
00:27:07preglowand a movea with a 0xff.. address, now that's a dead giveaway :)
00:28:02asdsdman when i opened the unencrypted hex file with a hex editor i thought it was gonna be as easy as opening up a w32 exe
00:28:28asdsdi guess work still needs to be done to figure out the structure of the firmware and stuff, thats just too much for me
00:28:30preglowdoes that look familiar?
00:28:52markunI just turned on the greyscale mode on the iriver. It looks funny :) The text has half the hight and the bottom half of the screen has some random pixels.
00:28:57asdsdwhats C:\dyna_0x150?
00:29:05preglowthat's the disassembled file
00:29:08asdsdof what
00:29:09HClmarkun: nice.
00:29:40markunThe fonts even look kinda anti-aliased :)
00:29:48asdsdwhat were u able to disassemble?
00:30:00preglowasdsd: HCl's dynamic recompilation core results
00:30:17 Quit cYmen (Read error: 113 (No route to host))
00:37:05 Quit preglow ("brb")
00:37:13*HCl grabs his code
00:38:22HClthat pea definately seems wrong, heh
00:38:22asdsdhey preglow
00:38:35HClhe left
00:38:38asdsdnice pics u got in there, but how r u able to play super marioland, i thought it only accepted one key press at a time
00:38:49HClit does, aside from the play button
00:39:01 Join preglow [0] (
00:39:06HClwhat version of ida do you have? pro standard?
00:39:09asdsdso how do u uhhh squish the mushrooms?
00:39:19asdsdmy about screen doesn't say
00:39:28asdsdbut i know
00:39:30asdsdits pro advanced
00:39:47asdsdno wait nvm
00:39:49asdsdyeah its pro standard
00:39:55HClnm then :x
00:40:10asdsdi also have this one: DataRescue.IDA.Pro.Advanced.V4.3.0.740
00:40:13asdsdbut its an older version
00:40:28HClissok :)
00:40:31HClthanks anyways
00:40:49 Quit Stryke` ("Friends don't let friends listen to Anti-Flag")
00:40:51preglowback to non-rockbox related coding
00:43:10 Join amiconn [0] (
00:43:48asdsdhey this might sound kinda silly but the linus u guys talk about
00:43:58asdsdwouldn't happen to be linus torvald would he?
00:44:48asdsddidn't think so
00:46:12XShocKif he was, then rockbox would be UNIXbox. :)
00:46:28amiconnNo, Linuxbox ;)
00:47:54XShocKI suspect Torvalds works in ipodLinux.
00:48:26asdsdive seen a screenshot of ipod running linux
00:48:29asdsdlooks funny
00:51:34HCli don't understand whats wrong with my peas
00:53:46markunHm, now I only need a plan how to use greyscale in rockbox.. Maybe I first should get everything to look the same as before.
00:53:55 Quit midk ("Leaving")
00:54:09HClmarkun: i'd say update the lcd_drivers to still work regardless of the colormode
00:54:32HCland add a drawpixel that allows you to set the pixel value
00:54:51*HCl eats his peas
00:56:34HClyay for disassemle
00:56:54HCladdq.l #8,d7 = WRONG, should be a7 aka sp
00:56:55HCl :)
00:57:26asdsdhey lets say someone were to donate like 20 thousand dollars, do u think like the speed of the project would increase?
00:58:24HClif you want my honest opinion
00:58:38HClsince people are already spending most of their free time on development
00:58:49HClextra money wouldn't help with creating more free time
00:59:10XShocKit will stop, work is not compatible with big amounts of beer.
00:59:18HCl :P
00:59:26*HCl smacks himself upside the head
00:59:38HClvalue|=0x8; ! not value |=0x4
01:00:12HClno wonder it crashed if the stack pointer was all off.
01:01:16***Saving seen data "./dancer.seen"
01:01:25HCloh, can someone with cvs access take a look at my patches for sokoban and snake and possibly commit them so they can be removed from the todo list?
01:01:33asdsdso its not a money problem
01:01:54asdsdbut wouldn't u guys be able to hire like high quality engineers with 20K?
01:02:03asdsdand u can all afford plenty of h320s and h120s
01:02:22HClwell. it might speed up the development for h320s
01:02:34HClsince as far as i know none of the core coders have access to one of those
01:03:49HClcan anyone here confirm that pea is *the* way to push values onto the stack?
01:03:58asdsdoh yeah and then all u guys would be able to receive a hardware debugger right?
01:04:15asdsdwell pea is push effective address right?, sounds right to me
01:04:17HClwell, i suppose that would indeed help some people, if there were more bdms
01:04:38HCli know i'd have less of a hard time debugging rockboy
01:04:42HClbut we want a gdb stub anyways
01:04:47HClwhich is both cheaper and nicer
01:04:55asdsdgreat hcl, so its settled ill start a fundraiser tommorow washing cars and selling cookies and ill donate 20k
01:05:01HCl :P
01:05:04HClwell, what would help
01:05:19HClif if you keep most of the 20k, and spend part of it on an engineer who'll make us a coldfire gdb stub
01:05:23HCl :P
01:05:24asdsdwhats a gdb stub?
01:05:40HClits a small program that allows gdb to remote debug the iriver
01:05:50HClthrough the serial port thats on the pcb
01:06:08asdsdoh i see
01:06:12asdsdhey that wud be pretty useful
01:06:34HClcause then everyone would have an fairly easy way to debug
01:06:52HCl(all you need to do is open up your iriver, solder or otherwise attach two wires to the serial port, hook it into your serial port
01:07:01HClas far as i know anyways
01:07:04HCli'm not a hardware person
01:07:26amiconnThis darn simulator drives me crazy :(
01:07:32HCl :/
01:07:44*HCl hands amiconn a hammer and a magnet "threaten it with this"
01:08:05HClcomputers are scared of magnets *nods*
01:08:17amiconnWhy the **** does the X11 simulator not seek correctly in a file, while the win32 simulator does ??!???
01:08:47amiconnOn the other side, the codecs work in the X11 sim, and they don't in win32
01:09:02HCldon't forget rockboy
01:09:23amiconnCould please someone with a real Linux (or other unix) box try my test plugin, and tell me whether it works in the x11 sim?
01:09:56HClwell, i can run it through vnc.. but i want to get this dynarec block to work first..
01:10:08 Join prethom [0] (
01:10:13prethomdamn it to hell
01:10:55amiconnIt does a somewhat silly thing - it writes a test file while lots of 'A', 'B' and 'C' and one 'X', but with seeking in between. If it does it correctly, the file should be 15 KB.
01:11:21amiconnMy X11 sim makes a file 25 KB + 1 byte....
01:11:47prethompreglow: get lost
01:12:20amiconnpreglow: Register your nick with freenode, then you can ghost your alter ego..
01:12:34hubblesimple wave test
01:12:44prethommy alter ego hasn't timed out yet
01:12:54 Join le915 [0] (
01:12:58asdsdoh man all this sounds so complicated
01:13:12amiconnYeah, timeout can take long on freenode.... I observed up to 20 minutres
01:13:22le915u guys ever consider making rockbox for the Dell DJ?
01:13:50le915the Gen1
01:14:02HClcan anyone confirm that move.l d0,-(sp) is the correct way to push a register onto the stack?
01:14:05asdsdspeaking of alternate mp3 players
01:14:09le915noone has done anything with the dell yet, and its bumming me out
01:14:30asdsdis there a rockbox-ish project going on for the ipods? thats not linux?
01:14:35prethomHCl: it is
01:14:38le915i hate ipods
01:14:40HClprethom: thanks
01:14:47le915irives kick butt though
01:14:47asdsdi do too, but i was just curious
01:14:49prethomHCl: at least it should work
01:14:57HClyea, its my current encoding of a push
01:15:03HCli think my assembly looks semi correct now
01:15:13le915would it be hard for them to port rockbox to the dell DJ?
01:15:28prethomle915: wouldn't know until we see some hardware specs
01:15:50le915i could get em for ya if you like
01:16:19prethomi'm not really interested, i've got my hands full with h120
01:16:32asdsdso is there an rockbox-ish project going on for the ipod?
01:16:53le915are you a main developer prethom?
01:17:31prethomle915: no, i've just gotten involved
01:17:39le915oh i see
01:18:08le915well please suggest that to the main developers :)
01:18:14prethombut porting to a new platform is a time consuming task, i'll tell you that much, and we're in the middle of one ;)
01:18:28prethomin fact, we're in the middle of several
01:18:37 Quit muesli_ ("ich will Kühe!!!")
01:18:48asdsdthe h120 is really coming along strong
01:18:55asdsdu guys really are doing a great job at it
01:18:58 Part hubble
01:19:10le915how do u load the GB roms on there?
01:19:17le915just load em to the HD?
01:19:43prethomle915: with a bit of luck, you just load them onto the hd, and then select them like any other file
01:19:48prethomle915: rockboy should load
01:20:02prethomassumes you've the viewer list set up correctly
01:20:12le915what would happen if i loaded your stuff on my mp3 player, would it kill it?
01:20:18amiconnhahaha :( With the old build system, it's the other way 'round. The X11 sim seeks correctly, while the win32 sim doesn't work at all (can't open file) . The latter was expected though...
01:20:48HClthere is no working build of rockboy from my side at the moment.
01:20:51prethomamiconn: sounds like you've got yourself some fun there
01:21:33amiconnI don't really consider this fun; I simply want these simulators to work, so I can test rockboy on them :(
01:21:56amiconnpreglow: Don't you have a linux box?
01:22:17 Join muesli- [0] (muesli_tv@
01:23:30HClthats just lame. things crashing on a debug snprintf :/
01:23:43HClamiconn: i can test it
01:23:59HClwith a little trouble
01:24:01prethomamiconn: i'm using one right now
01:24:42prethomamiconn: but you should be pretty certain you don't have any 64 bit issues first, heh
01:25:05prethomits amd64
01:25:27amiconnI don't use any 64 bit thingies. It's a plain simple file operations test
01:25:45prethomjust give me simple directions
01:26:11amiconnThere's something wrong with the file ops in the X11 sim, and I want to figure whether it's just cygwin or a problem with the new sim build system
01:27:29amiconnHCl ??
01:27:31prethomamiconn: but ok, just try a plain x11 sim build?
01:27:55amiconnprethom: It's a single plugin. Simply add that to apps/plugins/SOURCES, compile & run in the X11 sim. It should create a file in the archos/ dir
01:28:04amiconnJust tell me how large it is.
01:30:04 Quit DMJC ("Leaving")
01:30:06HClamiconn: my next unimplemented opcode :)
01:30:16HCldynarec successfully compiled and ran the first two blocks of code
01:30:23amiconnNice :)
01:30:45HClits still fairly inefficient
01:30:53amiconnI guess there's quite some work for me to do once I start porting it to SH1...
01:31:04HCli'm not even sure how much faster it'll be :/
01:31:10HClbut its fun to make nonetheless.
01:31:19 Quit le915 ("Chatzilla 0.9.67 [Firefox 1.0/20041109]")
01:31:20prethomok, now for installing all missing libs
01:31:28HClit'll get faster once i optimize its memory routines
01:31:30amiconnHow do you know about the efficiency?
01:31:46HClmemory accesses are really expensive at the moment
01:31:47amiconnI mean, without the complete implementation...
01:31:58amiconnprethom: Missing libs?
01:32:10HClwell, ofcourse i haven't implemented all the possible optimization yet
01:32:20HClin the end, it should be faster. i'm mostly worried about the slow ram of the iriver
01:32:33amiconnIs it really that slow?
01:32:36HCli dunno
01:32:39HClpeople make it seem that way
01:32:42asdsdhey i got an idea, how about with the 20k i raise i bribe some of the iriver core engineers to help the rockbox project
01:32:58amiconnThe archos has fast page mode ram. Accesses are 1 cycle as long as the page is open
01:33:01HClsounds good to me :P
01:33:04prethomamiconn: well, i bumped into a amd64 issue right away
01:33:09amiconn(only 16 bit wide data bus though)
01:33:22prethomapparently plugins aren't compiled with -fPIC
01:33:52prethomi've gotten this with other libs as well
01:33:56amiconnWhat does fPIC mean, btw?
01:34:05prethomposition independent code
01:34:16prethomeverything dynamically loadable needs it
01:34:20prethomin what makefile do i add it?
01:34:31amiconnWell, the plugins are libs, so they should get relocated on load (?)
01:34:45prethomyou still need -fPIC while compiling
01:34:52 Quit Sucka ("a bird in the bush is worth two in your house")
01:34:54amiconnI guess it is needed in apps/plugins/Makefile
01:35:02prethomLD /home/thomj/rockbox/rockbox/build/battery_test.rock
01:35:02prethom/usr/bin/ld: /home/thomj/rockbox/rockbox/build/battery_test.o: relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC
01:35:30amiconn..and maybe apps/Makefile as well, or does the main simulator binary work?
01:35:42HCldarn. *forgot something*
01:35:51prethomamiconn: we'll see
01:37:01 Join Sando [0] (
01:37:54prethomi don't bloody well know which parts need it, but the codecs complain as well
01:38:42prethomfabulous, i added it, and it still complains
01:39:01amiconnMaybe you need this in tools/ ?
01:39:47prethomlet's see
01:40:20prethomstill refuses to work, i think you're better off getting someone with a 32 bit box to try it
01:40:36amiconnHmm, maybe.
01:40:45amiconnHCl ?
01:42:12 Join BBub [0] (
01:43:01 Quit methangas (" HydraIRC -> <- The future of IRC")
01:46:58HClamiconn: i forgot to move d0-d6 to d1-d7..
01:47:45 Join muesli_ [0] (
01:47:50HClyou mean
01:47:53HClsure, sorry XD
01:47:59HClsend again?
01:48:06*HCl wasn't paying attention
01:49:49 Quit muesli- (Read error: 104 (Connection reset by peer))
01:51:13asdsdhey guys good news
01:51:51asdsdthe Association for Girl Scouts of America have agreed to sell cookies to fundraise the rockbox project
01:51:57asdsdanyone likes chocolate chips?
01:52:12*HCl scratches his head and watches the simulator compile crash on his mkdir addition for rockboy, gets it out..
01:52:29asdsdHCl maybe some cookies would relax you?
01:52:34asdsdor maybe a girl scout might do a better job ;)
01:52:56prethomhahah, i thought you tried to maximize coder performance ;)
01:53:00HClwho needs to relax when you have caffeine :p
01:53:05prethommight as well just send crates of beer then
01:53:20*prethom prods preglow
01:55:38asdsdwell if u want the opposite effect of relax, i believe a girl scout can also do that job very well ;-)
01:56:01HClnow it crashes when compiling rockboy.
01:56:29*amiconn is puzzled
01:58:30HClinline m68k asm.
01:58:36HClobviously, that doesn't work in the sim.
01:58:45 Join ashridah [0] (
01:59:26amiconnNope. That's why I surrounded all my asm blocks with #if CONFIG_CPU = SH7034 && !defined(SIMULATOR)
01:59:51amiconn..and there is always an #else with C code
01:59:54HCli ran it
01:59:58HClwhats it supposed to do
02:00:11amiconnThere should be a .txt file in archos/
02:00:17amiconnHow big is that?
02:00:40amiconnHrmpf, so it works on Linux...
02:00:50*amiconn is even more puzzled
02:00:59prethomdon't be, cygwin is shite ;)
02:01:33prethomat least compared to the real thing
02:01:39prethomi never quite did get it to work
02:01:42amiconnWhy is that? It works on Linux/X11 and Win32 with the new build system, but not on cygwin/X11
02:02:02amiconnBut it works on cygwin/X11 with the old build system...
02:02:31prethomwell, something obviously gets linked to the wrong thing
02:02:47prethomqueer it works in linux, though
02:03:07amiconnYeah, it seems the cygwin linker is easy to confuse.
02:03:23amiconn(Although this is the gnu linker after all)
02:04:18prethomthings like link order are _very_ important
02:04:56amiconnThe plugins in the X11 sim are *smaller* with the new build system than with the old...
02:05:53amiconnThough the win32 equivalent is still way smaller, and these work...
02:06:03prethomwhy should they be smaller?
02:06:19amiconnHmm, I don't konw, but they are...
02:08:00prethomwell, compare symbols
02:08:38prethomsomewhere something has to be bigger
02:08:56prethomand i don't quite get why the build system should make a difference
02:10:49amiconnYeah, it shouldn't, but it does. That's what puzzles me
02:12:07markunI got greyscale pretty much working, but lcd_bitmap is very slow because I now implemented it with a lot of lcd_drawpixels.
02:12:57prethomhow are we supposed to support several display types transparently?
02:13:46prethomamiconn: you weren't kidding with the time outs on freenode
02:13:52prethomit's been an hour
02:14:10HClas easy as 3.141592...
02:14:15preglowsmall wonder
02:14:18preglowscreen is still running
02:14:20 Quit preglow ("leaving")
02:14:38*prethom slaps himself
02:14:41rashergood job :)
02:14:46 Nick prethom is now known as preglow (
02:16:34preglowenough foolishness for one day, i'm going to bed
02:16:47 Quit preglow (".")
02:19:07 Join fuzzie [0] (
02:19:27 Quit muesli_ (Read error: 113 (No route to host))
02:23:00markunToo bad the iriver LCD doesn't use bitplanes..
02:24:06markunI would make displaying mono bitmaps a lot easyer and faster.
02:26:33*HCl yawns.
02:28:54markunSee you guys tomorrow
02:29:11 Quit markun ()
02:35:30*HCl is about to fall asleep as well.
02:35:53HCldynarec is progressing nicely
02:39:51 Join muesli- [0] (muesli_tv@
02:47:20amiconnI guess I know what causes the cygwin X11 problems...
02:52:46 Join Hohoman [0] (
02:56:29amiconnHrmpf. Anyway, I need to sleep...
02:56:47 Part amiconn
03:00:30 Join Lost-ash [0] (
03:00:46 Quit ashridah (Nick collision from services.)
03:00:51 Nick Lost-ash is now known as ashridah (
03:01:17***Saving seen data "./dancer.seen"
03:09:01HCli don't like xor. night.
03:11:12 Quit XShocK (" HydraIRC -> <- State of the art IRC")
03:13:55asdsdwhat component of the iriver is dynarec?
03:16:01 Quit BBub (""Fange nie an aufzuhören. Höre nie auf anzufangen." - Tiki")
03:20:18 Quit muesli- ("ich will Kühe!!!")
03:29:36 Join Fofito [0] (~holailo@
03:45:11 Quit _aLF ("Leaving")
03:50:23 Join midk [0] (
03:56:40 Part Fofito
04:05:34 Join QT_ [0] (as@area51.users.madwifi)
04:12:34ashridahasdsd: dynarec is dynamic recompiling. it's specifically for gnuboy, since all of the rest of iriver is targeted at the coldfire cpu to begin with, and doesn't actually need recompiling :)
04:22:22 Quit QT (Read error: 110 (Connection timed out))
04:24:48 Part Hohoman
04:32:38 Quit midk (Read error: 54 (Connection reset by peer))
04:36:29asdsdhow is dynamic recompiling different from say coding something and then compiling it?
04:36:36asdsddynarec wud be like emulation?
04:39:27ashridahdynamic recompilation is a method of converting code from one target to another in order to get better performance, instead of a straight 1:1 instruction conversino
04:43:19ashridahit's going to be emulation either way
04:43:24ashridahit's just a method of getting better performance
04:52:34ashridahbasically, in this instance, it'd be used to convert the gameboy's code in the rom into something the iriver can process faster
05:01:20***Saving seen data "./dancer.seen"
05:12:48 Join Kim69 [0] (
05:16:36 Quit Kim69 (Client Quit)
06:09:20 Join midk [0] (
06:17:50 Quit YouCeyE ("Leaving")
06:35:07asdsdthx ash
06:49:21 Join YouCeyE [0] (foobar@youceye.user)
06:54:05 Quit YouCeyE (Client Quit)
07:00:15 Join YouCeyE [0] (foobar@youceye.user)
07:01:09 Quit midk ("Leaving")
07:01:24***Saving seen data "./dancer.seen"
07:11:19asdsdwouldn't it be slower if it has to dynamically recompile the rom to run it in a faster way? rather than just run it in the slow way?
07:13:48ashridahasdsd: it's a balance, certainly.
07:15:05ashridahthe idea is that if you recompile a piece of code once, then rerun it a few thousand times a second (for, say, drawing to the screen), you save, so you identify common often used routines and have the dynarec code replace them with faster hardware specific variants
07:15:15ashridahthe exact approach depends a lot on the original code
07:15:29*HCl grumbles.
07:15:45HClflatmates with the iq of a caveman suck -.-
07:15:53ashridahif i recall earlier conversations, nintendo gave developers a common library to use, and replacing the common code in the library will be a general optimisation that always works. i'm not sure if this is the case for the gameboy tho
07:16:10HClhe's such a jerk, making noise at 7 am on a fucking sunday u.u
07:16:14ashridahHCl: just stick a waffle to the ceiling and call it god. that'll keep them entertained in sacralicious style
07:17:08*HCl grrrs and goes back to sleep and dreaming about assembly (i seriously need to not work on dynarec today)
07:23:14HClfucking neanderthal u.u.
07:27:03 Join StrathAFK [0] (
07:33:48 Quit ashridah (Read error: 60 (Operation timed out))
07:41:42 Quit Strath (Read error: 110 (Connection timed out))
08:33:39 Join ashridah [0] (
08:38:34HClcan someone explain what kind of instruction 36: e9c0 26c1 bfextu %d0,27,1,%d2
08:38:42HCland why its not in the coldfire manual
08:39:41ashridahsounds like one of the branch instructions.
08:40:09HClbit field unsigned extract..
08:41:03HClBe careful, this instruction operates from MSB to LSB!!
08:41:06HClwth does that mean?
08:42:01 Join amiconn [0] (
08:42:24ashridahmost significant bit to least significant bit.
08:42:42ashridahie, the msb is the first flag, the lsb is the last flag
08:43:05ashridahif it takes a numeric offset into the bit field, that's where itcounts from
08:43:14HClyea, it does.
08:43:38HClits not in the coldfire manual, but gcc made it for me when i told it to optimize a piece of code
08:44:34HCli must say i'm a bit confused about the code that gcc generates..
08:45:24ashridahare you compiling with -O0 ?
08:45:39ashridahor -O2 ?
08:46:38HClit manages to do a=((2*b)&0xFF) ? 0 : 0x80 |
08:46:38HCl (0x20 & (((2*b)&0xFF) << 1)) |
08:46:38HCl ((2*b)&0x10)>>4;
08:46:42HClin 14 instructions
08:46:47HClwhich is pretty ok
08:47:02HClbut i'm having trouble understanding its code
08:47:02ashridahlooking at the code OPTIMISING gcc generates is probably an exercise in futility.
08:47:15ashridah-O0 will follow the code you wrote
08:47:22ashridahbecause it's optimising ;)
08:47:29HClyes, well, i want it to optimize O.o;
08:47:46HClcause my implementation of the same code would be far less effecient
08:47:50ashridahnot while you're picking it appart
08:48:07HClno, i do want to optimize it o.o i need to know a good assembler way of doing it.
08:49:13HCli could ofcourse just slap the gcc output into my dynarec, but i prefer to know how it works first
08:49:30amiconnashridah: That's the strangeness of gcc: Sometimes it generates ultra-cleverly optimised code, and in other places it uses plain stupid code that's easily optimised to double speed by hand. That's my own observation, with -O1 on sh
08:49:52ashridahi didn't say gcc was GOOD
08:51:45HClanyone around with a tiny bit of time who might be able to explain how this block of code works?
08:55:57HClguess not, ok :x
09:01:25***Saving seen data "./dancer.seen"
09:05:02ashridahperhaps we could if we knew the code in question :)
09:07:25 Join LinusN [0] (
09:07:51HClwell, its over 15 lines, didn't want to blurt it into the channel
09:07:53HClbut its ok
09:08:01LinusNHCl: if the compiler emitted the bfextu instruction, then you have found a bug in gcc, or you are building for the wrong target
09:08:30ashridahso toss it into a text file and show us
09:08:41 Quit hile ("leaving")
09:09:04HClLinusN: darn, that might be so.
09:09:21*HCl goes to look up compiler flags for coldfire
09:09:26 Join hile [0] (
09:09:30 Join methangas [0] (
09:10:17LinusN-m5200 -Wa,-m5249
09:12:01HClokay, no harm done, it still gets about the same amount of instructions
09:13:01 Join cYmen [0] (
09:16:07 Part LinusN
09:47:35 Join markun [0] (
09:48:31markunHCl: Does rockboy draw the screen using lcd_drawpixel?
09:48:36 Join pillo [0] (
09:50:09HClmarkun: no
09:50:26HClbut iriver being in 2bit mode should actually make it faster
09:51:17amiconnI don't think so
09:51:19markunI got grayscale working. I will send a picture once my digital-camera-owning-flatmate wakes up.
09:51:28amiconnImho the speed won't change
09:52:36markunamiconn: I now made lcd_drawpixel_color(x,y,c). You told me once not to do this, should we have lcd_set_color(c) and lcd_drawpixel(x,y)?
09:53:35amiconnWe need to keep an eye on size (not specifically for iriver, but for archos and maybe others)
09:54:08amiconnMy suggestion is still to have some drawing states, and a foreground and background "colour"
09:54:38 Join R3nTiL [0] (~zorroz@
09:55:14amiconnThis is also adaptable to b&w, and will imho even produce smaller binaries
09:56:23amiconnLook at the grayscale lib. This has 4 drawing modes, draw_foreground, draw_background, draw_solid and draw_inverse
09:56:53amiconndraw_foreground and draw_solid are identical for single pixels, they draw the pixel in the foreground colour
09:57:04markunok, so draw_background is like draw_clear
09:57:28amiconndraw_background draws the pixel in the background colour, and draw_inverse does a bitwise invert
09:58:20amiconndraw_background is like today's clear_* routines for b&w, as long as we consider the 2 "colours" as fixed
09:58:35markunI will have a closer look at your grayscale lib.
09:58:41amiconni.e. foreground = black and background = white
09:58:59amiconnThe grayscale lib allows you to set these individually
09:59:45amiconnThe differentiation between draw_foreground and draw_solid becomes clear when you look into fonr drawing
09:59:47 Join midk [0] (
10:00:03markunAnother thing: lcd_bitmap is now implemented using draw_pixel. It's very slow. I can make a lcd_bitmap_2bit (or something) which is just like the old lcd_bitmap.
10:01:14amiconnWe still need to process 1 bit input bitmaps. So for displays with > 1 bit, imho we need 2 routines. Again, the grayscale lib example:
10:01:57amiconnThere is gray_draw_bitmap(), which draws an 1-bit bitmap, using the selected foreground and background colours and the draw mode
10:02:47amiconnThen there is gray_draw_graymap, which draws a full grayscale bitmap, i.e. the source bitmap uses 1 byte per pixel
10:04:42amiconnBoth routines should of course be optimised for the actual lcd, imho this is why Linus decided to use a separate lcd driver file for iriver (planning for 2-bit support)
10:06:19markunlooking ahaid: if we ever want anti-aliased fonts on iriver it would be more efficient to have a draw_graymap that expects 2-bit bitmaps.
10:06:34 Quit R3nTiL ()
10:07:36amiconnI'm still unsure whether anti-aliased fonts make sense on a mobile unit, but if we go for it, I'd suggest to use a more universal format, i.e. 1 byte/pixel
10:08:17markunThat would make for very large fonts of cource. But during the loading of the font we could convert the bitmaps of course.
10:08:23amiconn(Thinking further ahead, e.g. gmini 220 has 4-bit greyscale, iRiver H3xx even has colour
10:09:46amiconnmarkun: A propos large fonts: iirc you were working on unicode support. How much binary size does that add?
10:10:20amiconnAnd did you have a look at font caching? There is a chinese rockbox patch in the tracker that uses font caching.
10:10:35*HCl sighs.
10:10:41HClthis gcc code *cant* be correct :(
10:10:50markunIt depends what the difference between the first and the last char code in the font is. max_bitmap_size * (last_char - first_char)
10:11:21markunYes, I looked a bit at font caching, but I am still thinking of the best way to do it.
10:11:26amiconnNo, I don't mean the font size, I mean code size
10:12:02amiconn(Thinkingn about adding that to rockbox in general, including the archos units)
10:12:19HCli'd appreciate it if someone would look at it and might be able to explain to me why exactly those two things are equal
10:12:51amiconnmarkun: Unicode should be even possible for the players to some extent, if you followed the forum thread for russian support on players...
10:12:55markunI made a small unicode.c that added some code, but I also got rid of the unicode2iso table and funcitons.
10:13:06 Nick QT_ is now known as QT (as@area51.users.madwifi)
10:13:08markunNo, I did not follow that.
10:14:33amiconn(code size). Okay, what's the net size change, i.e. rockbox.iriver with/without unicode support?
10:14:33*markun is reading the forum thread
10:16:13markunWell, I don't have a completely clean rockbox, but the unicode version is actually smaller than my grayscale (without unice)
10:16:28markununicode:-rw-r−−r−− 1 karl karl 160936 Feb 27 09:41 rockbox.iriver
10:16:40markungrayscale -rw-r−−r−− 1 karl karl 159912 Feb 25 00:06 ../../../rockbox-unicode3/builds/iriver/rockbox.iriver
10:17:54amiconnHmm. This looks like the unicode version is about 1K larger than the grayscale verion
10:18:11amiconn*version even
10:18:53markunNo, I made a mistake. The first one is grayscale and the second one in unicode.
10:18:59amiconnAh ok.
10:19:09markunWo big is your rockbox.iriver?
10:19:40amiconnI have no rockbox.iriver as I have no iriver.
10:19:57amiconnI do compile for various archos units
10:20:32markunHCl: Do you have a rockbox.iriver compiled from a clean cvs?
10:20:33amiconnThese are naturally a bit larger, because of the whole playback code being there
10:22:21HClmarkun: no
10:23:09amiconnThe current archos fm/v2 recorder binary is almost 184 KB (187984 bytes). There is a hard limit of 200 KB for archos firmwares
10:23:24markunamiconn: I send you a patch, can you take a look at it?
10:24:23amiconnYeah... I really like to, but I don't know whether I manage to do so. My time is limited, and I'd really like to get the simulators working correctly first.
10:24:41markunok, no problem.
10:32:23amiconnHmm. The unicode patch makes utf-8 default, correct? That means, the .lang files need to be converted to utf-8, and we'd need a new convbfd tool thta creates unicode font?
10:33:34amiconnOf course lcd-recorder.h and the player lcd handling also needs attention
10:33:58markunYes, UTF-8 is default now. convbfd still works for latin1 and unicode fonts.
10:34:25markunI also changed lcd-player.c, but the changes are not included in the patch.
10:35:10markunIt worked ok in the simulator.
10:35:43amiconnBah, I'm writing bullshit. Of course it is convbdf, lcd-recorder.c ...
10:36:51amiconnHmm. Perhaps I should try that patch in a separate cvs checkout...
10:37:13markunMy writing's also terrible. I even picked up convbfd from you :)
10:38:46 Join Chamois [0] (
10:39:22amiconnconvbdf works correctly for unicode? I'd need a small unicodifed .fnt for testing. It should contain cyrrilic, and I'd also like to have russian.lang in utf-8 (the latter should be easy)
10:40:24markunI have a font of 5x7 that is 8KB in size..
10:40:41amiconnNo standard 6x8?
10:40:44markunAnd a 6x13 font that is 20KB.
10:41:20markunNo, but I could also make a 5x8 or 6x10 if you want.
10:42:38amiconnI'll compile first, let's see how large the binaries get.
10:42:59markunDo you want my unicode.h too?
10:43:18amiconns not in the patch?
10:44:22markunWhich of the fonts do you want? 5x7, 5x8, 6x10 or 6x13?
10:44:54amiconnPlease send 5x8 and 6x10
10:45:09amiconnWhere do I put the single files, i.e. unicode.[ch]
10:47:21markunin .c in firmware/common .h in firmware/include
10:48:33markunBoth fonts should contain glyphs up to about code 1500
10:49:07markunFor what target are you building now?
10:50:10 Join hubble [0] (
10:51:37amiconnmarkun: I'll try recorder
10:51:54markunIt doesn't have utf-8 support yet.
10:52:08amiconn(already replicated the changes from lcd-h100.c to lcd-recorder.c)
10:52:12markunok :)
10:53:36markunI made a nice russian utf-8 language file just for you
10:56:35 Join LinusN [0] (
10:56:48markunHi LinusN
10:57:33LinusNhey ho
10:59:07markunLinusN: I wrote you an email about my cross compiler problem on FreeBSD. Did you get it? I'm not in a hurry to get it fixed, so if you don't have time it's no problem.
10:59:30markunamiconn: did it compile?
10:59:41amiconnNo, not yet.
11:00:00amiconnNow it does... there are warnings though
11:00:53markunYes, I know. The compiler is not happy the way I use const trings.. or are there more warnings?
11:01:26***Saving seen data "./dancer.seen"
11:01:42amiconn4 warnings about discarding qualifiers (const)
11:02:35markunI have some commented out code in unicode.h where I tried to fix those warnings.
11:02:39amiconnUnicode support adds 500 bytes so far. Not bad.
11:03:04markunfont caching will add some more..
11:03:11amiconnYes of course.
11:03:32amiconnIt looks that this is manageable for the archos too
11:04:26LinusNmarkun: i had the same problem once with cygwin
11:04:46LinusNbut i don't have a clean solution for it
11:04:50amiconnmarkun: Wow, this really eats buffer space
11:05:57markunLinusN: well, for now it compiles and works (at least on iriver)
11:06:03markunamiconn: Does it eat too much?
11:07:19markunamiconn: did the russian language file work?
11:07:32amiconnHmm, no it doesn't :(
11:07:50amiconnThe menus are all empty, I need to navigate blindly...
11:08:01markunStrange. Did you load the font?
11:08:49markunLet me check here..
11:12:10markunI now get: Language /russian-utf8.lng too large: 7000
11:12:27markunMaybe that's the problem?
11:18:56markunIn apps/language.h you need to change MAX_LANGUAGE_SIZE to something bigger than the russian.lng file.
11:19:31markunI had to do a make clean to get it working.
11:21:39 Part LinusN
11:22:47amiconnI did a fresh build, and the .lng actually loaded.
11:23:26 Join _aLF [0] (
11:23:37amiconnOtherwise I wouldn't have gotten an empty menu. Reloading english.lng or deutsch.lng restores everything back to normal
11:25:27amiconnThe utf-8 handling itself seems to have problems. Maybe I copied something wrong from lcd-h100.c
11:29:07amiconnHmm. It looks just right...
11:33:38markunCould you still see the files on your archos?
11:35:23markunCan you put a russian file on it?
11:36:59markunThe textviewer now also only displays utf-8 text, so you could test it with that as well..
11:43:00amiconnGotta run... sorry, later :)
11:43:10 Part amiconn
11:45:10 Part hubble
11:57:22 Quit markun ()
11:59:09 Join preglow [0] (
12:01:17 Join muesli- [0] (
12:07:02 Join Patr3ck [0] (
12:38:22 Join Sucka [0] (
12:54:32 Join DMJC [0] (
13:00:06 Join amiconn [0] (
13:01:30***Saving seen data "./dancer.seen"
13:07:21 Join markun [0] (
13:07:36markunamiconn: Do you have time to do some testing?
13:07:48amiconnAny news?
13:08:25markunno news. I'm trying to study a bit.
13:10:15markunBut it's hard with all these rockbox ideas in my head.
13:10:35preglowno shit
13:10:53amiconnHmm. I'll try a cyrillic filename. Just need a method to create one
13:11:15markunCan I send you one over irc?
13:11:38amiconnI think this won't work. Irc doesn't handle unicode...
13:12:05preglowit does if both ends use utf8 charset :P
13:12:18preglowirc is charset agnostic
13:12:24amiconnYeah... but windows uses utf-16 for filenames
13:12:27markunI do, do you amiconn?
13:12:48preglowwindows uses ucs16, not utf
13:13:55markunucs-2, no?
13:14:02preglowahh, yes
13:14:42markunI used the UTF-16 decoder to convert the fat filenames. Also works with UCS-2 of course.
13:15:51markunamiconn: do you have the textviewer? I can send you a file with some utf-8 in it.
13:16:02*preglow pats utf-8
13:16:20amiconnDoes the textviewer need any change? I guess not...
13:16:40preglowamiconn: have you looked at the proportional font support patch some guy sent?
13:17:41amiconnI won't do any major commit until I have those simulators working.
13:19:30markunamiconn: No, textviewer works without changes.
13:20:04amiconnNow I have a file with a russian name...
13:20:22markunI also sent you a unicode.txt file
13:20:35amiconnHmm. All cyrillic characters show up as spaces....
13:20:49markunThe font did change?
13:21:01amiconnAh, I forgot something...
13:21:37amiconnHmm, it's the same with the font you sent me :(
13:22:50markunWhere could it go wrong? Decoding in fat.c or displaying or font loading?
13:22:54amiconnOoops, this font can't be loaded completely. It's 147 KB
13:23:06markunAh, I sent the wrong one?
13:23:16amiconn6x10.fnt: 147 KB
13:23:27markunI'll send you the right one..
13:24:34markunWhat version of 5x8 did I send? Also without -stripped?
13:25:11amiconn5x8 is stripped, and works for file names
13:25:39markunGreat, than it's probably just updating MAX_LANGUAGE_SIZE in language.c
13:25:56markunHope your archos has any memory left..
13:26:01amiconnNew 6x10 works too.
13:26:10markungreat, and the unicode.txt?
13:26:43amiconnHmm. deutsch.lang needs to be utf-8 converted too in order to work.
13:26:53markunYes, of course.
13:27:03rasherI expect many of them do
13:27:19 Quit midk (Read error: 54 (Connection reset by peer))
13:28:21amiconn(unicode.txt) Hebrew, Greek and Russian work, Arabic and Japanese don't. Probably these glyphs are not included...
13:28:45markunhebrew is not great too, left-to-right..
13:28:55 Join lImbus [0] (
13:28:58lImbushi all
13:29:16markunI send a new deutsch.lng
13:29:17rasheramiconn: dansk?
13:29:25markunIt's small enough
13:29:45markununicode is fun :)
13:29:51lImbuswow. a thousand never heard nicknames in here :-)
13:30:12amiconnrasher: I guess all .lang files need to be converted, except english.lang perhaps
13:31:06markunamiconn: Did you try deutsch-utf8.lng?
13:31:08amiconnmarkun: With the correct font, russian menus work partly. How much do I need to increase MAX_LANGUAGE_SIZE?
13:32:04markunWell, russian.lng is about 10KB, I put it to 20KB on my iriver, but you could use less.
13:32:04lImbusamiconn: I see the 2.5-release is overdue if rockbox still wants to issue new versions every second month.
13:32:35amiconndeutsch-utf8.lng works, although I see some other places need adjustment to unicode
13:32:41lImbusI don't know how far multivolume and hotswap is going, but I think the tag database is worth a new version-
13:32:56markunReally? What kind of adjustments?
13:33:17amiconnThere is the recorder button bar, and the F1 text "Menü" is no longer centered.
13:34:15markunmaybe it uses strlen?
13:35:24amiconnYes it does.
13:35:38amiconnapps/status.c, line 297
13:35:49amiconntext_width = fw * strlen(caption);
13:36:03amiconnThis is of course wrong with unicode
13:36:18amiconnI suspect more such places, e.g. the recorder quickscreens
13:36:50markunIt should use lcd_getstringsize
13:37:09markunAlso because of variable-width fonts.
13:37:10amiconnThis is a bit dirty anyway, since it assumes no-proportional font
13:37:38amiconnHowever, the builtin default font is fixed width for good reasons
13:38:16amiconnIt is used in a few other places in a way that assumes fixed width, and would need significantly more code for proportional support
13:38:32amiconnOne such example is the virtual keyboard
13:38:53markunWhat will the virtial unicode keyboard look like? :)
13:39:08amiconnYeah... that's a real problem
13:41:35markunI wonder what a chinese keyboard look like..
13:41:36amiconnOoops... the credits list also needs utf-8 conversion. Otherwise Björn might not agree to add unicode support ;)
13:43:06markunamiconn, do you know yudit, the unicode editor?
13:44:06amiconnI guess that we need a configuration file for the keyboad, depending on language
13:44:46markunIt has a lot of input-methods. Select japanese for example and type in konnichiwa and there you have your japanese text..
13:45:52markunamiconn: The textviewer also needs some charset translation routines, or should we forse everyone to use UTF-8 text files? :)
13:46:41amiconnAgreed. I'd think most western text files still use latin1.
13:46:57markununicode.c has a latin2utf8
13:47:18amiconnHowever, that'd mean to make it configurable, or add some kind of auto-detection (if at all possible)
13:47:19markunno, it's called latin1encode
13:47:57markunCheck the first x bytes. If it contains invalid UTF-8 chars switch to latin1..
13:48:04amiconnutf-16 can be auto detected by the endian marker, but what about utf-8? I'm not that much into unicode details...
13:48:43markunIt can be detected. No problem.
13:49:06amiconnBut I agree that unicode support in rockbox is definitely a move forward, and that utf-8 is the way to go.
13:49:11markunBut if you have a lot of ascii and the latin1 stuff is at the end of the text we have a problem..
13:50:23amiconnIt still needs some work though, as it has to work with all units. The archos recorders are not the biggest problem, they just need some font caching.
13:51:05amiconnFont caching will be necessary anyway for languages with a big glyph range, like chinese
13:52:02amiconnThe players are a bit harder, since they should also handle unicode as far as possible.
13:52:34preglowso you have to redefine the display font on the fly? :/
13:52:49amiconnThe player lcd code already does this
13:53:25amiconnHowever, it's not possible to show only redefined chars - there are only 8 (or even 4 with the old lcd)
13:53:50amiconnIt uses some very clever dynamic remapping & replacing
13:54:44amiconnOf course it will never handle the full unicode range, but I think it's possible to handle at least latin-1 (as now) plus cyrillic and greek to some extent
13:55:24markungreek with only 4 or 8 chars to redefine will look a bit strange. But with some practice it's probably readable :)
13:55:27preglowi've got a lcd just like that
13:55:44amiconnThere are some greek chars already defined
13:55:55preglowseems like most lcds are pretty similar
13:56:43amiconnThe plus side is that although only 8 chars can be redefined, the whole lcd can only show 22 chars (2 lines 11 chars each), so 8 out of 22 isn't too bad
13:57:04preglowahh, it's that small
13:57:07amiconnPlus, I intend to exploit similarities.
13:57:08preglowmine is 8x16
13:57:36*markun goes back to study
13:57:56amiconnE.g. "H" is the usual latin capital h, as well as the greek capital eta and the cyrillic capital en
13:59:24 Quit ashridah ("sleep")
14:04:24 Quit DMJC ("Leaving")
14:05:37preglowpretty big differences
14:06:10preglowhow old are those models?
14:07:05amiconnHow do you mean? The players itself?
14:07:45amiconnThey are out of production for quite some time. Iirc the first ones were sold in 2000, but you can still buy them new at some places.
14:08:08amiconn(New as in unused and in original package)
14:09:23preglowhow does the driver handle it if there are not enough free user-definable characters to show what's needed?
14:09:57amiconnThis is explained in the mentioned page. It shows a replacement char instead.
14:10:33CoCoLUSwow :)
14:10:40amiconnThe characters are prioritised, so a more critical char or one with an especially ugly replacement can get priority
14:11:19preglowCoCoLUS: yeah, i saw, i'm just waiting for my box to be slashdoted :P
14:18:21preglowoh well, i prefer non-charcell based design
14:18:28*preglow pats his h120
14:19:04amiconnIt's still easier that this dreaded x11 simulator issue on cygwin
14:19:20amiconnlseek() simply returns with -1 and doesn't do what it should
14:19:38preglowi saw you commited a NOCYGWIN patch
14:19:41preglowwhat did that do?
14:20:03amiconnIt removed the NOCYGWIN define for the X11 simulator
14:22:21preglowwell, yes, but what does that do? :P
14:23:21amiconnThe NOCYGWIN define is, together with the -mno-cygwin machine option, a hint for the cygwin gcc to generate code that can run without cygwin1.dll
14:24:00amiconnIt generates a little bit larger binaries that are a bit less posix compatible.
14:24:22amiconnThis makes no sense for the X11 simulator on cygwin, because X11 needs the cygwin X11 server anyway
14:32:07webmindhm question: on what irivers does rockbox work ?
14:35:32preglowand depends on what you mean by "work"
14:35:59preglowit boots and works, but is not fully functional
14:56:01 Join edx__ [0] (
15:00:25 Join hubble [0] (
15:01:02hubbletrying to get recording to work, but no luck so frr
15:01:31***Saving seen data "./dancer.seen"
15:01:55hubblei'm trying to use dma although iriver firmware uses interrupt when recording
15:10:50 Quit edx (Read error: 110 (Connection timed out))
15:11:30hubblegoing to try and see if i can get interrupt recording to work
15:16:47 Part hubble
15:24:32 Join muesli_ [0] (muesli_tv@
15:25:56 Join R3nTiL_ [0] (~zorroz@
15:30:07 Quit R3nTiL_ (Client Quit)
15:33:04preglowwrong window
15:35:17Patr3cksomeone can help a newby to enable TIMER1 on the iriver?
15:36:26Patr3cktried to redefine tick count to use TIMER1 instead of TIMER0
15:37:11amiconnFor unix, is there a way to get extended error information from the system? I.e. when lseek() fails, can I get the cause for this somehow?
15:37:49fuzzieamiconn: check for -1 return and then check errno?
15:37:59amiconnYeah, I get -1
15:38:14amiconnWhat does errno tell me?
15:38:34preglowi'm trying to look it up but can't find it any more :/
15:39:04fuzzieperror(NULL) will print the text representation of errno on stderr
15:39:18fuzzieor strerror(errno) will give you a string
15:39:51amiconnBah, no errno for plugins :(
15:40:06amiconnBut I'll try that, in the main code...
15:40:24 Part amiconn
15:42:43 Nick edx__ is now known as edx (
15:42:52 Quit muesli_ ("ich will Kühe!!!")
15:45:42 Quit muesli- (Read error: 113 (No route to host))
15:57:59 Quit Patr3ck ()
16:02:11 Join muesli- [0] (
16:04:01 Quit markun ()
16:14:10preglowmy god, gnu/whater/linux has quite a way to go before it can be used for sound stuff
16:20:36 Join TexJoachim [0] (
16:23:20 Quit TexJoachim (Client Quit)
16:24:05 Join markun [0] (
16:25:10markungrayscale on iriver in action:
16:27:02markunNot very useful yet, but it works.
16:27:30lImbusis this the grayscale framework or is this just the 2-bit display beeing used
16:27:44markun2-bit display
16:27:53lImbuslooks good
16:28:11muesli-markun kewl! :-)
16:28:23markunIf you look closely at the black bar you can see '.rockbox' in dark-gray.
16:29:51lImbusI was able to play a bit around with a iRiver 340 last week. They (iRiver) did a good job in exhausting the color display for menu-stuff
16:31:51markunalso a lot of moving stuff in the menu of the h3x0 if I remember correctly.
16:32:08preglowmarkun: cool
16:32:25lImbusyes, animated icons and animations when moving one menu to another
16:33:20markunSoon we can play super mario in slowmotion with 4 colors :)
16:33:58CoCoLUShow many grayscales does the orig. gb have?
16:34:08muesli-4 r enough :-D
16:34:15markundon't know. HCl?
16:35:42pillomarkun: nice!
16:36:00preglowCoCoLUS: four, just like the h1x0
16:36:20preglowthe gb and the h1x0 are pretty good matches as far as the display is concerned
16:37:09muesli-and the super mario screenshots looked well enough for playing
16:52:45 Join Patr3ck [0] (
17:01:18 Quit Sando (Read error: 60 (Operation timed out))
17:01:18 Quit muesli- (Operation timed out)
17:01:32***Saving seen data "./dancer.seen"
17:10:54 Part pillo ("Kopete 0.9.2 :")
17:13:04 Quit rasher ("Remember, no matter where you go, there you are - a skwerl.")
17:24:40 Join muesli- [0] (muesli_tv@
17:25:15 Quit methangas (Read error: 104 (Connection reset by peer))
17:26:57 Quit Patr3ck ()
17:27:44 Join methangas [0] (
17:32:46HClyup, 2 bit color
17:32:50HCli mean
18:02:41CoCoLUSeverythings set for perfect gb emulation... just the dynarecs missing :P
18:03:38HCldynarec is working
18:03:42HClyou can help out if you like :P
18:03:45HClat the moment
18:03:56HCli'm puzzled to why the code gcc generates would actually be the same
18:04:25HClif anyone can explain that to me, i'll be able to continue with dynarec
18:05:06CoCoLUSseems actually everyone here is having his fair share of wonders with gcc :P
18:05:30HClwell, i'm trying to use gcc to create fairly tight and optimized code in the dynarec
18:05:42HClat the moment i don't see why gcc's assembly output would work at all.
18:05:56HCland while i don't, i'm not gonna bluntly type it over and feed it into dynarec
18:08:26preglowwhat's wrong with it?
18:08:40HClpreglow: i don't see how that assembly is equivalent with the code above it...
18:08:46preglowgimme a sec
18:08:48preglowbut btw
18:08:52HClespeciall the andil #129,%d3
18:08:55preglowgcc doesn't always produce optimal code for the coldfire
18:08:58HClwhich is supposed to be the flags.
18:09:05HClthats 0x81
18:09:09preglowi've caught it doing some pretty stupid stuff
18:09:12HClfirst of all, bit 1 of the flags is not used at all
18:09:28preglowlike loading an immediate into a register before using it to compare with an address register
18:09:31HClso that would limit it to only be able to set the zero flag
18:09:39HClwhich must be wrong.
18:09:47HClsince it needs to be able to set carry
18:09:56HCland halfcarry
18:10:02HCl a=(c) ? 0 : 0x80 |
18:10:03HCl (0x20 & (b ^ b ^ c) << 1)) |
18:10:03HCl ((2*b)&0x10)>>4);
18:10:15HClfirst line = zero flag, second line = halfcarry, last = carry
18:10:53HCland i seriously don't see that if you andi the flag register with 0x81
18:10:59HClhow you possibly could get a correct result
18:11:09HCli must be missing something vital
18:11:37preglowi'd do this by hand, where i you
18:11:54HCli was doing that.. but it was getting complicated and very inefficient...
18:11:59preglowas i said, it does not seem that gcc produces optimal code for coldfire
18:12:30preglowwell, studying optimized compiler output is complicated as well
18:12:34HClwell, i'm not talking about optimal... more about correctness...
18:12:43 Join XShocK [0] (
18:12:56HClcorrect me if i'm wrong but b^b^c == c, right?
18:13:14Chamoisxshoxk : news about recording ?
18:13:24preglowyou do know you can make gcc spit out asm, yes?
18:13:29preglowit's clearer than using objdump
18:13:33HClgee preglow
18:13:38HClonce again you proved i'm stupid
18:13:47HCli knew that, i just didn't think of it, and i don't know the flag for it
18:13:48HClwhat is it
18:13:50HClyes, that :p
18:13:53*HCl lags
18:14:42XShocKno, will start doing it today
18:15:27XShocKhcl: yes, it should be right
18:15:49HCl-S doesn't seem to be working
18:16:11HClit creates test.s, but its empty
18:17:17preglowit should work, damn it!"¤
18:17:21preglowi use it all the time
18:18:38preglowperhaps you use another flag that doesn't go well with it
18:19:29preglowwhat does halfcarry flag do?
18:19:56HCli'm not even sure about that
18:20:03HCli *believe* its a carry flag of the lower 4 bits
18:20:12preglowahh <-
18:20:15preglowmakes sense
18:21:37muesli-what is the idea for buffering? i mean, does rockbox buffers as long as there is free memory or does it care about those 32mb ram-module? i am thinking about exchanging the ram-module with a bigger one
18:22:10preglowHCl: but simple enough, reading compiler optimized code is a nightmare, why don't you just try it out on the player?
18:23:30HCli think i got something more useful
18:24:00preglowb ^ b ^ c ?
18:24:13preglowisn't b^b zero ?
18:24:14HClthat looks correct aside from the carry still being broken
18:24:21HClat least the halfcarry could work in theory now
18:24:29HClsince its not anding them away
18:25:01HClafk food
18:26:15XShocKpreglow: b^b is zero. and zero^c is c
18:26:45preglowjust found it relatively pointless to write b ^ b ^ c, heh
18:26:57XShocKmmm.. yes. :)
18:33:43HClyea, its just cause its a particular case of an algorithm
18:34:12XShocKis server down?
18:34:40preglowdoesn't answer, at least
18:35:10HClah. and there is my bug.
18:36:53lImbusXShocK, preglow: confirmation from belgium :-)
18:37:55preglowwhat kind of confirmation?
18:40:50lImbuspreglow: confirmation about
18:41:24preglowHCl: so, now you've got pressure on you as well :PP
18:42:07HCl :P
18:42:16HClits all webmind's fault! i swear! :P
18:42:52*webmind hides :)
18:43:59webmindcan this be considered a terrorist attack ?
18:44:19preglowit's not the first time they've been slashdotted
18:44:33preglowthey're probably used to it ;)
18:45:05*HCl found his bug in his code, and is finally getting sensible data from gcc
18:45:29webmindHCl, congrats :)
18:45:33HClthanks :)
18:45:45HCli'll just fill it in in dynarec and its on to the next upcode
18:45:56 Join DMJC [0] (
18:48:16XShocKHCl: cool. :) opened...
18:50:52 Quit Chamois (" HydraIRC -> <- State of the art IRC")
18:50:55 Join jyp [0] (
18:50:58preglowjust baaaaarely
18:51:14webmindit was a lot quicker when I checked it before posting.. :)
18:51:16*jyp laughs mercilessly
18:51:21preglowhits on my pictures also suddenly went up for some reason...
18:52:04webmindcreepy thing that /.
18:53:09jypSo rockoby is finished ? :P
18:53:13webmindit's like pointing a school of piranha to some fresh meat
18:55:30HCl :P
18:55:35HCljyp: no :P
18:56:21jyphehe... Just jealous of your being slashdotted ;)
18:59:31 Join ripnetUK [0] (
19:00:15ripnetUKi guess youve noticed that RockBoy has made slashdots front page?
19:00:25HCl :p
19:00:53ripnetUKnow THATS fame :)
19:01:33***Saving seen data "./dancer.seen"
19:02:42lImbusripnetUK: was once more literally slashdotted.
19:03:28webmindripnetUK, not that much.. usually goes away quite fast :)
19:03:46webmindbeen there.. done that ;)
19:04:50HCl :P
19:05:28ripnetUKyeah, its slashdotted :(
19:05:41ripnetUKcant even get the irc logs for today...
19:05:49ripnetUKgotta go
19:05:52ripnetUKcya :)
19:11:39XShocKsee you
19:12:31 Join hubble [0] (
19:12:45hubblehehe.. rockbox is on /. :)
19:13:20HClodd, that gcc doesn't optimize stuff like b ^ b ^ c
19:13:54lImbusHCl: write something about that on the mailinglist. there is a gcc-developer reading :-)
19:13:55jyp /topic Rockboy got slashdotted −− we know ;)
19:14:06hubbleis rockboy playable yet?
19:14:16HClhubble: too slow, i'm working on dynarec
19:18:02 Join Stryke` [0] (
19:20:09asdsdwow rockboy got slashdotted!
19:20:14asdsdnice going guys
19:20:53asdsdthats gay: l Gameboy games on your iRiver? (Guess that means it’s only a matter of time before that feature gets added to the iPodLinux Pproject, then.
19:21:03Stryke`that would explain why i can't access the rockbox page
19:24:29preglowmy box is starting to see quite a bit of traffic
19:24:37asdsdman u see the comments on the article?
19:24:40asdsdbunch of retards
19:24:41lImbuswebmind, HCl, do I see that right that you're on the same uni ?
19:24:51asdsdwhats ur box preglow?
19:25:00webmindlImbus, only this machin3e
19:25:04preglowasdsd: it's slashdot, go figure
19:25:11asdsdyah, i know but whats ur addy
19:25:27preglowi've got pictures at
19:25:36preglowthey're linked from the rockboy page
19:26:03asdsdoh yeah i saw those yesterday, nice
19:26:56preglowi'm getting several hits per second right now
19:27:51XShocKhehe... being famous is costly. :)
19:28:24lImbuspreglow, that was me :-)
19:28:49preglowno, i mean constantly
19:31:11asdsdman does slashdot geeks are so dumb
19:31:19asdsdthey don't apriciate the awesomeness of the rockbox project
19:31:53preglowthe slashdot crowd has never been particularly clever, don't mind them
19:34:05 Nick kergoth is now known as kergoth`bbl (
19:43:39jypasdsd> man u see the comments on the article? bunch of retards
19:43:44jyp... newsflash ;)
19:46:59asdsdnewsflash what?
19:49:16jypSlashdot crowd = bunch of retards
19:49:55asdsdc'ya guys later
19:52:40 Quit methangas (Read error: 104 (Connection reset by peer))
19:53:16 Join Zagor [242] (
19:53:58Zagorthat slashdotting exposed a configuration error on my part. apache maxclients was set to 20 :-)
19:54:28Zagorno wonder it was slow
19:54:37preglowthat explains it
19:54:38HCl :P
19:54:43preglowit was very responsive once i got through
19:54:53 Join methangas [0] (
19:54:58lImbusZagor: I see the 2.5-release is overdue if rockbox still wants to issue new versions every second month.
19:55:04lImbusI don't know how far multivolume and hotswap is going, but I think the tag database is worth a new version-
19:55:20HCllImbus: me and markun are on the same univ
19:56:55ZagorlImbus: yeah. however we're making a flood of changes daily now, so it's not easy to tell which is a good day to freeze
19:57:38lImbusbut these changes are not for the yet released devices...
19:58:11Zagortrue, but some of the changes affect even released devices
20:01:10ripnetUKsomone post an insightful comment to /. :)
20:01:17*lImbus headnods
20:04:12markundon't offend them too much. They're probably spying through current.txt :)
20:05:10preglowi'm more than a little tempted to replace all my screenshots with tubgirl.jpg
20:05:31Suckado it!
20:05:47preglowSucka: i'm not evil ;)
20:06:13Suckai bet you want to be really though
20:06:34preglowyou bet
20:06:52Suckaand this is the first step towards achieving that
20:07:52Zagorit's a pretty boring joke. people will just think we were hacked.
20:08:31preglowyes, i'm quite fed up with it myself
20:08:50Suckaits not about that Zagor, its about the sheer look of shock on their little faces
20:09:27preglowrepayment for all the regirgitated jokes they've unleashed on the world
20:09:41Zagorah, the look you never see on the faces you never see. yeah, that'd be fun... ;)
20:09:45preglowin soviet russia... beowulf cluster... i for one...
20:09:58preglowoh well, back to coding
20:10:23Suckain soviet russia, tubgirl looks at you!
20:31:39 Join n[o]bby [0] (
20:31:39 Quit methangas (Read error: 104 (Connection reset by peer))
20:31:44 Nick n[o]bby is now known as nobby (
20:31:58nobbyanyone have the files for the rockboy plugin?
20:32:37 Join methangas [0] (
20:32:41nobbyanyone have the files for the rockboy plugin?
20:32:53 Join einhirn [0] (
20:33:14Zagornobby: you should know it's not very fast
20:34:00HCli have a semi-old version without dynarec.
20:34:06HClthe version i'm working on has dynarec..
20:34:14*HCl lags.
20:34:25HCli should get off this other person's network, its slow :/
20:34:58preglowgo tell him
20:39:04*Zagor grabs some ice cream
20:42:36 Join thread [0] (~thread@thread.user)
20:48:10nobbycan be sent that rockboy plugin now ;)
20:48:45nobbyany copy that works
20:48:55nobbyi need it to show off with :P
20:49:10nobbyand by works, i mean, works even if its not realtime and whatnot
20:51:25*nobby is so lonely here on his own, in this poor, abandoned channel...
20:51:39*thread just read about rockbox on the /.
20:52:08threaddon't want to break my player, though
20:52:15threadcan I listen to music and play game boy at the same time?
20:52:29nobbyit wont play music on an irver yet
20:52:40nobbyyou can still use the old firmware by rebooting it
20:52:53threadhow do I run the rockbox firmware?
20:53:06nobbyread the wiki
20:53:13threadi m...
20:54:31threadIf you want to start the original firmware, hold the record button when starting.
20:54:47threadis there much risk of rendering my player useless?
20:54:56preglownot much, but some
20:55:14preglowthere's always risk involved in flashing, even when flashing the original firmware
20:55:27HCli can put a working rockboy up.. but give me some time..
20:55:37nobbythanks HCl
20:55:58HClpreglow: i don't suppose you still have a working rockboy somewhere? it'd save me trouble
20:56:13*HCl guesses he can just disable the dynarec part to get it back to work..
20:56:17preglowHCl: i'm sorry, but no
20:57:07HClwell, i just added the add a,a instruction, gonna go home first, then i'll compile a working version for the slashdot people.
20:57:30nobbywanna do a quick compile for me first? ;)
20:57:33HCl(seems an easy instruction, but the flags make it annoying)
20:57:40HClno, sorry. i'll be back in 15 min or so.
20:57:45HClthen i'll do the compile
20:58:34nobbythe number of banned AOL ip's saddens me
20:58:41nobbyi hate being stuck with this isp
21:01:16nobbybe back in acouple hours
21:01:37***Saving seen data "./dancer.seen"
21:06:56preglowhubble: oy, could you send me the ida database for the firmware again? i seem to have misplaced it somewhere...
21:10:59 Quit nobby (Read error: 104 (Connection reset by peer))
21:11:05 Join mst [0] (
21:19:40*HCl returns
21:20:20HCl - should contain rockbox with a working rockboy
21:20:23 Join willkill4food [0] (
21:21:08muesli-stupid question..
21:21:17muesli-what do i do with this fw?
21:21:24willkill4foodhello everyone
21:21:50willkill4foodi just found out about this site from slashdot, and im probably not alone in that
21:22:19*jyp shuts off
21:22:21willkill4foodbut i have an archos multimedia jukebox, and I was wondering if anyone had one also and if they got any of the rockbox firmware to work on it?
21:22:37jypgmini400 ?
21:23:41willkill4foodlittle bit of a big pic, but thats what I have
21:23:57lImbusthe archos multimedia jukeboxes are based on a totally different hardware. no rockbox for that :-/
21:24:26preglowmaster designers the archos people are not
21:24:56lImbusat least it can be hacked :-)
21:26:34willkill4foodare they really that different?
21:27:09lImbusI think, because the existing archos-jukebox and recorder have a far to slow processor
21:27:17lImbusI think so...
21:28:05jypopen it up & tell us ;)
21:28:06preglowi think i've seen it mentioned they're completely different inside, yes
21:28:27lImbusIf you are handy with electronics, open the box, make some pictures (or scans) of the hardware, start identifying the components, and start a rockbox-port to these devices
21:28:30willkill4foodi already did open it up
21:28:38willkill4foodtrying to fix the headphone port
21:28:41jypso, what's the cpu?
21:28:54willkill4foodbut the headphone port is soddered to the base if i remember right
21:28:57willkill4foodi didnt check the cpu
21:29:03willkill4foodthe HD was in the way if I remember right
21:39:24willkill4foodi think my jukebox is more or less like the recorder v2 and the fm recorder because im pretty sure they are about the same thing, but i cant find documentation of those two on the archos site very well
21:40:37lImbusthe fm recorder and recorder v2 have a 12 MHz-Cpu. No way of doing anything of the things your mm-jukemox does
21:41:06willkill4foodwell it probably does have a faster cpu and it does have a 16mb buffer
21:41:42willkill4foodim gonna go try to figure it out, ill be back when i know what exactly is special about my jbm
21:42:04lImbusmost probably it has a cpu that is able to do the decoding in software
21:42:11einhirn(isn't 16Mb more than sh1 can do?)
21:42:25lImbusno idea
21:42:45einhirnI think I read so when browsing about 8Mb Patch...
21:42:55einhirnerr... Hack... ;)
21:47:58XShocKi will be back in 1 hour.
21:49:35 Part hubble
21:50:39lImbushehe@ jyp: couple of fixes for 16 bits archs
21:51:22lImbusA friend of mine called my archos a "debris" the other day. He has a iPod Mini and tried to get me jealous for the size and weight
21:52:08preglowjealous of an ipod
21:52:36lImbuswell. It's light, yes. period ;-)
21:54:49Suckai hate ipod minis
21:54:52Suckatheyre hard to use
21:54:56fuzziethe ipod minis are ugly. :P
21:54:58Suckanormal ipods are quite nice
21:55:11Suckabut i prefer my iriver
21:55:32Suckaespecially as i use it in-car mostly anyway
21:55:37lImbusI don't like the shiny back of an iPod. It will always have fingerprints and so on
21:56:06Suckathe 4g interface is quite cunning though
21:56:22lImbusit looks great, for a moment. then it get's dirty and unhandy
21:56:46fuzzieit's not that hard to run a cloth over it
21:56:59Suckathat happens with everythign though lImbus
21:57:00fuzziethe ipod is probably at the top of my list of hw music devices to buy atm
21:57:10fuzziei'm in here because i'm hoping to keep track of whether the iriver might become viable
21:57:22fuzzie(most of my music is in AAC, but i'm not terribly wanting to buy something which won't do vorbis)
21:58:12fuzzie.. doesn't support any of the new ipods anyway :)
21:59:39fuzzieand the faq doesn't much make me confident about being actually able to play music, either
21:59:43 Join lostlogic [0] (
21:59:57jyplImbus: ?
22:00:39jypwhat's so funny ? >:)
22:00:44 Join elinenbe [0] (
22:01:13jypThe naked truth: iPod is gay
22:01:46lImbusjyp: about that joke: your cvs-comment is "arch". debris. arch. you get it ?
22:01:56jypI mean, your little sister has an iPod...
22:02:01 Nick kergoth`bbl is now known as kergoth (
22:02:19jyplImbus: no, but nevermind ;)
22:02:23CoCoLUSgays not bad :P
22:02:44jypI haven't said that ;)
22:03:19jypIf you prefer; iPod is surfing on the metrosexual fad ;)
22:03:21preglowi think i've got a windows patcher going now
22:04:04 Quit markun ()
22:05:03 Join Aison [0] (
22:06:06 Join courtc [0] (
22:13:15 Join xen` [0] (
22:23:11 Quit jyp ("poof!")
22:27:22preglowoh, how i love windows programming
22:27:37preglowCreateFile returns error, and when i query for error message, windows says Operation completed successfully
22:29:31DMJCregedit key set fail: Value: true
22:31:43 Quit willkill4food (Read error: 60 (Operation timed out))
22:37:33 Join amiconn [0] (
22:47:45 Quit DMJC ("Leaving")
23:01:38***Saving seen data "./dancer.seen"
23:03:35mstanyone ever seen one of these babies: ?
23:08:07*HCl sighs
23:10:06*preglow makes coffee
23:12:40HClgcc must have serious bugs.
23:16:10*einhirn yells Yippeeee!
23:16:20einhirnMy rockbox lives again...
23:16:32*amiconn despairs
23:16:36HClsup amiconn?
23:16:40*HCl joins the despairing.
23:17:16HCl c = FN | (d&0xFF) ? 0 : FZ | (FH & ((a ^ b ^ (d&0xFF)) << 1)) | ((un8)(-(char)((d&0xFF00)>>8)) << 4);
23:17:24fuzzieLooks fun.
23:17:30HClanyone who can give me a clean m68k assembly equivalent of that
23:17:32HClgets a cookie
23:17:33HCl :/
23:17:43amiconnlseek(4, 5120, 0) -> -1
23:17:48HCland the satisfaction of having helped rockboy another step forward
23:17:51einhirn(Before the weekend I had a go to fix the GND-Problem and then a short circuit from nowhere. It's gone to nowhere again now ;=) )
23:17:53*muesli- hands out a second brain ;)
23:18:15HClgiven an unsigned char a, b, and unsigned short d
23:18:22einhirnHCl: Whoopee...
23:19:05msthmmm.. does a filesystem dump beginning with ``AFI'' (0x41 0x46 0x49) sound familiar to anyone?
23:20:48*HCl flops on the floor and sighs.
23:21:17prpplaguemst: not me
23:21:59amiconnI simply don't get it, and there seems no way to read errno correctly within rockbox...
23:24:51prpplaguemst: a quick grep of the linux source tree doesn't yield anything
23:25:50mstprpplague, yeap. Not a *nix filesystem. Some sort of flash memory image.
23:26:11mstit has a FS header and file index starting at 0x0, and data at 0x1000
23:26:31 Part thread ("out")
23:26:34mst(the destination device that runs it is apparently Sigmatel-based)
23:27:15prpplaguemst: which platform is this?
23:28:33prpplagueHCl: let me ask a stupid question, why can't you put that in a .c and use a cross-assembler?
23:29:29prpplaguesorry cross-compiler
23:30:24 Join willkill4food [0] (
23:30:30 Join nobby [0] (
23:30:37nobbyIs HCl here?
23:30:55nobbywith a copy of rockboy? :)
23:31:41preglowhe's around
23:32:34preglowyou'll just have to pull him from the brink of despair, and he'll probably respond ;)
23:33:35nobbyhow does one go about pulling HCl from the brink of despair?
23:34:54preglow21:20 < HCl> - should contain rockbox with a working rockboy
23:35:44nobbytime traveling brink pulling
23:36:39mstprpplague, it's not a platform, it's a nameless mp3 player I bought and I fail to track it down - there's this whole OEM conspiracy thing, apparently the device has like 300 different OEM brands and zillions of various firmwares
23:37:52nobbytry them all and see whats good :)
23:38:43prpplaguemst: ahh
23:38:54prpplaguemst: which processor?
23:39:55mstprpplague, my suspect is STMP3400
23:40:00mstI didnt unscrew it yet ;)
23:47:38 Join muesli_ [0] (
23:48:35 Quit muesli_ (Client Quit)
23:51:05 Join nobbynobbs [0] (
23:51:19nobbynobbsback, safely removed modem isntead of iriver
23:54:32mstFilename: BRECF644BIN Offset: 1000 Garbage: 2460000000 Crap2: 0004000064634343d468436c
23:54:35mstFilename: BRECF641BIN Offset: 5000 Garbage: 2460000000 Crap2: 0004000064634313066427da
23:54:38mstFilename: BRECF321BIN Offset: 9000 Garbage: 2460000000 Crap2: 000400006433231363eaa2d2
23:54:41mstI own this thing :P

Previous day | Next day