Munt Mac OSX version discussion

Developer's Forum for discussion of bugs, code, and other developmental aspects of the Munt Project.

Munt Mac OSX version discussion

Postby ufoufo512 » 2013-9-05 @ 06:08

My goal is to maintain binary release of Mac OSX version of the wonderful Munt emulator, so that not everybody need to compile it for themselves.

I created this thread for any relevant discussion instead of the previous hijacked thread. I am hoping to be able to release standalone binary of current Munt code for Mac OSX this weekend. I will upload a link to that here.
ufoufo512
Newbie
 
Posts: 38
Joined: 2010-1-27 @ 05:47

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-05 @ 17:30

Well, at least it now compiles...
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-05 @ 17:31

Btw, I'm going to release 1.3.0 soon, and really hope to include binaries for OS X and Debian.
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby ufoufo512 » 2013-9-05 @ 18:15

I'll try to get Mac OSX version ready before you release the next version. So far I have compiled it and I also made an app bundle that includes all dependencies (QtCore, QtGui and portaudio). The problem is that it crashes on the other Mac with Snow Leopard at start up with no . It shouldn't be hard to fix ;-), maybe a deployment target needs to be adjusted or maybe there is still something wrong with the dependencies.

I admit I am bit noobie with this (CMake project & Qt), I have done most of the programming with XCode and iOS, but I am getting hang of it.
ufoufo512
Newbie
 
Posts: 38
Joined: 2010-1-27 @ 05:47

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 05:18

Btw, two more things to consider.
1. You can generate Xcode project and use the IDE. Just start cmake in a new empty directory with -G option to specify the generator like this "cmake -G Xcode ../munt"
2. Make sure the binaries created are optimised. CMakeCache.txt should contain something like CMAKE_CONFIGURATION_TYPES:STRING=Release

P.S. There is one more dependency - Qt plugin imageformats/qgif4 - used to handle GIF resources. It isn't required for the app to start but it will look quite ugly if the plugin isn't available.
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby ufoufo512 » 2013-9-06 @ 06:32

sergm wrote:1. You can generate Xcode project and use the IDE. Just start cmake in a new empty directory with -G option to specify the generator like this "cmake -G Xcode ../munt"

Yep, I had forgotten that. Once tried it with compiling GemRB (I recall). Ended up doing it on the command line after all because it was easier, though. I think it is good to learning progress.

sergm wrote:2. Make sure the binaries created are optimised. CMakeCache.txt should contain something like CMAKE_CONFIGURATION_TYPES:STRING=Release

Good point. I think I missed this.

sergm wrote:P.S. There is one more dependency - Qt plugin imageformats/qgif4 - used to handle GIF resources. It isn't required for the app to start but it will look quite ugly if the plugin isn't available.

I am using "macdeployqt" that should include Qt plugins as well.

I was just successful in making working dmg. Couple of things still prevail:
1) The optimization is missing, I need to make a rebuild
2) The app works on Mountain Lion (my development machine) and with Snow Leopard (my daughters' machine).
3) A nice icon would be good, haven't done yet and I was hoping somebody else would provide that.
4) The app is not signed, meaning that with default Gatekeeper settings on Mountain Lion, you wouldn't be able to run it. I currently don't have an personal Mac OSX developer account (although I have for iOS). I might be able to sign it using somebody else's account, but I really don't think that is needed, but I am willing to discuss the options.
ufoufo512
Newbie
 
Posts: 38
Joined: 2010-1-27 @ 05:47

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 06:47

1. I was afraid of it ;)
2. That's great
3. It seems everybody thinks like that, so nothing just that stupid note icon exists :D
4. I don't care about signing the Windows binary until nothing else but Windows 8 squares are possible. Looks like maintainers of Linux distros also don't. Do you want it to put to the Appstore?
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby Dominus » 2013-9-06 @ 07:05

4. sergm, apple introduced Gatekeeper with OSX 10.8 which doesn't allow the start of unsigned downloads unless you lower a security setting. That's why I sign the dosbox svn builts.
@ufo we could use my signature for signing a release built at least (e.g. When you compiled it I can sign the app bundle before making a dmg).
User avatar
Dominus
DOSBox Moderator
 
Posts: 7285
Joined: 2002-10-03 @ 09:54
Location: Vienna

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 07:11

Antivirus from Apple lol
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby ufoufo512 » 2013-9-06 @ 07:28

Here is the link to first test version of Mac OSX binary, using current Munt code in github:
https://dl.dropboxusercontent.com/u/308 ... T32Emu.dmg

Screenshot with ScummVM and Munt running:
https://dl.dropboxusercontent.com/u/308 ... cummVM.png

Please test and report your success or fail here. I have tested it on Mountain Lion and Snow Leopard using daily built ScummVM and Monkey Island. I'll be focusing other things for a while now, but I will take look on possible issues during the weekend.

Minimum requirement is Snow Leopard, compiled as 64bit architecture, no PPC or 32-bit support. I think it is good like this, owners of older hardware can build stuff themselves. I imagine most of the potential Mac users having needed specs. If you disagree, let's discuss.

