[Coco] No pixel wasted

Luis Antoniosi (CoCoDemus) retrocanada76 at gmail.com
Wed Sep 17 15:00:21 EDT 2014


I'm using a stock altera DE0-Nano, nothing else. It uses a ISSI
IS42S16160B-7 32MB SDRAM that according to the spec operates up to 143 Mhz
using CAS latency of 3 cycles. It worked at 229Mhz if you give it 6 cycles
instead of 3. But I'm doing no refresh. Apparently it does not work at this
clock speed and I don't need it. In 64us I have wrote and read 3.8 screens
already.

The choice of the clock speed ? 114.54544 is 32x the NTSC clock of 3.579545
or 128x the coco3 clock speed: 0.89488625. If iI do not operate at the NTSC
clock multiples i cannot get pixel perfect digitization.

If I operate in lower speeds I cannot catch up and respond in time to get a
perfect sync with the scanline. I cannot adjust my PLL, i just wait until
the hsync goes high than I reset my counters and jumps to the next line.

The coco3 (and all NTSC) has a 14.31818 pixel clock what gives me 8 clock
ticks per pixel operating at 114Mhz.

For every scanline I digitize every pixel and store them in RAM. After the
hsync, I send the entire row to the SDRAM in burst mode. This must be very
fast because concurrently the vga output will load an entire row from SDRAM
to RAM and output it to screen using a 25Mhz clock pixel. For every
incoming row I have 2 other output rows.

I cannot digitize only a row and display it twice. The clocks won't match,
I have a 2% variation from NTSC when mutiplied by 2x (VGA is twice as
faster) gives 4%. I loose VGA sync, the rows does not stabilize, etc. Then
I need to digitize an entire frame. What is good because it will be easier
to operate with 50Hz PAL too.

Felipe.






Luis Felipe Antoniosi



On Wed, Sep 17, 2014 at 2:32 PM, tim at franklinlabs.com <tim at franklinlabs.com>
wrote:

> I'm curious why you chose those frequencies. Are they used to sync. with
> some
> other timing in the design? Without seeing the design, I would agree that
> the
> 229MHz clock would be too fast. I'm actually surprised that it worked at
> all.
> Most 133Mhz chips will run up to 200Mz or so but that overclocking is well
> out
> of range. Unless you found a faster part. I would also be curious what
> part you
> are using if it's spec'ed faster than 200MHz.
>
>
> On September 17, 2014 at 9:26 AM "Luis Antoniosi (CoCoDemus)"
> <retrocanada76 at gmail.com> wrote:
> > I reduced the speed from 229Mhz to 114Mhz, the SDRAM works better now:
> >
> > http://imgur.com/MY0ExuW
> >
> > It also fixed the artifact in coco1/2 graphics screen.
> >
> > But for coco3 games like roboco, thexder I still get some minor
> flickering
> > in some areas. Like it generates those video modes with a slightly
> > different pixel clock ? I have a 1986 GIME only.
> >
> > All the other resolutions are pixel perfect: 32, 40, 80 columns, pmode 1,
> > 2, 3 and 4.
> >
> >
> >
> > Luis Felipe Antoniosi
> >
> > --
> > Coco mailing list
> > Coco at maltedmedia.com
> > https://pairlist5.pair.net/mailman/listinfo/coco
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco
>


More information about the Coco mailing list