xboxscene.org forums

OG Xbox Forums => Software Forums => XPort Projects => Topic started by: MENTALDOMINANCE on November 15, 2006, 12:29:00 PM

Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 15, 2006, 12:29:00 PM
I posted a few months back about how the new Nintendo Dual Screen
emulator DESEMUME is looking great and runs pretty decent on
my 1.5 gz PC. WELL... I just want to say that I loaded the latest
version of DESEMUME onto XDSL for XBOX and it works under WINE!!!
Better yet it seems to be running about just as fast as it runs on
my PC! It's slow, but it's playable. This confirms my belief that
the NDS will run on the XBOX and would be an excellent port
for XPORT to do!!!

TRY IT FOR YOURSELVES!!!

http://www.desmume.com/ GET DESEMUME AND SOURCE HERE!!!

THIS RUNS ON XDSL WITH WINE!!!!!

Someone please port this emulator!!!
Title: Dual Screen Emulator Running On Xbox?
Post by: Potman on November 15, 2006, 02:51:00 PM
sweet.
the nds roms compatiblity list's not bad:
http://www.desmume.com/nds-roms-compatible.htm

wouldnt it be difficult for the xbox controller to use this emulator cuz of the dual screens?
im probably wrong, hopefully.

This post has been edited by Potman: Nov 15 2006, 10:51 PM
Title: Dual Screen Emulator Running On Xbox?
Post by: guspasho on November 15, 2006, 04:29:00 PM
How did you get around the difficulty of emulating a touchscreen and a microphone?
Title: Dual Screen Emulator Running On Xbox?
Post by: enderandrew on November 15, 2006, 05:10:00 PM
QUOTE(MENTALDOMINANCE @ Nov 15 2006, 08:29 PM) View Post

I posted a few months back about how the new Nintendo Dual Screen
emulator DESEMUME is looking great and runs pretty decent on
my 1.5 gz PC. WELL... I just want to say that I loaded the latest
version of DESEMUME onto XDSL for XBOX and it works under WINE!!!
Better yet it seems to be running about just as fast as it runs on
my PC! It's slow, but it's playable. This confirms my belief that
the NDS will run on the XBOX and would be an excellent port
for XPORT to do!!!

TRY IT FOR YOURSELVES!!!

http://www.desmume.com/ GET DESEMUME AND SOURCE HERE!!!

THIS RUNS ON XDSL WITH WINE!!!!!

Someone please port this emulator!!!


I HIGHLY, HIGHLY doubt that after you load XDSL into memory, and then run it through WINE that DESEMUME runs better on an XBox than PC that is twice as fast.

For one thing, I don't believe there are any Linux drivers for hardware acceleration on the GPU.

Again, as stated MANY times over again, there is no way to emulate the touch screen and microphone.

When the emulator is stable, optimized, and finds a way to emulation a touch screen with an XBox-like controller, then talk porting.
Title: Dual Screen Emulator Running On Xbox?
Post by: nes6502 on November 15, 2006, 05:49:00 PM
Not to mention low computability, running very slow on the Xbox CPU, and no sound emulation. Who would even use it if it was ported?

Of course, I can only speak for myself, but there doesn't seem like a lot of incentive to port this.

This post has been edited by nes6502: Nov 16 2006, 01:49 AM
Title: Dual Screen Emulator Running On Xbox?
Post by: enderandrew on November 15, 2006, 09:23:00 PM
Not to mention that the original poster claimed it ran great as is with no porting under XDSL.  If that is the case, he can then just play it on XDSL all day long.
Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 16, 2006, 08:16:00 AM
Before replying why don't you guys try checking the emulator out?

