00:10:42 | __builtin | smoke_fumus: add it to apps/plugins/SOURCES |
00:11:58 | smoke_fumus | __builtin: yea already did it. also discovered that .rock files are true C objects. imo this was right back when rockbox were massively useful, however nowdays i would've built em via interpreter like C#. or lua which has been partially implemented |
00:12:59 | | Quit lebellium (Quit: ChatZilla 0.9.92 [Firefox 45.0.1/20160315153207]) |
00:13:01 | smoke_fumus | really puts a bullshit stain on the entire thing when you realize you have to recompile each plugin for each system INCLUDING simulator of the said system |
00:13:43 | __builtin | yeah, plugins are coupled very tightly to the core OS |
00:14:25 | mingdao | I assume IrcGuidelines "It is also a family-friendly channel." means no profanity? |
00:14:40 | smoke_fumus | well, yea. i mean i am not entierly knocking it as i understand that lots of players have such a tiny memory space and tiny cpu cycles amount to spare, that running interpreter would ruin any speed |
00:15:09 | smoke_fumus | mingdao: you're on the internet. grow some. |
00:15:20 | mingdao | smoke_fumus: read http://www.rockbox.org/wiki/IrcGuidelines |
00:15:25 | mingdao | smoke_fumus: you're the one who needs to grow up |
00:15:46 | mingdao | smoke_fumus: or, you could come visit me and I could apply some lye soap to your potty mouth ;) |
00:15:59 | | Quit PurlingNayuki (Remote host closed the connection) |
00:16:19 | smoke_fumus | you will have it up your arse before you'll be able to touch my mouth with it, skrub. :p |
00:16:33 | gevaerts | smoke_fumus: please tone it down a bit |
00:16:38 | smoke_fumus | okay okay |
00:17:18 | mingdao | thanks |
00:17:40 | gevaerts | mingdao: there is of course the slight issue that while everybody has a fairly clear idea on what "family-friendly" means for them, no two people agree |
00:18:31 | mingdao | gevaerts: maybe the IRC guidelines should be clarified, so there is no ambiguity |
00:19:37 | * | gevaerts doesn't actually believe that to be possible |
00:20:10 | gevaerts | I also don't think there's an actual problem |
00:20:42 | mingdao | guess it must all depend upon your definition of "family", "friendly", and what is acceptable in your family's culture |
00:20:50 | mingdao | the words he uses aren't in mine |
00:21:21 | scorche | i dont see an actual probelm either |
00:21:25 | scorche | they are guidelines - not rules |
00:21:41 | mingdao | doesn't really matter, as I'm actually only joined to grep the channel for info |
00:21:51 | * | gevaerts defers to scorche here :) |
00:23:35 | gevaerts | mingdao: cultures differ enormously on what's acceptable where, and even if you figure *that* out, words can have fairly wildly different meanings and connotations depending on region. |
00:23:44 | mingdao | I'd really like to know if your software will unlock a SansDisk SSD, and not just a media player |
00:24:02 | scorche | how would that work? |
00:26:25 | mingdao | the last 3 paragraphs of http://www.rockbox.org/lock.html seem to indicate it's possible, but much reading of all your docs don't make lead me to believe it will |
00:27:22 | gevaerts | Oh, that? |
00:28:10 | mingdao | so, is it possible? have you tried and successfully done this? |
00:28:14 | gevaerts | I believe that's really just about a bug in those particular drives |
00:28:18 | mingdao | ok |
00:29:28 | mingdao | this drive can be RMAed anyway, because the SanDisk SSD Dashboard utility bricked it |
00:30:23 | mingdao | just that about the same time I saw someone referred to http://www.rockbox.org/lock.html, which piqued my curiosity |
00:30:42 | scorche | that will not work for sandisk SSDs... |
00:30:49 | scorche | that is for oooooold hard disks |
00:31:10 | gevaerts | Yes, it's *old*. Some people apparently had that problem back in the early 2000s, and from what I understand it's really a glitch in the firmware of those drives or something like that |
00:31:39 | | Quit bertrik_ (Remote host closed the connection) |
00:31:44 | gevaerts | But you'd have to talk to someone who was around in 2002 to know the details, and those people are rare these days |
00:31:47 | mingdao | there's a bug in the firmware of this disk, also |
00:32:09 | gevaerts | Yes, but is it the same bug? |
00:32:18 | mingdao | actually that's how/why I bricked it ... twas 1 of 10 and I wanted to "test" my theory |
00:32:36 | mingdao | I have no clue about the bug you reference, so can't say, sorry |
00:32:58 | gevaerts | Based on the text on that page, it looks like the drives suddenly set the "require password" bit, with some default password |
00:33:01 | mingdao | it's just that I bought quite a few thin PCs and had SSDs added, cause they're 4-core Atom procs |
00:33:13 | mingdao | the SSD makes up a wee bit for the CPU lack |
00:34:29 | mingdao | gevaerts: what you mentioned is quite possibly the same as this firmware bug; only I haven't delved into either |
00:34:35 | mingdao | does sound very similar |
00:34:45 | gevaerts | Then all you have to do is find the password :) |
00:34:50 | mingdao | on the other 9 drives the firmware has already been updated |
00:35:05 | mingdao | yes, but my time is better spent doing other work ;) |
00:35:20 | scorche | it is not the same bug |
00:35:24 | gevaerts | Although on SSDs I'd suspect a broken FTL first |
00:35:24 | scorche | i promise you ;) |
00:35:36 | mingdao | no worries |
00:35:41 | mingdao | nice chatting with you gents |
00:35:42 | | Part mingdao |
00:35:56 | scorche | those SSDs dont even speak ATA - which is what the tools on the page do |
00:36:01 | gevaerts | scorche: you mean modern SSDs don't use the same firmware as 15 year old spinning rust disks? |
00:36:45 | scorche | gevaerts: shocking, i know |
00:37:16 | * | gevaerts loses all confidence in his worldview! |
00:53:31 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
01:00 |
01:25:12 | | Join PurlingNayuki [0] (~Thunderbi@v163-44-154-238.a00f.g.sin1.static.cnode.io) |
01:33:44 | * | smoke_fumus scratching head |
01:34:39 | smoke_fumus | queue_post ovf |
01:34:43 | smoke_fumus | uh.. |
01:40:38 | | Quit krnlyng (Ping timeout: 264 seconds) |
01:43:43 | smoke_fumus | any clue what can cause it? |
01:47:31 | *** | Saving seen data "./dancer.seen" |
01:49:36 | | Quit ender` (Quit: The whole principle is wrong; it's like demanding that grown men live on skim milk because the baby can't eat steak. -- Robert A. Heinlein on Censorship (from The Man Who Sold the Moon)) |
01:53:01 | smoke_fumus | __builtin: *pokes* |
01:57:52 | | Join krnlyng [0] (~liar@83.175.90.24) |
02:00 |
02:05:12 | | Join [Saint] [0] (~hayden@rockbox/staff/saint) |
02:08:22 | | Quit TheSeven (Ping timeout: 268 seconds) |
02:09:52 | | Quit FSanches (Quit: Leaving.) |
02:14:15 | [Saint] | Wow. |
02:14:25 | [Saint] | I finally found the one guy that still uses CygWin. |
02:18:06 | smoke_fumus | i tried cygwin build recently. -mno-cygwin error (new gcc related), and some others down the line once that flag has been removed from makefile |
02:19:01 | [Saint] | It's a rather large woefully inefficient piece of shit. |
02:20:08 | | Join TheSeven [0] (~quassel@rockbox/developer/TheSeven) |
02:20:29 | smoke_fumus | [Saint]: then make a proper port for mingw to avoid any further complications :p |
02:21:03 | [Saint] | Or, I could just continue living my life in actual *nix land and not have to worry about it. ;) |
02:21:36 | smoke_fumus | except that amount of windows users is higher -> probability that there will be windows developers is bigger |
02:21:52 | [Saint] | Not even close. |
02:22:11 | smoke_fumus | remove servers from equation and leave only desktops |
02:22:23 | [Saint] | No one has developed on Windows for this project for absolutely years. |
02:22:35 | [Saint] | like, 5~6+ years. |
02:22:51 | * | __builtin estimates that 99% of rockbox devs run linux |
02:22:57 | smoke_fumus | if that was up to me i would've ported whole damn thing to visual studio, since 2015 is so nice and clean and intellisense since 2013 goes above and beyond to help with code. |
02:23:16 | [Saint] | Well, it is up to you. |
02:23:21 | smoke_fumus | nah, it isn't. |
02:23:26 | [Saint] | Yes. Yes it is. |
02:23:32 | [Saint] | No one's stopping you now are they? |
02:23:33 | smoke_fumus | are you gonna pay? |
02:23:39 | [Saint] | Why would I? |
02:23:48 | [Saint] | You want it. |
02:23:50 | smoke_fumus | Well here's your answer. |
02:23:53 | [Saint] | Make it happen. |
02:24:20 | smoke_fumus | I didn't said i want it. i said if that would've been up to me. as in if project is hinged on me. |
02:24:22 | smoke_fumus | it isn't. |
02:24:23 | smoke_fumus | so no. |
02:24:44 | smoke_fumus | *-is +has |
02:24:48 | [Saint] | You're the guy that shows up the our pizza party and says "Hey, great pizza - but what about the hotdogs?" |
02:25:03 | [Saint] | And we're the guys that say "you want hotdogs, no one's stopping you from cokking them". |
02:25:16 | smoke_fumus | i am the guy who tries to cook some hotdogs in the kitchen for everyone but nobody wants to lend a sausage. |
02:25:30 | smoke_fumus | or buns |
02:25:34 | smoke_fumus | or oil |
02:26:02 | [Saint] | So it's everyone else's fault you don't have the resources to do anything but complain about things you want to exist not existing. |
02:26:05 | [Saint] | Mhm. K. |
02:27:01 | smoke_fumus | so you practically telling me "go to our kitchen which also has a farm built in, grow some pigs, make some sausages, grow some grain, make flour, go to the cows and milk them, go back to kitchen part and make yourself hotdogs, for our pizza party which has been dying since approx 2012, and it is mostly a ghost town, and now, we're not gonna eat your hotdogs" |
02:27:26 | [Saint] | we like pizza. |
02:27:40 | smoke_fumus | that's not the point. |
02:28:44 | smoke_fumus | rockbox is pretty much outdated by any stretch of imagination nowadays. since most of the people moved to android/ios which happen to have built-in mp3 tools |
02:28:52 | [Saint] | I don't think there's any room for complaints like this when the project in question is entirely open and you're free to do as you want with it. |
02:29:37 | [Saint] | It is also a hobby project. |
02:29:43 | smoke_fumus | okay. riddle me this. where's api help? |
02:29:49 | [Saint] | I assure you no one gives a shit about what the common man wants or needs. |
02:30:13 | [Saint] | By developers, for developers. It has always been this way. |
02:30:32 | smoke_fumus | alright. why did you made a user-friendly auto installer then? |
02:30:36 | scorche | i wouldnt go that far... |
02:30:48 | smoke_fumus | leave it in tar.gz, let developers make and install it by hand, if it's for developers only |
02:30:52 | smoke_fumus | ye fockin' skrub. |
02:31:19 | [Saint] | smoke_fumus: if Joe User wants to use it, and they do, there's no reason to make it needlessly difficult for them. |
02:31:23 | [Saint] | But it's not _for them_. |
02:31:27 | scorche | smoke_fumus: i wouldnt say that rockbox is outdated, but that the market has clearly coalesced around a single device for these sorts of things |
02:31:30 | scorche | also, streaming |
02:32:31 | scorche | porting the whole damn thing to VS, as you say, is not practical - we support a lot of archs on a lot of devices - VS isnt designed for these things |
02:33:27 | smoke_fumus | scorche: well you technically can make some devices rockbox is built for to receive streaming, but it requires to jump through a few hurdles. for one - on apple devices you can attach rs232 and use hi-speed serial to attach a ESP8266 (or something along these lines) to connect via wifi to streaming services |
02:33:49 | smoke_fumus | also forget about video streaming, low bitrate audio only |
02:33:51 | scorche | yeah - that isnt going to happen unless someone wants to do it themselves |
02:33:56 | smoke_fumus | yep. |
02:33:58 | scorche | streaming is all about convienience... |
02:34:05 | smoke_fumus | Yep. |
02:34:28 | [Saint] | Not entirely sure what the line of argument there was. |
02:34:37 | smoke_fumus | well he sai "also, streaming" |
02:34:39 | smoke_fumus | *said |
02:34:45 | scorche | smoke_fumus: so, what exactly was this discussion about? |
02:34:50 | scorche | using windows to develop? |
02:34:58 | smoke_fumus | well, kinda. |
02:35:39 | scorche | cygwin needs to die, honestly |
02:35:44 | [Saint] | It does. |
02:35:45 | smoke_fumus | i have all my mainline tools stashed in windows, and constantly using virtual machine just to fart-out some plugins for a Simulator device (debugging and whatnot) is kinda retarded |
02:35:46 | scorche | and with this, it probably finally will: https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/ |
02:36:20 | smoke_fumus | yea, heard about it. File permissions will fuck them right into the kernel |
02:36:37 | scorche | yeah - see the link i mentioned then - you'll still have to build your compliling environment, but that is far and away the best option for windows |
02:36:57 | smoke_fumus | Well, i was wondering if mingw can do it |
02:36:57 | scorche | smoke_fumus: considering the amount of effort that MS is putting into this, i think it'll work quite well |
02:37:11 | smoke_fumus | tried it yesterday, didn't work |
02:38:51 | smoke_fumus | scorche: you know, cygwin still has it's uses. for one - out of the box X server works. and it is still faster than running it all through VM |
02:39:04 | smoke_fumus | i mean on per-app-to-mem-to-cycles basis |
02:39:15 | scorche | sure - i dont know how well X works with this, but this isnt a VM |
02:42:16 | [Saint] | It takes like 17 years for CygWin to just do /usr/bin/ls |
02:42:31 | [Saint] | I maintain it is broken on a fundamental level and not worth any effort directed to it. |
02:42:52 | smoke_fumus | ok screw the cygwin. i have a question about development |
02:43:10 | smoke_fumus | [Saint]: i get this " queue_post ovf " |
02:43:22 | smoke_fumus | at the time if simulator crash |
02:43:47 | smoke_fumus | what can cause an overflow like this one? |
02:44:42 | smoke_fumus | i mean, i get that it is kernel queue. all i have in my code is this http://hastebin.com/yavuvajufi.md |
02:45:09 | smoke_fumus | fucking hastebin detected file wrong again |
02:45:09 | smoke_fumus | hand on |
02:45:11 | smoke_fumus | *g |
02:45:15 | [Saint] | This is with our suggested environment, without modification or having to massage it into half-building under CygWin? |
02:45:23 | [Saint] | Just asking because I'm not sure I care otherwise. |
02:45:54 | scorche | [Saint]: take it down a notch |
02:46:04 | smoke_fumus | here http://pastebin.com/2TAfb6VA |
02:46:06 | [Saint] | I...what? |
02:46:19 | [Saint] | I'm perfectly calm. |
02:46:29 | scorche | smoke_fumus: i am not too familiar with that myself, but perhaps someone else might come by who might be able to help |
02:47:12 | smoke_fumus | well look at the code. it is clearly an overflow. just guess if something can cause an overflow from what i am doing |
02:47:40 | smoke_fumus | my guess is that button_status could be involved. |
02:50:33 | smoke_fumus | scorche: i think this is because api is not documented. i mean, who the hell leave api naked like that, an api which is barely posix compatible at that, and then leaves users to learn on the example of other plugins, boiling in frustration where a completely valid code throws overflows. |
02:51:42 | [Saint] | A hobbyist. |
02:52:47 | scorche | smoke_fumus: i havent really looked at your code, but speaking in general, Rockbox isnt a commerical product developed by a company. This tends to mean that things tend to only get done if someone is motivated to work on them |
02:53:12 | smoke_fumus | a dickhole. springrts is built as a hobby as well and it has much cleaner codebase, it isn't a commercial product either, and it has the whole api documented |
02:53:19 | scorche | that's nice |
02:53:36 | pamaury | smoke_fumus: you just can't compare rockbox and springrts |
02:53:56 | smoke_fumus | i totally can. for one - springrts codebase is 4+ times larger than rockbox |
02:53:57 | scorche | calling other developers "dickholes" doesnt really help people rush to help you... |
02:54:44 | pamaury | smoke_fumus: well sure you can, not sure what you are trying to achieve though, if you wan to insult us, that's done, bravo, what's next ? |
02:54:48 | smoke_fumus | i know i know, just the frustration buildup. it's been an hour since i hit this overflow |
02:55:19 | smoke_fumus | and i have no single clue how to fix it, there is no api docs to check if i am doing something wrong and nobody on the channel to help |
02:55:44 | [Saint] | and the first thought was "lets rail on the only people who can help me". |
02:55:48 | [Saint] | bold move. |
02:56:10 | pamaury | I admit our documentation is subpar, but what else is there is to say, undocumented code is undocumented... |
02:57:19 | smoke_fumus | i wasn't pointing a finger specifically onto anyone. |
02:58:47 | pamaury | I haven't followed the discussion, can someone explain the problem so I can help maybe ? |
02:59:08 | __builtin | pamaury: in a nutshell, smoke_fumus wants better windows support |
02:59:19 | __builtin | for rockbox development |
02:59:21 | scorche | that was where we started |
02:59:40 | smoke_fumus | __builtin: i wish i had it, i am developing under linux vm atm so there is that |
02:59:57 | smoke_fumus | at least ability to build a simulator along with plugins through mingw |
03:00 |
03:00:04 | scorche | we have now moved on to some plugin code that is causing an overflow ...i think |
03:00:06 | __builtin | smoke_fumus: post your code so someone can take a look |
03:00:20 | smoke_fumus | __builtin: just did. here. http://pastebin.com/2TAfb6VA |
03:00:20 | [Saint] | If I'm not mistaken, he did. |
03:00:26 | __builtin | oh, I'm sorry |
03:00:43 | pamaury | I have to say I haven't done any serious windows dev in the long time, you want better cygwin support I suppose ? |
03:01:29 | pamaury | this little piece of code is causing an overflow ? |
03:02:08 | __builtin | a stack overflow? |
03:02:26 | | Quit Strife89 (Ping timeout: 248 seconds) |
03:02:53 | pamaury | it has no recursion... |
03:03:56 | | Join Strife89 [0] (~quassel@adsl-98-80-224-184.mcn.bellsouth.net) |
03:10:13 | smoke_fumus | __builtin: not sure. all i have is that it throws queue_post ovf |
03:10:31 | smoke_fumus | in simulator that is |
03:10:48 | pamaury | smoke_fumus: let me try it my machine |
03:10:58 | pamaury | *on my |
03:11:05 | smoke_fumus | please. |
03:11:13 | __builtin | hmm, I that's not a "bug" so to speak |
03:11:28 | * | __builtin has gotten that message before while writing plugins |
03:12:04 | smoke_fumus | so uh.......... |
03:12:06 | smoke_fumus | what do i do |
03:12:27 | smoke_fumus | throw in more garbage in it to slow down loop? |
03:12:44 | smoke_fumus | i mean i tried manual waits - it works longer but then crashes anyway |
03:13:44 | __builtin | it's been a while since I've done this, but try replacing button_status with button_get(false) |
03:14:23 | smoke_fumus | it gives the same integer? |
03:14:56 | smoke_fumus | ok says it gives back long |
03:15:30 | pamaury | smoke_fumus: which target did you try ? |
03:15:41 | smoke_fumus | ipod nano 1st gen sim on linux |
03:16:58 | __builtin | try running the sim with gdb and do a backtrace |
03:17:22 | smoke_fumus | __builtin: guess that was it. although i am not sure it even reads anything now. |
03:17:32 | smoke_fumus | let me try casting (short) onto it |
03:17:48 | smoke_fumus | yea this works |
03:18:10 | smoke_fumus | __builtin: leave a comment in sourcecode that button_status is unsafe and can cause ovf or smth |
03:20:08 | pamaury | smoke_fumus: I can reproduce the overflow |
03:20:15 | __builtin | pamaury: backtrace? |
03:20:35 | pamaury | for now I just got a "ueue_post ovf q=027EA240" |
03:21:49 | pamaury | um, backtrace doesn't help, because the program exists "cleanly", I need to put some breakpoints and study the code |
03:24:02 | smoke_fumus | __builtin: awkward. now it quits after some time. without a warning or anything |
03:25:03 | pamaury | backtrace: http://pastebin.com/nwzUtn7s |
03:25:05 | pamaury | quite useless |
03:26:53 | pamaury | hum, I am wondering if it main be because events are added to the queue but the plugin doesn't call any function that somehow process them ? I always hated our input code, it's just a huge mess |
03:29:33 | __builtin | the good thing is that this problem should be isolated to the simulator |
03:29:45 | pamaury | smoke_fumus: I *think* the problem is that button_status() only does reporting, but you never remove events from the button event queue, thus the overflow |
03:29:54 | smoke_fumus | Shit. |
03:30:13 | pamaury | you would need to call get_button() or get_button_w_tmo() (whatever it is called) |
03:30:35 | smoke_fumus | hang on, is this synced code? then why don't you immediately pop button from event queue? |
03:30:43 | smoke_fumus | *button_status() |
03:31:40 | pamaury | Not sure I understood your last comment |
03:33:04 | pamaury | But I checked: button_status() only gives you the button bitmap from the point of view of the button driver. Your plugin has to do a little bit more: you have to read events from the button queue, that also includes some non-button broadcast messages (like usb connection). |
03:33:43 | smoke_fumus | pamaury: wait...why does it return integer then? |
03:33:57 | __builtin | smoke_fumus: because it just polls and doesn't remove the event IIUC |
03:33:59 | pamaury | smoke_fumus: what should it return ? |
03:34:15 | smoke_fumus | Void, then read events from button queue manually |
03:35:17 | smoke_fumus | pamaury: okay, how do i read events from queue then? |
03:35:38 | pamaury | Ok, let me step back because it's a bit confusing: at any point in time, some buttons are pressed, some are not: button_status() returns a bitmap of those buttons (iirc). Now this has nothing to do with the event queue: when you press a key, the button driver adds an event to the event queue |
03:35:53 | pamaury | so you need to read from the event queue, using button_get() |
03:37:27 | pamaury | see for example snake.c, it uses the proper pattern: call rb->button_get(false) [false means non-blocking] |
03:37:54 | pamaury | then handle the various things you like, and if you don't know the event, call rb->default_event_handler(button) on it |
03:38:50 | smoke_fumus | Hm. where does overflow come from then? |
03:39:07 | __builtin | "events" |
03:39:09 | pamaury | you don't call button_get() so events accumulate in the button queue which overflows |
03:39:46 | smoke_fumus | Why the hell does button_get() instead of just reporting bitmap of buttons also shits into queue? i don't get this implementation like at all |
03:40:02 | smoke_fumus | *button_status() |
03:41:40 | pamaury | well, the names are misleading, button_get() should be call event_get(). The thing is they serve different purpose: button_get() gives you the "cooked" key, letting the input system handling things like weels, repeat, etc. On the other hand, button_status() bypasses this completely |
03:42:06 | smoke_fumus | posix spins in it's grave. :D |
03:42:38 | pamaury | If you are writing a real-time game, you might want to just ignore the output of button_get() and call button_status() instead |
03:42:53 | pamaury | I mean it makes a lot of sense, it's the essence of events vs polling keys |
03:42:54 | smoke_fumus | ugh. here we go again. |
03:43:19 | pamaury | sorry, not instead, after. You always need to call button_get(), just to manage the queue :) |
03:43:34 | smoke_fumus | so i need to make a void call of button_get() then get button_status() |
03:43:51 | smoke_fumus | okay. finally. information i understand. :D |
03:45:08 | | Join ZincAlloy1 [0] (~Adium@p57B9407F.dip0.t-ipconnect.de) |
03:45:10 | pamaury | yes, I suggest you do a rb->default_event_handler (rb->button_get(false)); at the beginning of the loop, and they just use button_status() |
03:45:18 | pamaury | *then |
03:46:26 | smoke_fumus | pamaury: ok it kinda works, but it ignores wheel events completely. :V |
03:46:53 | pamaury | yes, for the wheel I think you need to look at the result of button_get() |
03:47:19 | smoke_fumus | *sigh* |
03:47:32 | smoke_fumus | and you couldn't map it to button bitmap why exactly? |
03:47:34 | *** | Saving seen data "./dancer.seen" |
03:47:54 | pamaury | it does not make sense, a wheel is not on and off |
03:48:06 | pamaury | in fact it event has a speed |
03:48:11 | pamaury | *even |
03:48:16 | | Quit ZincAlloy (Ping timeout: 268 seconds) |
03:49:02 | pamaury | smoke_fumus: I suggest you look at rockblox.c to see how the wheel is handled |
03:49:18 | smoke_fumus | yeah, i am throat-deep in it's code at the moment |
03:49:19 | smoke_fumus | found it |
03:49:34 | smoke_fumus | well, brickmania but has same hooks |
03:50:16 | pamaury | in short: button_get() will produce a BUTTON_SCROLL_FWD when you start moving the wheel (I think) and then BUTTON_SCROLL_FWD | BUTTON_REPEAT as long as you continue turning |
03:50:49 | smoke_fumus | Okay. that i can work with |
03:51:58 | pamaury | in fact that's a general thing: if you keep holding a button, you will get BUTTON_X the first time and BUTTON_X | BUTTON_REPEAT after, but then you won't control the timing, which is why button_status() is better for games sometimes |
03:53:15 | pamaury | anyway, I really need to go sleep, I hope it will help you. My best advise is to study the other plugins, because that's the only source of "documentation" for plugins unfortunately |
03:54:47 | smoke_fumus | pamaury: it already did. thanks m8 |
03:59:56 | | Quit pamaury (Ping timeout: 244 seconds) |
04:00 |
04:03:41 | smoke_fumus | __builtin: only question remains is - how do i calculate pcm buffer length? |
04:03:49 | __builtin | it's arbitrary |
04:04:06 | smoke_fumus | will there be overflow ifi'll just start constantly throwing samples at it each update? |
04:04:24 | __builtin | the firmware calls your callback to fill the buffer when there's no more samples to be played |
04:04:34 | __builtin | so set the size high enough to avoid the overhead of those calls |
04:04:49 | smoke_fumus | you mean low enough to keep feeding it each frame |
04:05:02 | [Saint] | something something buflib. |
04:05:50 | smoke_fumus | i basically need to supply a +V wave to wavout, then eat it through arduino's A0/A1 inputs and then unpack it back into digital |
04:06:28 | smoke_fumus | i already know that it works, i fed an ogg file which only has Positive V inside of it(a ramp up/down for 1 minute) - and arduino were able to perfectly detect it through analog inputs |
04:06:55 | __builtin | just choose a number for your buffer size |
04:07:05 | __builtin | 1000 works well |
04:07:27 | smoke_fumus | __builtin: for each update? okay cool, thank you |
04:08:13 | | Quit ZincAlloy1 (Quit: Leaving.) |
04:08:29 | [Saint] | I don't want to convolute the matter, but, a mechanism does exist for checking the available/used buffer states at any given time. But in this case it might just be easier to just allocate an amount you know is likely to be free and just not bother. |
04:15:08 | smoke_fumus | [Saint]: i'll just try it as it is. worst thing that can happen is that player will crash os, right? a faulty pluging shouldn't brick an ipod, right? |
04:15:10 | smoke_fumus | *plugin |
04:15:52 | [Saint] | It is impossible to brick an ipod from userspace without a VERY large degree of effort, foresight, and actual planning for the event. |
04:16:03 | [Saint] | So, no, you won't. It will come to no harm. |
04:16:25 | smoke_fumus | Very good. :) |
04:16:46 | [Saint] | The officially sanctioned method of bricking an iPod is with a hammer. And with vigor and gusto. |
04:17:04 | smoke_fumus | or with faulty bootloader, or an early version of ipodlinux |
04:17:09 | smoke_fumus | i bricked it like 3 times with these |
04:17:16 | smoke_fumus | thankfully were able to recover it myself |
04:18:12 | [Saint] | Ah. You mean the weird, new-school definition of bricked, where bricked == "hardware did something unexpected but was recoverable". |
04:18:42 | [Saint] | It doesn't really change anything, but, I meant ... bricked. Dead. Deceased. Never to iPod again. |
04:19:13 | smoke_fumus | well it is still technically brick. from the user perspective |
04:19:52 | [Saint] | Not if it allowed you to recover it. But...pedantics, I guess. |
04:20:08 | smoke_fumus | well officially users are NOT allowed to recover it, they need to go to apple support |
04:20:15 | [Saint] | The usual definition we hold to here is "requires disassembly or specialist tools, or complete low level restore" |
04:20:19 | smoke_fumus | at least that's what church of jobs is trying to tell us |
04:20:47 | [Saint] | If you can just ask it nicely to please not do that, that's not a brick. |
04:21:00 | [Saint] | But 'bricked' has developed into a very weird definition these days. |
04:21:03 | smoke_fumus | Aye |
04:21:35 | smoke_fumus | well this actually DOES require "specialist tools" aka either official or custom software to re-burn a firmware on it |
04:21:55 | smoke_fumus | since ipod is still a micro computer, it has a bootloader state |
04:23:10 | | Join TheEaterOfSouls [0] (~chatzilla@66.172.117.241) |
04:24:33 | smoke_fumus | [Saint]: other systems still can be recovered by hand if you happen to have something which can do serial, and system has internal serial port. i restored few dead routers which happened to have internal serial ports on them |
04:36:17 | smoke_fumus | __builtin: almost done. seems like buffer length actually matters. riddle me this. if i'll rb->pcm_play_data(NULL, NULL, cBArr, sizeof(cBArr)); but instead of null set actual callback, which will call this again and read from the array i set every turn - will it read it synchronously or asynchronosly? is there such a thing as protected? |
04:36:36 | smoke_fumus | on rockbox platform i mean |
04:36:48 | smoke_fumus | i mean can i read it midst writing? |
04:37:07 | smoke_fumus | *it |
05:00 |
05:03:36 | smoke_fumus | [Saint]: unidentified instruction and then it hanged |
05:03:42 | smoke_fumus | how do i reboot this crap? |
05:04:33 | [Saint] | Assuming you're talking about the simulator, just close it, and re-launch it. |
05:05:15 | smoke_fumus | no, physical ;\ |
05:05:38 | smoke_fumus | whitescree, undefine instruction at |
05:05:41 | smoke_fumus | *n |
05:05:57 | [Saint] | hold play to power down like always, or hold play and select to force a hard reboot, also like always. |
05:06:14 | [Saint] | this isn't any different in Rockbox as it is under the OF. |
05:06:33 | [Saint] | (except the minor pedantic point that the OF never does a complete shutdown) |
05:06:34 | smoke_fumus | select+menu |
05:06:49 | smoke_fumus | that worked :B |
05:07:13 | [Saint] | ah, sorry, yeah you're right I was looking at the iPod on my desk upside down. |
05:08:27 | TheEaterOfSouls | What does the OF do instead of shutdown? |
05:08:58 | [Saint] | Sleep. |
05:09:39 | [Saint] | WHich is why it seems to boot very quickly, unless it has been in a sleep state for a VERY long time, in which case it actually will fully power down. |
05:10:19 | TheEaterOfSouls | No way to force a shutdown? |
05:10:50 | [Saint] | Not that I am aware of. |
05:11:11 | smoke_fumus | ok my project is a fail. arduino is unable to properly work with this |
05:11:16 | smoke_fumus | power levels go bizzare |
05:12:48 | | Quit athidhep (Read error: Connection reset by peer) |
05:13:02 | [Saint] | ...over 9000? |
05:13:20 | smoke_fumus | nah |
05:13:32 | | Join athidhep [0] (~afoakf@unaffiliated/athidhep) |
05:13:36 | smoke_fumus | initial blast works fine but then power goes down each continious cycle |
05:15:21 | smoke_fumus | i need rs232 this bitch. |
05:16:03 | [Saint] | I've been sitting here wondering why you've elected to do it this way and not as an HID device for the past wee while. |
05:16:13 | * | [Saint] cringes |
05:16:17 | [Saint] | HID device...oy. |
05:16:26 | [Saint] | ATM machine will be next. |
05:16:43 | smoke_fumus | yes but does plugin api has hid messaging? |
05:17:02 | smoke_fumus | sic. my engrish |
05:22:23 | [Saint] | remote_control.c seems to say yes. |
05:23:04 | [Saint] | errr...unless I misparsed you just now. |
05:28:04 | | Join JdGordon [0] (~jonno@124-149-146-23.dyn.iinet.net.au) |
05:28:04 | | Quit JdGordon (Changing host) |
05:28:04 | | Join JdGordon [0] (~jonno@rockbox/developer/JdGordon) |
05:30:58 | TheEaterOfSouls | Does Rockbox support sleep on the iPod as well? |
05:31:03 | [Saint] | No. |
05:31:09 | | Quit JdGordon_ (Ping timeout: 248 seconds) |
05:31:15 | TheEaterOfSouls | Damn |
05:31:21 | TheEaterOfSouls | How long generally to boot? |
05:31:37 | TheEaterOfSouls | Thinking of picking one up |
05:31:48 | [Saint] | It could, but, we boot so quickly that all we'd be doing is throwing away battery needlessly to wake up an extra second quicker. |
05:31:52 | [Saint] | Not worth. |
05:32:12 | TheEaterOfSouls | I just figured it could be an option as well |
05:32:24 | TheEaterOfSouls | But yeah not necessary I guess |
05:32:30 | [Saint] | It could be, yes. |
05:32:53 | TheEaterOfSouls | Depending on how much work would be needed to implement it |
05:35:31 | smoke_fumus | [Saint]: i am looking at usb keymaps and i only see some tat. where is HID_JOYSTICK? |
05:37:02 | [Saint] | People implemented what they wanted or needed for a particular task, not the entire subset of HID control systems. |
05:37:33 | [Saint] | You'll find this throughout our entire codebase. |
05:37:48 | [Saint] | People implementing /just/ enough to get the /very specific/ task they wanted to do done. |
05:38:26 | smoke_fumus | [Saint]: no but i mean it throws shite like ACTION_USB_HID_MOUSE_BUTTON_RIGHT. where does this mapped to integer? how does it send it through hid itself? |
05:42:53 | | Quit TheEaterOfSouls (Quit: ChatZilla 0.9.92 [Firefox 45.0.1/20160315153207]) |
05:43:32 | [Saint] | uuuurgh, from memory, following the plugin include trail down the rabbit hole to usbstack. |
05:43:52 | [Saint] | I have a feeling, for whatever reason, that I'm perpetually misparsing you though. |
05:44:27 | smoke_fumus | found it. usb_hid_usage_tables.h |
05:45:01 | [Saint] | hey hey, I was right about something. awesome. |
05:45:06 | smoke_fumus | :DDD |
05:45:26 | smoke_fumus | well at least now i can just use remotecontrol sources and make a small keyboard out of this shite |
05:45:51 | smoke_fumus | this is sub-optimal, but hey - at least it works |
05:45:58 | [Saint] | You can beep your audio out via the piezo if you wanted to. |
05:46:18 | [Saint] | It'll sound terrible, but it'll also sound like NOSTALGIA! |
05:46:52 | smoke_fumus | hey if i want me-self some nostalgia i'll boot up windows 95 osr2 and launch sampler. i am only 25 so that one is deeply nostalgic to me |
05:47:03 | | Join TheEaterOfSouls [0] (~chatzilla@66.172.117.241) |
05:47:35 | *** | Saving seen data "./dancer.seen" |
05:48:06 | smoke_fumus | or better yet - launch microsoft hover! or hellbender, or blood. or nes emulator |
06:00 |
06:16:11 | | Join PurlingNayuki1 [0] (~Thunderbi@v163-44-154-238.a00f.g.sin1.static.cnode.io) |
06:16:44 | | Quit PurlingNayuki (Remote host closed the connection) |
06:16:44 | | Nick PurlingNayuki1 is now known as PurlingNayuki (~Thunderbi@v163-44-154-238.a00f.g.sin1.static.cnode.io) |
06:24:16 | | Quit bluebrother (Disconnected by services) |
06:24:22 | | Join bluebrother [0] (~dom@rockbox/developer/bluebrother) |
06:24:47 | | Join fs-bluebot_ [0] (~fs-bluebo@x4d098ead.dyn.telefonica.de) |
06:26:44 | | Quit fs-bluebot (Ping timeout: 244 seconds) |
06:35:09 | | Join eshep [0] (~eshep_@s1603048.xgsspn.imtp.tachikawa.spmode.ne.jp) |
06:40:11 | | Quit eshep (Ping timeout: 276 seconds) |
06:40:47 | | Join eshep [0] (~eshep_@s1603048.xgsspn.imtp.tachikawa.spmode.ne.jp) |
06:41:10 | | Quit eshep (Client Quit) |
06:46:34 | | Join eshep [0] (~eshep_@s1603048.xgsspn.imtp.tachikawa.spmode.ne.jp) |
06:50:57 | | Quit eshep (Ping timeout: 260 seconds) |
06:52:21 | | Join FSanches [0] (~felipe@2804:14c:32:8e1e:c58e:cf86:aa00:cd38) |
06:57:08 | | Join eshep [0] (~eshep_@oki-114-179-171-74.glbb.ne.jp) |
06:57:53 | eshep | I have a Sansa Fuze that is constantly rebooting. |
06:58:07 | eshep | Is there a the for tat |
06:58:26 | eshep | *that? |
06:59:20 | eshep | *fix for that? |
07:00 |
07:23:51 | | Quit djukon (Ping timeout: 264 seconds) |
07:24:10 | | Join djukon [0] (transitor@gateway/shell/insomnia247/x-rhhyjoqqksrmxomz) |
07:36:12 | [Saint] | immolation. |
07:40:46 | | Quit FSanches (Quit: Leaving.) |
07:47:38 | *** | Saving seen data "./dancer.seen" |
07:50:27 | | Quit eshep (Ping timeout: 260 seconds) |
08:00 |
08:16:07 | | Join FSanches [0] (~felipe@2804:14c:32:8e1e:c58e:cf86:aa00:cd38) |
08:17:05 | | Quit FSanches (Client Quit) |
08:40:03 | | Join JdGordon_ [0] (~jonno@rockbox/developer/JdGordon) |
08:42:57 | | Quit JdGordon (Ping timeout: 260 seconds) |
08:43:41 | | Quit JanC (Ping timeout: 276 seconds) |
08:56:44 | | Join JanC [0] (~janc@lugwv/member/JanC) |
09:00 |
09:05:51 | | Quit nlogex (Ping timeout: 244 seconds) |
09:42:45 | | Join bertrik [0] (~quassel@rockbox/developer/bertrik) |
09:47:41 | *** | Saving seen data "./dancer.seen" |
10:00 |
10:08:34 | | Join ender` [0] (krneki@foo.eternallybored.org) |
10:27:56 | | Quit PurlingNayuki (Quit: PurlingNayuki) |
10:49:30 | | Join lebellium [0] (~chatzilla@89-93-179-187.hfc.dyn.abo.bbox.fr) |
11:00 |
11:22:42 | | Join xorly [0] (~xorly@ip-86-49-15-121.net.upcbroadband.cz) |
11:41:41 | | Quit xorly (Quit: I quit, that is all) |
11:47:42 | *** | Saving seen data "./dancer.seen" |
12:00 |
12:36:42 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
13:00 |
13:47:43 | *** | No seen item changed, no save performed. |
14:00 |
14:01:01 | | Join xorly [0] (~xorly@ip-86-49-15-121.net.upcbroadband.cz) |
14:05:06 | | Quit pamaury (Read error: Connection reset by peer) |
14:06:20 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
14:30:44 | | Quit pamaury (Read error: Connection reset by peer) |
14:31:54 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
14:31:58 | | Quit smoke_fumus (Read error: Connection reset by peer) |
14:50:56 | | Quit pamaury (Ping timeout: 276 seconds) |
14:51:03 | | Join ZincAlloy [0] (~Adium@p57B9407F.dip0.t-ipconnect.de) |
15:00 |
15:09:49 | | Quit [Saint] (Ping timeout: 248 seconds) |
15:11:53 | | Join [Saint] [0] (~hayden@rockbox/staff/saint) |
15:17:49 | | Join soap [0] (~soap@rockbox/staff/soap) |
15:19:50 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
15:47:45 | *** | Saving seen data "./dancer.seen" |
16:00 |
16:01:02 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
16:16:31 | | Quit pamaury (Remote host closed the connection) |
16:21:31 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
16:22:28 | | Join Gattsby [0] (25e4ee98@gateway/web/freenode/ip.37.228.238.152) |
16:23:40 | | Quit krabador (Quit: Take The Time) |
16:24:53 | Gattsby | is there a way to change how file names in playlists are displayed? - It currently displays the track list no, the track no and the track name. I just want name and artist to display |
16:26:19 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
17:00 |
17:03:45 | | Quit Strife89 (Ping timeout: 244 seconds) |
17:06:46 | | Join Strife89 [0] (~quassel@adsl-98-80-219-39.mcn.bellsouth.net) |
17:17:06 | dongs | pretty sure this is theme-specific |
17:17:10 | dongs | with some %whatever things |
17:18:02 | | Quit Gattsby (Quit: Page closed) |
17:29:37 | | Join PurlingNayuki [0] (~Thunderbi@v163-44-154-238.a00f.g.sin1.static.cnode.io) |
17:33:10 | | Quit PurlingNayuki (Remote host closed the connection) |
17:33:15 | | Join PurlingNayuki1 [0] (~Thunderbi@v163-44-154-238.a00f.g.sin1.static.cnode.io) |
17:36:10 | | Quit PurlingNayuki1 (Remote host closed the connection) |
17:38:26 | | Quit Mir (Excess Flood) |
17:39:09 | | Join Mir [0] (~Mir@173.58.180.149) |
17:47:48 | *** | Saving seen data "./dancer.seen" |
17:53:19 | | Join nlogex [0] (~filip@dhcp-108-168-15-53.cable.user.start.ca) |
17:55:17 | | Quit nlogex (Client Quit) |
18:00 |
18:08:27 | | Join nlogex [0] (~filip@dhcp-108-168-15-53.cable.user.start.ca) |
18:13:52 | bluebrother | seems I can't move topics in the forums anymore. Is this intentional? |
18:15:27 | gevaerts | I'm not aware of any changes |
18:17:06 | bluebrother | well, I won't move that topic then :) |
18:17:30 | gevaerts | Which one is it? I can have a go... |
18:17:44 | gevaerts | Might help isolate where the problem is |
18:17:50 | bluebrother | turns out Apple made yet another change that requires to follow up ... |
18:18:06 | bluebrother | in the Rockbox Utiltiy forums are a couple that are not really related to Rockbox Utility |
18:18:35 | gevaerts | Ah yes |
18:18:37 | gevaerts | As usual :) |
18:18:58 | bluebrother | :D |
18:20:08 | * | gevaerts tries to think of correct places |
18:22:11 | gevaerts | OK, seems like I can move topics just fine |
18:22:53 | bluebrother | aaah |
18:23:06 | bluebrother | my bad. I looked for that "move topic" at the top :o |
18:23:10 | gevaerts | Oh :) |
18:23:15 | gevaerts | I had to look for a while too |
18:23:24 | bluebrother | haven't used the forums for somewhat too long I guess :) |
18:23:47 | bluebrother | but thanks anyway |
18:23:51 | * | gevaerts was dreading having to dive into the permissions |
18:24:01 | gevaerts | Good I don't have to do that |
18:25:20 | bluebrother | sorry for the confusion |
19:00 |
19:13:47 | | Quit krabador (Quit: Take The Time) |
19:17:50 | | Quit pamaury (Ping timeout: 264 seconds) |
19:18:28 | scorche | i really need to re-do that entire server... |
19:18:36 | scorche | one of these days... |
19:47:50 | *** | Saving seen data "./dancer.seen" |
19:50:20 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
19:51:49 | | Quit krabador (Read error: Connection reset by peer) |
19:52:07 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
19:56:04 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
20:00 |
20:26:10 | | Quit shamus (Quit: chaos reigns within reflect repent and reboot order shall return) |
20:32:36 | | Quit krabador (Quit: Take The Time) |
20:34:27 | | Join ZincAlloy1 [0] (~Adium@p57B9407F.dip0.t-ipconnect.de) |
20:36:02 | | Quit ZincAlloy (Ping timeout: 240 seconds) |
20:36:25 | | Join shamus [0] (~shmaus@ip-206-192-194-12.marylandheights.ip.cablemo.net) |
21:00 |
21:17:48 | | Join einhirn [0] (~Miranda@p4FC10068.dip0.t-ipconnect.de) |
21:34:46 | | Quit TheEaterOfSouls (Quit: ChatZilla 0.9.92 [Firefox 45.0.1/20160315153207]) |
21:47:54 | *** | Saving seen data "./dancer.seen" |
22:00 |
22:14:53 | | Join JdGordon [0] (~jonno@124-149-146-38.dyn.iinet.net.au) |
22:14:53 | | Quit JdGordon (Changing host) |
22:14:53 | | Join JdGordon [0] (~jonno@rockbox/developer/JdGordon) |
22:17:38 | | Quit JdGordon_ (Ping timeout: 260 seconds) |
22:34:02 | | Quit theemstra (Ping timeout: 264 seconds) |
22:35:32 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
23:00 |
23:13:43 | | Quit lebellium (Quit: ChatZilla 0.9.92 [Firefox 45.0.1/20160315153207]) |
23:35:54 | | Quit pamaury (Ping timeout: 244 seconds) |
23:47:58 | *** | Saving seen data "./dancer.seen" |
23:53:06 | | Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) |