tag:blogger.com,1999:blog-304223897607246523.post8972306738497155840..comments2024-02-09T00:59:01.518-08:00Comments on Matt Ownby's Cool Projects: VBI injection: it works!!Matt Ownbyhttp://www.blogger.com/profile/01141290413986333512noreply@blogger.comBlogger1125tag:blogger.com,1999:blog-304223897607246523.post-28862292413018097452013-11-26T06:29:46.274-08:002013-11-26T06:29:46.274-08:00This is _awesome_ work! Our fiendish plot will be ...This is _awesome_ work! Our fiendish plot will be successful! mwuahahahaha...<br /><br />I think you're right about the wobble being due to how interrupts are handled; the AVR CPU finishes processing the current instruction before jumping to the ISR, so the number of cycles is unpredictable. Perhaps the main thread could sit in a long series of NOPs, or an infinite jump either of these takes just one cycle, so the count is always the same. The commonly used technique is to put the CPU into sleep mode before the start of the line, in which case it always takes the same number of cycles after the interrupt occurs to get to the ISR code. I think you already know all this, though! :)<br /><br />The LM1881 datasheet doesn’t speak to sync pulse timing accuracy, but it’s designed for overlay applications like this, so it shouldn’t be the cuplrit.<br /><br />As you say, a slight wobble is probably fine. Laserdisc players themselves had a fair amount of jitter in the VBI data due to the vagaries of time-base correction for rotational speed errors. The early players used fairly simple analog CCD "memory" and feedback from the spindle servo, so they were even less stable than the average home player with digital TBC.<br />Anonymoushttps://www.blogger.com/profile/16250722356441382990noreply@blogger.com