Most NDS emulators, including DESEMUME, use the mouse to
simulate the touchscreen. You just click where you would
normally touch. I do not see what would ever be so hard
about doing that, especially since it's already been done.
Secondly, of course the emulator won't run real speed
because it's a work in progress. It doesn't run realspeed
on Winblows either. WORK IN PROGRESS. What I meant
when I said it would make a good port is that if someone
started porting it right now, the skeleton of the program
would be in place and ready for when they finally optimise
it enough to be fast. Since WINE is not an emulator,
I don't see what is so hard for you to believe when I say
that under XDSL running WINE, it runs about as fast as
on my PC. It's the truth, why don't you check it out
yourself? Try Super Princess Peach, it's what I used.
The game is totally playable except no sound and slow.
There isn't even a need for the touchscreen.
As for the microphone, aside from a few gimmick games,
I don't see why that needs to be emulated either in
order to play great games like New Super Mario Bros.
and Super Princess Peach. Also again I see no reason
why any of the microphone/headset combos that already
exist for the XBOX wouldn't work fine for the mic input
once of course, the source supports it which it does not
right now but it will in the future.
AGAIN - It's a WORK IN PROGRESS emulator.
And considering that many XBOX emulators run slower
than equivelent emulators on XDSL (MAME), I probably will
take your suggestion and wait for the PC version to get up
to speed and just run it under WINE.
Title: Dual Screen Emulator Running On Xbox?
Post by: SlyBeast on November 16, 2006, 08:17:00 AM
While I agree that an Xbox port of Desemume would be more or less useless, I'd like to interject my thoughts on emulating the touch screen.

Wouldn't it be possible to have, say, the right analog stick simulate touch by way of a cursor in a lower box on screen?  I have always wondered how feasible this is.  Apologies in advance if a PC NDS emulator already does this; I'm unable to test one due to having a considerably older computer.

Your thoughts?
Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 16, 2006, 08:24:00 AM
Of course it would TOTALLY BE POSSIBLE and even
with the current source code doable, like I said,
the PC version already has mouse input for the
touchscreen.
It seems alot of people make excuses and say
something isn't possible instead of just saying
they don't want to do it but wishing good luck to
someone who might want to.
What we DON'T NEED is 100 ports of a NES or
SNES emulator. NDS would be a refreshment.
I hope someone up to a challenge picks it up.

This post has been edited by MENTALDOMINANCE: Nov 16 2006, 04:25 PM
Title: Dual Screen Emulator Running On Xbox?
Post by: nes6502 on November 16, 2006, 12:20:00 PM
QUOTE(MENTALDOMINANCE @ Nov 16 2006, 04:24 PM) View Post

Of course it would TOTALLY BE POSSIBLE and even
with the current source code doable, like I said,
the PC version already has mouse input for the
touchscreen.
It seems alot of people make excuses and say
something isn't possible instead of just saying
they don't want to do it but wishing good luck to
someone who might want to.
What we DON'T NEED is 100 ports of a NES or
SNES emulator. NDS would be a refreshment.
I hope someone up to a challenge picks it up.


I don't think it's a matter of challenge, but a matter of motivation. Not many people would use an emulator that ran at 30-50% speed with low compatability and no sound. Emulating the touchscreen would be trivial and no harder than emulating a lightgun used in other emulators. If it ran at 80% speed with sound on the Xbox, I'd port it myself. Unfortunatly, this falls into the Saturn/Jaguar category. No polished open source solution and not enough Xbox power even if there was.

Therefore, it's not a lot of motivation for porters to pick up the project.
Title: Dual Screen Emulator Running On Xbox?
Post by: XPort on November 16, 2006, 01:29:00 PM
I was going to say pretty much the same thing nes6502 did - but I will also add the following:  Not only would there be no interest in the project by most potential users, there would actually be a flood of messages from people complaining that "this sucks!"  I, for one, am definitely not going to waste my time on such a project when I already know exactly how the (vocal) "community" will respond.  If some other developer has a desire to port it, I don't want to discourage them from doing so - but they should brace themselves for the harsh reality when they go public with it.  For the most part, it will not be well received.
Title: Dual Screen Emulator Running On Xbox?
Post by: Sirmatto on November 17, 2006, 07:19:00 AM
QUOTE(nes6502 @ Nov 16 2006, 11:27 AM) *

If it ran at 80% speed with sound on the Xbox, I'd port it myself. Unfortunatly, this falls into the Saturn/Jaguar category. No polished open source solution and not enough Xbox power even if there was.

This is not a request in any way, more of a curiosity:

