instruction memory added, not finished yet