Previous Thread
Next Thread
Print Thread
Page 1 of 21 1 2 3 20 21
Joined: Jul 2000
Posts: 497
MacMAME Author
OP Offline
MacMAME Author
Joined: Jul 2000
Posts: 497
Some of you have no doubt noticed my increased work on MacMAME over the past few weeks. I've taken advantage of a break in work to get back to some of the stuff that I enjoy working on in my spare time, like MacMAME.

To that end, I've got a development path charted, and it is going to be a battle on two different fronts.

The first front is the MacMAME core. By this I mean the part of MacMAME that draws the video, plays the sound and contains all the PC code. I'm gradually shifting this towards the new OSX-only technologies and bringing it into the 21st century, piece by piece. As you all know, MAME on the PC is open-source and free software and naturally MacMAME will stay that way.

This leads directly to the second part - the MacMAME front-end. This is everything you see from the moment you launch the app until you click on the "Play" button. This is where I'm planning on making the largest change. I've laid the groundwork to allow an outside app to set all the preferences for the MacMAME core and launch it with those game settings. In the future (I'm not sure when), I'm strongly leaning towards removing the front-end from MacMAME and turning it into a closed-source shareware app, probably priced around $10.

This means a few things. One, you'll have to pay in the future to get what you have right now for free - or live with the shareware nag stuff and not pay. wink Two, this will open the door for other folks to write their own MacMAME front-end apps and charge money for them if they so desire, or open-source one and make something that totally spanks my shareware front-end and makes me want to cry.

My intention of course is to overhaul the front-end so that it's much nicer than it is right now. Probably when I hit the point where it's markedly better is when I'll make the split and start charging. The rationale behind all this is to basically help me justify spending my time on improving MacMAME through legitimate financial incentives.

"But I won't pay!" I hear you cry. What happens to MacMAME if you don't? Not much - it'll basically run as it does now, with PPC assembly cores, fancy blitters and the like based on what it finds stuffed in its own Preferences file, and it'll remain free. It'll be updated separate from the front-end. In the absence of a front-end proper, it'll likely prompt you to pick a ROM and run using the prefs that were set for it by either a front-end or the in-game menus. Configuring MacMAME without a front-end will likely remain about as bare-bones as it is now, with most of the work handled by Command-key shortcuts and menu options.

So this is the part where I stop talking and gather feedback. smile

Joined: Oct 2000
Posts: 139
Senior Member
Offline
Senior Member
Joined: Oct 2000
Posts: 139
I think that's a superb idea. I think the front-end and the MacMAME engine really ought to be separated, and your plan will do that as well as letting you make some well-deserved money for your efforts.

Suggestion: make the MacMAME engine fully AppleScriptable, and make it so that when it launches, there is no 'main window' -- all it needs, really, are 'Open' and 'Preferences' menu items.

Joined: Jul 2000
Posts: 497
MacMAME Author
OP Offline
MacMAME Author
Joined: Jul 2000
Posts: 497
Quote:
Originally posted by Brian Kendig:
Suggestion: make the MacMAME engine fully AppleScriptable, and make it so that when it launches, there is no 'main window' -- all it needs, really, are 'Open' and 'Preferences' menu items.
I'm not entirely sure how AppleScriptable it needs to be. Right now, you can basically control it by setting the preferences and telling it to open a ROM, and also when to quit. That takes care of most of the necessary tasks.

Joined: Sep 2000
Posts: 693
Senior Member
Offline
Senior Member
Joined: Sep 2000
Posts: 693
Sounds good to me Brad.

As for Applescripting, I've always hoped it could be used for automatically running benchmarks. Set up a script to load a ROM, run it for a few minutes, jot down the average FPS, load another ROM, rinse and repeat.

Regarding the front-end, how hard will it be for us programming-challenged people to make one? Will OS X's dev tools cover it? If AppleScript support could be added, would AppleScript Studio be able to build a front-end of sorts?

Finally - does some of the work you have planned include more PPC assembly cores and/or other speed optimizations?


AtariAge Blog
Joined: Sep 2000
Posts: 11
Member
Offline
Member
Joined: Sep 2000
Posts: 11
I haven't heard such good news on this board, since the OpenGL plugin was released!


"3 Warps to Uranus" ...so I stopped playing.
Joined: Oct 2000
Posts: 139
Senior Member
Offline
Senior Member
Joined: Oct 2000
Posts: 139
Some thoughts on scripting:

"open <game>" -- should work whether or not there is a game currently being emulated
"open <game> and skip <n> seconds" -- start emulation, but run past the machine initialization as quickly as possible without showing it (good for using MacMAME as a screensaver)
"close game" -- exit emulation and return UI control to the launcher app, but don't quit the engine
"quit" -- kill the engine

<game> would be the game's abbreviation, like "pacmod" or "astdelux", and the engine should automatically find it in (or under) its Roms directory.

Ending an emulation should always bring the launcher to the foreground.

Also, there should be a way to query the MacMAME engine via AppleEvents to get information:

- the absolute path to its Roms directory, so that a front-end app doesn't have to find the Roms directory on its own
- a list of games this version of MacMAME supports, so that a front-end app can turn 'filename.zip' into a meaningful name to display to a user (without requiring the user to provide a copy of gamelist.txt)

Joined: Jul 2000
Posts: 497
MacMAME Author
OP Offline
MacMAME Author
Joined: Jul 2000
Posts: 497
Quote:
Originally posted by Brian Kendig:
Also, there should be a way to query the MacMAME engine via AppleEvents to get information:

- the absolute path to its Roms directory, so that a front-end app doesn't have to find the Roms directory on its own
- a list of games this version of MacMAME supports, so that a front-end app can turn 'filename.zip' into a meaningful name to display to a user (without requiring the user to provide a copy of gamelist.txt)
MacMAME itself doesn't need a "ROMs" directory. You can give it a pointer to a zip file and it's more than happy to run it, provided that the zip name matches a supported driver. For that reason, I'm not anticipating keeping this functionality in MacMAME proper. This would also allow a front-end to manage multiple ROM sets and lift the 1:1 ROM-to-listing-choice restriction.

Joined: Jul 2000
Posts: 497
MacMAME Author
OP Offline
MacMAME Author
Joined: Jul 2000
Posts: 497
Quote:
Originally posted by Nathan Strum:
Regarding the front-end, how hard will it be for us programming-challenged people to make one? Will OS X's dev tools cover it? If AppleScript support could be added, would AppleScript Studio be able to build a front-end of sorts?
You could certainly use ProjectBuilder or Xcode to whip up a front-end. I intend to rewrite one in Cocoa, actually. I don't know much about AppleScript studio, so I can't comment about that.

Quote:
Finally - does some of the work you have planned include more PPC assembly cores and/or other speed optimizations?
Definitely.

Joined: Nov 2000
Posts: 114
V
Senior Member
Offline
Senior Member
V
Joined: Nov 2000
Posts: 114
Awesome idea. And only $10? That's a steal!

Actually I wouldn't mind a "free" version able to run via the terminal, w/ the GUI version being the one you charge for. Meaning, no nags in the terminal version, nag all you want in the GUI version. Perhaps that's extra work, I dunno, just a thought.

I know it's been said before, but an iTunes layout for a frontend would be killer. You could have "playlists" (and the term still makes sense!), and have an easy way to organize everything. There's even the spot for screenshots where album labels go now. I'm not saying rip it off 100%, but it's a good metaphor to start with if you're really going to redo the frontend.

Just my 2 pennies.

A
Anonymous
Unregistered
Anonymous
Unregistered
A
I applaud the decision. Just the core must remain open-source and free right? So I don't see anything wrong with charging for just the front-end.

Having said that, it can open the door to running MacMAME from the terminal, or perhaps mixing MacMAME code with xMAME code to form the next version of MacMAME...

Page 1 of 21 1 2 3 20 21

Link Copied to Clipboard
Who's Online Now
1 members (Bletch), 26 guests, and 2 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics9,103
Posts119,284
Members5,019
Most Online890
Jan 17th, 2020
Our Sponsor
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!

Superior Solitaire
Forum hosted by www.retrogamesformac.com