Jump to content
IGNORED

Stella 3.6 released


stephena

Recommended Posts

The thing I'd want to see most (in relation to the filters) is a lot LOT of configuration options. Perhaps a separate control panel. The more options the better. And of course a button to bring it all back to default if it gets out of hand. Perhaps some extra phosphor smearing & trailing on moving objects. Like them activision box art pics. But of course not as much! But overall I think it looks pretty good already. A really nice job you're doing on this.

Link to comment
Share on other sites

Blargg filtering consists of 10 adjustable settings (brightness, contrast, gamma, etc). There will be a UI exposing this, allowing you to create your own personal 'custom' filter. In fact, it's already done; I just haven't released a binary, because the actual release will be (hopefully) coming the end of this week.

 

I'm still working on emulating the current phosphor effect in OpenGL. This will simply be blending of the current frame with the previous frame, to cut down on flicker (like on a real TV, where the old image is 'ghosted' by the phosphors for a while). I can say for sure that whatever I get done by the end of the week will be the first pass only; more improvements will have to wait until later. In particular, different scanline patterns will have to wait (vertical vs. the current horizontal, stepped, etc).

 

There are also some other things that were in the original CRT effects code. I've removed all that, since it was very resource-intensive, but there's a few good ideas there that I want to bring back when I get the time.

Link to comment
Share on other sites

Fantastic! Commercial software developers could learn a thing or two by following how well some of these "homebrew" projects are run.

 

I'm still working on emulating the current phosphor effect in OpenGL. This will simply be blending of the current frame with the previous frame, to cut down on flicker (like on a real TV, where the old image is 'ghosted' by the phosphors for a while).

 

Perhaps we can control intensity and number of frames or persistence time? IDK, just a suggestion.

Link to comment
Share on other sites

Intensity is simply the blend level, which is already there (it defaults to 77%, so 77% of the resulting image is from the current screen, and 33% from the old screen). So this is already adjustable. As for persistence, it only (currently) looks at two frames, because that's all the emulation core keeps track of. I need to think about this stuff a little more, which is why anything beyond blending two frames is being pushed to a future release.

Link to comment
Share on other sites

I've run into some slight problems with blending for the phosphor effect, and it's likely I won't have the release ready for this week. So it looks like it will be towards the end of the month after all.

 

I don't know why I worry about meeting arbitrary release dates anyway, when I have complete control over when to do the release. I always end up causing myself more stress than from anything else. Anyway, there are more slightly invasive changes that have to be made, and since I'm not sure how it will impact performance, it will require a new round of testing, etc. I'll get back to you when I have more info.

Link to comment
Share on other sites

I don't know why I worry about meeting arbitrary release dates anyway, when I have complete control over when to do the release. I always end up causing myself more stress than from anything else.

 

I think end users get more jumpy and clingy about release dates when the developer (usually by necessity) is distant. You've always been very responsive and communicative - even when a question isn't directly posited to you.

 

I've never been concerned with Stella release dates. It's always like getting a surprise gift when a new release comes out :P

Link to comment
Share on other sites

OK, I've run into a bit of a conundrum. To get phosphor mode working with TV effects, I need to use a 32-bit framebuffer for alpha-blending. Problem is, the current code uses a 16-bit framebuffer, which tends to be quite a bit faster (the reason I initially chose it). So I'm providing a new test release that uses 32-bit instead of 16-bit. On my system, it does result in more CPU usage, which makes sense, as there's now twice as much data moving around.

 

So my issue is, do I stick to 16-bit and faster speeds, but lose phosphor mode with TV effects (which admittedly, is exactly where phosphor needs to be), or move to 32-bit and get all the goodies, but with a potential slowdown on older computers?

 

So here is the latest release. Please test thoroughly , particularly on older, slower systems. Also, try switching your desktop from 16-32 bit mode and vice-versa to see if it makes a difference.

Link to comment
Share on other sites

Haven't had a chance to test it yet Stephen but my preference would be be switching to 32-bit and keeping the phosphor effects - I love what you've done with the Blargg filters (I liked the old ones too) - playing with a Stelladaptor feels almost like the real thing :) Thanks for all your hard work!

Edited by Aegis
Link to comment
Share on other sites

I just found out it may be possible to get alpha-blending in 16-bit mode by using 4 bits per component. That means there would only be 16 levels of red, green, blue and alpha. So, 4096 different colours and 16 levels of phosphor. I'm not yet sure if (a) this is actually faster, and (b) it will look nice. Going 32-bit solves all these problems, but introduces the speed issue.

Link to comment
Share on other sites

Here's a better organized performance report.

 

Can't seem to get the phosphor working when I have tv effects on. Phosphor toggles on/off fine if I disable tv effects. It may be that phosphor is on, but the hardware is not capable of doing it at a speed that makes a difference?? But there is no slowdown of the emulator either.. And there seems to be CPU power to spare.

 

HARDWARE SPEC

