| View previous topic :: View next topic |
| Author |
Message |
Andon
Joined: 10 Jul 2005 Posts: 15 Location: Florida
|
Posted: Fri Jul 29, 2005 1:10 am Post subject: uo_Snes9x 0.02pd2 |
|
|
0.02pd2's in SVN right now, in fact it's been there for well over a week. It's not finished and ready for release yet, but I wanted to mention it and request help optimizing the tile drawing code (see below).
I added a new file manager where you can copy/move files around on your Memory Stick and even copy/move files between Memory Sticks (however, files > ~3.5 Mb or so will require multiple swaps, because the available heap memory is very small).
I translated the file delete confirmation dialog in the file selector
I improved the battery stats to include estimated (the Kernel's estimation, not my own :P) runtime and corrected the reported percentage.
Corrected a bug where the PSP would completely hang if you exited from the Home button menu while in the file selector. As far as I know, this still affects 0.02y29+.
Cleaned up the SceGU backend, giving it similar interfaces as the Snes9x OpenGL backend.
When using the SceGU backend, the scissor region is now set appropriately, so that the unused portions of the square render texture are not drawn. (This was most obvious in "Normal" mode or "4:3" with HiRes mode enabled).
ROMs that use 239 scanlines ("Overscan") are properly handled within the SceGU backend now.
Cleaned up the code in psp.cpp... If you intend to do a diff vs. a version of y's port, make sure you enable "ignore whitespace" :)
Because of the new file manager, you need to use START + SELECT to exit the game from the menu now. This has always been possible, but there used to be a menu option that did the same thing.
Similarly, there's no continue menu option... Simply press X to close the main menu.
Integrated all of y's "optimizations" from 0.02y28. A lot of them really have no measurable performance increase and some of them even break compatibility with certain games unfortunately. I'll systematically revert the ones that are causing issues before 0.02pd2 is officially released.
On the note of optimization, I'm looking into optimizing the tile code to use the GPU at the moment. This is the one key area that's keeping Snes9x from running at "full speed" on the PSP. Optimization really needs to be focused on this and not the more trivial things y's been working on.
I have discovered through a lot of hard work (sucks without gprof support) that branching is what's killing performance in the tile drawing code. If you take out the if (...) branches and perform every operation over every iteration of the loops, the framerate shoots up a good 15-20 FPS. While I'm going to attempt to attack the situation using the GPU, someone who's skilled with MIPS assembly may want to write optimized variants of DrawTile16 (...) and DrawTile16_OBJ (...) (see gfx.cpp and tile.cpp) that use conditional moves instead of the more expensive branches; that would help performance tremendously.
Attacking the issue with the GPU in mind is a major challenge. First of all, the SNES hardware has the capability to change all sorts of things between scanlines, and a tile's "depth" (or priority) is on a per-pixel basis. This is difficult to handle on the PSP, which has a fixed function fragment pipeline. So it may prove futile, but I'll give it a shot anyway. |
|
| Back to top |
|
 |
emumaniac
Joined: 08 May 2005 Posts: 79
|
Posted: Fri Jul 29, 2005 1:59 am Post subject: |
|
|
| awesome news, what time scale do you see to a new release :) |
|
| Back to top |
|
 |
medafor
Joined: 29 Jun 2005 Posts: 9
|
Posted: Fri Jul 29, 2005 4:28 am Post subject: |
|
|
| try contacting the author of the latest neogeo emu. just look in the read me file and his website will be in there. not because neogeo is running ultra fast now, but because he also has made multiple ports of the snes emulator for other handhelds(palm and stuff). i wonder why he didnt do snes for psp seeing that he had a background in it? he did a damn good job on porting neogeo properly(it previously ran worst than snes,now it 60fps with sound). i cant wait to see snes running better, i have held off on playing super metroid, zelda, chronotrigger and final fantasy. i only test them out for a few, but never seriously play them because of the lack of speed. i want to wait a play them in there full glory! |
|
| Back to top |
|
 |
Smiths
Joined: 15 May 2005 Posts: 30
|
Posted: Fri Jul 29, 2005 9:03 am Post subject: |
|
|
yoyo's working on another "project" currently. I don't know exactly what it is, mind you, but you can begin speculating for fun :)
Andon, great heads up there. I appreciate all "y" contributed with his build after build, but I -- like you -- kept getting this nagging doubt that he really understood how the snes functioned and was simply just "adding things for the sake of adding things".
He's talented and a great asset to the homebrew dev community, but after a while I just got mad lost in his "daily builds"
So keep up the work man, looking forward to mroe progress reports! |
|
| Back to top |
|
 |
crazyc
Joined: 17 Jun 2005 Posts: 410
|
Posted: Fri Jul 29, 2005 9:09 am Post subject: |
|
|
| Quote: | | So it may prove futile, but I'll give it a shot anyway. |
On the futility note, I'm trying to get the SPC700 running on the ME. All the polling and messages being passed may hamper instead of help performance. |
|
| Back to top |
|
 |
