comparison src/d09.c @ 167:3f8bbec566b3

x
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 10 Apr 2019 22:48:30 +0900
parents c29030b5e4b4
children
comparison
equal deleted inserted replaced
166:a813c5ae58d5 167:3f8bbec566b3
1455 if (offset < 127 ) 1455 if (offset < 127 )
1456 disp = pc + 2 + offset + adoffset; 1456 disp = pc + 2 + offset + adoffset;
1457 else 1457 else
1458 disp = pc + 2 - (256 - offset + adoffset); 1458 disp = pc + 2 - (256 - offset + adoffset);
1459 fprintf(fp,"%0.2X %0.2X %s%s $%0.4X", 1459 fprintf(fp,"%0.2X %0.2X %s%s $%0.4X",
1460 code, offset, suffix, op->name, disp); 1460 code, offset, suffix, op->name, disp & 0xffff);
1461 return op->bytes; 1461 return op->bytes;
1462 } 1462 }
1463 1463
1464 #pragma argsused 1464 #pragma argsused
1465 int D_RelativeL(op, code, pc, suffix) 1465 int D_RelativeL(op, code, pc, suffix)
1475 if (offset < 32767 ) 1475 if (offset < 32767 )
1476 disp = pc + 3 + offset + adoffset; 1476 disp = pc + 3 + offset + adoffset;
1477 else 1477 else
1478 disp = pc + 3 - (65536 - offset) + adoffset; 1478 disp = pc + 3 - (65536 - offset) + adoffset;
1479 fprintf(fp,"%0.2X %0.2X %0.2X %s%s $%0.4X", 1479 fprintf(fp,"%0.2X %0.2X %0.2X %s%s $%0.4X",
1480 code, prog[pc+1], prog[pc+2], suffix, op->name, disp); 1480 code, prog[pc+1], prog[pc+2], suffix, op->name, disp & 0xffff);
1481 return op->bytes; 1481 return op->bytes;
1482 } 1482 }
1483 1483
1484 #pragma argsused 1484 #pragma argsused
1485 int D_Register0(op, code, pc, suffix) 1485 int D_Register0(op, code, pc, suffix)