Jump to content
stephena

Stella 6.5 released

Recommended Posts

So, it's time for the "Christmas" release of Stella.  Unfortunately, real life got in the way (as it sometimes does) and we missed the scheduled date.  As well, we weren't able to add all the things we were planning.  But enough apologizing, let's look at what was included.  Note that there were a lot of under-the-hood changes here, so even if the changelog looks relatively short, a lot of work/bugfixing was done.  One of the biggest new backend changes is moving the settings to an SQLite database.  Stella is getting much more complex, and having different settings (in different formats) all over the place was getting out of hand.  Another cool new feature is High Scores saving, even for ROMs that don't normally support it.  Finally, we extended the cut/copy/paste functionality in the UI a little further (more work to come).  So here's the changelog:

Quote

  * Added high scores saving.

 

  * Improved text editing functionality (except PromptWidget):
    - Enhanced selection and cut/copy/paste from keyboard.
    - Added undo and redo support.
    - Added mouse support (selection, cut/copy/paste).
    - All actions have keyboard shortcuts.

 

  * Various improvements to the ROM launcher:
    - Added wildcard support to the dialog filter
    - Added option to search subdirectories

 

  * Added static tooltips to some UI items.

 

  * Added dynamic tooltips to most debugger items.

 

  * Added sound to Time Machine playback.

 

  * Added browser dialogs for user saved files.

 

  * Extended global hotkeys for input devices & ports settings.

 

  * Moved to using an SQLite database for storing user settings, properties and highscores.  More work will follow in future releases.

 

  * Increased sample size for CDFJ+.

 

  * Fixed autofire bug for trackball controllers.

 

  * Fixed bug in TV autodetection in filenames; a filename containing 'PAL' inside a word would sometimes misdetect as a PAL ROM.

 

  * Fixed Stelladaptor/2600'daptor devices sometimes not being assigned correct default mappings.

 

  * Codebase now uses C++17 features, which means a minimum of gcc7 or clang5 for Linux/Mac, and Visual Studio 2019 for Windows.
 

As usual, Stella can be downloaded at https://stella-emu.github.io/downloads.html, and donations are welcome at https://stella-emu.github.io/donations.html.  Note that we're still working out some last minute issues with the R77 port, so that one will come later this week.  Bugs can be reported here, or ideally by creating an issue at https://github.com/stella-emu/stella/issues.  Enjoy!

 

EDIT:  There are now builds available for Ubuntu 18.04 (previous LTS) and also Raspberry Pi OS 3/4, generously contributed by @SvOlli.  The download links have been updated accordingly.

  • Like 4
  • Thanks 7

Share this post


Link to post
Share on other sites

I didn't write this part, but I think it has to be activated manually.  So if you don't make use of the feature, no saves are done.

Share this post


Link to post
Share on other sites
Posted (edited)

I have no worries about card wear on the R77, the data saved is really minimal. And yes, you have to trigger the saving manually.

 

Which reminds me that I have to add a command for saving the current high score with R77...

 

 

Edited by Thomas Jentzsch

Share this post


Link to post
Share on other sites
3 minutes ago, Thomas Jentzsch said:

Which reminds me that I have to add a command for saving the current high score with R77...

Major new features always require a few point releases to 'bake' a little 😈

Share this post


Link to post
Share on other sites

As started in the ver6.4 thread, starting with post 87 - the Jakadapter (mimics Stelladapter) doesn't work

 

For both joysticks and paddles:

ver5.0.2 works

ver6.0.2 works

 

ver6.1 does not work

ver6.4 does not work

ver6.5 does not work

 

Share this post


Link to post
Share on other sites
8 minutes ago, fdr4prez said:

As started in the ver6.4 thread, starting with post 87 - the Jakadapter (mimics Stelladapter) doesn't work

 

For both joysticks and paddles:

ver5.0.2 works

ver6.0.2 works

 

ver6.1 does not work

ver6.4 does not work

ver6.5 does not work

 

There is code in Stella to specifically detect the Stelladaptor (and 2600-daptor too).  Basically, the idea was to make using those controllers as foolproof as possible, so we handle them a little differently.  If another controller advertises itself as being a Stelladaptor but doesn't work in exactly the same way, then it may cause issues.  This may be what we're seeing here.

 

EDIT:  Also, we're probably going to have to get such a device hands-on to be able to diagnose this.

Share this post


Link to post
Share on other sites
1 hour ago, Rodney Hester said:

Can high score saving be disabled?  That's not necessarily great for R77 (card wear).

