Sunday, August 1, 2010

PC->NES Speed improvement!






So I've been wrestling with the timing of the transfer tool. The Arduino end is a huge unknown since I can't get access to the underlying assembly. The good news is I figured out what was blowing the timing. I had 2 bytes being sent each time - pretty much like a PISO (parallel in serial out) shift register. The way I was doing it originally was

PORTC = (byteToSend1 >> bitIndex);

Which was fine, but in the worst case it would have to shift the value 15 times.
Instead I made the change persistant:

byteToSend1 = (byteToSend1 >> 1);
PORTC = (byteToSend1);

Which ensures each bit only needs to be shifted once!

9 comments:

  1. Absolutely fantastic posting! Lots of useful information and inspiration, both of which we all need!Relay appreciate your work.
    raja poker

    ReplyDelete
  2. this post is really amazing and the the information is brilliant.

    Escorts Service in Goa

    Delhi Escort

    ReplyDelete
  3. I dunno how to say, but this post so helpfully
    Agen Bola Terpercaya

    ReplyDelete
  4. This is a very interesting post and thanks for this informative post.
    VIP Delhi Escorts Service
    Escorts Service in Delhi

    ReplyDelete
  5. Hi, I have been looking for some straight alternatives regarding it almost three times. You affected me with a lot indeed and analyzing this your website. There is many new and useful details on this subject. Well job and keep it up.
    Escorts in Gurgaon |
    Escorts in Gurgaon
    Gurgaon Escorts Service |
    Escorts in Delhi |
    Gurgaon Escorts |
    Female Escorts in Gurgaon |
    Gurgaon Escorts Service |
    Female Escorts in Dwarka

    ReplyDelete