While I know Lantus (I believe) ported Virtual Jaguar, with bad results, I'm curious if you (or anyone else) has tried to port Yabause.  I can't seem to find any recommended specs for it, but I do know of an extremely primitive port that ran on the Dreamcast.  But while it uses SDL, it also uses OpenGL (although I think this may be DirectX on the Windows port).
Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 17, 2006, 09:39:00 AM
"If it ran at 80% speed with sound on the Xbox, I'd port it myself. Unfortunatly, this falls into the Saturn/Jaguar category. No polished open source solution and not enough Xbox power even if there was."

I understand. I am hoping that the emulator will shape up though, it seems to
be supported somewhat well. At least it isn't like CXBX which is totally dead
and should have been done eons ago. I remember the first post I made about
emulating the NDS on the XBOX, back then the version of DESEMUME would
not run under WINE on XDSL. Now it does. This evolution is what excited me
enough to make the current post. (I saw that the emulator is evolving!)
I would say don't rule anything out - I think it's possible the emulator, once
finished, will run on an 800 mzh. system. Let's wait and see. 8)
This belief is what lead me to say "Hey start porting it now so by the time the
original emulator is faster, it will be simple to make the modifications."
I mean we already have Nintendo 64 and Playstation, is the Dual Screen
actually more powerfull than those?

As for Yabause, I don't know what it is but it probably works under WINE.
Why don't you try it out and tell us the results? Many things run flawlessly
under WINE. I love Ultimate Mortal Kombat 3 and to my knowledge none
of the XBOX ports of MAME run that correctly or even at all.
In frustration, I downloaded FASTMAME for DOS and ran that under WINE
and it ran perfectly with sound. However, I could not get the controls
working!!! ARGH!!! Someone should port FASTMAME!!! That would rock!
I would love to play realspeed Ultimate Mortal Kombat 3 on XBOX!!!

P.S. - XPORT - It's too bad about people saying stuff sucks. I come from
the Amiga world and I remember when emulators were first coming out
we used to be so excited when a first version that ran dog slow came
out! We did nothing but support the author. I remember the first NES
emulator was dog slow but then someone coded a 100% ASM one and
it rocked! Of course anything in ASM is gonna run faster but my point is
that back then guys like you got support... Not critisism.

This post has been edited by MENTALDOMINANCE: Nov 17 2006, 05:53 PM
Title: Dual Screen Emulator Running On Xbox?
Post by: enderandrew on November 17, 2006, 11:38:00 AM
Taken from the Windows documentation for Yabause:

QUOTE
Yabause is written in C using the SDL and OpenGL libraries, so you need a working C compiler (such as gcc) and these libraries runtime and development packages:

    *

      SDL can be found in the download section of the SDL web site.
    *

      OpenGL should be included with your compiler, if it isn't, check on your compiler's website for links.

Once these libraries installed, you should be ready to install Yabause.

Unfortunately, I've been having some trouble getting configure working properly with mingw and cygwin, so instead I've written a makefile (src\makefile.mng) for compiling using mingw which can be called by typing: make -f makefile.mng in the src subdirectory.
Note
If anyone feels like fixing this, let me know. Visual C++ support should be available soon.


Then OpenGL portions would all have to be rewritten, and if it won't compile in something like Visual C++, then that would also require some work.
Title: Dual Screen Emulator Running On Xbox?
Post by: nes6502 on November 17, 2006, 01:39:00 PM
QUOTE(enderandrew @ Nov 17 2006, 07:38 PM) View Post

Taken from the Windows documentation for Yabause:
Then OpenGL portions would all have to be rewritten, and if it won't compile in something like Visual C++, then that would also require some work.


Well, running SSF on my 3.4GHTz PC produced very SLOW gameplay. From what I've read Yabause is nowhere near as polished but I've never tried it.

So, I'm making the assumption that the emulation would crawl on the Xbox. Also, looking at the compatability thread, it seems that every game that uses any amount of 3D doesn't work.

So there would be slow gameplay, low compatability, and I'd have to rewrite all the rendering code to use Direct3D. I don't beleive there'd be any point in porting this. I mean ZSNES is 90% assembly presenting an enourmous porting challenge, but I knew that when I was done, I'd have a fullspeed SNES emulator.