Assume that a flash cell has something like 100000 good writes before it dies. Highscores are only a few kb, and a typical flash card in the R77 has a few GB free space that are used by the card's controller to arbitrate writes; that gives you another factor of at least 100000. So, as a rough estimate you can safely assume that you can save scores about 1E10 times --- that's more than seconds in an average human's lifespan. I think don't think you have to worry ;)

 

That said, it is as Stephen writes, you have to save manually, no scores are saved automatically.

  • Like 1

Share this post


Link to post
Share on other sites
18 minutes ago, stephena said:

There is code in Stella to specifically detect the Stelladaptor (and 2600-daptor too).  Basically, the idea was to make using those controllers as foolproof as possible, so we handle them a little differently.  If another controller advertises itself as being a Stelladaptor but doesn't work in exactly the same way, then it may cause issues.  This may be what we're seeing here.

 

EDIT:  Also, we're probably going to have to get such a device hands-on to be able to diagnose this.

That's all understandable.

 

Alternatively, if we assume this adapter doesn't work in the same way as a real Stelladaptor and if it could be discerned what changed between the various Stella versions to stop this adapter from working (not blaming stella here), then I may be able to reach out to the developer and get the firmware modified to better mimic the Stelladaptor.  It has been a few years since i've last spoken to him, but at that time he was quite willing to help me.  Also I can ask him to install 6.5 and test over there (Finland :))

 

On a side note: My project is largely for paddle games and I am using RetroPie.  The RetroPie version that I am using is using Stella 5.0.2 so things are working in my project.  it wasn't until I tested the adapter on my Win7 laptop with ver6.4 that I discovered it wasn't working in the newer versions. 

 

All the versions I listed in my last post were tested in Windows 7.

 

 

Share this post


Link to post
Share on other sites

Yep, it might not be the 'Stelladaptor' issue at all; it could just as well be a bug elsewhere.  But since a regular Stelladaptor is working and your device isn't, it sort of leads in that direction.  In any event, we will need to get a device to test ourselves.  Much easier to debug hardware compatibility issues when we have the device in front of us.

Share this post


Link to post
Share on other sites

My Jakadapter board layout is specially designed by me for my project.  But it uses the same IC and same firmware as the normal Jakadapter, and for now it is the only one that I have :( 

 

i have reached out to the developer for his input.

 

 

He is not an AA member

 

If I recall correctly, he is more into Vice and not so much in the 2600, so he may not have updated his stella in years.

 

Share this post


Link to post
Share on other sites

I'm going to look into this a little more (at least as much as I can without having access to the hardware).  I want to make sure that Stelladaptor support is working 100% for me.  It was the last time I tested, but there have also been a lot of code changes since then.

  • Thanks 1

Share this post


Link to post
Share on other sites

For the record: Between 6.0.2 and 6.1 the new mapping code was done.

 

@fdr4prez Can you try defaulting the inputs? Or have you done so already?

Share this post


Link to post
Share on other sites
43 minutes ago, Thomas Jentzsch said:

For the record: Between 6.0.2 and 6.1 the new mapping code was done.

 

@fdr4prez Can you try defaulting the inputs? Or have you done so already? 

I have not, but I never changed anything so one would think that it should be "default" already. 

 

Give me a few hours and I'll be able to do more testing 

Share this post


Link to post
Share on other sites
2 hours ago, DirtyHairy said:

Assume that a flash cell has something like 100000 good writes before it dies. Highscores are only a few kb, and a typical flash card in the R77 has a few GB free space that are used by the card's controller to arbitrate writes; that gives you another factor of at least 100000. So, as a rough estimate you can safely assume that you can save scores about 1E10 times --- that's more than seconds in an average human's lifespan. I think don't think you have to worry ;)

 

That said, it is as Stephen writes, you have to save manually, no scores are saved automatically.

I'm still using the included 128MB card.  ;)  There's very little arbitration going on.

 

Assuming you're writing to a DB, tho, every changed block will be rewritten...and depending on where in the flat-file DB representation that lay, it could very well be most of it.  I imagine it still isn't *that* much data, but it's not about the data, just changed blocks.  😃

Share this post


Link to post
Share on other sites
3 minutes ago, Rodney Hester said:

Assuming you're writing to a DB, tho, every changed block will be rewritten...and depending on where in the flat-file DB representation that lay, it could very well be most of it.  I imagine it still isn't *that* much data, but it's not about the data, just changed blocks.  😃

This functionality already essentially defaults to 'Off'.  Don't use it, and it won't save data.  So there is no point adding an option to disable it.  It is already disabled (and no writes happen) unless you specifically use it.

  • Like 1

Share this post


Link to post
Share on other sites
1 hour ago, Rodney Hester said:

