Jump to content
IGNORED

Testing the new Stella TIA core


stephena

Recommended Posts

Great! I'd meant to say something about those new fractional formats; I hadn't looked into edit support yet, so I was leaving the warnings there on purpose to remind me to take care of them :)

 

I changed Xcode to this, should that line wrapping also change to 2, or leave it at 4?

 

post-3056-0-41448700-1490388839_thumb.png

Link to comment
Share on other sites

A new pre-release is now available at https://github.com/stella-emu/stella/releases, which includes (among many other things) the new BUS/CDF bankswitching and ARM improvements from Spiceware. Also, state load/save is now working again, as is debugger rewind. The final release is probably forthcoming within a month.

  • Like 5
Link to comment
Share on other sites

  • 2 weeks later...

Thank you to everyone currently working hard on Stella 5.0 improvements.

(And everyone in the past who contributed!)

It is great to see known problem roms display correctly, and finding out about others with problems I didn't know about.

 

I haven't seen a mention if the new TIA implementation makes audio sound closer to the real hardware, but I would guess that it should.

 

I was was inspired to suggest a change, due to the pattern I saw, in Stella Debug Colors (which were hard to remember).

Started simple with "how about listing / showing the color, the object, and maybe the color name spelled out?"

Then I noticed it starts with P0 red, its missile M0 is orange, P1 is (kinda) yellow, M1 is green...

That's the spectrum! ROYGBIV - Red, Orange,Yellow, Green, Blue, "purple" (Indigo is dark purple, and Violet is light purple).

So for Debug Colors to make sense, change Ball to blue (B for blue), and Playfield was already Purple (P for Purple).

 

Then there's PAL Debug Colors and apart from a few matches, (starts with Red for P0), we made both match more closely.

Now anyone may more easily remember which object is which Debug Color.

Plus there will be a list/chart somewhere.

Maybe a tab, maybe shown in the TIA tab when Debug Colors are on?

 

NTSC / PAL Debug Colors, / game:

post-29575-0-43585200-1491547983_thumb.jpg post-29575-0-00022300-1491548000_thumb.jpg

post-29575-0-02311400-1491548611_thumb.png

 

  • Like 1
Link to comment
Share on other sites

I was was inspired to suggest a change, due to the pattern I saw, in Stella Debug Colors (which were hard to remember).

Started simple with "how about listing / showing the color, the object, and maybe the color name spelled out?"

Then I noticed it starts with P0 red, its missile M0 is orange, P1 is (kinda) yellow, M1 is green...

That's the spectrum! ROYGBIV - Red, Orange,Yellow, Green, Blue, "purple" (Indigo is dark purple, and Violet is light purple).

So for Debug Colors to make sense, change Ball to blue (B for blue), and Playfield was already Purple (P for Purple).

 

Then there's PAL Debug Colors and apart from a few matches, (starts with Red for P0), we made both match more closely.

Now anyone may more easily remember which object is which Debug Color.

Nice! I saw the commit for that last night and was wondering about it. I'm always forgetting which color is what, using ROYGBIV will make that easier to remember.

 

I'm currently 16 commits behind - Xcode won't let me pull them as I have "uncommitted changes" due to being in the middle of a major rewrite to CDF - most of the spec has changed to facilitate the new FastJump feature while maintaining the 2K size of the driver.

 

I suspect there's a way for me to get those commits, but haven't had time to look into it as I've been getting the house ready for company. Family's arriving tonight, we're taking the kids to see the Houston Art Car Parade tomorrow (though just as spectators this year). Cheech Marin's the Grand Marshal this year! I suspect NORML will be out in greater force than usual this year.

  • Like 1
Link to comment
Share on other sites

Thank you to everyone currently working hard on Stella 5.0 improvements.

(And everyone in the past who contributed!)

It is great to see known problem roms display correctly, and finding out about others with problems I didn't know about.

 

I haven't seen a mention if the new TIA implementation makes audio sound closer to the real hardware, but I would guess that it should.

 

Thank you! Audio is currently unchanged from the old implementation, but we have plans to hook up a new audio implementation once we've stabilized Stella 5. Initial work (based on work by Chris Brenner) on this was done by Steve more than one year ago, but he stopped as the new code was very difficult to integrate with the old TIA. Things should be much smoother with the new core.

  • Like 1
Link to comment
Share on other sites

I'm currently 16 commits behind - Xcode won't let me pull them as I have "uncommitted changes" due to being in the middle of a major rewrite to CDF - most of the spec has changed to facilitate the new FastJump feature while maintaining the 2K size of the driver.

 

No clue how to do this in XCode, but you can stash away your changes by doing "git stash". This essentially generates a patch from your uncommitted work, tugs it safely away and reverts it. You can then pull in the upstream changes and restore your stashed work by doing "git stash apply".

Link to comment
Share on other sites

Thanks! I did a quick search on Xcode "git stash" as well as Xcode "uncommitted changes" but haven't turned up a way to do a stash via GUI.

 

I did see mention of just doing that via command line for an older version of Xcode, suspect that still holds true. I'm only working in 2 files, so it'll be easy to make a backup of them before I try anything.

Link to comment
Share on other sites

There is a rebase.autostash option for git that will automatically stash/un-stash your changes when you pull and rebase. Is there some way to enable this option for Xcode?

 

Chris

Edited by cd-w
Link to comment
Share on other sites

I did see mention of just doing that via command line for an older version of Xcode, suspect that still holds true. I'm only working in 2 files, so it'll be easy to make a backup of them before I try anything.

 

