NESSIE v1.02: How can I make the speed faster
Moderator: Moderators
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
NESSIE v1.02: How can I make the speed faster
I am using ROSASM and NESSIE to make my own version of NESSIE. But the speed of the emulator in gameplay is terrible. it is 2 times slower than any other emulator I tried. If you can give me a hand for the code, then I would appreciate it!
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
1: I will have 4 versions:kyuusaku wrote:If someone gives you "a hand" with the code, is it your version or a version for you?
Besides, how do you expect someone to optimize a hand written assembly program 200%?
''Enhanced graphics capability'', 8 palette slots for sprites, (May also change all code to use 2bpp to 3 or 4bpp)
''Enhanced Mapper modifications'' Using a different format called ENF - Can be an alternative to using the same old mapper sets. Example: INES #2 can use $6000 as a new feature
''Mixed'' (All of the Above)
and
''Regular'' (i)NES version
I have the enhanced graphics feature pre-made, using 8 palette slots (No 4-Attribute color limit), but the change in the GFX code is not yet made.
2: Because Nessie hates my (Slow) CPU, Sure, Could by a new CPU in my computer, But it's EXPENSIVE! And the original creator of the emulator never showed up again.
(If you find a newer URL, Please put it here.)
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
I'm still here.Hamtaro126 wrote:And the original creator of the emulator never showed up again.
The terrible performance likely comes from the fact that Nessie runs the ppu one cycle at a time in a loop as soon as a $200x ppu register is accessed. If you could replace that with common optimizations such as predicting sprite #0 / overflow flags, tile caching etc, you could probably improve performance significantly.
I'm afraid there's not any simple fix to boost performance, you'd have to write quite a lot of code to do it - that's why I didn't do it myself.
The source code is pretty chaotic though, it was my first program with more than 500 lines of code!
Martin
I never understood the point of making an "enhanced emulator" do this kind of thing. I mean if you want this kind of thing, why not just use the SNES? SNES has even fewer restrictions than what was mentioned here, is faster, and has lots more RAM.
Anyway I've voiced my opposal to projects like this in the past. No need to repeat myself, I guess.
Anyway I've voiced my opposal to projects like this in the past. No need to repeat myself, I guess.
I think some ideas are nice (like a ROM that has the ability to run in an "enhanced mode" but works fine without it or on the real thing) ...Disch wrote:I never understood the point of making an "enhanced emulator" do this kind of thing. I mean if you want this kind of thing, why not just use the SNES? SNES has even fewer restrictions than what was mentioned here, is faster, and has lots more RAM.
Anyway I've voiced my opposal to projects like this in the past. No need to repeat myself, I guess.
It offers a way to create a "graphical" or "musical" overhaul without having to port the entire game to something else, so more effort can be spent on new things and not getting the physics right again.
... I guess in short, I think it's better to focus on something like this as an optional addon (like a new video card for a PC) rather than making a game rely on the upgrades.
Also, can we stick Hamtaro999 in a hamster ball and punt him off a cliff yet? Please?
I've been told it's a pain to get 'hello world' working on the SPC700. At least I failed when I tried years ago.Disch wrote:I mean if you want this kind of thing, why not just use the SNES? SNES has even fewer restrictions than what was mentioned here, is faster, and has lots more RAM.
In addition, wouldn't it be easier to enhance commercial games by hacking their CHR and the emulator than by also hacking their PRG and writing a new sound engine from scratch? With the amount of rearranging needed to port a commercial game from the NES to the Super NES, it'd be a female dog to encapsulate the changes in an IPS so that the changes can be distributed to the public.
And there are some "enhanced mode" features that could still be made to work with authentic NES hardware, such as mapper audio (on a Famicom or on an NES with a jumper board in the exp slot).
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
@Tepples, Nessie: Thanks for the support.tepples wrote:I've been told it's a pain to get 'hello world' working on the SPC700. At least I failed when I tried years ago.Disch wrote:I mean if you want this kind of thing, why not just use the SNES? SNES has even fewer restrictions than what was mentioned here, is faster, and has lots more RAM.
In addition, wouldn't it be easier to enhance commercial games by hacking their CHR and the emulator than by also hacking their PRG and writing a new sound engine from scratch? With the amount of rearranging needed to port a commercial game from the NES to the Super NES, it'd be a female dog to encapsulate the changes in an IPS so that the changes can be distributed to the public.
And there are some "enhanced mode" features that could still be made to work with authentic NES hardware, such as mapper audio (on a Famicom or on an NES with a jumper board in the exp slot).
@Anyone: And I really like to make a SNES version of Hebereke (The original) in SNES using Super Mario All Stars's ''6502 Emulation'' **engine, But that would require a giant disassembly and remake project. But is very Impossible for me!
**I want to mention, The SMD/Genesis version of Lemmings has a Hebereke cameo, And compared to the NES. That so-called ''Sega VGM'' tune used in the cameo would be Kickass in SNES (N)SPC format for the above (optional) project!
What are you talking about? SMAS has no "6502 emulation." The games were rewritten to work with the 65c816 (not a difficult feat, since it's basically the same CPU) and the SNES's PPU/APU. A lot of the original code was left intact, even.Hamtaro126 wrote:@Anyone: And I really like to make a SNES version of Hebereke (The original) in SNES using Super Mario All Stars's ''6502 Emulation'' **engine, But that would require a giant disassembly and remake project. But is very Impossible for me!
On a side note, you really need to pick one or two reasonable projects and stick with them. You're never going to learn anything or gain anyone's respect if you come here every other day with an insane new project idea, especially when you expect others to do the bulk of the work for you. It got tiresome a long time ago.
Of course, you've been told this probably hundreds of times over the past few years, so I don't know why I even bother anymore...
- BMF
RuSteD LOgIc
RuSteD LOgIc
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
If I can use your DDP hack(Pass the project on to Me, It will never be finished much if it stays on your Hard Drive until it is lost). and spice it up/Modify it a little to make it similar to the original (The animations, 1ups if possible.)BMF54123 wrote:What are you talking about? SMAS has no "6502 emulation." The games were rewritten to work with the 65c816 (not a difficult feat, since it's basically the same CPU) and the SNES's PPU/APU. A lot of the original code was left intact, even.Hamtaro126 wrote:@Anyone: And I really like to make a SNES version of Hebereke (The original) in SNES using Super Mario All Stars's ''6502 Emulation'' **engine, But that would require a giant disassembly and remake project. But is very Impossible for me!
On a side note, you really need to pick one or two reasonable projects and stick with them. You're never going to learn anything or gain anyone's respect if you come here every other day with an insane new project idea, especially when you expect others to do the bulk of the work for you. It got tiresome a long time ago.
Of course, you've been told this probably hundreds of times over the past few years, so I don't know why I even bother anymore...
And after that, I am hacking the final SMB2 to a more SMB3-look.
There is also a Hebereke hack called Hebereke: Dark Edition. Finishing it up after it is translated and released by someone in RHDN, and after the above hacks
-Hamtaro126
I've told you before, I'm not "passing on" the project. If I want it finished, I'll do it myself, the way I see fit. Why must you keep bothering me about this?
- BMF
RuSteD LOgIc
RuSteD LOgIc
For enhancing existing NES games, it's probably easiest to hack an emulator to specifically improve one game. But if you just want to develop on a system like the NES, but hate some of the limits you have with the NES, the SNES really is the way to go. The SPC will be an issue for sound, but the rest of it is pretty nice. As Disch said you have lots of RAM, VRAM, faster cpu, better graphics, DMA, etc. Anything you would want to do on NES or just barely couldn't do on NES you can do with SNES.
SNES is probably easier except for the SPC issue. It's a shame because I think the SPC issue is the main reason you don't see more SNES homebrew. It's a better system than the NES for it too thanks to the large amount of Copiers and Flash Cartridges out there. Atleast that's my opinion.
SNES is probably easier except for the SPC issue. It's a shame because I think the SPC issue is the main reason you don't see more SNES homebrew. It's a better system than the NES for it too thanks to the large amount of Copiers and Flash Cartridges out there. Atleast that's my opinion.