Emuforums.com

Go Back   Emuforums.com > Handheld Emulation > DeSmuME Discussion
About Us Register FAQ Members List Calendar Mark Forums Read

Login to remove all ads!
Reply
 
LinkBack Thread Tools Display Modes
Old November 19th, 2007   #1 (permalink)
Registered User
 
Grzeslav's Avatar
 
Join Date: Aug 2006
Location: Poland
Posts: 106
Shash's Emu Dev WIP

Quote:
November 18, 2007 - Texture fix and icon viewer

Yesterday I was rather bored for a few hours (even if I've a lot of real life stuff to do...), so after checking some information from the DS cartridge header (for some unrelated work still to be done), I thought how hard it'd be to add an icon viewer to the "Game Info" dialog. Extracting it from the header wasn't that hard, as the format is quite simple: a 32x32 pixels icon, stored on a 8x8 tile basis, 4bits per pixel, which are used to lookup on a fixed 16 colour palette (per icon).

In fact, converting the icon was easy, but I had major problems due to some recent changes, as I forgot I needed to use GDI+ to draw stuff on dialogs, rather than using plain GDI (that's what all desmume uses on the windows port). When I moved the drawing code of the icon to GDI+, it worked perfectly. I deleted all the MAP/OAM/etc viewers that relied on GDI code, as I plan to rewrite the GUI in the near future anyway, so there's no point in fixing that code.

After that, I wanted to finally fix the last bits of Mario&Luigi to look perfect. A few weeks ago, I cared to make it run where it "freezed" in the past: in fact, it didn't freeze, just took ages to render a new frame, due to a rather important bug in the 3D core. The main problem after that, is that ALL textures looked wrong: for example, where Koopa should be, only textures of arrows were shown.

When approaching the problem, I had only a stupid idea of what could be: due to the way the display lists are handled, there was a slight chance that the texture bind before drawing the polygons was done in wrong order. Well, to make a long story short, I was wrong: I tried changing a few bits, even hacking some stuff, and it didn't fix anything. In fact, the fix was easier and more logical.

I've been coding on PC for quite a few years, and I'm quite used to some stuff working in a certain way. While emulating the 3D core of the DS, I've already fallen on that problem quite a few times: on the DS, setting attributes per polygon (without starting a "primitive block") isn't that rare, for example, transformations (scaling, for example :P). In this case, it was the texture changing while the primitive block was open. I guess that, if you want to draw all the stuff onscreen, and you only use one type of primitive (a quad, for example), then changing the texture within the primitive block isn't that rare.

Anyway, adding the ability to change textures within a primitive block fixed "Mario&Luigi: Partners in time" and "Final Fantasy XII: Revenant Wings", so now both seem to be 100% playable and glitch free (and run rather fast). The usual screenshots:





shash's Emu Dev
__________________
Intel Core2Duo e8200@2,66
Galaxy 8800GT 512
2x250Gb Seagate Raid0
Gigabyte GA-P35-DS3R rev.2.1
2x1Gb Geil PC800 Ultra
Windows Vista 32bit
3dMark06 score: 10806

Last edited by Grzeslav; November 20th, 2007 at 12:55.
Grzeslav is offline   Reply With Quote
Old November 19th, 2007   #2 (permalink)
Emu author
 
shashClp's Avatar
 
Join Date: Sep 2006
Location: VisualC
Posts: 686
You could have, at least, linked to the source :P
__________________
Emulator development blog
shashClp is offline   Reply With Quote
Old November 19th, 2007   #3 (permalink)
Registered User
 
Join Date: Dec 2006
Location: Greece
Posts: 11
Sorry for asking but when will you give a release???
all this your are showing with screenshot are very promising
susanomon is offline   Reply With Quote
Old November 19th, 2007   #4 (permalink)
Emu author
 
shashClp's Avatar
 
Join Date: Sep 2006
Location: VisualC
Posts: 686
Quote:
Originally Posted by susanomon View Post
Sorry for asking but when will you give a release???
all this your are showing with screenshot are very promising
Whenever it's done :P
__________________
Emulator development blog
shashClp is offline   Reply With Quote
Old November 19th, 2007   #5 (permalink)
Registered User
 
kuro's Avatar
 
Join Date: Jun 2004
Posts: 71
I wonder how Shash's work treats Advance Wars: Dual Strike. So far, no author's been successful at running that game. D:

However, seeing how well a lot of these shots are for games much more complicated than AWDS, I guess there's hope!

AWDS is the only game I have, so when I see a new version of a DS emu come out, I check it out. So far, neither ideas or desmume run it any better than it ran 6 months ago. No$GBA's latest version actually makes it run 10x worse. I'm gonna guess that the devs don't even have access to this game, since I'm the only one here who even seems to play Advance Wars to begin with.

Anyhew, can't wait till this gets released! I'm sure it'll give me the best AWDS results I've been waiting for.
__________________
Comp specs:
- Intel E6400 Core Duo 2.13Ghz
- 2GB DDR2-800mhz RAM
- 256mb MSI NX8600-GTS OC Nvidia video
- Windows XP Home SP2
kuro is offline   Reply With Quote
Old November 19th, 2007   #6 (permalink)
Emulation Master
 
MasterPhW's Avatar
 
Join Date: Mar 2004
Location: in-hell
Posts: 348
Quote:
Originally Posted by kuro View Post
Anyhew, can't wait till this gets released! I'm sure it'll give me the best AWDS results I've been waiting for.
Sorry to disappoint you, but it won't be released afaik, because shash is working on it's own desmume version, just for his coding fun and there's nothing or noone he is owe anything, so you probably will never see a desmume version with all these fixes included.
__________________
The Future of Emulation: Emulate a High End Computer on a Low End System
Current PC specs:
Portable: Intel C2D T7250 (2x2.0Ghz, 800Mhz) | 2048 MB DDR2 PC800 | Geforce Go 7950 GTX PCI-E | Realtek HD Audio |
180Gbyte Internal SATA2 + 4x500GB external | Windows Vista Business X64 MSDNAA
Desktop: AMD Athlon 64 X2 4200+ (2x2.5Ghz, S939) | MSI KbT Neo2-F V2.0
| 2x1GB Corsair Value VS1GBKIT400 | MSI Geforce NX 7800GS-TD256/AGP8x
| Creative SB Audigy LS | 2,5TB (4 SATA2 HDDs in Raid0) | Windows Vista Business MSDNAA


Visit my Blog

Last edited by MasterPhW; November 19th, 2007 at 21:42.
MasterPhW is offline   Reply With Quote
Old November 19th, 2007   #7 (permalink)
Emu author
 
shashClp's Avatar
 
Join Date: Sep 2006
Location: VisualC
Posts: 686
MasterPHW: that's true, but also I commit stuff on the official version from time to time, so the public version gets some stuff, mainly those that are asked by homebrew developers. It's the only thing that really motivates me enough to make some of my code public.
__________________
Emulator development blog
shashClp is offline   Reply With Quote
Old November 20th, 2007   #8 (permalink)
The Alpha and Omega
 
ShakirMole's Avatar
 
Join Date: Mar 2007
Location: Tanzania
Posts: 304
nice work dude... I still hope that someday your release and that of the latest emus have same compatibility
__________________
------------------------------------------------------
Join Irc server #thegoldcafe on channel irc.star-fleet.net and get rom compatibility lists for iDeaS,no$gba,and others and all your emulation needs
Alternatively, you could join through the java website which links directly to thegoldcafe channel
http://www.dscompatibilitydatabases.co.nr/

Professor Layton Walkthrough with excellent coverage and pics http://professorlaytonwalkthrough.blogspot.com/
ShakirMole is offline   Reply With Quote
Old November 20th, 2007   #9 (permalink)
Emulation Master
 
MasterPhW's Avatar
 
Join Date: Mar 2004
Location: in-hell
Posts: 348
Quote:
Originally Posted by shashClp View Post
MasterPHW: that's true, but also I commit stuff on the official version from time to time, so the public version gets some stuff, mainly those that are asked by homebrew developers. It's the only thing that really motivates me enough to make some of my code public.
Oh yeah, seen it, after looking at the source and the changelog, sorry for the missinformation I was spreading. I really like your blog, it's written great and has a lot of good informations!
I also really like your work, keep it coming! Nice work and I hope you won't lost motivation.
__________________
The Future of Emulation: Emulate a High End Computer on a Low End System
Current PC specs:
Portable: Intel C2D T7250 (2x2.0Ghz, 800Mhz) | 2048 MB DDR2 PC800 | Geforce Go 7950 GTX PCI-E | Realtek HD Audio |
180Gbyte Internal SATA2 + 4x500GB external | Windows Vista Business X64 MSDNAA
Desktop: AMD Athlon 64 X2 4200+ (2x2.5Ghz, S939) | MSI KbT Neo2-F V2.0
| 2x1GB Corsair Value VS1GBKIT400 | MSI Geforce NX 7800GS-TD256/AGP8x
| Creative SB Audigy LS | 2,5TB (4 SATA2 HDDs in Raid0) | Windows Vista Business MSDNAA


Visit my Blog
MasterPhW is offline   Reply With Quote
Old November 21st, 2007   #10 (permalink)
Eric Cartmenez
 
dreampeppers99's Avatar
 
Join Date: Jul 2006
Location: Brazil
Posts: 361
shashClp just one word "good work" (actually two).
Your blog is one of the best (maybe the best) to person that wanted dev or see how the process of dev an emulator goes....
The Best new I've receive "Mario&Luigui" "FF13" works 100%.
dreampeppers99 is offline   Reply With Quote
Old November 22nd, 2007   #11 (permalink)
Registered User
 
mbroker's Avatar
 
Join Date: Jul 2006
Location: NY
Posts: 74
Talking

Quote:
Originally Posted by shashClp View Post
You could have, at least, linked to the source :P
Then you should have posted first to make sure.
mbroker is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


All times are GMT. The time now is 15:50.

© 2006 - 2008 Emu Forums | About Emu Forums | Legal | A member of the Crowdgather Forum Community


Powered by vBulletin® Version 3.7.0 Release Candidate 3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0 RC5