Also not getting sound on the .cia version, although I get sound on the .cia version of Blarg. I'm on Luma3ds
The CIA are completely instable quit the app with home crash the 3ds on dragon quest 6 freeze before a fight ff5 doesnt load not fullscreen mode and not sound it need many more improvement i stay at blargvc for the moment
Here are some what I have tested what doesn't work properly in blargsnes:
Dragon Ball Z Super Butoden 2 : Works perfectly, minor graphical bugs
BsZelda : Doesn't boot.
Mortal Kombat 2 : Doesn't boot.
Street Fighter Alpha : Unplayable due terrible graphical bugs.
Street Fighter II : Doesn't show up the title screen, but work perfect after that.
Super Punch Out : Work Perfectly, minor graphical bugs
Edit: forgot Super Mario Kart, works perfectly but lacks of mode 7.
3dsx, I'll not use the cia until we get a stable version with improved compatibility.That's nice, I'll test DBZ 2 o/
Did you try with .3dsx or .cia version?
Here are some what I have tested what doesn't work properly in blargsnes:
Dragon Ball Z Super Butoden 2 : Works perfectly, minor graphical bugs
BsZelda : Doesn't boot.
Mortal Kombat 2 : Doesn't boot.
Street Fighter Alpha : Unplayable due terrible graphical bugs.
Street Fighter II : Doesn't show up the title screen, but work perfect after that.
Super Punch Out : Work Perfectly, minor graphical bugs
Edit: forgot Super Mario Kart, works perfectly but lacks of mode 7.
DKC2 works really great
it runs at 60 fps in some areas (well, 59.5 but it's almost the same) but in ship deck it drops at under 50 fps and the sprites start to glitch themselves. It still runs at a nice playable speed so no complains hereWith some slowdowns and graphical errors but otherwise working alright.
it runs at 60 fps in some areas (well, 59.5 but it's almost the same) but in ship deck it drops at under 50 fps and the sprites start to glitch themselves. It still runs at a nice playable speed so no complains here
I think blargsnes runs it at 60 fps, but the music plays so slow to even enjoy it while playing the game doesnt run at a stable fps on snes9x_3ds but at least the music depends on the game speed itself (if it is running at 59.5 fps the musics sounds like it should sound)There's something that I also wasn't considering, BlargSnes uses frame skip in some areas to keep the speed as fast as possible.
The basis for the hardware-rendered Mode 7 is actually quite simple. Mode 7 is just a 1024x1024 layer that is scaled/rotated, and adjustable per scanline, so represent this as a texture buffer, then use it as a texture source per scanline to render to the buffers that you would do normal rendering of backgrounds. As to rendering to this large texture buffer in the first place, it requires some adjustments, because the 3DS has an issue with rendering to a destination that uses a window greater than a 1023x1016 (width greater than 1023 causes no polygons to be rendered, and height greater than 1016 causes the GPU to hang). So, render with a window area of 512x512 for each corner, and assign a polygon list for each that contains static coordinates, that only changes with regard to what tile is shown in each slot (which could be done when writing to SNES VRAM).
Now, there are additional settings for Mode 7, but first focus on the regular Mode 7 format first. I'm sure you've looked over blargSNES's code, so you should be able to see how I implemented Mode 7 there.
Hi DiscostewSM,
Thanks for the heads up. The 1024x1024 view port limitation is quite shocking... I had a look at BlargSNES. Correct me if I am wrong, but you did it in a slightly different way I suppose. You actually ray-traced every scan line to see which tiles you hit, and then you cache those tiles in software into the large texture?
Instead of doing the four corners, I think it might be better to divide the entire 1024x1024 into 4 vertical strips, each addressed by a 512x512 view port. Fortunately, since all the 8x8 tiles of the texture are morton-interleaved but the tiles themselves are laid out in sequence, this actually makes things slightly easier.
To the rest, yes I know there are teething issues. Let me have some time to work out mode 7 and the other kinks. Thanks to everyone who helped feedback on the games that don't boot!
I think you're looking at an old method I used for hardware rendered Mode 7. Before, it traced what tiles would be visible according to how the layer was set, which is slow when the layer is zoomed out. The method I spoke about involves rendering a pre-made list to the 4 corners of what is to be the Mode7 layer texture (doing 4 corners because of the limitations of the 3DS hardware), then using that layer for the actual rendering to the screen, where zooming in or out won't have nearly an impact on performance. My new method also optimized a little, rendering to this big buffer only if the corner to be rendered has changes made (whether by the tilecels themselves, or the tile map).