Ps. If I have left any debugging code or unoptimized compiling in, I apologize, I will double check in the evening.
Ps. If you have a suitable icon graphics, please tell.
ufoufo512
Newbie
 
Posts: 38
Joined: 2010-1-27 @ 05:47

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 07:47

Just doubt whether libportaudio is needed inside. I assume you compiled it in, the default configuration uses static linking.
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby ufoufo512 » 2013-9-06 @ 07:52

Ok. I add it to my possible issues / need checking list.
ufoufo512
Newbie
 
Posts: 38
Joined: 2010-1-27 @ 05:47

Re: Munt Mac OSX version discussion

Postby Dominus » 2013-9-06 @ 13:39

ran it on Mavericks and it showed a blank app. Only when I clicked on the menu to make a new midi port did it show the gui (and then it was mt32emuport1 instead of mt32emuport)
User avatar
Dominus
DOSBox Moderator
 
Posts: 7285
Joined: 2002-10-03 @ 09:54
Location: Vienna

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 14:14

Try to send some MIDI events before opening second MIDI port. ;)
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby Dominus » 2013-9-06 @ 14:24

Honestly, I have to figure out first how to use it ;)
Ufo: any pointers on that? Just use coremidi in scummvm (and other programs)?
User avatar
Dominus
DOSBox Moderator
 
Posts: 7285
Joined: 2002-10-03 @ 09:54
Location: Vienna

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 14:30

I really don't remember lol
Maybe you will need to specify the port name if you have many configured.
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby ufoufo512 » 2013-9-06 @ 15:15

@Dominus: Thanks for testing! Regarding the blank app, I got that too on Snow Leopard. I have to reproduce again to see what really happened, maybe pressing "Pin synth" did the trick and after that I didn't get the blank UI. So it needs some investigation. Might be a file permission problem... @sergm: What is the desired functionality on this? Is the blank screen a bug or "as designed"? What should be displayed for a first time user? Sorry for my ignorance, but I don't also understand what is the use case for having multiple Midi inputs? Why should I need that?

Regarding the usage in ScummVM:
1) I selected Override global audio settings and CoreMidi in ScummVM audio section.
2) Midi section I leave alone (if I select Override, I still cannot select a Midi device from the pull down menu).
3) On the MT-32 section I select Override global MT-32 settings and True Roland MT-32 (again, I cannot select any device from the pull down menu)

Those settings make the sound and lit the lights in MT32Emu, also sounds correct to me.
ufoufo512
Newbie
 
Posts: 38
Joined: 2010-1-27 @ 05:47

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 15:31

IIRC, new CoreMIDI session is started after an application starts sending MIDI events (maybe after it just connects, not sure). This is how I managed to handle CoreMIDI API :P
KingGuppy wanted multisession mode. No idea why. He described it as he can start one app, then pause its MIDI stream and start another. While the synths keeps their state and don't interfere each other. Anyway it doesn't hurt. I personally never connect multiple apps separately but I use mixing MIDI inputs from several sources into one single session. Imagine, you can start playing a MIDI file with some tracks muted and simultaneously play using your keyboard.
The MIDI port the emulator creates is a virtual port. I found some MIDI-capable apps can show it in their list and some can't (I suspect they can list only real ports). Looks like Scumm is a sort of latter. I tried DOSBox's midiconfig option to switch and it worked (quite some time ago under SnowLeo). Also two DOSBoxes worked with two sessions. So, I thought that's over :)
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Re: Munt Mac OSX version discussion

Postby Dominus » 2013-9-06 @ 15:33

ok, got it to work with Exult by just telling it to use Coremidi audio driver. I just wonder what happens with a real mt32 also hooked up since both are just used by coremidi... The blank interface then instantly began to show the full gui of Munt.

Anyway, some problems:
- PortAudio: (CoreAudio) Airplay was selected by default, instead of PortAudio: (CoreAudio) Built-in Output. I think the default should be Built-in Output. This is probably just because Airplay is sorted first :)
- Some way to disable that Growl stuff. I have Growl from the App Store installed and as soon as something happens that Munt sends to Growl a file browser pops up asking for the location of Growlhelper.app. Somehow that doesn't work correctly anymore with current Growl or so. Will need to investigate. Problem is that it makes an annoying sound...
User avatar
Dominus
DOSBox Moderator
 
Posts: 7285
Joined: 2002-10-03 @ 09:54
Location: Vienna

Re: Munt Mac OSX version discussion

Postby sergm » 2013-9-06 @ 15:50

You can disable tray balloons for a while (to save nerves :E). I also disappointed how tray icon works itself. I remember there were no distinction in mouse buttons when clicked. The popup menu shows up and the app shows/hides in the same time. Qt sucks at that.
sergm
Oldbie
 
Posts: 734
Joined: 2011-2-23 @ 16:37

Next

Return to MT-32 Development

Who is online

Users browsing this forum: No registered users and 1 guest