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.