Jump to content



7

The future of the Stella emulator


79 replies to this topic

#76 stephena OFFLINE  

stephena

    Stargunner

  • 1,967 posts
  • Stella maintainer
  • Location:Newfoundland, Canada

Posted Wed Jul 20, 2011 11:52 AM

View Postthegoldenband, on Wed Jul 20, 2011 11:18 AM, said:

View Poststephena, on Wed Jul 20, 2011 5:13 AM, said:

I'll probably be moving to OSX Lion soon, which has a new version of Xcode. So the default-released version of Stella for OSX will be Intel-only, 32 & 64-bit. It will probably require either Leopard or Snow Leopard at minimum. However, unlike the case with Windows 98/2k, older versions of OSX/Xcode do have OpenGL, so I'll still do a PPC release (at least as along as I can keep Xcode 3.x working in OSX 10.7).
Since Snow Leopard won't run on PPC, you can definitely drop PPC support if Stella comes to require it! Leopard is viable, though I personally have stuck with Tiger since it's generally faster on PPC hardware.

Also, most configurations using Tiger or Leopard only support OpenGL 1.5 and below. You probably know all about this, but there's a handy chart on Apple's website that I found during the last month, and which finally clarified some of my confusion regarding OpenGL support on OS X. My PowerBook G4 will handle OpenGL 2.0 if I boot into Leopard (I normally run Tiger), but there's definitely a speed penalty if I run more than one or two of the graphics filters. So here too, if you'll be using anything that requires features from OpenGL 2.1 or higher, you can probably drop PPC with a clear conscience.
OpenGL 1.5 will be the minimum requirement. As I stated above, I may take advantage of 2.x features when available, but they won't be the baseline. The hardest thing with doing a PPC build is having the older version of Xcode work with OSX 10.7. As long as it keeps working, I can do a PPC release as I'm doing now, which is compatible back to Tiger.

Just to be clear, Stella doesn't depend on the version of OSX you're using; it's totally platform-independent. It depends on the Xcode development environment being available for newer versions of OSX.

#77 ScumSoft OFFLINE  

ScumSoft

    Moonsweeper

  • 331 posts
  • Location:Polysorbate 60

Posted Wed Jul 20, 2011 8:46 PM

There seem to be some inconsistencies in the way Stella and the real Harmony cart handle the DPC+ arm header code.

Stella I think is said to use it's own DPC+ routines and does a pretty good job getting things done, but bring the same DPC+ game onto the harmony and things start falling apart.

Is there a way to have stella ignore it's own internal DPCplus.arm routines and instead read the ones inside the games rom?
This would make DPC+ developing much nicer for all the new games coming out, as we could track down issues much quicker.

#78 littleman jack OFFLINE  

littleman jack

    Stargunner

  • 1,178 posts
  • One day I will build tube amps.
  • Location:Chattanooga, TN

Posted Wed Jul 20, 2011 10:44 PM

I hope you keep Stella around. It is a hobby for you, so don't stress too much. It works great as it already is now, so any changes you make are just icing on the cake. I use it with Linux and it works beautifully.

#79 batari OFFLINE  

batari

    )66]U('=I;B$*

  • 6,236 posts
  • begin 644 contest

Posted Thu Jul 21, 2011 12:58 AM

View PostScumSoft, on Wed Jul 20, 2011 8:46 PM, said:

There seem to be some inconsistencies in the way Stella and the real Harmony cart handle the DPC+ arm header code.

Stella I think is said to use it's own DPC+ routines and does a pretty good job getting things done, but bring the same DPC+ game onto the harmony and things start falling apart.

Is there a way to have stella ignore it's own internal DPCplus.arm routines and instead read the ones inside the games rom?
This would make DPC+ developing much nicer for all the new games coming out, as we could track down issues much quicker.
The Thumb emulation in Stella is very minimal - it is not cycle-accurate, has no concept of peripherals, the 6507's buses, or anything except a bit of shared RAM, and it runs separately from 6507 code.

The DPC+ code in Harmony is written in ARM assembly, which is significantly more complicated. Also, to run the actual bankswitch code would require cycle-accurate emulation that is intimately synced with, and runs parallel to the 6507/TIA, has proper hardware hooks to the 6507's buses, and emulates many of the chip's peripherals. Due to these difficulties, Stella and Harmony will need separate implementations of DPC+ for the indefinite future.

It might be a bit of a pain to have to change and build Stella every time I change DPC+ on Harmony, but it's far easier than the alternative for now.

#80 thegoldenband OFFLINE  

thegoldenband

    River Patroller

  • 2,470 posts
  • Location:Long Island, NY

Posted Wed Sep 28, 2011 5:07 PM

View Postthegoldenband, on Thu Jun 9, 2011 10:49 AM, said:

This reminds me of an issue I bumped into, namely that this "phaser" demo of mine, which sounds great on Stella (including the current version), didn't really work out on real hardware.

If your researches can help explain that, I'd be very interested, as it's pretty much beyond my technical ability to sort out what's going on. I assume it's got something to do with either the starting state of the TIA, or timing issues.
Sorry to threadbump, but I was just reading about someone else's struggles with a different sound chip (FM on the SMS) and it got me thinking about my issue. SeaGtGruff, did you ever happen to look into this? Or did anyone else? It's still beyond my skills to suss out exactly what's happening, but the effect just doesn't sound the same on real hardware.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users