PDA

View Full Version : Project 64 On the iPhone...?


Aurorer
22nd February 2009, 01:09 AM
Hey I was just thinking about how cool it would be to have a Project 64 app on the iPhone. Apple would probably not approve of it being an actual app but you could make it underground and able to work on unlocked iPhones. :cool:

zilmar
22nd February 2009, 01:43 AM
sorry, never going to happen

HatCat
22nd February 2009, 02:23 AM
It is possible for someone else if a latest source code is released on project end, but with time narrowing down options to priorities such as continued stability and functionality (and some other features also wanted) tense requests like that lose chance in the hands of the creators.

One of the greater difficulties would be re-engineering the hardware interaction between both the iPhone and the emulated such in all major processes. Because analyzing source code worked on for years by someone else is risky for proper maintenance and dangerous for bug-fixes and what is currently under work: It is probably wisest to leave portability to others who are interested. If this project was less famous this would all be less tense.

//complements to the answer honest in post two

Gleasonator
22nd February 2009, 05:06 AM
Uhm... would an iPhone's hardware even be able to support this?

HatCat
22nd February 2009, 07:18 PM
It shouldn't be impossible to try? There are memory emulators that run on other handheld devices.

Obviously three-dimensional geometry is not supported by the default iPhone. Maybe it would be possible to modify your own device (likely re-manufacture) and engineer your own rendering device to install to it. In the long run it would probably be best to just port Project64's graphics plugin simply by redesigning on yourself that gives null video output or configured maybe to just translate active memory into pixel maps...I guess that's what zilmar's CFB plugin does?

also very sorry should have noted the 1.4 source code is definitely an option, posted like it wasn't

CA5
22nd February 2009, 11:06 PM
It shouldn't be impossible to try? There are memory emulators that run on other handheld devices.

Obviously three-dimensional geometry is not supported by the default iPhone. Maybe it would be possible to modify your own device (likely re-manufacture) and engineer your own rendering device to install to it. In the long run it would probably be best to just port Project64's graphics plugin simply by redesigning on yourself that gives null video output or configured maybe to just translate active memory into pixel maps...I guess that's what zilmar's CFB plugin does?

also very sorry should have noted the 1.4 source code is definitely an option, posted like it wasn't

Does it have enough processing power? If it's anything near that of the DS, it's impossible. Then again, saying that, the DS can't even browse the net, so I'd say it's worth a try.
But, I don't think the PJ64 team should bother with it, they have enough on their plate. Maybe some other dude out there will?

If you want, just ignore my bumblings on about the DS :)

HatCat
23rd February 2009, 12:24 AM
Right as I said.

And of course I don't know. If it is not obvious I simply try.
But I don't think processing power really narrows down possibility. We know the DS is not well emulated? Basically there is only non-commercial support. Generally even the DS has speed issues in emulation where functional; there are bound to be extreme counterfactors apart from procession durability.

Just don't do any graphics rendering. Either manufacture a form of the device that supports it or just have a plug-in that gives no rendered video output or possibly just CFB output. Basically we agree that this would be disappointing if done.

Aurorer
23rd February 2009, 03:25 AM
Here are the iPhone's specs:
CPU 620 MHz ARM 1176, underclocked to 412 MHz
GPU: PowerVR MBX Lite 3D
(The GPU is able to support 3D geometry isomapping)

Now I have some experience with the iPhone's SDK but as Iconoclast said before, it would be quite difficult to convert the C format programming of project 64 to that of the iPhone's when I didn't write the program in the first place. However, it is not impossible especially if I had help.

The main problem lies with the graphics plugin (As Iconoclast said before). A likely solution to this is to simply port over a plugin such as Zilmar's. But it might be easier to simply write a new one adept to the iPhone's specs; this would probably be best since the iPhone app will be a dumbed down version of the original.

Either way this is getting a lot more attention than I thought it would so it might not be such a long shot after all.

Mdkcheatz
23rd February 2009, 03:36 AM
Either manufacture a form of the device that supports it or just have a plug-in that gives no rendered video output or possibly just CFB output. Basically we agree that this would be disappointing if done.

hmmm

