Mercurial > hg > Members > kono > os9 > sbc09
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) |