With this (and the DS emulator), I'd have something nonone would use (and make a point to vocally complain about with "this sucks!!!")

However, if someone out there has an ~800 mhtz (I don't) PC and can post a compatibility list for a few games (speed wise), and it's decent, I may consider porting this. I'd have to have concrete results that it would run decently to peak my interest. But I'm fairly sure this isn't possible given the complexities of Saturn hardware.

And on another point, the DS emulator mentioned in this thread has been discontinued. So, when the original author isn't working on it, there's not a lot of hope of it becomming a polished product (at least any time soon). And even if it does, the CPU requirements will allmost certainly increase even more (making it even less playable in the future) as emulation accuracy is improved and new features (like sound emulation) are added.
Title: Dual Screen Emulator Running On Xbox?
Post by: Timerever on November 17, 2006, 03:41:00 PM
QUOTE(XPort @ Nov 16 2006, 10:29 PM) *

there would actually be a flood of messages from people complaining that "this sucks!"  I, for one, am definitely not going to waste my time on such a project when I already know exactly how the (vocal) "community" will respond.

Who would do such a thing!! I can't belive there's people that rude in here (IMG:style_emoticons/default/biggrin.gif) (IMG:style_emoticons/default/tongue.gif)


QUOTE(nes6502 @ Nov 17 2006, 10:46 PM) *

Well, running SSF on my 3.4GHTz PC produced very SLOW gameplay. From what I've read Yabause is nowhere near as polished but I've never tried it.

To anyone wishing for a Saturn emulator for Xbox: quit day dreaming!
Saturn had 9 (nine) CPUs running in sync so there's no way in hell that you'll get a Saturn emu running at solid framerate in anything other than a dual or even quad core CPU system left alone the Xbox (IMG:style_emoticons/default/rolleyes.gif)

As for the Nintendo DS emulator, it's the same story. The DS uses 2 powerfull (in emulation sense) CPUs running at the same time, while it's not like the Saturn since the 2nd DS CPU is a co-processor it's still needed to emulate it. I can't explain in detail but emulating multi CPU systems in a single CPU system is a pain the arse 'cause to emulate a single frame you need to emulate each CPU instruction at a time and put them on hold until all the instruction for that frame are done, only then the frame is displayed... ouch.

But nes6502 and Xport are devs and know this better than me, al they probably can explain it better.
Title: Dual Screen Emulator Running On Xbox?
Post by: enderandrew on November 17, 2006, 04:21:00 PM
And again, while a mouse might make a feasible replacement in a PC environment for the touch screen (though somewhat a poor one), it would be pretty hard to use an XBox controller and a mouse at the same time.

Doesn't the DS record an analog degree of how hard you press down, record taps, and record dragging?

Games that require quick, precise movements are not going to very playable without a proper touch-screen.

Regardless, emulating current-gen technology serves only to pirate brand new games.

Just buy a DS.
Title: Dual Screen Emulator Running On Xbox?
Post by: Grudge on November 18, 2006, 04:45:00 PM
QUOTE(Timerever @ Nov 17 2006, 11:41 PM) *

To anyone wishing for a Saturn emulator for Xbox: quit day dreaming!
Saturn had 9 (nine) CPUs running in sync so there's no way in hell that you'll get a Saturn emu running at solid framerate in anything other than a dual or even quad core CPU system left alone the Xbox (IMG:style_emoticons/default/rolleyes.gif)


not saying that it can be actually emulated or anything but the saturn only had 2 cpus.........
Title: Dual Screen Emulator Running On Xbox?
Post by: beige on November 18, 2006, 05:15:00 PM
It had 2 cpus but other chips controlling other functions

* Two Hitachi SuperH-2 7604 32-Bit RISC processors at 28.2 MHz (50-MIPS) - each has 4 kB on-chip cache, of which 2 kB can alternatively be used as directly addressable RAM
* SH-1 32-bit RISC processor (controlling the CD-ROM)
* Custom VDP 1 32-bit video display processor (running at 7.1590 MHz on NTSC Systems, 6.7116 MHz for PAL Systems)
 * Custom VDP 2 32-bit video display processor (running at 7.1590 MHz on NTSC Systems, 6.7116 MHz for PAL Systems)
 * Custom Saturn Control Unit (SCU) with DSP for geometry processing and DMA controller (running at 14.3 MHz)
* Motorola 68EC000 sound controller (running at 11.3 MHz / 1,5 MIPS)
* Yamaha FH1 DSP sound processor, "Sega Custom Sound Processor" (SCSP), running at 22.6 MHz
* Hitachi 4-bit MCU, "System Manager & Peripheral Control" (SMPC)

Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 20, 2006, 06:32:00 AM
How many times must I say that the dual screen's
touch screen is not a problem?
Most games such as Super Princess Peach and
New Super Mario Bros. do not need the touch screen.
Only a few gimmicky things use it and those are
done well enough with a mouse imho.
There are a million ways to do that with an
analog joystick, someone suggested a cursor
that you control with the analog joystick that you
can move over the screen then click down to
simulate touch - that sounds reasonable enough.
For the few games that might require
sensing how hard a press is, there are many
ways to do that also, not to mention as I've said
that not every game uses the touchscreen
and most of the good ones don't need it.
Besides, most real users have a mouse for their
XBOX anyhow and can just use the real thing.
My mouse works fine on DESEMUME under
WINE on XDSL. 8)

