01:36:32 | Bakemono | hey |
03:06:01 | [57th]cneal | Hi |
07:52:42 | Bakemono | travis_143cw!!! |
07:52:50 | travis_143cw | supa kewl travis |
07:53:08 | Bakemono | : / |
07:53:11 | Bakemono | d00d |
07:53:19 | Bakemono | I got the ol' tuxbox os bootin' |
07:53:28 | travis_143cw | oh hell yeah |
07:53:33 | travis_143cw | how far along is it? |
07:53:37 | Bakemono | not very |
07:53:47 | Bakemono | I was messin' around with smoke |
07:54:16 | travis_143cw | sweet |
07:54:36 | Bakemono | dgi kept seg faulting though |
07:54:37 | Bakemono | sadly |
07:54:43 | Bakemono | no |
07:54:44 | Bakemono | wait |
07:54:46 | Bakemono | it wasn't |
07:54:49 | travis_143cw | that sucks... he will fix itr |
07:54:53 | Bakemono | sdl_mixer was having issues |
07:55:05 | Bakemono | which I'll work out tonite |
07:55:09 | travis_143cw | cool |
07:55:37 | travis_143cw | where is coolman? |
07:56:03 | Bakemono | I haven't a clue |
07:56:28 | travis_143cw | remember sunday, same time as last |
07:56:36 | Bakemono | ok |
07:56:40 | Bakemono | I'll be there |
07:57:16 | Bakemono | you wouldn't by any chance know a fast way to check if 2 polygons intersect, would you? |
07:58:37 | travis_143cw | here |
07:58:57 | Bakemono | here? |
07:58:59 | Bakemono | there! |
07:59:24 | travis_143cw | www.cineca.it/manual/Performer/GetStarted/html/Perf_GetStarted-23.html |
07:59:40 | travis_143cw | maybe maybe not |
07:59:44 | travis_143cw | just did a quick search |
08:03:05 | travis_143cw | brb |
08:16:42 | travis_143cw | bacck |
08:20:59 | travis_143cw | i think i typed that url wrong... |
08:21:04 | Bakemono | ? |
08:21:45 | travis_143cw | where is 31337 snake? |
08:21:55 | Bakemono | sucking my ballz |
08:21:59 | Bakemono | err... |
08:22:14 | travis_143cw | thats awful... |
08:22:18 | travis_143cw | lol |
08:22:31 | travis_143cw | i went to chi-chis tonight |
08:22:36 | Bakemono | ?! |
08:22:40 | Bakemono | who's chi-chi? |
08:22:59 | travis_143cw | the restaraunt punk |
09:10:13 | Snake | Bake! |
09:10:16 | Snake | you there? |
09:10:18 | Bakemono | no |
09:10:22 | Snake | heh |
09:10:27 | Snake | your website aint wokring |
09:10:28 | Snake | heh |
09:10:34 | Bakemono | d'oh |
09:10:44 | Snake | can you DCC me the file complete4.jpg from your server |
09:10:50 | Snake | cause i cant get inot it |
09:10:55 | Snake | into* |
09:10:59 | Bakemono | complete4.jpg?!?!?!?! |
09:11:04 | Snake | yup |
09:11:08 | Bakemono | ?!?!?!?!?! |
09:11:09 | Snake | its in my home dir |
09:11:11 | Bakemono | oh |
09:11:13 | Bakemono | hold on |
09:11:24 | Snake | k |
09:11:36 | Snake | im on a mates computer |
09:11:40 | Snake | who has a webcam |
09:11:43 | Snake | :D |
09:11:48 | Snake | my mums b/f's comp |
09:11:50 | Snake | heh |
09:11:52 | Bakemono | get a chick over there |
09:11:54 | Snake | its way faster |
09:11:59 | Bakemono | not your mum though |
09:12:06 | Snake | AMD Athlon 1ghz |
09:12:29 | Snake | 256sd ram |
09:12:30 | Snake | 40gb hdd |
09:12:30 | Snake | and so on |
09:12:32 | Snake | oo and a geforce 2 |
09:12:34 | Snake | :D |
09:12:42 | Bakemono | steal it |
09:12:54 | Snake | i realy need counter strike on this thing |
09:12:54 | Snake | heh |
09:12:58 | Bakemono | :) |
09:14:29 | Bakemono | you gonna accept it? |
09:15:18 | Snake | try again |
09:15:46 | Snake | im using PIRCH |
09:15:49 | Snake | and i dont know how |
09:15:50 | Snake | heh |
09:15:53 | Snake | did it work? |
09:16:26 | Bakemono | accept you whore |
09:16:42 | Snake | DCC get of d:\pirch98\downloads\\home\bakemono\complete4.jpg from Bakemono failed! |
09:16:46 | Snake | i did you fuckhole |
09:16:54 | Bakemono | oh |
09:16:57 | Bakemono | I can't send stuff |
09:16:58 | Bakemono | :P |
09:17:03 | Snake | :/ |
09:17:11 | Snake | call me a whore aye??? |
09:17:14 | Snake | why cant you? |
09:17:24 | Bakemono | firewall |
09:17:33 | Snake | turn it off for a sec |
09:17:47 | Bakemono | .. |
09:17:50 | Bakemono | hardware firewall |
09:17:57 | Snake | oh |
09:18:04 | Snake | can you email me the file then? |
09:18:04 | Bakemono | aka my server |
09:18:12 | Snake | snake_assasin@hotmail.com |
09:18:38 | Bakemono | BAH |
09:18:46 | Snake | ...? |
09:18:46 | Bakemono | just ftp into 63.105.27.104 |
09:18:55 | Snake | k |
09:19:39 | Bakemono | so scurvypenguin.net isn't working? |
09:19:40 | Bakemono | brb |
09:19:42 | Bakemono | need soda |
09:19:49 | Snake | k |
09:19:52 | Snake | no it isnt wokring |
09:25:06 | Snake | this comp dont have an ftp client |
09:25:16 | Snake | and telnet and os just distort the pic |
09:25:21 | Snake | send it to me through email |
09:33:08 | Bakemono | back |
09:33:13 | Snake | wb |
09:33:16 | Bakemono | biggles? |
09:33:22 | Bakemono | I've been back for a while now |
09:33:38 | Snake | ? |
09:33:42 | Snake | ... |
09:34:48 | Snake | so... |
09:34:54 | Snake | can you email it to me |
09:36:34 | Bakemono | ftp... |
09:36:37 | Snake | ... |
09:36:43 | Bakemono | you can ftp into my server |
09:36:43 | Snake | listen you f00 |
09:36:44 | Bakemono | and grab it |
09:36:47 | Snake | i dont have ftp on this comp |
09:36:51 | Bakemono | yes you do |
09:37:00 | Snake | no i tried dos and telnet |
09:37:02 | Snake | dont work |
09:37:09 | Bakemono | ftp://63.105.27.104 |
09:37:11 | Snake | dos distorts the picture |
09:37:15 | Bakemono | try internet explorer |
09:37:29 | Snake | good idea |
09:37:38 | Snake | i dont bother cause it never used to work for me |
09:37:45 | Snake | might work on this comp hopefully |
09:38:07 | Bakemono | internet explorer's ftp sucks beyond all suckability |
09:38:12 | Bakemono | but it'll have to do.. |
09:38:20 | Snake | yeah |
09:38:24 | Snake | it does suck |
09:42:05 | Snake | FUCK |
09:42:08 | Snake | I HATE HPG |
09:42:11 | Snake | JPG* |
09:43:06 | Snake | its like the most shitty format on the face of this planet |
09:46:57 | Snake | hey |
10:04:02 | Snake | bugger |
10:04:12 | Snake | i can only hold my breathe for a 1:30 |
10:04:25 | Snake | 1 minute and 30 seconds |
10:04:34 | Snake | i thought i could do more :( |
12:11:05 | cryptide | i got a settop box |
12:11:12 | cryptide | mines windoze based though |
16:21:05 | CoolMan | hello TuxCompressor! |
16:27:58 | TuxCompressor | Hi CoolMqn ! |
16:28:06 | CoolMan | sup? |
16:28:16 | TuxCompressor | ??? |
16:28:23 | CoolMan | what's up? |
16:28:49 | CoolMan | you must have gotten everything right man |
16:29:00 | CoolMan | 8^P |
16:29:07 | TuxCompressor | I tried Gaim, but I think I prefer xchat |
16:29:13 | CoolMan | really? |
16:29:25 | CoolMan | were you at your computer the whole time just now? |
16:29:42 | CoolMan | and didn't notice my message? |
16:29:45 | TuxCompressor | Since I joined, yes |
16:29:58 | TuxCompressor | No, I was doing something else |
16:30:20 | CoolMan | the only reason I like GAIM better is because it will pop up over my other windows when there is traffic |
16:30:37 | TuxCompressor | Looks like an interesting feature |
16:30:42 | CoolMan | that and beutiful time stamps |
16:31:24 | TuxCompressor | Did you have a chance to play with Immersion Studio ? |
16:31:38 | CoolMan | yeah, but not to capture packets |
16:31:42 | CoolMan | with it |
16:32:03 | CoolMan | i was capturing packets with the demo program that comes with the RumblePad |
16:32:13 | TuxCompressor | You mean you failed to capture packets, or haven't tried yet ? |
16:32:19 | CoolMan | (let me rephrase) |
16:32:52 | CoolMan | i was capturing packets OF the demo program that comes with the RumblePad |
16:33:26 | TuxCompressor | Nice, but we do not know exactly what are the effects |
16:33:31 | CoolMan | but I have not started the reverse-engineering process |
16:33:35 | CoolMan | correct |
16:34:10 | CoolMan | hey, you know, I could reboot into windows and start in a few minutes |
16:34:14 | TuxCompressor | However, if you have the logs of the captured packets, that could help |
16:34:23 | CoolMan | that way if i had questions i could ask you with IRC |
16:34:33 | TuxCompressor | Yes, good idea |
16:34:51 | CoolMan | give me a few minutes to read the BB |
16:35:15 | TuxCompressor | Ok. Would be nice if you can log our talk, too. |
16:35:28 | CoolMan | i can in GAIM |
16:35:33 | CoolMan | but not in windows |
16:35:58 | TuxCompressor | Ok, I will try to get GAIM run on this network, then. |
16:36:13 | CoolMan | GAIM dynamically allocates buffer space for the conversation |
16:36:27 | CoolMan | so I can cut/paste the conversation later |
16:38:34 | CoolMan | hello |
16:38:43 | tuxcomp | Hi again ! |
16:38:47 | CoolMan | i'm guessing thats GAIM |
16:38:54 | tuxcomp | Yes, indeed. |
16:38:59 | CoolMan | goody |
16:39:15 | tuxcomp | Let me find out where to click, to log the chat... |
16:39:35 | CoolMan | i have never messed with auto chat logging |
16:40:01 | tuxcomp | No, but it seems there is a "save conversation" button |
16:40:17 | CoolMan | ah, i know what it is |
16:40:30 | CoolMan | it saves the buffer to the disk |
16:40:38 | CoolMan | when you click that |
16:40:44 | tuxcomp | That should do it |
16:42:14 | CoolMan | should be near done with this BB |
16:42:26 | CoolMan | or forum |
16:50:10 | CoolMan | ugh, these people in the forums argue constantly |
16:50:18 | CoolMan | i'm done, you still here? |
16:50:22 | tuxcomp | Yes |
16:50:29 | CoolMan | cewl |
16:50:36 | CoolMan | i will reboot into windows |
16:50:43 | CoolMan | and bbaib |
16:55:20 | CoolMan | hello |
16:55:30 | tuxcomp | Hi again |
16:56:06 | CoolMan | when i'm capturing packets, should i capture the plugging in of the device? |
16:56:30 | tuxcomp | Well, it depends. |
16:57:02 | tuxcomp | For my wheel, the init is made when an application starts |
16:57:14 | tuxcomp | not when the device is plugged |
16:57:30 | CoolMan | hmmmm |
16:57:39 | tuxcomp | But the linux iforce driver does not do the same. |
16:57:56 | CoolMan | of course |
16:58:17 | tuxcomp | It depends on the device and the driver... |
16:59:16 | CoolMan | ok |
17:01:39 | CoolMan | i tryed one effect, and it's saving the output to a log file now |
17:02:01 | CoolMan | aaarrrgh! DebugView crashed! |
17:02:22 | tuxcomp | Did it ? |
17:02:31 | tuxcomp | Did the file survive ? |
17:03:10 | CoolMan | yes |
17:03:22 | CoolMan | i have a 1.25 meg text file! |
17:03:57 | tuxcomp | Yes, the amount of data sent is the main problem |
17:04:14 | CoolMan | ugh, how do i filter this crap?! |
17:04:31 | tuxcomp | Do you have unix utils at hand ? |
17:04:44 | tuxcomp | Using cygwin, for example ? |
17:04:49 | CoolMan | not unless i FTP this bugger to another machine |
17:05:01 | CoolMan | i could do it tho |
17:05:06 | CoolMan | no, no cgywin here |
17:06:38 | tuxcomp | Were you able to see when the data started to be sent/received ? |
17:06:50 | CoolMan | no, the data was scrolling so fast... |
17:07:09 | CoolMan | let me FTP it to my router |
17:07:17 | tuxcomp | When did it start to scroll ? |
17:07:28 | CoolMan | when i plugged in the device |
17:08:09 | tuxcomp | Can you make the file available to me ? |
17:08:22 | CoolMan | i could |
17:08:25 | CoolMan | one sec |
17:11:17 | CoolMan | ahha |
17:11:22 | CoolMan | ok, the file is at |
17:11:34 | CoolMan | http://opengbgames.sf.net/0001.tgz |
17:12:13 | CoolMan | hello? |
17:12:18 | tuxcomp | Yes |
17:12:28 | CoolMan | you getting it? |
17:12:45 | tuxcomp | I am trying... |
17:12:57 | CoolMan | sorry |
17:13:19 | tuxcomp | Oops, Mozilla just decided to exit... |
17:14:01 | tuxcomp | Got it ! |
17:15:25 | CoolMan | good |
17:15:33 | CoolMan | brb |
17:17:00 | CoolMan | i'm back |
17:18:17 | CoolMan | so what should i do? |
17:18:28 | tuxcomp | Stare at the text file :) |
17:18:48 | tuxcomp | What kind of effect did you play ? |
17:19:02 | CoolMan | simple ramp |
17:19:15 | tuxcomp | On what axis ? |
17:19:15 | CoolMan | but it stayed at one level the whole time |
17:19:20 | CoolMan | ??? |
17:19:36 | tuxcomp | Ok, we need to agree on the definition of an effect. |
17:19:43 | CoolMan | ok |
17:19:45 | tuxcomp | Does an effect have a direction ? |
17:19:52 | CoolMan | yes |
17:20:25 | CoolMan | this one was at 0.00 |
17:20:31 | tuxcomp | Are periodic effects available ? |
17:20:49 | CoolMan | under time based effects yes |
17:21:00 | CoolMan | but that looked complex |
17:21:12 | tuxcomp | Are condition effect available (I would be surprised) |
17:21:37 | CoolMan | i don't think so |
17:21:46 | CoolMan | at least not by that name |
17:21:57 | tuxcomp | Can you list the effect types available ? |
17:22:01 | CoolMan | ok |
17:22:30 | CoolMan | just the ones that work? |
17:22:35 | tuxcomp | Yes |
17:22:36 | CoolMan | or the ones that don't too |
17:22:37 | CoolMan | ok |
17:23:00 | CoolMan | Time Based Effects |
17:23:06 | CoolMan | Vector Force |
17:23:17 | CoolMan | Periodic |
17:23:21 | CoolMan | Ramp |
17:23:30 | CoolMan | Pulse |
17:23:43 | CoolMan | that's it |
17:23:52 | CoolMan | but there are ones i haven't tryedf |
17:23:55 | tuxcomp | Ok. |
17:23:57 | CoolMan | tryed |
17:24:06 | CoolMan | like sound based effects |
17:24:11 | tuxcomp | ??? |
17:24:23 | CoolMan | but position based effects don't work worth a darn |
17:24:33 | CoolMan | um, checking sound based effects |
17:25:34 | CoolMan | that involved me selecting a wave file, but it doesn't seem to work |
17:25:56 | tuxcomp | Ok, let's leave it for now |
17:25:58 | CoolMan | my pad not movin' to those grooves |
17:26:41 | CoolMan | although, the Immersion Studio user interface is somewhat confusing |
17:26:50 | CoolMan | it feels like there should be more here |
17:27:11 | tuxcomp | What kinds of effects would you expect ? |
17:27:20 | CoolMan | what do you mean? |
17:27:30 | CoolMan | oh BTW i don't know if this matters |
17:27:49 | CoolMan | but my controller was under directX force feedback |
17:27:59 | CoolMan | in Immersion Studio |
17:29:21 | tuxcomp | I do not think it matters |
17:29:28 | CoolMan | hey |
17:29:36 | tuxcomp | Immersion Studio probably uses directX anyway |
17:29:39 | CoolMan | some of the position based effects work |
17:29:43 | CoolMan | (sort of) |
17:30:06 | tuxcomp | What does "position" mean for a pad ? |
17:30:21 | CoolMan | like, the axis positions |
17:30:28 | CoolMan | X and Y |
17:30:34 | CoolMan | analog stick |
17:31:06 | tuxcomp | But the ff effects are not rendered on the stick, are they ? |
17:31:23 | CoolMan | they do not seem to be effected by it |
17:31:28 | CoolMan | when they play at all |
17:31:38 | CoolMan | the way the Immersion Studio looks |
17:31:53 | CoolMan | it looks like the way i move the stick should change the effect |
17:32:17 | CoolMan | like it should get more intence the closer to the limits i am |
17:32:22 | CoolMan | or somthing |
17:33:07 | tuxcomp | For position-based effects, the position is used to compute the force |
17:33:20 | CoolMan | ok |
17:33:21 | tuxcomp | This allows to make spring or damper effects |
17:33:28 | CoolMan | but that is done inside the controller? |
17:33:32 | tuxcomp | Yes |
17:33:47 | CoolMan | ok, well it seems my hardware does not support it |
17:34:05 | tuxcomp | Those effects are also called "condition" effects. |
17:34:11 | CoolMan | oic |
17:34:18 | tuxcomp | They are normally only available on full ff devices |
17:34:29 | CoolMan | ic |
17:34:32 | tuxcomp | (wheels, joysticks) |
17:34:38 | CoolMan | well, there are two that work |
17:34:44 | CoolMan | but not interactively |
17:34:56 | CoolMan | they do not use position at all |
17:35:06 | tuxcomp | Other effects are time based effects |
17:35:18 | CoolMan | all of those work |
17:35:39 | CoolMan | i think those would be more common right? |
17:35:47 | tuxcomp | So it seems your device supports time based effects. |
17:35:58 | tuxcomp | Then there are rumble effects. |
17:36:11 | CoolMan | i see no rumble effect on this thing |
17:36:12 | tuxcomp | They are merely vibrations, without direction. |
17:36:36 | tuxcomp | They are used in the so-called force-feedback mice (like the IFeel mouse from Logitech) |
17:36:40 | CoolMan | well, direction is kindof weak on this thing, because of it's design |
17:37:05 | tuxcomp | Yes, I wondered what it could mean for it. |
17:37:06 | CoolMan | on the left is a motor with a BIG weight on it |
17:37:15 | CoolMan | and on the right is a little tiny weight |
17:37:27 | CoolMan | so when the effect moves to the right, it sucks |
17:39:02 | CoolMan | on the right, it's so small, you can hear it more than feel it |
17:40:22 | tuxcomp | I am looking at all the data exchanged. |
17:40:36 | CoolMan | you filtered the crap out? |
17:40:38 | tuxcomp | I have a hard time understanding what packets goes where... |
17:40:46 | CoolMan | can I help? |
17:41:17 | tuxcomp | You could try to find packets reporting the state of the pad |
17:41:40 | CoolMan | quick question, will me leaving my pad rumbling waer out my pad? |
17:41:47 | CoolMan | wear |
17:41:56 | tuxcomp | No idea |
17:42:22 | tuxcomp | Hopefuly not |
17:42:27 | CoolMan | hehe |
17:42:38 | CoolMan | ok, i'm looking at the text in wordpad |
17:42:41 | tuxcomp | If those are just motors, they should not be a problem |
17:42:43 | CoolMan | what am i looking for? |
17:42:52 | tuxcomp | If only I knew !!!! |
17:42:56 | CoolMan | lol |
17:43:03 | tuxcomp | Do you understand the report ? |
17:43:19 | CoolMan | report? |
17:43:23 | tuxcomp | The log |
17:43:31 | CoolMan | man, I know nothing about USB |
17:43:44 | CoolMan | uh, not, i don't understand the log either |
17:43:50 | CoolMan | no |
17:43:56 | tuxcomp | Ok, you have URBs used to communicate with the device |
17:44:12 | CoolMan | URB stands for? |
17:44:23 | tuxcomp | Something not very helpful. |
17:44:28 | CoolMan | oh ok |
17:44:37 | tuxcomp | (USB Request Broker ?) |
17:44:44 | CoolMan | ok |
17:46:16 | tuxcomp | If you can, have a look at /usr/src/linux/Documentation/usb/URB.txt |
17:46:42 | tuxcomp | Ah, USB stands for USB Request Block |
17:46:53 | CoolMan | ok, makes sense |
17:47:36 | tuxcomp | So, you can see many >>>> URB 007 going down |
17:47:44 | CoolMan | ok, so when the URB is "going down" that's to the device? |
17:47:53 | tuxcomp | and <<<< URB 007 coming back |
17:48:03 | CoolMan | then "coming back" is returning with data? |
17:48:04 | tuxcomp | I used to thin that, but I may be wrong |
17:49:00 | CoolMan | hmmmm |
17:49:06 | CoolMan | this is complicated |
17:49:10 | tuxcomp | As far as I know, URB do not allways go down an up. |
17:49:33 | tuxcomp | Perhaps it is to be understood from the USB controller point of view |
17:49:55 | CoolMan | well, it stands to reason that the computer can command the device to do somthing |
17:50:04 | CoolMan | and the device can report without an answer |
17:50:16 | tuxcomp | Like the controller received a request, sent a packet, and received the acknowledgement |
17:51:18 | CoolMan | hmmm |
17:54:57 | CoolMan | are you making any progress, because it'll be awhile before i make heads or tails outof this one |
17:55:25 | tuxcomp | I am comparing with the logs of my wheel |
17:59:20 | tuxcomp | We have only two different end-points |
17:59:33 | tuxcomp | (PipeHandle) |
18:00:09 | CoolMan | uh, ok |
18:00:19 | CoolMan | is pretending to understand... |
18:00:53 | tuxcomp | Different pipe handles can be used to transfer different types of date |
18:01:22 | tuxcomp | For example buttons states and force feedback effects |
18:01:22 | CoolMan | data? |
18:01:30 | CoolMan | oh ok |
18:01:55 | tuxcomp | Did you ever manage to get your device to work without force feedback under linux ? |
18:02:03 | CoolMan | yeah |
18:02:08 | tuxcomp | Using what module ? |
18:02:13 | CoolMan | works great when iforce is not loaded |
18:02:32 | CoolMan | i sent the cat /proc/modules when it worked |
18:02:46 | CoolMan | and everything but joystick stuff is built into the kernal |
18:02:55 | CoolMan | only joystick stuff is modules |
18:03:06 | tuxcomp | yes, but I also receive mails from other people about joysticks, so it's easy for me to get lost... |
18:03:19 | tuxcomp | What's the name of your device ? |
18:03:35 | CoolMan | Logitech WingMan RumblePad |
18:04:56 | tuxcomp | It could be handled by ADI |
18:05:10 | tuxcomp | Or hid |
18:05:31 | CoolMan | yeah, its hid |
18:07:12 | tuxcomp | Ok, so at least the reading of the axes and buttons is handled using the hid protocol. |
18:07:54 | CoolMan | yeah |
18:07:58 | tuxcomp | I will have to read the hid source code. |
18:08:18 | tuxcomp | This way I can filter out knwon packets |
18:09:15 | CoolMan | oh ok |
18:09:31 | CoolMan | do you know why iforce might screw up input? |
18:09:52 | tuxcomp | Why wouldn't it ? |
18:10:15 | tuxcomp | hid and iforce compete to read the same data, but translate it differently |
18:10:26 | tuxcomp | The result can only be chaotic |
18:10:32 | CoolMan | that would explain it |
18:11:13 | CoolMan | but it could be fixed? |
18:11:30 | tuxcomp | Fix is not the correct word |
18:11:47 | tuxcomp | We need to *add* the support for force feedback into hid |
18:12:17 | tuxcomp | Could you make a new capture using a periodic effect ? |
18:12:24 | CoolMan | uh, you're the boss |
18:12:43 | CoolMan | there is only one periodic effect |
18:12:50 | CoolMan | and yes i can |
18:14:13 | tuxcomp | Don't you have the possibility to chose between sine, square, triangle wave forms ? |
18:14:36 | CoolMan | aaaarrrrgh! |
18:14:40 | CoolMan | my computer crashed! |
18:14:46 | CoolMan | yes you do btw |
18:15:02 | tuxcomp | Are you using another computer to talk ? |
18:15:07 | CoolMan | no |
18:15:17 | CoolMan | my mouse pointer has frozen |
18:15:39 | tuxcomp | I guess that means you are off for a reboot... |
18:15:52 | CoolMan | yeah |
18:15:56 | CoolMan | bbiab |
18:16:01 | CoolMan | i hate windows |
18:29:17 | CoolMan | ok, i finally got everything to work together |
18:29:27 | tuxcomp | Good |
18:29:30 | CoolMan | i should be able to get you a log iab |
18:32:06 | CoolMan | ok |
18:32:18 | CoolMan | http://opengbgames.sf.net/0002.tgz |
18:32:56 | tuxcomp | Not found... |
18:33:11 | CoolMan | ??? |
18:34:18 | tuxcomp | No, it still says The request URL /0002.tgz was not found on this server. |
18:35:28 | CoolMan | ok, it's there now |
18:35:44 | CoolMan | i don't know why scp didn't work befor |
18:35:50 | CoolMan | before |
18:36:09 | tuxcomp | Got it |
18:37:32 | CoolMan | i have to eat man |
18:37:36 | CoolMan | i'll bbiab |
18:37:42 | tuxcomp | So do I ! |
18:38:06 | CoolMan[Foodstuffs] | what time zone you in? |
18:38:09 | tuxcomp | Time for a break... |
18:38:21 | tuxcomp | GMT +1 or 2, I am not sure |
18:38:28 | CoolMan[Foodstuffs] | im in EST |
18:38:47 | tuxcomp | Which means ? |
18:38:53 | CoolMan[Foodstuffs] | (i have no clue what + or - that is) |
18:39:04 | tuxcomp | Me neither ;) |
18:39:22 | tuxcomp | I am in Sweden, Europe |
18:48:02 | CoolMan[Foodstuffs] | back |
18:48:20 | CoolMan[Foodstuffs] | cool, i'm in ohio in america |
19:12:20 | travis|sleep | hello all |
19:14:43 | CoolMan | any body alive? |
19:16:38 | travis|sleep | supa kewl |
19:28:21 | tuxcomp | I'm back |
19:28:50 | CoolMan | sweetness |
19:29:58 | tuxcomp | How do you make logs ? Do you start usb snoopy, start Immersion Studio, make effect, save log ? |
19:30:21 | CoolMan | somthing like that |
19:30:35 | tuxcomp | You can also start logging right before pressing the play button in Immersion Studio |
19:30:51 | CoolMan | although, last time immersion studio came before the debug view |
19:31:05 | CoolMan | yeah, thats what i did |
19:31:21 | tuxcomp | I am trying to find the packet describing an effect. |
19:32:20 | tuxcomp | So the interesting stuff should be at the begining of the log. |
19:32:33 | CoolMan | near it |
19:32:51 | tuxcomp | Was it the same method for the first log ? |
19:34:00 | CoolMan | i think so |
19:34:02 | CoolMan | similar |
19:35:22 | tuxcomp | Do you know libusb ? |
19:35:45 | CoolMan | the problem is when i have trouble getting all of the pieces to work together |
19:35:51 | CoolMan | no, i don't know libusb |
19:36:09 | tuxcomp | It allows to talk to devices from userspace |
19:36:59 | CoolMan | ok |
19:37:29 | CoolMan | is this for linux or windows? |
19:37:34 | tuxcomp | linux |
19:38:26 | CoolMan | so we/i could write a program to test the protocol under linux? |
19:38:35 | tuxcomp | Yes |
19:38:47 | CoolMan | hmmm |
19:39:42 | tuxcomp | Can you redo the second log ? Only one pipe is used in this one, which looks suspicious |
19:40:08 | CoolMan | hmmm |
19:40:19 | CoolMan | you think somthing went wrong? |
19:40:27 | CoolMan | or i did things in the wrong order? |
19:41:02 | tuxcomp | This happens sometimes (often). |
19:41:23 | CoolMan | ok |
19:41:32 | CoolMan | i will do it again |
19:43:10 | Bakemono|Sleep | cool |
19:43:12 | Bakemono|Sleep | yo yo yo |
19:43:21 | CoolMan | yoyo |
19:43:40 | CoolMan | tuxcomp, meet BakeMono |
19:43:53 | CoolMan | he's in charge of the kernel and OS for the TuxBox |
19:44:08 | tuxcomp | Ok. Hi Bakemono |
19:44:10 | CoolMan | Bakemono, meet tuxcomp |
19:44:14 | Bakemono | yo |
19:44:18 | CoolMan | he's the author of the iforce module |
19:44:22 | Bakemono | hajimemashite |
19:44:29 | Bakemono | oh |
19:44:30 | Bakemono | cool |
19:45:03 | tuxcomp | Coolman and I are trying to figure out what kind of protocol his rumble pad uses |
19:45:11 | CoolMan | hey, when i do this next log, should i start the log, the do the effect immediately, then stop? |
19:45:13 | [57th]cneal | Hi |
19:45:28 | tuxcomp | Yes |
19:45:31 | CoolMan | ok |
19:45:37 | [57th]cneal | http://www5.playnet.com/bv/wwiiol/index.jsp |
19:45:44 | CoolMan | what kind of effect? |
19:45:47 | CoolMan | periodic? |
19:45:54 | tuxcomp | Periodic |
19:46:04 | CoolMan | ok |
19:46:07 | CoolMan | square? |
19:46:15 | tuxcomp | Why not. |
19:46:23 | CoolMan | ok |
19:46:34 | tuxcomp | Keep a trace of the exact parameters, too |
19:46:58 | CoolMan | just letting them default every time |
19:47:07 | Bakemono | brb |
19:47:15 | Bakemono | gonna reboot to my tuxbox :) |
19:47:17 | [57th]cneal | What controller do we plan to use for the tuxbox or do we have one working? |
19:47:44 | CoolMan | we are working on making the Logitech WingMan RumblePad work now |
19:47:54 | [57th]cneal | Oh |
19:48:01 | [57th]cneal | Oh yeah, thats the one |
19:48:05 | [57th]cneal | Does it work with the OS? |
19:48:54 | CoolMan | that's what we are working on now |
19:49:21 | [57th]cneal | What parts not working? |
19:49:40 | CoolMan | ff right now |
19:49:45 | [57th]cneal | Is it just the rumble? |
19:49:52 | CoolMan | yeah, force feedback |
19:50:02 | [57th]cneal | oh |
19:50:07 | [57th]cneal | We need that |
19:50:30 | tuxbox | : ) |
19:50:34 | CoolMan | yeah, especially since the pad comes with a sticker on it saying "Vibration Feedback" |
19:50:39 | [57th]cneal | rumble is a requirment, no rumble == we are out of the game |
19:50:49 | CoolMan | i agree |
19:50:58 | CoolMan | besides, rumble rocks anyhoo |
19:51:13 | tuxbox | CoolMan: dgi was having sdl_mixer issues |
19:51:24 | CoolMan | ok, tuxcomp, http://opengbgames.sf.net/0003.tgz |
19:51:32 | CoolMan | tuxbox: hmm? |
19:51:33 | [57th]cneal | no rumble == nintendo16 |
19:51:38 | tuxbox | !! |
19:51:40 | [57th]cneal | OR |
19:51:50 | CoolMan | tuxbox, what do you mean? |
19:52:01 | CoolMan | it won't compile? |
19:52:13 | tuxbox | mix_openaudio |
19:52:17 | tuxbox | doesn't seem to be working |
19:52:21 | tuxbox | let me try something |
19:52:29 | CoolMan | that would have to do with no audio availible |
19:52:33 | tuxbox | Failed: Mix_OpenAudio |
19:52:34 | [57th]cneal | damn, I cant find that link |
19:52:38 | CoolMan | (or somthing else grabbed audio) |
19:52:50 | CoolMan | which is more likely |
19:53:22 | CoolMan | tuxbox: do I know you anyway? |
19:54:24 | CoolMan | oh ok |
19:54:26 | CoolMan | hehe |
19:54:32 | Bakemono | :P |
19:54:35 | CoolMan | lol |
19:54:49 | Bakemono | I rebooted to the tuxbox os |
19:54:50 | Bakemono | :) |
19:54:56 | CoolMan | really?! |
19:54:59 | Bakemono | really |
19:55:02 | Bakemono | X is working |
19:55:03 | CoolMan | it's working! |
19:55:09 | Bakemono | yup |
19:55:11 | CoolMan | high-fives Bakemono |
19:55:13 | Bakemono | and BitchX is working |
19:55:14 | Bakemono | ! |
19:55:18 | Bakemono | ... |
19:55:20 | CoolMan | w00t w00t Bakemono is the man! |
19:55:21 | Bakemono | muhaha |
19:55:34 | Bakemono | as for sound... |
19:55:41 | CoolMan | well, is there any sound? |
19:55:46 | Bakemono | I don't know |
19:55:51 | CoolMan | i'm guessing sound needs work |
19:56:01 | Bakemono | but what sound card will we be using ?! |
19:56:10 | Bakemono | : ( |
19:56:18 | Bakemono | I suppose that doesn't matter too much |
19:56:20 | Bakemono | brb |
19:56:21 | CoolMan | ugh, well it will be embedded |
19:56:26 | CoolMan | for sure |
19:57:07 | CoolMan | the net meeting is tomorrw, so we can talk about it then |
19:57:12 | CoolMan | next |
19:57:13 | Bakemono | ok |
19:57:25 | CoolMan | cause, you don't want lots of sound drivers |
19:57:31 | CoolMan | only the one we need |
19:57:35 | CoolMan | keep it light |
19:58:03 | [57th]cneal | mmm |
19:58:12 | [57th]cneal | Bake, wheres the OS@? |
19:58:26 | CoolMan | dude, cneal give him a break |
19:58:30 | Bakemono | bah |
19:58:31 | CoolMan | on his HDD |
19:58:34 | Bakemono | hehe |
19:58:36 | Bakemono | yah |
19:58:39 | [57th]cneal | Send it to me |
19:58:42 | CoolMan | i know the pain and pressure of releasing code |
19:58:48 | Bakemono | no |
19:58:49 | Bakemono | not yet |
19:58:52 | Bakemono | it's still a baby |
19:58:53 | [57th]cneal | I'll pay you back |
19:58:56 | Bakemono | not ready for the outside world |
19:59:05 | CoolMan | bakemono: is the xfs running right? |
19:59:09 | [57th]cneal | cmon, I wanna run hammered on a real os, not windows |
19:59:17 | CoolMan | can it go down dirty and come back without a hitch? |
19:59:17 | Bakemono | no |
19:59:26 | [57th]cneal | :( |
19:59:30 | CoolMan | oh well |
19:59:34 | Bakemono | CoolMan: but that's the next thing to work on |
19:59:42 | CoolMan | still X is some serious progress |
19:59:46 | [57th]cneal | Can I help with the OS? |
19:59:48 | [57th]cneal | I know C |
19:59:56 | [57th]cneal | :D |
19:59:59 | Bakemono | [57th]cneal: you will be able to soon |
20:00:06 | [57th]cneal | cout << "Hello world"; |
20:00:07 | Bakemono | now |
20:00:22 | CoolMan | [57th]cneal: that's not C |
20:00:28 | [57th]cneal | cout << "How do you do Bakemono"; |
20:00:34 | Bakemono | string bleep = "BALLZ!"; cout << "Suck my fat " << bleep << endl; |
20:00:49 | CoolMan | that's C++ |
20:00:54 | Bakemono | yeah |
20:00:55 | Bakemono | tis |
20:01:02 | [57th]cneal | tis tis |
20:01:05 | CoolMan | C is more compatible |
20:01:05 | [57th]cneal | :D |
20:01:12 | CoolMan | with everything |
20:01:13 | Bakemono | and you're forgetting the trailing endline |
20:01:16 | Bakemono | which users hate |
20:01:19 | CoolMan | any compiler can compile C |
20:01:19 | Bakemono | you are bad |
20:01:23 | Bakemono | vewy vewy bad |
20:01:25 | Bakemono | tsk tsk tsk |
20:01:27 | [57th]cneal | cout << "Hello \n"; |
20:01:33 | Bakemono | that's better |
20:01:36 | Bakemono | now |
20:01:37 | [57th]cneal | What is it? Endl |
20:01:49 | [57th]cneal | end |
20:01:59 | [57th]cneal | owell |
20:02:00 | Bakemono | endl is like << '\n' << flush |
20:02:24 | [57th]cneal | This summer, I will know more than ever |
20:02:40 | CoolMan | why? |
20:02:45 | [57th]cneal | :D |
20:02:51 | Bakemono | ok |
20:02:53 | Bakemono | someone |
20:02:55 | Bakemono | please |
20:02:59 | Bakemono | for the love of opensource |
20:03:02 | [57th]cneal | Because I'm going to retake my C class |
20:03:11 | Bakemono | remind how the hell you put a user in a bunch of groups |
20:03:17 | [57th]cneal | And learn about pointers and all that weird stuff |
20:03:28 | CoolMan | YOU DON"T KNOW POINTERS?!?!?! |
20:03:41 | Bakemono | [57th]cneal: pointers are for n00bs |
20:03:47 | [57th]cneal | No |
20:03:49 | [57th]cneal | But |
20:03:51 | CoolMan | kills himself with a toothpick. |
20:04:16 | Bakemono | pointers aren't wierd |
20:04:20 | [57th]cneal | hmm |
20:04:22 | Bakemono | they are quite simple |
20:04:27 | Bakemono | make a fist |
20:04:33 | Bakemono | and extend your index finger |
20:04:37 | CoolMan | they make the world turn |
20:04:40 | Bakemono | you are pointing(at something) |
20:04:40 | [57th]cneal | I never said that pointers were weird |
20:04:48 | Bakemono | that's pretty much how pointers work |
20:04:54 | CoolMan | next you will say structures are wierd |
20:05:20 | [57th]cneal | struct |
20:05:26 | Bakemono | hehe |
20:05:35 | [57th]cneal | weird |
20:05:36 | Bakemono | when do they teach you about unions? |
20:05:53 | CoolMan | oh well, you are still learning, so we can give you a break |
20:06:01 | CoolMan | bakemono: what is a union? |
20:06:05 | Bakemono | haha |
20:06:17 | Bakemono | it's sorta like a struct |
20:06:17 | Bakemono | hmm |
20:06:21 | Bakemono | how do I explain |
20:06:24 | [57th]cneal | I know I know! (This summer I'll know) |
20:06:25 | CoolMan | is it new for C++? |
20:07:55 | Bakemono | CoolMan: I'm gonna be working on the game pad eh? |
20:08:11 | CoolMan | i don't know |
20:08:16 | Bakemono | hmm |
20:08:26 | CoolMan | i think tuxcomp will do the acuall coding, because it's his driver |
20:08:30 | Bakemono | ok |
20:08:43 | tuxcomp | Bad idea |
20:08:48 | tuxcomp | I do not have a rumble pad |
20:08:49 | Bakemono | if you have the time to do it, great |
20:08:56 | Bakemono | if not, I'll do it |
20:09:00 | tuxcomp | It's more a problem of testing |
20:09:00 | Bakemono | nor do I |
20:09:17 | CoolMan | i can do testing |
20:09:28 | Bakemono | so...can anyone recall how to add a user to a group? |
20:09:39 | tuxcomp | Yes, but the cycle programming/testing must be as short as possible |
20:09:39 | Bakemono | (with standard linux utils) |
20:09:40 | CoolMan | lots of it, i have frozen my other projects to hold out for this thing |
20:09:53 | Bakemono | CoolMan: it looks like you might be doin' some coding :) |
20:10:00 | Bakemono | unless I get my hands on one of those |
20:10:01 | CoolMan | i 'm hanging out here |
20:10:26 | CoolMan | i could code some test apps, maybe, with usblib like you said |
20:10:43 | CoolMan | but I don't know your module |
20:10:56 | CoolMan | i don't want to bite off more than I can chew |
20:11:01 | tuxcomp | Don't worry aout the module |
20:11:03 | Bakemono | nm |
20:11:05 | Bakemono | figured it out |
20:11:17 | tuxcomp | The first step is to get the thing react, shake |
20:11:37 | tuxcomp | Then we try to control how it vibrates |
20:11:38 | CoolMan | bakemono: could the functionality of unions be duplicated with a structure of pointers? |
20:11:58 | CoolMan | tuxcomp: it will shake with the code in my kernel tree |
20:12:03 | CoolMan | after I hacked it |
20:12:12 | CoolMan | it just wont stop shaking |
20:12:20 | CoolMan | and it's very weak |
20:12:29 | Bakemono | CoolMan: with some spiffy code yeah |
20:12:38 | tuxcomp | Ah, I did not know that |
20:12:49 | CoolMan | bakemono: thanks, just wondering |
20:12:49 | tuxcomp | Can you control when it starts shaking ? |
20:13:05 | CoolMan | tuxcomp: with the fftest program, yeah |
20:13:17 | CoolMan | but only one of the "effects" work |
20:13:18 | Bakemono | union { int foo, char bar, float dingdong } myUnion; |
20:13:25 | tuxcomp | Which one ? |
20:13:34 | Bakemono | CoolMan: it looks like a struct, but all the variables are stored in the same location |
20:13:38 | tuxcomp | The number 0 ? |
20:13:40 | CoolMan | scratches his head. |
20:13:42 | Bakemono | myUnion.foo = 20 |
20:13:48 | CoolMan | i think maybe zero |
20:13:56 | tuxcomp | Great ! |
20:14:04 | Bakemono | myUnion.bar = 154 |
20:14:19 | Bakemono | myUnion.foo != 20 |
20:14:30 | CoolMan | bakemono: a union takes variables that are allready allocated and binds them together with pointers (internally) |
20:14:32 | CoolMan | ? |
20:14:40 | Bakemono | no |
20:14:46 | Bakemono | it's alot simpler than that |
20:14:54 | tuxcomp | Did you try to modifiy fftest to change the period or the amplitude ? |
20:14:59 | CoolMan | then what's the diff between a union and a struct? |
20:15:09 | CoolMan | tuxcomp:no |
20:15:14 | Bakemono | the variables of a union are all stored in the same location in memory |
20:15:22 | Bakemono | so you can only use one at a time |
20:15:22 | CoolMan | i didn't want to jack it up |
20:15:41 | CoolMan | bakemono: the SAME ADDRESS?! |
20:15:50 | CoolMan | or right next to eachother? |
20:16:51 | CoolMan | tuxcomp: also, it wouldn't clear effect memory |
20:17:01 | Bakemono | nope |
20:17:03 | Bakemono | some place |
20:17:05 | CoolMan | tuxcomp: so i would have to re-plug the device |
20:17:22 | CoolMan | tuxcomp: just to run fftest more than once |
20:18:35 | tuxcomp | CoolMan: By default, the device is supposed to have 10 effects available, and 0 bytes RAM for the paramaters |
20:18:48 | CoolMan | ??? |
20:19:04 | CoolMan | you mean that is what fftest assumes? |
20:19:11 | CoolMan | untill it speaks with the device? |
20:19:44 | tuxcomp | CoolMan: No, that's what the driver assumes, but it's corrected by the packets received during the init |
20:19:44 | CoolMan | because the device and fftest exchanged information, there is no doubt about that |
20:20:16 | CoolMan | fftest told me how much memory there was and how many simutaneous effects avalible |
20:20:16 | tuxcomp | For example, my devices have 20 effects and 1000 bytes of RAM (I think) |
20:20:26 | tuxcomp | How much was that ? |
20:20:36 | CoolMan | i don't remember what it said exectly |
20:20:45 | CoolMan | but it wasn't 10 and zero |
20:21:09 | CoolMan | it was like 4 and 250 or somthing |
20:21:13 | CoolMan | (guess) |
20:21:30 | CoolMan | but the point is that it was talking to the controller |
20:21:38 | CoolMan | about that |
20:21:38 | tuxcomp | fftest only prints the number of effects |
20:21:45 | tuxcomp | Not the RAM available |
20:21:46 | CoolMan | hmmm |
20:22:05 | CoolMan | i might be remembering some of the debug statements we put in iforce.c |
20:22:06 | tuxcomp | Looking at your mail, you then said 10 effects |
20:22:24 | tuxcomp | which is the default value |
20:22:27 | CoolMan | did you look at the iforce.c i sent? |
20:22:33 | tuxcomp | yes |
20:22:37 | CoolMan | ok, i was wrong about the effects |
20:22:47 | CoolMan | but somthing told me how much memory there was |
20:22:59 | tuxcomp | Could be dmesg |
20:23:00 | CoolMan | i'm thinking it was debig statememnts |
20:23:05 | tuxcomp | Yes |
20:23:05 | CoolMan | yeah |
20:23:09 | Bakemono | ok |
20:23:13 | Bakemono | got smoke and dgi working |
20:23:17 | CoolMan | that was how we were getting debug messages |
20:23:18 | tuxcomp | Do you have it in your /log/messages |
20:23:20 | tuxcomp | ? |
20:23:30 | CoolMan | not while i'm in windows |
20:23:46 | CoolMan | should i reboot, or you need more logs? |
20:23:47 | tuxcomp | Next time you boot linux, have a look at it |
20:23:53 | CoolMan | i could reboot now |
20:23:56 | tuxcomp | Ok |
20:23:57 | Bakemono | now |
20:23:58 | Bakemono | do it now |
20:23:59 | CoolMan | i'm working fdor you right now |
20:24:08 | CoolMan | ok bbiab |
20:24:14 | Bakemono | a bit? |
20:24:15 | Bakemono | hmm |
20:24:19 | Bakemono | long boot? |
20:26:51 | Bakemono | brb |
20:26:55 | Bakemono | need some breakfast |
20:27:43 | Bakemono | back |
20:27:54 | Bakemono | that was some mighty good breakfast |
20:30:13 | CoolMan | hello |
20:30:14 | CoolMan | all |
20:31:04 | tuxcomp | CoolMan: Could you try the latest iforce patch ? |
20:31:27 | tuxcomp | It's available from http://www.docs.uu.se/~johannd/projects/ff/ |
20:31:30 | CoolMan | i think so, if you walk me through it |
20:31:36 | CoolMan | looking |
20:31:48 | tuxcomp | It will give the latest version of the iforce module |
20:31:53 | CoolMan | ok |
20:32:02 | Bakemono | hey |
20:32:05 | tuxcomp | And besides, it includes quite a few debug messages |
20:32:58 | CoolMan | hmm |
20:33:07 | CoolMan | i don't know where i saw the memory thing |
20:33:12 | CoolMan | i can't find it anywhere |
20:34:06 | CoolMan | what should i download |
20:34:16 | CoolMan | i am running a 2.4.17 kernel |
20:34:39 | tuxcomp | cat /var/log/messages | grep -n effects | grep memory |
20:34:51 | tuxcomp | Good, that's the right one. |
20:35:22 | tuxcomp | Get the I-Force only patch for 2.4.x kernels |
20:35:50 | CoolMan | it says 200 bytes memory |
20:36:17 | tuxcomp | So some of the I-Force commands are accepted |
20:36:22 | CoolMan | ok, i downloaded it, what now? |
20:36:33 | tuxcomp | apply the patch |
20:36:43 | CoolMan | is embaressed. |
20:36:47 | CoolMan | i don't know how |
20:36:49 | tuxcomp | :) |
20:36:54 | CoolMan | lol |
20:37:07 | tuxcomp | Do you have an unmodified version of the kernel ? |
20:37:21 | tuxcomp | Never mind, it does matter |
20:37:23 | CoolMan | i could probably unzip it again |
20:37:28 | tuxcomp | does *not* matter |
20:37:32 | CoolMan | ok |
20:37:45 | tuxcomp | cd /....../linux/ |
20:37:52 | CoolMan | i was going to say, i would like to keep this one, because it has my config |
20:37:55 | CoolMan | ok |
20:38:14 | tuxcomp | Unpack a new one somewhere else, then |
20:38:15 | CoolMan | done |
20:38:19 | tuxcomp | Or save the .config file |
20:38:23 | Bakemono | cd ........./linux? |
20:38:27 | CoolMan | ok, looking |
20:38:43 | tuxcomp | cd to where your kernel tree is (the one to patch) |
20:38:48 | CoolMan | right |
20:38:49 | Bakemono | CoolMan: back up yer .config |
20:38:57 | CoolMan | how do i? |
20:38:57 | Bakemono | or you'll be sorry |
20:39:00 | Bakemono | cp .config ~ |
20:39:05 | Bakemono | : ) |
20:39:32 | CoolMan | there is nothing .config in the root of my kernel tree |
20:39:42 | CoolMan | oh, not *.config |
20:39:46 | Bakemono | yeah |
20:39:46 | tuxcomp | No |
20:39:47 | CoolMan | just .config |
20:39:54 | Bakemono | ls -a |
20:39:54 | CoolMan | hits himself |
20:39:56 | Bakemono | :P |
20:40:38 | CoolMan | ok, what all will this patch overwrite? |
20:40:55 | tuxcomp | It will erase drivers/char/joystick/iforce.c |
20:41:05 | CoolMan | ok, so i want to back that up too |
20:41:08 | tuxcomp | it will modify the Makefile there |
20:41:18 | tuxcomp | and will create a new dir iforce/ |
20:41:25 | CoolMan | oh ok |
20:41:31 | tuxcomp | containing the old iforce.c split into pieces |
20:41:35 | CoolMan | ok |
20:41:47 | CoolMan | cd drivers |
20:41:49 | CoolMan | oops |
20:42:11 | tuxcomp | ? |
20:42:29 | CoolMan | i typed into the GAIM window insted of the shell window by mistake |
20:43:00 | tuxcomp | Now I know why it's called "sloppy" focus |
20:43:08 | CoolMan | hehe |
20:43:39 | CoolMan | ok, i'm done cacking things up (i think) |
20:43:42 | CoolMan | backing |
20:43:55 | tuxcomp | ready to apply the patch ? |
20:43:58 | CoolMan | so what now? |
20:44:00 | CoolMan | yeah |
20:44:10 | tuxcomp | go to the root of the linux dir |
20:44:32 | CoolMan | "/usr/src/linux |
20:44:33 | CoolMan | " |
20:44:55 | tuxcomp | bzcat <somepath>/patch-iforce-2.4.x.bz2 | patch -p1 |
20:45:35 | CoolMan | Reversed (or previously applied) patch detected! Assume -R? [n] |
20:45:53 | CoolMan | i changed iforce.c |
20:45:58 | CoolMan | (of course) |
20:46:05 | CoolMan | what do i do? |
20:46:42 | tuxcomp | Strange |
20:47:08 | tuxcomp | say n |
20:47:14 | tuxcomp | and see what the rest says |
20:47:23 | CoolMan | ok |
20:47:37 | CoolMan | Apply anyway? [n] |
20:47:50 | tuxcomp | n |
20:48:28 | CoolMan | [root@elbmin linux]# bzcat ~alex/patch-iforce-2.4.x.bz2 | patch -p1 |
20:48:28 | CoolMan | patching file Documentation/input/ff.txt |
20:48:28 | CoolMan | patching file Documentation/input/joystick.txt |
20:48:28 | CoolMan | patching file Makefile |
20:48:28 | CoolMan | patching file drivers/char/joystick/Config.in |
20:48:31 | CoolMan | patching file drivers/char/joystick/Makefile |
20:48:33 | CoolMan | patching file drivers/char/joystick/iforce/Config.help |
20:48:34 | CoolMan | patching file drivers/char/joystick/iforce/Config.in |
20:48:36 | CoolMan | patching file drivers/char/joystick/iforce/Makefile |
20:48:38 | CoolMan | patching file drivers/char/joystick/iforce/iforce-ff.c |
20:48:41 | CoolMan | patching file drivers/char/joystick/iforce/iforce-main.c |
20:48:42 | CoolMan | patching file drivers/char/joystick/iforce/iforce-packets.c |
20:48:45 | CoolMan | patching file drivers/char/joystick/iforce/iforce-serio.c |
20:48:46 | CoolMan | patching file drivers/char/joystick/iforce/iforce-usb.c |
20:48:49 | CoolMan | patching file drivers/char/joystick/iforce/iforce.h |
20:48:50 | CoolMan | patching file drivers/char/joystick/iforce.c |
20:48:53 | CoolMan | Reversed (or previously applied) patch detected! Assume -R? [n] n |
20:48:54 | CoolMan | Apply anyway? [n] |
20:48:57 | CoolMan | Skipping patch. |
20:48:58 | CoolMan | 1 out of 1 hunk ignored -- saving rejects to file drivers/char/joystick/iforce.c.rej |
20:49:00 | CoolMan | patching file include/linux/input.h |
20:50:16 | tuxcomp | Good, it worked for the rest, did it ? |
20:50:37 | CoolMan | seems to have |
20:51:17 | tuxcomp | Ok, make xconfig, now |
20:51:34 | CoolMan | ok |
20:51:36 | CoolMan | done |
20:52:22 | CoolMan | now what? |
20:52:28 | tuxcomp | input core support |
20:52:39 | tuxcomp | chose m |
20:52:52 | CoolMan | allready like that |
20:52:57 | tuxcomp | joystick support -> m |
20:53:03 | CoolMan | (it's using my config) |
20:53:06 | tuxcomp | event interface support -> m |
20:53:07 | tuxcomp | ok |
20:53:16 | tuxcomp | character devices |
20:53:17 | CoolMan | both ms allready |
20:53:29 | tuxcomp | joysticks |
20:53:41 | tuxcomp | I-Force devices m |
20:53:53 | tuxcomp | I-Force USB joysticks and wheels y |
20:54:15 | CoolMan | shuok |
20:54:17 | CoolMan | ok |
20:54:18 | CoolMan | done |
20:54:35 | tuxcomp | exit, make dep && make modules |
20:54:59 | tuxcomp | wait, we need to modify it |
20:55:13 | CoolMan | can i do "make dep;make modules"? |
20:55:18 | tuxcomp | go to drivers/char/joystick/iforce/ |
20:55:22 | CoolMan | ok, should i run make xconfig again? |
20:55:30 | tuxcomp | no, no need |
20:55:59 | CoolMan | ok |
20:56:22 | tuxcomp | aouch |
20:56:33 | CoolMan | ??? |
20:56:34 | tuxcomp | edit iforce-main.c |
20:56:43 | tuxcomp | You will understand... |
20:57:11 | CoolMan | ok |
20:57:14 | tuxcomp | go to the function iforce_init_device |
20:57:36 | CoolMan | ok |
20:57:44 | tuxcomp | comment out the exit if timeout |
20:58:14 | Bakemono | EAT THAT SDL_IMAGE MAKE FILE!!! |
20:58:39 | CoolMan | //iforce_delete_device(iforce); |
20:58:39 | CoolMan | //return -1; |
20:58:43 | tuxcomp | Good |
20:58:47 | CoolMan | ok |
20:59:01 | tuxcomp | The bad news are I think your device did not understant anything |
20:59:10 | tuxcomp | 200 bytes of memory is the default value |
20:59:15 | CoolMan | ow |
20:59:16 | tuxcomp | :/ |
20:59:30 | CoolMan | that might also explain why it doesn't clear memory |
20:59:37 | tuxcomp | In /* get device info |
20:59:55 | tuxcomp | add else statements to report errors if no answer is received |
21:00:05 | CoolMan | where? |
21:00:14 | tuxcomp | Just a few lines below |
21:00:15 | CoolMan | oh ok |
21:00:23 | tuxcomp | if (!iforce_get_id_packet(iforce, "M")) |
21:00:23 | tuxcomp | iforce->dev.idvendor = (iforce->edata[2] << 8) | iforce->edata[1]; |
21:00:28 | CoolMan | right |
21:01:06 | Bakemono | any progress? |
21:01:12 | CoolMan | hehe |
21:01:14 | CoolMan | sortof |
21:01:40 | tuxcomp | We are discovering it's worse than expected... |
21:01:45 | Bakemono | :( |
21:01:54 | Bakemono | that's not goo |
21:01:55 | Bakemono | d |
21:01:56 | Bakemono | brb |
21:01:57 | Bakemono | need drink |
21:02:04 | tuxcomp | That just means more fun to implement it ;) |
21:02:15 | CoolMan | high-fives tuxcomp. |
21:02:36 | tuxcomp | Are you done CooMan ? |
21:02:41 | CoolMan | not wuite |
21:02:45 | CoolMan | not quite |
21:03:41 | CoolMan | ok, done |
21:04:03 | CoolMan | |
21:04:03 | CoolMan | if (!iforce_get_id_packet(iforce, "M")) |
21:04:03 | CoolMan | iforce->dev.idvendor = (iforce->edata[2] << 8) | iforce->edata[1]; |
21:04:04 | CoolMan | else printk(KERN_WARNING "iforce-main.c: Nothing recieved as a result of M.\n"); |
21:04:04 | CoolMan | if (!iforce_get_id_packet(iforce, "P")) |
21:04:05 | CoolMan | iforce->dev.idproduct = (iforce->edata[2] << 8) | iforce->edata[1]; |
21:04:06 | tuxcomp | It wouldn't hurt to add message at each begining of entry functions, too |
21:04:08 | CoolMan | else printk(KERN_WARNING "iforce-main.c: Nothing recieved as a result of P.\n"); |
21:04:12 | CoolMan | if (!iforce_get_id_packet(iforce, "B")) |
21:04:13 | CoolMan | iforce->device_memory.end = (iforce->edata[2] << 8) | iforce->edata[1]; |
21:04:15 | CoolMan | else printk(KERN_WARNING "iforce-main.c: Nothing recieved as a result of B.\n"); |
21:04:20 | CoolMan | if (!iforce_get_id_packet(iforce, "N")) |
21:04:20 | tuxcomp | Sounds good |
21:04:21 | CoolMan | iforce->dev.ff_effects_max = iforce->edata[1]; |
21:04:23 | CoolMan | else printk(KERN_WARNING "iforce-main.c: Nothing recieved as a result of N.\n"); |
21:04:32 | CoolMan | entry functions? |
21:05:23 | tuxcomp | yes, but it's already done, actually |
21:05:37 | CoolMan | ok |
21:05:46 | CoolMan | so now what? |
21:05:53 | tuxcomp | We need to add the USB ids, too |
21:06:14 | CoolMan | ok, where? |
21:06:15 | Bakemono | it looks like you 2 are having fun :) |
21:06:40 | CoolMan | bakemono: yeah, loads of it, want to join us? |
21:06:52 | CoolMan | or, better yet, take my place? |
21:06:56 | CoolMan | :) |
21:06:59 | CoolMan | j/k |
21:07:00 | CoolMan | lol |
21:07:02 | tuxcomp | iforce-usb.c |
21:07:19 | CoolMan | ok, where in there? |
21:07:21 | tuxcomp | to iforce_usb_ids |
21:07:24 | tuxcomp | at the end |
21:07:31 | CoolMan | ok |
21:07:57 | tuxcomp | 0x046d, 0xc20a, "Logitech WingMan RumblePad" |
21:08:22 | tuxcomp | (from your mail) |
21:08:27 | CoolMan | yeah |
21:08:54 | CoolMan | static struct usb_device_id iforce_usb_ids [] = { |
21:08:54 | CoolMan | { USB_DEVICE(0x044f, 0xa01c) },/* Thrustmaster Motor Sport GT */ |
21:08:54 | CoolMan | { USB_DEVICE(0x046d, 0xc281) },/* Logitech WingMan Force */ |
21:08:54 | CoolMan | { USB_DEVICE(0x046d, 0xc20a) },/* Logitech WingMan RumblePad */ |
21:08:54 | CoolMan | { USB_DEVICE(0x046d, 0xc291) },/* Logitech WingMan Formula Force */ |
21:08:54 | CoolMan | { USB_DEVICE(0x05ef, 0x020a) },/* AVB Top Shot Pegasus */ |
21:08:56 | CoolMan | { USB_DEVICE(0x05ef, 0x8884) },/* AVB Mag Turbo Force */ |
21:08:58 | Bakemono | is angry |
21:08:58 | CoolMan | { USB_DEVICE(0x05ef, 0x8888) },/* AVB Top Shot FFB Racing Wheel */ |
21:09:01 | CoolMan | { USB_DEVICE(0x06f8, 0x0001) },/* Guillemot Race Leader Force Feedback */ |
21:09:02 | CoolMan | { USB_DEVICE(0x06f8, 0x0004) },/* Guillemot Force Feedback Racing Wheel */ |
21:09:05 | CoolMan | { }/* Terminating entry */ |
21:09:06 | CoolMan | }; |
21:09:08 | CoolMan | wonders why? |
21:09:49 | CoolMan | tuxcomp: that look right to you? |
21:10:01 | tuxcomp | CoolMan: I think that should be it |
21:10:11 | tuxcomp | Let's try to build these modules |
21:10:13 | CoolMan | ok |
21:10:23 | CoolMan | "make dep;make modules"? |
21:10:32 | tuxcomp | yes |
21:10:45 | Bakemono | brb |
21:10:49 | tuxcomp | make dep && make modules would even be better |
21:11:00 | CoolMan | what's the diff? |
21:11:12 | tuxcomp | the second step is not executed if the first fails |
21:11:17 | CoolMan | oh ok |
21:11:22 | CoolMan | makes sense |
21:11:26 | CoolMan | it's running now |
21:11:34 | tuxcomp | ...... |
21:12:48 | tuxcomp | I'll leave for 5 minutes |
21:12:56 | CoolMan | the linux kernel build need a progress meter |
21:13:26 | tuxcomp | If the build suceeds, sync (important) and insmod the modules |
21:14:04 | tuxcomp | First input, then evdev and iforce |
21:14:08 | CoolMan | i don't know about syncing, so you will have to help |
21:14:17 | tuxcomp | just type "sync" |
21:14:31 | tuxcomp | That will save your data if the insmod freezes |
21:15:33 | tuxcomp | brb |
21:15:37 | CoolMan | ok |
21:15:41 | CoolMan | brb myself |
21:20:11 | Bakemono | hello? |
21:21:02 | tuxcomp | yes ? |
21:21:50 | Bakemono | nothing |
21:21:57 | Bakemono | it just seemed oddly quiet |
21:23:24 | CoolMan | hehe, waiting for modules to compile |
21:23:30 | Bakemono | lol |
21:23:42 | CoolMan | PRAISE GOD ITS DONE! |
21:23:43 | Bakemono | tuxcomp: you wouldn't happen to know anything about bsp tress, would? |
21:23:47 | Bakemono | would you* |
21:24:17 | tuxcomp | Bakemono: no, but I've heard about bsp trees, though |
21:24:43 | Bakemono | :( |
21:24:54 | tuxcomp | why ? |
21:24:59 | CoolMan | ok, now what did i need to do? |
21:25:08 | CoolMan | i needed to load this stuff? |
21:25:09 | Bakemono | I want to learn about 'em |
21:25:15 | tuxcomp | CoolMan: yes |
21:25:16 | Bakemono | I might want to use 'em |
21:25:42 | CoolMan | ok, what order |
21:25:58 | tuxcomp | input, evdev |
21:26:06 | tuxcomp | Then check hid is not there |
21:26:23 | CoolMan | i rmmoded everything |
21:26:48 | CoolMan | (hid allways used to be there tho) |
21:26:55 | CoolMan | so now what? |
21:27:02 | tuxcomp | insert iforce |
21:27:18 | CoolMan | wait, you said somthing about sync? |
21:27:25 | CoolMan | (i know, i'm hopeless) |
21:27:36 | tuxcomp | yes, it may crash now |
21:27:41 | tuxcomp | sync |
21:27:42 | CoolMan | i have no modules loaded |
21:28:05 | CoolMan | so i need to load input |
21:28:09 | tuxcomp | yes |
21:28:14 | Bakemono | ok |
21:28:18 | Bakemono | time to spit out some code |
21:28:20 | tuxcomp | use insmod with the path to the .o file, not modprobe |
21:28:21 | CoolMan | ok, just insmod it? |
21:28:55 | tuxcomp | Bakemono: You are working on some 3D app ? |
21:28:59 | Bakemono | yeah |
21:29:05 | CoolMan | [root@elbmin linux]# /sbin/insmod input |
21:29:05 | CoolMan | Using /lib/modules/2.4.17/kernel/drivers/input/input.o |
21:29:16 | tuxcomp | Bad |
21:29:19 | Bakemono | didn't know insmod would look for the driver |
21:29:25 | tuxcomp | Try again |
21:29:36 | tuxcomp | ;) |
21:29:47 | tuxcomp | insmod drivers/input/input.o |
21:29:48 | CoolMan | oh, it should get the one out of the kernel tree? |
21:29:55 | tuxcomp | yes |
21:30:29 | Bakemono | insmod /lib/modules/`uname -r`/drivers/input/input.o |
21:30:30 | Bakemono | :) |
21:30:53 | Bakemono | good ol' backqoutes |
21:30:58 | CoolMan | ok, i think it worked |
21:31:04 | Bakemono | lsmod |
21:31:09 | Bakemono | /bin/sh: lsmod: command not found |
21:31:11 | Bakemono | d'oh |
21:31:14 | Bakemono | Module Size Used by |
21:31:14 | Bakemono | NVdriver 709256 17 |
21:31:15 | Bakemono | tulip 36120 1 |
21:31:15 | Bakemono | emu10k1 55748 1 |
21:31:15 | Bakemono | ac97_codec 9544 0 [emu10k1] |
21:31:15 | Bakemono | sound 54956 0 [emu10k1] |
21:31:32 | CoolMan | ok, now what |
21:31:41 | tuxcomp | Where's input ??? |
21:31:41 | CoolMan | i have input insmodded |
21:31:56 | Bakemono | tuxcomp: that's my box :P |
21:32:11 | tuxcomp | pffffff |
21:32:16 | CoolMan | lol |
21:32:21 | Bakemono | :D |
21:32:26 | CoolMan | i only have one module loaded |
21:32:28 | Bakemono | an email |
21:32:29 | Bakemono | ! |
21:32:40 | tuxcomp | Ok, do the same for evdev and iforce |
21:33:50 | tuxcomp | CoolMan: Are you still there, or did your box crash ? |
21:34:00 | CoolMan | i'm looking for iforce |
21:34:01 | CoolMan | :) |
21:34:17 | tuxcomp | It's in drivers/char/joystick/iforce |
21:34:23 | CoolMan | found it now |
21:34:26 | CoolMan | it's loading |
21:34:35 | tuxcomp | dmesg |
21:34:45 | CoolMan | but it allways takes forever for the piece of poop to load |
21:34:50 | CoolMan | (has to time out) |
21:34:54 | tuxcomp | right |
21:34:56 | CoolMan | ah finally |
21:35:03 | CoolMan | ok, lloking in dmesg |
21:35:54 | CoolMan | anybody know what this means? |
21:35:54 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:36:04 | CoolMan | dmesg is being flooded by it |
21:36:39 | tuxcomp | Nothing about input/iforce ? |
21:36:50 | CoolMan | yeah, there is, i was just about to paste it |
21:37:07 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:37:07 | CoolMan | iforce.c: Timeout waiting for response from device. |
21:37:07 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:37:07 | CoolMan | iforce-main.c: Nothing recieved as a result of M. |
21:37:23 | Bakemono | ... |
21:38:22 | Bakemono | wb |
21:38:34 | CoolMan | lol |
21:38:39 | CoolMan | i flooded the channel |
21:38:49 | tuxcomp | ah, ok |
21:38:57 | CoolMan | did you guys get any of my paste? |
21:39:13 | tuxcomp | until nothing received for M |
21:39:31 | CoolMan | iforce.c: Timeout waiting for response from device. |
21:39:31 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:39:31 | CoolMan | iforce-main.c: Nothing recieved as a result of M. |
21:39:31 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:39:31 | CoolMan | iforce-main.c: Nothing recieved as a result of P. |
21:39:31 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:39:34 | CoolMan | iforce-main.c: Nothing recieved as a result of B. |
21:39:35 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:39:37 | CoolMan | iforce-main.c: Nothing recieved as a result of N. |
21:39:45 | CoolMan | iforce_send_packet: 0 0 |
21:39:45 | CoolMan | iforce_usb_xmit: count = 2 |
21:39:45 | CoolMan | ffbits: **...............................................................................***.*..*****...**............................. |
21:39:46 | CoolMan | iforce->dev.open = ce83f0b0 |
21:39:49 | CoolMan | input: Unknown I-Force Device [%04x:%04x] [10 effects, 200 bytes memory] |
21:39:50 | CoolMan | usb.c: iforce driver claimed interface c7f43c60 |
21:39:52 | CoolMan | usb.c: USB 763 1002 NumInt=1 |
21:39:54 | tuxcomp | That's what I feared |
21:39:54 | CoolMan | usb.c: USB 763 1002 new style |
21:39:56 | CoolMan | usb.c: USB 763 1002 new style |
21:39:58 | CoolMan | usb.c: USB 0 0 NumInt=1 |
21:40:00 | CoolMan | usb.c: USB 0 0 interface c7f43f40 already claimed |
21:40:04 | CoolMan | iforce_usb_xmit: xmit buffer empty, exiting<7>VFS: Disk change detected on device ide1(22,0) |
21:40:06 | CoolMan | VFS: Disk change detected on device ide1(22,0) |
21:40:20 | CoolMan | so what's the trouble doc? |
21:40:37 | tuxcomp | this device understands nothing to the init commands :( |
21:40:45 | CoolMan | ow |
21:41:12 | CoolMan | so what's to be done? |
21:41:23 | tuxcomp | Can you get the latest version of fftest from linuxconsole.sf.net ? |
21:41:35 | tuxcomp | We are going to try fftest now |
21:41:45 | CoolMan | i could |
21:41:58 | CoolMan | http://linuxconsole.sf.net/ |
21:42:09 | tuxcomp | yes, from the cvs |
21:42:16 | tuxcomp | in ruby/utils/ |
21:43:25 | CoolMan | how do i log into the CVS? |
21:43:51 | Bakemono | CoolMan: sf has instructions |
21:44:00 | Bakemono | http://sf.net/projects/linuxconsole/ |
21:44:05 | CoolMan | brb |
21:44:05 | Bakemono | click on the CVS link |
21:44:07 | Bakemono | it'll tell you |
21:46:06 | Bakemono | brb |
21:48:04 | CoolMan | back |
21:48:30 | CoolMan | brb |
21:53:20 | Bakemono | hm,m |
21:53:23 | Bakemono | back |
21:54:13 | tuxcomp | Bad news: I think I extracted all the different data urbs exchanged by the driver and the device. |
21:54:29 | tuxcomp | and there's not much... |
21:58:03 | [57th]cneal | damn computer has to reboot everytime I leave it |
21:58:47 | [57th]cneal | is away: I'm away! |
21:58:56 | [57th]cneal | I'm playing wwii |
21:59:50 | Bakemono | heyo |
22:00:27 | tuxcomp | What's happening to CoolMan ? |
22:00:34 | Bakemono | I don't know |
22:02:53 | CoolMan | aaarrrgggh! |
22:03:00 | Bakemono | ? |
22:03:01 | tuxcomp | What ? |
22:03:14 | CoolMan | I HATE LIVING OUT IN THE COUNTRY! |
22:03:25 | CoolMan | WE CAN'T GET CITY WATER! |
22:03:50 | tuxcomp | What's wrong with country water ? |
22:03:54 | CoolMan | that means i have to carry hundreds of pounds of salt in the house every little bit |
22:04:01 | CoolMan | to soften it |
22:04:10 | CoolMan | for our water softener |
22:04:22 | CoolMan | oh well, where were we? |
22:04:54 | tuxcomp | Trying to get fftest |
22:04:58 | CoolMan | oh yea |
22:05:26 | tuxcomp | By that time, I finished extracting every different URB with data exchanged. |
22:05:36 | CoolMan | ok, what did you find? |
22:05:50 | tuxcomp | Not much in 2 and 3 |
22:06:16 | CoolMan | assumes tuxcomp knows what he's talking about. |
22:06:26 | tuxcomp | In 2, the only data exchanged is fa fe 00 00 00 00 00 |
22:06:27 | CoolMan | because I don't |
22:06:36 | CoolMan | ok |
22:06:52 | tuxcomp | Well, many URBs are sent from and to the device. |
22:06:58 | CoolMan | ok |
22:07:06 | tuxcomp | Some of them contain no data |
22:07:10 | CoolMan | ok |
22:07:44 | tuxcomp | If the device is controlled by URBs containing data, we have to look at all the different data exchanged |
22:07:49 | CoolMan | hold up |
22:07:58 | CoolMan | what am i checking out of the CVS? |
22:08:02 | CoolMan | ruby? |
22:08:11 | tuxcomp | ruby/utils/fftest |
22:08:18 | CoolMan | ok |
22:08:21 | tuxcomp | .c |
22:08:57 | CoolMan | ok, i will just update my ruby cvs thingy |
22:09:18 | CoolMan | (i got the cvs when i first started working on the controller) |
22:11:08 | tuxcomp | CoolMan: can your device play several effects at the same time ? |
22:11:16 | CoolMan | ok, i compiled the new fftest |
22:11:24 | CoolMan | i don't know |
22:11:52 | tuxcomp | Have a look at fftest |
22:13:41 | CoolMan | uh odd |
22:13:48 | tuxcomp | ? |
22:14:04 | CoolMan | fftest doesn't look any different |
22:14:17 | tuxcomp | it should |
22:14:19 | CoolMan | and, only effect 1 worked (as allways) |
22:14:23 | tuxcomp | not much, but a little |
22:14:33 | CoolMan | tiny little buzz |
22:14:53 | tuxcomp | for example effects[0].u.periodic.envelope replaces effects[0].u.periodic.shape |
22:15:01 | CoolMan | [alex@elbmin utils]$ ./fftest |
22:15:01 | CoolMan | Force feedback test program. |
22:15:01 | CoolMan | HOLD FIRMLY YOUR WHEEL OR JOYSTICK TO PREVENT DAMAGES |
22:15:01 | CoolMan | Device /dev/input/event0 opened |
22:15:03 | CoolMan | Axes query: Axis X Axis Y |
22:15:05 | CoolMan | Effects: Constant Periodic Spring |
22:15:07 | CoolMan | Number of simultaneous effects: 10 |
22:15:09 | CoolMan | Upload effects[2]: Cannot allocate memory |
22:15:11 | CoolMan | [alex@elbmin utils]$ ./fftest |
22:15:13 | CoolMan | Force feedback test program. |
22:15:15 | CoolMan | HOLD FIRMLY YOUR WHEEL OR JOYSTICK TO PREVENT DAMAGES |
22:15:38 | CoolMan | sorry, i cut the wrong thing, it's this |
22:15:38 | CoolMan | [alex@elbmin utils]$ ./fftest |
22:15:39 | CoolMan | Force feedback test program. |
22:15:39 | CoolMan | HOLD FIRMLY YOUR WHEEL OR JOYSTICK TO PREVENT DAMAGES |
22:15:42 | CoolMan | Device /dev/input/event0 opened |
22:15:44 | CoolMan | Axes query: Axis X Axis Y |
22:15:46 | CoolMan | Effects: Constant Periodic Spring |
22:15:48 | CoolMan | Number of simultaneous effects: 10 |
22:15:50 | CoolMan | Enter effect number, -1 to exit |
22:15:52 | CoolMan | 1 |
22:15:54 | CoolMan | Enter effect number, -1 to exit |
22:15:56 | CoolMan | 0 |
22:15:58 | CoolMan | Enter effect number, -1 to exit |
22:16:00 | CoolMan | -1 |
22:16:02 | CoolMan | No such effect |
22:16:29 | tuxcomp | Did the effect 1 do anything ? |
22:16:47 | CoolMan | kind of |
22:16:57 | CoolMan | it sortof buzzed for a second |
22:17:31 | tuxcomp | Normally, it pushes the stick to up-left |
22:17:38 | CoolMan | but the wierd thing is |
22:17:39 | tuxcomp | It's a constant force |
22:18:17 | CoolMan | it really shook when i exited (it's never done that before) |
22:18:36 | CoolMan | and now it shakes every time i run the program |
22:19:01 | CoolMan | even tho it says: "Upload effects[1]: Cannot allocate memory" |
22:19:09 | CoolMan | so what now? |
22:19:26 | tuxcomp | We could try to modify the effect paramaters to see what happens |
22:19:43 | tuxcomp | For example, play the effect for 1 second instead of 20 |
22:20:02 | CoolMan | it doesn't play for even half a second |
22:20:19 | tuxcomp | really ? |
22:20:37 | CoolMan | yeah, it buzzes for just a tiny amount of time |
22:21:24 | CoolMan | ok, i'm editing fftest.c |
22:21:29 | CoolMan | what do i do? |
22:21:54 | tuxcomp | I fear it was pure chance that the device shook |
22:22:00 | CoolMan | hmmm |
22:22:07 | CoolMan | that may be the case |
22:22:18 | CoolMan | but that would not explain the other program |
22:22:35 | tuxcomp | which one ? |
22:22:47 | CoolMan | there was another program in the utilitys that you would pass effect peramiters to the command line |
22:23:00 | CoolMan | i remember making that work nicely |
22:23:20 | CoolMan | (except i would have to reboot the device after each effect) |
22:23:28 | CoolMan | (because it was out of memeory) |
22:23:42 | tuxcomp | ffcfstress ? |
22:23:50 | CoolMan | maybe |
22:23:52 | CoolMan | checking |
22:24:10 | tuxcomp | or ffmvforce (this one uses SDL and opens a window) |
22:24:18 | CoolMan | not that one |
22:24:22 | tuxcomp | Ok |
22:24:40 | CoolMan | btw, ffmvforce does not compile with this CVS |
22:24:41 | tuxcomp | ffcfstress simulate a condition effect (a spring) using a constant effect |
22:25:03 | tuxcomp | I am not surprised, many things changed recently... |
22:26:11 | tuxcomp | To emulate a spring, read the position of the stick, create a constant force directed to the rest position, start again |
22:26:44 | CoolMan | bah, ffcfstress does not compile either |
22:26:47 | CoolMan | same reason |
22:26:54 | tuxcomp | what's the error ? |
22:27:16 | tuxcomp | Just replace shape by envelope |
22:27:21 | CoolMan | it is trying to access "shape" inside an unnamed structure |
22:28:59 | tuxcomp | The fix worked here. |
22:29:08 | CoolMan | yeah, it fixed it here too |
22:30:24 | CoolMan | ffmvforce.c: In function `main': |
22:30:24 | CoolMan | ffmvforce.c:150: warning: passing arg 1 of `on_exit' from incompatible pointer type |
22:30:35 | CoolMan | does that mean anything? |
22:30:47 | tuxcomp | No, not really |
22:31:13 | tuxcomp | Anyway, reading the state of the pad does not work with iforce loaded, does it ? |
22:31:31 | CoolMan | well, i had lots of modules loaded that you did not tell me to load |
22:31:41 | CoolMan | (ie joydev, hid, etc. |
22:31:42 | CoolMan | ) |
22:31:53 | tuxcomp | can you try evtest ? |
22:32:41 | CoolMan | doesn't seem to work |
22:32:48 | CoolMan | could try jstest |
22:32:58 | CoolMan | (that won't work either, but worth a shot) |
22:33:14 | tuxcomp | What does it say ? |
22:33:26 | CoolMan | the pad rumbled when evtest ran and when it exited |
22:33:34 | CoolMan | what does what say? |
22:33:39 | tuxcomp | evtest |
22:34:00 | tuxcomp | Does it report button presses ? |
22:34:01 | CoolMan | [alex@elbmin utils]$ ./evtest /dev/input/event0 |
22:34:01 | CoolMan | Input driver version is 1.0.0 |
22:34:01 | CoolMan | Input device ID: bus 0x3 vendor 0x0 product 0x0 version 0x0 |
22:34:01 | CoolMan | Input device name: "Unknown I-Force Device [%04x:%04x]" |
22:34:02 | CoolMan | Supported events: |
22:34:05 | CoolMan | no |
22:34:10 | CoolMan | it reports nothing |
22:34:21 | tuxcomp | Nor does it report stick movements, does it ? |
22:34:26 | CoolMan | no |
22:34:28 | CoolMan | nothing |
22:34:44 | tuxcomp | Ok, here is the situation: |
22:34:50 | CoolMan | ok? |
22:34:53 | tuxcomp | reading: not I-Force 2.0 |
22:34:58 | [57th]cneal | is back (gone 00:36:11) |
22:35:03 | tuxcomp | but hid instead |
22:35:18 | tuxcomp | init: his too |
22:35:24 | tuxcomp | hid too |
22:35:33 | tuxcomp | force feedback: something else |
22:36:10 | CoolMan | well, i don't think it's a coinsidence that the ff works sometimes |
22:36:14 | [57th]cneal | :D |
22:36:28 | tuxcomp | ff does not really "work" |
22:36:34 | [57th]cneal | Maybe its broke? |
22:37:29 | tuxcomp | Looking at the logs, I see nothing familiar |
22:37:50 | tuxcomp | I do have an hypothesis, though |
22:38:34 | CoolMan | ugh, i accidentally unplugged my mouse! |
22:38:34 | tuxcomp | Perhaps the pad controller is very light, and it's the cpu who handles effects |
22:38:51 | CoolMan | well, i know cfstress works |
22:39:14 | CoolMan | (it just never clears memeory, and it never stops) |
22:40:06 | CoolMan | it can be done tho right? |
22:40:21 | tuxcomp | This is what happens: the device receives something it does not understand, which happens to make it shake a little. |
22:40:57 | tuxcomp | If you keep sending packets, the rumble pad will go on shaking |
22:41:11 | CoolMan | hmmmm |
22:41:13 | tuxcomp | But in a rather uncontrolled way. |
22:41:25 | CoolMan | ic what your saying |
22:41:48 | tuxcomp | About cleaning: yes, it can be done. It's done in the linuxconsole CVS, btw |
22:42:16 | CoolMan | so we are talking about writing a new driver alltogether and figuring out the protocol from scratch |
22:42:18 | tuxcomp | I just have to add a small change to the patch. |
22:42:22 | CoolMan | to make this work |
22:42:24 | tuxcomp | I fear that |
22:42:44 | CoolMan | ok, who's up for a drive to logitech? |
22:42:58 | tuxcomp | We can try. |
22:43:08 | CoolMan | wants to violently extract the information from logitech. |
22:43:16 | tuxcomp | But it's unlikely they will lissen to us |
22:43:22 | CoolMan | YAAAAHHHHHH!!!! |
22:43:33 | CoolMan | BOOOOOOOM! |
22:43:44 | tuxcomp | Yeah, isn't it frustrating ? |
22:44:02 | CoolMan | yeah |
22:44:11 | tuxcomp | Now, I noticed loads of fa fe 00 00 00 packets are present in 1, 2 and 3 |
22:44:23 | CoolMan | which means what? |
22:44:31 | tuxcomp | Perhapes it is this effect that triggers the vibration ? |
22:44:57 | tuxcomp | We should try the following: |
22:45:04 | CoolMan | maybe it's the pad state, because i never did anything with the buttons or axes while capturing |
22:45:30 | tuxcomp | The direction of the transition is USBD_TRANSFER_DIRECTION_OUT |
22:45:58 | tuxcomp | On the other hand, I have loads of packets with DIRECTION_IN, too |
22:46:10 | CoolMan | but this is a standard protocol tho, Immersion Studio had no trouble with it |
22:46:44 | tuxcomp | Immersion Studio is a hi-level apps based on Immersion's API, based on DirectX, based on lo-level drivers. |
22:46:58 | CoolMan | ic |
22:47:07 | CoolMan | hmmmm |
22:47:32 | CoolMan | there has to be somthing to do |
22:47:39 | tuxcomp | About the packets, in the first log I have lots of 7f 7f 00 7f 7f 08 80 00 packets |
22:48:26 | tuxcomp | I also have 7f 7f 00 7f 7f 08 80 06, 82 7f 00 7f 7f 08 80 00, 82 7f 00 7f 7f 08 80 06 and 82 7f 00 82 82 08 80 06 packets |
22:48:35 | CoolMan | which means? |
22:48:46 | tuxcomp | Perhaps you were right |
22:48:54 | CoolMan | about what? |
22:48:56 | tuxcomp | OUT means from the device to the driver |
22:49:15 | tuxcomp | fa fe 00 00 00 00 00 would report the state of the device |
22:49:31 | CoolMan | hmmm |
22:49:40 | tuxcomp | 7f 7f 00 7f 7f 08 80 00, which is a IN packet, would be used to render effects |
22:50:05 | CoolMan | we could verify by having the state of the controller changed during the capture |
22:50:14 | tuxcomp | Yes |
22:50:23 | CoolMan | oh yeah, i forgot my console is crashed |
22:50:24 | CoolMan | hehe |
22:50:34 | CoolMan | (i unplugged my mouse by accident) |
22:50:35 | tuxcomp | You could also time how long you keep an effect playing |
22:50:44 | CoolMan | brb |
22:52:48 | CoolMan | ugh |
22:52:52 | CoolMan | i'm tried |
22:52:57 | CoolMan | tired |
22:53:15 | Bakemono | yo |
22:53:18 | CoolMan | yo |
22:53:49 | CoolMan | i'm going to have to email logitech and ask them *nicely* to give me their classifyed information |
22:54:57 | Bakemono | :( |
22:55:01 | Bakemono | that sucks |
22:55:02 | tuxcomp | Sure, if many people do that, they will end up changing their minds maybe... |
22:55:05 | CoolMan | yeah |
22:55:22 | tuxcomp | I've just had a look at the hid spec. |
22:55:28 | CoolMan | yeah? |
22:55:36 | CoolMan | what's the verdict? |
22:55:43 | tuxcomp | the fa fe packest could be a hid report packet |
22:55:52 | CoolMan | ok |
22:56:13 | CoolMan | really quick, the HID spec doesn't happen to have a spec for FF? |
22:56:40 | tuxcomp | No, that would the pid spec |
22:56:50 | CoolMan | i'm lost |
22:56:59 | tuxcomp | Which does not happen to mention rumble effects |
22:57:06 | CoolMan | hmmm |
22:57:22 | tuxcomp | But maybe rumble is just periodic effects |
22:57:31 | CoolMan | maybe |
22:57:41 | CoolMan | i would base anything on the name of the controller |
22:57:47 | tuxcomp | Happily, someone's working on supporting pid |
22:58:14 | tuxcomp | What do you mean ? |
22:58:36 | CoolMan | well, i thought you were thinking "RumblePad" |
22:58:39 | CoolMan | nm |
22:58:42 | CoolMan | not importaint |
22:59:36 | Bakemono | :( |
22:59:53 | CoolMan | HAHAHA |
22:59:58 | Bakemono | ? |
23:00:08 | CoolMan | I FOUND A TECHNICAL SUPPORT NUMBER |
23:00:11 | CoolMan | AHHAHAHAHA |
23:00:12 | Bakemono | ok... |
23:00:21 | Bakemono | ............... |
23:00:26 | CoolMan | will be harassing Logitech |
23:00:26 | [57th]cneal | :D |
23:00:32 | CoolMan | bbaib |
23:00:37 | Bakemono | insanity..frightening...bakemono... |
23:01:11 | Bakemono | tuxcomp: btw, thanx for helping CoolMan |
23:01:13 | [57th]cneal | Besure to taperecord the phone call |
23:01:35 | CoolMan | yeah, thanks tuxcomp |
23:01:59 | [57th]cneal | is away: I'm away! |
23:02:43 | tuxcomp | You are welcome |
23:03:34 | tuxcomp | If you want to try again, look at the packets I mentioned |
23:04:30 | CoolMan | anybody live in the 702 area code? |
23:04:42 | Bakemono | nope |
23:04:48 | Bakemono | isn't that like new york or something? |
23:04:56 | CoolMan | PST |
23:05:19 | CoolMan | somewhere |
23:05:25 | Bakemono | it's ni PST? |
23:05:26 | Bakemono | in* |
23:05:31 | CoolMan | yeah |
23:05:40 | Bakemono | hmm |
23:05:41 | CoolMan | LOGITECH Inc. |
23:05:41 | CoolMan | 6505 Kaiser Drive |
23:05:41 | CoolMan | USA - Fremont, CA 94555 |
23:05:46 | Bakemono | oh |
23:05:47 | Bakemono | no |
23:05:49 | Bakemono | I don't |
23:06:09 | CoolMan | oh well |
23:06:33 | CoolMan | man, there 800 number told me to call their 702 number... |
23:06:41 | Bakemono | hmm |
23:06:45 | Bakemono | call it? |
23:06:47 | CoolMan | of course i forgot it's saturday anyway |
23:07:01 | CoolMan | bah |
23:07:10 | CoolMan | dad won't let me call it |
23:07:14 | CoolMan | too much of a bill |
23:07:22 | Bakemono | for some reason I can't see you getting the protocol over the phone... |
23:07:44 | CoolMan | no, i don't suppose |
23:09:35 | tuxcomp | If you don't mind, I will stop here for tonight (yes, it 0.15 here) |
23:09:48 | CoolMan | hehe |
23:09:52 | CoolMan | i don't blame you |
23:09:54 | tuxcomp | It's still early for a hacker, |
23:09:58 | CoolMan | i'm tired myself |
23:10:27 | tuxcomp | but I do not think we will have more ideas tonight |
23:10:39 | CoolMan | probably not |
23:10:46 | CoolMan | i will try to contact logitech |
23:10:46 | tuxcomp | There is still room for experimentation, though |
23:10:51 | tuxcomp | yes |
23:11:20 | CoolMan | if i could say it like this |
23:12:06 | tuxcomp | I will mention your problem on linuxconsole ML, and see if anyone knows more about it. |
23:12:44 | CoolMan | "We are considering developing a game console using a USB controller and we wanted to use the Logitech WingMan RumblePad. We need the details on the protocol so we can develop a linux driver for it..." |
23:12:48 | CoolMan | ok man |
23:12:54 | CoolMan | thanks again |
23:13:10 | CoolMan | i'm allways here if you feel like wasting more time ;) |
23:13:52 | tuxcomp | You're welcome. Good luck, and yes, I would like to try to find out if my idea was right, so I will probably come back later |
23:14:01 | CoolMan | ok |
23:14:17 | tuxcomp | Even tomorrow, for example |
23:14:24 | CoolMan | ok |
23:14:32 | CoolMan | cya man |
23:14:32 | tuxcomp | Bye. |
23:14:37 | CoolMan | i have to leave anywa |
23:14:41 | CoolMan | anyway |
23:14:57 | CoolMan | cya bake |