I'm still using the included 128MB card.  ;)  There's very little arbitration going on.

 

Assuming you're writing to a DB, tho, every changed block will be rewritten...and depending on where in the flat-file DB representation that lay, it could very well be most of it.  I imagine it still isn't *that* much data, but it's not about the data, just changed blocks.  😃

Smaller cards usually have smaller blocks. 

Share this post


Link to post
Share on other sites
4 hours ago, fdr4prez said:

That's all understandable.

 

Alternatively, if we assume this adapter doesn't work in the same way as a real Stelladaptor and if it could be discerned what changed between the various Stella versions to stop this adapter from working (not blaming stella here), then I may be able to reach out to the developer and get the firmware modified to better mimic the Stelladaptor.  It has been a few years since i've last spoken to him, but at that time he was quite willing to help me.  Also I can ask him to install 6.5 and test over there (Finland :))

 

On a side note: My project is largely for paddle games and I am using RetroPie.  The RetroPie version that I am using is using Stella 5.0.2 so things are working in my project.  it wasn't until I tested the adapter on my Win7 laptop with ver6.4 that I discovered it wasn't working in the newer versions. 

 

All the versions I listed in my last post were tested in Windows 7.

I've tested original Stelladaptor, original 2600-daptor, and several 2600-daptor D9's.  All are working fine in paddle mode.  I also have a 2600-daptor-II, but it's currently flashed to be an AVox-USB adaptor.  But I have no reason to suspect it wouldn't work either.  So something else is going on here.

 

We're still working on some paddle issues in R77 port, so maybe we'll find something there that is related to this??

Share this post


Link to post
Share on other sites
2 hours ago, Thomas Jentzsch said:

For the record: Between 6.0.2 and 6.1 the new mapping code was done.

 

@fdr4prez Can you try defaulting the inputs? Or have you done so already?

 

1 hour ago, fdr4prez said:

I have not, but I never changed anything so one would think that it should be "default" already. 

:dontknow:

 

1 hour ago, fdr4prez said:

Give me a few hours and I'll be able to do more testing 

^^^^slacker^^^^

 

:smashfrea

 

Well time has past and I was able to get back to the testing.

 

While time was passing, I remembered similar requests and fixes were mentioned in the R77 thread, so I started getting hopeful for me here

 

I opened Stella 6.5 and I went into every option screen and clicked the Default button.

 

On a couple screens i saw some things change that I know I never changed in the first place, but once i did all that the Jakadapter started working - but not completely.

 

Stella 6.5 is accepting input from both joystick ports, but the emulator is treating them both as Left.

 

Tested both joystick games and paddle games.

 

So both are left ports?

image.thumb.png.2225ee470f0ed4749d189df92ea39bdd.png

 

Left show J0:

image.png.1148bc7bd0ac5d5aae7b4ea4f0b0da0a.png

 

 

When I look here, there is no right:

image.png.cde64e896824a7e0d07a364660d3f508.png

 

This is not happening in Stella 5.0.2

 

How do I map the Right to J1?

Share this post


Link to post
Share on other sites
3 hours ago, fdr4prez said:

My Jakadapter board layout is specially designed by me for my project.  But it uses the same IC and same firmware as the normal Jakadapter, and for now it is the only one that I have :( 

Can you open the joystick control panel in Windows and give me all the info you can find?  In particular, I'd like to see exactly what the USB name is for this device.

Share this post


Link to post
Share on other sites
3 minutes ago, fdr4prez said:

I opened Stella 6.5 and I went into every option screen and clicked the Default button.

 

On a couple screens i saw some things change that I know I never changed in the first place, but once i did all that the Jakadapter started working - but not completely.

Open Windows Explorer.  Go to %APPDATA%/Stella and delete (or rename) the stella.sqlite3 file.  This is where all settings are stored.  If you remove it, Stella starts up in a completely fresh state.  Then tell us if anything has changed.

Share this post


Link to post
Share on other sites
17 minutes ago, stephena said:

Can you open the joystick control panel in Windows and give me all the info you can find?  In particular, I'd like to see exactly what the USB name is for this device.

image.png.78de78ca35b3c811b6476734d304b027.png

 

image.png.847108c20bc2cc11bc36ed12e218e64a.png

 

 

image.png.91c7fa64ecddca4a5253b841c5f440d6.png

 

Going through the properties of each of those is possible, but that's a lot of screenshots.

 

I did find this in there:

image.png.38cf6ab4c9fc54acec35c5e025f5e89a.png

Share this post


Link to post
Share on other sites

Deleting another double post - I click "submit reply" once, but there is still a double post - odd

Edited by fdr4prez

Share this post


Link to post
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.

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...