This post has been edited by MENTALDOMINANCE: Nov 20 2006, 02:38 PM
Title: Dual Screen Emulator Running On Xbox?
Post by: enderandrew on November 20, 2006, 07:59:00 AM
Most games don't even need the touch screen?

Um, sure.

Let's say you used the analog joystick on the XBox controller.  You would need a "pointer" on screen at all times.  You would then need to be able to quickly and accurately move it with the analog joystick exactly where you needed it on screen, and then "click" down while accurately dragging it.

With a proper touch screen you simply press down where you want.  There is no reaction time of trying to get the pointer in the right place to begin with, and I imagine "clicking-and-dragging" with an analog joystick will be considerably different from a touch screen.

Ever you one of those pointers on a laptop that is practically an eraser-nub?
Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 21, 2006, 07:27:00 AM
"Ever you one of those pointers on a laptop that is practically an eraser-nub?"

- Okay Borat... heheheh...
Title: Dual Screen Emulator Running On Xbox?
Post by: foog on November 22, 2006, 09:56:00 PM
moron terms:

if gba can't even get to full speed what makes you think that the DS has a chance?
some things are impossible.
there might, and i stress this, MIGHT, be 1 or 2 games that could possibly reach to playable speeds, but theyd have to be really, extremely simple games.

theres not even a reason for this thread. its retarded...
Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 25, 2006, 01:12:00 PM
There is no reason GBA should not reach full speed.
If the GBA emulator for Xbox isn't full speed then
it's simply bad code at fault. Do I need to drag out
a fast GBA emulator and run that under WINE to
proove it's doable? Geeze, all there seem to be here
are a bunch of nay sayers.
Title: Dual Screen Emulator Running On Xbox?
Post by: Diontae18 on November 25, 2006, 02:11:00 PM
Then why don't you code the emulator yourself, and stop wasting our time with this thread? This thread should be moved to GARBAGE.  sleeping.gif
Title: Dual Screen Emulator Running On Xbox?
Post by: enderandrew on November 25, 2006, 09:26:00 PM
QUOTE(MENTALDOMINANCE @ Nov 25 2006, 09:12 PM) *

There is no reason GBA should not reach full speed.
If the GBA emulator for Xbox isn't full speed then
it's simply bad code at fault. Do I need to drag out
a fast GBA emulator and run that under WINE to
proove it's doable? Geeze, all there seem to be here
are a bunch of nay sayers.


Huh.  Didn't nes and xport say earlier in the thread that part of the reason they don't port certain projects is that they're worried people will scream, "this is slow because it is garbage and you did a poor job!"

That's the thanks they get.