Andon
Joined: 10 Jul 2005 Posts: 15 Location: Florida
|
Posted: Fri Jul 29, 2005 10:29 am Post subject: |
|
|
| emumaniac wrote: | | awesome news, what time scale do you see to a new release :) |
I like to target Fridays for releases whenever possible. Tomorrow's my Mom's birthday though, so I may release it on Saturday.
Since this post earlier today I did a lot of work on the debugger in uo_Snes9x 0.02pd2 and added a new debugger menu option. You can try out crash simulation (segv only, div by zero is a CPU exception that's disabled at compile time) to see what's changed :)
I also implemented double buffering for SceGU and a couple of other things. See the CHANGELOG.txt file for the unimportant stuff.
A pre-compiled snapshot is up on my website now (the Snes9x icon is back, for you 1.0 Firmware users :P):
http://psp.nothing-inc.com/uo_Snes9x-0.02pd2-20050728.tar.bz2 |
|
| Back to top |
|
 |
medafor
Joined: 29 Jun 2005 Posts: 9
|
Posted: Fri Jul 29, 2005 11:05 am Post subject: |
|
|
| so is this snapshot goping to be the released build? did you achieve what you were trying to do? how much faster is this than y28? |
|
| Back to top |
|
 |
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Fri Jul 29, 2005 2:56 pm Post subject: |
|
|
| medafor wrote: | | so is this snapshot goping to be the released build? did you achieve what you were trying to do? how much faster is this than y28? |
If you aren't asking technical questions then you're going to have to either PM the author or take it off-site.
We are not going to turn into an emu fan board. |
|
| Back to top |
|
 |
glooby
Joined: 29 Jul 2005 Posts: 1
|
Posted: Fri Jul 29, 2005 3:10 pm Post subject: |
|
|
Hi,Andon, Thanks for your pd2 version,We wait for it a longtime. I got a problem here, After I choose a game ,and press L+R+Select back to menu ,then back to game,The game Graphic will not display correctly. (This will happen only when useing "SceGU"and "Bilinear Filter").
Would you plz fix it? Thank you very much!!
Last edited by glooby on Fri Jul 29, 2005 3:26 pm; edited 1 time in total |
|
| Back to top |
|
 |
Andon
Joined: 10 Jul 2005 Posts: 15 Location: Florida
|
Posted: Fri Jul 29, 2005 3:13 pm Post subject: |
|
|
| medafor wrote: | | so is this snapshot goping to be the released build? did you achieve what you were trying to do? how much faster is this than y28? |
The snapshot is mostly what's going to be in the released build. I'll finish translating everything tomorrow (I still need to translate the SRAM overwrite and State Delete confirmation dialogs), rebuild the whole thing using an updated toolchain and add a confirmation dialog for overwriting files in the file manager.
It's actually about the same speed as y28. The optimizations I was speaking of are scheduled to be part of pd3. I wanted to finish all of the features and bug fixes that were accumulating in pd2 and release it before I started to work on any major optimizations.
There's one more thing I wanted to do with the file manager in pd2, but didn't have enough time. That is, enable USB file transfers. So you could transfer ROMs, state saves, etc. without having to exit uo_Snes9x (this would be particularly useful for people with smaller Memory Sticks). It's not as difficult as it sounds, but it'll have to wait for pd3. |
|
| Back to top |
|
 |
Cubeikon

Joined: 01 Aug 2005 Posts: 13
|
Posted: Tue Aug 02, 2005 12:42 am Post subject: |
|
|
keep up the good work Andon :D
One question; Do you have any idea of the release date for "pd3" ? I'm really looking forward to this day ^^
Greetings from Europe
Cubeikon _________________ ...bla ? |
|
| Back to top |
|
 |
laxer3a
Joined: 11 May 2005 Posts: 23
|
Posted: Wed Aug 03, 2005 11:10 am Post subject: Snes Emu Release. |
|
|
Hi,
Yoyo, thunder and I have released finally our porting of V1.39 of Snes9X.
Main point is hardware accelerated rendering.
http://yoyofr.fr.st/
See you. |
|
| Back to top |
|
 |
Cubeikon

Joined: 01 Aug 2005 Posts: 13
|
Posted: Fri Aug 05, 2005 4:18 am Post subject: |
|
|
| Cubeikon wrote: | keep up the good work Andon :D
One question; Do you have any idea of the release date for "pd3" ? I'm really looking forward to this day ^^
Greetings from Europe
Cubeikon |
...Andon ? _________________ ...bla ? |
|
| Back to top |
|
 |
ooPo Site Admin
Joined: 17 Jan 2004 Posts: 2032 Location: Canada
|
Posted: Fri Aug 05, 2005 4:19 am Post subject: |
|
|
| Please don't bump threads. |
|
| Back to top |
|
 |
|