I am a graduate student of the Virtual Reality Lab in Southwest Jiaotong University, China. I have been trying to write the Java-based driver program for SpaceBall5000 since this June. This work takes me a lot of time. Unfortunately, up to now I have not settled it down.
I downloaded one driver program for Spaceball 4000, and modified it to obtain the Spaceball 5000 driver. However, I always failed in running the program of Spaceball4000Test.java. Following are two main problems I met:
1. I am wondering if the self-defined parameters in the programs of SpaceballPacket.java and Spaceball4000Packet, such as BALL_DATA=0x44,BUTTON_DATA=0x4B, are related to the version of Spaceball? If so, how to find these inter parameters? I search for them through Internet but cannot find useful data. I found if BALL_DATA=0x64 and BUTTON_DATA=0x6B, then the data of the press keys and control ball can be read out, but the data of the control ball almost doesn’t change.
2.The character-string is defined in the method of program of Spaceball4000Test.java.
driver.emitPatternedBeep
(
new char[]{'a','A','m','M','d','D','z','Z'}
);
I am wondering if its function is only to control the length of sound, and it has nothing to do with other orders? I tried to replace the character-string 'm','M', leading to the failure in reading the control ball data.