I'm sure they won't forget to send you a Christmas card however.
Title: Dual Screen Emulator Running On Xbox?
Post by: Timerever on November 26, 2006, 09:25:00 AM
QUOTE(MENTALDOMINANCE @ Nov 25 2006, 10:12 PM) *

There is no reason GBA should not reach full speed.
If the GBA emulator for Xbox isn't full speed then
it's simply bad code at fault. Do I need to drag out
a fast GBA emulator and run that under WINE to
proove it's doable? Geeze, all there seem to be here
are a bunch of nay sayers.

Geez people take it easy, you really like to trash people who don't praise XPort and nes6502 as God don't you? Prolly you think it raises you e-penis no?

@ MENTALDOMINANCE:
Yes there's no reason why GBA can't reach full speed, these emulators are far from optmized but that's the way it is, you see to optimize these alot of assembler code would have to roll and that's not going to happen simply because XPort and nes6502 are, well, porters. They don't really code anything asides the GUI and a few fixes like that awsome NeoGenesis 256x224 fix that streaches the image to 320x224 as it was meant to (BTW thanks to XPort for that). So even if they wanted to code an optimized version from scratch they don't know who to do it, they're not emulator coders and don't know squat about the hardware of these machines.
So a full speed GBA emulator is doable, and maybe even a DS emulator is, but you need someone who both know these consoles hardware and x86 assembler very well.
Anyway having in mind those limitations their work is still good (except PCSXbox (IMG:style_emoticons/default/biggrin.gif) ) and appreciated.
Title: Dual Screen Emulator Running On Xbox?
Post by: MENTALDOMINANCE on November 26, 2006, 03:09:00 PM
Excellent excellent excellent... Thankyou so much for
answering in such an intelligent detailed way!
I mentioned earlier that I'm an oldschool Amiga guy
and the first NES emulators for that ran like crap
untill someone finally coded an ASM one.
I was under the impression that these guys doing the
ports knew ASM. I didn't know they were essentially
just compiling the code as an .xbe - So now the
question comes, does anyone code in ASM for the
Xbox? Who has made ASM demos? These would be
the people whom xport and the other guy need to
contact. The whole part of the fun of coding back
in the old days was shit like this, doing the so called
impossible, etc. - but everyone did everything in
ASM and that was how some things such as full
overscan borderless screens filled with sprites on
the C=64 were possible. Today with all these point
and click high level languages, some people have
lost the whole point of homebrew. Look to it's
origins and the original Godfathers would be turning
over in their grave when they listened to some of
these kids complaining about how nothing can be
done but list doing something in ASM as
not even an option whatsoever or worse yet, crazy.
Title: Dual Screen Emulator Running On Xbox?
Post by: Lotus Eater on November 27, 2006, 08:50:00 AM
Heh, why do I find this funny.  Buy a real DS, I have an Emulator for the PC and it just isn't nearly as much fun as the real thing, while you are right, most games really don't make use of the touch screen, many do.  If it needs done, do it right.  Let the creators of the emulators do it right, then if someone deems it good enough to port, they'll port it.

Now, Xport already said he isn't going to port it, so why keep on dragging the argument out?  Last I checked, his name is on this forum.
Title: Dual Screen Emulator Running On Xbox?
Post by: Timerever on November 27, 2006, 04:05:00 PM
@MENTALDOMINANCE:
Xbox assembler is just plain x86 assembler since the Xbox CPU is a Pentium (or Celereon?), that's why most of these emulators were possible to port, because you can simply pick their ASM (and C) code and compile it without rewriting much.

As or someone doing a full assembler optimized GBA and Nintendo DS emulator, not going to happen for the forseeable future. No one really knows the DS that well to code such thing, for the time being the emu devs are just fiddling with it and see what they can get to run. The GBA case is somewhat similiar, AFAIK only Forgotten (the original VisualboyAdvance author) knew the GBA guts well enough to try such thing and he won't be doing it since he quited emulation altogheter. He said that VBA was taking too much time from his job, life and family was no longer intrested on continue the work on it, so he handed it over kxu and made it opensource.

