00:00:09 | lebellium | I try to find a solution with the %LT tag ('Get the current items text') but I don't get it so far |
00:00:52 | [Saint] | I haven't looked into skinned lists extensively, perhaps gevaerts knows. |
00:01:20 | [Saint] | He's probably the expert on how it actually works, and JdGordon the expert on how it's supposed to work. |
00:01:50 | lebellium | ok |
00:01:58 | gevaerts | Well, of course it's *possible*. Not necessarily in a nice way though |
00:02:58 | JdGordon | ? |
00:03:00 | gevaerts | Just some conditionals based on the active screen (main menu in this case) and either the icon type or the text |
00:07:38 | datpander | ahoi. i had to format the drive with the rockbox installation. where can i find the jewels highscores in the backup i have? (clip +, if it matters) |
00:07:51 | JdGordon | lebellium: yeah, as gevaerts said, its easy enough iusing %?if(%Lt, =, "playlist catalogue")<Playlist|%Lt> |
00:08:14 | [Saint] | If you have a backup, just restore it overtop. |
00:08:19 | [Saint] | datpander: ^ |
00:08:47 | datpander | its an older version and it had problems with reading the 32gb memory card |
00:09:07 | [Saint] | Then update afterward. |
00:09:10 | gevaerts | datpander: I think those are in .rockbox/games |
00:09:24 | gevaerts | hm, no |
00:09:38 | gevaerts | .rockbox/rocks.data |
00:09:57 | datpander | i think i found it in .rockbox/rocks/ |
00:10:03 | datpander | then games |
00:10:27 | | Quit bertrik (Remote host closed the connection) |
00:10:52 | [Saint] | If you find it, great. Copying the backup back to the disk and then updating will also "just work", too. |
00:11:17 | [Saint] | That's usually my default reaction if I end up nuking my disk. |
00:11:27 | * | [Saint] <- lazy |
00:11:34 | datpander | thanks for pointing me in the right direction. saint: yeah, i suppose. but i think something went terribly wrong even before that backup and i would have had to resort to an even older one |
00:12:07 | [Saint] | No, no no...the update would restore anything meaningful, in theory. |
00:12:08 | | Join bertrik [0] (~quassel@rockbox/developer/bertrik) |
00:12:20 | lebellium | JdGordon: I already wrote "%?if(%LT,=,resume playback)<resume>" but it doesn't work, I have to figure out what's wrong in my code |
00:12:23 | | Quit mikroflops (Ping timeout: 246 seconds) |
00:12:51 | | Quit wodz (Quit: Leaving) |
00:12:55 | JdGordon | that should work... |
00:14:08 | datpander | scores and even the savegame are back. thanks for your help, bb :) |
00:14:13 | | Join mikroflops [0] (~yogurt@h-34-210.a238.priv.bahnhof.se) |
00:14:17 | | Quit datpander (Quit: CGI:IRC (EOF)) |
00:20:05 | lebellium | JdGordon: Okay, that works now. But only in English of course. That's where the trick stops :D |
00:20:34 | | Quit Robin0800 (Read error: Connection reset by peer) |
00:20:57 | *** | Saving seen data "./dancer.seen" |
00:21:05 | [Saint] | All the internal strings are English. |
00:21:12 | [Saint] | So, that makes perfect sense. |
00:22:04 | Katu | Why is it that the transparent corners of my progress bar block out the corners of the backdrop image that I am using as a border? On other themes, I don't observe the issue at all, even in the same context |
00:23:00 | gevaerts | [Saint]: this isn't an internal string. It's the actual shown text |
00:23:33 | gevaerts | Katu: are you using an alpha channel or the magic pink thing? |
00:23:58 | [Saint] | My mistake, I thought the comparison was made against the string used for the menu. |
00:24:04 | gevaerts | If the pink thing, check if it's really *exactly* the right colour |
00:24:23 | [Saint] | (255,0,255 true magenta) |
00:24:47 | Katu | Magic magenta. The magenta color doesn't display though. Instead, it displays a color match to the background image, and shows that over the image directly below it |
00:25:05 | Katu | (Which is how I have seen other themes do it as well, thus my confusion) |
00:25:24 | [Saint] | How are you doing the bar's backdrop? |
00:25:35 | [Saint] | Are you using the bartag's own backdrop param? |
00:25:50 | [Saint] | (or trying to layer viewports, which will fail) |
00:26:03 | Katu | No, I have a seperate image tag one line above it, in the same viewport |
00:26:05 | lebellium | okay, does anyone want to see my ugly code and give a feedback and some suggestions? :D |
00:26:21 | [Saint] | Katu: yeah, you can't do that and expect it to work. |
00:26:31 | [Saint] | ...by anything other than chance |
00:26:48 | Katu | Ahh, gotcha. So what is the better way to do it? |
00:26:55 | [Saint] | One sec |
00:27:19 | [Saint] | http://download.rockbox.org/daily/manual/rockbox-ipodvideo/rockbox-buildap4.html#x20-413000D.28 |
00:27:27 | [Saint] | When in doubt? Manual. |
00:28:17 | * | [Saint] will give a syntax example, one second |
00:28:28 | Katu | Haha, fair enough. Must have missed that entry |
00:29:55 | JdGordon | lebellium: replace the "playlist catalouge" with %Sx(playlist catalogue) and it will get the correct string for any language |
00:30:00 | [Saint] | %xx(0,0,-,-,image,progressbar,backdrop,progressbar-backdrop) |
00:30:02 | [Saint] | Katu: ^ |
00:30:04 | JdGordon | but your text will be wrong |
00:30:23 | JdGordon | gevaerts: [Saint] any comments on g347? |
00:30:23 | [Saint] | In that example "progressbar" and "progressbar-backdrop" are identifiers to images. |
00:30:25 | Katu | Ahh, ok. I will give that a try, thanks |
00:30:26 | fs-bluebot | Gerrit review #347 at http://gerrit.rockbox.org/r/347 : skin_engine: User selectable track data display by Jonathan Gordon (changes/47/347/6) |
00:30:44 | Katu | So it says that the image must be the same size as the progress bar itself, so in that case should I use magic magenta to make the progress bar the same size as its backdrop, since I want to have a border around the bar? |
00:31:02 | [Saint] | Yes. |
00:31:16 | Katu | Perfect, thanks. Gonna give that a shot now. |
00:31:29 | [Saint] | You can also stop using magenta, if you wish, and use an actual alpha layer. |
00:31:53 | [Saint] | 32bit bitmap with alpha layer is supported |
00:32:40 | Katu | Ahh, very cool. That would make looking at the images much nicer, without the magenta in there |
00:34:15 | lebellium | JdGordon, [Saint], gevaerts, could you please have a look at my code http://pastebin.com/PeJN0wXZ . Do you think there is a less tricky way to do it or is it the best way given the skin engine limitations? :) |
00:35:06 | [Saint] | Assuming all the tiles are the same height, I'd use a bitmapstrip...but that's me. |
00:35:18 | lebellium | yep true that |
00:35:20 | * | gevaerts nods |
00:35:47 | [Saint] | Other than that, ...no? |
00:35:56 | gevaerts | How does wavy do it? |
00:36:05 | | Quit ender1 (Quit: The secret of success is sincerity. Once you can fake that, you've got it made.) |
00:36:21 | [Saint] | gevaerts: I don't know, ask the nutcase that wrote it. |
00:36:26 | [Saint] | ;) |
00:36:32 | JdGordon | eww thats nasty :) |
00:36:59 | gevaerts | Right. Bitmap strip indexed on %LI |
00:37:14 | JdGordon | lebellium: you could use the backdrop viewport to draw the selected rectangle around the icon |
00:37:16 | JdGordon | that will make it a little easier |
00:38:45 | lebellium | when selected, the icon is a few pixels bigger, so I'm not sure I need a selected rectangle? |
00:38:45 | * | [Saint] would just have a single "is selected" image, and add transparency to the non-selected images. |
00:39:02 | JdGordon | lebellium: ah then that wont work |
00:39:16 | [Saint] | then you could draw the "is selected" part in the backdrop and let it show throgh. |
00:39:36 | [Saint] | As opposed to having a different selected/nn-selected item for each. |
00:39:37 | lebellium | normal icon is 16x16 and selected icon is 18x18, I find it pretty nice |
00:39:48 | JdGordon | hardly worth the effort |
00:40:03 | gevaerts | JdGordon: you're clearly not a themer :) |
00:40:11 | JdGordon | what was your first clue? |
00:40:30 | [Saint] | ...certainly not writing the theme engine :) |
00:40:33 | gevaerts | *everything*'s worth the effort in a theme |
00:40:41 | [Saint] | It seems to put people under the wrong impression. |
00:40:58 | * | gevaerts still has some issues with wavy that might or might not be bugs in the theme engine :) |
00:41:28 | lebellium | [Saint] I try to understand your suggestion :D |
00:41:32 | * | [Saint] happens to think that this is, in fact, worth the effort, as the RAM savings would be quite vast. |
00:42:17 | [Saint] | IUC, you have some form of border that signals the currently selected item? |
00:43:13 | lebellium | selected item = text in another color and bigger icon. No border |
00:43:41 | [Saint] | Ah, my mistake. |
00:44:18 | | Quit bertrik (Ping timeout: 248 seconds) |
00:45:09 | [Saint] | Oh, ...is it necessary to add all the blank tuples to %cs? Or, is simply %cs<> good enough for the main menu? |
00:45:27 | [Saint] | iiuc, the blank tuples needn't be given. |
00:45:43 | lebellium | indeed, let's try without |
00:46:23 | lebellium | nope, without the blank, it applies the main menu style everywhere |
00:46:50 | [Saint] | Hum, I would've expected that to work. |
00:47:04 | [Saint] | No matter. |
00:47:15 | lebellium | I must admit after one year designing themes, I still don't know when the blanks are needed and when not lol |
00:47:29 | [Saint] | Apparently, nor do I :) |
00:47:38 | gevaerts | Without any blanks, or without all the blanks? |
00:48:13 | lebellium | %?cs<%Lb(d,50,40,tile)> as suggested doesn't work, it applies this style everywhere |
00:48:29 | lebellium | ah |
00:48:34 | lebellium | but I missed a | |
00:48:34 | [Saint] | and "%?cs<%Lb(d,50,40,tile)|>" |
00:49:07 | lebellium | yes! my mistake |
00:49:10 | lebellium | that works |
00:49:43 | [Saint] | that's, odd. And not quite in keeping to the way it works elsewhere. |
00:50:02 | [Saint] | but, yay for things working. |
00:50:15 | * | gevaerts doesn't see the oddness |
00:51:16 | [Saint] | the playback mode, for instance, you can leave out the ones you don't care about without needing to supply a false case or blank cases |
00:52:39 | [Saint] | maybe that works by accident. |
00:53:07 | [Saint] | Or, a simpler example, not needing to provide a blank false case for most (all?) tags that can have one. |
00:53:28 | [Saint] | %xx<foo> should be the same as %xx<foo|> |
00:54:03 | lebellium | %xx<foo> could be %xx<foo|foo> |
00:54:19 | [Saint] | But it isn't :) |
00:56:21 | lebellium | JdGordon decided :D |
00:56:56 | JdGordon | ? |
00:57:20 | | Part eckoit |
00:57:38 | [Saint] | I understand that true/false is quite different to having multiple cases, but I really thought you could leave out cases past any that you care about without needing to supply blank fields. |
00:58:12 | JdGordon | pretty sure %xx<foo> doesnt work because that gets translated magically to %xx<|foo> |
00:58:35 | [Saint] | it works for purely true/false cases. |
00:58:46 | [Saint] | supplying empty false cases is a pet peeve of mine. |
01:00 |
01:00:20 | [Saint] | %?D(1)<first level directory> is just the same as %?D(1)<first level directory|>, ...anything purely true/false, afaik. |
01:00:43 | [Saint] | the playback tag also doesn't seem to care if you only supply cases for play/pause/stop/ffwd/rrwd |
01:00:59 | [Saint] | despite there being a few more cases for consideration after that. |
01:02:18 | * | pamaury managed to changes the ddr clock without crashing \\o/ \\o/ \\o/ |
01:02:28 | [Saint] | Huzzah! |
01:03:18 | pamaury | ok, that was on the fuze+ which is the easiest one because it's already running at top speed at the beginning |
01:05:45 | lebellium | I'm wondering why there are no -or so few- themes with a grid menu while many brand's original firmwares feature such a menu |
01:06:35 | gevaerts | lebellium: easy. Most theme designers are conservative and lack imagination. Just look at the progress bars! |
01:06:58 | | Quit jhMikeS (Read error: Connection reset by peer) |
01:08:29 | * | [Saint] hasn't yet seen another theme that respects locale specific UI guides |
01:08:38 | [Saint] | ...other than his own, of course ;) |
01:09:26 | [Saint] | (reversing arrows, question marks, and fill directions for RTL) |
01:10:23 | | Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS) |
01:11:22 | [Saint] | I think RTL lang users just get used to being shafted into an LTR world by crappy UI |
01:11:53 | * | JdGordon really needs to fucking fix rtl to make it just work |
01:12:02 | lebellium | maybe it's not documented enough in CustomWPS. I mean I never imagined a grid menu is possible with the skin engine until I read the IRC logs about that matter some days ago. "if the last param is 'tile' it will form a grid instead of a list" is the one and only clue |
01:12:20 | JdGordon | is that not in the wiki? |
01:12:31 | [Saint] | s/wiki/manual/ |
01:12:41 | [Saint] | we really need to STOP caring about the wiki. |
01:12:46 | [Saint] | it's a big problem. |
01:13:06 | [Saint] | It's hard enough keeping one source up to date. |
01:13:58 | JdGordon | well you know my argument... the manual is the wrong place to put theme howtos |
01:14:09 | lebellium | for me the manual is to know how to use the player, not how to make themes or plugins or whatever |
01:14:42 | JdGordon | really skinning should be its own guide |
01:14:43 | | Join pamaury_ [0] (~quassel@137.112.108.93.rev.vodafone.pt) |
01:14:45 | [Saint] | designing your own UI *is* a part of using the player. |
01:14:45 | JdGordon | outside of the manual |
01:14:49 | lebellium | my reference document for themes is the CustomWPS page in Wiki |
01:15:15 | | Quit pamaury (Ping timeout: 252 seconds) |
01:15:42 | | Quit bluebrother (Read error: Operation timed out) |
01:15:52 | [Saint] | And, the wiki can have all the howtos it wants, as far as I'm concerned. So long as the manual documents all the theme tags. |
01:15:52 | | Quit fs-bluebot (Ping timeout: 256 seconds) |
01:16:16 | [Saint] | Documenting the function of a tag is different to a "howto" example of usage. |
01:17:08 | [Saint] | And if the patch you're working on now gets in, which I assume it will, the tags need to be documented in the manual. |
01:17:09 | | Join fs-bluebot [0] (~fs-bluebo@f053153023.adsl.alicedsl.de) |
01:18:21 | | Join bluebrother [0] (~dom@rockbox/developer/bluebrother) |
01:19:06 | [Saint] | with the possible exception of the creation of some plugin to manage the metadata.txt so the user doesn't need to care what the tags mean. |
01:19:40 | lebellium | so the tags can be documented both in the manual and on wiki but "how to make a grid menu" should be rather present on the wiki but is currently nowhere I guess |
01:21:12 | [Saint] | Right, yeah, that's what I'm thinking. Documentation for all in the manual with a syntax example, in-depth examples of usage for the wiki. |
01:21:14 | | Quit Poodlemastah (Ping timeout: 245 seconds) |
01:21:27 | [Saint] | Now...if only Mr. Someone was real. |
01:21:31 | JdGordon | [Saint]: a plugin to manage trackinfo.txt would be pretty simple to do :) |
01:21:32 | [Saint] | :) |
01:24:22 | lebellium | So gaeverts, I'm not sure it's a lack of imagination. I just guess most theme designers don't have high enough skills to figure out themselves how to code some harder things and they would need better documentation, in-depth examples on the wiki. But Mr. Somone doesn't exist? :( |
01:25:09 | [Saint] | Another reason to not rely on the wiki for documentation is the transient nature of the thing. |
01:25:24 | [Saint] | We need to account for the fact that scorche` may blow up tomorrow and we lose it all. |
01:26:56 | lebellium | the wiki is transient?! |
01:28:16 | gevaerts | For the record, the wiki is not on scorche's server :) |
01:28:42 | [Saint] | Ah, ok...I guess a Swede would need to blow up, then :) |
01:34:58 | Katu | Phew. Finally got the progress bar to work... I updated the tag, and that got them to overlap properly. |
01:35:15 | Katu | When I tried doing the alpha channel bmp files, they always ended up with white where it was supposed to be transparent. For whatever reason, photoshop wasn't saving them with the alpha channel when I told it to. So I used GIMP instead, and that took care of it! |
01:36:54 | | Quit lebellium (Quit: ChatZilla 0.9.89 [Firefox 18.0/20121231071231]) |
01:37:14 | JdGordon | [Saint]: well, if you feel strongly enough, verify the manual has everything and nuke the wiki page |
01:39:10 | | Quit dfkt (Quit: -= SysReset 2.55=- Sic gorgiamus allos subjectatos nunc.) |
01:44:33 | [Saint] | Katu: it needs to be A8R8G8B8 |
01:44:46 | [Saint] | Photoshop may have been doing A1R5G5B5 |
01:45:37 | [Saint] | (or, more commonly put, 32 vs 16 bit) |
01:46:20 | * | [Saint] made the same mistake a few days ago :) |
01:46:30 | [Saint] | s/same/similar/ |
01:51:04 | Katu | ahhh, perhaps that was my problem. Either way, I'm just gonna use GIMP for the rest of the images, and that will definitely save me the headache hahah |
01:51:31 | Katu | Now to tackle the Volume indicator :) |
01:52:46 | pamaury_ | wodz (logs): I've committed emi frequency scaling, if you are curious about it :) |
02:00 |
02:10:40 | scorche` | [Saint]: yeah - multiple people control the main site - no issues there |
02:11:57 | | Quit prof_wolfff (Ping timeout: 256 seconds) |
02:11:58 | scorche` | for my stuff, it gets more complicated, but theoretically, gevaerts, rasher, or a number of other people could utilise some privilege escalation exploit on my server and be able to have access to the forums and such ;) |
02:11:58 | | Quit shamus (Read error: Connection reset by peer) |
02:12:07 | | Join shamus [0] (~shmaus@ip-206-192-195-49.marylandheights.ip.cablemo.net) |
02:17:34 | | Join Scr0mple [0] (~Simon@161.43.73.67) |
02:20:24 | | Quit Scromple_ (Ping timeout: 255 seconds) |
02:20:59 | *** | Saving seen data "./dancer.seen" |
02:24:19 | [Saint] | scorche`: assuming your sever survived. |
02:24:45 | [Saint] | I don't want to go asking your widow or immediate family if they know where the snapshots are ;) |
02:25:05 | | Quit pamaury_ (Ping timeout: 256 seconds) |
02:25:41 | [Saint] | It isn't so much the person controlling the site, as the data itself. If that exists in multiple places that more than one person can access if need be. Great. |
02:26:13 | [Saint] | Now, on an entirely different note...I spotted a "bug"(?) in the way playlists work. |
02:26:28 | [Saint] | If it isn't a bug, it is highly non-obvious behavior. |
02:27:34 | [Saint] | If you have a playlist loaded, and you're already in playback, if you search through the playlist and pick a track and do "Play Next"...it nukes the dynamic playlist and leaves only the currently playing track and the newly inserted one. |
02:27:45 | [Saint] | ...surely that isn't intentional? |
02:28:44 | [Saint] | Or rather - What I expect to happen: Move the track from the current location in the playlist to the desired location without nuking the dynamic playlist |
02:29:39 | JdGordon | nope, that is how play next works |
02:29:42 | JdGordon | you want insert next |
02:30:08 | [Saint] | I would think Insert Next was for tracks that weren't already in the list. |
02:30:36 | [Saint] | The way I _think_ it should work seems a lot more sane than the way it does. |
02:30:40 | JdGordon | you're using play next a bit wierdly :) |
02:31:14 | [Saint] | Why the fuck does it nuke the playlist? |
02:31:38 | JdGordon | "play next" is for "play this playlist next" |
02:31:38 | [Saint] | Just because I want a specific track played next doesn't mean I want the dynamic playlist blown away... |
02:31:46 | JdGordon | hang on, getting th eipod out |
02:31:47 | | Join eckoit [0] (~ryan@d173-181-71-88.abhsia.telus.net) |
02:31:51 | [Saint] | Then it shouldn't work for a track, and this is a bug. |
02:32:44 | JdGordon | you;re talking about the "current playlist" in the playlist viewer context menu? |
02:33:27 | JdGordon | that item really should exist i think |
02:33:35 | [Saint] | Playlist viewer, WPS context, whatever. |
02:34:15 | JdGordon | i wouldnt say a bug, more a misfeature that that menu item exists |
02:34:22 | [Saint] | It seems totally non-obvious to me that using Play Next should blow away the current playlist. |
02:34:45 | [Saint] | In my perfect world, it would just move the track to the desired (next) location. |
02:35:04 | [Saint] | s/track/track or playlist/ |
02:35:15 | JdGordon | why move and not copy? |
02:35:22 | [Saint] | +leave the rest of the playlist alone. |
02:35:51 | [Saint] | well, I guess the move/copy thing could be debated. |
02:37:38 | [Saint] | There's at least one instance I can find in the wild that works how I'd want it to. So I don't think I'm /quite/ insane. |
02:38:05 | [Saint] | The way it worked just surprised me, a lot. |
02:38:26 | JdGordon | play next has worked like that since it was added |
02:38:30 | [Saint] | Here's what the manual says about it: |
02:38:33 | [Saint] | "Insert Next. |
02:38:33 | [Saint] | Add track(s) immediately after current playing track, no matter what else has been inserted." |
02:39:00 | [Saint] | ...so, it being non-obvious to me also isn;t surprising. It makes no mention of this. It suggests it works how I think it should. |
02:39:49 | Katu | To throw in my 2 cents, Saint's reasoning sounds logical to me. If I were to go through my current playlist, pick a track, and tell it to play next, I would expect that afterwards, play through the playlist would resume as before. |
02:39:50 | [Saint] | Oh, whoops. |
02:40:12 | [Saint] | I totally brainfarted there. The manual does describe the behavior. |
02:40:38 | [Saint] | So, as long as it does what the manual says...it isn;t a bug, I guess. Just ...weird behavior. |
02:41:36 | | Join Scromple_ [0] (~Simon@161.43.73.67) |
02:41:38 | [Saint] | In reading I confused myself between Insert/Play Next, so, I was wrong there. It is described the way it functions. The way it functions is just weird. |
02:42:08 | [Saint] | Katu: glad I'm not completely nuts, then :) |
02:42:58 | Katu | Haha, yeah, your description sounded legitimate to me |
02:43:32 | Katu | As a side note, looking through the manual, Queue Next might also be a good option to do what you want, if you intend to preserve playlist order |
02:44:24 | | Quit Scr0mple (Ping timeout: 260 seconds) |
02:44:27 | [Saint] | I can't think of a case that supports the usage of Play Next. You're quite right. I should be using Queue Next. |
02:44:36 | [Saint] | I'm not sure why that didn't occur to me. |
02:45:00 | Katu | Haha, if I hadn't seen it in the manual, I would've been going after Play Next as well |
02:45:59 | Katu | I suspect Play Next exists so that you can start up a whole new playlist, without interrupting music playback. i.e., use it for the first album you add, then use Insert/Insert Next from there |
02:46:01 | JdGordon | or use "move" for the previous menu |
02:46:47 | [Saint] | Katu: Wouldn't Queue do the same? Or, _shouldn't_ it, rather? |
02:47:02 | [Saint] | I don't know if it does, but it seems like it should. |
02:47:32 | Katu | No, When I use teh Queue function, its because I have a specifically ordered playlist, but I really want to listen to that specific track next, without messing up the order |
02:48:00 | [Saint] | Right, that's exactly what I was wanting to do and thought Play Next should do. |
02:48:36 | Katu | Thus, it adds the track next in the queue, then removes it once it is done playing, as if it was never put there in the first place, and remains in its location within the playlist (if it was there) |
02:48:42 | [Saint] | ...this all seemed very wrong to me when I was walking home a few minutes ago ;) |
02:48:54 | [Saint] | Now it all makes sense. Dammit. :P |
02:48:58 | Katu | Hahha, sometimes you just need a second opinion |
02:49:50 | Katu | Surprising that I could help. I just downloaded my first Rockbox simulator 5 days ago, and I'm still waiting on my iPod in the mail for an actual RockBox player :P |
02:50:05 | [Saint] | Hmmm...or not. So, if you use Queue Next, it adds it to the playlist and then removes it after it plays? |
02:50:09 | * | [Saint] tests this |
02:50:16 | Katu | Indeed |
02:51:01 | Katu | at least, that's what it seems like from reading the manual |
02:51:17 | [Saint] | That works roughly as I expect, but I'm surprised it removes it from the playlist. And yes, you're right, it does. |
02:51:31 | Katu | I' |
02:51:42 | Katu | I'm acutally glad to see that functionality too |
02:51:46 | Katu | It' |
02:51:53 | Katu | bah. keep hitting enter on accident |
02:52:26 | Katu | It's great for when you need a quick fix for that one specific song, but don't want to destroy the order of your playlist in the process |
02:52:47 | [Saint] | Hum, so I really _don't_ want Queue Next, as I want the changes to the ordering to survive. |
02:53:02 | [Saint] | I understand it has its uses, but it's not the right one for my case. |
02:53:14 | [Saint] | "move" seems to be what I would want. |
02:53:17 | Katu | Ahh |
02:54:13 | | Quit eckoit (Ping timeout: 276 seconds) |
02:54:38 | [Saint] | For about 4 years I haven't done much else than: Files; navigate to toplevel music dir; Insert Shuffled |
02:54:53 | Katu | bwahahaha, sounds about right |
02:55:20 | Katu | I always like to insert in order though, then play on shuffle mode. Makes it easier to find a song that way |
02:58:06 | [Saint] | "Insert Next" is what I want, it seems. |
02:59:00 | [Saint] | Immediately after I discovered Play Next didn't work like I thought it did, I thought I was a bit of an idiot for confusing these things. |
02:59:16 | [Saint] | ...but now I see that it is more of a miracle I had never done so sooner. |
02:59:53 | Katu | Gotcha. Out of curiosity, if you select a file that is currently in your dynamic playlist when you use Insert Next, does it move that file's location in the playlist, or created a duplicate? |
03:00 |
03:00:10 | JdGordon | dupliscate |
03:00:25 | [Saint] | A half dozen similarly named objects that do /slightly/ different variations of the same thing. plus/minus other things I wouldn't necessarily expect said function to perform. |
03:00:25 | Katu | Gotcha. Good to know |
03:00:40 | [Saint] | JdGordon: It moves it. |
03:01:09 | JdGordon | insert next should add it |
03:01:10 | [Saint] | Oh, no...I needed to leave the screen and come back to see the changes. |
03:01:11 | JdGordon | not move it |
03:01:13 | [Saint] | Right you are. |
03:01:54 | [Saint] | Yes, if I leave the screen and come back to it I can see it duplicates it. Indeed. |
03:02:13 | * | [Saint] is having a really bad bay with expected vs. actual behavior |
03:02:20 | Katu | Ok. Good to know for sure! |
03:03:38 | * | [Saint] thinks the naming and availability of the options is what makes their function non-obvious to him |
03:04:10 | [Saint] | For a reason I can't quite articulate, it seems odd to me that one can "Insert" a track into a playlist that is already in the current playlist. |
03:04:29 | Katu | Yeah, that is a little strange |
03:04:35 | [Saint] | That wording seems to me to be for a case where the track you're wanting to insert isn't already in the current playlist. |
03:04:58 | JdGordon | that menu shouldnt be there |
03:05:22 | Katu | Oh! Figured out what I had done wrong with my volume bar on the theme that I'm working on −− I was using the old %xd tag syntax! |
03:05:46 | [Saint] | ...we have new %xd syntax? |
03:06:29 | Katu | I don't think it's new for everyone... It was new to what I had been reading off of one of the many, many WPS manuals |
03:06:30 | [Saint] | I can think of the new-ish syntax for subimages, but the old syntax should still be valid to keep backward compatibility |
03:06:42 | Katu | I was reading the wrong manual, basically. |
03:06:45 | [Saint] | We /try/ not to do skin-breaking changes. |
03:07:30 | [Saint] | Do you mean the difference between %xd(Aa) and %xd(A, 1)? |
03:07:40 | Katu | Makes sense. For whatever reason, the old syntax for %xd wasn't working for me, and as soon as I switched to the new syntax, worked perfect |
03:07:49 | Katu | exactly so |
03:07:56 | [Saint] | Both should work. |
03:07:57 | JdGordon | %xd(Aa) is definitly deprecated and shouldnt be in the wiki/manual anymore |
03:07:59 | JdGordon | (though is) |
03:08:20 | [Saint] | JdGordon: I thought it was left for backward compatibility? |
03:08:29 | JdGordon | correct |
03:08:36 | Katu | Yeah, with the simulator for the latest build on ipod color/photo, it would crash the wps every time |
03:08:37 | JdGordon | deprecated doesnt mean it iwll be removed |
03:08:51 | JdGordon | Katu: loading the failsafe wps doesnt mean it crashed |
03:08:58 | [Saint] | Ah, right. My definition is slightly different, and likely wrong. |
03:09:24 | Katu | ahh, ok. Either way, I got the failsafe wps :P |
03:10:07 | [Saint] | That would be the second instance I've seen in a week or so of syntactically valid code failing. |
03:10:18 | [Saint] | Does it give you any output in the console, Katu ? |
03:10:24 | Katu | Nope |
03:10:33 | [Saint] | Same as the other instance...weird. |
03:10:34 | * | JdGordon needs more time :/ |
03:10:56 | [Saint] | JdGordon: A. Bloody. Men. |
03:11:00 | [Saint] | We all do :-S |
03:11:10 | Katu | Either way, I figured it out. Just one big learning period for me :D |
03:11:14 | JdGordon | and a wife which is a bit more accepting of my rockbox time :p |
03:11:29 | Katu | bwahahaha |
03:11:33 | scorche` | well, that is your own fault ;) |
03:11:53 | * | [Saint] 's SO isn't really terribly happy with his projects either |
03:12:39 | [Saint] | Understanding? Yes, greatly. Happy about it? Not on your life. :) |
03:14:18 | Katu | Updated my forum post on the matter with what I learned as well, so that in the future, people know what I did wrong and how I fixed it :) |
03:15:35 | [Saint] | What you were doing, while it isn't really recommended, woul've worked if it wasn't a 'dynamic' object. |
03:15:55 | Katu | what do you mean by dynamic? |
03:15:56 | JdGordon | Katu: I was going to suggest %xd(vol, %pv) but wasnt sure if that would work correctly |
03:16:14 | Katu | That's exactly what I used, works perfect :) |
03:16:26 | JdGordon | [Saint] hates that syntax :) |
03:16:29 | JdGordon | I love it |
03:16:43 | Katu | Saves a helluva lot of typing |
03:16:45 | [Saint] | It has its uses. |
03:17:11 | * | [Saint] wouldn't use bitmapstrips for volume, though. |
03:17:14 | JdGordon | as for your original problem, you must have done something wrong, possibly in the snipped section |
03:18:03 | Katu | It's possible, though the snipped section is really just the progress bar, album art, and track info |
03:18:17 | [Saint] | iff the bar is going to be *very* low resolution, bitmapstrips are ok. But I vastly prefer to use a bar tag. |
03:19:15 | Katu | Well, this pictures that I used do defy convention for a standard bar, so I don't think that a bar tag would do what I wanted it to. |
03:19:46 | | Quit thegeek (Read error: Connection reset by peer) |
03:19:48 | Katu | They go right to left, then back to the right from there. kinda wierd, but I like it |
03:20:14 | Katu | Is the bar tag better to use, for simplicity and size reasons? |
03:20:45 | [Saint] | right to left, then back to right? |
03:20:58 | * | [Saint] doesn't understand the way it should work |
03:21:46 | Katu | Yeah, hard to describe. I think I posted the bitmapstrip on the forum post though, that should demostrate it better |
03:22:13 | [Saint] | Ooooohhhh...I see. |
03:22:17 | JdGordon | you could actually do that with 2 strips i tihnk |
03:22:40 | [Saint] | Using a bar shouldn't mess that up, it would display it the same as a bitmapstrip would, only with finer resolution. |
03:22:58 | Katu | ahhh, ok |
03:23:02 | * | Katu tries it out |
03:23:28 | [Saint] | Ohhh...actually, maybe you wouldn't be able to. |
03:23:42 | [Saint] | That is a weird way to do it. Not very well suited for a abr. |
03:24:13 | Katu | Yeah, like I said. Kinda weird, but I like it |
03:24:21 | [Saint] | When I first saw the image in the forum, it was so small that I couldn't see that it doubled back on itself. |
03:24:38 | [Saint] | I was going to suggest using a bar at the time but I thought it best to taackle one thing at a time. |
03:24:51 | Katu | ahhh, gotcha. I'm sure the Magic Magenta didn't help either |
03:24:55 | [Saint] | Now I've zoomed in and looked at it, it is rather non-standard. |
03:25:09 | [Saint] | (not in a bad way) |
03:25:13 | Katu | (Which I also got rid of, thank god) |
03:25:26 | Katu | Yeah, now that I see it in the player, I'm very pleased |
03:25:39 | [Saint] | If effectively halves the needed display area for the volume. |
03:25:46 | [Saint] | It's really quire smart actually. |
03:25:54 | Katu | Thanks :) |
03:26:05 | * | Katu is stoked to finally be making progress for once |
03:27:12 | * | [Saint] keeps reading Klaatu for some reason - (from The Day The Earth Stood Still) </offtopic> |
03:27:20 | Katu | lmao |
03:30:01 | [Saint] | JdGordon: For the record, I don't *hate* the ability of %xd to parse a tag for the subimage parameter..I just don't use it myself because it isn't always possible to use it and from the point of view of documentation/emample code I don't think it is very wise to show multiple ways of doing the exact same thing. |
03:30:22 | JdGordon | ok |
03:31:17 | [Saint] | I think it's nice. It simplifies things immensely. But I always thought that if someone was to be reading my code that they would get confused by me (seemingly) doing the same thing in two different ways. |
03:31:59 | [Saint] | If the subimage order and the display conditions matches the tag, then it's a very good thing. |
03:33:12 | * | Katu is uploading a visual demonstration of the volume bar now |
03:34:09 | Katu | http://imageshack.us/photo/my-images/202/volumebardemonstrated.jpg/ |
03:34:36 | Katu | whoops |
03:34:37 | Katu | http://imageshack.us/photo/my-images/202/volumebardemonstrated.jpg/ |
03:34:38 | JdGordon | is the red only when its >0 ? |
03:35:01 | Katu | That's when it is maxed out. Not sure if that means >0 or not |
03:35:09 | JdGordon | > 0dB |
03:35:52 | [Saint] | wrt stacking objects, it is /partially/ supported. But not in a way that is really very predictable. The skin does have a sense of draw ordering, so that layering images can work. But you can't layer dynamic objects. Things like clocks, scrolling text, progress bars, peak meters, etc. |
03:36:59 | [Saint] | There is only background, and foreground, there doesn't exist any way to layer objects in a consistent and repeatable fashion other than that. |
03:37:28 | Katu | I haven't put any specific tags for making it go red when >0db. That last image is the volume at maximum setting though |
03:38:54 | JdGordon | you could do %?pv<%xd(mute image)|%pv(as a bar)|%xd(3rd last image in your strip)|%xd(last image in your strip)> |
03:39:14 | JdGordon | then the strip only has 4 subimages |
03:39:34 | [Saint] | That may or may not work. |
03:39:48 | [Saint] | Last time I tried to do that, it didn't work as I intended. |
03:39:57 | Katu | Yeah, 13 is probably a bit excessive, but I like having the more gradual nature of the bar that way |
03:41:02 | [Saint] | Well, what JdGordon is saying there would provide a bar for all cases that aren't mute, 0dB, >0dB |
03:41:36 | [Saint] | which would be finer grained than bitmapstrips unless you had a strip for each pixel. |
03:41:53 | Katu | ahhh, I see. I misread the post |
03:42:26 | Katu | But then that would also change the fill behaviour for the bar, would it not? |
03:42:48 | JdGordon | you'd set it to draw right to left |
03:43:15 | [Saint] | only for the non-mute, non-0db, non->0dB cases |
03:43:21 | Katu | ah, I see |
03:44:12 | Katu | I'll have to look into that. I didn't even factor in a mute image when I made that |
03:45:01 | [Saint] | Hmmm...actually. I'm not sure it could be done the way JdGordon and I are thinking. |
03:45:12 | [Saint] | Again, because of the less-than-common format of the bar. |
03:45:13 | JdGordon | llama? |
03:46:05 | JdGordon | you might have to account for the >0dB in the bar image |
03:46:16 | JdGordon | the bar tag really needs to be redon |
03:47:22 | Katu | the bar tag on Rockbox side? |
03:47:31 | JdGordon | yeah |
03:47:31 | Katu | or mine? |
03:47:40 | Katu | ahh, ok |
03:47:43 | JdGordon | the syntax for making a bar is just horrible |
03:48:07 | * | [Saint] likes it. It's clean, and obvious. |
03:48:24 | JdGordon | no it isnt! |
03:48:37 | Katu | I don't have an opinion one way or the other. I just learn as I go :P |
03:49:18 | [Saint] | %xx(0,0,-,-,image,image-identifier,backdrop,backdrop-identifier,other_options) |
03:49:28 | [Saint] | simple to me. |
03:49:34 | [Saint] | What would you change, JdGordon ? |
03:50:07 | JdGordon | not sure, but it is convoluted |
03:50:22 | Katu | Anyway, I gotta go guys.. Dinner time. Good chatting with you, and I am grateful for the help and the pointers |
03:50:48 | JdGordon | o/ |
03:50:51 | [Saint] | %xx(0,0,-,-,progressbar.bmp,backdrop,backdrop-identifier,other_options) <−−you can even mix/match with the old style of passing the bar image |
03:51:02 | | Quit Katu () |
03:51:02 | [Saint] | Katu: Have fun, don;t be a stranger :) |
03:51:05 | [Saint] | Aww. |
03:51:40 | * | [Saint] prefers to pass the image param and use only identifiers, though. |
03:52:14 | [Saint] | The bar tags are actually one of the few options of a rather complicated feature having a fairly straightforward syntax |
03:52:38 | [Saint] | Compared with skinned lists, I find them a dream to work with. |
03:54:42 | | Quit t3hsilentone (Quit: Leaving.) |
03:56:23 | JdGordon | [Saint]: did you ever get around to playing with the 9seg bmps? |
03:57:03 | [Saint] | Yes, my album art backdrop is using it. |
03:57:17 | JdGordon | \o/ |
03:57:26 | * | JdGordon wanst to see a demo |
03:58:32 | JdGordon | also, I *really* want to push g347 so any feedback would be welcome |
03:58:35 | fs-bluebot | Gerrit review #347 at http://gerrit.rockbox.org/r/347 : skin_engine: User selectable track data display by Jonathan Gordon (changes/47/347/6) |
03:58:39 | JdGordon | especially links to themes which obviously couldnt use it |
03:58:59 | | Join t3hsilentone [0] (~pc@pool-74-98-200-43.pitbpa.fios.verizon.net) |
03:59:12 | [Saint] | Did you find out any more about sublines wrt %;? |
03:59:35 | JdGordon | yeah, I suspect a sed went wrong back 2 years ago :) |
03:59:38 | JdGordon | those lines dont work |
04:00 |
04:00:23 | [Saint] | Untested, but, "%t(2)%;%;%;%;%;%;;%t(2)that was a bunch of semi-colons" _should_ work. |
04:00:29 | JdGordon | I found that sublines mostly work with ^ so i can do pretty much all text based themes with it now, which means cabbies can be switched |
04:00:58 | JdGordon | yes, that should show ;;;;;; then nothing |
04:01:11 | * | JdGordon needs to get back to implementing HDLC |
04:01:40 | [Saint] | So that would skip the "that was a bunch of semi-colns"? |
04:01:52 | * | [Saint] would file that in bug town. |
04:05:40 | JdGordon | no, it would display a bunch of ;'s as text |
04:05:58 | JdGordon | %t(2)%;%;%;%;%;%; <- one subline.... %t(2) <- the other |
04:06:14 | JdGordon | 99% cabbie in mainline is broken where it is used |
04:06:16 | | Join TheSphinX_ [0] (~briehl@p5B322AFB.dip.t-dialin.net) |
04:06:48 | [Saint] | Are you reading the line correctly? It should alternate between ";;;;;" and "that was a bunch of semi-colons" |
04:07:33 | JdGordon | ???????????? |
04:07:38 | | Quit TheSphinX^ (Read error: Operation timed out) |
04:07:41 | JdGordon | oh |
04:07:44 | JdGordon | yes, misreading |
04:07:48 | JdGordon | you're correct |
04:07:51 | [Saint] | I can't see why using a semi-colon in the middle of a subline should break it. I mean, isn;t that the reason it is an escaped char to begin with? So it will "just work" and not get confused as other code? |
04:08:07 | JdGordon | yes, but caabies have %; instead of ; |
04:08:41 | [Saint] | Which one, can you suggest an example? |
04:08:50 | JdGordon | http://git.rockbox.org/?p=rockbox.git;a=blob;f=wps/cabbiev2.112x64x1.wps;h=17cc26942002a15a8a227ab2cf3fa478169016a2;hb=1fa406dc216cbbabd9f17df6312abf205976276f#l53 |
04:09:01 | [Saint] | thankyou |
04:09:21 | JdGordon | git blame on that line is disturbing :) |
04:10:46 | [Saint] | That's nothing to worry about, it's just someone screwing up displaying a semicolon vs escaping a subline section. |
04:11:09 | [Saint] | It shouldn't need any more than removing the superflous % |
04:11:14 | JdGordon | indeed |
04:12:08 | [Saint] | For some reason, when you mentioned it, I thought you were saying that escaping a semi-colon to display it instead of ending the subline section wasn't expected to work. |
04:12:12 | [Saint] | And that confused me. |
04:21:03 | *** | Saving seen data "./dancer.seen" |
04:21:07 | | Join eckoit [0] (~ryan@50.65.10.24) |
04:24:21 | | Quit [Saint] (Remote host closed the connection) |
04:25:25 | | Join [Saint] [0] (~saint@rockbox/user/saint) |
04:41:12 | | Join amiconn_ [0] (amiconn@rockbox/developer/amiconn) |
04:41:12 | | Quit amiconn (Disconnected by services) |
04:41:14 | | Nick amiconn_ is now known as amiconn (amiconn@rockbox/developer/amiconn) |
04:41:24 | | Join pixelma_ [0] (pixelma@rockbox/staff/pixelma) |
04:41:24 | | Quit pixelma (Disconnected by services) |
05:00 |
05:03:21 | | Join Rower85 [0] (husvagn@v-413-alfarv-177.bitnet.nu) |
05:32:21 | | Join TheSphinX^ [0] (~briehl@p5B321632.dip.t-dialin.net) |
05:34:17 | | Quit TheSphinX_ (Ping timeout: 245 seconds) |
05:51:30 | | Quit [7] (Disconnected by services) |
05:51:39 | | Join TheSeven [0] (~quassel@rockbox/developer/TheSeven) |
06:00 |
06:09:44 | | Join scorche [0] (~scorche@rockbox/administrator/scorche) |
06:12:06 | | Quit scorche` (Ping timeout: 264 seconds) |
06:21:07 | *** | Saving seen data "./dancer.seen" |
06:38:14 | | Quit SuperBrainAK (Quit: pbly going to sleep /_\) |
07:00 |
07:13:39 | | Join eckoit_ [0] (~ryan@50.65.10.24) |
07:14:03 | | Quit eckoit (Read error: Connection reset by peer) |
07:14:03 | | Nick eckoit_ is now known as eckoit (~ryan@50.65.10.24) |
07:22:34 | | Quit t3hsilentone (Quit: Leaving.) |
07:35:23 | | Quit eckoit (Quit: eckoit) |
07:41:38 | | Nick mechanobot is now known as amithkk (uid4289@2buntu/writers/amithkk) |
07:48:03 | | Part DasBub ("Leaving") |
08:00 |
08:00:28 | | Join akaWolf [0] (~akaWolf@unaffiliated/akawolf) |
08:21:10 | *** | Saving seen data "./dancer.seen" |
08:29:18 | | Join t3hsilentone [0] (~pc@pool-74-98-200-43.pitbpa.fios.verizon.net) |
08:29:43 | | Join Zagor [242] (~bjst@rockbox/developer/Zagor) |
08:34:13 | | Join wodz [0] (~wodz@89-76-32-53.dynamic.chello.pl) |
08:35:22 | wodz | pamaury: (log) IMO all this EMI stuff should be written in assembly. Thats the only sane way to know what will happen. I would never relay of compiler doing something in particular way. |
08:36:26 | | Join kevku [0] (x@2001:470:dcc6:0:69:69:69:69) |
08:52:20 | | Join ender` [0] (~ender@foo.eternallybored.org) |
08:58:17 | | Join einhirn [0] (~Miranda@2001:638:605:4:683f:30df:8b27:3040) |
08:59:07 | | Join bertrik [0] (~quassel@rockbox/developer/bertrik) |
09:00 |
09:00:29 | | Quit zamboni () |
09:21:02 | | Join petur [0] (~petur@rockbox/developer/petur) |
09:28:19 | | Quit bertrik (Ping timeout: 256 seconds) |
09:32:00 | | Quit kevku (Ping timeout: 264 seconds) |
09:34:18 | | Quit wodz (Quit: Leaving) |
10:00 |
10:00:51 | | Join bebna [0] (~a.fasold@94.101.33.114) |
10:07:58 | | Join wodz [0] (~wodz@iwl138.internetdsl.tpnet.pl) |
10:21:11 | *** | Saving seen data "./dancer.seen" |
10:23:02 | | Quit jhMikeS (Ping timeout: 276 seconds) |
10:29:34 | | Join kevku [0] (x@2a01:d0:ffff:34a::2) |
10:30:24 | | Quit mc2739 (Read error: Connection reset by peer) |
10:30:58 | | Join mc2739 [0] (~mc2739@rockbox/developer/mc2739) |
10:35:45 | | Nick pixelma_ is now known as pixelma (pixelma@rockbox/staff/pixelma) |
11:00 |
11:14:20 | | Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) |
12:00 |
12:21:12 | *** | Saving seen data "./dancer.seen" |
12:24:26 | | Join pamaury [0] (~quassel@24.213.28.37.rev.vodafone.pt) |
12:24:26 | | Quit pamaury (Changing host) |
12:24:26 | | Join pamaury [0] (~quassel@rockbox/developer/pamaury) |
12:33:21 | | Join traveler [0] (~5e4ebc04@www.haxx.se) |
12:34:22 | traveler | hello. you could include tar src od mksmboot in guide, i was under impression that is sandisk closed source tool... |
12:34:35 | traveler | now seeing it's under git, will try to build it here /freebsd |
12:34:48 | traveler | *of mksmboot |
12:35:07 | Torne | we don't release separate source tarballs of those tools because most of them don't build independantly of the rest of the tree (they share includes/makefiles/etc) |
12:35:19 | Torne | also, the source is not so big that it's a problem to just check out the whole thing |
12:42:21 | traveler | sure, but notice that source is available would be just enough |
12:42:46 | traveler | i was reading manual in pdf iirc |
12:44:03 | Torne | the manual assumes you are installing with our binaries; the development info on the wiki tells you how to build. |
12:44:08 | | Join LinusN [0] (~linus@giant.haxx.se) |
12:45:35 | traveler | ok, but you are misunderstanding my point possibly, all i think would be really beneficial, is to not give out impression i had- mainly that mksmboot is closed source sandisk tool |
12:45:50 | traveler | i don't have problem with manual talking about default binaries |
12:46:00 | Torne | i don't see where we give out that impression. everything we use is open source. |
12:46:16 | Torne | (ish) |
12:46:56 | kugel | what's mksmboot anyway? |
12:48:20 | the-kyle | I believe it's mkamsboot, which patches Sansa OF. |
12:49:06 | traveler | and not mention of source |
12:49:13 | traveler | that's all |
12:49:24 | the-kyle | It's part of the Rockbox source tree. |
12:49:40 | traveler | now i know |
12:49:56 | traveler | looks my previous reply went missing |
12:50:14 | the-kyle | rbutil/mkamsboot/ |
12:50:42 | the-kyle | So it's actually part of the Rockbox Utility's source tree. |
12:50:54 | traveler | i probably got impression that is sandisk tool becouse didn't pay attention to where link in pdf pointed, and previous one was to sandisk forum |
12:51:05 | traveler | and there wasn't any mention of source |
12:51:18 | the-kyle | The link to the Sandisk forum is for the OF that can be patched with mkamsboot. |
12:51:27 | Torne | right, but the manual is not written for people who are compiling things from source |
12:51:40 | Torne | the manual is for users who are just following the instructions to install the binaries we provide |
12:51:41 | traveler | maybe i was skimming, but there was no mention of mksmboot being part of rockbox project in pdf iirc |
12:51:46 | traveler | i get your point |
12:52:11 | Torne | send us a manual patch if you think you can make it clear |
12:52:12 | traveler | first |
12:52:48 | the-kyle | If the manual was written for people who build from source, it would be confusing to end-users. |
12:53:39 | traveler | doh next messages went missing i see... this web irc is not so good... after i successfully install rb, will think about patch |
12:54:26 | traveler | kyle: it wouldn't if it would be just notice and not exhaustive source compile guide |
12:55:03 | traveler | ok, back under the rock i came from now... |
12:55:26 | | Quit petur (Quit: *plop*) |
12:55:26 | | Quit traveler (Quit: CGI:IRC (EOF)) |
12:57:31 | the-kyle | Doesn't the manual already mention GPL licensing? That would imply that the source code is available. So maybe only a clarification would be needed that only the OF is proprietary, and that's why it is patched using open source tools, so that it loads the open source Rockbox firmware. That's a bit verbose, but something like that may be all that's needed. |
13:00 |
13:01:20 | | Join tuma [0] (~tuma@kananga.it.jyu.fi) |
13:03:24 | tuma | freqmod, did you see my Opus bug report FS #12799 |
13:03:25 | fs-bluebot | http://www.rockbox.org/tracker/task/12799 Resuming opus file from bookmark is not working correctly (bugs, unconfirmed) |
13:03:48 | freqmod | No, i havent seen it |
13:03:51 | freqmod | but i have experienced it |
13:06:48 | * | the-kyle needs to file a bug report. Seems that attempting to skip back to the beginning of an opus file skips to the next file. But I didn't file it, because I figured it was a known problem, possibly related to the seeking issues that were already documented. |
13:07:08 | | Join traveler [0] (~5e4ebc04@www.haxx.se) |
13:07:45 | freqmod | i did not do much testing/fixing on the opus seeking code. It is mostly just a copy of the speex code |
13:08:40 | freqmod | + hacks to make it work for playback, and to seek back to roughly the same position as last time when playing an audiobook |
13:10:02 | | Join GodEater [0] (~bibble@cl-711.lon-02.gb.sixxs.net) |
13:10:02 | | Quit GodEater (Changing host) |
13:10:02 | | Join GodEater [0] (~bibble@rockbox/staff/GodEater) |
13:17:12 | | Quit tuma (Quit: leaving) |
13:18:58 | derf | freqmod: There is now a very good seeking implementation in http://git.xiph.org/?p=opusfile.git;a=blob;f=src/opusfile.c;hb=HEAD#l2137 |
13:19:49 | * | freqmod notes it |
13:33:53 | traveler | just fyi, i've downloaded entire rb tree /320+MB on disk?/ for one 48k util, clearly suboptimal... but mkamsboot compiled nicely. |
13:34:45 | traveler | apart from that that my rb is branded from git? all went smooth. /i just used mksamboot from git |
13:38:00 | pamaury | the entire repo is much smaller if you don't download the history |
13:38:05 | pamaury | (I think) |
13:50:03 | | Quit dongs (Ping timeout: 244 seconds) |
13:51:04 | | Join dongs [0] (~dongs@l212168.ppp.asahi-net.or.jp) |
13:54:28 | | Quit lebellium (Read error: Connection reset by peer) |
13:54:57 | | Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) |
13:57:12 | | Quit dongs (Remote host closed the connection) |
13:57:20 | | Join dongs [0] (~dongs@l212168.ppp.asahi-net.or.jp) |
14:00 |
14:01:06 | | Quit traveler (Quit: CGI:IRC (EOF)) |
14:18:21 | Torne | pamaury: actually downloading without the full history doesn't make much difference :) |
14:18:33 | pamaury | really ? |
14:18:36 | Torne | pamaury: the repo is only 140MB packed (the rest of the space used on disk is for the actual uncompressed working files) |
14:19:28 | Torne | all of history is not much bigger than a tarball of hte latest version. git compression is really good. |
14:21:15 | *** | Saving seen data "./dancer.seen" |
14:21:58 | | Quit wodz (Quit: Leaving) |
14:22:02 | Torne | hm |
14:22:11 | Torne | eh, actually not as much as i thought ) |
14:22:29 | Torne | a bz2 of the latest version is 48MB |
14:22:33 | Torne | but that's still not bad :) |
14:22:45 | | Join amayer_ [0] (~amayer@mail.weberadvertising.com) |
14:39:25 | | Join traveler [0] (~5e4ebc04@www.haxx.se) |
14:41:28 | | Quit dongs (Ping timeout: 255 seconds) |
14:42:04 | | Join dongs [0] (~dongs@l212168.ppp.asahi-net.or.jp) |
15:00 |
15:01:05 | | Quit shamus (Read error: Connection reset by peer) |
15:01:22 | | Join shamus [0] (~shmaus@ip-206-192-195-49.marylandheights.ip.cablemo.net) |
15:06:06 | traveler | heh, i got -git version because i've followed http://www.rockbox.org/wiki/SansaAMS#Installation not because of mkamsboot i've built from -git... oh well, it works fine i see, ty guys |
15:11:45 | | Join dfkt [0] (dfkt@unaffiliated/dfkt) |
15:12:30 | | Join eckoit [0] (~ryan@50.65.10.24) |
15:12:40 | | Join pamaury_ [0] (~quassel@121.206.189.46.rev.vodafone.pt) |
15:14:29 | | Quit pamaury (Ping timeout: 264 seconds) |
15:16:00 | | Quit dongs (Ping timeout: 248 seconds) |
15:16:39 | | Join dongs [0] (~dongs@l212168.ppp.asahi-net.or.jp) |
15:17:45 | | Quit traveler (Quit: CGI:IRC (EOF)) |
15:22:54 | | Quit dongs (Ping timeout: 240 seconds) |
15:23:49 | | Join dongs [0] (~dongs@l212168.ppp.asahi-net.or.jp) |
15:30:19 | | Join Robin0800 [0] (~quassel@cpc1-brig15-2-0-cust755.3-3.cable.virginmedia.com) |
15:47:31 | | Nick pamaury_ is now known as pamaury (~quassel@121.206.189.46.rev.vodafone.pt) |
15:47:42 | | Quit pamaury (Changing host) |
15:47:43 | | Join pamaury [0] (~quassel@rockbox/developer/pamaury) |
15:49:07 | | Quit dongs (Ping timeout: 256 seconds) |
15:49:33 | | Join dongs [0] (~dongs@l212168.ppp.asahi-net.or.jp) |
16:00 |
16:02:59 | amayer_ | does USB suspend mode effect charging on the ipod classic? |
16:02:59 | | Join megal0maniac [0] (~quassel@dsl-244-236-235.telkomadsl.co.za) |
16:02:59 | | Quit megal0maniac (Changing host) |
16:02:59 | | Join megal0maniac [0] (~quassel@unaffiliated/megal0maniac) |
16:05:33 | | Quit megal0maniac (Client Quit) |
16:05:50 | pamaury | amayer_: afaik we don't support usb suspend |
16:07:31 | amayer_ | pamaury: so then what does this accoplish? |
16:07:33 | amayer_ | http://git.rockbox.org/?p=rockbox.git;a=commit;h=17e57e3 |
16:11:07 | pamaury | this only implements usb charging current change so that the device doesn't draw more than what the spec allows. With this you could in theory support usb suspend but I don't think we do it properly |
16:11:49 | amayer_ | so that wont change how fast my ipod charges while connected to a pc? |
16:12:41 | [Saint] | We already have a way of doing that. |
16:13:14 | [Saint] | We can force the device to always attempt to draw 500mA over USB, iirc. |
16:13:33 | [Saint] | Which is as fast as it's ever going to be, unless I'm mistaken. |
16:14:29 | [Saint] | With dumb/low-power hubs, I'm not sure how that works, though. |
16:15:02 | pamaury | usb_charging_maxcurrent_change is simply used to ensure the 100mA/500mA limits depending on the mode (you can't draw more than 100mA while you're not fully enumerated or something like this) |
16:15:25 | Torne | it could do suspend if the hardware supports it, but it's not hooked upt hat way in the usb stack |
16:15:42 | Torne | i was reluctant to implement a charging mode that doesn't actually charge because it may make it tricky to revive things with flat batteries |
16:15:59 | [Saint] | Doesn't USB Charging mode == Force always attempt to draw 500mA? |
16:16:02 | Torne | and on some devices it's possible to go higher than 500mA |
16:16:07 | [Saint] | Or, am I mistaken there? |
16:16:15 | Torne | but we don't |
16:16:21 | Torne | because it may not be good for the host |
16:16:31 | Torne | [Saint]: it draws 500mA if nothing appears to be driving the bus |
16:16:39 | Torne | it waits for a short time after cable insert |
16:16:42 | [Saint] | right, thanks. |
16:16:45 | Torne | and sees if a host attempts to enumerate it |
16:16:55 | Torne | if not it enables 500mA mode |
16:16:56 | | Quit Robin0800 (Remote host closed the connection) |
16:17:02 | Torne | if so it waits until it gets permission from the host |
16:17:15 | Torne | it's a workaround for the lack of positive charger detection, really |
16:17:21 | Torne | if we had that then most people wouldn't need to use it |
16:17:31 | Torne | as most usb chargers these days are detectable if the player has the hardware to do so |
16:17:38 | Torne | (since otherwise they don't charge modern apple devices/phones/etc) |
16:17:48 | [Saint] | What's the exact difference between force, and yes? |
16:18:01 | Torne | normally it only ever draws what the spec allows it to |
16:18:11 | Torne | drawing 500mA when you haven't been told you can is never permitted |
16:18:19 | Torne | so, it's not enabled by default |
16:18:46 | * | [Saint] has decided to re-do the iLike Classic theme port for modern syntax |
16:19:44 | [Saint] | I was always secretly very proud of that naming scheme, witty and piss-taking all in one. |
16:19:57 | [Saint] | Not sure why I adandoned the theme. It bored me, I think. |
16:21:19 | *** | Saving seen data "./dancer.seen" |
16:22:35 | [Saint] | I'm not sure how to parse that commit for USB Suspend Mode. |
16:22:54 | [Saint] | "Support a mode that we currently don't use, and probably won't"? |
16:23:18 | Torne | it makes the driver support disabling charging |
16:23:21 | Torne | that's fine |
16:23:37 | Torne | i implemented that in the PP ipod driver as well |
16:23:57 | Torne | it probably would be fine to implement usb suspend, i just wasn't sure at the time |
16:24:16 | [Saint] | Right, but...my point is, it only enables support for it, though, no? It's not actually /using/ it, is it? |
16:24:21 | pamaury | it makes rockbox correctly handle the current limit as specific by the spec, without this you don't control the current draw so you potentially violate the spec, that's how I understand it |
16:24:28 | Torne | no, but why does that matter? |
16:24:28 | [Saint] | Or is it just poorly worded? |
16:24:32 | Torne | pamaury: no, that's not what it does |
16:24:39 | Torne | the code there already switches between 100 and 500 correctly |
16:24:44 | Torne | the commit adds support to also switch to 0 |
16:24:48 | pamaury | ah my mistake |
16:24:52 | Torne | which currently the usb core never asks the driver to do |
16:25:03 | pamaury | indeed, the core will never ask for 0 |
16:25:06 | Torne | but since the method to do so is known and it's, like, two lines, it doesn't hurt to have the support for it in the driver |
16:25:14 | Torne | in case someone does implement usb suspend in the core later |
16:25:18 | [Saint] | I guess I just don't see the pint in enabling it if it isn;t going to be used. |
16:25:26 | Torne | or if someone wants the possibly-ill-advised option to *really* completely disable charging |
16:25:39 | Torne | [Saint]: to save someone else who later improves teh usb core having to go work out how to do this on every target |
16:25:52 | Torne | i don't want to have to go and work out what GPIO to toggle on ipodclassic to make this work |
16:26:02 | Torne | i want to just be able to set the current to 0 and ahve the drivers figure it out ;) |
16:26:11 | Torne | so if the method is known, may as well implement it; it's trivial |
16:26:37 | [Saint] | iirc, USB Charging Mode == No actually still draws 100mA does it not? Rather confusingly worded. |
16:26:49 | [Saint] | I've never quite been ale to understand what it does. |
16:27:06 | Torne | yes, it still draws 100mA |
16:27:13 | Torne | because that's pretty much required to allow devices to not discharge |
16:27:31 | [Saint] | the Classic still discharges even drawing 100mA :) |
16:27:38 | Torne | only when the disk is spinning |
16:27:44 | Torne | if you stop accessing it it charges just fine |
16:27:45 | [Saint] | well..if the LCD is on. |
16:27:45 | Torne | (slowlt) |
16:27:46 | gevaerts | 100mA should be guaranteed not to blow up the host |
16:27:51 | gevaerts | So that's fine :) |
16:28:03 | Torne | yah. the point is, 100mA should not damage any hosts, even if theya re badly designed |
16:28:40 | Torne | it's what the amendment to the usb spec says you are allowed to do if you are a battery powered device that needs to draw some power before it can get to a point of being able to make sensible decisions |
16:28:46 | Torne | (i.e. to boot at all when your battery is depleted) |
16:29:24 | Torne | [Saint]: if you want to come up with a mechanism to allow charging to be disabled that is guaranteed not to leave a depleted device unbootable without some nontrivial intervention, that'd be great :) |
16:29:47 | [Saint] | Can't. |
16:29:56 | Torne | but having a user-visible setting that just sets the allowed current to 0 right now will cause devices that are flat to go into a boot/shutdown loop that youc an't get out of without clearing your settings, or booting the OF to charge :) |
16:30:03 | [Saint] | Not with the Classic, at least. |
16:30:03 | Torne | so, i opted not to do that |
16:30:17 | [Saint] | If we deep discharge there, and charging is disabled, we're fucked. |
16:30:23 | Torne | right |
16:30:29 | Torne | so, that's whyit doesn't do that. |
16:30:35 | Torne | It would be okay to do it for USB suspend, though |
16:30:38 | Torne | because that wouldn't be persistent |
16:30:43 | pamaury | support for usb suspend is mostly soc specific since you might have to poke many registers. For the usb stack I think it's pretty transparent (ie no transfers) but I don't know that part of spec very well |
16:30:45 | Torne | rebooting the device would make it start charging again |
16:31:01 | [Saint] | iff it still has EDM, it'd be a consideration. But we wipe out the OF...so, yah. No. :) |
16:31:24 | Torne | [Saint]: i don't like the idea of forcing you to dualboot or go into recovery mode to charge either |
16:31:36 | Torne | which is why it also doesn't work that way on PP ipods :) |
16:31:51 | Torne | having those modes is nice but "recharging from a dead battery" is not a rare case we should force you to use recovery for |
16:31:57 | Torne | rockbox should be smart enough to deal with it :) |
16:32:03 | [Saint] | Well, no. But the OF seems to be a lot more tolerant of booting in a very low power state than Rockbox is. |
16:32:16 | Torne | that's not really the same thing |
16:32:21 | [Saint] | I've often used that to charge a deep discharged iPod that won;t boot under Rb. |
16:32:32 | Torne | right, but that just means we have a different safety limit to the OF |
16:32:41 | [Saint] | With the Classic, if it got into that state. I'm not sure what you'd do. |
16:32:46 | Torne | or we measure the voltage differently or at a different point in boot when more/less hardare is turned on |
16:32:53 | Torne | it's nothing to do with how we manage charging |
16:32:57 | Torne | Apple's firmware does charging correctly |
16:33:02 | Torne | i.e. the same way our code does |
16:33:20 | Torne | it's why if you are deep discharged it refuses to even try and spin up the disk and displays a graphic instructing you to plug it in |
16:33:38 | Torne | so that it can detect the charger, go to 500mA charging mode, and charge in the bootrom without attempting to boot OSOS |
16:33:42 | Torne | (on the pp ipods, i mean) |
16:34:27 | [Saint] | the classic purports to be able to charge while off in Rockbox, but I think that is a mistake in the defines. |
16:34:34 | [Saint] | As far as I've seen...it can't. |
16:35:04 | [Saint] | If it could, there wouldn;t be an issue. |
16:35:19 | Torne | it seems unlikely to me |
16:35:32 | Torne | well, it's nto really about whether it can charge while off |
16:35:33 | | Join pretty_function [0] (~sigBART@123.252.212.212) |
16:35:41 | Torne | the ipods *can* charge while off |
16:35:54 | Torne | the problem is that the power management unit boots the ipod automatically if there is power applied |
16:36:01 | Torne | so it's actually that you can't turn off while charging ;) |
16:36:05 | [Saint] | Not in the Classic. |
16:36:14 | [Saint] | It doesn;t boot on USb detection. |
16:36:44 | Torne | really? not even with the OF? |
16:36:58 | Torne | it's *possible* on the PP ipods too, but we'd have to change the PMU poweron register for that |
16:37:00 | [Saint] | Never used the OF. |
16:37:01 | Torne | and we don't currently touch that |
16:37:12 | Torne | because if you mess that up you can get into a state where the device won't power on at all |
16:37:18 | Torne | unless you disconnect the battery internally :) |
16:37:20 | | Join y4n [0] (~y4n@unaffiliated/y4ndexx) |
16:37:32 | Torne | and that's not very nice to users either. |
16:38:22 | * | [Saint] is doing a small test now to attempt to verify if the hardware is smart enough to charge itself while powered down, but isn't terribly confident. |
16:38:28 | Torne | it's not about being smart |
16:38:35 | Torne | the LTC4066 is independant of the GPU |
16:38:36 | Torne | CPU |
16:38:52 | Torne | all that matters is whether the LTC4066 itself still gets vcc applied when the system is off |
16:39:00 | Torne | if so, then it will continue charging using the same register settings |
16:39:05 | Torne | it's just a matter of wiring :) |
16:39:24 | [Saint] | My test is pretty simple. Discharged to a known level, record voltage, power down and try charging for ~30 min, power on, record voltage. |
16:39:27 | [Saint] | We'll see. |
16:39:32 | [Saint] | But, I doubt it'll charge. |
16:39:58 | Torne | well, it depends what state the ltc4066 is left in also |
16:40:01 | [Saint] | If it doesn't, I'll push a patch that removes the define saying it's possible. |
16:42:11 | | Quit kevku (Ping timeout: 264 seconds) |
16:42:13 | [Saint] | amayer_: have you ever used the iPod Classic OF? |
16:42:31 | amayer_ | Yes for about 3 years |
16:42:36 | [Saint] | Do you recall what it does when powered down and a charger is inserted? |
16:42:47 | Torne | [Saint]: remember that the OF doesn't power down ever |
16:42:57 | Torne | under normal circumstances |
16:42:59 | Torne | it's only asleep |
16:43:06 | Torne | so, you need to actually know it's really off first :) |
16:43:26 | amayer_ | [Saint]: it uses some kind of sleep. |
16:43:29 | amayer_ | but when you connect to pc it depends on your settings and the computer you are connecting to |
16:43:34 | * | [Saint] is aware of this. |
16:43:36 | Torne | to actually turn it off is nontrivial |
16:43:36 | amayer_ | if you have "open itunes" enabled it will start itunes |
16:43:42 | [Saint] | but it *will* power down eventually. |
16:43:48 | Torne | [Saint]: no, it goes into suspend-to-disk |
16:43:57 | Torne | which doesn't necessarily leave the same PMU triggers enabled |
16:44:05 | [Saint] | Ah, hum. |
16:44:16 | amayer_ | ive never plugged it in on "real" power down |
16:44:17 | Torne | the only way to actually know is to deep discharge the battery until you know that it must really be off :) |
16:44:37 | Torne | and if it doesn't power on on usb insert then, then you've bricked it |
16:44:37 | amayer_ | i never truly ever turned it off |
16:44:44 | Torne | so, it's safe to assume that apple do wake on usb insert |
16:44:49 | Torne | otherwise deep discharges would be fatal ;) |
16:44:55 | Torne | there's no need to test it |
16:45:25 | [Saint] | So I should just go ahead and remove that define? |
16:45:28 | Torne | no |
16:45:52 | Torne | you already said that the behaviour on a rockboxed classic is that you can power off while usb is inserted |
16:46:00 | Torne | so, the thing to test is whether it continues to charge in that state |
16:46:04 | Torne | if so, then you should leave that define alone |
16:46:10 | Torne | the define serves a dual purpose depending on target |
16:46:32 | Torne | it *either* indicates that powering off will stop charging, and therefore we shouldn't allow poweroff when power is connected because it will surprise the user who expects it to charge |
16:46:41 | [Saint] | Under Rockbox, it won;t let you power off with USb inserted. But it won;t power on if it is powered of when USB is inserted. |
16:46:43 | Torne | *OR* it indicates that powering off while power is connected will just immediately power back on again |
16:46:46 | [Saint] | ...if that's different. |
16:46:54 | Torne | and therefore there is no point in trying |
16:47:00 | Torne | (which is the case on the PP ipods) |
16:47:08 | amayer_ | [Saint]: do you have time to try some code? |
16:47:25 | [Saint] | amayer_: possibly, which? |
16:47:25 | Torne | these two purposes are completely different cases but they have the same effect on rockbox, so we just have the one define :) |
16:47:40 | Torne | [Saint]: that sounds like a bug in rockbox, then |
16:47:55 | Torne | [Saint]: we almost certainly should change our behabiour to match the PP ipods |
16:48:01 | | Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) |
16:48:06 | Torne | it depends if it really does charge while off or not. |
16:48:13 | Torne | but, even then we probably should power on |
16:48:18 | [Saint] | we'll know in ~20min :) |
16:48:20 | Torne | because while off we can't select a charging level intelligently |
16:48:26 | Torne | so we would ahve to leave it on 100mA mode |
16:48:28 | Torne | for safety |
16:48:33 | Torne | and charging would be very slow |
16:48:37 | amayer_ | http://ubuntuone.com/1YGmqcG6kkQi7uxgWSbTup |
16:48:39 | amayer_ | its the slider staying in bouds you, JdGordon and I talked about a while ago |
16:48:41 | amayer_ | (no the code isnt pretty, yes i plan on makeing the code look better) this is just a proof of concept to make sure this is what you and I were talking about |
16:49:13 | [Saint] | even if it's only drawing 100mA, after 30 mins charging I should be able to record a marked difference. So, yeah. I'll wait and see and go from there. |
16:49:15 | Torne | [Saint]: if it currently has the define that says it can charge while off, though, i don't see what stops itfrom shutting down while plugged in. |
16:49:20 | Torne | [Saint]: that's what that define *does* |
16:49:22 | [Saint] | Not exactly a very technical test, but meh. |
16:49:46 | Torne | either the target can charge while off, in which case you can turn it off any time you like, or it can't, in which case we only allow you to turn it off when there's no power |
16:50:52 | [Saint] | I'll test it again when I'm finished here (can't find my other classic), but I'm fairly confident it doesn't let you power down on USB plug under Rockbox. |
16:51:23 | amayer_ | [Saint]: are you trying to test OF or Rockbox? |
16:51:41 | [Saint] | what channel am I in? :) |
16:52:06 | * | [Saint] has never actually used the Classic OF |
16:52:21 | [Saint] | I looked at it, once. |
16:52:31 | amayer_ | oh wow... do you want me to test if i can power down(rockbox) while connected to PC? |
16:52:45 | [Saint] | Yeah, sure. |
16:53:06 | amayer_ | [Saint]: its pretty ironic that you made the iLike theme but never used the OF |
16:53:20 | [Saint] | That irony isn;t lost on me :) |
16:53:46 | Torne | [Saint]: the logic in the button code is #if CONFIG_CHARGING && !defined(HAVE_POWEROFF_WHILE_CHARGING) it tests for !charger_inserted() before allowing poweroff |
16:53:58 | Torne | and the ipod6g code has HAVE_POWEROFF_WHILE_CHARGING as you say |
16:54:02 | Torne | so, it should power off just fine |
16:54:11 | Torne | the sleep timer behaves differently for some reason, thouh |
16:54:18 | Torne | the sleep timer does not shut down on any target if usb is connected |
16:54:31 | Torne | even if the device doesnt' charge over usb at all |
16:54:31 | Torne | :) |
16:54:40 | [Saint] | Seems like an oversight. |
16:54:42 | Torne | those are the only two things that check that define |
16:54:55 | Torne | it appears to be intentional |
16:55:00 | amayer_ | [Saint]: I connected to Ubuntu machine. held play for 15sec. it did nothing. when i unplug it powers down imidiatly. |
16:55:13 | [Saint] | Aha, I wasn't insane. |
16:55:17 | [Saint] | Awesome. |
16:55:22 | Torne | well, that's not what hte code says |
16:55:24 | Torne | at all :) |
16:55:37 | [Saint] | thanks, amayer_ |
16:55:56 | amayer_ | [Saint]: did you get my link ^ |
16:56:05 | Torne | and my interpretation of it is consistent with the ten or so targets i fiddled with this on ;) |
16:56:24 | Torne | so it sounds like something buried somewhere in ipod6g is specialcasing this without reference to the define |
16:56:45 | Torne | i would guess the intended behaviour is to not allow poweroff while charging and the define still being set is a mistake |
16:56:54 | [Saint] | amayer_: yep, I did. I've patched a local branch and I'm building now. I can't promise I'll get to testing it tonight, but I should be able to later this morning/afternoon. |
16:57:39 | amayer_ | [Saint]: i just tested it again and it shut off while charging |
16:57:45 | Torne | also, the power_off function in the 6g port explicitly sets the PMU wake condition to "usb inserted or exton1" |
16:57:55 | Torne | i.e. the code is intending that USB insert while off causes it to boot again. |
16:57:56 | Torne | :) |
16:57:59 | [Saint] | aha, interesting. |
16:58:00 | amayer_ | (the first time i pressed eject on ubuntu) |
16:58:06 | Torne | So, it sounds like the actual behaviour of the 6g port is different to the comments in the code |
16:58:12 | [Saint] | Maybe I've had bad luck, or it is bugged and/or inconsistent. |
16:58:17 | Torne | so, there's probably *several* buts |
16:58:20 | Torne | bugs |
16:58:35 | Torne | so, yeah, have fun with that. my guess would be it's intended to behave identically to the PP ipods |
16:58:42 | Torne | and thus the thingst hat don't are bugs |
16:58:59 | Torne | the charge controller and PMU work basically the same as the ipodvideo (the charge controller is the exact same chip) |
16:59:05 | Torne | so, they probably should work the same |
16:59:12 | [Saint] | amayer_ apparently just managed to get it to shut down while charging. Which I haven't managed yet. Perhaps it is an Ubuntu is messed up thing. |
16:59:23 | [Saint] | Rockbox and unix don;t seem to gel very well sometimes. |
16:59:36 | Torne | oh, i don't htink it will let you power off *whiel in USB mode* |
16:59:44 | Torne | you need to hold the button while you insert the cable |
16:59:57 | Torne | i.e. be charging in the background |
17:00 |
17:01:09 | [Saint] | Wow...hum....ok....it actually does look like the Classic can charge when powered off. |
17:01:11 | [Saint] | Weird. |
17:01:32 | amayer_ | Torne: [Saint]: if i eject(right click icon on ubuntu launcher and click eject) it will not power off at all(while in usb mode) until i unplug the device. |
17:01:34 | amayer_ | if i do not click eject first and just hold play for ~15 sec the play shuts off(while in usb mode) |
17:01:58 | Torne | [Saint]: the battery level went up noticably? |
17:02:01 | amayer_ | [Saint]: the classic does charge while off(ive done this tons of time) |
17:02:08 | [Saint] | Torne: 15% |
17:02:23 | Torne | okay so there's a bunch of interesting issues here |
17:02:32 | Torne | shutting off behaviour appears inconsistent, which is odd |
17:02:40 | Torne | it doesn't power on when you plug usb the way the code suggests it should |
17:02:58 | Torne | and also: if it does charge while off, this means that the charge controller is probably just continuing to use the same settings |
17:03:02 | [Saint] | I just tested shutting down when not enumarated, this works. |
17:03:08 | Torne | i.e. it will stay on 100ma or 500ma, whatever it was using before |
17:03:08 | amayer_ | Tonre: ive went from almost empty to fully charged overnight(plugged into usb slot, device powered down & plugged into wall, device powered down) |
17:03:12 | Torne | which is not spec-compliant :) |
17:03:33 | Torne | to be sensible we probably *should* power on when usb is inserted, the way PP ipods do |
17:03:39 | Torne | because then software can take control of charging |
17:03:47 | Torne | and it looks like the cvode is intended to do that already :) |
17:03:50 | Torne | but, clearly it doesn't work ;) |
17:03:56 | Torne | maybe we're setting the wrong bit int he PMU wake register? |
17:04:10 | [Saint] | So it seems like it is using the HAVE_POWEROFF_* define in a very inconsistent (to other targets) way...? |
17:04:16 | Torne | no, why? |
17:04:23 | Torne | you just said it can power off while charging |
17:04:28 | Torne | so, that define can be defined :) |
17:04:42 | amayer_ | Torne: i kinda like not powering on while charging(usb or wall) |
17:04:48 | Torne | amayer_: RIght, but it's not safe |
17:04:51 | Torne | well |
17:04:52 | Torne | it may be safe |
17:04:57 | Torne | but it can't be both safe and fast |
17:04:59 | amayer_ | oh... well thats not good |
17:05:14 | Torne | either it charges very slowly while off, or it charges fast without caring whether the host allows it or not |
17:05:23 | Torne | the charging chip doesn't know anything about USVB |
17:05:30 | Torne | it relies on the firmware to tell it what current is okay |
17:05:36 | Torne | so when the cpu is off those settings are fixed |
17:05:41 | Torne | i'm not sure what they end up set to :) |
17:05:46 | Torne | you'd need, like, a multimeter to find out |
17:05:47 | amayer_ | could you just set it to slow before power_down ? |
17:05:59 | Torne | you could but then it would take 5x longer to charge |
17:06:19 | Torne | users generally are not going to expect that charging suddenly takes five times longer for no visible reason |
17:06:25 | [Saint] | Better safe than sorry? |
17:06:33 | amayer_ | thats what i was thinking |
17:06:33 | Torne | but you can have both |
17:06:40 | Torne | if you jsut boot, then you can charge safely *and* fast |
17:06:50 | Torne | why not have both :) |
17:07:24 | Torne | http://git.rockbox.org/?p=rockbox.git;a=blob;f=firmware/target/arm/s5l8702/ipod6g/power-ipod6g.c;h=2e0fe878833a9e18778be8bbd7627f52e220b9c1;hb=HEAD#l34 <- here, btw |
17:07:31 | Torne | comment says the wake condition includes USB inserted |
17:07:37 | Torne | but i guess it doesn't ;) |
17:07:45 | [Saint] | Apparently not :) |
17:09:21 | Torne | so, yeah. the behaviour doens't match the comments |
17:09:42 | Torne | and the code is not really consistent with itself (it claims it's booting on usb insert, but it also claims it's okay to power off when charging) |
17:10:33 | Torne | but, i don't know much about the classic, so not my problem ;)( |
17:10:39 | amayer_ | just to make sure im not mistaken i just powered down my ipod classic and plugged it into my ubuntu box and it didnt turn on(waited 30 sec to confirm) |
17:11:02 | amayer_ | so it doesnt match the comments |
17:11:26 | Torne | yes |
17:11:52 | | Join Katu [0] (~Katu@c-71-236-211-59.hsd1.or.comcast.net) |
17:17:14 | amayer_ | [Saint]: i have no idea if the code i gave you has anything to do with touch screen. can you check it out when ever you get around to testing it? I dont have any touch screen players. |
17:17:35 | [Saint] | It was indended solely for touch, actually :) |
17:17:54 | [Saint] | There just wasn't any reason to disclude it for non-touch. |
17:17:56 | amayer_ | Ive been using this code for 3 days now with 2 different personal themes and it looks/works great |
17:18:44 | amayer_ | [Saint]: so i screwed up to touch feature? |
17:19:03 | [Saint] | No idea, I wouldn;t think so. |
17:24:45 | [Saint] | Uuuuuuuuuuuuugggggggggggggghhhhhh! |
17:24:49 | [Saint] | What was I thinking?!? |
17:24:59 | [Saint] | So. Much. Ugly... |
17:27:04 | Katu | Dig up an old theme? |
17:27:14 | [Saint] | Very. |
17:27:36 | Katu | Haha, I had a similar reaction when I dug up an old website :-P |
17:27:37 | [Saint] | My "iLike" series of Apple OF clones. |
17:27:45 | Katu | ahhh |
17:29:07 | [Saint] | http://imgur.com/BX2cK,9OCbk |
17:29:16 | [Saint] | spot the difference :) |
17:29:53 | Katu | hahaha, with my very limited iPod experince, it looks the same to me |
17:29:58 | [Saint] | (the font is obviously hacked up, but this theme predates antialiased fonts by ~2 years or so) |
17:30:09 | Katu | ahh, gotcha |
17:30:33 | Katu | I never did like the OF apple interface. One of the many reasons I never bought one hahaha |
17:36:20 | Katu | Made some more progress on my theme last night while I was chatting with my buddy |
17:36:47 | * | Katu is uploading a screen dump now |
17:38:39 | Katu | Haha, it helps to hit F5, not Print Screen :P |
17:40:27 | amayer_ | Katu: do bitmaps support alpha layers? |
17:40:42 | [Saint] | amayer_: sure they do. |
17:40:54 | Katu | Yes they do, you just have to make sure that you save them with Alpha enabled |
17:41:02 | amayer_ | I didnt think they did... and here i am using magic magenta |
17:41:09 | [Saint] | But Rockbox only supports 32bit A8R8G8B8 |
17:41:19 | [Saint] | Not 16bit A1R5G5B5 |
17:41:23 | Katu | That's what I was using yesterday :P |
17:41:29 | * | [Saint] found that out the hard way |
17:41:38 | * | Katu did as well |
17:41:38 | amayer_ | so if i have alpha enabled i ahve to use 32 bit? |
17:41:46 | Katu | yup |
17:41:49 | [Saint] | amayer_: yes. |
17:42:02 | amayer_ | is this documented anywhere? the wiki maybe? |
17:42:41 | * | [Saint] somehow doubts this |
17:42:50 | amayer_ | google suggests not |
17:43:08 | Katu | I will say that I never ran across that in any of the manuals when I was researching into it |
17:43:14 | [Saint] | Documentation isn;t really a strongpoint of the theme engine. |
17:43:29 | [Saint] | A sad but true fact is, many of us suck at writing documentation. |
17:43:37 | amayer_ | isnt JdGordon rewriting the theme engine or something? |
17:43:46 | [Saint] | ....~2 years ago |
17:43:48 | | Quit Zagor (Quit: Clint excited) |
17:43:54 | [Saint] | Been there, done that. |
17:43:58 | amayer_ | *jaw drops* |
17:44:06 | Katu | I saw mention of alpha transparency while searching forums, but until [Saint] pointed it out to me, I hadn't realized how to do it properly |
17:44:07 | amayer_ | so the theme engine is 2 years old? |
17:44:21 | Torne | something like that, for this incarnation |
17:44:33 | Torne | it's had several :) |
17:44:34 | [Saint] | The *parser* was re-done, the engine itself is the same, or mostly the same. |
17:44:48 | amayer_ | Katu: it is also in the tracker(when they used to submit patches there) |
17:44:59 | Katu | ahh, good to know |
17:45:19 | Katu | http://imageshack.us/photo/my-images/198/abstractprogressreport.jpg/ |
17:45:46 | Katu | Here's how my theme is coming along so far. I implement the volume bar suggestion that JdGordon had, works perfect! |
17:46:01 | | Quit pretty_function (Remote host closed the connection) |
17:46:04 | | Part eckoit |
17:48:09 | amayer_ | so you can have semi-transparency in a theme? |
17:48:22 | amayer_ | i always thought it was all or nothing |
17:49:04 | Katu | Yeah, the mute graphic in that one has semi transparency in it |
17:49:56 | Katu | It was a good test too, wasn't sure how well it would work. Just have to make sure the image saves with alpha. That's the problem I had yesterday; Photoshop wasn't saving with alpha because I had the settings wrong |
17:50:22 | [Saint] | nice. |
17:50:28 | [Saint] | That looks awesome. |
17:50:34 | Katu | Never did figure out how to get Photoshop to save it correctly. I gave up and used GIMP hahaha |
17:50:56 | amayer_ | i dont do my own graphics... but they guy that does my graphics just made a theme that he faked transparency on... i feel kinda sorry for making him do that now |
17:51:06 | Katu | The Technics thing is what is displayed when there is no album art :) |
17:51:18 | * | [Saint] is very passionate about the theme engine, and simply loves seeing people do "Cool Sh*t (TM)" with it |
17:51:24 | [Saint] | ...well done chap, well done. |
17:51:58 | Katu | Thanks :) I'm happy it is turning out as well as it is, being my first theme for anything, ever :P |
17:52:14 | * | gevaerts wants people to make themes that explore the theme engine boundaries in creative ways *and that are actually finished :) |
17:52:21 | gevaerts | i.e. not like me :) |
17:52:32 | Katu | hahahah |
17:54:21 | Katu | %?pv<%xd(mute)|%xd(vol,%pv)|%xd(vol,13)> |
17:55:12 | Katu | ^that's the code I used for the volume bar. Works flawlessy. As soon as it gets to >0db, it jumps to the final image, number 13, which is the one that has plenty of red in it |
17:55:32 | [Saint] | iirc, you need at least 4 cases. mute, >0dB, 0dB, <0dB |
17:56:15 | Katu | true, but I do not have an image set aside for 0db, so i left that out, and it simply jumps to that last image for the 0db and greater |
17:56:30 | [Saint] | if you don't care to show an image specifically for 0db, duplicate the last case. |
17:56:57 | | Quit shamus (Quit: Leaving) |
17:56:58 | [Saint] | %?pv<%xd(mute)|%xd(vol,%pv)|%xd(vol,13)%xd(vol,13)> should work |
17:57:13 | Katu | Alright, I will put that in there, to avoid potential problems then |
17:57:50 | [Saint] | Unless I'm mistaken you current code shouldn;t be displaying anything for <0dB |
17:58:26 | Katu | It seems that it is simply displaying subimage 13 for everything 0db and greater |
17:58:28 | amayer_ | [Saint]: you forgot a pipe in your code ^ |
17:58:35 | [Saint] | but...it looks like it *is*, from the screenshot...which doesn;t seem to make any sense. |
17:58:46 | [Saint] | amayer_: Ah, good catch. |
17:59:27 | Katu | Either way, just to be sure, the code is now %?pv<%xd(mute)|%xd(vol,%pv)|%xd(vol,13)|%xd(vol,13)> |
17:59:41 | [Saint] | Yeah...that is weird. The code for a %pv condition should have at least four segments. |
17:59:59 | [Saint] | mute, >0dB, 0dB, <0dB |
18:00 |
18:00:08 | * | [Saint] shrugs |
18:00:11 | Katu | behavior remains the same, with image 13 for 0db, as well as >0db, but this way it doesn't cause a problem hehehehe |
18:00:46 | Katu | Now, on to battery level display |
18:01:02 | [Saint] | The reason we have a case for 0dB is to know exactly where line level is. |
18:01:08 | [Saint] | Which some people find very important. |
18:01:22 | | Join kevku [0] (x@2001:470:dcc6:0:69:69:69:69) |
18:01:23 | Katu | ahh, gotcha. |
18:01:44 | Katu | Why is line level important? |
18:01:59 | [Saint] | So you may use the 3.5 out as line out. |
18:02:22 | Katu | ahh, I see. And that way, it's volume is completely neutral |
18:02:26 | Katu | right? |
18:02:31 | * | [Saint] nods |
18:02:39 | Katu | I see, I see |
18:03:04 | * | [Saint] knows this phase of Rockbox well |
18:03:15 | [Saint] | "Well...shit, it just keeps getting better, doesn;t it?" |
18:03:16 | Katu | Glad I went ahead with a text-based volume indicator as well then :) |
18:03:24 | Katu | hahahaha |
18:08:00 | Katu | So when I am doing the battery bar, it looks like I will have to use conditionals to make the battery image change based on charging, correct? |
18:08:39 | Katu | Looks like it would be one for %bp, one for %bc, and %bl for the bar? |
18:08:59 | [Saint] | Yeah, I'll show you how I did mine. One sec. |
18:09:03 | Katu | cool |
18:11:30 | [Saint] | %?bp<%?bc<we are charging|charger is connected but we're not charging, so we must be charged>> |
18:12:31 | Katu | Ok, that's about what I thought. |
18:15:21 | Katu | So then, while charging, is it still possible to display current charge level? |
18:15:36 | | Join bertrik [0] (~quassel@rockbox/developer/bertrik) |
18:15:46 | [Saint] | Yes, sure. |
18:16:03 | [Saint] | Just put the switch in the "we are charging" case. |
18:16:28 | [Saint] | alternatively, you could just display the battery level all the time. |
18:16:34 | Katu | ahh, ok, cool. |
18:17:05 | Katu | Yeah, I think I'm going to do it all in one viewport/image though. I'm gonna play around a bit and see what I come up with |
18:18:04 | [Saint] | If you do a check for hold, it also pays to check if there is a remote present locking the device as well: "%?mh<%?mr<using remote hold|on hold, but not using remote hold, so it must be the hold on the unit itself>>" |
18:18:54 | [Saint] | "%?mh<%?mr<using remote hold|on hold, but not using remote hold, so it must be the hold on the unit itself>|not locked at all>" |
18:18:55 | [Saint] | rather |
18:19:01 | | Join shamus [0] (~shmaus@ip-206-192-195-49.marylandheights.ip.cablemo.net) |
18:19:02 | Katu | Good to know, I'll make sure and save that snippet for when I get to the hold indicator. |
18:20:16 | [Saint] | Sometimes, the amount of conditions can seem quite nightmarish and non-obvious, so I'm trying to recall the things that tripped me up in my themeing youth. |
18:20:41 | Katu | Makes sense, I definitely appreciate having it in plain english |
18:21:21 | *** | Saving seen data "./dancer.seen" |
18:25:57 | | Quit lebellium (Ping timeout: 265 seconds) |
18:26:42 | | Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) |
18:28:45 | | Join Wardo [0] (~Mirandaha@176-120-190-109.dsl.ovh.fr) |
18:40:29 | | Quit bebna (Quit: Leaving.) |
18:52:34 | Katu | Whew. Ok, time to take a firewood-chopping break haha |
18:52:38 | [Saint] | Shit...how do I get the sim to give debug output again? |
18:53:02 | Katu | hmm.. |
18:53:23 | * | [Saint] hasn't used this thing in years |
18:54:09 | Katu | I'm checking to see if I can dig it up |
18:55:57 | [Saint] | ah, found it. |
18:56:10 | [Saint] | ./rockboxui −−debugwps |
18:56:13 | gevaerts | Katu: if you want to chop firewood, use the medieval theme |
18:56:21 | [Saint] | heh |
18:56:39 | Katu | hehe |
18:56:58 | Katu | Ahh, the fun of keeping the house warm with a wood stove :) |
18:57:13 | Katu | anyway, be back in a little while |
19:00 |
19:01:58 | | Quit pamaury (*.net *.split) |
19:01:58 | | Quit Cultist (*.net *.split) |
19:01:59 | | Quit Guinness (*.net *.split) |
19:01:59 | | Quit FOAD (*.net *.split) |
19:01:59 | | Quit tchan (*.net *.split) |
19:01:59 | | Quit froggyman (*.net *.split) |
19:01:59 | | Quit Elfish (*.net *.split) |
19:02:06 | | Join FOAD [0] (~foad@83.161.135.61) |
19:02:06 | | Quit FOAD (Changing host) |
19:02:06 | | Join FOAD [0] (~foad@unaffiliated/foad) |
19:02:11 | | Join Elfish [0] (amba@2001:1608:12:1:13:3:3:7) |
19:02:20 | | Join froggyman [0] (~froggyman@unaffiliated/froggyman) |
19:02:23 | | Join Cultist [0] (~Cultist@62.150.121.250) |
19:02:34 | | Join Guinness [0] (Slayer@c-68-55-111-159.hsd1.va.comcast.net) |
19:02:35 | | Join zamboni [0] (~bottledwa@unaffiliated/zamboni) |
19:02:47 | | Join tchan [0] (~tchan@lunar-linux/developer/tchan) |
19:03:08 | | Join pamaury [0] (~quassel@rockbox/developer/pamaury) |
19:15:05 | | Join thomasjfox [0] (~thomasjfo@rockbox/developer/thomasjfox) |
19:15:54 | copper | Does Rockbox have an option to invert channels? |
19:16:04 | copper | "This might be a dumb question but is there any adverse effect to the music or sound quality when wearing them in reverse, i.e. swapping the left right channel physically. |
19:16:07 | copper | Reason i'm asking is that due to the angle of my sony xba's nozzle, wearing them with cable running over the ear causes discomfort but reversing the channels solves it completely." |
19:16:34 | copper | swap channels* |
19:17:46 | Katu | Looking through the manual, I don't see a setting for it, but I could be missing something |
19:18:16 | [Saint] | an oft requested feature. |
19:18:26 | copper | it's the kind of option that you wouldn't see any use for, until some random dude on the internets comes up with one |
19:18:52 | bertrik | [Saint]: yes, maybe we should implement it |
19:18:57 | [Saint] | Or until you figure out the Apple reversed the channels for *some_reason* |
19:19:04 | copper | uh? |
19:19:10 | copper | where? |
19:19:36 | [Saint] | What do you mean where? |
19:19:44 | bertrik | It can be done with the same kind of operations used to do karaoke, mono left, mono right, etc. |
19:20:01 | copper | Is there such a problem with some iPods? |
19:20:05 | bertrik | Sound Settings / Channel Configuration I think |
19:20:08 | bertrik | *could be done |
19:20:19 | [Saint] | The main reason I've seen this requested is that some people have figured out that Apple reversed the channels for a seemingly unknown reason. |
19:20:29 | copper | again, where |
19:20:40 | copper | on what products? |
19:21:21 | [Saint] | I have seen this reported with the Classics, iirc. |
19:21:41 | copper | WHAT |
19:21:54 | * | copper checks it out |
19:22:17 | [Saint] | Indeed, the internets pulls up many reports of this |
19:23:03 | copper | nope, it's fine on mine with the OF |
19:23:05 | bertrik | so, did they swap channels on both the connector AND the headphones? |
19:24:01 | [Saint] | I'm not sure, reading through the reports on the forums suggests it may have been a Rockbox bug. |
19:24:03 | [Saint] | Hummm... |
19:24:23 | [Saint] | Either way, it would be nice to be able to do reverse stereo. |
19:25:01 | | Part amayer_ |
19:25:37 | * | [Saint] wonders what copper is doing with a non-Rockbox'ed Classic |
19:25:44 | [Saint] | Bad copper, Bad! |
19:25:47 | [Saint] | Go to your room. |
19:26:01 | Katu | hahaha |
19:26:06 | copper | I switch between firmwares and codecs according to my moods |
19:26:25 | [Saint] | What does the OF support that we don't?!? |
19:26:47 | [Saint] | Or, did I parse that incorrectly? |
19:26:47 | copper | sexyness |
19:26:57 | [Saint] | Errrr... |
19:27:07 | copper | non fucked up USB transfers |
19:27:14 | copper | no daily crashes |
19:27:17 | [Saint] | Get a sane OS :) |
19:27:25 | copper | no u |
19:27:39 | [Saint] | Works fine on debian/ubuntu here, also, no crashes...ever. |
19:27:50 | copper | figures |
19:27:53 | copper | "works for meâ„¢" |
19:27:56 | [Saint] | I've actually tried to crash it, too, following other people recipes. |
19:28:05 | [Saint] | No luck yet. |
19:28:10 | copper | I don't know what to tell you, I have no idea what the problem is |
19:28:11 | AlexP | USB is well known to be buggered, especially on the classic |
19:28:16 | copper | there! |
19:28:18 | [Saint] | If you have a recipe for a repeatable crash, do share. |
19:28:22 | bertrik | I vaguely remember stereo swap was discussed before and perhaps there was even a patch |
19:28:24 | AlexP | This is why emcore comes with such an old version of Rockbox |
19:28:31 | bertrik | wonder how it works in combination with balance |
19:29:15 | [Saint] | That's why there's a fallback image, but the reason why it comes with such an old image is because that's the last thoroughly tested one. |
19:29:24 | [Saint] | The image it comes with has no effect on the fallback image. |
19:29:36 | [Saint] | Current images are fine. |
19:29:43 | AlexP | [Saint]: No, it is because USB is broken in current builds for many people |
19:29:51 | copper | ^ |
19:29:55 | AlexP | As TheSeven next time he is around |
19:29:59 | [Saint] | ...which is why there is a fallback image. |
19:30:02 | AlexP | He explained it all to me not long ago |
19:30:15 | copper | IIRC I had the fallback image crash as well once |
19:30:26 | copper | to be confirmed though |
19:30:26 | | Join stoffel [0] (~quassel@pD9E41618.dip.t-dialin.net) |
19:30:31 | [Saint] | No matter what, you can't replace the fallback image. So the image it comes with is largely irrlevant,. |
19:30:33 | bertrik | would you more likely swap channels because the audio file has it swapped, or because you're wearing the left earphone in the right ear ? |
19:30:44 | copper | neither? |
19:31:01 | copper | both are unlikely situations |
19:31:26 | [Saint] | Nuhuhhh...there's quite a few IEMs that are designed to be worn in either ear. |
19:31:35 | copper | except with people who don't know how to wear headphones, but they're not going to remedy it with some option |
19:31:50 | [Saint] | Some have under/over-the-ear combinations that involve swapping the IEMs also |
19:32:07 | | Join amayer_ [0] (~amayer@mail.weberadvertising.com) |
19:32:07 | [Saint] | there isn;t always a clear left/right monitor. |
19:32:10 | copper | I cringe everytime I see a dude in the street wearing headphones the wrong way |
19:32:22 | [Saint] | again, for some, there isn;t a "wrong" way. |
19:32:49 | [Saint] | Some phones are designed to be swapped this way. |
19:32:56 | [Saint] | s/phones/monitors/ |
19:33:19 | [Saint] | usually ones with under/over-the-ear combinations. |
19:34:16 | bertrik | It looks like it's fairly easy to do left/right swapping, let's just ignore the people who complain about balance working the "wrong way" in combination with the swap |
19:37:00 | * | [Saint] doesn't really understand the need for a known good image to be installed with the classic instead of pointing to the current build. |
19:37:19 | [Saint] | You can *always* boot the flabblack image, and if the fallback image won;t mount you can't install anyway. |
19:37:28 | [Saint] | *fallback |
19:38:12 | [Saint] | If the fallback image is toast, you'd need to reinstall with DFU which will always "just work", so...I don;t get it. |
19:38:43 | [Saint] | Users should be encouraged to install git HEAD |
19:38:54 | copper | I don't get you |
19:39:10 | copper | You want people to install git, but you don't want to advertise the Classic port? |
19:39:36 | [Saint] | We don;t advertise any unusable port. |
19:39:50 | copper | sounds a bit contradictory to me |
19:39:54 | [Saint] | Why? |
19:39:57 | [Saint] | Do tell. |
19:40:22 | [Saint] | There is no official way to install Rockbox on the Classic...so why should we advertise it? |
19:40:24 | copper | "Don't install the Classic port, it's unusable, but if you really really want to, install Git, it comes with shitty USB code" |
19:40:59 | [Saint] | unusable != cannot be used, it's simple a classification, you know this. |
19:41:22 | [Saint] | Also, USb is fine for more people than it isn't, and there is always a way to mount via the fallback image. |
19:41:30 | AlexP | You have no way fo knowing that |
19:41:36 | [Saint] | If you can't mount the fallback, you couldn;t install. |
19:41:40 | AlexP | It may be, it may not be |
19:41:47 | AlexP | But there is no point saying that |
19:42:04 | [Saint] | Going by reports, it is fine for more people than not. I can only go by what is reported. |
19:42:13 | AlexP | That means nothing |
19:42:18 | AlexP | And it also doesn't matter |
19:42:19 | [Saint] | And it is true, that if you couldn;t mount the fallback image, you couldn;t install. |
19:42:24 | AlexP | It isn't a majority thing |
19:42:34 | AlexP | If it doesn't work for enough people, that is enough |
19:42:58 | [Saint] | But it iosn;t like there is no way to access USB even in a current image. |
19:43:28 | [Saint] | Even if USB is failing in that build, you can still access USB via the fallback..so I don;t see the problem in using an up-to-date image. |
19:43:35 | AlexP | We know you don't |
19:43:40 | AlexP | You've said many times |
19:43:41 | * | [Saint] stabs his ; key |
19:44:13 | [Saint] | And no one can say what the problem is. But they are saying it shouldn;t be done. |
19:44:28 | AlexP | I don't understand that sentence |
19:44:59 | Katu | I think the major difference here, is whether it is /recommended/ to install in the first place. By saying it is unusable, it is not recommended. However, if you choose to, it may or may not work |
19:45:03 | [Saint] | You're saying it shouldn;t use a current image, but I don;t get why. IIUC, it's because of USB, but there will always be a way to access USB. |
19:45:17 | copper | a cumbersome way |
19:45:28 | copper | cucumber? |
19:45:33 | AlexP | I'm saying it shouldn't because TheSeven says it shouldn't; he listed the reasons for me a while ago |
19:45:44 | AlexP | As he is the main dev for it, I take his views over yours |
19:46:08 | AlexP | USB was a large part of that |
19:46:09 | [Saint] | Well, fwiw, even in freemyipod it is suggest to use the current image. |
19:46:12 | [Saint] | So, I don't get it. |
19:46:16 | AlexP | We know |
19:46:17 | copper | it does? |
19:46:52 | AlexP | [Saint]: I've not been there or read that, this is a result of a conversation last time I suggested emcore ship with an up-to-date image |
19:46:58 | copper | "Download the "rockbox-ipodclassic.zip" file from the emCORE Releases page" |
19:47:11 | AlexP | Which is dead old |
19:47:28 | amayer_ | its acutally 1 year old today |
19:47:31 | [Saint] | Yes, and in many cases in IRC they will instruct to update directly to git head. |
19:47:47 | AlexP | well, you persuade TheSeven then |
19:47:49 | copper | it links to this: http://files.freemyipod.org/releases/20120102/rockbox-ipodclassic-r31516-20120102.zip |
19:49:46 | | Join prof_wolfff [0] (~prof_wolf@62.83.50.196.dyn.user.ono.com) |
19:50:34 | [Saint] | It's all irrelevant, really, as there's no way to actually install it officially. I just find it weird that using an ancient image is actively encouraged by the installation instructions. |
19:50:36 | amayer_ | oh i was mistaken its 1 year and 10 days old |
19:50:58 | amayer_ | i use the most current version |
19:51:03 | amayer_ | (dev build) |
19:51:09 | * | [Saint] too |
19:51:43 | copper | AlexP: why is the USB part better in the old build, and worse in git? |
19:51:53 | copper | work in progress? |
19:52:20 | amayer_ | ive only ever crashed while using usb twice in the past 9 months |
19:52:33 | copper | <−−- crashes 3 times out of 4 |
19:52:49 | copper | or maybe half the time if I'm not exagerating |
19:52:49 | [Saint] | I haven't managed it yet, on Windows or linux |
19:52:58 | AlexP | copper: I don't know for the classic in particular, but there was a major refactoring done at some point which made USB buggy on a number of devices |
19:53:04 | amayer_ | mine are all ubuntu boxes |
19:53:09 | AlexP | The classic might be that, or something else |
19:53:10 | copper | Arch Linux here |
19:53:11 | amayer_ | and 1 debian box |
19:53:14 | [Saint] | amayer_: that definitely helps |
19:53:37 | amayer_ | what using linux for all transfers/ |
19:53:40 | copper | I haven't used Rockbox with my Win7 install |
19:54:01 | [Saint] | Windows seems to be a lot less forgiving. |
19:54:09 | amayer_ | oh |
19:54:16 | [Saint] | At least, most reports of failed mounts I see are Windows boxes. |
19:55:03 | amayer_ | [Saint]: did your build finish yet? |
19:55:11 | Katu | Yeah, I have problems mounting every single one of my mp3 players on Windows, and none of them are rockboxed |
19:55:36 | amayer_ | ...very interesting |
19:55:53 | copper | oh, btw, I've had my rockboxed Clip+ freeze after USB transfers a few times |
19:56:47 | [Saint] | AMS players are *definitely* known to have flakey USb |
19:57:03 | AlexP | I've not had one of mine crash on USB |
19:57:06 | AlexP | ergo, no problem |
19:59:50 | amayer_ | how is the fuze+ usb? |
20:00 |
20:01:25 | AlexP | amayer_: Don't know |
20:02:03 | amayer_ | oh. my friends mom gave me one for free and i was thinking about rockboxing it... havent gotten around to it yet |
20:02:22 | AlexP | As [Saint] says, SansaAMS also suffers from USB issues (maybe some more than others?), I can't rememeber about other targets |
20:02:45 | | Join wodz [0] (~wodz@89-76-32-53.dynamic.chello.pl) |
20:03:13 | AlexP | The port page on the wiki doesn't mention any USB issues |
20:06:01 | amayer_ | AlexP: found this http://www.rockbox.org/wiki/SansaFuzePlusPort |
20:06:03 | amayer_ | says USB is 100% |
20:06:16 | AlexP | yes, that is what I was referring to by port page :) |
20:07:01 | amayer_ | oh wow... the first thing i got on google was the regular page... i didnt even look at the titles. i thought i was on the port page and that was something else |
20:07:21 | amayer_ | AlexP: thank you tho |
20:07:29 | AlexP | I didn't do anything :) |
20:16:49 | prof_wolfff | all my last development was done using r31594 and no issues when using USB on linux in many diferent computers, sometimes it failed but always when using a crappy cable or extension, i am switching to git version, will observe how it behaves |
20:21:23 | *** | Saving seen data "./dancer.seen" |
20:26:51 | [Saint] | prof_wolfff: whoah...that was quite soem time ago. |
20:26:55 | [Saint] | *some |
20:27:11 | | Join SuperBrainAK [0] (~Andy@71-36-165-101.phnx.qwest.net) |
20:28:20 | | Quit ender` (Quit: Come to think of it, there are already a million monkeys on a million typewriters, and IRC is nothing like Shakespeare.) |
20:30:44 | prof_wolfff | really old, was traveling and using diferent computers, doing lots of battery benchmarks, so decided to have a fixed release everywhere to get homogeneous results, actually i am going to use my main computer much more and release some patches, so it is time to upgrade :) |
20:30:56 | | Join ender` [0] (~ender@foo.eternallybored.org) |
20:31:10 | [Saint] | Woo! |
20:31:30 | * | [Saint] now has iLike Video working with modern syntax |
20:31:46 | [Saint] | I cut the memory usage in half |
20:32:10 | bertrik | nice! |
20:32:33 | [Saint] | It really is amazing how far the skin engine has come. |
20:32:43 | bertrik | channel swap should be easy to do in channel_mode.c, makes me wonder why it hasn't been done before |
20:32:48 | wodz | gevaerts: Do you have a clue whats going on with our builds recently? Random errors pop up. Looks like some concurency problem or something |
20:33:23 | [Saint] | bertrik: iirc, someone put up a patch to do so a while ago but it wasn't done in a way that people approved of. |
20:34:21 | wodz | it was implemented once with memcpy instead of pointers swap and was rejected |
20:34:38 | AlexP | saratoga |
20:35:02 | bertrik | Some codecs can do it too, so that would probably work for non-PCM audio too (like analog input from radio) |
20:36:12 | gevaerts | wodz: I saw that too. I don't know |
20:37:18 | Katu | when using the %if tag to test for multiple conditions, what is the correct syntax? |
20:38:32 | [Saint] | I _think_ you combine %and in that case |
20:38:55 | * | [Saint] hasn't played with %if extensively |
20:39:02 | gevaerts | Or %or, of course :) |
20:39:06 | Katu | Alright |
20:40:50 | [Saint] | Hum...why did I think there was a way to trigger charger plug and charging in the sim? |
20:41:23 | [Saint] | Unless I'm mistaken, the display just cycles between discharging, charger plugged, charging, charged, rinse and repeat. |
20:41:44 | bertrik | AlexP: have a link for that? |
20:41:51 | [Saint] | I know you can trigger USb insert. But I thought you could do so with the sim as well. |
20:45:02 | AlexP | bertrik: http://www.rockbox.org/mail/archive/rockbox-dev-archive-2011-10/0159.shtml and the next two in the thread |
20:49:25 | TheSeven | AlexP: there's nothing wrong with using current builds if you know about the USB breakage, but I do link to a known-good build right now |
20:49:42 | TheSeven | what I originally meant was that I can't include a current build as the fallback image becuase that would completely lock down USB |
20:51:06 | AlexP | TheSeven: Oh, then we were talking at somewhat cross purposes the whole time :) |
20:51:17 | | Quit shamus (Ping timeout: 276 seconds) |
20:51:27 | * | [Saint] is relieved to not be insane |
20:51:32 | AlexP | So a semi-apology, to [Saint] (and you) |
20:51:34 | [Saint] | (about this, at least) |
20:51:58 | [Saint] | AlexP: Not necessary, not at all. But, appreciated. |
20:52:08 | [Saint] | Apologies if I came on a bit strong. |
20:52:12 | AlexP | No worries |
20:52:22 | prof_wolfff | i am very novice using git, made some local branches, one for each patch i want to send to gerrit, i use the master branch for the patches i want to commit directly, can i switch to one of my local branches and send to gerrit using "git push origin/master HEAD:refs/for/master"?, dont want to break anything |
20:52:34 | AlexP | Semi, as USB is still broken, but the situation with the build and emcore isn't as I thought :) |
20:52:57 | | Join thegeek [0] (~thegeek@2.36.34.95.customer.cdi.no) |
20:53:01 | [Saint] | prof_wolfff: yes, you can do that. |
20:53:21 | prof_wolfff | Saint: ok, thanks |
20:53:38 | AlexP | prof_wolfff: Also, don't worry too much about making a mistake with gerrit - worst case you can just abandon the changeset |
20:53:51 | | Quit stoffel (Ping timeout: 265 seconds) |
20:54:09 | [Saint] | Then you just have to switch back to that branch and gerrit will remember it is from the same change set and allow you to push a new patch set or append the last |
20:54:27 | prof_wolfff | AlexP: my fear was to send the patch directly to head/master |
20:55:38 | [Saint] | prof_wolfff: to do that, it would be "git push origin HEAD:master" |
20:55:53 | AlexP | prof_wolfff: ah, indeed |
20:56:06 | [Saint] | So, there's no worries as long as you're pushing to refs/for/master |
20:57:00 | [Saint] | prof_wolfff: I assume you've looked at http://www.rockbox.org/wiki/UsingGit |
20:57:16 | [Saint] | (that link describes branching and pushing directly) |
20:58:02 | prof_wolfff | yes, i pushed some patches yesterday but never worked with branches, when you know to use git it is very powerful, i am very impresed |
20:58:37 | [Saint] | It is, yes. |
20:58:47 | [Saint] | But it seems it is a "love it or hate it" thing. |
20:59:03 | [Saint] | Commits from several developers have ceased entirely since the switch |
21:00 |
21:00:19 | prof_wolfff | i love it!, unfortunatelly actually i have not much time to read info and experiment with it, but i will do it slowly |
21:00:42 | [Saint] | At first, I hated it. With a passion. |
21:00:56 | [Saint] | Then I found out how much more it enabled me to do, and I was sold. |
21:01:32 | prof_wolfff | :) the branches are very useful to do thinks like we are doing, gerrit is also wonderful |
21:02:02 | prof_wolfff | *things |
21:02:39 | pamaury | wodz: I've tried clang on zen x-fi3 and it crashes at boot |
21:04:47 | wodz | pamaury: I didn't have time to look at disasm whats wrong with clang builds |
21:05:22 | prof_wolfff | i am going to send the cpu_freq (36MHz) patch to gerrit, will try to add my benchmarks results and other thoughts |
21:05:23 | pamaury | neither me, it could be anywhere, would probably need to first understand where the crash occurs |
21:07:12 | wodz | pamaury: there are a few obvious things to check like int vectors, crt0.S placement and irq handlers. If this are correct then we need dig deeper |
21:09:34 | pamaury | well, clang only does the c -> assembly "transformation", so this limits the number of places that can be wrong since crt0.S is alreay in assembling and linking done by gcc |
21:09:56 | pamaury | wait, do use LD or CC to link ? |
21:10:05 | pamaury | no we use LD, so it's gcc |
21:12:15 | prof_wolfff | got following error when i try to push from my branch -> fatal: 'origin/master' does not appear to be a git repository |
21:14:10 | pamaury | wodz: I'll try compiling a much smaller code, without interrupts, to see |
21:15:02 | pamaury | wodz: which version of clang did you use ? |
21:15:22 | | Quit akaWolf (Ping timeout: 252 seconds) |
21:17:46 | wodz | svn as of yesterday |
21:18:06 | Katu | is there a way to test, using the simulator, the plugged in condition on a WPS? |
21:18:52 | | Quit y4n (Quit: Today is the perfect day for a perfect day.) |
21:26:39 | [Saint] | Katu: you can do one of two things. Hardcode the condition to a condition you know is true, or, wait for the sim to cycle. |
21:26:47 | Katu | Nevermind, looked through the powermgmt-sim.c file and found that it is simulated automatically |
21:27:10 | [Saint] | It will automatically cycle between discharging, plugged, charging, and charged. |
21:27:13 | Katu | Guess that means it is time to make a sandwich hahaha |
21:27:35 | [Saint] | You can also just change the condition to a condition you know is true for the purpose of testing. |
21:28:26 | Katu | You mean change the conditional tag to something that is known to be true? |
21:28:26 | [Saint] | instead of checking for charging, you could check playback, for example. |
21:28:31 | [Saint] | yes. |
21:28:32 | Katu | ahh, I see |
21:28:38 | Katu | I'll do that hahaha |
21:28:42 | [Saint] | It's hacky, but I've been known to do this in the past. |
21:29:09 | Katu | Yeah, makes sense |
21:29:23 | [Saint] | Alternatively, if you wait long enough ~30 seconds or so, it will become true of its own accord. |
21:29:27 | Katu | do you know offhand at what percentage the simulator kicks to charging again? |
21:29:39 | [Saint] | 0% |
21:29:45 | Katu | ahh, gotcha |
21:29:59 | [Saint] | It will discharge from full to 0%, then simulate plugged, then start charging. |
21:30:17 | Katu | Sounds logical |
21:30:37 | prof_wolfff | got it! "git push origin testing/cpu_freq:refs/for/master" |
21:33:39 | | Quit wodz (Quit: Leaving) |
21:34:03 | | Quit [Saint] (Remote host closed the connection) |
21:36:09 | | Join [Saint] [0] (~saint@rockbox/user/saint) |
21:44:44 | | Join pamaury_ [0] (~quassel@212.75.108.93.rev.vodafone.pt) |
21:45:01 | | Quit pamaury (Ping timeout: 255 seconds) |
21:46:13 | | Join TheSphinX_ [0] (~briehl@p5B32202A.dip.t-dialin.net) |
21:46:40 | Katu | Haha, YES! My iPod Photo just got here. Bought it on ebay for $19 shipped, with a sad face iPod on bootup. Just forced it into disk mode, time for a firmware restore! |
21:49:23 | | Quit TheSphinX^ (Ping timeout: 248 seconds) |
21:54:51 | | Join zaphee [0] (~user@2a01:e35:2e82:4050:8448:4373:e0cb:4377) |
22:00 |
22:13:55 | | Quit thomasjfox (Ping timeout: 248 seconds) |
22:14:05 | | Join jhMikeS [0] (~jethead71@50.4.240.19) |
22:14:06 | | Quit jhMikeS (Changing host) |
22:14:06 | | Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS) |
22:15:56 | | Nick pamaury_ is now known as pamaury (~quassel@212.75.108.93.rev.vodafone.pt) |
22:16:06 | | Quit pamaury (Changing host) |
22:16:06 | | Join pamaury [0] (~quassel@rockbox/developer/pamaury) |
22:20:59 | | Quit Belzebub (Ping timeout: 276 seconds) |
22:21:24 | *** | Saving seen data "./dancer.seen" |
22:24:31 | | Join Belzebub [0] (~torrentow@195.117.144.66) |
22:28:23 | | Quit Rower85 (Read error: Connection reset by peer) |
22:39:18 | pamaury | hum, this is embarassing: kernel 3.7 breaks recovery mode on imx233, the usbhid driver somehow confuses the device |
22:40:25 | pamaury | wodz (logs): If i'm not mistaken, my imxtools/hwemul tool runs on imx233 when compiled with clang ! |
22:45:50 | pamaury | yeah indeed, so clang's bug might have to do with interrupts perhaps |
22:46:22 | pamaury | but it's already a good news since hwemul includes many complicated things, like usb, that's quite a thing |
22:49:40 | | Join shamus [0] (~shmaus@ip-206-192-195-49.marylandheights.ip.cablemo.net) |
22:58:14 | pamaury | wodz (logs): indeed, clang ignores the interrupt attributes !! |
22:59:01 | funman | pamaury: does linux kernel use these attributes? there are some patches floating to build the kernel with clang |
22:59:14 | pamaury | don't know |
23:00 |
23:00:40 | | Quit ender` (Read error: Operation timed out) |
23:00:42 | | Quit ender| (Read error: Operation timed out) |
23:03:22 | funman | doesn't seem so |
23:03:52 | pamaury | I don't know how hard it would be to implement in clang |
23:04:46 | pamaury | (or more likely llvm) |
23:08:43 | | Part LinusN |
23:15:28 | | Quit amayer_ (Ping timeout: 248 seconds) |
23:16:48 | | Join Poodlemastah [0] (~Poodlemas@46-236-107-195.customer.t3.se) |
23:16:50 | | Join ender| [0] (whatever@2a01:260:4094:1:42:42:42:42) |
23:17:04 | | Quit Katu () |
23:26:27 | | Join Andrei [0] (~6167f24a@www.haxx.se) |
23:26:47 | | Quit Andrei (Client Quit) |
23:35:03 | pamaury | hum, implementing this in clang/llvm would quite some work, small patches everywhere, not trivial |
23:46:40 | funman | of course you can also write your interrupt handles in asm! |
23:49:53 | | Quit zaphee (Remote host closed the connection) |
23:51:08 | pamaury | sure, but I guess that's a wanted feature which would be useful to implement ! |