[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NTSC Emulation



On Jan 24, 1:26 pm, Sheldon Simms <wsspa...@gmail.com> wrote:

> > Something looks a little off in your colors, however.  What filter
> > bandwidths are you using for Y, U, and V signals?  Then there's
> > the delay in the Y signal to compensate for the U and V filters...
> > Gamma may also be an issue...
>
> Gamma may be an issue and I don't know about you, but I have
> a dim LCD screen on my computer and it doesn't saturate like an
> old CRT.
>
> Here's a comparison of a screen capture with a photo I just took
> of my real Apple IIe with AppleColor Composite Monitor IIe.
>
> http://wsxyz.net/compare.html

It looks to me like your Hues are a little off, and the over
greeniness of the green (erk) suggests to me too much Y and not enough
UV, which I think corresponds with what Michael is saying, but I'm no
expert on colorspace issues.
In general though it looks quite nice, resolution limitations of
current digital panels considered.

> I'm doing YIQ decoding. I am not a DSP expert and I picked up
> what seemed to work after a little bit of introductory reading, so
> the filtering is very simple - I pretend I'm sampling the Apple II
> picture signal at 14 Mhz and run that through a very simple ~3.58
> Mhz low pass filter to extract Y. Then I subtract that out from the
> input signal to get chroma, which I then demodulate and filter
> each component with the same filter adjusted to half the
> bandwith (i.e. ~1.79 Mhz)
>
> The real code is kind of hard to follow because I use fixed point
> math and combine and simplify expressions for performance
> reasons, but it generally goes like this:

Curious. What's the performance difference between fixed point and
floating point versions ?

I wonder if you've considered translating the code to Core Image ? 50%
of one core (I have a slightly faster though similar Mac to you) would
probably see me turning the feature off most of the time to save
battery life. I asked Gerard (developer of Virtual ][) to add a
feature that auto-decelerated the emulator when it could detect that
the machine was effectively idle polling the keyboard which he kindly
added for me. It seems to me though that a GPU could do this kind of
work for far less watts...

Heh, in a few years we could even start using disused iPads as
replacement Apple II monitors ;-)

Matt