Join us at the Oolite Anniversary Party -- London, 7th July 2024, 1pm
More details in this thread.

Gamepad support, building with SDK 10.5

Discussion and announcements regarding the Mac port… er, original version of Oolite.

Moderators: winston, another_commander

What OS X version are you running Oolite on?

Poll ended at Sun Apr 11, 2010 10:04 am

OS X 10.4
2
29%
OS X 10.5
5
71%
 
Total votes: 7

User avatar
webbasan
Average
Average
Posts: 8
Joined: Sat Aug 07, 2010 2:39 pm
Location: Mundito Rosinante - a small world at the border of the city.

Post by webbasan »

Thanks for the nice greeting! :-)

I'm also quite capable to not depend on frilly gadgets like joysticks and docking computers. Nevertheless, I'm also coming into that age, where one appreciates the comfort of a plushy armchair in his Cobra... ;-)
So, some frilly gadgets are a "nice-to-have"... 8)

I played Elite the first time then a friend of mine bought it for his C64 (we spent hours after hours with that game; even my username was invented for it; if I dig deep enough I even may find the disk with my commander files somewhere...) - later I got it for my Amiga... One nice feature of playing it with a stick like the "Competition Pro" was, that you could rotate the stick appropriately when firing sideways or backwards, so your reflexes didn't stay in the way while trying to aim at the enemy... ;-)

A real "Fighter Stick" might be inappropriate for such a maneuver, a gamepad awkward. But it's still a nice thing to have all important controls neatly at one place together... :D

But, back to the original issue: I'm somewhat interested in learning Objective-C and the OS X environment and I always wanted to improve my rusty OpenGL knowledge. This project looks appropriate to do so.

I won't make any promises, for the beginning I just want to see for myself where I get. I began as some kind of "old school" C hacker, where emacs and make was enough for doing all jobs one could think of and was later taken by the Java world. Xcode is much different (and in many places not as powerful) as IntelliJ IDEA and the idioms in the OS X world of software development are new to me. But then - the fun lies in the discovering of new ground - to boldly go, where one hasn't been before... ;-)
User avatar
maik
Wiki Wizard
Wiki Wizard
Posts: 2020
Joined: Wed Mar 10, 2010 12:30 pm
Location: Ljubljana, Slovenia (mainly industrial, feudal, TL12)

Post by maik »

Hi webbasan,

cheers for joining! I had the same motivation to join the project, also started with Elite on a C64, also have some C background, also coded in Java during my career related coding years and am also trying to pick up Objective C now that I switched to OS X :)

It would be great if we could join forces on this joystick support. I chose not to support OS X 10.4 by picking the new HIDManager related framework--hope that's not a deal breaker for you.

In my local tree I got as far as writing the required classes (stubs mostly) to make everything compile after switching on the joystick config page for OS X (which is heavily dependent on SDL for Linux and Windows). What is missing now is fleshing out the interface to make it usable. At the moment it just crashes on you.

Beyond that, we would need a loading/saving mechanism for HID supported joysticks and their configuration and, as Ahruman suggested earlier in this thread, a separate thread to capture the HID events.

I'm going to commit the changes to my tree today. If you're interested in joining you need to get yourself a Berlios account and ask Ahruman for commit access to the tree he created for me, again see above in this thread.

Cheers,
-Maik
User avatar
webbasan
Average
Average
Posts: 8
Joined: Sat Aug 07, 2010 2:39 pm
Location: Mundito Rosinante - a small world at the border of the city.

Post by webbasan »

Hi maik,

if I don't do it just for myself, I'm hesitating to break the support for older versions. 10.4 is an important milestone (if I remember right, the last version with support for PowerPC?), so I would prefer to see such a feature on every system that is supported by the main application...

But I won't stick to that opinion at all cost. For one, I wasn't aware of this "loadable bundle" feature. Another issue would be, if we won't get 10.4 support "for free": If I have to try it to make sure that it works I won't do it, because I can't test it: My box is running with 10.6 and I even killed my 10.5 partition some time ago.

That's where this DDHidLib came into play: it seemed to promise just that (and some neat goodies beyond that...).

I have already checked out trunk and your branch. But so far, I didn't look into the code to see how much of it is specific for the "Xbox controller" and how much is just generic "HID/gamepad" stuff.

May be we can discuss the details by mail.
User avatar
maik
Wiki Wizard
Wiki Wizard
Posts: 2020
Joined: Wed Mar 10, 2010 12:30 pm
Location: Ljubljana, Slovenia (mainly industrial, feudal, TL12)

Post by maik »

webbasan wrote:
if I don't do it just for myself, I'm hesitating to break the support for older versions. 10.4 is an important milestone (if I remember right, the last version with support for PowerPC?), so I would prefer to see such a feature on every system that is supported by the main application...
10.5 still supports PPC
webbasan wrote:
That's where this DDHidLib came into play: it seemed to promise just that (and some neat goodies beyond that...).
Interesting as well, I'll check it out in more detail later today. I don't need to stick to the 10.5 libs at all costs either ;-)
webbasan wrote:
I have already checked out trunk and your branch. But so far, I didn't look into the code to see how much of it is specific for the "Xbox controller" and how much is just generic "HID/gamepad" stuff.
I haven't checked in my modifications yet, will do so tonight.
webbasan wrote:
May be we can discuss the details by mail.
Yep, I'll PM you with my email address.
User avatar
Pluisje
Dangerous
Dangerous
Posts: 93
Joined: Mon Jan 11, 2010 3:14 pm

Post by Pluisje »

I can't program, but I can play Oolite :) . If you need a second (or third in this case) opinion, I'm happy to get me a gamepad/controller to test your labour.

I run OS 10.5 on a 2007 macmini.
User avatar
maik
Wiki Wizard
Wiki Wizard
Posts: 2020
Joined: Wed Mar 10, 2010 12:30 pm
Location: Ljubljana, Slovenia (mainly industrial, feudal, TL12)

Post by maik »

Great, help is always welcome, especially in testing. The more the merrier :)
Post Reply