Jump to content
IGNORED

Stella 6.0 released


stephena

Recommended Posts

I will leave it to the libretro guys that ported Stella to that platform to decide whether they want to use Stella's internal TV effects (as they currently do), or use their own.  AFAIC, my main task is to make sure that the emulation core and related stuff can be interfaced on their end, and that changes on our end don't break on theirs.  Beyond that, I honestly don't think I'll have the time to learn how libretro works in detail, and maintain a separate port.  The reason I can maintain Linux/macOS/Windows/R77/etc myself is because it's all basically the same app.  RetroArch changes this significantly, so I'll have to lean on their developers to extend for that platform (once we get the basics working, of course).

  • Like 2
Link to comment
Share on other sites

No problem it makes perfectly good sense.  The only reason I brought up the weird display is because to me ( as someone who has worked with emulator ports to the xbox ) that the pitch value was off when copying over to the destination systems video buffer.  And I was hoping to get input from you regarding that.

 

But I'll report the issue to them for them to figure out.  Libretro has a lot of options that have the potential to interact in all kinds of crazy ways.  The threaded video has got to be one of the stranger things I've seen.  That being said.  I was able to go into the libretro options and "disable" Bilinear filtering.  So things are ALMOST functioning the way they should AND I'm getting 60fps.  So I'm a happy camper for now.  It's really great to see how good these DPC games are.  I've put off checking them out for a few years now.

 

Link to comment
Share on other sites

Yep, should have mentioned right off the bat that it looks like a pitch mismatch.  However, I still don't see how multi-threading could be influencing that.  Best to run it by the libretro people, as you say.

Link to comment
Share on other sites

On 6/29/2019 at 11:01 AM, Shannon said:

Hi there again.. Here is a screeny of what the libretro version that someone compiled for me looks like with the TV effects turned off.

 

Wizard_Of_Wor_Arcade_20181115-180901-161852.thumb.png.3d424d2960b6714ebc636db3f5ae36f2.png

 

Turning a TV effect on corrects the image.  Unfortunately though the resources used by TV effect's slows down the frame rate on DPC based games.  My question for now is would this be considered a libretro issue?  Or a Stella Core issue?  Reading previous posts it sounds like the former.  In which case I would post a bug report over with the libretro guys?

Thanks.  :)

 

I believe this is now fixed in Github.  Please try a new build and see if it works for you.

Link to comment
Share on other sites

