C64Lib.Core.MOS6510.ExtReadByte C# (CSharp) Method

ExtReadByte() public method

public ExtReadByte ( UInt16 adr ) : byte
adr System.UInt16
return byte
        public byte ExtReadByte(UInt16 adr)
        {
            // Save old memory configuration
            bool bi = basic_in, ki = kernal_in, ci = char_in, ii = io_in;

            // Set new configuration
            basic_in = (ExtConfig & 3) != 0;
            kernal_in = (ExtConfig & 2) != 0;
            char_in = ((ExtConfig & 3) != 0) && (~(ExtConfig & 4) != 0);
            io_in = (ExtConfig & 3) != 0 && (ExtConfig & 4) != 0;

            // Read byte
            byte abyte = read_byte(adr);

            // Restore old configuration
            basic_in = bi; kernal_in = ki; char_in = ci; io_in = ii;

            return abyte;
        }