So as you see a DS emulator on Xbox won't show up for a long if at all, and a full speed GBA one is a bit difucult too since kxu isn't as knowlageble of GBA and VBA code as Forgotten. The only advices I can give you if you really wanna play these games are getting a real DS (cause accurate DS emulation will take a long while) and/or getting a reasonably sized PC and hook it to the TV. If you use a decent frontend it might not be that bad.

Now go and have some fun pop.gif
Title: Dual Screen Emulator Running On Xbox?
Post by: nes6502 on November 28, 2006, 02:14:00 PM
QUOTE(MENTALDOMINANCE @ Nov 26 2006, 11:09 PM) *

Excellent excellent excellent... Thankyou so much for
answering in such an intelligent detailed way!
I mentioned earlier that I'm an oldschool Amiga guy
and the first NES emulators for that ran like crap
untill someone finally coded an ASM one.
I was under the impression that these guys doing the
ports knew ASM. I didn't know they were essentially
just compiling the code as an .xbe - So now the
question comes, does anyone code in ASM for the
Xbox? Who has made ASM demos? These would be
the people whom xport and the other guy need to
contact. The whole part of the fun of coding back
in the old days was shit like this, doing the so called
impossible, etc. - but everyone did everything in
ASM and that was how some things such as full
overscan borderless screens filled with sprites on
the C=64 were possible. Today with all these point
and click high level languages, some people have
lost the whole point of homebrew. Look to it's
origins and the original Godfathers would be turning
over in their grave when they listened to some of
these kids complaining about how nothing can be
done but list doing something in ASM as
not even an option whatsoever or worse yet, crazy.



