Jump to content
IGNORED

Stella as Wrapper for iOS


Recommended Posts

Rather than take up Stephens time with a private e-mail I thought I'd post a topic here.

 

Is there room for a donation encouraged wrapper xcode project for iOS? I could see Stella being a vehicle to get Atari 2600 homebrew onto an iPad. Emulators are generally frowned upon but single ROM apps might pass muster.

Edited by theloon
Link to comment
Share on other sites

Well true, I don't have a lot of time, but I can give some quick feedback. It's pretty easy to take the current codebase and completely strip out everything that makes it general, and tie it to a specific ROM. In fact, in doing so you'd probably also remove the debugger and internal ROM properties database, which combined would cut the binary size in half, and also run slightly faster. If you're familiar with C/C++, the code is set up to conditionally compile major components, so simply turning off a certain directive will completely remove the debugger from the runtime. There are similar directives for removing the cheatcode support, joysticks, OpenGL, etc.

 

However, the real problem with this whole scheme isn't just Apple's issue with emulators, but that Stella is GPLv2, and any modifications have to be released freely. There's also the issue of introducing money into what is normally a hobby-market. To be honest, if someone used Stella this way on an iPad as a paid-for app, I'd (rightly, IMHO) expect some kind of contribution to Stella (monetary, in-kind, etc).

 

Long story short, most of the problems with this approach are not technical. I suspect I could have a Stella iOS wrapper written in a week if I could find the time, and I knew for certain it wouldn't be a waste of time.

Link to comment
Share on other sites

Of course you'd expect compensation. Albert makes physical cartridges and gets paid. You would provide a "cart" in iPad app format. Same money that's already involved in the hobby-market.

 

The output from GPLv2 programs don't need to be licensed GPLv2. The only thing that would change is which ROM is included when you hit compile on an xcode project. So, homebrew ROM wrappers created by a Stella xcode project wouldn't need to be licensed that way.

Link to comment
Share on other sites

As long as there's a clear separation between the ROM and the emulator. If the ROM is included in the emulator itself (ie, its binary code is translated to a C++ header file), then the resulting ROM must be released under the GPL. We don't want that. However, if the emulator and ROM are not tied together and the app can launch the ROM, then Apple might have a problem with it, since they might argue that someone could drop another ROM in there and it would work, and hence it's a general-purpose emulator.

 

For this to work (assuming that Apple even allows it to work), the wrapper must be written in such a way that no other ROM can be loaded unless you physically edit the code, and the ROM itself isn't present in the app (perhaps having it in the app bundle would be enough?).

Link to comment
Share on other sites

As long as there's a clear separation between the ROM and the emulator. If the ROM is included in the emulator itself (ie, its binary code is translated to a C++ header file), then the resulting ROM must be released under the GPL. We don't want that. However, if the emulator and ROM are not tied together and the app can launch the ROM, then Apple might have a problem with it, since they might argue that someone could drop another ROM in there and it would work, and hence it's a general-purpose emulator.

 

For this to work (assuming that Apple even allows it to work), the wrapper must be written in such a way that no other ROM can be loaded unless you physically edit the code, and the ROM itself isn't present in the app (perhaps having it in the app bundle would be enough?).

 

Checksum and homebrew ROM could be separate items included in the .IPA. No need to hard-code anything unique to the homebrew. There's no Atari IP for them to worry about and it doesn't turn the iPad into a general purpose emulator.

 

This at least clears up what issues there are and possible workarounds for anyone who undertakes this. I really appreciate the feedback.

Edited by theloon
Link to comment
Share on other sites

Great thread topic Loon!

 

I thought there already was an ios emulator app for the ios, but that it was controlled by Atari:

http://atari.com/buy...s-greatest-hits

 

I had been thinking along similar lines as I recently entered my Atari 2600 game BREAKANOID Pong tribute Monochrome Dreams in Atari's Developer Pong Challenge contest.

 

Atari was asking for Pong games for the ios in this contest and specified that any software engine could be used; since the BREAKANOID games run inside a 2600 virtual machine it would seem to meet that criteria but we've recieved a form letter telling us that out entry must have an ios app id to be considered for the contest :(

 

Seems to me either of your ideas would be applicable without the GPL since Atari owns their emulator code; homebrew Atari 2600 games with their retro look and feel could be wrapped directly by the emulator as distinct ios game apps or sold as additional ROM's for their emulator app like they do now with the classics.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...