|
Post by laxer3a on Jul 8, 2006 14:15:40 GMT 1
Using ME itself isnt difficult at all, there is two or three concept to understand clearly, thats it.
It takes around 10 lines of sample code to have a program running on the ME. And the sample code is in the PSPSDK from ps2dev.
Of course, trouble occured in TYL because there was "side-effect" that we dont know about, and cant find why their occur in the PSP.
When it comes about coding... Well, I am quite busy with work and also my other private projects out of TYL.
So you can expect me to look at the site, or write some emails... But I will not likely do any code on PSP unlikely... except in many months, but then I bet my interest would be completly gone. I work on my "own-made" computer and I bet that if I have to program, I will do it on my platform then.
|
|
|
Post by tsurumaru on Jul 8, 2006 20:21:27 GMT 1
Laxer3a,
First of all I wanted to thank both you and Yoyofr for your hard work on getting the emu to this point.
Can I just ask if the fact that you won't be able to code now for quite some time means that development on the emulator will halt? Are you and yoyofr looking at releasing a bugfix 0.4.3 version? Have you considered "advertising" on forums etc for a coder to help you out with feature requests etc? (I assume that you have optimised the code as much as you can now as cost effectively as possible and that there are no major rewrites planned).
Thanks again.
|
|
|
Post by disturbed19 on Jul 24, 2006 0:55:50 GMT 1
just a thought, u know wat would be really cool? if all the great coders such as ZX-81, strmnmnn, yoyofr,laxer3a, and psmonkey all worked together on a N64 emulator. this would be a huge impact on the homebrew seen haha i get excited thinkin about it, we would have a working n64 emulator in no time.
|
|
|
Post by laxer3a on Jul 24, 2006 4:38:08 GMT 1
While it is true that adding more people in parrallel get things going faster (in term of release date)... It does not add "intelligence".
I mean if all of us would work on it, we would discuss and then find the "optimal" implementation, optimization technique, memory structure. But so what ? It is not because you put 3 top rocket-scientist instead of one that you change the law of physics...
We would reach the same conclusion at one point, implement it and then find that anyway the PSP can run a N64 at 1/3 of its original speed and that's it.
When I see people complaining at ZX81 that his GBA emu is slow compare to a snes or megadrive emu. People dont know what they talk about. Honnestly I believe it is easier to emulate full speed a playstation 1 than a GBA on a PSP.
Raw power is not the only factor, difference in architecture, cost of emulation of specific architecture makes the emulation costly.
As an example the mode7 of the Snes takes around 20/25 instructions per pixel to be emulated, and no way to use hardware for rendering. (in my optimized code, original is probably 30% worse)
Or take the emulation of the ARM core for the GBA : instruction are difficult to decode, each instruction is conditionnal. Honnestly emulate a 17 Mhz ARM core on a MIPS is just hell. I bet the PSP main cpu running at 333 Mhz cant do the job, and jitted code would barely do it.
Some GBA games run ok because they just "send the draw command and wait" and do not use the cpu more than some %. But try any GBA software that use heavily the cpu...
I believe the GBA emu would need the same JIT technique as the N64 emu is using if you want to get it really fast.
Regards.
|
|
|
Post by prettzv on Jul 24, 2006 23:12:29 GMT 1
Raw power is not the only factor, difference in architecture, cost of emulation of specific architecture makes the emulation costly. As an example the mode7 of the Snes takes around 20/25 instructions per pixel to be emulated, and no way to use hardware for rendering. (in my optimized code, original is probably 30% worse) Or take the emulation of the ARM core for the GBA : instruction are difficult to decode, each instruction is conditionnal. Honnestly emulate a 17 Mhz ARM core on a MIPS is just hell. I bet the PSP main cpu running at 333 Mhz cant do the job, and jitted code would barely do it. I believe the GBA emu would need the same JIT technique as the N64 emu is using if you want to get it really fast. Regards. So Is that why the PSP cannot emulate what a PC can. I am using a Celeron 500 with 128 ram and a 3mb onboard laptop that can run the SNES at full speed using SNES9X but not the ZSNES? It would seem that the psp could do it. But then again I am just a lacky who plays and not too good at programming. As a side note the GBA emu jumped alot when they moved sound to the Media Engine. it is getting some really good frames on some games. Some of the more intensive stuff is still giving issues. Also VBadvance is good to go on my little laptop. Just curious
|
|
|
Post by laxer3a on Jul 25, 2006 2:49:59 GMT 1
Hi,
Well... 1/ I believed that ZSnes was better than Snes9x. --> All assembler made. --> Quite accurate.
Actually depends on accuracy : 1.43 and 1.39 of Snes9x have huge difference in the core. (then cost more to emulate)
2/ A 500 Mhz Pentium is better than a 333 Mhz MIPS CPU.
In the PSP, the ME spend quite a lot of time doing nothing I believe. roughly 60% of unused power I would say. So it is like using a 420 Mhz MIPS CPU but dont forget that we have to synchronize the cpus, which is costly compare to Snes9x running on one cpu.
4/A pentium is like 10 to 20x times the number of transistor of a mips cpu. While the number means nothing, there is some trick in the architecture that make it goes faster. (parrallelism, prediction, bigger cache) So at the same Mhz, the number of mips is likely in favor of the intel cpu.
Moreover, if you play games using the DSP or FX chip, all the math operation are done in hardware on intel FPU (div, cos, sin ,square root). This is a killer for small cpu like ARM or MIPS. If this part of the code would be rewritten on the PSP using the VFPU instructions, things would run smoother.
My 2c.
|
|
|
Post by prettzv on Jul 25, 2006 13:21:35 GMT 1
so in theory you could get more power buy rewriting the emulator. You are so close to max speed on FX and SA1 games. (We don't expect that kinda of dedication, just seeing if I am correct).
|
|
|
Post by laxer3a on Jul 31, 2006 9:20:38 GMT 1
A full rewrite of the chipset (DSP / FX) emulation using VFPU for math stuff should increase the performance by quite a bit.
While the BEST/MOST popular games use it, it would require a LOT of dev to play 10 games.
That's why yoyo and I never went on this road... Moreover, we had more priority at that time :-)
Now we could, but personnally my motivation to do so is quite down these days. (3 weeks straight without a day of vacation !!! 10/11+ hours of programming per day during week day). --> July/August very busy at work.
|
|
|
Post by prettzv on Jul 31, 2006 12:31:58 GMT 1
I hope you get some time off soon Laxer. Anything kewl in development? I saw what you had done in tokyo and it was kewl.
|
|
nobody
Junior Member
Posts: 58
|
Post by nobody on Aug 21, 2006 14:38:54 GMT 1
|
|
|
Post by sephiroth on Aug 21, 2006 21:31:15 GMT 1
that one is written from scratch its probarly(i know its wrong spelled) perfectly made for psp
|
|
|
Post by laxer3a on Sept 2, 2006 2:00:40 GMT 1
Hi,
Exodus implemented a JIT... Thats why it goes fast... Which means also that if his JIT is complete by now he is not going to get that much more frame / second from now.
But yeah, thats a hell of a good job.
|
|