mirror of https://github.com/stella-emu/stella.git
Precisely align scanlines with TIA scanlines.
This commit is contained in:
parent
e5159ca59c
commit
d0054b831d
|
@ -109,13 +109,6 @@ void TIASurface::initialize(const Console& console,
|
||||||
|
|
||||||
setNTSC(NTSCFilter::Preset(myOSystem.settings().getInt("tv.filter")), false);
|
setNTSC(NTSCFilter::Preset(myOSystem.settings().getInt("tv.filter")), false);
|
||||||
|
|
||||||
// Scanline repeating is sensitive to non-integral vertical resolution,
|
|
||||||
// so rounding is performed to eliminate it
|
|
||||||
// This won't be 100% accurate, but non-integral scaling isn't 100%
|
|
||||||
// accurate anyway
|
|
||||||
mySLineSurface->setSrcSize(1, 2 * int(float(mode.image.h()) /
|
|
||||||
floorf((float(mode.image.h()) / myTIA->height()) + 0.5f)));
|
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
cerr << "INITIALIZE:\n"
|
cerr << "INITIALIZE:\n"
|
||||||
<< "TIA:\n"
|
<< "TIA:\n"
|
||||||
|
@ -271,6 +264,8 @@ void TIASurface::enableNTSC(bool enable)
|
||||||
myTiaSurface->setSrcSize(enable ? AtariNTSC::outWidth(TIAConstants::frameBufferWidth)
|
myTiaSurface->setSrcSize(enable ? AtariNTSC::outWidth(TIAConstants::frameBufferWidth)
|
||||||
: TIAConstants::frameBufferWidth, myTIA->height());
|
: TIAConstants::frameBufferWidth, myTIA->height());
|
||||||
|
|
||||||
|
mySLineSurface->setSrcSize(1, 2 * myTIA->height());
|
||||||
|
|
||||||
myScanlinesEnabled = myOSystem.settings().getInt("tv.scanlines") > 0;
|
myScanlinesEnabled = myOSystem.settings().getInt("tv.scanlines") > 0;
|
||||||
FBSurface::Attributes& sl_attr = mySLineSurface->attributes();
|
FBSurface::Attributes& sl_attr = mySLineSurface->attributes();
|
||||||
sl_attr.blending = myScanlinesEnabled;
|
sl_attr.blending = myScanlinesEnabled;
|
||||||
|
|
Loading…
Reference in New Issue