Doing it from the shell should be fine, as long as you make sure that Xcode is not running (it observes the file system and might get confused by your files disappearing).

Link to comment
Share on other sites

  • 2 weeks later...

I just committed a major revision to CDF. CDF was drastically revised to make space for, and implement, the new JMP FASTJUMP feature (you can read about that in this Draconian blog entry).

 

Music and Audio support are in place, though sound "off" so will need more work.

 

The revision is not backward compatible, so the prior CDF demos will no longer work. So here's updated demos for the new driver:

 

post-3056-0-62873700-1492981248_thumb.png

cdf0_fast.bin

 

post-3056-0-71811700-1492981252_thumb.png

cdf1_music.bin

 

post-3056-0-32076000-1492981256_thumb.png

cdf2_speech.bin

 

post-3056-0-42499500-1492981260_thumb.png

cdf3_fastjump.bin

  • Like 1
Link to comment
Share on other sites

Changes are now committed, but it looks like you attempted to do a merge a few times (not a big deal, it just makes the git history look a little messy). I can't reproduce the debugger crash. Try completely cleaning the project and building from scratch.

Link to comment
Share on other sites

Changes are now committed, but it looks like you attempted to do a merge a few times (not a big deal, it just makes the git history look a little messy). I can't reproduce the debugger crash. Try completely cleaning the project and building from scratch.

 

 

Something happened during my first commit attempt, Xcode acted like everything committed (it went through the motions and the Modified flags by the CDF files went away), but when I went to github to create the pull request the changes weren't there. I tried a couple things until they showed up.

 

I did try a CLEAN yesterday, didn't help. Just tried this:

  • Confirmed my repository matches Stella, github shows:

    This branch is even with stella-emu:master.

  • Source Control -> Discard Changes (had a couple minor comment changes in CDF)

  • Source Control -> Pull -> origin/master

    Xcode reports "LOCAL REPOSITORY UP TO DATE"

  • Product->Clean

  • Product->Build

  • Product->Run

Load any ROM such as Adventure, enter debugger, type command, crash. Not sure what to think at this point.

 

Edit: in case it matters, I'm using Xcode 8.1 (8B62) on macOS Sierra 10.12.4

Link to comment
Share on other sites

Crash happens in PromptWidget::addToHistory() at this line:

 strncpy(_history[_historyIndex], str, kLineBufferSize-1);

The _historyIndex has a value of 889370723, I suspect it should be 0 at this point as it's saving the very first command that was typed.

 

It also looks like PromptWidget was changed at the start of the month, and was part of the changes I applied to my machine last night. Perhaps something was introduced in that update? Maybe your compiler's automatically initializing variables to 0 while mine isn't?

 

 

Anyway, I made a change to initialize the index:

PromptWidget::PromptWidget(GuiObject* boss, const GUI::Font& font,
                           int x, int y, int w, int h)
  : Widget(boss, font, x, y, w - kScrollBarWidth, h),
    CommandSender(boss),
    _historyIndex(0),
    _makeDirty(false),
    _firstTime(true),
    _exitedEarly(false)
{

and Stella no longer crashes. Do you want to look into this anymore, or should I just submit it as a fix for Xcode?

Link to comment
Share on other sites

Updated BUS for digital sample support. No problem with commit this time - looks like I forgot to check this option (bottom-left corner of Xcode's Commit form) when I committed the CDF changes:

post-3056-0-58100600-1493127703_thumb.png

 

post-3056-0-26526600-1493127859_thumb.png

test0_stuff.bin

 

post-3056-0-74413600-1493127861_thumb.png

test1_music.bin

 

post-3056-0-43634000-1493127865_thumb.png

test2_speech.bin

 

post-3056-0-68515800-1493127868_thumb.png

test3_bigscroll.bin

 

post-3056-0-67895900-1493127872_thumb.png

test4_xevious.bin

  • Like 1
Link to comment
Share on other sites

Updated BUS for digital sample support. No problem with commit this time - looks like I forgot to check this option (bottom-left corner of Xcode's Commit form) when I committed the CDF changes:

 

Nice work - thanks Darrell.

 

Chris

Link to comment
Share on other sites

I'm still a bit confused about using GitHub. Whenever an update has been done in stella-emu/stella I do the following, which updates my local copy:

  1. Menu option Source Control->Pull...
  2. specify stella-emu/master

post-3056-0-79566800-1493569647_thumb.png

 

I then do the following, which updates my GitHub repository:

  1. Menu option Source Control->Push...
  2. take the default of origin/master

post-3056-0-26950700-1493569653_thumb.png

 

At this point my local copy is up to date, as is my GitHub repository, but I end up seeing "This branch is 8 commits ahead of stella-emu:master.". If I click on Compare I see "Showing 0 changed files with 0 additions and 0 deletions."

 

Is there something I should be doing at this point in order to make my branch even with stella-emu:master?

 

Link to comment
Share on other sites

Is there something I should be doing at this point in order to make my branch even with stella-emu:master?

 

I just checked out your repo and compared the SHAs of the master HEAD (that's the youngest commit) and it matches stella. As each SHA1 contains the SHAs of its ancestors, this gurantees that the branches are indeed identical. I am not sure what's going on with github's compare function; I think this might be just a bug. I'd ignore it ;)

Edited by DirtyHairy
Link to comment
Share on other sites

I've also learned how to use Github a little better over the past few weeks, and fixed some the issues in the process of merging. When you sent the merge request, it actually included 5 merges and then one commit for CDF changes. I figured out how to combine all these into one commit; just the CDF one. So now when you look at the commit history, you see only the CDF commit, just as it should be.

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