Hi sorry.  Tried it this AM and no luck.  The screen is still screwy if threaded video processing is turned off.  In fact it looks worse than from the previous ( botttom half of screen does not even show like in my previously shown screenshot ).  :(

 

Link to comment
Share on other sites

1 hour ago, Shannon said:

Hi sorry.  Tried it this AM and no luck.  The screen is still screwy if threaded video processing is turned off.  In fact it looks worse than from the previous ( botttom half of screen does not even show like in my previously shown screenshot ).  :(

 

The same also on the latest Android core...

Link to comment
Share on other sites

That pitch error bug looks a lot like one previously in snes9x libretro (android).

 

Solution was to create 4-byte aligned frontend buffer.

https://github.com/snes9xgit/snes9x/blob/52f521160a3fed88dcbf8050e41b3c4078fb04d4/libretro/libretro.cpp

 

 

Stella is doing that here.

https://github.com/stella-emu/stella/blob/master/src/libretro/libretro.cxx#L453

 

But the pitch needs to have the same value here.

https://github.com/stella-emu/stella/blob/master/src/libretro/libretro.cxx#L622

 

Which looks like it doesn't match.

https://github.com/stella-emu/stella/blob/master/src/libretro/StellaLIBRETRO.hxx#L84

 

 

If you fix above value, this might be a problem also; it's using a fixed-size framebuffer of 565x320.
https://github.com/stella-emu/stella/blob/master/src/libretro/FrameBufferLIBRETRO.cxx#L50

 

So I guess you'll have to manually expand the 565 to 568 every frame? Then send that copy to frontend?

https://github.com/stella-emu/stella/blob/master/src/libretro/StellaLIBRETRO.cxx#L304

 

Wonder how slow that'd be.

Link to comment
Share on other sites

Could someone try this commit on Android and PSP?
https://github.com/snes2600/stella/tree/libretro


Turns out, it wasn't much work and the speed hit is tiny for most machines. I suppose slower machines like Atoms could lose maybe 1.5 fps though.

 

 

edit:

Found an appveyor script for Android. Test builds will show here soon:

https://ci.appveyor.com/project/snes2600/stella/builds/25894283/artifacts

Edited by snes2600
appveyor script
Link to comment
Share on other sites

Thanks for the followup on this libretro stuff; I will try to get it integrated soon.

 

And now for something completely different: a shameless plug.  There is a Stella fundraiser (dubbed 'Stella-thon') happening tomorrow, July 12.  Info is available at 

Please consider a donation or making a bid on an item.

  • Like 3
Link to comment
Share on other sites

I want to say yes (32-bit aligned) but was waiting for any testers to confirm.


Found out that the Android test builds could not work because the file names must match the buildbot ones. They are rebuilt with correct names. Any Android testers to verify pitch bug?

https://ci.appveyor.com/project/snes2600/stella/builds/26044389/artifacts

Edited by snes2600
Link to comment
Share on other sites

Libretro buildbot does not have the full 32-bit alignment pitch fix. I haven't found anyone to test my appveyor build for Android and see if the picture gets fixed.

Was thinking of installing Android in a vm and see if that goes anywhere. Currently sidetracked trying to backport libretro to Björn Spruck's Handy fork (Atari Lynx); keep everything in 1 nice repo.

Link to comment
Share on other sites

ok.

But it says Stella 6.1 Beta2 39feee8 when I load it unlike the normal builds the modmyclassic guys release which say 3.9.3 6f4ba25.  The last build where Stephena attempted to fix it it also said Stella 6.1 Beta2 and the crc number was the same as the "commit" id on the github.  Also the date of the ".so" file on that site I linked only updates when changes are made ( AKA the build bot did not pick it up until the day you created your release ).  So I'm pretty sure that one is it.  But I have no way of confirming other than the crc number and version number it kicks out.

 

Edited by Shannon
Link to comment
Share on other sites

https://github.com/stella-emu/stella/commits/master

Checked history log but don't see any commit where the entire framebuffer is 32-bit aligned.


https://github.com/stella-emu/stella/commit/daf4c0e71511c38008ddd38222dca0507744064d

This one is not a full fbo alignment and likely caused the picture to skew even harder.


https://github.com/snes2600/stella/tree/libretro

My repo looks like this and contains further alignment changes for testing. This isn't in buildbot.

Link to comment
Share on other sites

I'll try and see about running retroarch on my phone.  I couldn't do it on my old phone because it hogged way to much internal memory.  But my new phone should be able to handle it.  Once I have it running I'll try the version that you provided in the link.

 

Edit:

 

Update.. You're going to have to rely on someone else.  I tried to load both arm version on my phone and my retroarch shows "no core" loaded when I do so.  So unless I'm doing something wrong I can't get it to load.

 

Edited by Shannon
Link to comment
Share on other sites

@Shannon

1) Download latest Retroarch apk and install
http://buildbot.libretro.com/nightly/android/

2) Download snes2600 Stella appveyor core. Copy to Retroarch/downloads (no root needed)

3) Start Retroarch. Load core. Install core. Select Stella

4) If done correctly, it will show Stella but no git commit text

5) Try a game and pray a bit

Link to comment
Share on other sites

Thanks.  That did the trick.  For some reason I did not see the "Retroarch" directory there.  What I was doing was pointing the core emulator to another directory where I dropped the .so files.  When it did not work I was thinking that maybe it didn't have the rights to run it from any directory other than the APPS directory which at the time I thought was unavailable to me.

 

Everything appears to be in order with what is available on the appveyor core.  Whatever it going through the buildbot for PSC ( and apparently android? ) 1.77 Stella 6.1_beta2 39feee8 appears to be the older non-working version.  I'm not sure what it looks for to get the recent changes.  So at this point I have no way of testing on the PSC.  But the build you put on appveyor works fine on the android.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...