SNES and LYNX on DS question

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
SNES and LYNX on DS question
by on (#64492)
How come SNES and Lynx emulators can't play at full speed when doing homebrew solutions on the DS?

SNES, I could mayhaps understand, because of the way the processor works, and how different it is from the DS, but, All the lynx emulators run at 1/4th of the speed, but, gamegear runs at full speed. Why?

by on (#64493)
http://en.wikipedia.org/wiki/Nintendo_D ... ifications

by on (#64498)
Gamegear emulators use the 2D-Mode hardware to display all the graphics, so it never has to run any code to render each pixel.

SNES also uses the 2D hardware, but a SNES is more demanding to emulate.

by on (#64504)
Dwedit wrote:
Gamegear emulators use the 2D-Mode hardware to display all the graphics, so it never has to run any code to render each pixel.

SNES also uses the 2D hardware, but a SNES is more demanding to emulate.


How about Atari Lynx though? How come it can only be emulated at 1/4th of a speed?

by on (#64508)
It's similar to what engineers call an "impedance mismatch".

The graphical primitives on the NES, Sega Genesis, Super NES, and GBA are a grid of tiles with sprites, possibly modified by raster effects. DS 2D graphics is an extension of GBA graphics, which is how SNEmulDS can work as efficiently as it does. Neo Geo is efficient on the DS because the Neo's primitive (sprites scaled to between 50% and 100% of their texture size) maps easily onto the DS's 3D engine. The primitive on a Lynx, on the other hand, is scaling a column of texels into a frame buffer. It's good for sprite scaling and even for Wolfenstein-style raycasting, but the DS doesn't really have anything like it other than software-based emulation. Essentially what you have is the rough equivalent of a 66 MHz i486DX2 running the whole thing.

by on (#64511)
can current flash cards take advantage of the DSi's more powerfull hardware, or is it somehow locked down?

by on (#64568)
DSi mode is controlled by a digital signing key that only Nintendo has. There are a couple save-game exploits to get into DSi mode, but the PXI calls to get to the SD card to load more code aren't cracked yet.

And the CPU is only twice as fast, which by itself won't help Lynx get 100%. GP2X family (or Pandora if they ever figure out how to build them faster) might be the best option in this case.

by on (#64585)
I haven't done much 3D programming on DS so here's a couple of silly questions:

1. Since the 2D hardware on GBA and DS doesn't map to the SNES, could the priority per tile thing be emulated with polygons?

2. Can DSi run DS media cards, albeit only in DS mode?

by on (#64586)
Priority per tile + Raster effects anyone? When you use the 2D hardware, you can use HDMA to set the scroll position and other raster effects each scanline. Not so with the 3D hardware.

by on (#64601)
strat wrote:
2. Can DSi run DS media cards, albeit only in DS mode?


Since day 1 Nintendo has been lowering compatibility of flash cards and unlicensed devices on the DSi (same goes for Wii after about update 3.2). The fact that Nintendo can roll out a required update to access their services without having people soft short a jumper on the mainboard is what makes this difficult for the homebrew scene. The piracy scene, however, has pretty much been on top of Nintendo's updates since day 1 and newer devices allow their low-level software to be updated, not just the software that gets loaded after they are "in".

To answer your question, there is DSi-compatible devices out there, but you have to make sure that the one you obtain works at least with the version of firmware that is on your device (1.3 1.4 and now I think 1.5 all broke devices up to that point).

The DSi-compatible cards will run in DS mode...As stated earlier newer DSi-Enhanced games use a signature that (unfourtanetly) hasn't been cracked/reversed/factored yet.