Views: 1,609,351 | Main | Rules/FAQ | Memberlist | Active users | Last posts | Calendar | Stats | Online users | Search | 11-21-24 04:55 PM |
Guest: |
0 users reading blargSnes -- SNES emulator for the 3DS | 2 bots |
Main - Homebrew projects - blargSnes -- SNES emulator for the 3DS | Hide post layouts | New reply |
O-bake |
| ||
Newcomer Normal user Level: 5 Posts: 2/3 EXP: 299 Next: 230 Since: 10-28-15 Last post: 3223 days ago Last view: 2991 days ago |
Posted by StapleButter Honestly, I don't know. But retroarch gets optimized system-specific. It is running on a several systems with quite different hardware (Mac/PC, PS3, Wii, iOS, PSP, 3DS...) So there have to be very specific optimizations. However, I am not involved in the project. I am just an enthusiastic user. For progress regarding the 3DS port I follow this thread: https://gbatemp.net/threads/retroarch-emulation-thread-nightly-builds-included.400913/ As far as I know, the user 'aliaspider' is doing the main work for the 3DS port right now and asks for feedback a lot in this thread. (n.b.: the thread was restarted a few days ago and there is a 200+ page older thread in the forums). |
StapleButter |
| ||
Member blarg Level: 30 Posts: 140/184 EXP: 151362 Next: 14507 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2559 days ago |
zerp, there's actually concurrency to blargSNES now, gotta catch up ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
Bitzkrieg |
| ||
Newcomer Normal user Level: 5 Posts: 1/4 EXP: 460 Next: 69 Since: 10-29-15 Last post: 3145 days ago Last view: 3063 days ago |
Posted by StapleButter Is good to see that you're back! also regarding retroarch, is being ported to the 3DS in general so, snes cores only runs good on N3DS, in O3DS runs like shit lmao but perhaps that those emus are very good (also, snes cores has special chips implemented) |
aliaspider |
| ||
Newcomer Normal user Level: 5 Posts: 1/3 EXP: 299 Next: 230 Since: 10-29-15 Last post: 3308 days ago Last view: 3299 days ago |
Posted by StapleButter keeping the cores platform independent is certainly the highest priority, but there is nothing preventing ASM or non-portable code from being added for specific platforms or cpu architectures, by keeping it inside preprocessor directives and/or seperate files. it is in fact encouraged to do so when it brings a noticeable gain in performance, especially for weak platforms like the 3DS or PSP. ideally, asm code should also be accompanied by the equivalent C code, and gpu accelerated renderers should also have a software renderer variant. this isn't a rule however, just a goal, a lot of core, like pcsx-reARMed for example, started as platform specific and only later became usable on a wider range of platforms. there is even a core currenlty that is only usable on the PSP, which can hopefully be made more portable at some point. |
StapleButter |
| ||
Member blarg Level: 30 Posts: 141/184 EXP: 151362 Next: 14507 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2559 days ago |
The hardware renderer in blargSNES does have its software equivalent, although they aren't really equivalent (hardware got features that software still lacks, and on the other hand hardware fails at things like midframe palette changes, etc).
The ASM parts however, well, only exist in ASM. The emulator was originally written for the DS so it was important to get it fast (and on the 3DS, it still counts). ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
aliaspider |
| ||
Newcomer Normal user Level: 5 Posts: 2/3 EXP: 299 Next: 230 Since: 10-29-15 Last post: 3308 days ago Last view: 3299 days ago |
it is perfectly fine to make an ARM only core, and there is no obligation whatsoever to make it portable later.
there is already a wide range of devices that could benefit a lot from this, like cellphones, arm boards and the ps-vita for example. |
StapleButter |
| ||
Member blarg Level: 30 Posts: 142/184 EXP: 151362 Next: 14507 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2559 days ago |
Indeed.
Now, most of these devices are powerful enough to run a Snes9x port, so... dunno. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
AliTheAce |
| ||
Newcomer Normal user Level: 6 Posts: 5/6 EXP: 855 Next: 52 Since: 08-17-15 Last post: 3305 days ago Last view: 3137 days ago |
Posted by StapleButter Would the new GPU API, DSP service, and the SPC700 timing fix get rid of some problems, like blackscreens after fading away? Eg: In FF3 (US), the game black screens when I go to sleep in a bed. I'm unable to wake up. (I have a save file played up to a certain point). Similarly, in Chrono Trigger, certain cutscenes cause blackscreens when they fade away, eg the Courtroom scene, and the screen does not wake up. The emulator is responsive, but the game does not respond. If it matters, I'm using an O3DS on 9.9.0-26U, with Ironhax 2.1 |
javito |
| ||
Newcomer Normal user Level: 3 Posts: 1/1 EXP: 57 Next: 71 Since: 10-31-15 Last post: 3309 days ago Last view: 3248 days ago |
the 1.3b posted on the oficial blargSNES download page does not have a cia to install it, can someone provide me with a link? cause the 1.3b that is in one on the previous pages everytime i install it and run it, doesnt work cause my 3ds hangs, iv tried to uninstall it and install it again but still the same, does anyone have any solution for this? |
aliaspider |
| ||
Newcomer Normal user Level: 5 Posts: 3/3 EXP: 299 Next: 230 Since: 10-29-15 Last post: 3308 days ago Last view: 3299 days ago |
Posted by StapleButter the ARM optimized code, and the fact that it has a fully working hardware accelerated renderer, even if it is limited to the 3DS currently, makes it quite competitive imho. |
StapleButter |
| ||
Member blarg Level: 30 Posts: 143/184 EXP: 151362 Next: 14507 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2559 days ago |
Well, feel free to try making a libretro port if you want, I don't really have interest into that atm though.
In other news, trying to address the timing issues for release 1.4. I'm getting there, but not quite yet. I got Soul Blazer to run, and DKC2 seems stable too. FF games are still giving me trouble, though. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
Spacechipbeta |
| ||
Newcomer Normal user Level: 3 Posts: 1/1 EXP: 57 Next: 71 Since: 11-04-15 Last post: 3305 days ago Last view: 3302 days ago |
Posted by StapleButter Hello man, First of all, thanks for your amazing work. Now, can you please could test with Super Bomberman? It is all good? Thanks again, man! Keep the great work. |
AliTheAce |
| ||
Newcomer Normal user Level: 6 Posts: 6/6 EXP: 855 Next: 52 Since: 08-17-15 Last post: 3305 days ago Last view: 3137 days ago |
Posted by StapleButter I see. Thank you for your hard work. May I ask which FF games are giving you trouble? So far, only FFIII/FFVI are giving me trouble, with the fading black screens, and minor slowdown when a battle starts. What is the part which prevents the emulator from drawing the textures and sprites after going to sleep in FFVI/III? Does it have something to do with the GpuFlush code, or is it SPC700 timing? |
StapleButter |
| ||
Member blarg Level: 30 Posts: 144/184 EXP: 151362 Next: 14507 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2559 days ago |
dunno about others, I'm working on FF6
there's that timing issue with SPC data upload that causes garbled sound, but it's unrelated to the freeze on the plus side, I found why it freezes: there's a tight loop polling $4210, waiting for a NMI. The trick is that the NMI flag there is reset as soon as you read it. The game also has a NMI handler that also reads that register. In blargSNES, the NMI handler is executed before the loop code has a chance to catch the NMI bit in $4210, because the NMI is instant. Thus the loop never ends. This clearly means there should be a delay between the time where the NMI flag is set, and the actual NMI. Fullsnes is unclear about it though. Edit- yep. Quick test, delaying the NMI by one instrction, a really ugly hack. FF6 doesn't freeze. The sound is all earrape garbage though. (and the same little hack breaks DKC2) I need to write a proper scheduler, I guess. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
coto |
| ||
Member (u32)(0xffff & (~0x3f8f)) Level: 11 Posts: 12/19 EXP: 4879 Next: 1106 Since: 05-23-15 From: chili Last post: 2962 days ago Last view: 2960 days ago |
Nice find. Some blackscreens are by unimplemented banked interrupts of some nature (external chip latching the source counter) which happen synchronously/asynchronously by the time the CPU access that register.
ie the source interrupt latch happens once the CPU access the register once, against the source interrupt latch regardless CPU access. (effectively causing the CPU to enter IRQ/NMI mode when desired) |
StapleButter |
| ||
Member blarg Level: 30 Posts: 148/184 EXP: 151362 Next: 14507 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2559 days ago |
The proper scheduler will be the big thing for 1.4. Any hardware renderer improvements are going to be postponed for a while, giving time to think about good improvements for it. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
JulianDN |
| ||
Newcomer Normal user Level: 5 Posts: 1/4 EXP: 459 Next: 70 Since: 11-12-15 Last post: 3258 days ago Last view: 3272 days ago |
Hello, I don't understand where to put the files from the 1.3b version. Could anyone explain this to me? |
vernacular |
| ||
Newcomer Normal user Level: 4 Posts: 1/2 EXP: 162 Next: 117 Since: 11-15-15 Last post: 3292 days ago Last view: 3292 days ago |
Posted by JulianDN As far as I know, the .3dsx file in the 1.3b zip only works with Ninjhax. So if you aren't using Ninjhax you cannot use 1.3b. Which brings me to this thread. Please add a .cia to the zip for 1.3b. Regardless, keep up the great work. Although the sound becomes sluggish at times, it looks really good with 1:1 ratio & a custom border. |
TecXero |
| ||
Newcomer Technovert Level: 7 Posts: 1/7 EXP: 1062 Next: 386 Since: 11-16-15 From: Mainframe Last post: 3171 days ago Last view: 3171 days ago |
Posted by vernacular From my understanding, 1.3b is just a minor fix for the newer versions of Ninjhax, since 1.3 didn't work properly under newer Ninjhax versions. Nothing else has been changed as far as I know. |
vernacular |
| ||
Newcomer Normal user Level: 4 Posts: 2/2 EXP: 162 Next: 117 Since: 11-15-15 Last post: 3292 days ago Last view: 3292 days ago |
Posted by TecXero If that's the case, my mistake. I thought there were more changes than just a fix relating to NinjHax. |
Main - Homebrew projects - blargSnes -- SNES emulator for the 3DS | Hide post layouts | New reply |
Page rendered in 0.023 seconds. (2048KB of memory used) MySQL - queries: 28, rows: 103/103, time: 0.007 seconds. Acmlmboard 2.064 (2018-07-20) © 2005-2008 Acmlm, Xkeeper, blackhole89 et al. |