Testers wanted for openMSX Mac OS X binary

Page 2/2
1 |

By [D-Tail]

Ascended (8233)

[D-Tail]'s picture

31-01-2006, 17:41

[D-Tail] - on my system Catapult just takes over the theme of GNOME. You need wxWidgets libraries that are linked to GTK2 for this, I think. The Debian wxWidgets 2.6 ones apparently are. When I used wxWidgets 2.4, this was not the case.Thanks for the hint manuel, I apt-got the wxWidgets library (libwx2.6-0 or something like that) but should I now recompile openMSX in order for it to work?

By jr

Champion (375)

jr's picture

31-01-2006, 18:34

manuel - actually I didn't compile Catapult on Mac at all, tried it but as it seems to require some additional libs I gave up. When saying "make" at top level it tells me I have wxWidgets 2.5.3 and libxml2 2.6.16 but no wxWidgets XRC. I guess that's then something not present in the "standard" Mac environment, perhaps it could be installed separately? I don't have X server installed on my Mac at all, because I'm fed up with crappy X GUI apps, every app having its own look & feel (which usually sucks) ;-) Also I didn't look at the Catapult code at all but I guess it shouldn't be very complex or performance critical app so why not implement it in Java? No need to build separate binaries for different systems or need for separate cross-platform GUI libs.

boukichi - that's what I thought but I also didn't want to store all my ROMs within the app package. I like keeping the ROMs and the app separate to avoid accidentally losing all my ROM files if I delete the app. Anyway like pointed out earlier this is not really an issue as the app is also looking under ~/.openMSX/share but I didn't know this at first.

By Manuel

Ascended (15763)

Manuel's picture

31-01-2006, 20:53

[D-Tail] if you compiled Catapult with the wx 2.4 libs, you should recompile it indeed. You don't need to recompile openMSX.

I recommend to remove wx 2.4 completely; it's obsolete.

jr - wx 2.5 is a development version of wx, not a stable release... Anyway, the XRC part is probably still separated then with 2.5. It is integrated with 2.6. Also, wxWidgets apps do not have the X look and feel. HOwever, Catapult barely works on Mac OS X at all and as I said, it's not something we can easily fix, other than reimplementing it in Qt or... Java, as you suggest. For now we haven't really thought about using Java. I'll ask if people are interested.

By [D-Tail]

Ascended (8233)

[D-Tail]'s picture

01-02-2006, 00:27

About JAVA - please don't. The launcher would consume more CPU processing power than the emulator itself. And I'm dead serious on this one.

By Ramones

Champion (264)

Ramones's picture

01-02-2006, 11:04

Works very well, in Mac Mini with 10.4.4 Smile

About two or more params to launch openMSX.app ... if you use Cocoa Framework, and one SDLmain.m, you can use this procedure for get all params and export to argc :

- (BOOL) application: (NSApplication*) anApplication
openFile: (NSString* ) aFileName
{

gArgc++;
gArgv[1] = [aFileName UTF8String];
return YES;
}

In example, I only get one param, but aFilename is a NSString with all launch params.

By Manuel

Ascended (15763)

Manuel's picture

01-02-2006, 14:23

[D-Tail] - about Java: there have been horrible fights over this, but the bottomline is: if you know what you're doing, things will not be as bad as you may think.

By boukichi

Resident (33)

boukichi's picture

01-02-2006, 16:32

jr ,I meant you can delete share directory in the app,
then openMSX would search its parent directory instead of inside.

By jr

Champion (375)

jr's picture

01-02-2006, 17:03

boukichi - ok, didn't catch that, sorry :-)

and about Java, well, I also don't want to start fighting over it, it was just a suggestion - anyway modern computers have enough memory to run a "simple" launcher app and it shouldn't need any CPU resources while it's sitting idle waiting for user input.

By mth

Champion (484)

mth's picture

04-02-2006, 03:34

Ramones: openMSX is written in C++ and uses portable libs (libc, STL, SDL) for most functions, but there is a bit of Carbon code as well.
Can you explain what that code fragment does exactly? It sounds interesting, but I don't really understand it.

jr: I like Java as a language for programming servers, but I'm not sure it would be a good choice for Catapult. Not everyone has a JVM installed on their system: in Mac OS X it's standard, but in Windows and Linux it is not. Also there is not really a good GUI toolkit for Java: AWT is not powerful enough and Swing is overly complex and has a different look & feel as native apps. SWT might be an option though.
We are looking at other alternatives to C++, such as Python + Qt or Ruby + Qt.

About speed of languages: it doesn't matter exactly how fast a language is, as long as it's fast enough. While most of openMSX is C++, it also contains some assembly routines (for pixel processing) and some TCL (for hotkey handling). Pushing pixels in TCL would obviously be a bad idea for performance reasons, but doing the hotkey handling in assembly would be a bad idea as well, since it would be a waste of development time.

Page 2/2
1 |