No one codes in assembly period anymore. Why? Because there is no point. It's the same reason people don't code in binary. Why kill yourself when you can do the job 99% quicker and it works just as well? The reason people relied on assembly 15 years ago is because Computers were very primitive. When your CPU runs at 5Mhtz and you have 16KB of RAM, Assembly is pretty much the only option (which is why all NES, SNES, genesis, TG16 games were written in the assembly language of the CPU in those consoles. Today we have 4Ghtz CPUs and Gigs of RAM. It's a lost art. In fact ZSNES is in the process of converting all the ASM code to C because there's no need for it anymore. Pagefault is pretty much the only one who can make emulation related changes. If it was written in C or C++ then everyone could contribute.

I can write assembly just fine, but there's no way I'd code anything in it anymore. It takes 100 times longer to write anything, it's 100 times harder to debug, and virtually noone can read it anymore. So, you'll be hard pressed to find emulator authors that will choose assembly as their language (which means ported apps will not be written in assembly).
Title: Dual Screen Emulator Running On Xbox?
Post by: Timerever on November 29, 2006, 05:49:00 AM
QUOTE(nes6502 @ Nov 28 2006, 11:14 PM) *

No one codes in assembly period anymore. Why? Because there is no point. It's the same reason people don't code in binary. Why kill yourself when you can do the job 99% quicker and it works just as well? The reason people relied on assembly 15 years ago is because Computers were very primitive. When your CPU runs at 5Mhtz and you have 16KB of RAM, Assembly is pretty much the only option (which is why all NES, SNES, genesis, TG16 games were written in the assembly language of the CPU in those consoles. Today we have 4Ghtz CPUs and Gigs of RAM. It's a lost art. In fact ZSNES is in the process of converting all the ASM code to C because there's no need for it anymore. Pagefault is pretty much the only one who can make emulation related changes. If it was written in C or C++ then everyone could contribute.

I can write assembly just fine, but there's no way I'd code anything in it anymore. It takes 100 times longer to write anything, it's 100 times harder to debug, and virtually noone can read it anymore. So, you'll be hard pressed to find emulator authors that will choose assembly as their language (which means ported apps will not be written in assembly).

Steve Snake, the author of Kega Fusion writes all his emus on x86 assembler, and Kega Fusion is all assembler with small parts (Windows interface, DirectX interface, File Handling) written in C so there you go... ok Steve likes to have control over the stuff but I doubt you'll see the end of assembler anytime soon (or at all) since there's always use for direct control of the CPU and squeezing all the speed you can. Image filters (like hq2x) are written in assembler to bottleneck the emulation the least possible, also while SNES and MD emulators don't need ASM code anymore I'd love to see someone trying to code a full speed Gamecube emulator with resorting to a lot of assembler or waiting for 16 cores CPUs.

Anyway, nes6502 point is still somewhat valid, assembler is becoming an even rarer art but getting the idea that back then everyone was a ASM master is wrong, ASM was always a massive pain in the ass and people runned from it like from hell.

As for someone writing a DS emu enterely in assembler, I doubt it will happen, but I'm pretty sure they'll resort to in in some more CPU heavy parts of the code.
Title: Dual Screen Emulator Running On Xbox?
Post by: enderandrew on November 29, 2006, 09:13:00 AM
http://bripro.com/

http://sourceforge.net/projects/neshla

Some people certainly still work with assembly.

On one hand I hear that C++ is just as fast, but you also hear that the only way to optimize most emulators is to code them in assembly.  So really, which is it?
Title: Dual Screen Emulator Running On Xbox?
Post by: Diontae18 on November 29, 2006, 10:25:00 AM
I've noticed that the second link (with the source) has the numbers 6502, like nes6502's nick. Is this just a coincidence?  tongue.gif
Title: Dual Screen Emulator Running On Xbox?
Post by: nes6502 on November 29, 2006, 11:13:00 AM
QUOTE(enderandrew @ Nov 29 2006, 05:13 PM) *

http://bripro.com/

http://sourceforge.net/projects/neshla

Some people certainly still work with assembly.

On one hand I hear that C++ is just as fast, but you also hear that the only way to optimize most emulators is to code them in assembly.  So really, which is it?



C++ is not as fast as assembly. C and C++ "become" assembly when they are compiled. However, you are trusting the compiler to generate the assembly. It usually can be done better by a human. Therefore some people skip development in a high language and write the assembly themselves.


But most people do not do this. They write in a high level language (like C or C++) and use the compiler to do the rest (i.e. generate the  assembly for them). Hand written assembly is mainly used for certain parts of a C/C++ program to speed "that" portion up (like the graphics filters).

But in general, most developers do not use assembly at all unless they are in proprietory development, graphics programming (i.e. games), or just love using it.





QUOTE(Diontae18 @ Nov 29 2006, 06:32 PM) *

I've noticed that the second link (with the source) has the numbers 6502, like nes6502's nick. Is this just a coincidence?  (IMG:style_emoticons/default/tongue.gif)


nes6502 = nes (Nintendo Entertainment System) + 6502 (The CPU in the NES)
Title: Dual Screen Emulator Running On Xbox?
Post by: Timerever on November 29, 2006, 01:16:00 PM
QUOTE(nes6502 @ Nov 29 2006, 08:13 PM) *

nes6502 = nes (Nintendo Entertainment System) + 6502 (The CPU in the NES)

Really? I always thought the 6502 was just a random number you used to register your nick since the nick 'nes' is probably already in use.
Title: Dual Screen Emulator Running On Xbox?
Post by: nes6502 on November 29, 2006, 02:08:00 PM
QUOTE(Timerever @ Nov 29 2006, 09:16 PM) *

Really? I always thought the 6502 was just a random number you used to register your nick since the nick 'nes' is probably already in use.


Yup. The Nes actually uses a customised 8-bit 6502 CPU. I have written several NES emulators which are made up of three core components: The APU, PPU, and CPU core (6502 core). That's where the 6502 comes from.
Title: Dual Screen Emulator Running On Xbox?
Post by: sshrugg on December 10, 2006, 04:08:00 PM
I see this as something that could be kinda neat in the future - once more features/games are supported, and if it can run quickly on the xbox CPU once it reaches that level of maturity.

Stylus could be emulated with a joypad and the joypad button.
Microphone - headset? Maybe.

The thing is, this is a maybe when it's mature kinda thing.  There's tons of projects people would probably rather do that would work nearly 100% and have a following before this.

By the time the emulator reaches that state, hopefully we'll have 360 chips!! XD

I'm not a xbox coder, or anything.  Just thought the post was interesting.

This post has been edited by sshrugg: Dec 11 2006, 12:09 AM