Tuesday, April 27, 2010

Sixaxis

So I connected the code from operating systems to the JSIO object. The good news is that when I run JSIO.sixaxis(), the code runs and opens a channel to the controller. On the command line the program states that it is waiting for input. The bad news is that when I press a button it crashes saying "illegal instruction".

I think that it is a permissions issue with reading the joystick input from /dev/input/js0. I remember this happening the first time around and Andres had to allow special permissions. I can get this.

Saturday, April 24, 2010

Connecting to the IO stream

I am trying to get my native object to call the code I created for Operating Systems. The code reads input from a PS3 Sixaxis controller. This would show how I can communicate with low level code through my native object.

The problem is that:
1) I'm not sure where to put that .c file.
1.1) I could just dump it in the js directory but that doesn't seem right.
2) I'm not sure where in the make file to add it or which make file to add it to
3) The code prints to standard out. Would I need to have a shell open? How would I see the output?
4) Making small changes then recompiling is insanely time consuming because the compile time is about 15min.

I'm trying to figure this out but it may take a while.

Thursday, April 8, 2010

SUCCESS!

Got it to work. There is now a native JSIO object in Firefox. Sweetness.

Wednesday, April 7, 2010

Native Object

I added my own custom JSIO native object to the Firefox codebase. It is an object called JSIO and can run the sqrt method from the Math class. Compilation was successful. However, when I try to launch the newly compiled Firefox, it runs the other version on my computer.

When reading the startup script, I noticed that if the script cannot find the correct startup file in its directory, it looks for other versions of it on the disk. So there must be a problem there. I am in the process of tracking it down.

Spring Break

I was on a cruise to Mexico for the last week so I wasn't able to get any work done.

Thursday, March 18, 2010

Compiler Flashback

Still in the process of tracing where in the Firefox code the JavaScript gets turned into C. I have gotten to the JavaScript parser and identified the correct token for the "Math" object. Just need to keep following from there.

Thursday, March 4, 2010

More design

I have stubbed out the JavaScriptIO object with pseudo code for the necessary methods. Layed out the way I want the object to function at the user level. Continued refinement of all aspects. I also determined that the "handler" object must be of type nsIDOMEventHandler. More research is required on the specifics of this object (mozilla's page is light on documentation).

I have also been reviewing my old code from Operating Systems that read IO from a PS3 controller. I'm starting to piece together the way this will be wired.