2nd OpCode question.... pretty please...

edited February 2012 in Emulators
Whats 0xED 0x70 please?

Sean's doc says: IN F,(C)* / IN (C)*

That doesn't mean much to me :(
Lower down in Sean's doc it says: ED 70 is IN F,(n) so would that would make it make it the same as IN A,(n) but with the flag register?

Is (C) = BC?
Post edited by Korinel on

Comments

  • edited February 2012
    Korinel wrote: »
    Whats 0xED 0x70 please?

    Sean's doc says: IN F,(C)* / IN (C)*

    That doesn't mean much to me :(
    Lower down in Sean's doc it says: ED 70 is IN F,(n) so would that would make it make it the same as IN A,(n) but with the flag register?

    Is (C) = BC?
    Yes (C) = BC. The port identified by BC is read, and the Flag register is set accordingly (so the Zero flag is set if the value read is zero, and Sign, 3, and 5 are copied from the value read, etc), but the actual value read is discarded. So it's the same as, say, IN A,(c) except the A register isn't affected.

    As least, that's what vbSpec does. And nobody ever complained.
  • edited February 2012
    ccowley wrote: »
    Yes (C) = BC. The port identified by BC is read, and the Flag register is set accordingly (so the Zero flag is set if the value read is zero, and Sign, 3, and 5 are copied from the value read, etc), but the actual value read is discarded. So it's the same as, say, IN A,(c) except the A register isn't affected.

    As least, that's what vbSpec does. And nobody ever complained.

    Ah yes that makes perfect sense :) Thank-you!
Sign In or Register to comment.