Apple Pulls C64 Emulator From the App Store
Rob Hearn sends in a piece up at PocketGamer.co.uk on why Apple suddenly pulled Manomio's C64 emulator soon after finally approving it. (El Reg has coverage too.) "It was a glorious few moments for retro gamers when Manomio's C64 emulator was finally approved by Apple and released to the eager, nostalgic iPhone public. Then, calamity! It was gone again. Apparently some wily users figured out how to access the Commodore 64 BASIC system that was originally packaged with the emulator — something that Apple wasn't too happy with, given the nature of the interpreter's code. By setting the keyboard to 'always on,' launching a game and restarting BASIC, players got into the 'empty shell' of their C64 emulator."
it probably duplicates core functionality in the loosest sense of the term. I.E. turns it into a "computer" that people can then "use" to "get stuff done". Then BAM! duplicate functionality.
I believe at least one of the problems is that with access to the basic interpreter could be used to start illegally obtained games.
No, they banned it because they prohibit any language interpreters. What anyone wants to do with those interpreters is beside the point.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
That was Sears. Radio Shack was where you programmed the TRS-80 in the endless penis loop.
If libertarians are so opposed to effective government, why don't they all move to Somalia?
GEOS runs on most C64 emus so I'd have to guess yes. However, you can only execute the disk images that are available in the appstore. LAME.
I assume you can't follow a link. The N900 is indeed a phone, quad band to boot.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
Well, if you want to see what a C64 is capable of, come to
the Vintage Computer Festival this weekend:
http://www.vintage.org/2009/east/
There will be several C64s on exhibit, available for hands on
experimentation.
I assume you speak of the successor to my n810? I do enjoy having a full Linux system on my PDA, runs the apps I want etc. HOWEVER! Its is NOT a phone.
FYI, the N900 is a smartphone (an upcoming smartphone, mind you). It is designed much like the N800/N810, and runs Maemo (and can be used as an Internet tablet), but it is also a full-featured cell-phone. More information: official site, Wikipedia, Slashdot story and follow-up.
two words for you: "root access".
on Android you have to bend over backwards to gain it (unless there is a fsckup with text message editor, heh); on maemo its:
$ sudo gainroot
#
Android is almost as closed as iPhone...
The commands PEEK and POKE come to mind...
-- Cave quid dicis, quando, et cui
The best thing about later re-releases of the infocom games (I specifically remember Planetfall and HHGTTG) was that it had an integrated hint system with 3 progressively detailed levels (i.e. "hint" number one would be "maybe you need something sticky", "hint" number two would be "gee that stick of gum looks good", and "hint" number 3 would be "pick up gum, open gum, chew gum, use gum on broken lever").
Pretty sure you had to use the Sub-Etha Sens-O-Matic ("Electric Thumb") to get on the Vogon ship.
Particularly one whose games all depend upon an interpreted language
C64 games typically were not written in BASIC, as the performance of BASIC sucked. Only the cheesiest type-it-in-yourself games were implemented this way.
Most games were written in 6510 assembly, which was a very simple label-abstraction above 6510 machine language. Basically, the "assembling" process just changed the commands, like 'JSR' (jump to subroutine) to their binary equivalents (in this case, 00010000), and made sure that all two-byte numbers were big-endian. So JSR $FFD2, the command to print a byte to the screen became (in decimal) 032 210 255.
Some assemblers were a little more advanced, with macros and the like so you could label a subroutine and it would substitute the appropriate register address, but I never believed in those. I edited my code directly to the bits, damn it!
The CB App. What's your 20?
That doesn't make sense. Code that can break out of an emulator sandbox would be exploiting a security vulnerability.
Yes, it would.
You could apply the same argument to say that Apple shouldn't allow email on the iPhone, because that could exploit some vulnerability and install malware.
No, because an e-mail client on the iPhone is not designed to run arbitrary code. For arbitrary code to run using an e-mail client there has to be a vulnerability in the e-mail client which Apple failed to find when the approved the app (not that they look hard) and a second vulnerability in the sandbox which can be exploited using the first vulnerability.
With applications designed to run arbitrary code they just need a vulnerability in the sandbox and they have the full range of a programming language to use, not just what can fit in the first exploit. In addition, if there is an e-mail client that breaks out of the sandbox, Apple can revoke the key and all the iPhones stop being vulnerable to the malware with just that client being affected. With a run-time that executes other code they have to revoke the run-time's key, disabling every program that relies upon it which, if they allowed such things, could be a significant portion of the applications.
An emulator is just a program that takes some user input and does something with it... there's nothing special there and any program which 'takes some user input and does something with it' is equally problematic.
I thought I was clear in my first post why it is problematic. If not, hopefully my clarification above has solidified the explanation. Applications that execute arbitrary code break Apple's reactive security model granularity and are a lot easier to use for creating malware.
They charge a fee if you want to send builds to a device, or publish in their store, but the SDK itself, and its associated dev tools, are free as in beer.