Some (untested) code for a QSim interface.

git-svn-id: http://www.cdkersey.com/harp/harptool@33 0246edb2-e076-4747-b392-db732a341fa2
This commit is contained in:
chad
2011-10-19 22:51:41 +00:00
parent 15774083d0
commit 6cd25d547a
5 changed files with 205 additions and 9 deletions

View File

@@ -194,10 +194,16 @@ void Instruction::executeOn(Core &c) {
c.pc = reg[rsrc[0]];
break;
case LD: memAddr = reg[rsrc[0]] + immsrc;
#ifdef EMU_INSTRUMENTATION
#error TODO: Instrument memory reads.
#endif
reg[rdest] = c.mem.read(memAddr, c.supervisorMode);
break;
case ST: memAddr = reg[rsrc[1]] + immsrc;
c.mem.write(memAddr, reg[rsrc[0]], c.supervisorMode);
#ifdef EMU_INSTRUMENTATION
#error TODO: Instrument memory writes.
#endif
break;
case LDI: reg[rdest] = immsrc;
break;