Well if PJ64 was made to support linux, then it is possible it can be adjusted for this (http://craig.gp2x.de/review/GP2XReview.html) portable emulator. I wonder how well this would actually work;)

HatCat
23rd February 2009, 03:53 AM
3D geometry isomapping? If I understand this phrase correctly I think it should be possible to emulate via wireframe rasterization (where you see the edges and vertices of the geometry just not the faces), and then it may even be easier to add on some installation that will map textures to faces from TMEM.

Converting between languages is another story since C other 3GLs they just translate to assembler operations to the same result (a binary) so the porting would be more challenging in adjustment to the hardware's ability to emulate another target rather than the current language used to describe it. At least that's my first thought...hoping I'm not missing something critical in what you imply.

@Mdkcheatz the hardware probably becomes more primary to this concern than software like the operating system, but the engine considerations to a Linux port of Project64 today are called Mupen64Plus.

CA5
16th March 2009, 02:15 PM
Thinking more in terms of practicality, where'd all the buttons be mapped to anyways? They just about got away with the mapping on the GBA emulator for iPhone/iPod Touch - there's no way they'd be able to fit n64 buttons on that touch screen.

That external controller thing on youtube would have to be used, one presumes.

HatCat
16th March 2009, 09:26 PM
That is for the uninspired to work with, but the N64's RDP is more than just another dimension for the PSP handler. If you could fit your fingers on the controller functions of whatever is given it will be all the same of insignificance until the issue of draw-to-screen rendering is optimized.

Clearly controller function emulation is probably the only thing I myself can imagine conceptually, but the process of engineering a shell for the N64 on the PSP in terms of vectors, audio signals, and main memory interpretation is not among anyone here. :P

Aurorer
20th March 2009, 01:39 AM
That is not at all a problem (as rswedlow already stated). I already have a workable button scheme mapped out. Just to get an idea, consider the iPhone turned horizontally with the emulation taking up the entire screen, now imagine all of the buttons needed to play that emulation mapped out over the screen. Most N64 games don't require all of the available buttons on the controller so it is very feasible to have them spread out over the emulation field. A feature I would defiantly include would be to give the player the ability to change the button layout, sensitivity, and transparency. Ideally (at least from my point of view) the buttons should be invisible as not to get in the way of any cinematic.

Check out these youtube videos to get an idea:

http://www.youtube.com/watch?v=jUBOX7feFDc&feature=related

http://www.youtube.com/watch?v=8XNtJ8iXMLw&feature=related

Here is my idea of how the buttons should be laid out:

http://forum.pj64-emu.com/picture.php?albumid=14&pictureid=36

HatCat
20th March 2009, 02:33 AM
I really have faith in trying this (even if it meant a black screen--but just for the sake of it engineering an emulator for just the sound and other memory to get a working feeling just listening to it), and it feels awful not being in any position to start like writing my own emulator right now. This is not because as if I'm three decades old with a dynamic job status...just that I haven't learned anything about getting started.
[I should probably confess: If I was using my time wisely on homework right now I wouldn't be online for a long time. :D Hell no I'm not failing classes; I just have this constant unconfidence and pessimism telling me to not work right away (not depression yet simultaneous with feeling guilty for not doing the right thing and preventing the troublesome stress I know I'm going to get myself into in getting caught up, probably linked to abusive childhood jazz like that not going into there). I feel like if I was in year one of six in college with the one-class-per-day scheme I would feel more dedicated to learning everything individually...rather than listening to seven statues of compassionless ignorance per day. I definitely listen no matter how tired I wake up to be; in fact that's one reason why I do surprisingly well is because of quizzes and tests.]

The best thing we could probably do (at least for me given my timely position) rather than spend at least an hour every day optimizing findings about specifications with some kind of 3GL is track down various documentations and explain just what could work for whoever would be willing to code it? Of course I've never written a hardware emulator. By all means on Spring Break I have no reason not to look at like, actually trying to program something. The last thing I programmed was touched up on my polynomial solver (up to degree sixty-four polynomials), but at least algorithmic engines can be perfect compared to an emulator.

One thing that got my idea started of myself trying to write one is the lack of decent damn grammar around (everywhere). How can you care about the quality of your work and just leave all kinds of crap errors? Yeah I know, in middle ages Japanese "Zilmer" meant up yours, too. Calling that crap pride or optimism. I do know my supposed slacking off on paper work ties well with my messed up priorities of thinking all by myself, and I take every single word I handwrite like a serious error while I'm writing it. Emulators at least for the N64, crap everywhere. I'm sick of seeing a partial English expression in what translates to assembly anyway as well; that's probably another hinderance in the process of debugging due to lack of self-awareness. Silly second-conscious-rate wittiness replacing professional intellect, lets no light in, just desire
kkk yeah I know you love me too

Thunder
22nd March 2009, 03:28 PM
Check out these youtube videos to get an idea:

http://www.youtube.com/watch?v=jUBOX7feFDc&feature=related

http://www.youtube.com/watch?v=8XNtJ8iXMLw&feature=related



It seems easy to control, but how its the performance in 3d games??

CA5
22nd March 2009, 08:26 PM
Frankly, that control scheme looks hideous.

Mdkcheatz
23rd March 2009, 08:35 AM
Frankly, that control scheme looks hideous.

I agree, I mean the concept "looks" good, but just thinking about playing Goldeneye on it makes me wanna cringe...

CA5
23rd March 2009, 08:50 PM
See, it needs something like this:

http://www.youtube.com/watch?v=7ojLKeewbEk&eurl=http%3A%2F%2Fwww.mobilewhack.com%2Ficontrolpa d-for-iphone-can-be-used-for-playing-quake%2F&feature=player_embedded

'cept made in someone's back garden (or yard, to other peeps), so it has a similar set of buttons / joystick to the n64. If someone can do that... then fix'd.

The 'joystick' I speak of could just be one of them 'slot onto d-pad' things, which attach to the d-pad. Kinda hard to explain.

HatCat
23rd March 2009, 09:20 PM
If he's worked at it I say whatever works, in terms of stopping writing the actual emulation engine, rather than worrying over the control

Aurorer
23rd March 2009, 10:01 PM
My concept was well, just that, a concept. A working one, but still only a concept. My hope was that someone else would design a better one. The problem with using that iControlPad (or whatever it was) that xcdjy pointed out, is that the the iPhone's only access port is OFF LIMITS. I am serious, I have no idea in hell how that guy in the video was able to integrate that control pad into the game's programing. It is simply beyond me. And yes I know that they will eventually release their source code but that is beside the point. My dream is that this app, if you will call it, makes its way to the app store designated as "fan art" available for free to anyone that has an iPhone. For that to be a reality the game needs to be playable right out of the download so-to-speak, with no need to buy any extra hardware.

CA5
29th March 2009, 07:57 PM
My concept was well, just that, a concept. A working one, but still only a concept. My hope was that someone else would design a better one. The problem with using that iControlPad (or whatever it was) that xcdjy pointed out, is that the the iPhone's only access port is OFF LIMITS. I am serious, I have no idea in hell how that guy in the video was able to integrate that control pad into the game's programing. It is simply beyond me. And yes I know that they will eventually release their source code but that is beside the point. My dream is that this app, if you will call it, makes its way to the app store designated as "fan art" available for free to anyone that has an iPhone. For that to be a reality the game needs to be playable right out of the download so-to-speak, with no need to buy any extra hardware.

With no offense meant, that is rather improbable. Maybe on Cydia (for the jailbreakers out there), it would be more likely, but the App Store? Like I say, it's just improbable. Yet either way, I'd like to see something like this put into action, if only for the people willing to jailbreak.

Aurorer
30th March 2009, 10:38 PM
That is what I originally had in mind. I even talked with Zod (the guy that made all of the other emulators for the iphone) and he was totally for the idea but he just didn�t feel like messing with it. And do you care to expand upon your claim that my idea about the app making its way to the app store is improbable? I mean it is not like I will be breaking any copyright laws. I planned on making the emulator into a shell that would incorporate an individual game with each app. Rather than making it an Individual app with downloadable emulators.

HatCat
31st March 2009, 04:22 AM
Emulators designed for an individual game should target what is unique about that game and possibly be able to support other games that are very similar to it in structure, but single game-specific emulators will not improve compatibility or functionality. They may lose attempted generic support for the other games for efficiency and speed, but to write an emulator for exactly one game is still a great amount of work done to support the facts revolving around the hardware and may as well support the others.

Tell us more about the meaning in this so we can understand.
"I planned on making the emulator into a shell that would incorporate an individual game with each app. Rather than making it an Individual app with downloadable emulators."



--R. Swedlow