According to my tests, a nicely optimized XPsp3 setup with the most shittiest graphics card possible - Intel Integrated EXTREME GRAPHICS (82855GM) running at 266 MHz and sharing 32-64MB of system ram, and a Pentium 4m (Dothan, 2M L2 cache, 400MHz FSB, 1.7 GHz) 2GB DDR2 266 DRAM.

 

MONITOR

56.3KHz horizontal and 70.0Hz vertical, analog vga input

1600x1200 native - Stella testing at 1024x768x32 desktop

 

STELLA SETTING

On the 3.7.2 testing I had SLEEP, LINEAR, Zoom3X, Fullscreen Res Auto, GL FS Stretch on, GL Vsync on, Output freq 31400, TIA freq 31400, Sample size 512.

 

GRAPHICS CARD CONTROL PANEL SETTING

Graphics card settings were 1024x768x32 desktop, Triple buffer, Flipping policy FLIP, Depth Buffer Bit Depth 24, FXT1 & S3TC texture compression off, Texture color depth 32, Asynch flip off, ansio filter app control.

 

Minimum CPU MHz needed to maintain what appears (and sounds) like 100% performance

TV effects off 800 MHz - 850 MHz

TV effects on 1100 MHz

 

With similar settings on 3.6.1, I can go as low as 200-300MHz cpu speed before I see a slowdown.

I can eco clock this system from 1700MHz down to about 10MHz (no typo).

Note that the only variable I've changed is the cpu speed, the bus speed and everything else is running steady and doesn't vary with cpu speed.

Edited by Keatah
Link to comment
Share on other sites

Thanks for the reports. I should have been clearer. Phosphor mode isn't working with TV effects at all yet. I have to move to a 32-bit framebuffer in Stella to enable it, and that's what this release was for; to test general 32-bit performance. If it is acceptable, then I can look into implementing phosphor mode. Otherwise, I have to think about another way forward.

 

I still haven't tracked down the problem with a performance drop from 3.6.1 to 3.7. I'll try to get it sorted before 3.7 is released, otherwise it will have to wait until 3.7.1.

Link to comment
Share on other sites

So this version is 32-bits then!! Cool. I should have read more.. Well. Like I say, this system was made in 2003/2004, so it's effectively a 10-year old Centrino design. This still has some headroom!! Not Max, but enough. I would guess about 500MHz to spare..

 

For me, on this particular system, 32-bit testing seems fine.

 

By very carefully playing with the Triple Buffering, Vsync, and Flipping Policies, one can take a very VERY marginal system and make it work. And I can see those settings making a difference if I run it 800MHz. But really, if you're running an 800MHz rig, it's time to upgrade!

Edited by Keatah
Link to comment
Share on other sites

stephena,

 

I would test, but think the point is moot with a i7 2600K processor @ 3.4GHz running Win 7 64-bit

Obviously, I am all for going 32-bit. :D

 

This is actually my main development system as well (2600!), except I'm using 64-bit Linux. I agree it's useless to test on such a machine. Before I made any changes, Stella was using 1% CPU. And after every addition I make, it's still using 1%. That tells me that real usage is actually much less than 1%.

 

But I've learned over the years never to base a release on what a development system can handle, since those systems are usually much more beefy than end-user machines. I think this is a lesson quite a few developers could learn :)

 

Anyway, I'm taking the next few days off, since it's a long weekend here in Canada. Keep the feedback coming, and I'll think about how to proceed with this ...

Link to comment
Share on other sites

Let me tell you this has been the first time in 34 years that I've seen Slot Racers and Basic Math look this good! Had them going on the big screen and everything. Math Grand Prix looks awesome too!

 

And for the first time since the last time I played it, Video Pinball, I tweaked the colors to be exactly like our old Chromacolor II from Zenith! What an absolute thrill !!

Edited by Keatah
Link to comment
Share on other sites

In continuing to test this on low-end systems.. I tried this:

 

PIII @ 1,400Mhz w/256k on die L2 cache and 100MHz FSB

1GB RAM 100MHz bus

intel 440BX chipset on abit motherboard, ISA/PCI

Geforce-4 AGP 2x/4x 128MB

WinXP pro sp3

Soundblaster 64 awe gold ISA

1920x1200 desktop

 

And it was a-struggling. Smooth, and steady, but definitely falling below 60fps. Turning off the effects bought speed up a little. But definitely not full speed. I don't know the exact FPS.

 

I suspect it is either the slow bus speed, or that the PIII lacks some instructions.

 

Now back to playing Flag Capture..!

Link to comment
Share on other sites

I will see about testing it on a core duo, 2.2ghz with 945GM integrated graphics. I suspect everything will work fine.

It seems safe to say that anything p4-class at 1100MHz and up will work fine. P3-class is probably not enough, but I will investigate the setup to be sure everything is in order.

 

Testing on i3, i5 i7 is probably pointless unless they are shit systems badly configured..

Link to comment
Share on other sites

I just can't believe the beautiful saturation and correct colors I got with just teensy-weensy adjustments. Hot shit! I believe VCS emulation has arrived in style..

 

Yes, I am losing points & reasons to keep my CRT TV with this level of TV simulation...

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