C64 Emulator Finally Approved For iPhone
Gi0 writes "After a couple of months of rejection, the C64 Emulator has finally been approved for the iPhone (and is available at the app store now). 'BASIC has been removed for this release; however, we hope that working with Apple further will allow us to re-enable it. Despite its absence, BASIC is not our focus; ultimately, fans of the C64 want games.' It comes with 5 bundled games and will certainly give you that retro fix for your iPhone."
"No programming on your iPhone, poseurs.
The iPhone is only to be used for gay, Apple approved activities, like soliciting meth and sex on Cragslist. "
-Steve Jobs
9/7/2009
Commodore 64 emulator? You'd think they'd do an Apple II emulator.
When our name is on the back of your car, we're behind you all the way!
You could run your own code
That's a DO NOT WANT for Apple
It booted into the basic interpreter by default, leaving you with 38K for basic. You could configure the memory differently. Writing in assembly not only offered a huge improvement in speed, but freed up the memory range from B000 to Bfff. (And the C000 range was often used by calls to machine language subroutines from basic.)
So, no, it was not just a basic interpreter.
There's at least one running as a web server now.
I won't post the link to it. It takes very little to induce the slashdot effect on that hardware.
They will never, ever enable BASIC support.
The issue is that Apple doesn't want any iPhone application to be able to install and run other apps. No scripting languages, no loadable modules, etc. If they allowed this then there would be no need for the App Store and anyone could run any application they wanted just by using a "shell" application to load other apps.
Personally I think it's stupid, but it's Apple. They want control and they want your money.
Commercial software was mostly in machine code, basic was too slow and ate too much memory.
Basic was great for beginners and for trying out the programs listed in magazines etc.
And yes, it was also the shell, needed for loading from tapes and discs.
For an emulator tho you can populate the memory before starting, so you dont really need the basic.
If theres no basic ROM it will break some programs that used routines from there to save space tho.
The commodore ROMs and the individual games were licensed, but they had to remove the BASIC interpretor. The C64 interpretor said "Commodore BASIC, V2", but it was written by a little company that made money selling its version of 6502 BASIC.
I always knew which company made the barebones BASIC in the C64 because it had the same "print asc(0)" bug that the company provided in Atari, Apple, Amiga and IBM PC BASIC. The company also put an easter egg into Commodore 64 BASIC. When Commodore's Jack Tremail found out this OS vendor had wasted dozens of bytes of his precious ROM for their easter egg, he was furious. It's possible that Apple is still afraid of the license Jack Tramial signed in the early 80s because the little company which put bugs and easter eggs in their BASIC ROM is now a big company known as Microsoft! But more likely, Apple just doesn't want you to be able to run arbitrary applications on their iPhone. They want to control every end of the software development process and if you're able to type your own low-res game, chat application or amortization schedule in Commodore BASIC, Apple doesn't get any royalties. And we can't do fun things like:
10 poke 53265,59
20 wait 60,1
30 poke 53265,27
But frodo64 has provided FULL C64 emulation for Nokia phones for at least 3 years. I think I've run it on a pre 20th century Nokia phone. Nice try Apple, but if you open your OS development environment to those who don't buy your latest OS and hardware and/or if you allow Java applications, you might eventually have as many applications as other phones in the global marketplace. They might not be as flashy or have as polished of an interface, but they will work for the user and for the author.
I'm not sure under which stone you've been lying under, but here is the heads up:
You have to get Apple's blessing in order to distribute anything via the AppStore.
AppStore is the only way (short of jailbreak) to get software into the iPhone and iPod Touch.
There is no such thing as a "developer hardware" that could make your development/testing easier - you have to wait the random approval process before any hands on testing (you are restricted to software emulators).
The development platform is MacOS X only.
Your app cannot duplicate functionality already on the phone (i.e. GoogleVoice). Your app cannot allow any form of access to cussing words or the like.
It actually is sitting there, just not on the main screen..
Tap reset while in a game (keep the keyboard onscreen) and you're right at the prompt.
Now you can tweet or run a webserver too ;)
There is no such thing as a "developer hardware" that could make your development/testing easier - you have to wait the random approval process before any hands on testing (you are restricted to software emulators).
Last I checked, you could get a developer's signing key to put an unapproved app on a limited number of devices for testing.
I think I've run it on a pre 20th century Nokia phone.
Did it have a big crank on the side?
"Operator! I want to speak to Frantic Freddy!"
>>>>>isn't the C64 pretty much just a BASIC interpreter? I thought just about everything for the C64 was written in BASIC
Oh my. I will assume you are less than 30, and forgive your ignorance. Yes the C=64 came with BASIC but most everything was *not* written in that because it was too darn slow. Most programs ran directly on the hardware.
>>Obviosuly, you never knew about BASICS's 'peek' and 'poke', in order to get assembly.
Those commands, being part of the Microsoft Basic set, would not be included in this Iphone emulator. Usually when you run games, word processors, internet browsers, or other programs on a C64 you type LOAD "PROGRAM",8,1 which directs the external drive to load that code directly into memory - overwriting everything that's present including the MS-BASIC. The computer than executes instructions directly at the maximum speed possible (i.e. no interpeter to slow things down).
Using this trick, programs can occupy all of the computer's memory except about 5 kilobytes (the screen space, interrupt handlers, and so on).
"I disapprove of what you say, but I will defend to the death your right to say it." - historian Evelyn Beatrice Hall
Link.
>>>I won't post the link to it. It takes very little to induce the slashdot effect on that hard
A wise man. But here's some other cool Commodore=64 stuff to check out. Remember this stuff all works on a machine with only a 0.001 gigahertz processor and 0.064 megabytes of RAM.
- A web browser - http://www.armory.com/~spectre/cwi/hl/ :-)
- A 1984 Mac-style OS - http://en.wikipedia.org/wiki/GEOS_(8-bit_operating_system)
- A true multitasking OS - http://en.wikipedia.org/wiki/File:Contiki-C64.png
- A photo viewer for your porn... oops, JPEGs - http://www.ffd2.com/fridge/jpeg/
- Okay here you go (NSFW) - http://girls.c64.org/
"I disapprove of what you say, but I will defend to the death your right to say it." - historian Evelyn Beatrice Hall
Microsoft wrote the original Basic version 1 for the Pet computer all the rest of the versions where written my Commodore but they were based on the MS Basic on the Pet. Just check the C128 screen after you boot, it says Copyright Microsoft and Commodore.
Back then, Microsoft had versions of BASIC for various platforms, including the Apple ][ plus I had, and for the C64. Back before they started trying to kill the rest of the computing world, they had stuff that would run on different platforms. I even had a version of MS Flight Simulator for the Apple. Mmmm, sweet monochrome wireframe graphics. Ah, memories ...
I prefer rogues to imbeciles because they sometimes take a rest.
Remember the 80's, when it was an Apple person throwing the hammer to destroy the IBM PC "big brother"? Does anyone else find it amusingly ironic that the most controlled platform in existence today is Apple's, and that the Apple fanboys who would have considered themselves to be that person throwing off the chains of PC control in the 80's are today touting the benefits of not having any control over the hardware and software you buy?
Now, you may argue that "the user" should have control over what code their phone executes. And in the case of Slashdotters, you're probably right. But normal, non-savvy users don't understand technical warnings. They don't comprehend that executing a tiny bit of malicious code can hand their entire computer over to an attacker, and that there may be no way to undo the damage. They should not be put in a position where they can they can screw up their system with a tap of a "yes" button, for the same reason that cars should not have a "disable emissions controls, gain ten horsepower" switch and skyscrapers should not have a shiny red button that says "collapse building."
No, actually it's more like saying scissors and knives shouldn't have sharp edges, and that cars shouldn't have accelerator pedals because in both cases it can lead to death or injury. In the case of a car the carnage you can cause unintentionally is so great that you require a license which is only granted when you learn how to drive properly (which is a more advanced skill than using a knife). In the case of scissors and knives there is a risk of injury but you're less likely to kill and maim lots of people and it's left to your parents to teach you the basic skill.
So you could argue that users need to be licensed and should prove they can use their device to no great harm, or more sanely you can argue that since they're most likely to only hurt themselves and not critically. So the skill should be taught at home or at school. Trying to use a phone or computer when you don't understand just doesn't work. It's not that kind of device. In any case if people can learn to text and IM it's an issue of laziness and neglect that they don't bother to learn how to secure their device. It's not brain surgery.
Apple's alternative - locking down the phone - is all about serving Apple's purposes and has nothing to do with the user's needs.
These posts express my own personal views, not those of my employer
More worthless trash-and-trivia:
This Iphone app emulates the world's most popular CPU - the Commodore/MOS 6502 (and other variants). This processor was the heart of machines like the VIC-20 (10 million sold), C=64 or 128 (40 million), Atari 400/800 computers, Apple I/II/IIc/IIe computers, BBC Micro, Atari VCS/2600 and 5200 game consoles (40 million), Colecovision (10 million), Nintendo Entertainment System (60 million), plus many other applications like store registers and handheld calculators. In total over 200 million 6502s sold.
The 16-bit version called the 65816 (with 6502 backwards compatibility) ran the Apple IIgs, the SuperCPU C=64, and the Super Nintendo, and then the design was retired.
"I disapprove of what you say, but I will defend to the death your right to say it." - historian Evelyn Beatrice Hall
And Apple have obviously rejected it again. It now says: No longer available.
Obviously Apple found out that the basic was actually available and removed it.
In Soviet Russia the insensitive clod is YOU!