I guess it's kinda possible, but you'd need extra hardwarelike a LOT more ram for starters, ( as the propeller only has 32KB of ram. ) and even then it might not run at full speed, but it would take an awful lot of hard work too, and good inside workings knowledge of the NES system.
CPU: Motorola 6502 processor, running at approximately 1.79 MHz
Graphics: 8-Bit
Resolution: 256x240 resolution
Color Palette: 52 colors
On Screen Colors: 16, 4 per sprite
Max. Sprites: 64 per screen, 8 per line
Sprite Size: Mininmum 8x8 pixels, Maximum 8x16 pixels
RAM: 2KB
Video RAM: 2KB
Don't forget a lot of NES games used interrupts to change rom banks down the screen etc. so it could be a very tricky display driver to do, considering it'll all have to be taken from external ram, as the propeller doesn't have that much to begin with.
So good luck [noparse]:)[/noparse]
I've done a project that connects a real 6502 processor to the Prop. NES emulation is one thing I'd like to try with it, but I haven't got that far yet, although the 6502/Propeller/external SRAM interface works well. Instead of emulating the 6502 core, I use a real 6502 and just emulate the memory map and I/O. NES emulation might be possible then, but it's still an open question. Anyway I'll be giving out the 6502 object for the Propeller on the Obex after the Propeller Design Contest is judged (it was part of my entry).
I really like the idea of connecting a 6502 to the Prop and emulate the rest...
Looking forward to see the entry by Dennis, I have been thinking about the same thing, connecting the Prop to a 65c02 to emulate video/sound/IO etc...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Living on the planet Earth might be expensive but it includes a free trip around the sun every year...
Experience level:
[noparse][[/noparse] ] Let's connect the motor to pin 1, it's a 6V motor so it should be fine.
[noparse][[/noparse] ] OK, I got my resistors hooked up with the LEDs.
[noparse][[/noparse]X] I got the Motor hooked up with the H-bridge and the 555 is supplying the PWM.
[noparse][[/noparse] ] Now, if I can only program the BOE-BOT to interface with he Flux Capacitor.
[noparse][[/noparse] ] I dream in SX28 assembler...
There was a NES emulator for the Game Boy Color that ran extremely slow.
Have a look at the GBC-specs:
- Z80 workalike
- 8 MHz
- 32 kilobytes system RAM
- 16 kilobytes video RAM
- 160x144 pixels
This gives hope that a NES emulator for Hydra might be possible, maybe even at a decent speed.
Also, I played with the thought myself. But given that I lack the necessary knowledge I put that idea on hold. However, I asked some emulation experts about it, you can read about it here:
I did not talk to the experts of the emulation forum, but I recommend that you guys do it. They seem pretty competent to me (not that I could really judge that with my limited knowledge, oh well...)
@RedNifre,
Emulating the NES the way that the GBC does would still be a challenge, although they are likely taking advantage of the lower resolution (maybe displaying every other pixel per scan line?). [noparse][[/noparse]Edit:] If you were wanting to reduce the memory required further, you could just use the 4-color 8x8 definitions in their pattern table(s), and·ignore·when the palette is being set·(maybe displaying this in greyscale?) for your screen buffer.· I don't know if the combination of "pixel smashing" and greyscale would yield a good emulation or not, but would help minimize the memory requirements.· The more resources you can free up for the 6502 emulation, display, input, and (maybe sound) the better.· A lot of people seem to be recommending just putting a 6502 onboard, which would make one less thing to "emulate."
If you weren't planning on making a NES cartridge interface onboard (as JT Cook mentioned), I think you would have to emulate in code the way that one or more of the memory mappers addressed memory if you are planning on using actual NES ROM images. [noparse][[/noparse]Edit:] Maybe pick MMC1 to start with?· It sounds like a fun project though.
I would agree with JT Cook that an Atari 2600 emulator would be a good starting point. It would still be a 6502-like instruction set and a 160X192 pixel display (which is going to be a little more memory-friendly on a prop-based emulation). If you were at all interested, the following gives technical specs on the 2600: http://nocash.emubase.de/2k6specs.htm
There is some pretty extensive information on both NES and GB emulation available here: http://fms.komkon.org/EMUL8/
It looks like there is even source code for a portable Z80 and 6502 emulation, which would be of use.
that sounds great, but im not the best coder...
i work at a mobile version for the propeller, the last design works not with a drop down regulator, i use ther a switch down voltage regulator
and i need a nice game for it
Looks like a great little system Schnibble [noparse];)[/noparse]
What's the front of the case like?
And where did you get the case made?
Shame there isn't a handy LCD pal/ntsc display available to finish it of for a real portable [noparse]:D[/noparse]
Wonder if this guy, done with LMM would be fast enough to hit the ~1.7Mhz sweet spot. Spin, native is very close to what 6502 assembler runs. (this depends on system clearly) LMM, being about 5X, might get the CPU part there, running code right out of the HUB.
If you do, then we are off to the races emulation wise! PASM will nail it. Of that, I'm sure. Only need 1.4Mhz for a VCS.
Hmmm.... Some early 2600 / VCS games are only 2 & 4K of 6502 code. Wonder just how hard the TIA is to emulate... I know that's not a NES, but hey! Start somewhere, right?
Yeah, it's a start [noparse]:)[/noparse]
1.4Mhz = 17.14etc pasm instructions per 1 6502 instruction to decode.
at least with 2 & 4K of 6502 code we can use HUB-RAM for memory [noparse]:)[/noparse]
As for TIA, not sure, but I'm sure we'd have a few cogs left to have a good attempt at it lol
Schnibble, I'm not so sure, there are some handhelds that have LCD displays, that run on 2 AA batteries and have a decent battery life [noparse]:D[/noparse]
It is certianly possible to write a Mario clone (which is what XGS Brothers is).· Baggers has written code that is a little closer to the "look" of the NES·Super Mario Brothers with his FemtoGFXBasic: http://forums.parallax.com/showthread.php?p=794370
Comments
Baggers.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
CPU: Motorola 6502 processor, running at approximately 1.79 MHz
Graphics: 8-Bit
Resolution: 256x240 resolution
Color Palette: 52 colors
On Screen Colors: 16, 4 per sprite
Max. Sprites: 64 per screen, 8 per line
Sprite Size: Mininmum 8x8 pixels, Maximum 8x16 pixels
RAM: 2KB
Video RAM: 2KB
We will need first to implement the 6502 emulation.
So good luck [noparse]:)[/noparse]
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
and a open source emulator : http://fceux.com/web/htdocs/
Looking forward to see the entry by Dennis, I have been thinking about the same thing, connecting the Prop to a 65c02 to emulate video/sound/IO etc...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Living on the planet Earth might be expensive but it includes a free trip around the sun every year...
Experience level:
[noparse][[/noparse] ] Let's connect the motor to pin 1, it's a 6V motor so it should be fine.
[noparse][[/noparse] ] OK, I got my resistors hooked up with the LEDs.
[noparse][[/noparse]X] I got the Motor hooked up with the H-bridge and the 555 is supplying the PWM.
[noparse][[/noparse] ] Now, if I can only program the BOE-BOT to interface with he Flux Capacitor.
[noparse][[/noparse] ] I dream in SX28 assembler...
/Bamse
Have a look at the GBC-specs:
- Z80 workalike
- 8 MHz
- 32 kilobytes system RAM
- 16 kilobytes video RAM
- 160x144 pixels
This gives hope that a NES emulator for Hydra might be possible, maybe even at a decent speed.
Also, I played with the thought myself. But given that I lack the necessary knowledge I put that idea on hold. However, I asked some emulation experts about it, you can read about it here:
boards.pocketheaven.com/viewtopic.php?t=6461&highlight=hydra
Not much there, but an interesting board none the less.
They redirected me to the NES emulation forum:
nesdev.parodius.com/bbs/
I did not talk to the experts of the emulation forum, but I recommend that you guys do it. They seem pretty competent to me (not that I could really judge that with my limited knowledge, oh well...)
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Unterwelt (My first game for the HYDRA):
http://forums.parallax.com/showthread.php?p=696204
Hydra in a LEGO NES:
http://forums.parallax.com/showthread.php?p=654788
Post Edited (RedNifre) : 11/9/2008 11:33:31 AM GMT
I don't think an NES emulator would ever work unless you can hook up the physical cart to because of the memory issue.
Emulating the NES the way that the GBC does would still be a challenge, although they are likely taking advantage of the lower resolution (maybe displaying every other pixel per scan line?). [noparse][[/noparse]Edit:] If you were wanting to reduce the memory required further, you could just use the 4-color 8x8 definitions in their pattern table(s), and·ignore·when the palette is being set·(maybe displaying this in greyscale?) for your screen buffer.· I don't know if the combination of "pixel smashing" and greyscale would yield a good emulation or not, but would help minimize the memory requirements.· The more resources you can free up for the 6502 emulation, display, input, and (maybe sound) the better.· A lot of people seem to be recommending just putting a 6502 onboard, which would make one less thing to "emulate."
If you weren't planning on making a NES cartridge interface onboard (as JT Cook mentioned), I think you would have to emulate in code the way that one or more of the memory mappers addressed memory if you are planning on using actual NES ROM images. [noparse][[/noparse]Edit:] Maybe pick MMC1 to start with?· It sounds like a fun project though.
I would agree with JT Cook that an Atari 2600 emulator would be a good starting point. It would still be a 6502-like instruction set and a 160X192 pixel display (which is going to be a little more memory-friendly on a prop-based emulation). If you were at all interested, the following gives technical specs on the 2600: http://nocash.emubase.de/2k6specs.htm
There is some pretty extensive information on both NES and GB emulation available here: http://fms.komkon.org/EMUL8/
It looks like there is even source code for a portable Z80 and 6502 emulation, which would be of use.
Post Edited (trodoss) : 11/12/2008 3:58:14 PM GMT
so i will change my question, is it possible to make a super mario bros or zelda clone?
Post Edited (Schnibble) : 12/1/2008 11:59:16 AM GMT
i work at a mobile version for the propeller, the last design works not with a drop down regulator, i use ther a switch down voltage regulator
and i need a nice game for it
What's the front of the case like?
And where did you get the case made?
Shame there isn't a handy LCD pal/ntsc display available to finish it of for a real portable [noparse]:D[/noparse]
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
http://www.mikekohn.net/micro/propeller_atari_emulator.php
Wonder if this guy, done with LMM would be fast enough to hit the ~1.7Mhz sweet spot. Spin, native is very close to what 6502 assembler runs. (this depends on system clearly) LMM, being about 5X, might get the CPU part there, running code right out of the HUB.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
Hmmm.... Some early 2600 / VCS games are only 2 & 4K of 6502 code. Wonder just how hard the TIA is to emulate... I know that's not a NES, but hey! Start somewhere, right?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
1.4Mhz = 17.14etc pasm instructions per 1 6502 instruction to decode.
at least with 2 & 4K of 6502 code we can use HUB-RAM for memory [noparse]:)[/noparse]
As for TIA, not sure, but I'm sure we'd have a few cogs left to have a good attempt at it lol
Schnibble, I'm not so sure, there are some handhelds that have LCD displays, that run on 2 AA batteries and have a decent battery life [noparse]:D[/noparse]
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
I can't see it....were is the oscillator??
Thanks
Gianni
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
but i will change the possition later
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
Regards,
Coley
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
PropGFX - The home of the Hybrid Development System and PropGFX Lite
now i only need a nes emulator
www.xgamestation.com/products/xgs_me/xgs_bros.jpg
Post Edited (Schnibble) : 4/24/2009 8:16:27 PM GMT
http://forums.parallax.com/showthread.php?p=794370
Post Edited (trodoss) : 4/25/2009 4:15:58 AM GMT